<!--
 * Copyright (C) 2013 KO GmbH <copyright@kogmbh.com>
 *
 * @licstart
 * This file is part of WebODF.
 *
 * WebODF is free software: you can redistribute it and/or modify it
 * under the terms of the GNU Affero General Public License (GNU AGPL)
 * as published by the Free Software Foundation, either version 3 of
 * the License, or (at your option) any later version.
 *
 * WebODF is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with WebODF.  If not, see <http://www.gnu.org/licenses/>.
 * @licend
 *
 * @source: http://www.webodf.org/
 * @source: https://github.com/kogmbh/WebODF/
-->
<tests
    xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
    xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
    xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
    xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:c="urn:webodf:names:cursor"
    xmlns:e="urn:webodf:names:editinfo"
    xmlns:ws="urn:webodf:names:scope"
    xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0">
 <test name="AddCursor_00">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/><c:cursor c:memberId="Bob"/>ab</text:p></office:text></after>
 </test>
 <test name="AddCursorRemoveCursor">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="RemoveCursor" memberid="Alice"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveCursor" memberid="Bob"/>
  </opsB>
  <after><office:text><text:p>ab</text:p></office:text></after>
 </test>

 <test name="ApplyDirectStylingInsertText_[V__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V" moveCursor="true"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>AV<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingInsertText_V_[__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V" moveCursor="true"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>VA<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingInsertText_[_V_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V" moveCursor="true"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BVC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingInsertText_[__V]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="3" text="V" moveCursor="true"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BCV</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingInsertText_[__]_V">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="4" text="V" moveCursor="true"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>DV</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingMergeParagraph_MergeBeforeStylingStart">
  <before>
   <office:automatic-styles/>
   <office:text><text:p/><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="2" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="1"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingMergeParagraph_MergeOnStylingStart">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>A</text:p><text:p>BCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="2" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingMergeParagraph_MergeWithinStyling" isFailing="true">
  <comment>Due to #551, the DOMs do not converge even though they will visually render ok</comment>
  <before>
   <office:automatic-styles/>
   <office:text><text:p>AB</text:p><text:p>CD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="3">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingMergeParagraph_MergeOnStylingEnd">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABC</text:p><text:p>D</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="3">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingMergeParagraph_MergeAfterStylingEnd">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABC</text:p><text:p>D</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_X[__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_[X_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">C</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_[_X]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">B</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_X[X_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto63350368_0">C</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_[_X]X">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">B</text:span></text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingRemoveText_[__]X">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span></text:p></office:text>
  </after>
 </test>
 <!-- TODO: Empty spans are not yet cleaned up
 <test name="ApplyDirectStylingRemoveText_[XX]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>AD</text:p></office:text>
  </after>
 </test>
 -->

 <test name="ApplyDirectStylingSplitParagraph_[V__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A</text:p><text:p><text:span text:style-name="auto63350368_0">BC</text:span>D</text:p></office:text>
  </after>
 </test>
 <test name="ApplyDirectStylingSplitParagraph_[_V_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">B</text:span></text:p><text:p><text:span text:style-name="auto63350368_0">C</text:span>D</text:p></office:text>
  </after>
 </test>
 <!-- TODO: SplitParagraph needs to be fixed to not also split text:span ending at the pos
 <test name="ApplyDirectStylingSplitParagraph_[__V]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="ApplyDirectStyling" memberid="Alice" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="3"/>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto63350368_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>A<text:span text:style-name="auto63350368_0">BC</text:span></text:p><text:p>D</text:p></office:text>
  </after>
 </test>
 -->

 <test name="MoveCursor_00">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="0"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/><c:cursor c:memberId="Bob"/>ab</text:p></office:text></after>
 </test>
 <test name="MoveCursor_11">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
  </opsB>
  <after><office:text><text:p>a<c:cursor c:memberId="Alice"/><c:cursor c:memberId="Bob"/>b</text:p></office:text></after>
 </test>
 <test name="MoveCursor_22">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
  </opsB>
  <after><office:text><text:p>ab<c:cursor c:memberId="Alice"/><c:cursor c:memberId="Bob"/></text:p><text:p/></office:text></after>
 </test>
 <test name="MoveCursor_02">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>ab<c:cursor c:memberId="Bob"/></text:p><text:p/></office:text></after>
 </test>

 <test name="InsertTextMergeParagraph_[ab]_[V]">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="InsertText" memberid="Alice" position="3" text="V"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3" />
  </opsB>
  <after><office:text><text:p>abV</text:p></office:text></after>
 </test>
 <test name="InsertTextMergeParagraph_[aVb]_[]">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="InsertText" memberid="Alice" position="1" text="V"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3" />
  </opsB>
  <after><office:text><text:p>aVb</text:p></office:text></after>
 </test>
 <test name="InsertTextMergeParagraph_[ab]_[]_[V]">
  <before><office:text><text:p>ab</text:p><text:p/><text:p/></office:text></before>
  <opsA>
   <op optype="InsertText" memberid="Alice" position="4" text="V"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3" />
  </opsB>
  <after><office:text><text:p>ab</text:p><text:p>V</text:p></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_A__CV">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/>ab<c:cursor c:memberId="Alice"/>V</text:p><text:p/></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_AV__C">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/>Vab<c:cursor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_A_V_C">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/>aVb<c:cursor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_C__AV">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>ab<c:anchor c:memberId="Alice"/>V</text:p><text:p/></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_CV__A">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>Vab<c:anchor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="InsertTextMoveCursor_C_V_A">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>aVb<c:anchor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>

 <test name="InsertText_aTb">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="InsertText" memberid="Alice" position="0" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="InsertText" memberid="Bob" position="1" text="b" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p>a<c:cursor c:memberId="Alice"/>Tb<c:cursor c:memberId="Bob"/></text:p></office:text></after>
 </test>
 <test name="InsertText_baT">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="InsertText" memberid="Alice" position="0" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="InsertText" memberid="Bob" position="0" text="b" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p>b<c:cursor c:memberId="Bob"/>a<c:cursor c:memberId="Alice"/>T</text:p></office:text></after>
 </test>
 <test name="SplitParagraph_VaV">
  <before><office:text><text:p>a</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="SplitParagraph" memberid="Alice" position="0" moveCursor="true" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p/><text:p><c:cursor c:memberId="Alice"/>a</text:p><text:p><c:cursor c:memberId="Bob"/></text:p></office:text></after>
 </test>
 <test name="SplitParagraph_aVVb">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Alice" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p>a</text:p><text:p><c:cursor c:memberId="Bob"/></text:p><text:p><c:cursor c:memberId="Alice"/>b</text:p></office:text></after>
 </test>

 <test name="InsertTextSetParagraphStyle_before">
  <before>
   <office:text><text:p/><text:p/></office:text>
  </before>
  <opsA>
   <op optype="InsertText" position="0" text="abc"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="1" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p><text:p text:style-name="S"/></office:text>
  </after>
 </test>
 <test name="InsertTextSetParagraphStyle_samePos">
  <before>
   <office:text><text:p/><text:p/></office:text>
  </before>
  <opsA>
   <op optype="InsertText" position="1" text="abc"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="1" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p/><text:p text:style-name="S">abc</text:p></office:text>
  </after>
 </test>
 <test name="InsertTextSetParagraphStyle_after">
  <before>
   <office:text><text:p/><text:p>123</text:p></office:text>
  </before>
  <opsA>
   <op optype="InsertText" position="4" text="abc"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="1" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p/><text:p text:style-name="S">123abc</text:p></office:text>
  </after>
 </test>

 <test name="InsertTextSplitParagraph_TaVT">
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="1" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p>Ta<c:cursor c:memberId="Alice"/></text:p><text:p><c:cursor c:memberId="Bob"/>T</text:p></office:text></after>
 </test>
 <test name="InsertTextSplitParagraph_TaTV">
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="1" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="2" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p>Ta<c:cursor c:memberId="Alice"/>T</text:p><text:p><c:cursor c:memberId="Bob"/></text:p></office:text></after>
 </test>
 <test name="InsertTextSplitParagraph_TVTa">
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="2" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p>T</text:p><text:p><c:cursor c:memberId="Bob"/>Ta<c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>
 <test name="InsertTextSplitParagraph_InsertBeforeSplit">
  <comment>Insert text between split position and paragraph start position</comment>
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="0" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p>a<c:cursor c:memberId="Alice"/>T</text:p><text:p><c:cursor c:memberId="Bob"/>T</text:p></office:text></after>
 </test>
 <test name="InsertTextSplitParagraph_InsertInParagraphBeforeSplit">
  <comment>Insert text in paragraph before split the paragraph to be split</comment>
  <before><office:text><text:p>A</text:p><text:p>B</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="0" text="a" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="3" moveCursor="true" sourceParagraphPosition="2"/>
  </opsB>
  <after><office:text><text:p>a<c:cursor c:memberId="Alice"/>A</text:p><text:p>B</text:p><text:p><c:cursor c:memberId="Bob"/></text:p></office:text></after>
 </test>

 <test name="RemoveTextRemoveText_{B}[CDE]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after><office:text><text:p>A<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[CDE]{F}">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="5" length="1"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>G</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_{B[CDE]F}">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="1" length="5"/>
  </opsB>
  <after><office:text><text:p>A<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>G</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[C{D}E]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[{CD}E]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[C{DE}]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[{CDE}]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="2" length="3"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_{B[CDE]}">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="1" length="4"/>
  </opsB>
  <after><office:text><text:p>A<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_{[CDE]F}">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="2" length="4"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>G</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_[C{E]F}">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="3" length="3"/>
  </opsB>
  <after><office:text><text:p>AB<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>G</text:p></office:text></after>
 </test>
 <test name="RemoveTextRemoveText_{B[CD}E]">
  <before><office:text><text:p>ABCDEFG</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="RemoveText" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
   <op optype="RemoveText" memberid="Bob" position="1" length="3"/>
  </opsB>
  <after><office:text><text:p>A<c:cursor c:memberId="Bob"/><c:cursor c:memberId="Alice"/>FG</text:p></office:text></after>
 </test>
 <test name="RemoveTextSplitParagraph_[AB|CD]">
  <before><office:text><text:p>ABCD</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="RemoveText" memberid="Alice" position="0" length="4"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="SplitParagraph" memberid="Bob" position="2" sourceParagraphPosition="0" moveCursor="true"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/></text:p><text:p><c:cursor c:memberId="Bob"/></text:p></office:text></after>
 </test>

 <test name="InsertTextRemoveText_VT">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="InsertText" memberid="Alice" position="0" text="V" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/>V<c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>
 <test name="InsertTextRemoveText_TV">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="1" text="V" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/>V<c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>
 <test name="InsertTextRemoveText_TVT">
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="InsertText" memberid="Alice" position="1" text="V" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/>V<c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>

 <test name="RemoveTextSetParagraphStyle_before">
  <before>
   <office:text><text:p>abc</text:p><text:p>def</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" position="1" length="1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>ac</text:p><text:p text:style-name="S">def</text:p></office:text>
  </after>
 </test>
 <test name="RemoveTextSetParagraphStyle_samePos">
  <before>
   <office:text><text:p>abc</text:p><text:p>def</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" position="4" length="1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p><text:p text:style-name="S">ef</text:p></office:text>
  </after>
 </test>
 <test name="RemoveTextSetParagraphStyle_after">
  <before>
   <office:text><text:p>abc</text:p><text:p>def</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" position="5" length="1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p><text:p text:style-name="S">df</text:p></office:text>
  </after>
 </test>

 <test name="SplitParagraphRemoveText_VT">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="SplitParagraph" memberid="Alice" position="0" moveCursor="true" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/></text:p><text:p><c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>
 <test name="SplitParagraphRemoveText_TV">
  <before><office:text><text:p>T</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Alice" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/></text:p><text:p><c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>
 <test name="SplitParagraphRemoveText_TVT">
  <before><office:text><text:p>TT</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="0"/>
   <op optype="SplitParagraph" memberid="Alice" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Bob"/></text:p><text:p><c:cursor c:memberId="Alice"/></text:p></office:text></after>
 </test>

 <test name="AddParagraphStyleAddParagraphStyle">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"></style:style></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
    <op optype="AddStyle" memberid="Alice" styleName="CA" styleFamily="paragraph"><setProperties style:class="text" style:display-name="Cloned from A"/></op>
  </opsA>
  <opsB>
   <op optype="AddStyle" memberid="Bob" styleName="CB" styleFamily="paragraph"><setProperties style:class="text"/></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/><style:style style:name="CB" style:family="paragraph" style:class="text"/><style:style style:name="CA" style:display-name="Cloned from A" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>

 <test name="RemoveParagraphStyleRemoveParagraphStyle">
  <before><office:styles><style:style style:name="S" style:family="paragraph" style:class="text"></style:style></office:styles><office:text><text:p/></office:text></before>
  <opsA>
   <op optype="RemoveStyle" memberid="Alice" styleName="S" styleFamily="paragraph"/>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after><office:styles></office:styles><office:text><text:p/></office:text></after>
 </test>
 <test name="RemoveParagraphStyleSplitParagraph">
  <before><office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles><office:text><text:p text:style-name="S"/></office:text></before>
  <opsA>
   <op optype="SetParagraphStyle" memberid="Alice" position="0" sourceParagraphPosition="0" styleName=""/>
   <op optype="RemoveStyle" memberid="Alice" styleName="S" styleFamily="paragraph"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" sourceParagraphPosition="0" paragraphStyleName="S"/>
  </opsB>
  <after><office:styles/><office:text><text:p/><text:p/></office:text></after>
 </test>

 <test name="AddParagraphStyleRemoveParagraphStyle_nextStyleName">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="AddStyle" memberid="Alice" styleName="S2" styleFamily="paragraph"><setProperties style:class="text" style:next-style-name="S"/></op>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after>
   <office:styles><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>
 <test name="AddParagraphStyleRemoveParagraphStyle_parentStyleName">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="AddStyle" memberid="Alice" styleName="S2" styleFamily="paragraph"><setProperties style:class="text" style:parent-style-name="S"/></op>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after>
   <office:styles><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>

 <test name="UpdateParagraphStyleRemoveParagraphStyle_sameStyle">
  <before><office:styles><style:style style:name="S" style:family="paragraph" style:class="text"></style:style></office:styles><office:text><text:p/></office:text></before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S"><setProperties><style:text-properties fo:font-size="8pt"/></setProperties></op>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after><office:styles></office:styles><office:text><text:p/></office:text></after>
 </test>
 <test name="UpdateParagraphStyleRemoveParagraphStyle_nextStyleName">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S2"><setProperties style:next-style-name="S"/></op>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after><office:styles><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles><office:text><text:p/></office:text></after>
 </test>
 <test name="UpdateParagraphStyleRemoveParagraphStyle_parentStyleName">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S2"><setProperties style:parent-style-name="S"/></op>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after><office:styles><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles><office:text><text:p/></office:text></after>
 </test>

 <test name="UpdateParagraphStyleUpdateParagraphStyle_setPriorityOverSet">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S"><setProperties style:next-style-name="S"><style:paragraph-properties fo:margin-right="2mm"/><style:text-properties fo:font-size="8pt"/></setProperties></op>
  </opsA>
  <opsB>
   <op optype="UpdateParagraphStyle" memberid="Bob" styleName="S"><setProperties style:next-style-name="S2"><style:paragraph-properties fo:margin-right="4mm"/><style:text-properties fo:font-size="12pt"/></setProperties></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text" style:next-style-name="S2"><style:paragraph-properties fo:margin-right="4mm"/><style:text-properties fo:font-size="12pt"/></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>
 <test name="UpdateParagraphStyleUpdateParagraphStyle_setPriorityOverRemove">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text" style:next-style-name="S"><style:paragraph-properties fo:margin-right="2mm"/><style:text-properties fo:font-size="8pt"/></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S"><removedProperties attributes="style:next-style-name"><style:paragraph-properties attributes="fo:margin-right"/><style:text-properties attributes="fo:font-size"/></removedProperties></op>
  </opsA>
  <opsB>
   <op optype="UpdateParagraphStyle" memberid="Bob" styleName="S"><setProperties style:next-style-name="S2"><style:paragraph-properties fo:margin-right="4mm"/><style:text-properties fo:font-size="12pt"/></setProperties></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text" style:next-style-name="S2"><style:paragraph-properties fo:margin-right="4mm"/><style:text-properties fo:font-size="12pt"/></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>
 <test name="UpdateParagraphStyleUpdateParagraphStyle_removePriorityOverSet">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text" style:next-style-name="S"><style:paragraph-properties fo:margin-right="4mm"/><style:text-properties fo:font-size="12pt"/></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </before>
  <opsA>
   <op optype="UpdateParagraphStyle" memberid="Alice" styleName="S"><setProperties style:next-style-name="S2"><style:paragraph-properties fo:margin-right="2"/><style:text-properties fo:font-size="8pt"/></setProperties></op>
  </opsA>
  <opsB>
   <op optype="UpdateParagraphStyle" memberid="Bob" styleName="S"><removedProperties attributes="style:next-style-name"><style:paragraph-properties attributes="fo:margin-right"/><style:text-properties attributes="fo:font-size"/></removedProperties></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"></style:style><style:style style:name="S2" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>

 <test name="SetParagraphStyleRemoveParagraphStyle">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/><style:style style:name="SD" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p text:style-name="S"/></office:text>
  </before>
  <opsA>
   <op optype="RemoveStyle" styleName="SD" styleFamily="paragraph"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="SD"/>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text><text:p/></office:text>
  </after>
 </test>

 <test name="MergeParagraphMergeParagraph_AthenB_[abc]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMergeParagraph_BthenA_[abc]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMergeParagraph_BthenA_Styled_[abc]">
  <before>
   <office:text><text:p>a</text:p><text:p text:style-name="b">b</text:p><text:p text:style-name="c">c</text:p></office:text>
  </before>
  <opsA>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="2" sourceStartPosition="4" paragraphStyleName="c"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2" paragraphStyleName="b"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="b">abc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMergeParagraph_AthenB_Styled_[abc]">
  <before>
   <office:text><text:p>a</text:p><text:p text:style-name="b">b</text:p><text:p text:style-name="c">c</text:p></office:text>
  </before>
  <opsA>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="0" sourceStartPosition="2" paragraphStyleName="b"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4" paragraphStyleName="c"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="b">abc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_sameSourcePos">
  <before>
   <office:text><text:p>ab</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="SplitParagraph" memberid="Alice" sourceParagraphPosition="3" position="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text><text:p>ab</text:p><text:p>c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMergeParagraph_[ab]_c">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="0" sourceStartPosition="2" paragraphStyleName="Alice" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2" paragraphStyleName="Bob" moveCursor="true"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="Bob">a<c:cursor c:memberId="Alice"/><c:cursor c:memberId="Bob"/>b</text:p><text:p>c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_[a_b]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>ab<c:cursor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_[a_]b">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>a<c:cursor c:memberId="Alice"/>b</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_a[_b]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>a<c:anchor c:memberId="Alice"/>b<c:cursor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_ab_[c]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="4" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>ab</text:p><text:p><c:anchor c:memberId="Alice"/>c<c:cursor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_[a]_bc">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>a<c:cursor c:memberId="Alice"/></text:p><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_[ab]c">
  <before>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>ab<c:cursor c:memberId="Alice"/>c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphMoveCursor_[ab]cd">
  <before>
   <office:text><text:p>abc</text:p><text:p>d</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>ab<c:cursor c:memberId="Alice"/>cd</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphRemoveText_X_b">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" memberid="Alice" position="0" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>b</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphRemoveText_a_X">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" memberid="Alice" position="2" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>a</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphRemoveText_a_Xc">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" memberid="Alice" position="2" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p>a</text:p><text:p>c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphRemoveText_X_bc">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="RemoveText" memberid="Alice" position="0" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p/><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSetParagraphStyle_[a]_b">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" styleName="Alice" memberid="Alice" position="0" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="Alice">ab</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSetParagraphStyle_a_[b]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" styleName="Alice" memberid="Alice" position="2" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="Alice">ab</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSetParagraphStyle_ab_[c]">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" styleName="Alice" memberid="Alice" position="4" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>ab</text:p><text:p text:style-name="Alice">c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSetParagraphStyle_[a]_bc">
  <before>
   <office:text><text:p>a</text:p><text:p>b</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" styleName="Alice" memberid="Alice" position="0" length="1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="Alice">a</text:p><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_a_bc">
  <before>
   <office:text><text:p>ab</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="SplitParagraph" memberid="Alice" position="1" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_ab_c">
  <before>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </before>
  <opsA>
   <op optype="SplitParagraph" memberid="Alice" position="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>ab</text:p><text:p>c</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_abc">
  <before>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </before>
  <opsA>
   <op optype="SplitParagraph" memberid="Alice" position="1" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_abc_2">
  <before>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="0"/>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="0" sourceStartPosition="2" moveCursor="true"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0" moveCursor="true"/>
  </opsB>
  <after>
   <office:text><text:p>a<c:cursor c:memberId="Alice"/></text:p><text:p><c:cursor c:memberId="Bob"/>bc</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_EmptyParagraph">
  <comment>Merge into an empty paragraph that is being split. Ensure consistent styles result</comment>
  <before>
   <office:text><text:p text:style-name="A"/><text:p text:style-name="B">a</text:p></office:text>
  </before>
  <opsA>
   <op optype="SplitParagraph" memberid="Alice" position="0" sourceParagraphPosition="0" paragraphStyleName="SplitParagraph"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="1" paragraphStyleName="MergeParagraph"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="MergeParagraph"/><text:p text:style-name="MergeParagraph">a</text:p></office:text>
  </after>
 </test>
 <test name="MergeParagraphSplitParagraph_MergeSplit">
  <comment>Merge then split the same paragraph on two clients</comment>
  <before>
   <office:text><text:p>a</text:p><text:p>bc</text:p></office:text>
  </before>
  <opsA>
   <op optype="MergeParagraph" memberid="Alice" destinationStartPosition="0" sourceStartPosition="2"/>
   <op optype="SplitParagraph" memberid="Alice" position="1" sourceParagraphPosition="0"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text><text:p>a</text:p><text:p/><text:p>bc</text:p></office:text>
  </after>
 </test>
 <test name="SetParagraphStyleSplitParagraph_[a]_A|B">
  <comment>SetParagraphStyle occurs before paragraph impacted by split</comment>
  <before>
   <office:text><text:p/><text:p>AB</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" memberid="Alice" position="0" styleName="setPStyle"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" sourceParagraphPosition="1" paragraphStyleName="splitPStyle"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="setPStyle"/><text:p>A</text:p><text:p text:style-name="splitPStyle">B</text:p></office:text>
  </after>
 </test>
 <test name="SetParagraphStyleSplitParagraph_A|B_[]">
  <comment>SetParagraphStyle occurs after paragraph impacted by split</comment>
  <before>
   <office:text><text:p>AB</text:p><text:p/></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" memberid="Alice" position="3" styleName="setPStyle"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0" paragraphStyleName="splitPStyle"/>
  </opsB>
  <after>
   <office:text><text:p>A</text:p><text:p text:style-name="splitPStyle">B</text:p><text:p text:style-name="setPStyle"/></office:text>
  </after>
 </test>
 <test name="SetParagraphStyleSplitParagraph_[A|B]">
  <comment>SetParagraphStyle encompasses a paragraph that is being split</comment>
  <before>
   <office:text><text:p>AB</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" memberid="Alice" position="0" styleName="setPStyle"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0" paragraphStyleName="splitPStyle"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="setPStyle">A</text:p><text:p text:style-name="setPStyle">B</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_XA__C">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>BC<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_AX_C">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:anchor c:memberId="Alice"/>C<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_A_XC">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:anchor c:memberId="Alice"/>B<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_XAX_C">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text><text:p><c:anchor c:memberId="Alice"/>C<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_A_XCX">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:anchor c:memberId="Alice"/>B<c:cursor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_A__CX">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:anchor c:memberId="Alice"/>BC<c:cursor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_AXXC">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>

 <test name="MoveCursorRemoveText_XC__A">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text><text:p><c:cursor c:memberId="Alice"/>BC<c:anchor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_CX_A">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>C<c:anchor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_C_XA">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>B<c:anchor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_XCX_A">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text><text:p><c:cursor c:memberId="Alice"/>C<c:anchor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_C_XAX">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>B<c:anchor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_C__AX">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>BC<c:anchor c:memberId="Alice"/></text:p></office:text>
  </after>
 </test>
 <test name="MoveCursorRemoveText_CXXA">
  <before>
   <office:text><text:p>ABCD</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="3" length="-2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text><text:p>A<c:cursor c:memberId="Alice"/>D</text:p></office:text>
  </after>
 </test>

 <test name="MoveCursorSplitParagraph_A__CV">
  <before><office:text><text:p>ab</text:p></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/>ab<c:cursor c:memberId="Alice"/></text:p><text:p></text:p></office:text></after>
 </test>
 <test name="MoveCursorSplitParagraph_AV__C">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/></text:p><text:p>ab<c:cursor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="MoveCursorSplitParagraph_A_V_C">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="0" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:anchor c:memberId="Alice"/>a</text:p><text:p>b<c:cursor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="MoveCursorSplitParagraph_C__AV">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>ab<c:anchor c:memberId="Alice"/></text:p><text:p></text:p><text:p/></office:text></after>
 </test>
 <test name="MoveCursorSplitParagraph_CV__A">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/></text:p><text:p>ab<c:anchor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>
 <test name="MoveCursorSplitParagraph_C_V_A">
  <before><office:text><text:p>ab</text:p><text:p/></office:text></before>
  <opsA>
   <op optype="AddCursor" memberid="Alice"/>
   <op optype="MoveCursor" memberid="Alice" position="2" length="-2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" moveCursor="true" sourceParagraphPosition="0"/>
  </opsB>
  <after><office:text><text:p><c:cursor c:memberId="Alice"/>a</text:p><text:p>b<c:anchor c:memberId="Alice"/></text:p><text:p/></office:text></after>
 </test>

 <test name="SetParagraphStyleSetParagraphStyle_samePos">
  <before>
   <office:text><text:p>abc</text:p><text:p>def</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" position="4" styleName="S1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S2"/>
  </opsB>
  <after>
   <office:text><text:p>abc</text:p><text:p text:style-name="S2">def</text:p></office:text>
  </after>
 </test>
 <test name="SetParagraphStyleSetParagraphStyle_differentPos">
  <before>
   <office:text><text:p>abc</text:p><text:p>def</text:p></office:text>
  </before>
  <opsA>
   <op optype="SetParagraphStyle" position="0" styleName="S1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S2"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="S1">abc</text:p><text:p text:style-name="S2">def</text:p></office:text>
  </after>
 </test>

 <test name="UpdateMetadataUpdateMetadata_setPriorityOverSet">
  <before>
   <office:meta><meta:initial-creator>Eve</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </before>
  <opsA>
   <op optype="UpdateMetadata" memberid="Alice"><setProperties meta:initial-creator="Alice" meta:creation-date="2011-09-05T12:34:07.061Z"></setProperties></op>
  </opsA>
  <opsB>
   <op optype="UpdateMetadata" memberid="Bob"><setProperties meta:initial-creator="Bob"></setProperties></op>
  </opsB>
  <after>
   <office:meta><meta:initial-creator>Bob</meta:initial-creator><meta:creation-date>2011-09-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </after>
 </test>
 <test name="UpdateMetadataUpdateMetadata_setPriorityOverRemove">
  <before>
   <office:meta><meta:initial-creator>Eve</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </before>
  <opsA>
   <op optype="UpdateMetadata" memberid="Alice"><removedProperties attributes="meta:initial-creator"/></op>
  </opsA>
  <opsB>
   <op optype="UpdateMetadata" memberid="Bob"><setProperties meta:initial-creator="Bob"></setProperties></op>
  </opsB>
  <after>
   <office:meta><meta:initial-creator>Bob</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </after>
 </test>
 <test name="UpdateMetadataUpdateMetadata_removePriorityOverSet">
  <before>
   <office:meta><meta:initial-creator>Eve</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </before>
  <opsA>
   <op optype="UpdateMetadata" memberid="Alice"><setProperties meta:initial-creator="Alice"></setProperties></op>
  </opsA>
  <opsB>
   <op optype="UpdateMetadata" memberid="Bob"><removedProperties attributes="meta:initial-creator"/></op>
  </opsB>
  <after>
   <office:meta><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta><office:text></office:text>
  </after>
 </test>

 <test name="AddAnnotationAddAnnotation_{_}_[_]">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="0" length="2" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p><office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>ab<office:annotation-end office:name="bob_1"/>c<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{_}[_]" isFailing="true">
  <comment>Order of office:annotation and office:annotation-end at same position not defined</comment>
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="1" length="2" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="bob_1"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{_[_}_]">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="2" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="bob_1"/>e<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{_[_}]" isFailing="true">
  <comment>Order of multiple office:annotation-end at same position not defined</comment>
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="3" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="bob_1"/><office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{_[_]_}">
  <before>
   <office:text>
    <text:p>abcdef</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="4" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="alice_1"/>f<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{}[_]" isFailing="true">
  <comment>Order of office:annotation and office:annotation-end at same position not defined</comment>
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="0" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="bob_1"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{[_}_]">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="1" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="bob_1"/>d<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationAddAnnotation_{[_]}" isFailing="true">
  <comment>Order of multiple office:annotation-end at same position not defined</comment>
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddAnnotation" memberid="Bob" timestamp="1375706047061" position="2" length="2" name="bob_1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="bob_1"/><office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationAddCursor">
  <before>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationAddStyle">
  <before>
   <office:styles></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddStyle" memberid="Bob" styleName="S" styleFamily="paragraph"><setProperties style:class="text"/></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationApplyDirectStyling_{_}_[__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a</text:span>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_}_[_">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a</text:span>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[}__]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation></text:span>b<office:annotation-end office:name="alice_1"/>cd</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[}_">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation></text:span>bcd</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[_}_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:span>c<office:annotation-end office:name="alice_1"/>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[_}_">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:span>cd</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[_}]_" isFailing="true">
  <comment>fails, because the order of office:annotation-end and /text:span is random, needs to be defined</comment>
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="3">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:span><office:annotation-end office:name="alice_1"/>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_{_[_]_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="4">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p><text:span text:style-name="auto66965_0">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:span></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[{_}_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><text:span text:style-name="auto66965_0">b</text:span>c<office:annotation-end office:name="alice_1"/>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[{_}_">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><text:span text:style-name="auto66965_0">b</text:span>cd</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[{_}]_" isFailing="true">
  <comment>fails, because the order of office:annotation-end and /text:span is random, needs to be defined</comment>
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><text:span text:style-name="auto66965_0">bc</text:span><office:annotation-end office:name="alice_1"/>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[{_]_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="3">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><text:span text:style-name="auto66965_0">bc<office:annotation-end office:name="alice_1"/>d</text:span></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_{_}_]">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="2" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<text:span text:style-name="auto66965_0">c</text:span>d<office:annotation-end office:name="alice_1"/></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_{_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="2" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<text:span text:style-name="auto66965_0">c</text:span>d</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_{__}]" isFailing="true">
  <comment>fails, because the order of office:annotation-end and /text:span is random, needs to be defined</comment>
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="2" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<text:span text:style-name="auto66965_0">cd</text:span><office:annotation-end office:name="alice_1"/></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_{_]_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="2" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<text:span text:style-name="auto66965_0">c<office:annotation-end office:name="alice_1"/>d</text:span></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_{]_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="3" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/><text:span text:style-name="auto66965_0">d</text:span></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationApplyDirectStyling_[_]_{_}">
  <before>
   <office:automatic-styles/>
   <office:text><text:p>abcd</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="3" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c<text:span text:style-name="auto66965_0">d</text:span></text:p></office:text>
  </after>
 </test>

 <test name="AddAnnotationInsertText_V_[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>Va<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_V_[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>Va<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_V[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>aV<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_V[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>aV<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_[_V_]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bVc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_[__V]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bV<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_[__]_V">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="3" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>cV</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationInsertText_[_V">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="3" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcV</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationMergeParagraph_M_[__]">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
  <test name="AddAnnotationMergeParagraph_M_[_">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_M[__]">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_M[_">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[M_]">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[M_">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[_M_]">
  <before>
   <office:text>
    <text:p>ab</text:p><text:p>cd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[_M_">
  <before>
   <office:text>
    <text:p>ab</text:p><text:p>cd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[__M]">
  <before>
   <office:text>
    <text:p>ab</text:p><text:p>c</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[__]M">
  <before>
   <office:text>
    <text:p>ab</text:p><text:p>c</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMergeParagraph_[__]_M">
  <before>
   <office:text>
    <text:p>abc</text:p><text:p>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>cd</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationMoveCursor_$|_[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$|_[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_|[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_|[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_[_|_]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_[__|]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<c:cursor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_[__]_|">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$_[_|">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$|[__]_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$|[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$[_|_]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$[__|]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<c:cursor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$[__]_|">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_$[_|">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_$|_]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_$_|]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:anchor c:memberId="Bob"/>c<c:cursor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_$_]_|">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:anchor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|[_$_]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:anchor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|_[_$_]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="-2"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:anchor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[__$|]_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[__$]_|">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:anchor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>c<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_|_$]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/>c<c:anchor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|[__$]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="-2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<c:anchor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|_[__$]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="-3"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<c:anchor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[__]_$|">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_$|">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[__|]_$">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/><office:annotation-end office:name="alice_1"/>c<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_[_|_]_$">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<c:cursor c:memberId="Bob"/>c<office:annotation-end office:name="alice_1"/>d<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|[__]_$">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|[_$">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|_[__]_$">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-4"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationMoveCursor_|_[_$">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-4"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<c:anchor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationRemoveCursor">
  <before>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveCursor" memberid="Bob"/>
  </opsB>
  <after>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationRemoveStyle">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after>
   <office:styles></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationRemoveAnnotation_{_}_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="bob_1"/>cde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="7" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abc<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{_}[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="7" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abc<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{_[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{_[_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="bob_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{_[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="bob_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{}[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="bob_1"/>cde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{[_]}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="bob_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_{[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cde<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="6" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>abc<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="6" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="4" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="7" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="bob_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="7" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="bob_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="6" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{}]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>abc<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="bob_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="6" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="4" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_{]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>abc<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="6" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="4" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveAnnotation_[_]_{_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>abc<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>de<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="4" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>cde</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationRemoveText_XX_[__]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_XX_[_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_XX[__]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_XX[_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_X[X__]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_X[X_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_X[XX]_">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_X[XX]X">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="2" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[X__]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[X_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[XX]_">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[XX]X">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="1" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_X_]_">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_X_">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bde</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_X]_">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_X]X">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="2" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_]X">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationRemoveText_[_]_X">
  <before>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="4" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationSetParagraphStyle_S_[__]_">
  <before>
   <office:text><text:p>abc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="S">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_S_[_">
  <before>
   <office:text><text:p>abc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="S">a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_S[__]_">
  <before>
   <office:text><text:p>abc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="S"><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>bc</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_S[_">
  <before>
   <office:text><text:p>abc</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p text:style-name="S"><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>abc</text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_[_S_]_">
  <before>
   <office:text><text:p>ab</text:p><text:p>c</text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="3" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="3" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p text:style-name="S">c<office:annotation-end office:name="alice_1"/></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_[_S]_">
  <before>
   <office:text><text:p>ab</text:p><text:p></text:p><text:p></text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="3" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p text:style-name="S"><office:annotation-end office:name="alice_1"/></text:p><text:p></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_[_]_S">
  <before>
   <office:text><text:p>ab</text:p><text:p></text:p><text:p></text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p><office:annotation-end office:name="alice_1"/></text:p><text:p text:style-name="S"></text:p></office:text>
  </after>
 </test>
 <test name="AddAnnotationSetParagraphStyle_[_S">
  <before>
   <office:text><text:p>ab</text:p><text:p></text:p><text:p></text:p></office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="4" styleName="S"/>
  </opsB>
  <after>
   <office:text><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p></text:p><text:p text:style-name="S"></text:p></office:text>
  </after>
 </test>

 <test name="AddAnnotationSplitParagraph_V_[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p></text:p><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_V_[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p></text:p><text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_V[__]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a</text:p><text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_V[_">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a</text:p><text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_[_V_]">
  <before>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="2" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_[__V]">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p><office:annotation-end office:name="alice_1"/>c</text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_[__]_V">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="3" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="alice_1"/>c</text:p><text:p></text:p>
   </office:text>
  </after>
 </test>
 <test name="AddAnnotationSplitParagraph_[_V">
  <before>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="3" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc</text:p><text:p></text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationUpdateMetadata">
  <before>
   <office:meta><meta:initial-creator>Eve</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="UpdateMetadata" memberid="Bob"><setProperties meta:initial-creator="Bob"></setProperties></op>
  </opsB>
  <after>
   <office:meta><meta:initial-creator>Bob</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="AddAnnotationUpdateParagraphStyle">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"><style:text-properties fo:font-size="12pt"/></style:style></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="AddAnnotation" memberid="Alice" timestamp="1375706047061" position="0" length="1" name="alice_1"/>
  </opsA>
  <opsB>
   <op optype="UpdateParagraphStyle" memberid="Bob" styleName="S"><setProperties><style:text-properties fo:font-size="8pt"/></setProperties></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"><style:text-properties fo:font-size="8pt"/></style:style></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationAddCursor" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>ab</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationAddStyle" setup="linkAnnotationEndToStart">
  <before>
   <office:styles></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddStyle" memberid="Bob" styleName="S" styleFamily="paragraph"><setProperties style:class="text"/></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationApplyDirectStyling_{_}_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">a</text:span>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{_}[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">ab</text:span>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{_[}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="6">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">ab</text:span>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{_[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="6">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">ab</text:span>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{_[_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="7">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">abc</text:span>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{_[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="0" length="8">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p><text:span text:style-name="auto66965_0">abcd</text:span></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{[}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="4">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="5">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">b</text:span>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{[_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="6">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">bc</text:span>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_{[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="7">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">bcd</text:span>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[{_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="5">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">b</text:span>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[{_}]_" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="6">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">bc</text:span>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[{_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="1" length="7">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>a<text:span text:style-name="auto66965_0">bcd</text:span></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[_{_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="6" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>ab<text:span text:style-name="auto66965_0">c</text:span>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[_{_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="6" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>ab<text:span text:style-name="auto66965_0">cd</text:span>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[_{_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="6" length="2">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>ab<text:span text:style-name="auto66965_0">cd</text:span>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationApplyDirectStyling_[_{]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:automatic-styles></office:automatic-styles>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>de</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="ApplyDirectStyling" memberid="Bob" position="7" length="1">
    <setProperties><style:text-properties fo:font-weight="bold" /></setProperties>
   </op>
  </opsB>
  <after>
   <office:automatic-styles><style:style style:name="auto66965_0" ws:scope="document-content" style:family="text"><style:text-properties fo:font-weight="bold"/></style:style></office:automatic-styles>
   <office:text>
    <text:p>abc<text:span text:style-name="auto66965_0">d</text:span>e</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationInsertText_V_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="0" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>Vabcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_V[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="1" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>aVbcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[(V_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="2" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[(_V_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="3" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[(_V)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="4" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[V_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="5" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>aVbcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[_V_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="6" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abVcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[_V]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="7" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcVd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationInsertText_[_]_V" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="InsertText" memberid="Bob" position="8" text="V"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcdV</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationMergeParagraph_M_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a</text:p><text:p>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="4" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_M[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a</text:p><text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_[(M_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p><text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_[(_M_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>A</text:p><text:p>A</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_[(_M)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p><text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="3"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="2" sourceStartPosition="5"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_[M_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation></text:p><text:p>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="6"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMergeParagraph_[_M_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="MergeParagraph" memberid="Bob" destinationStartPosition="0" sourceStartPosition="7"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationMoveCursor_$|_[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_|_[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>a<c:cursor c:memberId="Bob"/>bcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_|[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>ab<c:cursor c:memberId="Bob"/>cde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_[|__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="6"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>ab<c:cursor c:memberId="Bob"/>cde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_[_|_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="7"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>abc<c:cursor c:memberId="Bob"/>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_[_|]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="8"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>abcd<c:cursor c:memberId="Bob"/>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$_[_]_|" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="0" length="9"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:anchor c:memberId="Bob"/>abcde<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_|_$[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<c:anchor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$|[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$[|__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="4"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$[_|_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="5"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>b<c:cursor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$[_|]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="6"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>bc<c:cursor c:memberId="Bob"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_$[_]_|" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="1" length="7"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>bcd<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[($|_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[($_|_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[($_|)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(|_$_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(_$|_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(_$_|)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(|_$)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(_|_$)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[(_$|)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="4" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_|_[$__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="-5"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>a<c:anchor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_|[$__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="-4"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[$|__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[$_|_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>b<c:cursor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[$_|]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>bc<c:cursor c:memberId="Bob"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[$_]_|" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="5" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:anchor c:memberId="Bob"/>bcd<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_|_[_$_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="-6"/>
  </opsB>
  <after>
   <office:text>
    <text:p><c:cursor c:memberId="Bob"/>ab<c:anchor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_|[_$_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="-5"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>b<c:anchor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[|_$_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="-1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a<c:cursor c:memberId="Bob"/>b<c:anchor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[_$|_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<c:cursor c:memberId="Bob"/>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[_$_|]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<c:anchor c:memberId="Bob"/>c<c:cursor c:memberId="Bob"/>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationMoveCursor_[_$_]_|" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="MoveCursor" memberid="Bob" position="6" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab<c:anchor c:memberId="Bob"/>cd<c:cursor c:memberId="Bob"/></text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationRemoveAnnotation_{_}_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation-end office:name="bob_1"/>c<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="8" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{_}[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="bob_1"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>d<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="8" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{_[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="bob_1"/>d<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="7" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{_[_}]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="bob_1"/><office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="7" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{_[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>c<office:annotation-end office:name="alice_1"/>d<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="7" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{}[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation-end office:name="bob_1"/><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="6" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{[_}_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="bob_1"/>d<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="6" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{[_]}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="bob_1"/><office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="6" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_{[_]_}" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="bob_1">
     <dc:creator e:memberid="Bob">Bob</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d<office:annotation-end office:name="bob_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="6" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveAnnotation_same" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bcd<office:annotation-end office:name="alice_1"/></text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveAnnotation" memberid="Bob" position="2" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationRemoveCursor" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="AddCursor" memberid="Bob"/>
   <op optype="RemoveCursor" memberid="Bob"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationRemoveStyle" setup="linkAnnotationEndToStart">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"/></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="RemoveStyle" memberid="Bob" styleName="S" styleFamily="paragraph"/>
  </opsB>
  <after>
   <office:styles></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationRemoveText_X_[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>bcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_X[__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>cde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_X[x__]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="6"/>
  </opsB>
  <after>
   <office:text>
    <text:p>cde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_X[X_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="7"/>
  </opsB>
  <after>
   <office:text>
    <text:p>de</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_X[XX]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="8"/>
  </opsB>
  <after>
   <office:text>
    <text:p>e</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_X[XX]X" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="0" length="9"/>
  </opsB>
  <after>
   <office:text>
    <text:p></text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[(X_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[(XX)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="3" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[(_X_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AAA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="4" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[(_X)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="4" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[X_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="6" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abde</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[XX]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="6" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abe</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[XX]X" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cd<office:annotation-end office:name="alice_1"/>e</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="6" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[_X_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cde<office:annotation-end office:name="alice_1"/>f</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="7" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcef</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[_X]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cde<office:annotation-end office:name="alice_1"/>f</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="7" length="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcf</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[_X]X" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cde<office:annotation-end office:name="alice_1"/>f</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="7" length="3"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abc</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationRemoveText_[_]X" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>ab<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>cde<office:annotation-end office:name="alice_1"/>f</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="3" length="2"/>
  </opsA>
  <opsB>
   <op optype="RemoveText" memberid="Bob" position="9" length="1"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcde</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationSetParagraphStyle_S_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text>
    <text:p text:style-name="S">abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSetParagraphStyle_S[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>abc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="2"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="0" styleName="S"/>
  </opsB>
  <after>
   <office:text>
    <text:p text:style-name="S">abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSetParagraphStyle_[S_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation></text:p><text:p>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="6" styleName="S"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a</text:p><text:p text:style-name="S">bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSetParagraphStyle_[_S_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>b</text:p><text:p>c<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SetParagraphStyle" position="7" styleName="S"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab</text:p><text:p text:style-name="S">cd</text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationSplitParagraph_V_[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="0" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p></text:p><text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_V[_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="1" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[(V_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="2" sourceParagraphPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[(_V_)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="3" sourceParagraphPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[(_V)_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="4" sourceParagraphPosition="2"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[V_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="5" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>a</text:p><text:p>bcd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[_V_]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="6" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>ab</text:p><text:p>cd</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[__V]" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="7" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abc</text:p><text:p>d</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationSplitParagraph_[_]_V" setup="linkAnnotationEndToStart">
  <before>
   <office:text>
    <text:p>a<office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p>AA</text:p>
      </text:list-item>
     </text:list>
    </office:annotation>bc<office:annotation-end office:name="alice_1"/>d</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="2" length="2"/>
  </opsA>
  <opsB>
   <op optype="SplitParagraph" memberid="Bob" position="8" sourceParagraphPosition="0"/>
  </opsB>
  <after>
   <office:text>
    <text:p>abcd</text:p><text:p></text:p>
   </office:text>
  </after>
 </test>

 <test name="RemoveAnnotationUpdateMetadata" setup="linkAnnotationEndToStart">
  <before>
   <office:meta><meta:initial-creator>Eve</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="UpdateMetadata" memberid="Bob"><setProperties meta:initial-creator="Bob"></setProperties></op>
  </opsB>
  <after>
   <office:meta><meta:initial-creator>Bob</meta:initial-creator><meta:creation-date>2013-08-05T12:34:07.061Z</meta:creation-date></office:meta>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>
 <test name="RemoveAnnotationUpdateParagraphStyle" setup="linkAnnotationEndToStart">
  <before>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"><style:text-properties fo:font-size="12pt"/></style:style></office:styles>
   <office:text>
    <text:p><office:annotation office:name="alice_1">
     <dc:creator e:memberid="Alice">Alice</dc:creator>
     <dc:date>2013-08-05T12:34:07.061Z</dc:date>
     <text:list>
      <text:list-item>
       <text:p></text:p>
      </text:list-item>
     </text:list>
    </office:annotation>a<office:annotation-end office:name="alice_1"/>b</text:p>
   </office:text>
  </before>
  <opsA>
   <op optype="RemoveAnnotation" memberid="Alice" position="1" length="0"/>
  </opsA>
  <opsB>
   <op optype="UpdateParagraphStyle" memberid="Bob" styleName="S"><setProperties><style:text-properties fo:font-size="8pt"/></setProperties></op>
  </opsB>
  <after>
   <office:styles><style:style style:name="S" style:family="paragraph" style:class="text"><style:text-properties fo:font-size="8pt"/></style:style></office:styles>
   <office:text>
    <text:p>ab</text:p>
   </office:text>
  </after>
 </test>
</tests>
