[Libreoffice-commits] core.git: sw/qa writerfilter/source

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Sun Dec 30 15:10:51 UTC 2018


 sw/qa/extras/rtfexport/data/tdf121623.rtf      |  165 +++++++++++++++++++++++++
 sw/qa/extras/rtfexport/rtfexport3.cxx          |    6 
 writerfilter/source/rtftok/rtfdocumentimpl.cxx |   16 ++
 writerfilter/source/rtftok/rtfdocumentimpl.hxx |    3 
 writerfilter/source/rtftok/rtflookahead.cxx    |    5 
 writerfilter/source/rtftok/rtflookahead.hxx    |    2 
 6 files changed, 194 insertions(+), 3 deletions(-)

New commits:
commit 92863700cddb70b07e4722551b1f1db78c2474d3
Author:     László Németh <nemeth at numbertext.org>
AuthorDate: Sun Dec 30 02:15:30 2018 +0100
Commit:     László Németh <nemeth at numbertext.org>
CommitDate: Sun Dec 30 16:10:29 2018 +0100

    tdf#121623 RTF import: keep table in multicolumn section
    
    instead of losing columns when the section starts with that table.
    
    Change-Id: I1c9d4eb03d24e54600956cb41b835c5e37bfdd8b
    Reviewed-on: https://gerrit.libreoffice.org/65730
    Tested-by: Jenkins
    Reviewed-by: László Németh <nemeth at numbertext.org>

diff --git a/sw/qa/extras/rtfexport/data/tdf121623.rtf b/sw/qa/extras/rtfexport/data/tdf121623.rtf
new file mode 100644
index 000000000000..e331b0bb1415
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/tdf121623.rtf
@@ -0,0 +1,165 @@
+{\rtf1\ansi\deff4\adeflang1025
+{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\froman\fprq2\fcharset2 Symbol;}{\f2\fswiss\fprq2\fcharset0 Arial;}{\f3\froman\fprq2\fcharset238 Liberation Serif{\*\falt Times New Roman};}{\f4\fswiss\fprq0\fcharset238 Arial;}{\f5\froman\fprq2\fcharset238 Times New Roman;}{\f6\fmodern\fprq1\fcharset238 Liberation Mono{\*\falt Courier New};}{\f7\fnil\fprq0\fcharset2 OpenSymbol{\*\falt Arial Unicode MS};}{\f8\fnil\fprq2\fcharset238 Microsoft YaHei;}{\f9\fmodern\fprq1\fcharset238 NSimSun;}{\f10\fnil\fprq2\fcharset238 Lucida Sans;}{\f11\fswiss\fprq0\fcharset238 Lucida Sans;}}
+{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red114\green159\blue207;\pagebb\pagebb}
+{\stylesheet{\s0\snext0\ql\ltrpar\widctlpar\hyphpar0\aspalpha\cf0\kerning1\dbch\af12\langfe2052\dbch\af10\afs24\alang1081\loch\f5\hich\af5\fs24\lang1038 Normal;}
+{\s1\sbasedon20\snext21\ilvl0\outlinelevel0\ql\sb284\sa140\keepn\ltrpar\caps\b0\dbch\af8\dbch\af10\afs36\ab0\loch\f4\fs32 Heading 1;}
+{\s2\sbasedon20\snext21\ilvl1\outlinelevel1\ql\sb284\sa140\keepn\ltrpar\caps\b0\dbch\af8\dbch\af10\afs32\ab0\loch\f4\fs28 Heading 2;}
+{\s3\sbasedon20\snext21\ilvl2\outlinelevel2\ql\sb284\sa140\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs28\ab0\loch\f4\fs28 Heading 3;}
+{\s4\sbasedon20\snext21\ilvl3\outlinelevel3\ql\sb284\sa140\keepn\ltrpar\i0\b0\dbch\af8\dbch\af10\afs26\ai\ab0\loch\f4\fs28 Heading 4;}
+{\s5\sbasedon20\snext21\ilvl4\outlinelevel4\ql\sb284\sa140\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs23\ab0\loch\f4\fs24 Heading 5;}
+{\s6\sbasedon20\snext21\ilvl5\outlinelevel5\ql\sb284\sa140\keepn\ltrpar\scaps\i0\b0\dbch\af8\dbch\af10\afs23\ai\ab0\loch\f4\fs24 Heading 6;}
+{\s7\sbasedon20\snext21\ilvl6\outlinelevel6\ql\sb284\sa140\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs22\ab0\loch\f4\fs24 Heading 7;}
+{\s8\sbasedon20\snext21\ilvl7\outlinelevel7\ql\sb284\sa140\keepn\ltrpar\scaps\i0\b0\dbch\af8\dbch\af10\afs22\ai\ab0\loch\f4\fs24 Heading 8;}
+{\s9\sbasedon20\snext21\ilvl8\outlinelevel8\ql\sb284\sa140\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs21\ab0\loch\f4\fs24 Heading 9;}
+{\*\cs15\snext15\dbch\af7\dbch\af7\loch\f7 Bullets;}
+{\*\cs16\snext16 Numbering Symbols;}
+{\*\cs17\snext17\i\ai Quotation;}
+{\*\cs18\snext18\b\ab Strong Emphasis;}
+{\*\cs19\snext19\i0\ul\ulc0\ai Emphasis;}
+{\s20\sbasedon0\snext21\ql\sb240\sa120\keepn\ltrpar\dbch\af8\dbch\af10\afs28\loch\f4\fs28 Heading;}
+{\s21\sbasedon0\snext21\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5 Text Body;}
+{\s22\sbasedon73\snext22\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\dbch\af11\loch\f5 List;}
+{\s23\sbasedon40\snext23\ql\sb120\sa120\noline\ltrpar\i\dbch\af11\afs24\ai\loch\f4\fs24 Caption;}
+{\s24\sbasedon40\snext24\ql\noline\ltrpar\dbch\af11\loch\f4 Index;}
+{\s25\sbasedon20\snext21\qc\sb0\sa283\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs56\ab0\loch\f4\fs48 Title;}
+{\s26\sbasedon20\snext21\qc\sb284\sa140\keepn\ltrpar\scaps\dbch\af8\dbch\af10\afs36\loch\f4\fs36 Subtitle;}
+{\s27\sbasedon20\snext21\qc\sb284\sa140\keepn\ltrpar\scaps0\caps0\dbch\af8\dbch\af10\afs28\loch\f4\fs36 Alc\u237\'edm (kisbet\u369\'fbs);}
+{\s28\sbasedon26\snext21\qc\sb0\sa142\keepn\ltrpar\scaps\dbch\af8\dbch\af10\afs36\loch\f4\fs36 Alc\u237\'edm \u250\'faj oldalon;}
+{\s29\sbasedon20\snext21\ilvl8\outlinelevel8\ql\sb284\sa140\keepn\ltrpar\scaps\b0\dbch\af8\dbch\af10\afs21\ab0\loch\f4\fs24 Heading 10;}
+{\s30\sbasedon22\snext30\sl276\slmult1\qj\li360\ri0\lin360\rin0\fi-360\sb0\sa120\ltrpar\dbch\af11\loch\f5 List 1;}
+{\s31\sbasedon22\snext31\sl276\slmult1\qj\li360\ri0\lin360\rin0\fi-360\sb0\sa120\ltrpar\dbch\af11\loch\f5 Numbering 1;}
+{\s32\sbasedon21\snext32\sl276\slmult1\qj\li567\ri567\lin567\rin567\fi0\sb140\sa140\ltrpar\i\loch\f5\hich\af5 Quotations;}
+{\s33\sbasedon68\snext35\ql\sb0\sa0\noline\ltrpar\b0\loch\f5\hich\af5 Signature;}
+{\s34\sbasedon21\snext34\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi283\sb0\sa140\ltrpar\loch\f5\hich\af5 First Line Indent;}
+{\s35\sbasedon68\snext21\ql\tqc\tx6803\sb0\sa85\ltrpar\loch\f5\hich\af5 Egy al\u225\'e1\u237\'edr\u225\'e1shely al\u225\'e1 n\u233\'e9v;}
+{\s36\sbasedon68\snext37\ql\tx567\tlul\tqc\tx3969\tqc\tx5102\tlul\tqc\tx8504\sb568\sa84\ltrpar\loch\f5\hich\af5 K\u233\'e9t al\u225\'e1\u237\'edr\u225\'e1shely;}
+{\s37\sbasedon68\snext21\ql\tqc\tx2268\tqc\tx6803\sb0\sa85\ltrpar\loch\f5\hich\af5 K\u233\'e9t al\u225\'e1\u237\'edr\u225\'e1shely al\u225\'e1 n\u233\'e9v;}
+{\s38\sbasedon21\snext38\sl240\slmult1\qj\tx5669\li4252\ri0\lin4252\rin0\fi0\sb0\sa142\ltrpar\loch\f5\hich\af5 Jobbra h\u250\'fazott;}
+{\s39\sbasedon68\snext35\ql\tx5102\tlul\tqc\tx8504\sb568\sa84\ltrpar\loch\f5\hich\af5 Egy al\u225\'e1\u237\'edr\u225\'e1shely;}
+{\s40\sbasedon0\snext40\ql\ltrpar\loch\f5\hich\af5 V\u225\'e1laszthat\u243\'f3 tov\u225\'e1bbi st\u237\'edlusok;}
+{\s41\sbasedon40\snext41\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Header Right;}
+{\s42\sbasedon40\snext42\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Footer Right;}
+{\s43\sbasedon40\snext43\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Header Left;}
+{\s44\sbasedon40\snext44\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Footer Left;}
+{\s45\sbasedon40\snext45\ql\li567\ri0\lin567\rin0\fi0\ltrpar\loch\f5\hich\af5 List Contents;}
+{\s46\sbasedon40\snext45\ql\li0\ri0\lin0\rin0\fi0\ltrpar\loch\f5\hich\af5 List Heading;}
+{\s47\sbasedon40\snext47\ql\li339\ri0\lin339\rin0\fi-339\noline\ltrpar\afs20\loch\f5\hich\af5\fs20 Footnote;}
+{\s48\sbasedon40\snext48\ql\ltrpar\loch\f5\hich\af5 Frame Contents;}
+{\s49\sbasedon40\snext49\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Header;}
+{\s50\sbasedon40\snext50\ql\tqc\tx4536\tqr\tx9072\noline\ltrpar\loch\f5\hich\af5 Footer;}
+{\s51\sbasedon40\snext51\ql\sb0\sa0\ltrpar\dbch\af9\dbch\af6\afs20\loch\f6\fs20 Preformatted Text;}
+{\s52\sbasedon20\snext52\ql\sb240\sa120\keepn\ltrpar\dbch\af8\dbch\af10\afs28\loch\f4\fs28 Tov\u225\'e1bbi c\u237\'edmsorok;}
+{\s53\sbasedon52\snext53\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Contents Heading;}
+{\s54\sbasedon52\snext54\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Index Heading;}
+{\s55\sbasedon52\snext55\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Table Index Heading;}
+{\s56\sbasedon52\snext56\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Object Index Heading;}
+{\s57\sbasedon52\snext57\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Bibliography Heading;}
+{\s58\sbasedon52\snext58\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 User Index Heading;}
+{\s59\sbasedon52\snext59\ql\li0\ri0\lin0\rin0\fi0\sb240\sa120\keepn\noline\ltrpar\b\dbch\af8\dbch\af10\afs32\ab\loch\f4\fs32 Illustration Index Heading;}
+{\s60\sbasedon40\snext60\ql\sb0\sa60\noline\ltrpar\loch\f5\hich\af5 Addressee;}
+{\s61\sbasedon40\snext61\ql\sb0\sa60\noline\ltrpar\loch\f5\hich\af5 Sender;}
+{\s62\sbasedon40\snext62\ql\noline\ltrpar\loch\f5\hich\af5 Complimentary Close;}
+{\s63\sbasedon40\snext63\ql\li339\ri0\lin339\rin0\fi-339\noline\ltrpar\afs20\loch\f5\hich\af5\fs20 Endnote;}
+{\s64\sbasedon40\snext21\ql\sb0\sa283\brdrb\brdrdb\brdrw1\brdrcf15\brsp0\noline\ltrpar\afs12\loch\f5\hich\af5\fs12 Horizontal Line;}
+{\s65\sbasedon40\snext65\ql\noline\ltrpar\loch\f5\hich\af5 Table Contents;}
+{\s66\sbasedon68\snext67\ql\li5102\ri0\lin5102\rin0\fi0\sb283\sa57\ltrpar\b\loch\f5\hich\af5 \u220\'dcdv\u246\'f6zlettel;}
+{\s67\sbasedon68\snext67\ql\sl240\slmult1\tqc\tx6803\li5102\ri0\lin5102\rin0\fi0\sb84\sa84\ltrpar\loch\f5\hich\af5 \u220\'dcdv\u246\'f6zlettel alatt n\u233\'e9v \u233\'e9s c\u237\'edm;}
+{\s68\sbasedon0\snext68\ql\ltrpar\loch\f5\hich\af5 \u220\'dcdv\u246\'f6zlettel, al\u225\'e1\u237\'edr\u225\'e1sok;}
+{\s69\sbasedon27\snext21\qc\sb0\sa142\keepn\ltrpar\scaps0\caps0\dbch\af8\dbch\af10\afs28\loch\f4\fs36 Alc\u237\'edm (kisbet\u369\'fbs) \u250\'faj oldalon;}
+{\s70\sbasedon20\snext21\qc\sb284\sa284\keepn\ltrpar\caps\ul\ulc0\b\dbch\af8\dbch\af10\afs28\loch\f4\fs28 Dokumentumt\u237\'edpus neve;}
+{\s71\sbasedon68\snext71\ql\tx1984\li567\ri0\lin567\rin0\fi0\sb0\sa85\ltrpar\loch\f5\hich\af5 Kieg\u233\'e9sz\u237\'edt\u337\'f5 v\u233\'e9gjegyzetek;}
+{\s72\sbasedon21\snext72\sl276\slmult1\qj\tx567\li567\ri0\lin567\rin0\fi-283\sb0\sa140\ltrpar\loch\f5\hich\af5 Hanging Indent;}
+{\s73\sbasedon21\snext73\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5 Tov\u225\'e1bbi sz\u246\'f6vegt\u246\'f6rzs st\u237\'edlusok;}
+{\s74\sbasedon73\snext74\sl276\slmult1\qj\li2268\ri0\lin2268\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5 Marginalia;}
+{\s75\sbasedon73\snext75\sl276\slmult1\qj\tx2835\li2835\ri0\lin2835\rin0\fi-2551\sb0\sa140\ltrpar\loch\f5\hich\af5 List Indent;}
+{\s76\sbasedon21\snext76\sl276\slmult1\qj\li283\ri0\lin283\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5 Text Body Indent;}
+}{\*\listtable{\list\listtemplateid1
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}
+{\listlevel\levelnfc255\leveljc0\levelstartat1\levelfollow2{\leveltext \'00;}{\levelnumbers;}\fi0\li0}\listid1}
+}{\listoverridetable{\listoverride\listid1\listoverridecount0\ls1}}{\*\generator LibreOffice/6.1.0.3$Windows_x86 LibreOffice_project/efb621ed25068d70781dc026f7e9c5187a4decd1}{\info{\author L\u225\'e1szl\u243\'f3 Torma}{\creatim\yr2018\mo11\dy15\hr15\min53}{\author L\u225\'e1szl\u243\'f3 Torma}{\revtim\yr2018\mo11\dy15\hr16\min0}{\printim\yr0\mo0\dy0\hr0\min0}}{\*\userprops}\deftab709
+\viewscale100
+{\*\pgdsctbl
+{\pgdsc0\pgdscuse451\pgwsxn11906\pghsxn16838\marglsxn1417\margrsxn1417\margtsxn1417\margbsxn1417\cols2\colsx282\pgdscnxt0 Default Style;}}
+\formshade\paperh16838\paperw11906\margl1417\margr1417\margt1417\margb1417\sectd\sbknone\sectunlocked1\pgndec\pgwsxn11906\pghsxn16838\marglsxn1417\margrsxn1417\margtsxn1417\margbsxn1417\cols2\colsx282\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc\htmautsp
+{\*\ftnsep\chftnsep}\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clbrdrt\brdrs\brdrw10\brdrcf1\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clbrdrt\brdrs\brdrw10\brdrcf1\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pgndec\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+1}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+2}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+3}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+4}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+d}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+5}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+e}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+6}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+f}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+7}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+8}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+9}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+0}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+d}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+1}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+e}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+2}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+f}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+3}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+4}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+5}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+6}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+d}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+7}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+e}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+8}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+f}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+9}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+0}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+1}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+2}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+d}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+3}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+e}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+4}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+f}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+5}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+6}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+7}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+8}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+d}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+9}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+e}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+0}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+f}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+1}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+a}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+2}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+b}\cell\row\pard\trowd\trql\ltrrow\trpaddft3\trpaddt0\trpaddfl3\trpaddl0\trpaddfb3\trpaddb0\trpaddfr3\trpaddr0\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clpadfr3\clpadr55\cellx2198\clpadfl3\clpadl55\clbrdrl\brdrs\brdrw10\brdrcf1\clpadft3\clpadt55\clbrdrb\brdrs\brdrw10\brdrcf1\clpadfb3\clpadb55\clbrdrr\brdrs\brdrw10\brdrcf1\clpadfr3\clpadr55\cellx4395\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+3}\cell\pard\plain \s65\ql\noline\ltrpar\loch\f5\hich\af5\intbl\ql{\cf1\outl0\strike0\i0\shad0\ulnone\ulc0\b0\afs24\ai0\ab0\rtlch \ltrch\loch\fs24\loch\f3\hich\af3
+c}\cell\row\pard\pard\plain \s0\ql\ltrpar\widctlpar\hyphpar0\aspalpha\cf0\kerning1\dbch\af12\langfe2052\dbch\af10\afs24\alang1081\loch\f5\hich\af5\fs24\lang1038\rtlch \ltrch\loch
+
+\par \column\pard\plain \s21\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5{\rtlch \ltrch\loch
+Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat mi quis pretium semper. Proin luctus orci ac neque venenatis, quis commodo dolor posuere. Curabitur dignissim sapien quis cursus egestas. Donec blandit auctor arcu, nec pellentesque eros molestie eget. In consectetur aliquam hendrerit. Sed cursus mauris vitae ligula pellentesque, non pellentesque urna aliquet. Fusce placerat mauris enim, nec rutrum purus semper vel. Praesent tincidunt neque eu pellentesque pharetra. Fusce pellentesque est orci.}
+\par \pard\plain \s21\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5{\rtlch \ltrch\loch
+Integer sodales tincidunt tristique. Sed a metus posuere, adipiscing nunc et, viverra odio. Donec auctor molestie sem, sit amet tristique lectus hendrerit sed. Cras sodales nisl sed orci mattis iaculis. Nunc eget dolor accumsan, pharetra risus a, vestibulum mauris. Nunc vulputate lobortis mollis. Vivamus nec tellus faucibus, tempor magna nec, facilisis felis. Donec commodo enim a vehicula pellentesque. Nullam vehicula vestibulum est vel ultricies.}
+\par \pard\plain \s21\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar\loch\f5\hich\af5\sl276\slmult1\qj\li0\ri0\lin0\rin0\fi0\sb0\sa140\ltrpar{\rtlch \ltrch\loch
+Aliquam velit massa, laoreet vel leo nec, volutpat facilisis eros. Donec consequat arcu ut diam tempor luctus. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Praesent vitae lacus vel leo sodales pharetra a a nibh. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Nam luctus tempus nibh, fringilla dictum augue consectetur eget. Curabitur at ante sit amet tortor pharetra molestie eu nec ante. Mauris tincidunt, nibh eu sollicitudin molestie, dolor sapien congue tortor, a pulvinar sapien turpis sed ante. Donec nec est elementum, euismod nulla in, mollis nunc.}
+\par }
\ No newline at end of file
diff --git a/sw/qa/extras/rtfexport/rtfexport3.cxx b/sw/qa/extras/rtfexport/rtfexport3.cxx
index 26bbc8121372..3a5105f03357 100644
--- a/sw/qa/extras/rtfexport/rtfexport3.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport3.cxx
@@ -193,6 +193,12 @@ DECLARE_RTFEXPORT_TEST(testTdf112520, "tdf112520.docx")
                          getProperty<text::TextContentAnchorType>(getShape(3), "AnchorType"));
 }
 
+DECLARE_RTFEXPORT_TEST(testTdf121623, "tdf121623.rtf")
+{
+    // This was 2, multicolumn section was ignored at the table.
+    CPPUNIT_ASSERT_EQUAL(1, getPages());
+}
+
 CPPUNIT_PLUGIN_IMPLEMENT();
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 8853941cfe35..22b766889711 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -44,6 +44,7 @@
 #include "rtfreferenceproperties.hxx"
 #include "rtfskipdestination.hxx"
 #include "rtftokenizer.hxx"
+#include "rtflookahead.hxx"
 
 using namespace com::sun::star;
 
@@ -258,6 +259,7 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& x
     , m_aDefaultState(this)
     , m_bSkipUnknown(false)
     , m_bFirstRun(true)
+    , m_bFirstRunException(false)
     , m_bNeedPap(true)
     , m_bNeedCr(false)
     , m_bNeedCrOrig(false)
@@ -377,7 +379,7 @@ void RTFDocumentImpl::checkFirstRun()
         outputSettingsTable();
         // start initial paragraph
         m_bFirstRun = false;
-        assert(!m_bNeedSect);
+        assert(!m_bNeedSect || m_bFirstRunException);
         setNeedSect(true); // first call that succeeds
 
         // set the requested default font, if there are none
@@ -397,8 +399,18 @@ void RTFDocumentImpl::setNeedPar(bool bNeedPar) { m_bNeedPar = bNeedPar; }
 
 void RTFDocumentImpl::setNeedSect(bool bNeedSect)
 {
+    if (!m_bNeedSect && bNeedSect && m_bFirstRun)
+    {
+        RTFLookahead aLookahead(Strm(), m_pTokenizer->getGroupStart());
+        if (aLookahead.hasTable() && aLookahead.hasColumns())
+        {
+            m_bFirstRunException = true;
+        }
+    }
+
     // ignore setting before checkFirstRun - every keyword calls setNeedSect!
-    if (!m_bNeedSect && bNeedSect && !m_bFirstRun)
+    // except the case of a table in a multicolumn section
+    if (!m_bNeedSect && bNeedSect && (!m_bFirstRun || m_bFirstRunException))
     {
         if (!m_pSuperstream) // no sections in header/footer!
         {
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index 1f45e9f99eec..6fe21351c5c8 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -570,7 +570,10 @@ private:
     std::map<int, Id> m_aStyleTypes;
     /// Color index <-> RGB color value map
     std::vector<Color> m_aColorTable;
+    /// to start initial paragraph / section after font/style tables
     bool m_bFirstRun;
+    /// except in the case of tables in initial multicolumn section (global for assertion)
+    bool m_bFirstRunException;
     /// If paragraph properties should be emitted on next run.
     bool m_bNeedPap;
     /// If we need to emit a CR at the end of substream.
diff --git a/writerfilter/source/rtftok/rtflookahead.cxx b/writerfilter/source/rtftok/rtflookahead.cxx
index 16ac509e0cde..d60057d52bb1 100644
--- a/writerfilter/source/rtftok/rtflookahead.cxx
+++ b/writerfilter/source/rtftok/rtflookahead.cxx
@@ -35,6 +35,7 @@ namespace rtftok
 RTFLookahead::RTFLookahead(SvStream& rStream, sal_uInt64 nGroupStart)
     : m_rStream(rStream)
     , m_bHasTable(false)
+    , m_bHasColumns(false)
 {
     sal_uInt64 const nPos = m_rStream.Tell();
     m_rStream.Seek(nGroupStart);
@@ -62,8 +63,10 @@ RTFError RTFLookahead::dispatchToggle(RTFKeyword /*nKeyword*/, bool /*bParam*/,
     return RTFError::OK;
 }
 
-RTFError RTFLookahead::dispatchValue(RTFKeyword /*nKeyword*/, int /*nParam*/)
+RTFError RTFLookahead::dispatchValue(RTFKeyword nKeyword, int nParam)
 {
+    if (nKeyword == RTF_COLS && nParam >= 2)
+        m_bHasColumns = true;
     return RTFError::OK;
 }
 
diff --git a/writerfilter/source/rtftok/rtflookahead.hxx b/writerfilter/source/rtftok/rtflookahead.hxx
index a5779fcc9dea..0a40d554c5e8 100644
--- a/writerfilter/source/rtftok/rtflookahead.hxx
+++ b/writerfilter/source/rtftok/rtflookahead.hxx
@@ -48,11 +48,13 @@ public:
     void finishSubstream() override;
     bool isSubstream() const override;
     bool hasTable() { return m_bHasTable; }
+    bool hasColumns() { return m_bHasColumns; }
 
 private:
     tools::SvRef<RTFTokenizer> m_pTokenizer;
     SvStream& m_rStream;
     bool m_bHasTable;
+    bool m_bHasColumns;
 };
 } // namespace rtftok
 } // namespace writerfilter


More information about the Libreoffice-commits mailing list