<?xml version="1.0" encoding="UTF-8"?>

<office:document xmlns:office="http://openoffice.org/2000/office" xmlns:style="http://openoffice.org/2000/style" xmlns:text="http://openoffice.org/2000/text" xmlns:table="http://openoffice.org/2000/table" xmlns:draw="http://openoffice.org/2000/drawing" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="http://openoffice.org/2000/meta" xmlns:number="http://openoffice.org/2000/datastyle" xmlns:svg="http://www.w3.org/2000/svg" xmlns:chart="http://openoffice.org/2000/chart" xmlns:dr3d="http://openoffice.org/2000/dr3d" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="http://openoffice.org/2000/form" xmlns:script="http://openoffice.org/2000/script" xmlns:config="http://openoffice.org/2001/config" office:class="text" office:version="1.0">
 <office:meta>
  <meta:generator>StarOffice 7 (Win32)
  </meta:generator><!--645m20(Build:8701)-->
  <dc:title>Spreadsheet Documents</dc:title>
  <meta:initial-creator>Diane O&apos;Brien</meta:initial-creator>
  <meta:creation-date>2002-08-09T10:43:13</meta:creation-date>
  <dc:creator>Jürgen Schmidt</dc:creator>
  <dc:date>2003-11-26T17:54:26</dc:date>
  <meta:printed-by>Diane O&apos;Brien</meta:printed-by>
  <meta:print-date>2002-08-09T11:20:51</meta:print-date>
  <dc:language>en-US</dc:language>
  <meta:editing-cycles>195</meta:editing-cycles>
  <meta:editing-duration>P9DT16H0M56S</meta:editing-duration>
  <meta:user-defined meta:name="Info 1"/>
  <meta:user-defined meta:name="Info 2"/>
  <meta:user-defined meta:name="Info 3"/>
  <meta:user-defined meta:name="Info 4"/>
  <meta:document-statistic meta:table-count="165" meta:image-count="77" meta:object-count="0" meta:page-count="112" meta:paragraph-count="3217" meta:word-count="25923" meta:character-count="222606"/>
 </office:meta>
 <office:settings>
  <config:config-item-set config:name="view-settings">
   <config:config-item config:name="ViewAreaTop" config:type="int">1812713</config:config-item>
   <config:config-item config:name="ViewAreaLeft" config:type="int">0</config:config-item>
   <config:config-item config:name="ViewAreaWidth" config:type="int">30191</config:config-item>
   <config:config-item config:name="ViewAreaHeight" config:type="int">18443</config:config-item>
   <config:config-item config:name="ShowRedlineChanges" config:type="boolean">true</config:config-item>
   <config:config-item config:name="ShowHeaderWhileBrowsing" config:type="boolean">false</config:config-item>
   <config:config-item config:name="ShowFooterWhileBrowsing" config:type="boolean">false</config:config-item>
   <config:config-item config:name="InBrowseMode" config:type="boolean">false</config:config-item>
   <config:config-item-map-indexed config:name="Views">
    <config:config-item-map-entry>
     <config:config-item config:name="ViewId" config:type="string">view2</config:config-item>
     <config:config-item config:name="ViewLeft" config:type="int">17775</config:config-item>
     <config:config-item config:name="ViewTop" config:type="int">1825960</config:config-item>
     <config:config-item config:name="VisibleLeft" config:type="int">0</config:config-item>
     <config:config-item config:name="VisibleTop" config:type="int">1812713</config:config-item>
     <config:config-item config:name="VisibleRight" config:type="int">30189</config:config-item>
     <config:config-item config:name="VisibleBottom" config:type="int">1831155</config:config-item>
     <config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
     <config:config-item config:name="ZoomFactor" config:type="short">100</config:config-item>
     <config:config-item config:name="IsSelectedFrame" config:type="boolean">false</config:config-item>
    </config:config-item-map-entry>
   </config:config-item-map-indexed>
  </config:config-item-set>
  <config:config-item-set config:name="configuration-settings">
   <config:config-item config:name="AddParaTableSpacing" config:type="boolean">false</config:config-item>
   <config:config-item config:name="PrintReversed" config:type="boolean">false</config:config-item>
   <config:config-item config:name="LinkUpdateMode" config:type="short">1</config:config-item>
   <config:config-item-map-indexed config:name="ForbiddenCharacters">
    <config:config-item-map-entry>
     <config:config-item config:name="Language" config:type="string">en</config:config-item>
     <config:config-item config:name="Country" config:type="string">US</config:config-item>
     <config:config-item config:name="Variant" config:type="string"/>
     <config:config-item config:name="BeginLine" config:type="string"/>
     <config:config-item config:name="EndLine" config:type="string"/>
    </config:config-item-map-entry>
    <config:config-item-map-entry>
     <config:config-item config:name="Language" config:type="string">zh</config:config-item>
     <config:config-item config:name="Country" config:type="string">CN</config:config-item>
     <config:config-item config:name="Variant" config:type="string"/>
     <config:config-item config:name="BeginLine" config:type="string">﹀﹂﹄﹏､～￠々‖•·ˇˉ―--′</config:config-item>
     <config:config-item config:name="EndLine" config:type="string">.([{£¥&apos;&quot;‵〈《「『【〔〖（［｛￡￥〝︵︷︹︻︽︿﹁﹃﹙﹛﹝（｛</config:config-item>
    </config:config-item-map-entry>
   </config:config-item-map-indexed>
   <config:config-item config:name="CharacterCompressionType" config:type="short">0</config:config-item>
   <config:config-item config:name="PrintSingleJobs" config:type="boolean">false</config:config-item>
   <config:config-item config:name="UpdateFromTemplate" config:type="boolean">false</config:config-item>
   <config:config-item config:name="PrintPaperFromSetup" config:type="boolean">false</config:config-item>
   <config:config-item config:name="AddFrameOffsets" config:type="boolean">false</config:config-item>
   <config:config-item config:name="PrintLeftPages" config:type="boolean">true</config:config-item>
   <config:config-item config:name="PrintTables" config:type="boolean">true</config:config-item>
   <config:config-item config:name="ChartAutoUpdate" config:type="boolean">true</config:config-item>
   <config:config-item config:name="PrintControls" config:type="boolean">true</config:config-item>
   <config:config-item config:name="PrinterSetup" config:type="base64Binary"> </config:config-item>
   <config:config-item config:name="PrintAnnotationMode" config:type="short">0</config:config-item>
   <config:config-item config:name="ApplyUserData" config:type="boolean">true</config:config-item>
   <config:config-item config:name="FieldAutoUpdate" config:type="boolean">true</config:config-item>
   <config:config-item config:name="SaveVersionOnClose" config:type="boolean">false</config:config-item>
   <config:config-item config:name="SaveGlobalDocumentLinks" config:type="boolean">false</config:config-item>
   <config:config-item config:name="IsKernAsianPunctuation" config:type="boolean">false</config:config-item>
   <config:config-item config:name="AlignTabStopPosition" config:type="boolean">false</config:config-item>
   <config:config-item config:name="CurrentDatabaseDataSource" config:type="string">Adreßbuch</config:config-item>
   <config:config-item config:name="PrinterName" config:type="string">Xerox DocuPrint N24</config:config-item>
   <config:config-item config:name="PrintFaxName" config:type="string"/>
   <config:config-item config:name="PrintRightPages" config:type="boolean">true</config:config-item>
   <config:config-item config:name="IsLabelDocument" config:type="boolean">false</config:config-item>
   <config:config-item config:name="AddParaTableSpacingAtStart" config:type="boolean">false</config:config-item>
   <config:config-item config:name="PrintProspect" config:type="boolean">false</config:config-item>
   <config:config-item config:name="PrintGraphics" config:type="boolean">true</config:config-item>
   <config:config-item config:name="AllowPrintJobCancel" config:type="boolean">false</config:config-item>
   <config:config-item config:name="CurrentDatabaseCommandType" config:type="int">0</config:config-item>
   <config:config-item config:name="PrinterIndependentLayout" config:type="string">disabled</config:config-item>
   <config:config-item config:name="PrintPageBackground" config:type="boolean">true</config:config-item>
   <config:config-item config:name="CurrentDatabaseCommand" config:type="string">adressen</config:config-item>
   <config:config-item config:name="PrintDrawings" config:type="boolean">true</config:config-item>
   <config:config-item config:name="PrintBlackFonts" config:type="boolean">false</config:config-item>
  </config:config-item-set>
 </office:settings>
 <office:script/>
 <office:font-decls>
  <style:font-decl style:name="ZapfDingbats" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable" style:font-charset="x-symbol"/>
  <style:font-decl style:name="Palatino3" fo:font-family="Palatino" style:font-style-name="Bold"/>
  <style:font-decl style:name="Palatino1" fo:font-family="Palatino" style:font-style-name="Italic"/>
  <style:font-decl style:name="Palatino2" fo:font-family="Palatino" style:font-style-name="Regular"/>
  <style:font-decl style:name="Times New Roman" fo:font-family="&apos;Times New Roman&apos;"/>
  <style:font-decl style:name="Arial1" fo:font-family="Arial" style:font-family-generic="swiss"/>
  <style:font-decl style:name="Courier New" fo:font-family="&apos;Courier New&apos;" style:font-family-generic="modern" style:font-pitch="fixed"/>
  <style:font-decl style:name="Courier New5" fo:font-family="&apos;Courier New&apos;" style:font-style-name="Fett" style:font-family-generic="modern" style:font-pitch="fixed"/>
  <style:font-decl style:name="Courier New1" fo:font-family="&apos;Courier New&apos;" style:font-style-name="Regular" style:font-family-generic="modern" style:font-pitch="fixed"/>
  <style:font-decl style:name="Courier New2" fo:font-family="&apos;Courier New&apos;" style:font-style-name="Standard" style:font-family-generic="modern" style:font-pitch="fixed"/>
  <style:font-decl style:name="Courier" fo:font-family="Courier" style:font-family-generic="roman" style:font-pitch="fixed"/>
  <style:font-decl style:name="Courier New3" fo:font-family="&apos;Courier New&apos;" style:font-family-generic="roman" style:font-pitch="fixed"/>
  <style:font-decl style:name="Arial Unicode MS" fo:font-family="&apos;Arial Unicode MS&apos;" style:font-pitch="variable"/>
  <style:font-decl style:name="HG Mincho Light J" fo:font-family="&apos;HG Mincho Light J&apos;" style:font-pitch="variable"/>
  <style:font-decl style:name="Palatino" fo:font-family="Palatino" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Thorndale" fo:font-family="Thorndale" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Times" fo:font-family="Times" style:font-style-name="Fett Kursiv" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Times New Roman3" fo:font-family="&apos;Times New Roman&apos;" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Times New Roman2" fo:font-family="&apos;Times New Roman&apos;" style:font-style-name="Regular" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Times New Roman1" fo:font-family="&apos;Times New Roman&apos;" style:font-style-name="Standard" style:font-family-generic="roman" style:font-pitch="variable"/>
  <style:font-decl style:name="Arial" fo:font-family="Arial" style:font-family-generic="swiss" style:font-pitch="variable"/>
  <style:font-decl style:name="Courier New4" fo:font-family="&apos;Courier New&apos;" style:font-family-generic="swiss" style:font-pitch="variable"/>
  <style:font-decl style:name="Helvetica1" fo:font-family="Helvetica" style:font-family-generic="swiss" style:font-pitch="variable"/>
  <style:font-decl style:name="Helvetica3" fo:font-family="Helvetica" style:font-style-name="Fett" style:font-family-generic="swiss" style:font-pitch="variable"/>
  <style:font-decl style:name="Helvetica2" fo:font-family="Helvetica" style:font-style-name="Kursiv" style:font-family-generic="swiss" style:font-pitch="variable"/>
  <style:font-decl style:name="Helvetica" fo:font-family="Helvetica" style:font-style-name="Standard" style:font-family-generic="swiss" style:font-pitch="variable"/>
 </office:font-decls>
 <office:styles>
  <draw:marker draw:name="Pfeil offen" svg:viewBox="0 0 8000 10010" svg:d="m0 10010 3974-10010 4026 9990-8000 20 1497-1003 5000-14-2517-6993-2483 7007z"/>
  <draw:marker draw:name="Raute geschlossen" svg:viewBox="0 0 458 458" svg:d="m229 458c-76-76-152-152-229-229 76-76 152-152 229-229 76 76 152 152 229 229-76 76-152 152-229 229z"/>
  <draw:marker draw:name="Raute offen" svg:viewBox="0 0 10000 10000" svg:d="m0 5000 5000-5000 5000 5000-5000 5000-5000-5000h1500l3500 3500 3500-3500-3500-3500-3500 3500z"/>
  <style:default-style style:family="graphics">
   <style:properties draw:start-line-spacing-horizontal="0.283cm" draw:start-line-spacing-vertical="0.283cm" draw:end-line-spacing-horizontal="0.283cm" draw:end-line-spacing-vertical="0.283cm" fo:color="#000000" style:font-name="Times New Roman" fo:font-size="12pt" fo:language="en" fo:country="US" style:font-name-asian="HG Mincho Light J" style:font-size-asian="12pt" style:language-asian="none" style:country-asian="none" style:font-name-complex="Arial Unicode MS" style:font-size-complex="12pt" style:language-complex="none" style:country-complex="none" style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb">
    <style:tab-stops/>
   </style:properties>
  </style:default-style>
  <style:default-style style:family="paragraph">
   <style:properties fo:color="#000000" style:font-name="Times New Roman" fo:font-size="12pt" fo:language="en" fo:country="US" style:font-name-asian="HG Mincho Light J" style:font-size-asian="12pt" style:language-asian="none" style:country-asian="none" style:font-name-complex="Arial Unicode MS" style:font-size-complex="12pt" style:language-complex="none" style:country-complex="none" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="no-limit" style:text-autospace="ideograph-alpha" style:punctuation-wrap="hanging" style:line-break="strict" style:tab-stop-distance="1.245cm" style:writing-mode="page"/>
  </style:default-style>
  <style:style style:name="Standard" style:family="paragraph" style:class="text">
   <style:properties fo:color="#000000" style:font-name="Times New Roman1" fo:language="en" fo:country="US"/>
  </style:style>
  <style:style style:name="Text body" style:family="paragraph" style:parent-style-name="Standard" style:class="text">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.212cm" fo:color="#000000"/>
  </style:style>
  <style:style style:name="First line indent" style:family="paragraph" style:parent-style-name="Text body" style:class="text">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0.499cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Hanging indent" style:family="paragraph" style:parent-style-name="Text body" style:class="text">
   <style:properties fo:margin-left="1cm" fo:margin-right="0cm" fo:text-indent="-0.499cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="0cm"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Text body indent" style:family="paragraph" style:parent-style-name="Text body" style:class="text">
   <style:properties fo:margin-left="0.499cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Salutation" style:family="paragraph" style:parent-style-name="Standard" style:class="text"/>
  <style:style style:name="Signature" style:family="paragraph" style:parent-style-name="Standard" style:class="text"/>
  <style:style style:name="List Indent" style:family="paragraph" style:parent-style-name="Text body" style:class="text">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:text-indent="-4.5cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="0cm"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Marginalia" style:family="paragraph" style:parent-style-name="Text body" style:class="text">
   <style:properties fo:margin-left="4.001cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Heading" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text body" style:class="text">
   <style:properties fo:margin-top="0.423cm" fo:margin-bottom="0.212cm" fo:color="#000000" style:font-name="Arial" fo:font-size="14pt" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="Heading 1" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="115%" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 2" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="14pt" fo:font-style="italic" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 3" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="14pt" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 4" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="85%" fo:font-style="italic" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 5" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="85%" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 6" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text">
   <style:properties fo:font-size="75%" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Heading 7" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text" style:master-page-name="">
   <style:properties fo:font-size="75%" fo:font-weight="bold" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" style:page-number="0"/>
  </style:style>
  <style:style style:name="Heading 8" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text" style:master-page-name="">
   <style:properties fo:font-size="75%" fo:font-weight="bold" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" style:page-number="0"/>
  </style:style>
  <style:style style:name="Heading 9" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text" style:master-page-name="">
   <style:properties fo:font-size="75%" fo:font-weight="bold" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" style:page-number="0"/>
  </style:style>
  <style:style style:name="Heading 10" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="text" style:master-page-name="">
   <style:properties fo:font-size="75%" fo:font-weight="bold" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" style:page-number="0"/>
  </style:style>
  <style:style style:name="List" style:family="paragraph" style:parent-style-name="Text body" style:class="list">
   <style:properties style:font-name="Times New Roman"/>
  </style:style>
  <style:style style:name="Numbering 1 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 1" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 1 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 1 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 2 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 2" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 2 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 2 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 3 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 3" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 3 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 3 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 4 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 4" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 4 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 4 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 5 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 5" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 5 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Numbering 5 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 1 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 1" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 1 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 1 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="1.251cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 2 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 2" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 2 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 2 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 3 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 3" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 3 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 3 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="3.75cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 4 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 4" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 4 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 4 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="5.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 5 Start" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 5" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 5 End" style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="-0.497cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="List 5 Cont." style:family="paragraph" style:parent-style-name="List" style:class="list" style:master-page-name="">
   <style:properties fo:margin-left="6.249cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Header" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.499cm" fo:margin-bottom="0cm" fo:font-size="12pt" fo:text-indent="0cm" style:auto-text-indent="false" fo:padding="0cm" fo:border="none">
    <style:tab-stops>
     <style:tab-stop style:position="7.721cm" style:type="center"/>
     <style:tab-stop style:position="15.443cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Header left" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties text:number-lines="false" text:line-number="0">
    <style:tab-stops>
     <style:tab-stop style:position="7.721cm" style:type="center"/>
     <style:tab-stop style:position="15.443cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Header right" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties>
    <style:tab-stops>
     <style:tab-stop style:position="8.5cm" style:type="center"/>
     <style:tab-stop style:position="17.002cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Footer" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties>
    <style:tab-stops>
     <style:tab-stop style:position="7.721cm" style:type="center"/>
     <style:tab-stop style:position="15.443cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Footer left" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties fo:margin-left="0.199cm" fo:margin-right="0cm" style:font-name="Helvetica" fo:font-size="9pt" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="7.721cm" style:type="center"/>
     <style:tab-stop style:position="15.443cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Footer right" style:family="paragraph" style:parent-style-name="Standard" style:class="extra" style:master-page-name="">
   <style:properties fo:margin-left="0cm" fo:margin-right="0.199cm" style:font-name="Helvetica" fo:font-size="8.5pt" fo:text-align="end" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops>
     <style:tab-stop style:position="7.721cm" style:type="center"/>
     <style:tab-stop style:position="15.443cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Table Contents" style:family="paragraph" style:parent-style-name="Text body" style:class="extra"/>
  <style:style style:name="Table Heading" style:family="paragraph" style:parent-style-name="Table Contents" style:class="extra">
   <style:properties fo:font-style="italic" fo:font-weight="bold" fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="Caption" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties fo:margin-top="0.212cm" fo:margin-bottom="0.212cm" style:font-name="Times New Roman" fo:font-size="10pt" fo:font-style="italic"/>
  </style:style>
  <style:style style:name="Illustration" style:family="paragraph" style:parent-style-name="Caption" style:class="extra">
   <style:properties style:font-name="Palatino1" fo:font-size="9pt" fo:line-height="100%"/>
  </style:style>
  <style:style style:name="Table" style:family="paragraph" style:parent-style-name="Caption" style:class="extra"/>
  <style:style style:name="Text" style:family="paragraph" style:parent-style-name="Caption" style:class="extra"/>
  <style:style style:name="Frame contents" style:family="paragraph" style:parent-style-name="Text body" style:class="extra">
   <style:properties style:font-name="Helvetica" fo:font-size="18pt" fo:line-height="100%"/>
  </style:style>
  <style:style style:name="Footnote" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties fo:margin-left="0.499cm" fo:margin-right="0cm" fo:font-size="10pt" fo:text-indent="-0.499cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Addressee" style:family="paragraph" style:parent-style-name="Standard" style:class="extra" style:master-page-name="">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.349cm" fo:font-style="italic" style:page-number="0"/>
  </style:style>
  <style:style style:name="Sender" style:family="paragraph" style:parent-style-name="Standard" style:class="extra" style:master-page-name="">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:font-style="italic" style:page-number="0"/>
  </style:style>
  <style:style style:name="Endnote" style:family="paragraph" style:parent-style-name="Standard" style:class="extra">
   <style:properties fo:margin-left="0.499cm" fo:margin-right="0cm" fo:font-size="10pt" fo:text-indent="-0.499cm" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/>
  </style:style>
  <style:style style:name="Drawing" style:family="paragraph" style:parent-style-name="Caption" style:class="extra"/>
  <style:style style:name="Index" style:family="paragraph" style:parent-style-name="Standard" style:class="index">
   <style:properties style:font-name="Times New Roman"/>
  </style:style>
  <style:style style:name="Index Heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Index 1" style:family="paragraph" style:parent-style-name="Index" style:class="index" style:master-page-name="">
   <style:properties fo:margin-left="0.3cm" fo:margin-right="0cm" fo:margin-top="0.049cm" fo:margin-bottom="0.049cm" style:font-name="Palatino" fo:font-size="9pt" fo:text-indent="-0.3cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Index 2" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0.499cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Index 3" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Index Separator" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Contents Heading" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Under_Head1" style:class="index" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0.838cm" fo:margin-top="2.499cm" fo:margin-bottom="0cm" fo:font-size="20pt" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0" fo:padding="3.59cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #ffffff" fo:border-bottom="none"/>
  </style:style>
  <style:style style:name="Contents 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="2.499cm" fo:margin-right="0cm" fo:margin-top="0.61cm" fo:margin-bottom="0.254cm" style:font-name="Palatino" fo:font-size="10pt" fo:font-weight="bold" fo:text-indent="-0.54cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.443cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 2" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.279cm" style:font-name="Palatino" fo:font-size="10pt" fo:font-weight="normal" fo:text-indent="-1.041cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="14.944cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 3" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.279cm" style:font-name="Palatino" fo:font-size="10pt" fo:text-indent="-0.54cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="14.444cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 4" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="1.498cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.505cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 5" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="1.997cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.005cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index Heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="User Index 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="17.002cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 2" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0.499cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="16.503cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 3" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0.998cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="16.004cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 4" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="1.498cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.505cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 5" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="1.997cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.005cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 6" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="2.496cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="12.947cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 7" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="2.995cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="12.448cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 8" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.494cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="11.949cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 9" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.993cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="11.449cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Contents 10" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="4.493cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="10.95cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Illustration Index Heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/>
  </style:style>
  <style:style style:name="Illustration Index 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.443cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Object index heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/>
  </style:style>
  <style:style style:name="Object index 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.443cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Table index heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/>
  </style:style>
  <style:style style:name="Table index 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.443cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Bibliography Heading" style:family="paragraph" style:parent-style-name="Heading" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="16pt" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" text:number-lines="false" text:line-number="0"/>
  </style:style>
  <style:style style:name="Bibliography 1" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="15.443cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 6" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="2.496cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="12.947cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 7" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="2.995cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="12.448cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 8" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.494cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="11.949cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 9" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="3.993cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="11.449cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="User Index 10" style:family="paragraph" style:parent-style-name="Index" style:class="index">
   <style:properties fo:margin-left="4.493cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops>
     <style:tab-stop style:position="10.95cm" style:type="right" style:leader-char="."/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Title" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Subtitle" style:class="chapter">
   <style:properties fo:font-size="18pt" fo:font-weight="bold" fo:text-align="start" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="Subtitle" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text body" style:class="chapter">
   <style:properties fo:font-size="14pt" fo:font-style="italic" fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="Quotations" style:family="paragraph" style:parent-style-name="Standard" style:class="html">
   <style:properties fo:margin-left="1cm" fo:margin-right="1cm" fo:margin-top="0cm" fo:margin-bottom="0.349cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Preformatted Text" style:family="paragraph" style:parent-style-name="Standard" style:class="html">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Courier" fo:font-size="10pt"/>
  </style:style>
  <style:style style:name="Horizontal Line" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text body" style:class="html">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.499cm" fo:font-size="6pt" style:border-line-width-bottom="0.002cm 0.035cm 0.002cm" fo:padding="0cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.039cm double #808080"/>
  </style:style>
  <style:style style:name="List Contents" style:family="paragraph" style:parent-style-name="Standard" style:class="html">
   <style:properties fo:margin-left="0.998cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="List Heading" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="List Contents" style:class="html">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="HeadlineIndex" style:family="paragraph" style:parent-style-name="Header">
   <style:properties fo:font-size="20pt" fo:padding="3.191cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #ffffff" fo:border-bottom="none"/>
  </style:style>
  <style:style style:name="Code" style:family="paragraph" style:parent-style-name="Paragraph" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Courier New" fo:font-size="70%" style:text-underline="none" fo:orphans="4" fo:widows="4" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0" fo:background-color="#e6e6e6" fo:keep-with-next="false">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="CopyrightText" style:family="paragraph" style:parent-style-name="Standard" style:master-page-name="">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.15cm" fo:margin-bottom="0cm" style:font-name="Palatino" fo:font-size="9pt" fo:hyphenate="true" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="no-limit" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Figure Code" style:family="paragraph" style:parent-style-name="Code" style:master-page-name="">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.102cm" style:font-name="Courier New1" fo:font-size="9pt" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops>
     <style:tab-stop style:position="6.35cm"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Figure Code Map" style:family="paragraph" style:parent-style-name="Figure Code">
   <style:properties style:font-name="Times New Roman2"/>
  </style:style>
  <style:style style:name="CodeInLists" style:family="paragraph" style:parent-style-name="Numbering 1" style:master-page-name="">
   <style:properties fo:margin-left="3.048cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Courier New1" fo:font-size="7pt" fo:line-height="100%" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="Figure Code 2" style:family="paragraph" style:parent-style-name="Code">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.051cm" fo:font-size="8pt" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Head 1" style:family="paragraph" style:parent-style-name="Heading 1" style:next-style-name="Under_Head1" style:master-page-name="Chapter_Start">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="2.499cm" fo:margin-bottom="0cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="24pt" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0" fo:break-before="auto" fo:break-after="auto"/>
  </style:style>
  <style:style style:name="Under_Head1" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Paragraph">
   <style:properties fo:font-size="9.5pt" fo:padding="0.15cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="ChapterText" style:family="paragraph" style:parent-style-name="Heading 2" style:master-page-name="">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:text-transform="uppercase" style:font-name="Helvetica" fo:font-size="10pt" fo:font-style="normal" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0">
    <style:tab-stops>
     <style:tab-stop style:position="2.2cm" style:type="right"/>
    </style:tab-stops>
   </style:properties>
  </style:style>
  <style:style style:name="Paragraph" style:family="paragraph" style:parent-style-name="Text body" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.229cm" fo:margin-bottom="0.229cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="10pt" fo:orphans="2" fo:widows="2" fo:hyphenate="true" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="no-limit" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="Head 2" style:family="paragraph" style:parent-style-name="Heading 2" style:next-style-name="Paragraph" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="1cm" fo:margin-bottom="0.4cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="18pt" fo:font-style="normal" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="Head 3" style:family="paragraph" style:parent-style-name="Heading 3" style:next-style-name="Paragraph">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="1cm" fo:margin-bottom="0.3cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="16pt" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Head 4" style:family="paragraph" style:parent-style-name="Heading 4" style:next-style-name="Paragraph">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.891cm" fo:margin-bottom="0.199cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="14pt" fo:font-style="normal" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Head 5" style:family="paragraph" style:parent-style-name="Heading 5" style:next-style-name="Paragraph" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.589cm" fo:margin-bottom="0.101cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="12pt" fo:font-style="italic" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="Head 6" style:family="paragraph" style:parent-style-name="Heading 6" style:next-style-name="Paragraph">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.589cm" fo:margin-bottom="0.101cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="10pt" fo:font-style="italic" fo:font-weight="normal" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="TextInTable" style:family="paragraph" style:parent-style-name="Table Contents" style:master-page-name="">
   <style:properties fo:margin-top="0.28cm" fo:margin-bottom="0.28cm" fo:color="#000000" style:font-name="Palatino" fo:font-size="9pt" fo:hyphenate="true" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="no-limit" style:page-number="0"/>
  </style:style>
  <style:style style:name="TableHead" style:family="paragraph" style:parent-style-name="Table Heading" style:master-page-name="">
   <style:properties fo:color="#000000" style:font-name="Palatino" fo:font-size="10pt" fo:font-style="normal" fo:text-align="start" style:justify-single-word="false" fo:hyphenate="true" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="no-limit" style:page-number="0"/>
  </style:style>
  <style:style style:name="TOC_Head" style:family="paragraph" style:parent-style-name="Contents Heading" style:next-style-name="Under_Head1" style:master-page-name="TOC_Start">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Palatino" style:page-number="0" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="TOC_Level1" style:family="paragraph" style:parent-style-name="Contents 1"/>
  <style:style style:name="TOC_Level2" style:family="paragraph" style:parent-style-name="Contents 2"/>
  <style:style style:name="TOC_Level3" style:family="paragraph" style:parent-style-name="Contents 3"/>
  <style:style style:name="Index_Head" style:family="paragraph" style:parent-style-name="Index Heading" style:master-page-name="Index_Start">
   <style:properties style:page-number="0"/>
  </style:style>
  <style:style style:name="Index_Separation" style:family="paragraph" style:parent-style-name="Index Separator" style:master-page-name="">
   <style:properties fo:margin-top="0.499cm" fo:margin-bottom="0cm" style:font-name="Helvetica1" fo:font-weight="bold" style:page-number="0" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="Index_Level1" style:family="paragraph" style:parent-style-name="Index 1">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="10pt" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Index_Level2" style:family="paragraph" style:parent-style-name="Index 2">
   <style:properties style:font-name="Palatino" fo:font-size="10pt"/>
  </style:style>
  <style:style style:name="Copyright" style:family="paragraph" style:parent-style-name="Head 2">
   <style:properties fo:margin-left="0cm" fo:margin-right="0.838cm" fo:font-size="16pt" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="BottomTitelLine" style:family="paragraph" style:parent-style-name="Frame contents">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:font-size="8pt" fo:text-indent="0cm" style:auto-text-indent="false" fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="TitledListBody" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="3.05cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.28cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="TitledListHead" style:family="paragraph" style:parent-style-name="Paragraph" style:next-style-name="TitledListBody" style:master-page-name="">
   <style:properties fo:margin-top="0.28cm" fo:margin-bottom="0cm" fo:font-style="italic" style:page-number="0" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="TipInTable" style:family="paragraph" style:parent-style-name="TextInTable"/>
  <style:style style:name="TitledListCode" style:family="paragraph" style:parent-style-name="TitledListBody">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Courier New1" fo:font-size="70%" fo:background-color="#e6e6e6">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="MethodSignatures" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="3.039cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Courier New1" fo:font-size="7pt" fo:text-indent="0cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="TableHeadLeft" style:family="paragraph" style:parent-style-name="TableHead">
   <style:properties fo:margin-left="0.3cm" fo:margin-right="0cm" fo:text-align="start" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="TableCode" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties style:font-name="Courier New1" fo:font-size="90%"/>
  </style:style>
  <style:style style:name="Listing" style:family="paragraph" style:parent-style-name="Paragraph" style:next-style-name="Paragraph">
   <style:properties fo:margin-top="0.101cm" fo:margin-bottom="0.28cm" fo:font-size="9pt" fo:font-style="italic"/>
  </style:style>
  <style:style style:name="Output" style:family="paragraph" style:parent-style-name="Code">
   <style:properties fo:background-color="#ffffff" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table_Note" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="2.799cm" fo:margin-right="0cm" fo:margin-top="0.079cm" fo:margin-bottom="0cm" fo:font-size="8pt" fo:font-style="normal" fo:text-indent="-0.259cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="TableFootnote" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="2.799cm" fo:margin-right="0cm" fo:margin-top="0.079cm" fo:margin-bottom="0cm" style:font-name="Palatino2" fo:font-size="8pt" fo:text-indent="-0.259cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Texttable" style:family="paragraph" style:parent-style-name="Standard" style:master-page-name="">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:font-size="9.5pt" fo:line-height="0.39cm" fo:hyphenate="false" fo:hyphenation-remain-char-count="4" fo:hyphenation-push-char-count="4" fo:hyphenation-ladder-count="1" style:page-number="0"/>
  </style:style>
  <style:style style:name="PartNumText" style:family="paragraph" style:parent-style-name="Illustration">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm" style:font-name="Helvetica2" fo:font-size="7pt" fo:font-style="normal"/>
  </style:style>
  <style:style style:name="TitelText" style:family="paragraph" style:parent-style-name="Frame contents" style:master-page-name="">
   <style:properties fo:font-size="24pt" fo:text-align="end" style:justify-single-word="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="SubTitelText" style:family="paragraph" style:parent-style-name="Frame contents" style:master-page-name="">
   <style:properties fo:font-size="16pt" fo:text-align="end" style:justify-single-word="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="Reference Header" style:family="paragraph" style:parent-style-name="Heading 5" style:next-style-name="Text body" style:auto-update="true" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0.379cm" fo:margin-bottom="0.25cm" fo:text-align="start" style:justify-single-word="false" fo:orphans="2" fo:widows="2" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0" fo:break-before="auto" fo:break-after="auto"/>
  </style:style>
  <style:style style:name="Table Title" style:family="paragraph" style:parent-style-name="Table" style:next-style-name="Table Heading" style:master-page-name="">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" style:font-name="Palatino3" fo:font-style="normal" fo:font-weight="bold" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0"/>
  </style:style>
  <style:style style:name="ReviewComment" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:font-size="10pt" fo:background-color="#ffcc99">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="ParagraphInList" style:family="paragraph" style:parent-style-name="Numbering 1">
   <style:properties fo:margin-left="3.048cm" fo:margin-right="0cm" fo:margin-top="0.28cm" fo:margin-bottom="0.28cm" style:font-name="Palatino2" fo:font-size="9.5pt" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="PropText" style:family="paragraph" style:parent-style-name="Preformatted Text">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:color="#000000" style:font-name="Courier New2" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Objekt mit Pfeilspitze" style:family="paragraph" style:parent-style-name="Standard"/>
  <style:style style:name="Objekt mit Schatten" style:family="paragraph" style:parent-style-name="Standard"/>
  <style:style style:name="Objekt ohne Füllung" style:family="paragraph" style:parent-style-name="Standard"/>
  <style:style style:name="Textkörper Blocksatz" style:family="paragraph" style:parent-style-name="Standard"/>
  <style:style style:name="Titel1" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="Titel2" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-left="0.199cm" fo:margin-right="0.199cm" fo:margin-top="0.101cm" fo:margin-bottom="0.101cm" fo:text-align="center" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="Überschrift1" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-top="0.42cm" fo:margin-bottom="0.21cm"/>
  </style:style>
  <style:style style:name="Überschrift2" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-top="0.42cm" fo:margin-bottom="0.21cm"/>
  </style:style>
  <style:style style:name="Maßlinie" style:family="paragraph" style:parent-style-name="Standard"/>
  <style:style style:name="Standard~LT~Gliederung 1" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-left="1.199cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="31.5pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="31.5pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="31.5pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" fo:text-align="start" style:justify-single-word="false" fo:text-indent="-0.9cm" style:auto-text-indent="false" style:text-autospace="none">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 2" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 1">
   <style:properties fo:margin-left="2.401cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.4cm" fo:font-size="28pt" style:font-size-asian="28pt" style:font-size-complex="28pt" fo:text-indent="-0.801cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 3" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 2">
   <style:properties fo:margin-left="3.6cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.3cm" fo:font-size="24pt" style:font-size-asian="24pt" style:font-size-complex="24pt" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 4" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 3">
   <style:properties fo:margin-left="4.8cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.199cm" fo:font-size="20pt" style:font-size-asian="20pt" style:font-size-complex="20pt" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 5" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 4">
   <style:properties fo:margin-left="6.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 6" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 5">
   <style:properties fo:margin-left="7.2cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 7" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 6">
   <style:properties fo:margin-left="8.4cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 8" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 7">
   <style:properties fo:margin-left="9.601cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Gliederung 9" style:family="paragraph" style:parent-style-name="Standard~LT~Gliederung 8">
   <style:properties fo:margin-left="10.8cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Titel" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="44pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="44pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="44pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" fo:text-align="center" style:justify-single-word="false" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Standard~LT~Untertitel" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="32pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="32pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="32pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" fo:text-align="center" style:justify-single-word="false" fo:text-indent="-0.6cm" style:auto-text-indent="false" style:text-autospace="none">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Standard~LT~Notizen" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="20pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="20pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="20pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Standard~LT~Hintergrundobjekte" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:color="#000000" style:font-name="Times New Roman" fo:language="en" fo:country="US" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Standard~LT~Hintergrund" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:color="#000000" style:font-name="Times New Roman" fo:language="en" fo:country="US" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Hintergrundobjekte" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:color="#000000" style:font-name="Times New Roman" fo:language="en" fo:country="US" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Hintergrund" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:color="#000000" style:font-name="Times New Roman" fo:language="en" fo:country="US" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Notizen" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="20pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="20pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="20pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" style:text-autospace="none"/>
  </style:style>
  <style:style style:name="Gliederung 1" style:family="paragraph" style:parent-style-name="Standard">
   <style:properties fo:margin-left="1.199cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.499cm" style:text-outline="false" style:text-crossing-out="none" style:font-name="Arial Unicode MS" fo:font-size="31.5pt" fo:language="en" fo:country="US" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" style:font-name-asian="Arial Unicode MS" style:font-size-asian="31.5pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-name-complex="Arial Unicode MS" style:font-size-complex="31.5pt" style:font-style-complex="normal" style:font-weight-complex="normal" style:text-emphasize="none" fo:text-align="start" style:justify-single-word="false" fo:text-indent="-0.9cm" style:auto-text-indent="false" style:text-autospace="none">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 2" style:family="paragraph" style:parent-style-name="Gliederung 1">
   <style:properties fo:margin-left="2.401cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.4cm" fo:font-size="28pt" style:font-size-asian="28pt" style:font-size-complex="28pt" fo:text-indent="-0.801cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 3" style:family="paragraph" style:parent-style-name="Gliederung 2">
   <style:properties fo:margin-left="3.6cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.3cm" fo:font-size="24pt" style:font-size-asian="24pt" style:font-size-complex="24pt" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 4" style:family="paragraph" style:parent-style-name="Gliederung 3">
   <style:properties fo:margin-left="4.8cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.199cm" fo:font-size="20pt" style:font-size-asian="20pt" style:font-size-complex="20pt" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 5" style:family="paragraph" style:parent-style-name="Gliederung 4">
   <style:properties fo:margin-left="6.001cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 6" style:family="paragraph" style:parent-style-name="Gliederung 5">
   <style:properties fo:margin-left="7.2cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 7" style:family="paragraph" style:parent-style-name="Gliederung 6">
   <style:properties fo:margin-left="8.4cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 8" style:family="paragraph" style:parent-style-name="Gliederung 7">
   <style:properties fo:margin-left="9.601cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Gliederung 9" style:family="paragraph" style:parent-style-name="Gliederung 8">
   <style:properties fo:margin-left="10.8cm" fo:margin-right="0cm" fo:text-indent="-0.6cm" style:auto-text-indent="false">
    <style:tab-stops/>
   </style:properties>
  </style:style>
  <style:style style:name="Head_tmp" style:family="paragraph" style:parent-style-name="Head 5"/>
  <style:style style:name="Head4_tmp" style:family="paragraph" style:parent-style-name="Head 4"/>
  <style:style style:name="Untitled1" style:family="paragraph" style:parent-style-name="TitledListBody"/>
  <style:style style:name="Footnote Symbol" style:family="text"/>
  <style:style style:name="Caption characters" style:family="text"/>
  <style:style style:name="Numbering Symbols" style:family="text"/>
  <style:style style:name="Bullet Symbols" style:family="text">
   <style:properties style:font-name="ZapfDingbats" fo:font-size="6pt"/>
  </style:style>
  <style:style style:name="Internet link" style:family="text">
   <style:properties fo:color="#000080" style:text-underline="single" style:text-underline-color="font-color"/>
  </style:style>
  <style:style style:name="Visited Internet Link" style:family="text">
   <style:properties fo:color="#800000" style:text-underline="single" style:text-underline-color="font-color"/>
  </style:style>
  <style:style style:name="Placeholder" style:family="text">
   <style:properties fo:font-variant="small-caps" fo:color="#008080" style:text-underline="dotted" style:text-underline-color="font-color"/>
  </style:style>
  <style:style style:name="Footnote anchor" style:family="text">
   <style:properties style:text-position="super 58%"/>
  </style:style>
  <style:style style:name="Emphasis" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="Strong Emphasis" style:family="text">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Source Text" style:family="text">
   <style:properties style:font-name="Courier New3"/>
  </style:style>
  <style:style style:name="Example" style:family="text">
   <style:properties style:font-name="Courier New3"/>
  </style:style>
  <style:style style:name="User Entry" style:family="text">
   <style:properties style:font-name="Courier New3"/>
  </style:style>
  <style:style style:name="Definition" style:family="text"/>
  <style:style style:name="PageNumber" style:family="text">
   <style:properties style:font-name="Helvetica3" fo:font-size="9pt" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Code (in text)" style:family="text">
   <style:properties fo:color="#000000" style:font-name="Courier New1" fo:font-size="9pt"/>
  </style:style>
  <style:style style:name="CODE" style:family="text">
   <style:properties style:font-name="Courier New4"/>
  </style:style>
  <style:style style:name="CODE Comment" style:family="text" style:parent-style-name="CODE">
   <style:properties fo:color="#008000"/>
  </style:style>
  <style:style style:name="CODE KeyWord" style:family="text" style:parent-style-name="CODE">
   <style:properties fo:color="#000000" fo:font-size="9pt"/>
  </style:style>
  <style:style style:name="CODE String" style:family="text" style:parent-style-name="CODE">
   <style:properties fo:color="#008080"/>
  </style:style>
  <style:style style:name="CODE Emphasis" style:family="text" style:parent-style-name="CodeEmphasis"/>
  <style:style style:name="www/ftp/email" style:family="text" style:parent-style-name="Emphasis"/>
  <style:style style:name="Buttons/Menus" style:family="text">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="CodeEmphasis" style:family="text" style:parent-style-name="DefaultCode">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Reference" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="White" style:family="text"/>
  <style:style style:name="DefaultParagraph" style:family="text">
   <style:properties style:font-name="Palatino2" fo:font-size="10pt"/>
  </style:style>
  <style:style style:name="MethodSignatureEmphasis" style:family="text" style:parent-style-name="DefaultParagraph">
   <style:properties style:font-name="Courier New5" fo:font-size="7pt" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="DefaultCode" style:family="text" style:parent-style-name="DefaultParagraph">
   <style:properties style:font-name="Courier New1" fo:font-size="7pt"/>
  </style:style>
  <style:style style:name="ChapterNummer" style:family="text">
   <style:properties style:font-name="Helvetica3" fo:font-size="18pt" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Default Paragraph Font" style:family="text" style:parent-style-name="Normal">
   <style:properties style:font-name="Times New Roman" fo:font-size="12pt"/>
  </style:style>
  <style:style style:name="Normal" style:family="text">
   <style:properties style:font-name="Arial1" fo:font-size="10pt"/>
  </style:style>
  <style:style style:name="Page_Number" style:family="text">
   <style:properties style:font-name="Helvetica3" fo:font-size="9pt" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Enumeration_1" style:family="text" style:parent-style-name="Bullet Symbols"/>
  <style:style style:name="CITE" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="EM" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="KBD" style:family="text">
   <style:properties style:font-name="Courier New4"/>
  </style:style>
  <style:style style:name="SAMP" style:family="text">
   <style:properties style:font-name="Courier New4"/>
  </style:style>
  <style:style style:name="STRONG" style:family="text">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="VAR" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="TT" style:family="text">
   <style:properties style:font-name="Courier New4"/>
  </style:style>
  <style:style style:name="DFN" style:family="text"/>
  <style:style style:name="Q" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="LANG" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="AU" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="PERSON" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="ACRONYM" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="ABBREV" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="INS" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="DEL" style:family="text">
   <style:properties fo:color="#000000" style:text-outline="false" style:text-crossing-out="none" style:text-position="0% 100%" style:font-name="Times New Roman3" fo:font-size="12pt" fo:letter-spacing="normal" fo:language="de" fo:country="DE" fo:font-style="normal" fo:text-shadow="none" style:text-underline="none" fo:font-weight="normal" fo:score-spaces="true" style:letter-kerning="false"/>
  </style:style>
  <style:style style:name="BLINK" style:family="text">
   <style:properties fo:color="#ffff00" fo:text-shadow="1pt 1pt"/>
  </style:style>
  <style:style style:name="Kapitälchen" style:family="text">
   <style:properties fo:font-variant="small-caps" fo:font-size="11pt"/>
  </style:style>
  <style:style style:name="Tasten" style:family="text">
   <style:properties style:font-name="Times" fo:font-size="11pt" fo:font-style="italic" fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="Großbuch" style:family="text">
   <style:properties fo:text-transform="uppercase"/>
  </style:style>
  <style:style style:name="ChapterRef" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="Frame" style:family="graphics">
   <style:properties text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" fo:margin-left="0.201cm" fo:margin-right="0.201cm" fo:margin-top="0.201cm" fo:margin-bottom="0.201cm" style:wrap="none" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="center" style:horizontal-rel="paragraph-content" fo:background-color="transparent" style:background-transparency="100%" fo:padding="0cm" fo:border="none">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Graphics" style:family="graphics">
   <style:properties text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" style:wrap="none" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="center" style:horizontal-rel="paragraph"/>
  </style:style>
  <style:style style:name="OLE" style:family="graphics">
   <style:properties text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" style:wrap="none" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="center" style:horizontal-rel="paragraph"/>
  </style:style>
  <style:style style:name="Formula" style:family="graphics">
   <style:properties text:anchor-type="as-char" svg:y="0cm" style:vertical-pos="top" style:vertical-rel="baseline"/>
  </style:style>
  <style:style style:name="Labels" style:family="graphics" style:auto-update="true">
   <style:properties text:anchor-type="as-char" svg:y="0cm" fo:margin-left="0.201cm" fo:margin-right="0.201cm" style:protect="size position" style:vertical-pos="top" style:vertical-rel="baseline"/>
  </style:style>
  <style:style style:name="ChapterFrame" style:family="graphics">
   <style:properties svg:width="2.54cm" fo:min-height="0.801cm" text:anchor-type="page" svg:x="0cm" svg:y="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="page-content" style:horizontal-pos="left" style:horizontal-rel="page-content" fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Illustration" style:family="graphics">
   <style:properties text:anchor-type="page" svg:x="0cm" svg:y="0cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.499cm" fo:margin-bottom="0.499cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="page-content" style:horizontal-pos="from-left" style:horizontal-rel="page-content" fo:background-color="transparent" style:background-transparency="100%" fo:padding="0cm" fo:border="none">
    <style:background-image/>
    <style:columns fo:column-count="0" fo:column-gap="0cm"/>
   </style:properties>
  </style:style>
  <text:outline-style>
   <text:outline-level-style text:level="1" text:style-name="White" style:num-format="1">
    <style:properties text:min-label-width="2.54cm"/>
   </text:outline-level-style>
   <text:outline-level-style text:level="2" style:num-suffix=" " style:num-format="1" text:display-levels="2"/>
   <text:outline-level-style text:level="3" style:num-suffix=" " style:num-format="1" text:display-levels="3"/>
   <text:outline-level-style text:level="4" style:num-format=""/>
   <text:outline-level-style text:level="5" style:num-format=""/>
   <text:outline-level-style text:level="6" style:num-format=""/>
   <text:outline-level-style text:level="7" style:num-format=""/>
   <text:outline-level-style text:level="8" style:num-format="1"/>
   <text:outline-level-style text:level="9" style:num-format=""/>
   <text:outline-level-style text:level="10" style:num-format=""/>
  </text:outline-style>
  <text:list-style style:name="Numbering 1">
   <text:list-level-style-number text:level="1" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="2" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="0.499cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="3" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="0.999cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="4" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1.498cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="5" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1.997cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="6" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2.496cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="7" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2.995cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="8" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.494cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="9" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.994cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="10" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="4.493cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
  </text:list-style>
  <text:list-style style:name="Numbering 3">
   <text:list-level-style-number text:level="1" text:style-name="Numbering Symbols" style:num-format="1">
    <style:properties text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="2" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="2">
    <style:properties text:space-before="3.001cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="3" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="3">
    <style:properties text:space-before="6.001cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="4" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="4">
    <style:properties text:space-before="9.002cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="5" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="5">
    <style:properties text:space-before="12.002cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="6" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="6">
    <style:properties text:space-before="15.002cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="7" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="7">
    <style:properties text:space-before="18.003cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="8" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="8">
    <style:properties text:space-before="21.003cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="9" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="9">
    <style:properties text:space-before="24.003cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="10" text:style-name="Numbering Symbols" style:num-format="1" text:start-value="10">
    <style:properties text:space-before="27.004cm" text:min-label-width="3cm"/>
   </text:list-level-style-number>
  </text:list-style>
  <text:list-style style:name="List 1">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="0.395cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="0.79cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="1.186cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="1.581cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="1.976cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="2.371cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="2.766cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="3.161cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" text:bullet-char="n">
    <style:properties text:space-before="3.556cm" text:min-label-width="0.499cm" fo:font-family="ZapfDingbats" style:font-family-generic="decorative" style:font-pitch="variable"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="List 2">
   <text:list-level-style-bullet text:level="1" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="0.297cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="0.593cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="0.889cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="1.186cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="1.482cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="1.778cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="2.075cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="2.371cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Numbering Symbols" text:bullet-char="–">
    <style:properties text:space-before="2.667cm" text:min-label-width="0.296cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="Enumeration_1">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="0.499cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="0.999cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="1.498cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="1.997cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="2.496cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="2.995cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="3.494cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="3.994cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="">
    <style:properties text:space-before="4.493cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:footnotes-configuration text:citation-style-name="Footnote Symbol" text:citation-body-style-name="Footnote anchor" style:num-format="1" text:start-value="0" text:footnotes-position="page" text:start-numbering-at="document"/>
  <text:endnotes-configuration style:num-format="i" text:start-value="0"/>
  <text:linenumbering-configuration text:number-lines="false" text:offset="0.499cm" style:num-format="1" text:number-position="left" text:increment="5"/>
 </office:styles>
 <office:automatic-styles>
  <style:style style:name="Table2" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table2.A" style:family="table-column">
   <style:properties style:column-width="7.59cm" style:rel-column-width="32217*"/>
  </style:style>
  <style:style style:name="Table2.B" style:family="table-column">
   <style:properties style:column-width="7.849cm" style:rel-column-width="33318*"/>
  </style:style>
  <style:style style:name="Table2.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table2.B1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table2.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table2.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table28" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table28.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table28.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table69" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table69.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table69.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table69.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table69.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table70" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table70.A" style:family="table-column">
   <style:properties style:column-width="5.987cm" style:rel-column-width="25411*"/>
  </style:style>
  <style:style style:name="Table70.B" style:family="table-column">
   <style:properties style:column-width="6.488cm" style:rel-column-width="27537*"/>
  </style:style>
  <style:style style:name="Table70.C" style:family="table-column">
   <style:properties style:column-width="1.494cm" style:rel-column-width="6341*"/>
  </style:style>
  <style:style style:name="Table70.D" style:family="table-column">
   <style:properties style:column-width="1.471cm" style:rel-column-width="6246*"/>
  </style:style>
  <style:style style:name="Table70.A1" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.101cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table70.D1" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.101cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table70.A2" style:family="table-cell">
   <style:properties fo:padding="0.101cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table70.D2" style:family="table-cell">
   <style:properties fo:padding="0.101cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table156.A" style:family="table-column">
   <style:properties style:column-width="4.013cm" style:rel-column-width="17033*"/>
  </style:style>
  <style:style style:name="Table156.B" style:family="table-column">
   <style:properties style:column-width="1.914cm" style:rel-column-width="8127*"/>
  </style:style>
  <style:style style:name="Table156.C" style:family="table-column">
   <style:properties style:column-width="1.852cm" style:rel-column-width="7865*"/>
  </style:style>
  <style:style style:name="Table156.D" style:family="table-column">
   <style:properties style:column-width="1.912cm" style:rel-column-width="8119*"/>
  </style:style>
  <style:style style:name="Table156.E" style:family="table-column">
   <style:properties style:column-width="2.037cm" style:rel-column-width="8651*"/>
  </style:style>
  <style:style style:name="Table156.F" style:family="table-column">
   <style:properties style:column-width="1.242cm" style:rel-column-width="5273*"/>
  </style:style>
  <style:style style:name="Table156.G" style:family="table-column">
   <style:properties style:column-width="2.466cm" style:rel-column-width="10467*"/>
  </style:style>
  <style:style style:name="Table156.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156.F1.1" style:family="table-column">
   <style:properties style:column-width="1.242cm" style:rel-column-width="5274*"/>
  </style:style>
  <style:style style:name="Table156.F1.2" style:family="table-column">
   <style:properties style:column-width="2.466cm" style:rel-column-width="10466*"/>
  </style:style>
  <style:style style:name="Table156.F1.1.1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156.F1.1.2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156.F1.2.2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table156.G2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table156.A3" style:family="table-cell">
   <style:properties fo:vertical-align="top" fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table156.B3" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="bottom" fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table157" style:family="table">
   <style:properties style:width="11.755cm" fo:margin-left="3.736cm" fo:margin-right="2.489cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table157.A" style:family="table-column">
   <style:properties style:column-width="2.341cm" style:rel-column-width="13046*"/>
  </style:style>
  <style:style style:name="Table157.B" style:family="table-column">
   <style:properties style:column-width="9.414cm" style:rel-column-width="52489*"/>
  </style:style>
  <style:style style:name="Table157.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table157.B1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table157.A2" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="bottom" fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table157.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table138" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table138.A" style:family="table-column">
   <style:properties style:column-width="4.734cm" style:rel-column-width="20095*"/>
  </style:style>
  <style:style style:name="Table138.B" style:family="table-column">
   <style:properties style:column-width="10.705cm" style:rel-column-width="45440*"/>
  </style:style>
  <style:style style:name="Table138.A1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#e6e6e6" fo:padding="0.106cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table138.A2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table138.B2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table139" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table139.A" style:family="table-column">
   <style:properties style:column-width="4.734cm" style:rel-column-width="20095*"/>
  </style:style>
  <style:style style:name="Table139.B" style:family="table-column">
   <style:properties style:column-width="10.705cm" style:rel-column-width="45440*"/>
  </style:style>
  <style:style style:name="Table139.A1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#e6e6e6" fo:padding="0.106cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table139.A2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table139.B2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table154" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table154.A" style:family="table-column">
   <style:properties style:column-width="4.546cm" style:rel-column-width="19294*"/>
  </style:style>
  <style:style style:name="Table154.B" style:family="table-column">
   <style:properties style:column-width="10.894cm" style:rel-column-width="46241*"/>
  </style:style>
  <style:style style:name="Table154.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table154.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table154.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table66" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table66.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table66.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table79" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table79.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table79.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table147" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table147.A" style:family="table-column">
   <style:properties style:column-width="5.461cm" style:rel-column-width="23180*"/>
  </style:style>
  <style:style style:name="Table147.B" style:family="table-column">
   <style:properties style:column-width="9.978cm" style:rel-column-width="42355*"/>
  </style:style>
  <style:style style:name="Table147.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table147.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table147.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table65" style:family="table">
   <style:properties style:width="17.993cm" fo:margin-left="-0.021cm" fo:margin-right="0.007cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table65.A" style:family="table-column">
   <style:properties style:column-width="17.993cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table53" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table53.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table53.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table132" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table132.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table132.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table158" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table158.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table158.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table55" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table55.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table55.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table137" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table137.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table137.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table62" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table62.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table62.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table29" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table29.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table29.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table29.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table54" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table54.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table54.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table54.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table159" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table159.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table159.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table159.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table160" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table160.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table160.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table160.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table99" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="column" table:align="margins"/>
  </style:style>
  <style:style style:name="Table99.A" style:family="table-column">
   <style:properties style:column-width="4.981cm" style:rel-column-width="21143*"/>
  </style:style>
  <style:style style:name="Table99.B" style:family="table-column">
   <style:properties style:column-width="10.458cm" style:rel-column-width="44392*"/>
  </style:style>
  <style:style style:name="Table99.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table99.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table99.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table151" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="column" table:align="margins"/>
  </style:style>
  <style:style style:name="Table151.A" style:family="table-column">
   <style:properties style:column-width="5.627cm" style:rel-column-width="23883*"/>
  </style:style>
  <style:style style:name="Table151.B" style:family="table-column">
   <style:properties style:column-width="9.813cm" style:rel-column-width="41652*"/>
  </style:style>
  <style:style style:name="Table151.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table151.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table151.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table67" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table67.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table68" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table68.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table145" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table145.A" style:family="table-column">
   <style:properties style:column-width="5.946cm" style:rel-column-width="25239*"/>
  </style:style>
  <style:style style:name="Table145.B" style:family="table-column">
   <style:properties style:column-width="9.493cm" style:rel-column-width="40296*"/>
  </style:style>
  <style:style style:name="Table145.A1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#e6e6e6" fo:padding="0.106cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table145.A2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table145.B2" style:family="table-cell">
   <style:properties fo:padding="0.106cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table140" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table140.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table140.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table140.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table140.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table37" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table37.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle7" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle7.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table33" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table33.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table36" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table36.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table38" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table38.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table39" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table39.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table41" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table41.A" style:family="table-column">
   <style:properties style:column-width="1.483cm" style:rel-column-width="6294*"/>
  </style:style>
  <style:style style:name="Table41.B" style:family="table-column">
   <style:properties style:column-width="2.004cm" style:rel-column-width="8504*"/>
  </style:style>
  <style:style style:name="Table41.D" style:family="table-column">
   <style:properties style:column-width="1.986cm" style:rel-column-width="8429*"/>
  </style:style>
  <style:style style:name="Table41.H" style:family="table-column">
   <style:properties style:column-width="1.953cm" style:rel-column-width="8292*"/>
  </style:style>
  <style:style style:name="Table41.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table41.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table41.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table41.B2" style:family="table-cell">
   <style:properties fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table41.H2" style:family="table-cell">
   <style:properties fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table41.A10" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="bottom" fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table42" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table42.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table43" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table43.A" style:family="table-column">
   <style:properties style:column-width="1.432cm" style:rel-column-width="6080*"/>
  </style:style>
  <style:style style:name="Table43.B" style:family="table-column">
   <style:properties style:column-width="2.007cm" style:rel-column-width="8521*"/>
  </style:style>
  <style:style style:name="Table43.D" style:family="table-column">
   <style:properties style:column-width="1.99cm" style:rel-column-width="8446*"/>
  </style:style>
  <style:style style:name="Table43.H" style:family="table-column">
   <style:properties style:column-width="1.979cm" style:rel-column-width="8404*"/>
  </style:style>
  <style:style style:name="Table43.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table43.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table43.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table43.B2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table43.H2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table40" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table40.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table46" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table46.A" style:family="table-column">
   <style:properties style:column-width="1.45cm" style:rel-column-width="6156*"/>
  </style:style>
  <style:style style:name="Table46.B" style:family="table-column">
   <style:properties style:column-width="2.006cm" style:rel-column-width="8515*"/>
  </style:style>
  <style:style style:name="Table46.D" style:family="table-column">
   <style:properties style:column-width="1.988cm" style:rel-column-width="8440*"/>
  </style:style>
  <style:style style:name="Table46.H" style:family="table-column">
   <style:properties style:column-width="1.97cm" style:rel-column-width="8364*"/>
  </style:style>
  <style:style style:name="Table46.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table46.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table46.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table46.B2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table46.H2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table47" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table47.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table44" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table44.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table45" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table45.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table45.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table45.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table45.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table23" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="column" table:align="margins"/>
  </style:style>
  <style:style style:name="Table23.A" style:family="table-column">
   <style:properties style:column-width="4.992cm" style:rel-column-width="21188*"/>
  </style:style>
  <style:style style:name="Table23.B" style:family="table-column">
   <style:properties style:column-width="10.448cm" style:rel-column-width="44347*"/>
  </style:style>
  <style:style style:name="Table23.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table23.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table23.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table24" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table24.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table24.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table24.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table24.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table25" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table25.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table119" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table119.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table119.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table26" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table26.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table26.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table26.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table26.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table133" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table133.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table150" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table150.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table150.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table144" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table144.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table52" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table52.A" style:family="table-column">
   <style:properties style:column-width="4.971cm" style:rel-column-width="21098*"/>
  </style:style>
  <style:style style:name="Table52.B" style:family="table-column">
   <style:properties style:column-width="10.469cm" style:rel-column-width="44437*"/>
  </style:style>
  <style:style style:name="Table52.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table52.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table52.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table161" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table161.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table161.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table21" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table21.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table21.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table21.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table134" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table134.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table134.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table134.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table135" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table135.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table135.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table135.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table135.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table136" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table136.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table30" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table30.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table30.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table81" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table81.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table81.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table34" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table34.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table35" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table35.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table35.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table35.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table35.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table9" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table9.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table9.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table9.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table10" style:family="table">
   <style:properties style:width="17.992cm" fo:margin-left="0cm" fo:margin-right="-0.012cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table10.A" style:family="table-column">
   <style:properties style:column-width="17.992cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table10.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table10.A1" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0cm" fo:border="none">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table11" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table11.A" style:family="table-column">
   <style:properties style:column-width="1.462cm" style:rel-column-width="6210*"/>
  </style:style>
  <style:style style:name="Table11.B" style:family="table-column">
   <style:properties style:column-width="2.004cm" style:rel-column-width="8502*"/>
  </style:style>
  <style:style style:name="Table11.D" style:family="table-column">
   <style:properties style:column-width="1.986cm" style:rel-column-width="8427*"/>
  </style:style>
  <style:style style:name="Table11.H" style:family="table-column">
   <style:properties style:column-width="1.976cm" style:rel-column-width="8388*"/>
  </style:style>
  <style:style style:name="Table11.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table11.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table11.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table11.B2" style:family="table-cell">
   <style:properties fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table11.H2" style:family="table-cell">
   <style:properties fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table11.E3" style:family="table-cell">
   <style:properties fo:background-color="#c0c0c0" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table11.H4" style:family="table-cell">
   <style:properties fo:background-color="#c0c0c0" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table12" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table12.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table13" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table13.A" style:family="table-column">
   <style:properties style:column-width="3.209cm" style:rel-column-width="13617*"/>
  </style:style>
  <style:style style:name="Table13.B" style:family="table-column">
   <style:properties style:column-width="2.432cm" style:rel-column-width="10322*"/>
  </style:style>
  <style:style style:name="Table13.C" style:family="table-column">
   <style:properties style:column-width="2.448cm" style:rel-column-width="10389*"/>
  </style:style>
  <style:style style:name="Table13.D" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="10396*"/>
  </style:style>
  <style:style style:name="Table13.F" style:family="table-column">
   <style:properties style:column-width="2.455cm" style:rel-column-width="10422*"/>
  </style:style>
  <style:style style:name="Table13.A1" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border="none">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.B1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="none">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.B2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.F2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.B3" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.F3" style:family="table-cell">
   <style:properties fo:background-color="#c0c0c0" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table13.F4" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table14" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="left"/>
  </style:style>
  <style:style style:name="Table14.A" style:family="table-column">
   <style:properties style:column-width="17.979cm"/>
  </style:style>
  <style:style style:name="Table14.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table15" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table15.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table15.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table15.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table15.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table16" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table16.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table16.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table17" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table17.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table18" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table18.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table19" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table19.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table19.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table19.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table19.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table20" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table20.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle1" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle1.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Tabelle1.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Tabelle1.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle1.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle2" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle2.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle2.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Tabelle3" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle3.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle3.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Tabelle3.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle4" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="page" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle4.A" style:family="table-column">
   <style:properties style:column-width="4.971cm" style:rel-column-width="21098*"/>
  </style:style>
  <style:style style:name="Tabelle4.B" style:family="table-column">
   <style:properties style:column-width="10.469cm" style:rel-column-width="44437*"/>
  </style:style>
  <style:style style:name="Tabelle4.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle4.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle4.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle5" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle5.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle6" style:family="table">
   <style:properties style:width="14.94cm" fo:margin-left="3.039cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Tabelle6.A" style:family="table-column">
   <style:properties style:column-width="0.926cm" style:rel-column-width="4064*"/>
  </style:style>
  <style:style style:name="Tabelle6.B" style:family="table-column">
   <style:properties style:column-width="2.009cm" style:rel-column-width="8809*"/>
  </style:style>
  <style:style style:name="Tabelle6.E" style:family="table-column">
   <style:properties style:column-width="1.991cm" style:rel-column-width="8739*"/>
  </style:style>
  <style:style style:name="Tabelle6.H" style:family="table-column">
   <style:properties style:column-width="1.981cm" style:rel-column-width="8687*"/>
  </style:style>
  <style:style style:name="Tabelle6.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle6.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle6.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle6.B2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle6.H2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle8" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle8.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Tabelle8.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Tabelle8.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle8.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle9" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle9.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle10" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle10.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle11" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle11.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle11.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle14" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle14.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle15" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle15.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle15.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle16" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle16.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle17" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle17.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle17.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle18" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle18.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Tabelle18.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Tabelle18.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle18.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle19" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle19.A" style:family="table-column">
   <style:properties style:column-width="4.972cm" style:rel-column-width="21106*"/>
  </style:style>
  <style:style style:name="Tabelle19.B" style:family="table-column">
   <style:properties style:column-width="10.467cm" style:rel-column-width="44429*"/>
  </style:style>
  <style:style style:name="Tabelle19.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle19.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle19.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle20" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Tabelle20.A" style:family="table-column">
   <style:properties style:column-width="1.462cm" style:rel-column-width="6210*"/>
  </style:style>
  <style:style style:name="Tabelle20.B" style:family="table-column">
   <style:properties style:column-width="2.004cm" style:rel-column-width="8502*"/>
  </style:style>
  <style:style style:name="Tabelle20.D" style:family="table-column">
   <style:properties style:column-width="1.986cm" style:rel-column-width="8427*"/>
  </style:style>
  <style:style style:name="Tabelle20.H" style:family="table-column">
   <style:properties style:column-width="1.976cm" style:rel-column-width="8388*"/>
  </style:style>
  <style:style style:name="Tabelle20.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle20.H1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle20.A2" style:family="table-cell">
   <style:properties fo:background-color="#e6e6e6" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle20.B2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle20.H2" style:family="table-cell">
   <style:properties fo:background-color="transparent" fo:padding="0.049cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Tabelle21" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle21.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle22" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle22.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle23" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle23.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Tabelle23.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Tabelle23.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Tabelle23.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table27" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table27.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table27.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table58" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table58.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table58.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table58.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table58.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table88" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table88.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table83" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table83.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table83.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table84" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table84.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table84.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table85" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table85.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table86" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table86.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table89" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table89.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table89.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table90" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table90.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table91" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table91.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table91.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table92" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table92.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table93" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table93.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table48" style:family="table">
   <style:properties style:width="17.96cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="left"/>
  </style:style>
  <style:style style:name="Table48.A" style:family="table-column">
   <style:properties style:column-width="17.96cm"/>
  </style:style>
  <style:style style:name="Table48.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table130" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table130.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table130.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table130.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table130.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table56" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table56.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table56.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table61" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table61.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table61.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table101" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table101.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table101.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table101.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table102" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table102.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table102.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table102.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table102.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table103" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table103.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table103.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table103.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table103.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table104" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table104.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table105" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table105.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table121" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table121.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table121.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table121.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table121.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table106" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table106.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table106.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table107" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" table:align="margins" style:may-break-between-rows="false"/>
  </style:style>
  <style:style style:name="Table107.A" style:family="table-column">
   <style:properties style:column-width="3.106cm" style:rel-column-width="13187*"/>
  </style:style>
  <style:style style:name="Table107.B" style:family="table-column">
   <style:properties style:column-width="3.073cm" style:rel-column-width="13045*"/>
  </style:style>
  <style:style style:name="Table107.E" style:family="table-column">
   <style:properties style:column-width="3.113cm" style:rel-column-width="13213*"/>
  </style:style>
  <style:style style:name="Table107.1" style:family="table-row">
   <style:properties style:min-row-height="0.575cm"/>
  </style:style>
  <style:style style:name="Table107.A1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="0.035cm solid #808080" fo:border-right="none" fo:border-top="0.035cm solid #808080" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.B1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.035cm solid #808080" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.C1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#cccccc" fo:padding="0.049cm" fo:border-left="0.035cm solid #808080" fo:border-right="none" fo:border-top="0.035cm solid #808080" fo:border-bottom="0.035cm solid #808080">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table107.E1" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="none" fo:border-right="0.035cm solid #808080" fo:border-top="0.035cm solid #808080" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.2" style:family="table-row">
   <style:properties style:min-row-height="0.549cm"/>
  </style:style>
  <style:style style:name="Table107.A2" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#cccccc" fo:padding="0.049cm" fo:border-left="0.035cm solid #808080" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.035cm solid #808080">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table107.B2" style:family="table-cell">
   <style:properties fo:vertical-align="middle" fo:background-color="#cccccc" fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.035cm solid #808080">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table107.C2" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="0.035cm solid #808080" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.D2" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.E2" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="none" fo:border-right="0.035cm solid #808080" fo:border-top="none" fo:border-bottom="0.035cm solid #808080"/>
  </style:style>
  <style:style style:name="Table107.A3" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="0.035cm solid #808080" fo:border-right="none" fo:border-top="none" fo:border-bottom="none"/>
  </style:style>
  <style:style style:name="Table107.B3" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table107.E3" style:family="table-cell" style:data-style-name="N0">
   <style:properties fo:vertical-align="middle" fo:padding="0.049cm" fo:border-left="none" fo:border-right="0.035cm solid #808080" fo:border-top="none" fo:border-bottom="none"/>
  </style:style>
  <style:style style:name="Table108" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table108.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table109" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table109.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table110" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table110.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table111" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table111.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table112" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table112.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table113" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table113.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table114" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table114.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table148" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="column" table:align="margins"/>
  </style:style>
  <style:style style:name="Table148.A" style:family="table-column">
   <style:properties style:column-width="4.997cm" style:rel-column-width="21211*"/>
  </style:style>
  <style:style style:name="Table148.B" style:family="table-column">
   <style:properties style:column-width="10.442cm" style:rel-column-width="44324*"/>
  </style:style>
  <style:style style:name="Table148.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table148.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table148.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table149" style:family="table">
   <style:properties style:width="15.439cm" fo:margin-left="2.54cm" fo:margin-right="0cm" fo:break-before="column" table:align="margins"/>
  </style:style>
  <style:style style:name="Table149.A" style:family="table-column">
   <style:properties style:column-width="4.992cm" style:rel-column-width="21188*"/>
  </style:style>
  <style:style style:name="Table149.B" style:family="table-column">
   <style:properties style:column-width="10.448cm" style:rel-column-width="44347*"/>
  </style:style>
  <style:style style:name="Table149.A1" style:family="table-cell">
   <style:properties fo:background-color="#e6e6ff" fo:padding="0.097cm" fo:border="0.002cm solid #000000">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="Table149.A2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table149.B2" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table94" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table94.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table95" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table95.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table95.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table95.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table95.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table96" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table96.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table97" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table97.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle12" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle12.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Tabelle12.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table153" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table153.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table153.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table153.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table153.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Tabelle13" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Tabelle13.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table98" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table98.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table87" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table87.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table100" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table100.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table1" style:family="table">
   <style:properties style:width="17.962cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="right"/>
  </style:style>
  <style:style style:name="Table1.A" style:family="table-column">
   <style:properties style:column-width="17.962cm"/>
  </style:style>
  <style:style style:name="Table4" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table4.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table4.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table4.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table4.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table5" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table5.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table6" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table6.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table7" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table7.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table7.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table8" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table8.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table8.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table8.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table8.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table3" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table3.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table3.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table115" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table115.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table116" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table116.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table116.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table116.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table116.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table117" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table117.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table117.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table118" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table118.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table118.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table118.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table118.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table63" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table63.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table63.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table63.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table120" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table120.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table163" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table163.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table163.A1" style:family="table-cell">
   <style:properties fo:padding="0.097cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table122" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table122.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table71" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table71.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table71.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table71.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table72" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table72.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table72.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table72.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table72.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table73" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table73.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table74" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table74.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table75" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table75.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table76" style:family="table">
   <style:properties style:width="17.979cm" fo:margin-top="0.3cm" fo:margin-bottom="0.3cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table76.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table76.1" style:family="table-row">
   <style:properties style:min-row-height="0.101cm"/>
  </style:style>
  <style:style style:name="Table76.A1" style:family="table-cell">
   <style:properties fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table77" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table77.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table78" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table78.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table123" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table123.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table123.1" style:family="table-row">
   <style:properties style:min-row-height="0.499cm"/>
  </style:style>
  <style:style style:name="Table124" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table124.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table125" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table125.A" style:family="table-column">
   <style:properties style:column-width="2.45cm" style:rel-column-width="8933*"/>
  </style:style>
  <style:style style:name="Table125.B" style:family="table-column">
   <style:properties style:column-width="15.529cm" style:rel-column-width="56602*"/>
  </style:style>
  <style:style style:name="Table125.A1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border="none"/>
  </style:style>
  <style:style style:name="Table125.B1" style:family="table-cell">
   <style:properties fo:padding="0.099cm" fo:border-left="none" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  </style:style>
  <style:style style:name="Table126" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table126.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table127" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table127.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="Table128" style:family="table">
   <style:properties style:width="17.979cm" table:align="margins"/>
  </style:style>
  <style:style style:name="Table128.A" style:family="table-column">
   <style:properties style:column-width="17.979cm" style:rel-column-width="65535*"/>
  </style:style>
  <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Header">
   <style:properties fo:color="#ffffff" style:text-background-color="#800000"/>
  </style:style>
  <style:style style:name="P2" style:family="paragraph" style:parent-style-name="Footer right">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="P3" style:family="paragraph" style:parent-style-name="Head 1" style:master-page-name="Chapter_Start">
   <style:properties fo:font-weight="bold" style:page-number="0"/>
  </style:style>
  <style:style style:name="P4" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L1"/>
  <style:style style:name="P5" style:family="paragraph" style:parent-style-name="Paragraph" style:master-page-name="">
   <style:properties style:page-number="0" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="P6" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties style:font-name="Thorndale" fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P7" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties fo:text-align="start" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P8" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L2"/>
  <style:style style:name="P9" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L3">
   <style:properties fo:margin-left="3.736cm" fo:margin-right="0cm" fo:text-indent="-0.499cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P10" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="3.736cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P11" style:family="paragraph" style:parent-style-name="TableHead">
   <style:properties fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P12" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0cm"/>
  </style:style>
  <style:style style:name="P13" style:family="paragraph" style:parent-style-name="Head 4">
   <style:properties fo:break-before="page"/>
  </style:style>
  <style:style style:name="P14" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L4"/>
  <style:style style:name="P15" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L5"/>
  <style:style style:name="P16" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L6"/>
  <style:style style:name="P17" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="P18" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L7"/>
  <style:style style:name="P19" style:family="paragraph" style:parent-style-name="Paragraph" style:master-page-name="">
   <style:properties style:page-number="0"/>
  </style:style>
  <style:style style:name="P20" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L8"/>
  <style:style style:name="P21" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L9"/>
  <style:style style:name="P22" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L10"/>
  <style:style style:name="P23" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L11"/>
  <style:style style:name="P24" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L12"/>
  <style:style style:name="P25" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L13"/>
  <style:style style:name="P26" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L14"/>
  <style:style style:name="P27" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L15"/>
  <style:style style:name="P28" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L16"/>
  <style:style style:name="P29" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P30" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties fo:font-weight="bold" fo:text-align="center" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P31" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L17"/>
  <style:style style:name="P32" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L18"/>
  <style:style style:name="P33" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L19"/>
  <style:style style:name="P34" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L20"/>
  <style:style style:name="P35" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L21"/>
  <style:style style:name="P36" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L22"/>
  <style:style style:name="P37" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L23"/>
  <style:style style:name="P38" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L24"/>
  <style:style style:name="P39" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L25"/>
  <style:style style:name="P40" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L26"/>
  <style:style style:name="P41" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L27"/>
  <style:style style:name="P42" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L28"/>
  <style:style style:name="P43" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L29"/>
  <style:style style:name="P44" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L30"/>
  <style:style style:name="P45" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="2.491cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P46" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L31">
   <style:properties fo:margin-left="2.491cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P47" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L32"/>
  <style:style style:name="P48" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L32">
   <style:properties fo:margin-left="3.736cm" fo:margin-right="0cm" fo:text-indent="-0.499cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P49" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L32">
   <style:properties fo:margin-left="2.491cm" fo:margin-right="0cm" fo:text-indent="-0.499cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P50" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L33"/>
  <style:style style:name="P51" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L34"/>
  <style:style style:name="P52" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L35"/>
  <style:style style:name="P53" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L36" style:master-page-name="">
   <style:properties style:page-number="0" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="P54" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L36">
   <style:properties fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="P55" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L37"/>
  <style:style style:name="P56" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L38"/>
  <style:style style:name="P57" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties fo:font-size="8pt"/>
  </style:style>
  <style:style style:name="P58" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:margin-left="2.54cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false"/>
  </style:style>
  <style:style style:name="P59" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L39"/>
  <style:style style:name="P60" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L40"/>
  <style:style style:name="P61" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L41"/>
  <style:style style:name="P62" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L42"/>
  <style:style style:name="P63" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L43"/>
  <style:style style:name="P64" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L44"/>
  <style:style style:name="P65" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L45"/>
  <style:style style:name="P66" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L46"/>
  <style:style style:name="P67" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L47"/>
  <style:style style:name="P68" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L48"/>
  <style:style style:name="P69" style:family="paragraph" style:parent-style-name="TextInTable">
   <style:properties fo:text-align="end" style:justify-single-word="false"/>
  </style:style>
  <style:style style:name="P70" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L49"/>
  <style:style style:name="P71" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L50"/>
  <style:style style:name="P72" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L51"/>
  <style:style style:name="P73" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L52"/>
  <style:style style:name="P74" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L53"/>
  <style:style style:name="P75" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L54"/>
  <style:style style:name="P76" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L55"/>
  <style:style style:name="P77" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L56"/>
  <style:style style:name="P78" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L57"/>
  <style:style style:name="P79" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L58"/>
  <style:style style:name="P80" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L59"/>
  <style:style style:name="P81" style:family="paragraph" style:parent-style-name="Paragraph" style:master-page-name="">
   <style:properties fo:margin-left="2.491cm" fo:margin-right="0cm" fo:text-indent="0cm" style:auto-text-indent="false" style:page-number="0" fo:keep-with-next="true"/>
  </style:style>
  <style:style style:name="P82" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L60"/>
  <style:style style:name="P83" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L61"/>
  <style:style style:name="P84" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L62"/>
  <style:style style:name="P85" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L63"/>
  <style:style style:name="P86" style:family="paragraph" style:parent-style-name="Paragraph" style:master-page-name="">
   <style:properties style:page-number="0" fo:break-before="auto" fo:break-after="auto"/>
  </style:style>
  <style:style style:name="P87" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L64"/>
  <style:style style:name="P88" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L65"/>
  <style:style style:name="P89" style:family="paragraph" style:parent-style-name="Paragraph" style:list-style-name="L66"/>
  <style:style style:name="P90" style:family="paragraph" style:parent-style-name="Paragraph">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="T1" style:family="text">
   <style:properties fo:font-weight="normal"/>
  </style:style>
  <style:style style:name="T2" style:family="text">
   <style:properties fo:color="#000000" style:font-name="Palatino" fo:font-size="10pt" fo:language="en" fo:country="US"/>
  </style:style>
  <style:style style:name="T3" style:family="text">
   <style:properties fo:font-style="italic"/>
  </style:style>
  <style:style style:name="T4" style:family="text" style:parent-style-name="MethodSignatureEmphasis">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="T5" style:family="text" style:parent-style-name="Buttons/Menus">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="T6" style:family="text">
   <style:properties fo:font-weight="bold"/>
  </style:style>
  <style:style style:name="T7" style:family="text">
   <style:properties fo:font-style="normal" fo:font-weight="normal"/>
  </style:style>
  <style:style style:name="T8" style:family="text" style:parent-style-name="Emphasis">
   <style:properties fo:font-style="italic" fo:font-weight="normal"/>
  </style:style>
  <style:style style:name="T9" style:family="text">
   <style:properties style:text-position="super 58%"/>
  </style:style>
  <style:style style:name="T10" style:family="text" style:parent-style-name="Code (in text)">
   <style:properties fo:font-size="9pt"/>
  </style:style>
  <style:style style:name="T11" style:family="text" style:parent-style-name="Code (in text)">
   <style:properties fo:font-size="8pt"/>
  </style:style>
  <style:style style:name="fr1" style:family="graphics" style:parent-style-name="ChapterFrame">
   <style:properties fo:padding="0.049cm" fo:border-left="none" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.018cm solid #000000"/>
  </style:style>
  <style:style style:name="fr2" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr3" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr4" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties style:wrap="right" style:number-wrapped-paragraphs="no-limit" style:wrap-contour="false" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr5" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="foreground" style:protect="none" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none">
    <style:columns fo:column-count="0" fo:column-gap="0cm"/>
   </style:properties>
  </style:style>
  <style:style style:name="fr6" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:run-through="foreground" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr7" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="foreground" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr8" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr9" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="foreground" style:wrap="run-through" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr10" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr11" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="foreground" style:wrap="run-through" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none"/>
  </style:style>
  <style:style style:name="fr12" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="parallel" style:number-wrapped-paragraphs="no-limit" style:wrap-contour="false" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr13" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:run-through="foreground" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr14" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr15" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr16" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0.101cm" fo:margin-right="0.101cm" fo:margin-top="0.101cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr17" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr18" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties style:wrap="right" style:number-wrapped-paragraphs="no-limit" style:wrap-contour="false" style:vertical-pos="from-top" style:vertical-rel="paragraph" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr19" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr20" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:background-color="transparent" style:background-transparency="100%" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="fr21" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="run-through" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none"/>
  </style:style>
  <style:style style:name="fr22" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.101cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:background-color="transparent" style:background-transparency="100%" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard">
    <style:background-image/>
   </style:properties>
  </style:style>
  <style:style style:name="fr23" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr24" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none">
    <style:columns fo:column-count="0" fo:column-gap="0cm"/>
   </style:properties>
  </style:style>
  <style:style style:name="fr25" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none"/>
  </style:style>
  <style:style style:name="fr26" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr27" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.101cm" fo:margin-bottom="0.101cm" style:wrap="none" style:vertical-pos="from-top" style:vertical-rel="paragraph-content" style:horizontal-pos="from-left" style:horizontal-rel="paragraph-content" fo:padding="0cm" fo:border="none" style:shadow="none" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <style:style style:name="fr28" style:family="graphics" style:parent-style-name="Frame">
   <style:properties fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0cm" fo:margin-bottom="0cm" style:wrap="run-through" style:vertical-pos="top" style:vertical-rel="paragraph-content" style:horizontal-pos="left" style:horizontal-rel="paragraph-content"/>
  </style:style>
  <style:style style:name="fr29" style:family="graphics" style:parent-style-name="Graphics">
   <style:properties fo:margin-top="0cm" fo:margin-bottom="0.101cm" style:vertical-pos="top" style:vertical-rel="paragraph" style:horizontal-pos="left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="0%" draw:color-mode="standard"/>
  </style:style>
  <text:list-style style:name="L1">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L2">
   <text:list-level-style-number text:level="1" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="2" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="3" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="4" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="5" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="6" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="7" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="8" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="9" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="10" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
  </text:list-style>
  <text:list-style style:name="L3">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L4">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L5">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L6">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L7">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L8">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L9">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L10">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L11">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L12">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L13">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L14">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L15">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L16">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L17">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L18">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L19">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L20">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L21">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L22">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L23">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L24">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L25">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L26">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L27">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L28">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L29">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L30">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L31">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L32">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L33">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L34">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L35">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L36">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L37">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L38">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L39">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L40">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L41">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L42">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L43">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L44">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L45">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L46">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L47">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L48">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L49">
   <text:list-level-style-number text:level="1" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="2" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="3" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="4" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="5" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="6" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="7" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="8" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="9" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
   <text:list-level-style-number text:level="10" text:style-name="Numbering Symbols" style:num-suffix="." style:num-format="1">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm"/>
   </text:list-level-style-number>
  </text:list-style>
  <text:list-style style:name="L50">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L51">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L52">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L53">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L54">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L55">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L56">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L57">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L58">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L59">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L60">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L61">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L62">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L63">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L64">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L65">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <text:list-style style:name="L66">
   <text:list-level-style-bullet text:level="1" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="2" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="0.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="3" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="4" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="1.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="5" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="6" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="2.501cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="7" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="8" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="3.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="9" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.001cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
   <text:list-level-style-bullet text:level="10" text:style-name="Bullet Symbols" style:num-suffix="." text:bullet-char="•">
    <style:properties text:space-before="4.502cm" text:min-label-width="0.499cm" fo:font-family="StarSymbol" style:font-charset="x-symbol"/>
   </text:list-level-style-bullet>
  </text:list-style>
  <style:page-master style:name="pm1" style:page-usage="mirrored">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.016cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.508cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm2">
   <style:properties fo:page-width="20.999cm" fo:page-height="29.699cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm" fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm3" style:page-usage="left">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="2.337cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.016cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.508cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm4" style:page-usage="right">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.016cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.508cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm5">
   <style:properties fo:page-width="22.721cm" fo:page-height="11.4cm" style:num-format="1" style:print-orientation="landscape" fo:margin-top="0cm" fo:margin-bottom="0cm" fo:margin-left="0cm" fo:margin-right="0cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm6">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2cm" fo:margin-bottom="2cm" fo:margin-left="2cm" fo:margin-right="2cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm7">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.91cm" fo:margin-bottom="1.91cm" fo:margin-left="2.341cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:columns fo:column-count="0" fo:column-gap="0cm"/>
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm8" style:page-usage="left">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="0.699cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.199cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm9" style:page-usage="left">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="2.337cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm10" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style/>
  </style:page-master>
  <style:page-master style:name="pm11" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.91cm" fo:margin-bottom="1.91cm" fo:margin-left="2.341cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style>
    <style:properties svg:height="3.59cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-bottom="0cm"/>
   </style:header-style>
   <style:footer-style>
    <style:properties fo:min-height="0.699cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.199cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm12" style:page-usage="left">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="2.337cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.016cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.508cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm13" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.016cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.508cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm14">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style>
    <style:properties svg:height="3.59cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-bottom="0cm"/>
   </style:header-style>
   <style:footer-style>
    <style:properties fo:min-height="0.699cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.199cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm15" style:page-usage="left">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="2.337cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm16" style:page-usage="right">
   <style:properties fo:page-width="19.05cm" fo:page-height="22.86cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm17" style:page-usage="left">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="1.27cm" fo:margin-right="2.337cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:columns fo:column-count="2" fo:column-gap="0.84cm">
     <style:column style:rel-width="32767*" fo:margin-left="0cm" fo:margin-right="0.42cm"/>
     <style:column style:rel-width="32768*" fo:margin-left="0.42cm" fo:margin-right="0cm"/>
    </style:columns>
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm18" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.905cm" fo:margin-bottom="1.905cm" fo:margin-left="2.337cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:columns fo:column-count="2" fo:column-gap="0.84cm">
     <style:column style:rel-width="32767*" fo:margin-left="0cm" fo:margin-right="0.42cm"/>
     <style:column style:rel-width="32768*" fo:margin-left="0.42cm" fo:margin-right="0cm"/>
    </style:columns>
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm19" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.91cm" fo:margin-bottom="1.91cm" fo:margin-left="2.341cm" fo:margin-right="1.27cm" fo:border="none" fo:padding="0cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:columns fo:column-count="2" fo:column-gap="0.84cm">
     <style:column style:rel-width="32767*" fo:margin-left="0cm" fo:margin-right="0.42cm"/>
     <style:column style:rel-width="32768*" fo:margin-left="0.42cm" fo:margin-right="0cm"/>
    </style:columns>
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style>
    <style:properties svg:height="5.881cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-bottom="0.801cm" fo:border-top="none" fo:border-bottom="0.035cm solid #000000" fo:border-left="none" fo:border-right="none" fo:padding="0.499cm"/>
   </style:header-style>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm20" style:page-usage="right">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.91cm" fo:margin-bottom="1.91cm" fo:margin-left="2.341cm" fo:margin-right="1.27cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <style:page-master style:name="pm21" style:page-usage="left">
   <style:properties fo:page-width="21.59cm" fo:page-height="27.94cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="1.91cm" fo:margin-bottom="1.91cm" fo:margin-left="1.27cm" fo:margin-right="2.341cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
    <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
   </style:properties>
   <style:header-style/>
   <style:footer-style>
    <style:properties fo:min-height="1.02cm" fo:margin-left="0cm" fo:margin-right="0cm" fo:margin-top="0.51cm"/>
   </style:footer-style>
  </style:page-master>
  <number:number-style style:name="N0" style:family="data-style">
   <number:number number:min-integer-digits="1"/>
  </number:number-style>
 </office:automatic-styles>
 <office:master-styles>
  <style:master-page style:name="Standard" style:page-master-name="pm1">
   <style:footer>
    <text:p text:style-name="Footer"/>
   </style:footer>
   <style:footer-left>
    <text:p text:style-name="Footer"/>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="First Page" style:page-master-name="pm2" style:next-style-name="Standard"/>
  <style:master-page style:name="Left Page" style:page-master-name="pm3" style:next-style-name="Right Page">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number> <text:s text:c="4"/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get>  <text:user-field-get text:name="ReleaseDate">March 2001</text:user-field-get></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="Right Page" style:page-master-name="pm4" style:next-style-name="Left Page">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Chapter" text:name="KapitelTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer right"><text:user-field-get text:name="KapitelTitel">Chapter</text:user-field-get> <text:s/><text:chapter text:display="number" text:outline-level="1"/> <text:s text:c="4"/><text:chapter text:display="name" text:outline-level="1"/> <text:s text:c="3"/><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="Envelope" style:page-master-name="pm5"/>
  <style:master-page style:name="Index" style:page-master-name="pm6"/>
  <style:master-page style:name="HTML" style:page-master-name="pm7"/>
  <style:master-page style:name="Vakat" style:page-master-name="pm8">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number><text:span text:style-name="PageNumber"> <text:s text:c="4"/></text:span><text:s/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s text:c="2"/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get>  <text:user-field-get text:name="ReleaseDate">March 2001</text:user-field-get></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="CopyrightPage" style:page-master-name="pm9"/>
  <style:master-page style:name="BookPage1" style:page-master-name="pm10" style:next-style-name="CopyrightPage"/>
  <style:master-page style:name="NoChapter" style:page-master-name="pm11" style:next-style-name="Page_Left">
   <style:header>
    <text:p text:style-name="Header"/>
   </style:header>
   <style:footer>
    <text:p text:style-name="Footer right"><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="NoChapter left" style:page-master-name="pm12" style:next-style-name="No chapter right">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number> <text:s text:c="4"/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s text:c="2"/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get>  <text:user-field-get text:name="ReleaseDate">March 2001</text:user-field-get></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="No chapter right" style:page-master-name="pm13" style:next-style-name="NoChapter left">
   <style:footer>
    <text:p text:style-name="Footer right"><text:s text:c="5"/><text:chapter text:display="name" text:outline-level="1"/> <text:s text:c="3"/><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="TOC_Start" style:page-master-name="pm14" style:next-style-name="TOC_Left">
   <style:header>
    <text:p text:style-name="Header"/>
   </style:header>
   <style:header-left>
    <text:p text:style-name="Header left"/>
   </style:header-left>
   <style:footer>
    <text:p text:style-name="Footer right"><text:s text:c="5"/><text:page-number style:num-format="1" text:select-page="current">64</text:page-number></text:p>
   </style:footer>
   <style:footer-left>
    <text:p text:style-name="Footer right"><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="TOC_Left" style:page-master-name="pm15" style:next-style-name="TOC_Right">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number> <text:s text:c="4"/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get></text:p>
   </style:footer>
   <style:footer-left>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number> <text:s text:c="4"/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get></text:p>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="TOC_Right" style:page-master-name="pm16" style:next-style-name="TOC_Left">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Contents" text:name="InhaltsverzTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer right"><text:user-field-get text:name="InhaltsverzTitel">Contents</text:user-field-get> <text:s text:c="4"/><text:page-number style:num-format="1" text:select-page="current">64</text:page-number></text:p>
   </style:footer>
   <style:footer-left>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Contents" text:name="InhaltsverzTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer right"><text:user-field-get text:name="InhaltsverzTitel">Contents</text:user-field-get> <text:s text:c="4"/><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="Index_Left" style:page-master-name="pm17" style:next-style-name="Index_Right">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number><text:span text:style-name="T1"> <text:s text:c="3"/></text:span><text:s/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get>  <text:user-field-get text:name="ReleaseDate">March 2001</text:user-field-get></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="Index_Right" style:page-master-name="pm18" style:next-style-name="Index_Left">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Index" text:name="IndexTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer right"><text:user-field-get text:name="IndexTitel">Index</text:user-field-get> <text:s text:c="4"/><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="Chapter_Start" style:page-master-name="pm11" style:next-style-name="Page_Left">
   <style:header>
    <text:p text:style-name="P1"><draw:text-box draw:style-name="fr1" draw:name="Rahmen2" text:anchor-type="paragraph" svg:width="2.54cm" fo:min-height="0.801cm" draw:z-index="99">
      <text:p text:style-name="ChapterText"><text:user-field-get text:name="KapitelTitel">Chapter</text:user-field-get><text:tab-stop/> <text:chapter text:display="number" text:outline-level="1">1</text:chapter></text:p>
     </draw:text-box></text:p>
   </style:header>
   <style:footer>
    <text:p text:style-name="Footer right"><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
   <style:footer-left>
    <text:p text:style-name="Footer right"><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="Index_Start" style:page-master-name="pm19" style:next-style-name="Index_Left">
   <style:header>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Index" text:name="IndexTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="HeadlineIndex"><text:user-field-get text:name="IndexTitel">Index</text:user-field-get></text:p>
   </style:header>
   <style:footer>
    <text:p text:style-name="P2"><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
  </style:master-page>
  <style:master-page style:name="Page_Right" style:page-master-name="pm20" style:next-style-name="Page_Left">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Chapter" text:name="KapitelTitel"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer right"><text:user-field-get text:name="KapitelTitel">Chapter</text:user-field-get> <text:s/><text:chapter text:display="number" text:outline-level="1">1</text:chapter> <text:s text:c="4"/><text:chapter text:display="name" text:outline-level="1">Spreadsheet Documents</text:chapter> <text:s text:c="3"/><text:page-number text:select-page="current">64</text:page-number></text:p>
   </style:footer>
   <style:footer-left>
    <text:p text:style-name="Footer"/>
   </style:footer-left>
  </style:master-page>
  <style:master-page style:name="Page_Left" style:page-master-name="pm21" style:next-style-name="Page_Right">
   <style:footer>
    <text:user-field-decls>
     <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
     <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
     <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
    </text:user-field-decls>
    <text:p text:style-name="Footer left"><text:page-number text:select-page="current">64</text:page-number> <text:s text:c="4"/><text:user-field-get text:name="SOVersion">Product name and Release number</text:user-field-get> <text:s/><text:user-field-get text:name="BuchTitel">Manual Title</text:user-field-get>  <text:user-field-get text:name="ReleaseDate">March 2001</text:user-field-get></text:p>
   </style:footer>
  </style:master-page>
 </office:master-styles>
 <office:body>
  <text:variable-decls>
   <text:variable-decl text:value-type="string" text:name="Version"/>
   <text:variable-decl text:value-type="string" text:name="HTML_ON"/>
   <text:variable-decl text:value-type="string" text:name="HTML_OFF"/>
   <text:variable-decl text:value-type="float" text:name="lala"/>
   <text:variable-decl text:value-type="string" text:name="TITEL"/>
   <text:variable-decl text:value-type="string" text:name="END"/>
   <text:variable-decl text:value-type="string" text:name="NAME"/>
   <text:variable-decl text:value-type="string" text:name="HREF"/>
   <text:variable-decl text:value-type="string" text:name="HelpID"/>
   <text:variable-decl text:value-type="string" text:name="MODIFY"/>
   <text:variable-decl text:value-type="string" text:name="REFNR"/>
   <text:variable-decl text:value-type="string" text:name="OS2"/>
   <text:variable-decl text:value-type="string" text:name="ELSE"/>
   <text:variable-decl text:value-type="string" text:name="UNIX"/>
   <text:variable-decl text:value-type="string" text:name="MAC"/>
   <text:variable-decl text:value-type="string" text:name="INDEX"/>
   <text:variable-decl text:value-type="string" text:name="DOKENDE"/>
   <text:variable-decl text:value-type="string" text:name="WIN"/>
   <text:variable-decl text:value-type="string" text:name="KEY"/>
   <text:variable-decl text:value-type="string" text:name="HFELD"/>
   <text:variable-decl text:value-type="string" text:name="AKTHLP"/>
   <text:variable-decl text:value-type="string" text:name="TabelleAnfang"/>
  </text:variable-decls>
  <text:sequence-decls>
   <text:sequence-decl text:display-outline-level="1" text:separation-character="." text:name="Illustration"/>
   <text:sequence-decl text:display-outline-level="0" text:name="Table"/>
   <text:sequence-decl text:display-outline-level="0" text:name="Text"/>
   <text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
   <text:sequence-decl text:display-outline-level="0" text:name="CapterNumber"/>
   <text:sequence-decl text:display-outline-level="1" text:separation-character="." text:name="Figure"/>
   <text:sequence-decl text:display-outline-level="1" text:separation-character="." text:name="Tables"/>
   <text:sequence-decl text:display-outline-level="1" text:separation-character="." text:name="Listing"/>
  </text:sequence-decls>
  <text:user-field-decls>
   <text:user-field-decl text:value-type="string" text:string-value="Manual Title" text:name="BuchTitel"/>
   <text:user-field-decl text:value-type="string" text:string-value="March 2001" text:name="ReleaseDate"/>
   <text:user-field-decl text:value-type="string" text:string-value="Product name and Release number" text:name="SOVersion"/>
   <text:user-field-decl text:value-type="string" text:string-value="Chapter" text:name="KapitelTitel"/>
   <text:user-field-decl text:value-type="string" text:string-value="Contents" text:name="InhaltsverzTitel"/>
   <text:user-field-decl text:value-type="string" text:string-value="Index" text:name="IndexTitel"/>
   <text:user-field-decl text:value-type="string" text:string-value="" text:name="EinFeld"/>
   <text:user-field-decl text:value-type="string" text:string-value="" text:name="nocheins"/>
   <text:user-field-decl text:value-type="string" text:string-value="StarOffice 5.1" text:name="Version_renamed_3"/>
   <text:user-field-decl text:value-type="string" text:string-value="Setup &amp; Administration Guide" text:name="Titel_renamed_4"/>
   <text:user-field-decl text:value-type="string" text:string-value="" text:name="fuer"/>
   <text:user-field-decl text:value-type="string" text:string-value="" text:name="Anhang"/>
   <text:user-field-decl text:value-type="string" text:string-value="" text:name="Notizen"/>
   <text:user-field-decl text:value-type="string" text:string-value="StarOffice 5.1" text:name="Version_renamed_7"/>
   <text:user-field-decl text:value-type="string" text:string-value="Setup &amp; Administration Guide" text:name="Titel_renamed_8"/>
  </text:user-field-decls>
  <text:h text:style-name="P3" text:level="1">Spreadsheet <text:alphabetical-index-mark text:string-value="spreadsheet document"/>Documents</text:h>
  <text:p text:style-name="Under_Head1"/>
  <text:p text:style-name="Paragraph"/>
  <text:h text:style-name="Head 2" text:level="2">Overview</text:h>
  <text:p text:style-name="Paragraph"><text:span text:style-name="T2">[TOPIC:com.sun.star.sheet.SpreadsheetDocument][PRODUCTNAME]</text:span> API knows three variants of tables: <text:alphabetical-index-mark-start text:id="IMark39608228" text:key1="tables"/><text:span text:style-name="Emphasis">text tables</text:span><text:alphabetical-index-mark-end text:id="IMark39608228"/> (see <text:span text:style-name="ChapterRef">[Chapter:TextTables]</text:span>), <text:alphabetical-index-mark-start text:id="IMark51311788" text:key1="tables"/><text:span text:style-name="Emphasis">database tables</text:span><text:alphabetical-index-mark-end text:id="IMark51311788"/> (see <text:span text:style-name="ChapterRef">[Chapter:DatabaseTables]</text:span>) and <text:alphabetical-index-mark-start text:id="IMark51342804" text:key1="tables"/><text:span text:style-name="Emphasis">spreadsheets</text:span><text:alphabetical-index-mark-end text:id="IMark51342804"/>. Each of the table concepts have their own purpose. Text tables handle text contents, database tables offer database functionality and spreadsheets operate on data cells that can be evaluated. Being specialized in such a way means that each concept has its strength. Text tables offer full functionality for text formatting, where spreadsheets support complex calculations. Alternately, spreadsheets support only basic formatting capabilities and text tables perform elementary calculations.</text:p>
  <text:p text:style-name="Paragraph">The implementation of the various tables differ due to each of their specializations. Basic table features are defined in the module <text:span text:style-name="Code (in text)">[MODULE:com.sun.star.table]</text:span>. Regarding the compatibility of text and spreadsheet tables, the corresponding features are also located in the module <text:span text:style-name="Code (in text)">[MODULE:com.sun.star.table]</text:span>. In addition, spreadsheet tables are fully based on the specifications given and are extended by additional specifications from the module <text:span text:style-name="Code (in text)">[MODULE:com.sun.star.sheet]</text:span>. Several services of the spreadsheet application representing cells and cell ranges extend the common services from the module com::sun::star::table. The following table shows the services for cells and cell ranges.</text:p>
  <table:table table:name="Table2" table:style-name="Table2">
   <table:table-column table:style-name="Table2.A"/>
   <table:table-column table:style-name="Table2.B"/>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A1" table:value-type="string">
     <text:p text:style-name="TableHead">Spreadsheet service</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B1" table:value-type="string">
     <text:p text:style-name="TableHead">Included com::sun::star::table service</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.Cell]</text:span></text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Cells]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">-</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRange]</text:span></text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">-</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table2.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellCursor]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table2.B2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellCursor]</text:span></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:alphabetical-index-mark text:string-value="document model" text:key1="spreadsheet document"/>spreadsheet document model in the [PRODUCTNAME] API has five major architectural areas (see <text:span text:style-name="T3"><text:sequence-ref text:reference-format="category-and-value" text:ref-name="refIllustration0">Illustration 1.1</text:sequence-ref></text:span>) The five areas are:</text:p>
  <text:unordered-list text:style-name="L1">
   <text:list-item>
    <text:p text:style-name="P4">Spreadsheets Container</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P4">Service Manager (document internal)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P4">DrawPages</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P4">Content Properties</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P4">Objects for Styling</text:p>
   </text:list-item>
  </text:unordered-list>
  <table:table table:name="Table28" table:style-name="Table28">
   <table:table-column table:style-name="Table28.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table28.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame2" text:anchor-type="paragraph" svg:y="0cm" svg:width="13.4cm" fo:min-height="15.94cm" draw:z-index="100">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr3" draw:name="Spreadsheet Document Model" text:anchor-type="paragraph" svg:width="14cm" svg:height="16.94cm" draw:z-index="101" xlink:href="SpreadsheetDocumentOverview.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>Overview graphic of the Spreadsheet Document model</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration0" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.1</text:sequence>: Spreadsheet Document Component</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The core of the spreadsheet document model are the spreadsheets contained in the <text:alphabetical-index-mark-start text:id="IMark38400148" text:key1="spreadsheet document"/>spreadsheets container<text:alphabetical-index-mark-end text:id="IMark38400148"/>. When working with document data, almost everything happens in the spreadsheet objects extracted from the spreadsheets container.</text:p>
  <text:p text:style-name="Paragraph">The <text:alphabetical-index-mark-start text:id="IMark38400148" text:key1="spreadsheet document"/>service manager<text:alphabetical-index-mark-end text:id="IMark38400148"/> of the spreadsheet document model creates shape objects, text fields for page headers and form controls that can be added to spreadsheets. Note, that the document service manager is different from the main service manager used when connecting to the office. Each document model has its own service manager, so that the services can be adapted to the document they are required for. For instance, a text field is ordered and inserted into the page header text of a sheet using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XText:insertTextContent]()</text:span>or the service manager is asked for a shape object and inserts it into a sheet using <text:span text:style-name="Code (in text)">add()</text:span>at the drawpage.</text:p>
  <text:p text:style-name="Paragraph">Each sheet in a spreadsheet document can have a <text:alphabetical-index-mark-start text:id="IMark38400148" text:key1="spreadsheet document"/>drawpage<text:alphabetical-index-mark-end text:id="IMark38400148"/> for drawing contents. A drawpage can be visualized as a transparent layer above a sheet. The spreadsheet model is able to provide all drawpages in a spreadsheet document at once.</text:p>
  <text:p text:style-name="Paragraph">Linked and named contents from all sheets are accessed through content properties at the document model. There are no content suppliers as in text documents, because the actual content of a spreadsheet document lies in its sheet objects. Rather, there are only certain properties for named and linked contents in all sheets.</text:p>
  <text:p text:style-name="Paragraph">Finally, there are services that allow for document wide styling and structuring of the spreadsheet document. Among them are style family suppliers for cells and pages, and a number formats supplier.</text:p>
  <text:p text:style-name="Paragraph">Besides these five architectural areas, there are document and calculation aspects shown at the bottom of the illustration. The document aspects of our model are: it is printable, storable, and modifiable, it can be protected and audited, and it supplies general information about itself. On the lower left of the illustration, the calculation aspects are listed. Although almost all spreadsheet functionality can be found at the spreadsheet objects, a few common functions are bound to the spreadsheet document model: goal seeking, consolidation and recalculation of all cells.</text:p>
  <text:p text:style-name="Paragraph">Finally, the document model has a controller that provides access to the graphical user interface of the model and has knowledge about the current view status in the user interface (see the upper left of the illustration).</text:p>
  <text:p text:style-name="Paragraph">The usage of the spreadsheet objects in the spreadsheets container is discussed in detail in the section <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working]</text:span>. Before discussing spreadsheet objects, consider two examples and how they handle a spreadsheet document, that is, how to create, open, save and print.</text:p>
  <text:h text:style-name="Head 3" text:level="3">Example: Adding a New Spreadsheet</text:h>
  <text:p text:style-name="Paragraph">The following helper method opens a new spreadsheet document component. The method <text:span text:style-name="Code (in text)">getRemoteServiceManager()</text:span> retrieves a connection. Refer to chapter <text:span text:style-name="ChapterRef">[CHAPTER:FirstSteps]</text:span> for additional information.</text:p>
  <text:p text:style-name="Code">import com.sun.star.lang.XComponent;</text:p>
  <text:p text:style-name="Code">import com.sun.star.frame.XComponentLoader;</text:p>
  <text:p text:style-name="Code">import com.sun.star.beans.PropertyValue;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code">...</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code">protected XComponent newSpreadsheetComponent() throws java.lang.Exception {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>String loadUrl = &quot;private:factory/scalc&quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xRemoteServiceManager = this.getRemoteServiceManager(unoUrl);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>Object desktop = xRemoteServiceManager.createInstanceWithContext(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>&quot;com.sun.star.frame.Desktop&quot;, xRemoteContext);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XComponentLoader xComponentLoader = (XComponentLoader)UnoRuntime.queryInterface(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>XComponentLoader.class, desktop);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] loadProps = new PropertyValue[0];</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>return xComponentLoader.loadComponentFromURL(loadUrl, &quot;_blank&quot;, 0, loadProps); <text:s text:c="3"/></text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:p text:style-name="Paragraph">Our helper returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XComponent]</text:span> interface for the recently loaded document. Now the <text:span text:style-name="Code (in text)">XComponent</text:span> is passed to the following method <text:span text:style-name="Code (in text)">insertSpreadsheet()</text:span> to add a new spreadsheet to our document. [SOURCE:Spreadsheet/SpreadsheetDocHelper.java]</text:p>
  <text:p text:style-name="Code">import com.sun.star.sheet.XSpreadsheetDcoument;</text:p>
  <text:p text:style-name="Code">import com.sun.star.sheet.XSpreadsheet; <text:s/></text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code">...</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code">/** Inserts a new empty spreadsheet with the specified name.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheetComponent <text:s/>The XComponent interface of a loaded document object</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param aName <text:s/>The name of the new sheet.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nIndex <text:s/>The insertion index.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>The XSpreadsheet interface of the new sheet.</text:p>
  <text:p text:style-name="Code"><text:s/>*/</text:p>
  <text:p text:style-name="Code">public XSpreadsheet insertSpreadsheet(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>XComponent xSheetComponent, String aName, short nIndex) {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XSpreadsheetDocument xDocument = (XSpreadsheetDocument)UnoRuntime.queryInterface(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>XSpreadsheetDocument.class, xSheetComponent);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Collection of sheets</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheets xSheets = xDocument.getSheets();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet = null;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>try {</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>xSheets.<text:span text:style-name="CODE Emphasis">insertNewByName</text:span>(aName, nIndex);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>xSheet = xSheets.getByName(aName);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>} catch (Exception ex) {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>return xSheet;</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:h text:style-name="Head 3" text:level="3">Example: Editing Spreadsheet Cells</text:h>
  <text:p text:style-name="Paragraph">The method <text:span text:style-name="Code (in text)">insertSpreadsheet()</text:span> returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> interface. This interface is passed to the method below, which shows how to access and modify the content and formatting of single cells. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> returned by <text:span text:style-name="Code (in text)">insertSpreadsheet()</text:span> is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span>. By working with it, cells can be accessed immediately using <text:span text:style-name="Code (in text)">getCellByPosition()</text:span>: [SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <text:p text:style-name="Code">void cellWork(XSpreadsheet xRange) {</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = null;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCell xCell = null;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Access and modify a VALUE CELL</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition(0, 0);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Set cell value.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCell.setValue(1234);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Get cell value.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>double nDblValue = xCell.getValue() * 2;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xRange.getCellByPosition(0, 1).setValue(nDblValue);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Create a FORMULA CELL</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition(0, 2);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Set formula string.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCell.setFormula(&quot;=1/0&quot;);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Get error type.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>boolean bValid = (xCell.getError() == 0);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Get formula string.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>String aText = &quot;The formula &quot; + xCell.getFormula() + &quot; is &quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aText += bValid ? &quot;valid.&quot; : &quot;erroneous.&quot;;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Insert a TEXT CELL using the XText interface</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition(0, 3);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XText xCellText = (com.sun.star.text.XText)</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.text.XText.class, xCell);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XTextCursor xTextCursor = xCellText.createTextCursor();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xCellText.insertString(xTextCursor, aText, false);</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:h text:style-name="Head 2" text:level="2">Handling Spreadsheet Document Files</text:h>
  <text:h text:style-name="Head 3" text:level="3"><text:alphabetical-index-mark text:string-value="creating" text:key1="spreadsheet document"/>Creating and <text:alphabetical-index-mark text:string-value="loading" text:key1="spreadsheet document"/>Loading Spreadsheet Documents</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.frame.XComponentLoader]If a document in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API is required, begin by getting a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.Desktop]</text:span> service from the service manager. The desktop handles all document components in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API. It is discussed thoroughly in the chapter <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev]</text:span>. Office documents are often called components, because they support the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XComponent]</text:span> interface. An <text:span text:style-name="Code (in text)">XComponent</text:span> is a UNO object that can be disposed of directly and broadcast an event to other UNO objects when the object is disposed.</text:p>
  <text:p text:style-name="Paragraph">The Desktop can load new and existing components from a URL. For this purpose it has a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.XComponentLoader]</text:span> interface that has one single method to load and instantiate components from a URL into a frame:</text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::lang::XComponent <text:span text:style-name="T4">loadComponentFromURL</text:span>( [IN] string aURL, </text:p>
  <text:p text:style-name="MethodSignatures"><text:s text:c="11"/>[IN] string aTargetFrameName, </text:p>
  <text:p text:style-name="MethodSignatures"><text:s text:c="11"/>[IN] long nSearchFlags, </text:p>
  <text:p text:style-name="MethodSignatures"><text:s text:c="11"/>[IN] sequence &lt;com::sun::star::beans::PropertyValue[] aArgs &gt; )</text:p>
  <text:p text:style-name="Paragraph">The interesting parameters in our context is the URL that describes the resource that is loaded and the load arguments. For the target frame, pass a <text:span text:style-name="Code (in text)">&quot;_blank&quot;</text:span> and set the search flags to <text:span text:style-name="Code (in text)">0</text:span>. In most cases, existing frames are not reused.</text:p>
  <text:p text:style-name="Paragraph">The URL can be a <text:span text:style-name="Code (in text)">file:</text:span> URL, an <text:span text:style-name="Code (in text)">http:</text:span> URL, an <text:span text:style-name="Code (in text)">ftp:</text:span> URL or a <text:span text:style-name="Code (in text)">private:</text:span> URL. Locate the correct URL format in the <text:span text:style-name="Buttons/Menus">Load URL</text:span> box in the function bar of <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API. For new spreadsheet documents, a special URL scheme is used. The scheme is &quot;private:&quot;, followed by &quot;factory&quot;. The resource is &quot;scalc&quot; for <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API spreadsheet documents. For a new spreadsheet document, use <text:span text:style-name="Code (in text)">&quot;</text:span>private:factory/scalc<text:span text:style-name="Code (in text)">&quot;.</text:span></text:p>
  <text:p text:style-name="Paragraph">The load arguments are described in <text:span text:style-name="Code (in text)">[IDL:com.sun.star.document.MediaDescriptor]</text:span>. The properties <text:span text:style-name="Code (in text)">AsTemplate</text:span> and <text:span text:style-name="Code (in text)">Hidden</text:span> are <text:span text:style-name="Code (in text)">boolean</text:span> values and used for programming. If <text:span text:style-name="Code (in text)">AsTemplate</text:span> is true, the loader creates a new untitled document from the given URL. If it is false, template files are loaded for editing. If <text:span text:style-name="Code (in text)">Hidden</text:span> is <text:span text:style-name="Code (in text)">true</text:span>, the document is loaded in the background. This is useful to generate a document in the background without letting the user observe what is happening. For instance, use it to generate a document and print it out without previewing. Refer to <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev]</text:span> for other available options. This snippet loads a document in hidden mode:</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// the method getRemoteServiceManager is described in the chapter First Steps</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>mxRemoteServiceManager = this.getRemoteServiceManager(unoUrl);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// retrieve the Desktop object, we need its XComponentLoader</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>Object desktop = mxRemoteServiceManager.createInstanceWithContext(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>&quot;com.sun.star.frame.Desktop&quot;, mxRemoteContext);</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// query the XComponentLoader interface from the Desktop service</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XComponentLoader xComponentLoader = (XComponentLoader)UnoRuntime.queryInterface(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>XComponentLoader.class, desktop);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// define load properties according to com.sun.star.document.MediaDescriptor</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>/* or simply create an empty array of com.sun.star.beans.PropertyValue structs:</text:p>
  <text:p text:style-name="Code"><text:s text:c="7"/>PropertyValue[] loadProps = new PropertyValue[0]</text:p>
  <text:p text:style-name="Code"><text:s text:c="5"/>*/</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// the boolean property Hidden tells the office to open a file in hidden mode</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] loadProps = new PropertyValue[1];</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>loadProps[0] = new PropertyValue();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>loadProps[0].Name = &quot;Hidden&quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>loadProps[0].Value = new Boolean(true);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>loadUrl = &quot;file:///c:/MyCalcDocument.sxc&quot;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// load</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>return xComponentLoader.loadComponentFromURL(loadUrl, &quot;_blank&quot;, 0, loadProps); <text:s text:c="10"/></text:p>
  <text:h text:style-name="Head 3" text:level="3"><text:alphabetical-index-mark text:string-value="saving" text:key1="spreadsheet document"/>Saving Spreadsheet Documents</text:h>
  <text:h text:style-name="Head 4" text:level="4">Storing</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.frame.XStorable]Documents are storable through their interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.XStorable]</text:span>. This interface is discussed in detail in <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev]</text:span>. An <text:span text:style-name="Code (in text)">XStorable</text:span> implements these operations:</text:p>
  <text:p text:style-name="MethodSignatures">boolean <text:span text:style-name="T4">hasLocation</text:span>()</text:p>
  <text:p text:style-name="MethodSignatures">string <text:span text:style-name="T4">getLocation</text:span>()</text:p>
  <text:p text:style-name="MethodSignatures">boolean <text:span text:style-name="T4">isReadonly</text:span>()</text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="T4">store</text:span>() </text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="T4">storeAsURL</text:span>([in] string aURL, [in] sequence&lt; com::sun::star::beans::PropertyValue &gt; aArgs)</text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="T4">storeToURL</text:span>([in] string aURL, [in] sequence&lt; com::sun::star::beans::PropertyValue &gt; aArgs)</text:p>
  <text:p text:style-name="Paragraph">The method names are evident. The method <text:span text:style-name="Code (in text)">storeAsUrl()</text:span> is the exact representation of <text:span text:style-name="T5">File – Save As</text:span><text:span text:style-name="T6"> </text:span><text:span text:style-name="T1">from the </text:span><text:span text:style-name="T5">File</text:span><text:span text:style-name="T1"> menu, that is, it changes the current document location. In contrast, </text:span><text:span text:style-name="Code (in text)">storeToUrl()</text:span> stores a copy to a new location, but leaves the current document URL untouched. </text:p>
  <text:h text:style-name="Head 4" text:level="4">Exporting</text:h>
  <text:p text:style-name="Paragraph">For exporting purposes, a filter name can be passed that triggers an export to other file formats. The property needed for this purpose is the string argument <text:span text:style-name="Code (in text)">FilterName </text:span>that takes filter names defined in the configuration file:</text:p>
  <text:p text:style-name="Paragraph"><text:span text:style-name="www/ftp/email">&lt;OfficePath&gt;\share\config\registry\instance\org\openoffice\Office\TypeDetection.xml</text:span></text:p>
  <text:p text:style-name="Paragraph">In <text:span text:style-name="www/ftp/email">TypeDetection.xml</text:span> look for <text:span text:style-name="Code (in text)">&lt;Filter/&gt;</text:span> elements, their <text:span text:style-name="Code (in text)">cfg:name</text:span> attribute contains the needed strings for <text:span text:style-name="Code (in text)">FilterName</text:span>. The proper filter name for StarWriter 5.x is &quot;StarWriter 5.0&quot;, and the export format &quot;MS Word 97&quot; is also popular. This is the element in <text:span text:style-name="www/ftp/email">TypeDetection.xml </text:span>that describes the MS Excel 97 filter:</text:p>
  <text:p text:style-name="Code">&lt;Filter cfg:name=&quot;MS Excel 97&quot;&gt;</text:p>
  <text:p text:style-name="Code"><text:s text:c="3"/>&lt;Installed cfg:type=&quot;boolean&quot;&gt;true&lt;/Installed&gt; </text:p>
  <text:p text:style-name="Code"><text:s text:c="3"/>&lt;UIName cfg:type=&quot;string&quot; cfg:localized=&quot;true&quot;&gt;</text:p>
  <text:p text:style-name="Code"><text:s text:c="5"/>&lt;cfg:value xml:lang=&quot;en-US&quot;&gt;Microsoft Excel 97/2000/XP&lt;/cfg:value&gt; </text:p>
  <text:p text:style-name="Code"><text:s text:c="3"/>&lt;/UIName&gt;</text:p>
  <text:p text:style-name="Code"><text:s text:c="3"/>&lt;Data cfg:type=&quot;string&quot;&gt;5,calc_MS_Excel_97,com.sun.star.sheet.SpreadsheetDocument,,3,,0,,&lt;/Data&gt; </text:p>
  <text:p text:style-name="Code"><text:s/>&lt;/Filter&gt;</text:p>
  <text:p text:style-name="Paragraph">The following method stores a document using this filter:</text:p>
  <text:p text:style-name="Code">/** Store a document, using the MS Excel 97/2000/XP Filter </text:p>
  <text:p text:style-name="Code"><text:s/>*/</text:p>
  <text:p text:style-name="Code">protected void storeDocComponent(XComponent xDoc, String storeUrl) throws java.lang.Exception {</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XStorable xStorable = (XStorable)UnoRuntime.queryInterface(XStorable.class, xDoc);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] storeProps = new PropertyValue[1];</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>storeProps[0] = new PropertyValue();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>storeProps[0].Name = &quot;FilterName&quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>storeProps[0].Value = &quot;MS Excel 97&quot;; <text:s text:c="7"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xStorable.storeAsURL(storeUrl, storeProps); <text:s text:c="10"/></text:p>
  <text:p text:style-name="Code">} </text:p>
  <text:p text:style-name="Paragraph">If an empty array of <text:span text:style-name="Code (in text)">PropertyValue</text:span> structs is passed, the native .sxc format of <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API is used.</text:p>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="filter options" text:key1="spreadsheet document"/>Filter Options</text:h>
  <text:p text:style-name="Paragraph">Loading and saving <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API documents is described in <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev.AppEnv.HandleDocuments]</text:span>. This section lists all the filter names for spreadsheet documents and describes the filter options for text file import.</text:p>
  <text:p text:style-name="Paragraph">The filter name and options are passed on loading or saving a document in a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.PropertyValue]s</text:span>. The property <text:span text:style-name="Code (in text)">FilterName</text:span> contains the name and the property <text:span text:style-name="Code (in text)">FilterOptions</text:span> contains the filter options.</text:p>
  <table:table table:name="Table69" table:style-name="Table69">
   <table:table-column table:style-name="Table69.A"/>
   <table:table-column table:style-name="Table69.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table69.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="0" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table69.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">All filter names are case-sensitive. For compatibility reasons the filter names will not be changed. Therefore, some of the filters seem to have “curious” names.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="P5">The list of filter names (the last two columns show the possible directions of the filters):</text:p>
  <table:table table:name="Table70" table:style-name="Table70">
   <table:table-column table:style-name="Table70.A"/>
   <table:table-column table:style-name="Table70.B"/>
   <table:table-column table:style-name="Table70.C"/>
   <table:table-column table:style-name="Table70.D"/>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A1" table:value-type="string">
     <text:p text:style-name="TableHead">Filter name</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A1" table:value-type="string">
     <text:p text:style-name="TableHead">Description</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A1" table:value-type="string">
     <text:p text:style-name="TableHead">Import</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D1" table:value-type="string">
     <text:p text:style-name="TableHead">Export</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarOffice XML (Calc)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Standard XML filter</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">calc_StarOffice_XML_Calc_Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">XML filter for templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 5.0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">The binary format of StarOffice Calc 5.x</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 5.0 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarOffice Calc 5.x templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 4.0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">The binary format of StarCalc 4.x</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 4.0 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 4.x templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 3.0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">The binary format of StarCalc 3.x</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 3.0 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">StarCalc 3.x templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">HTML (StarCalc)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">HTML filter</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">calc_HTML_WebQuery</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">HTML filter for external data queries</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 97</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 97/2000/XP</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 97 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 97/2000/XP templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 95</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 5.0/95</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 5.0/95</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Different name for the same filter</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 95 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 5.0/95 templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 5.0/95 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Different name for the same filter</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 4.0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 2.1/3.0/4.0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">MS Excel 4.0 Vorlage/Template</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Microsoft Excel 2.1/3.0/4.0 templates</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Lotus</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Lotus 1-2-3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Text - txt - csv (StarCalc)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Comma separated values</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Rich Text Format (StarCalc)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">dBase</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">SYLK</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Symbolic Link</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">DIF</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">Data Interchange Format</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.A2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table70.D2" table:value-type="string">
     <text:p text:style-name="P6">●</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Filter Options for Lotus, dBase and DIF Filters</text:h>
  <text:p text:style-name="Paragraph">These filters accept a string containing the numerical index of the used character set for single-byte characters, that is, 0 for the system character set.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Filter Options for the CSV Filter</text:h>
  <text:p text:style-name="Paragraph">This filter accepts an option string containing five tokens, separated by commas. The following table shows an example string for a file with four columns of type date – number – number - number. In the table the tokens are numbered from (1) to (5). Each token is explained below.</text:p>
  <table:table table:name="Table156" table:style-name="Table156">
   <table:table-column table:style-name="Table156.A"/>
   <table:table-column table:style-name="Table156.B"/>
   <table:table-column table:style-name="Table156.C"/>
   <table:table-column table:style-name="Table156.D"/>
   <table:table-column table:style-name="Table156.E"/>
   <table:table-column table:style-name="Table156.F"/>
   <table:table-column table:style-name="Table156.G"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table156.A1" table:value-type="string">
      <text:p text:style-name="TableHead">Example Filter Options String</text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table156.A1" table:value-type="string">
      <text:p text:style-name="TableHead">Field <text:line-break/>Separator <text:line-break/>(1)</text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table156.A1" table:value-type="string">
      <text:p text:style-name="TableHead">Text Delimiter (2)</text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table156.A1" table:value-type="string">
      <text:p text:style-name="TableHead">Character Set <text:line-break/>(3)</text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table156.A1" table:value-type="string">
      <text:p text:style-name="TableHead">Number of First Line (4)</text:p>
     </table:table-cell>
     <table:table-cell table:number-columns-spanned="2">
      <table:sub-table>
       <table:table-column table:style-name="Table156.F1.1"/>
       <table:table-column table:style-name="Table156.F1.2"/>
       <table:table-row>
        <table:table-cell table:style-name="Table156.F1.1.1" table:number-columns-spanned="2" table:value-type="string">
         <text:p text:style-name="TableHead">Cell Format Codes for the four Columns <text:line-break/>(5)</text:p>
        </table:table-cell>
        <table:covered-table-cell/>
       </table:table-row>
       <table:table-row>
        <table:table-cell table:style-name="Table156.F1.1.2" table:value-type="string">
         <text:p text:style-name="TextInTable">Column</text:p>
        </table:table-cell>
        <table:table-cell table:style-name="Table156.F1.2.2" table:value-type="string">
         <text:p text:style-name="TextInTable">Code</text:p>
        </table:table-cell>
       </table:table-row>
      </table:sub-table>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="P7">File Format: <text:line-break/>Four columns<text:line-break/>date – num – num – num </text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">,</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">&quot;</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">System</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">line no. 1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">1<text:line-break/>2<text:line-break/>3<text:line-break/>4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.G2" table:value-type="string">
     <text:p text:style-name="TextInTable">YY/MM/DD = 5<text:line-break/>Standard = 1<text:line-break/>Standard = 1<text:line-break/>Standard = 1</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table156.A3" table:value-type="string">
     <text:p text:style-name="P7">Token</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.B3" table:value-type="float" table:value="44">
     <text:p text:style-name="TextInTable">44</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.B3" table:value-type="float" table:value="34">
     <text:p text:style-name="TextInTable">34</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.B3" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.B3" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table156.F1.2.2" table:number-columns-spanned="2" table:value-type="string">
     <text:p text:style-name="TextInTable">1/5/2/1/3/1/4/1</text:p>
    </table:table-cell>
    <table:covered-table-cell/>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">For the filter options above, set the PropertyValue <text:span text:style-name="Code (in text)">FilterOptions</text:span> in the load arguments to &quot;44,34,0,1,1/5/2/1/3/1/4/1&quot;. There are a number of possible settings for the five tokens.</text:p>
  <text:ordered-list text:style-name="L2">
   <text:list-item>
    <text:p text:style-name="P8">Field separator(s) as ASCII values. Multiple values are separated by the slash sign (“/”), that is, <text:s/>if the values are separated by semicolons and horizontal tabulators, the token would be 59/9. To treat several consecutive separators as one, the four letters <text:span text:style-name="Code (in text)">/MRG</text:span> have to be appended to the token. If the file contains fixed width fields, the three letters <text:span text:style-name="Code (in text)">FIX</text:span> are used.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P8">The text delimiter as ASCII value, that is, 34 for double quotes and 39 for single quotes.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P8">The character set used in the file as described above.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P8">Number of the first line to convert. The first line in the file has the number 1.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P8">Cell format of the columns. The content of this token depends on the value of the first token.</text:p>
   </text:list-item>
  </text:ordered-list>
  <text:unordered-list text:style-name="L3">
   <text:list-item>
    <text:p text:style-name="P9">If value separators are used, the form of this token is <text:span text:style-name="Emphasis">column/format</text:span>[<text:span text:style-name="Emphasis">/column/format/</text:span>...] where <text:span text:style-name="Emphasis">column</text:span> is the number of the column, with 1 being the leftmost column. The <text:s/><text:span text:style-name="Emphasis">format</text:span> is explained below.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P9">If the first token is <text:span text:style-name="Code (in text)">FIX</text:span> it has the fo<text:span text:style-name="T7">rm </text:span><text:span text:style-name="T8">start/format</text:span><text:span text:style-name="T7">[</text:span><text:span text:style-name="T8">/start/format/...</text:span><text:span text:style-name="T7">], w</text:span>here <text:span text:style-name="Emphasis">start</text:span> is the number of the first character for this field, with 0 being the leftmost character in a line. The <text:span text:style-name="Emphasis">format</text:span> is explained below.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P10">Format specifies which cell format should be used for a field during import:</text:p>
  <table:table table:name="Table157" table:style-name="Table157">
   <table:table-column table:style-name="Table157.A"/>
   <table:table-column table:style-name="Table157.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table157.A1" table:value-type="string">
      <text:p text:style-name="P11">Format Code</text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table157.B1" table:value-type="string">
      <text:p text:style-name="TableHead">Meaning</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">Standard</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">Text</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="3">
     <text:p text:style-name="TextInTable">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">MM/DD/YY</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="4">
     <text:p text:style-name="TextInTable">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">DD/MM/YY</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="5">
     <text:p text:style-name="TextInTable">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">YY/MM/DD</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="6">
     <text:p text:style-name="TextInTable">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">-</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="7">
     <text:p text:style-name="TextInTable">7</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">-</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="8">
     <text:p text:style-name="TextInTable">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">-</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="9">
     <text:p text:style-name="TextInTable">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">ignore field (do not import)</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table157.A2" table:value-type="float" table:value="10">
     <text:p text:style-name="TextInTable">10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table157.B2" table:value-type="string">
     <text:p text:style-name="P7">US-English</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P10">The type code 10 indicates that the content of a field is US-English. This is useful if a field contains decimal numbers that are formatted according to the US system (using “.” as decimal separator and “,” as thousands separator). Using 10 as a format specifier for this field tells <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API to correctly interpret its numerical content, even if the decimal and thousands separator in the current language are different.</text:p>
  <text:h text:style-name="Head 3" text:level="3"><text:alphabetical-index-mark text:string-value="printing" text:key1="spreadsheet document"/>Printing Spreadsheet Documents</text:h>
  <text:h text:style-name="Head 4" text:level="4">Printer and Print Job <text:alphabetical-index-mark text:string-value="print settings" text:key1="printing"/>Settings</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.view.XPrintable;com.sun.star.view.PrinterDescriptor;com.sun.star.view.PrintOptions]Printing is a common office functionality. The chapter <text:s/><text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev]</text:span> provides in-depth information about it. The spreadsheet document implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.XPrintable]</text:span> interface for printing. It consists of three methods:</text:p>
  <text:p text:style-name="MethodSignatures">sequence&lt; com::sun::star::beans::PropertyValue &gt; <text:span text:style-name="T6">getPrinter</text:span>()</text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="T6">setPrinter</text:span>([in] sequence&lt; com::sun::star::beans::PropertyValue &gt; aPrinter)</text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="T6">print</text:span>([in] sequence&lt; com::sun::star::beans::PropertyValue &gt; xOptions)</text:p>
  <text:p text:style-name="Paragraph">The following code is used with a given document xDoc to print to the standard printer without any settings:</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// query the XPrintable interface from your document</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XPrintable xPrintable = (XPrintable)UnoRuntime.queryInterface(XPrintable.class, xDoc);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// create an empty printOptions array</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] printOpts = new PropertyValue[0];</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>// kick off printing<text:tab-stop/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xPrintable.<text:span text:style-name="CODE Emphasis">print</text:span>(printOpts);</text:p>
  <text:p text:style-name="Paragraph">There are two groups of properties involved in general printing. The first one is used with <text:span text:style-name="Code (in text)">setPrinter()</text:span> and <text:span text:style-name="Code (in text)">getPrinter(),</text:span> and controls the printer, and the second is passed to <text:span text:style-name="Code (in text)">print()</text:span> and controls the print job.</text:p>
  <text:p text:style-name="Paragraph"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PrinterDescriptor]</text:span> comprises the properties for the printer:</text:p>
  <table:table table:name="Table138" table:style-name="Table138">
   <table:table-column table:style-name="Table138.A"/>
   <table:table-column table:style-name="Table138.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table138.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PrinterDescriptor]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:Name]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7">string — Specifies the name of the printer queue to be used.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:PaperOrientation]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PaperOrientation]</text:span> Specifies the orientation of the paper. </text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:PaperFormat]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PaperFormat]</text:span> Specifies a predefined paper size or if the paper size is a user-defined size.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:PaperSize]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.awt.Size]</text:span> Specifies the size of the paper in 100th mm.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:IsBusy]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Indicates if the printer is busy.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:CanSetPaperOrientation]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Indicates if the printer allows changes to PaperOrientation.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:CanSetPaperFormat]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Indicates if the printer allows changes to PaperFormat.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table138.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrinterDescriptor:CanSetPaperSize]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table138.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Indicates if the printer allows changes to PaperSize.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PrintOptions]</text:span> contains the following possibilities for a print job:</text:p>
  <table:table table:name="Table139" table:style-name="Table139">
   <table:table-column table:style-name="Table139.A"/>
   <table:table-column table:style-name="Table139.B"/>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A1" table:number-columns-spanned="2" table:value-type="string">
     <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.PrintOptions]</text:span></text:p>
    </table:table-cell>
    <table:covered-table-cell/>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrintOptions:CopyCount]</text:span> </text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table139.B2" table:value-type="string">
     <text:p text:style-name="P7">short — Specifies the number of copies to print.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrintOptions:FileName]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table139.B2" table:value-type="string">
     <text:p text:style-name="P7">string — If set, specifies the name of the file to print to.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrintOptions:Collate]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table139.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Advises the printer to collate the pages of the copies. If true, a whole document is printed prior to the next copy, otherwise the page copies are completed together.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrintOptions:Sort]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table139.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Advises the printer to sort the pages of the copies.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table139.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.view.PrintOptions:Pages]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table139.B2" table:value-type="string">
     <text:p text:style-name="P7">string — Specifies the pages to print with the same format as in the print dialog of the GUI, for example, &quot;1, 3, 4-7, 9-&quot;.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The following method uses <text:span text:style-name="Code (in text)">PrinterDescriptor</text:span> and <text:span text:style-name="Code (in text)">PrintOptions</text:span> to print to a special printer, and preselect the pages to print.</text:p>
  <text:p text:style-name="Code">protected void printDocComponent(XComponent xDoc) throws java.lang.Exception {</text:p>
  <text:p text:style-name="Code"><text:tab-stop/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>XPrintable xPrintable = (XPrintable)UnoRuntime.queryInterface(XPrintable.class, xDoc);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] printerDesc = new PropertyValue[1];</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printerDesc[0] = new PropertyValue();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printerDesc[0].Name = &quot;Name&quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printerDesc[0].Value = &quot;5D PDF Creator&quot;; <text:s text:c="7"/></text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>xPrintable.setPrinter(printerDesc); <text:s text:c="7"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>PropertyValue[] printOpts = new PropertyValue[1];</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printOpts[0] = new PropertyValue();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printOpts[0].Name = &quot;Pages&quot;;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>printOpts[0].Value = &quot;3-5,7&quot;; <text:s text:c="7"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/></text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xPrintable.print(printOpts);</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="page breaks" text:key1="printing"/>Page Breaks and <text:alphabetical-index-mark text:string-value="scaling" text:key1="printing"/>Scaling for Printout</text:h>
  <text:p text:style-name="Paragraph">Manual page breaks can be inserted and removed using the property <text:span text:style-name="Code (in text)">IsStartOfNewPage</text:span> of the services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumn]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRow]</text:span>. For details, refer to the section about page breaks in the chapter <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet]</text:span>.</text:p>
  <text:p text:style-name="Paragraph">To reduce the page size of a sheet so that the sheet fits on a fixed number of printout pages, use the properties <text:span text:style-name="Code (in text)">PageScale</text:span> and <text:span text:style-name="Code (in text)">ScaleToPages</text:span> of the current page style. Both of the properties are <text:span text:style-name="Code (in text)">short</text:span> numbers. The <text:span text:style-name="Code (in text)">PageScale</text:span> property expects a percentage and <text:span text:style-name="Code (in text)">ScaleToPages</text:span> is the number of pages the printout is to fit. The page style is available through the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.XStyleFamiliesSupplier]</text:span> of the document component, and is described in the chapter <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.OverallFeatures.Styles]</text:span>.</text:p>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="print areas" text:key1="printing"/>Print Areas</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XPrintAreas]The Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XPrintAreas]</text:span> is available at spreadsheets. It provides access to the addresses of all printable cell ranges, represented by a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> structs.</text:p>
  <table:table table:name="Table154" table:style-name="Table154">
   <table:table-column table:style-name="Table154.A"/>
   <table:table-column table:style-name="Table154.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table154.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XPrintAreas]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:getPrintAreas]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Returns the print areas of the sheet.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:setPrintAreas]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Sets the print areas of the sheet.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:getPrintTitleColumns]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Returns true if the title columns are repeated on all subsequent print pages to the right.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:setPrintTitleColumns]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Specifies if the title columns are repeated on all subsequent print pages to the right.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:getTitleColumns]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Returns the range of columns that are marked as title columns.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:setTitleColumns]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Sets the range of columns marked as title columns.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:getPrintTitleRows]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Returns true if the title rows are repeated on all subsequent print pages to the bottom.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:setPrintTitleRows]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Specifies if the title rows are repeated on all subsequent print pages to the bottom. <text:s/></text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:getTitleRows]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Returns the range of rows that are marked as title rows.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table154.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XPrintAreas:setTitleRows]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table154.B2" table:value-type="string">
     <text:p text:style-name="P7">Sets the range of rows marked as title rows.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 2" text:level="2">Working with Spreadsheet Documents</text:h>
  <text:h text:style-name="Head 3" text:level="3">Document Structure</text:h>
  <text:h text:style-name="Head 4" text:level="4">Spreadsheet Document</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SpreadsheetDocument;com.sun.star.sheet.Spreadsheets]The whole spreadsheet document is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetDocument]</text:span>. It implements interfaces that provide access to the container of spreadsheets and methods to modify the document wide contents, for instance, data consolidation.</text:p>
  <table:table table:name="Table66" table:style-name="Table66">
   <table:table-column table:style-name="Table66.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table66.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr5" draw:name="Frame21" text:anchor-type="paragraph" svg:width="12.719cm" fo:min-height="19.503cm" draw:z-index="6">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr6" draw:name="UML diagram of com.sun.star.sheet.SpreadsheetDocument" text:anchor-type="paragraph" svg:x="0.101cm" svg:y="0cm" svg:width="12.539cm" svg:height="19.121cm" draw:z-index="7" xlink:href="SpreadsheetDocumentUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SpreadsheetDocument service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration1" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.2</text:sequence>: Spreadsheet Document</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A spreadsheet document contains a collection of spreadsheets with at least one spreadsheet, represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheets]</text:span>. The method <text:span text:style-name="Code (in text)">getSheets()</text:span> of the Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheetDocument]</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheets]</text:span> for accessing the container of sheets.</text:p>
  <table:table table:name="Table79" table:style-name="Table79">
   <table:table-column table:style-name="Table79.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table79.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr7" draw:name="Frame3" text:anchor-type="paragraph" svg:width="13.037cm" fo:min-height="13.951cm" draw:z-index="11">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr6" draw:name="UML diagram of com.sun.star.sheet.Spreadsheets" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="12.989cm" svg:height="13.57cm" draw:z-index="12" xlink:href="SpreadsheetsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the  com.sun.star.sheet.Spreadsheets service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration2" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.3</text:sequence>: Spreadsheets Container</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">When the spreadsheet container is retrieved from a document using its <text:span text:style-name="Code (in text)">getSheets()</text:span> method, it is possible to access the sheets in three different ways:</text:p>
  <text:p text:style-name="TitledListHead">by index</text:p>
  <text:p text:style-name="TitledListBody">Using the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> allows access to spreadsheets by their index.</text:p>
  <text:p text:style-name="TitledListHead">with an enumeration</text:p>
  <text:p text:style-name="TitledListBody">Using the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetsEnumeration]</text:span> spreadsheets can be accessed as an enumeration.</text:p>
  <text:p text:style-name="TitledListHead">by name</text:p>
  <text:p text:style-name="TitledListBody">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheets]</text:span> is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameContainer]</text:span> and therefore contains all methods for accessing the sheets with a name. It is possible to <text:span text:style-name="Emphasis">get</text:span> a spreadsheet using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span>) to <text:span text:style-name="Emphasis">replace</text:span> it with another sheet (interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameReplace]</text:span>), and to <text:span text:style-name="Emphasis">insert</text:span> and <text:span text:style-name="Emphasis">remove</text:span> a spreadsheet (interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameContainer]</text:span>).</text:p>
  <text:p text:style-name="Paragraph">The following two helper methods demonstrate how spreadsheets are accessed by their indexes and their names: [SOURCE:Spreadsheet/SpreadsheetDocHelper.java]</text:p>
  <text:p text:style-name="Code">/** Returns the spreadsheet with the specified index (0-based).</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param xDocument <text:s/>The XSpreadsheetDocument interface of the document.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nIndex <text:s/>The index of the sheet.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>The XSpreadsheet interface of the sheet. */</text:p>
  <text:p text:style-name="Code">public com.sun.star.sheet.XSpreadsheet getSpreadsheet(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheetDocument xDocument, int nIndex) {</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Collection of sheets</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheets xSheets = xDocument.getSheets();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet = null;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>try {</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.container.XIndexAccess xSheetsIA = (com.sun.star.container.XIndexAccess)</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.container.XIndexAccess.class, xSheets);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>xSheet = (com.sun.star.sheet.XSpreadsheet) xSheetsIA.getByIndex(nIndex);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>} catch (Exception ex) {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>return xSheet;</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:p text:style-name="P12"/>
  <text:p text:style-name="Code">/** Returns the spreadsheet with the specified name.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param xDocument <text:s/>The XSpreadsheetDocument interface of the document.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param aName <text:s/>The name of the sheet.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>The XSpreadsheet interface of the sheet. */</text:p>
  <text:p text:style-name="Code">public com.sun.star.sheet.XSpreadsheet getSpreadsheet(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheetDocument xDocument,</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>String aName) {</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Collection of sheets</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheets xSheets = xDocument.getSheets();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet = null;</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>try {</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.container.XNameAccess xSheetsNA = (com.sun.star.container.XNameAccess)</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.container.XNameAccess.class, xSheets);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>xSheet = (com.sun.star.sheet.XSpreadsheet) xSheetsNA.<text:span text:style-name="CODE Emphasis">getByName</text:span>(aName);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>} catch (Exception ex) {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>return xSheet;</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheets]</text:span> contains additional methods that use the name of spreadsheets to add new sheets, and to move and copy them:</text:p>
  <table:table table:name="Table147" table:style-name="Table147">
   <table:table-column table:style-name="Table147.A"/>
   <table:table-column table:style-name="Table147.B"/>
   <table:table-row>
    <table:table-cell table:style-name="Table147.A1" table:number-columns-spanned="2" table:value-type="string">
     <text:p text:style-name="TableHead"><text:s/>Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheets]</text:span> </text:p>
    </table:table-cell>
    <table:covered-table-cell/>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table147.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSpreadsheets:insertNewByName]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table147.B2" table:value-type="string">
     <text:p text:style-name="P7">Creates a new empty spreadsheet with the specified name and inserts it at the specified position.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table147.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSpreadsheets:moveByName]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table147.B2" table:value-type="string">
     <text:p text:style-name="P7">Moves the spreadsheet with the specified name to a new position.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table147.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSpreadsheets:copyByName]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table147.B2" table:value-type="string">
     <text:p text:style-name="P7">Creates a copy of a spreadsheet, renames it and inserts it at a new position.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The method below shows how a new spreadsheet is inserted into the spreadsheet collection of a document with the specified name. [SOURCE:Spreadsheet/SpreadsheetDocHelper.java]</text:p>
  <table:table table:name="Table65" table:style-name="Table65">
   <table:table-column table:style-name="Table65.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">/** Inserts a new empty spreadsheet with the specified name.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xDocument <text:s/>The XSpreadsheetDocument interface of the document.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aName <text:s/>The name of the new sheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param nIndex <text:s/>The insertion index.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>The XSpreadsheet interface of the new sheet.</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">public com.sun.star.sheet.XSpreadsheet insertSpreadsheet(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheetDocument xDocument,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aName, short nIndex ) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Collection of sheets</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheets xSheets = xDocument.getSheets();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet = null;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>try {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xSheets.<text:span text:style-name="CODE Emphasis">insertNewByName</text:span>(aName, nIndex);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xSheet = xSheets.getByName( aName );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>} catch (Exception ex) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>return xSheet;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="P13" text:level="4">Spreadsheet Services - Overview</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.Spreadsheet;com.sun.star.sheet.SheetCell;com.sun.star.sheet.SheetCellRange;com.sun.star.sheet.SheetCellRanges;com.sun.star.table.TableColumn;com.sun.star.table.TableRow]The previous section introduced the organization of the spreadsheets in a document and how they can be handled. This section discusses the spreadsheets themselves. The following illustration provides an overview about the main API objects that can be used in a <text:alphabetical-index-mark text:string-value="services" text:key1="spreadsheet document"/>spreadsheet.</text:p>
  <table:table table:name="Table53" table:style-name="Table53">
   <table:table-column table:style-name="Table53.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table53.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame8" text:anchor-type="paragraph" svg:y="0cm" svg:width="14.506cm" fo:min-height="9.313cm" draw:z-index="102">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="Main Spreadsheet Services" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="14.439cm" svg:height="8.931cm" draw:z-index="103" xlink:href="SpreadsheetOverview.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>Overview graphic showing the main Spreadsheet services</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration3" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.4</text:sequence>: Main Spreadsheet Services</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The main services in a spreadsheet are <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheet]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span>, the cell service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span>, the collection of cell ranges <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span> and the services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumn]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRow]</text:span>. An overview of the capabilities of these services is provided below.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Capabilities of Spreadsheet</text:h>
  <text:p text:style-name="Paragraph">The spreadsheet is a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheet]</text:span> service that includes the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span>, that is, a spreadsheet is a cell range with additional capabilities concerning the entire sheet:</text:p>
  <table:table table:name="Table132" table:style-name="Table132">
   <table:table-column table:style-name="Table132.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table132.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr9" draw:name="Frame4" text:anchor-type="paragraph" svg:y="0cm" svg:width="11.845cm" fo:min-height="14.303cm" draw:z-index="18">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr6" draw:name="UML diagram of com.sun.star.sheet.Spreadsheet" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.799cm" svg:height="13.921cm" draw:z-index="21" xlink:href="SpreadsheetUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.Spreadsheet service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration4" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.5</text:sequence>: Spreadsheet</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:unordered-list text:style-name="L4">
   <text:list-item>
    <text:p text:style-name="P14">It can be named using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P14">It has interfaces for sheet analysis. Data pilot tables, sheet outlining, sheet auditing (detective) and scenarios all are controlled from the spreadsheet object. The corresponding interfaces are <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTablesSupplier]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XScenariosSupplier]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOutline]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAuditing]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L5">
   <text:list-item>
    <text:p text:style-name="P15">Cells can be inserted, and entire cell ranges can be removed, moved or copied on the spreadsheet level using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeMovement]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P15">Drawing elements in a spreadsheet are part of the draw page available through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.drawing.XDrawPageSupplier]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P15">Certain sheet printing features are accessed at the spreadsheet. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XPrintAreas]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetPageBreak]</text:span> are used to get page breaks and control print areas.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P15">The spreadsheet maintains charts. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableChartsSupplier]</text:span> controls charts in the spreadsheet.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P15">All cell annotations can be retrieved on the spreadsheet level with <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotationsSupplier]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P15">A spreadsheet can be permanently protected from changes through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XProtectable]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 5" text:level="5">Capabilities of SheetCellRange</text:h>
  <text:p text:style-name="Paragraph">The spreadsheet, as well as the <text:alphabetical-index-mark-start text:id="IMark36348004" text:key1="spreadsheet document"/>cell range<text:alphabetical-index-mark-end text:id="IMark36348004"/>s in a spreadsheet are <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span> services. A <text:span text:style-name="Code (in text)">SheetCellRange</text:span> is a rectangular range of calculation cells that includes the following services:</text:p>
  <table:table table:name="Table158" table:style-name="Table158">
   <table:table-column table:style-name="Table158.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table158.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr9" draw:name="Frame5" text:anchor-type="paragraph" svg:y="0cm" svg:width="12.187cm" fo:min-height="19.651cm" draw:z-index="22">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr10" draw:name="UML diagram of com.sun.star.sheet.SheetCellRange services" text:anchor-type="paragraph" svg:width="12.019cm" svg:height="19.069cm" draw:z-index="104" xlink:href="SheetCellRangeUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the supported services of com.sun.star.sheet.SheetCellRange</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration5" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.6</text:sequence>: Services supported by SheetCellRange</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The interfaces supported by a SheetCellRange are depicted in the following illustration:</text:p>
  <table:table table:name="Table55" table:style-name="Table55">
   <table:table-column table:style-name="Table55.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table55.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr11" draw:name="Frame11" text:anchor-type="paragraph" svg:y="0.019cm" svg:width="12.093cm" style:rel-width="68%" fo:min-height="15.131cm" draw:z-index="105">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr12" draw:name="UML diagram of com.sun.star.sheet.SheetCellRange interfaces" text:anchor-type="paragraph" svg:x="0cm" svg:width="12.093cm" svg:height="17.679cm" draw:z-index="106" xlink:href="SheetCellRangeUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the interfaces of the com.sun.star.sheet.SheetCellRange service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration6" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.7</text:sequence>: SheetCellRange Interfaces</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">A <text:span text:style-name="Code (in text)">SheetCellRange</text:span> has the following capabilities:</text:p>
  <text:unordered-list text:style-name="L6">
   <text:list-item>
    <text:p text:style-name="P16">Supplies cells and sub-ranges of cells, as well as rows and columns. It has the interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRange]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XColumnRowRange]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Performs calculations with a <text:span text:style-name="Code (in text)">SheetCellRange</text:span>. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOperation]</text:span> is for aggregate operations, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XMultipleOperation]</text:span> copies formulas adjusting their cell references, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSubTotalCalculatable]</text:span> applies and removes sub totals, and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XArrayFormulaRange]</text:span> handles array formulas.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Formats cells in a range. The settings affect all cells in the range. There are cell properties, character properties and paragraph properties for formatting purposes. Additionally, a SheetCellRange supports auto formats with <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XAutoFormattable]</text:span> and the content of the cells can be indented using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XIndent]</text:span>. The interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellFormatRangesSupplier]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XUniqueCellFormatRangesSupplier]</text:span> obtain enumeration of cells that differ in formatting.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Works with the data in a cell range through a sequence of sequences of <text:span text:style-name="Code (in text)">any </text:span>that maps to the two-dimensional cell array of the range. This array is available through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeData]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Fills a cell range with data series automatically through its interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellSeries]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Imports data from a database using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XImportable]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Searches and replaces cell contents using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XSearchable]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Perform queries for cell contents, such as formula cells, formula result types, or empty cells. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangesQuery]</text:span> of the included <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetRangesQuery]</text:span> service is responsible for this task.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Merges cells into a single cell through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XMergeable]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Sorts and filters the content of a SheetCellRange, using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XSortable]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterable]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterableEx]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Provides its unique range address in the spreadsheet document, that is, the start column and row, end column and row, and the sheet where it is located. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeAddressable:getRangeAddress]()</text:span> returns the corresponding address description struct <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P16">Charts can be based on a <text:span text:style-name="Code (in text)">SheetCellRange</text:span>, because it supports <text:span text:style-name="Code (in text)">[IDL:com.sun.star.chart.XChartDataArray]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 5" text:level="5">Capabilities of <text:alphabetical-index-mark text:string-value="sheet cell" text:key1="spreadsheet document"/>SheetCell</text:h>
  <text:p text:style-name="P5">A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span> is the base unit of [PRODUCTNAME] Calc tables. Values, formulas and text required for calculation jobs are all written into sheet cells. The <text:span text:style-name="Code (in text)">SheetCell</text:span> includes the following services:</text:p>
  <table:table table:name="Table137" table:style-name="Table137">
   <table:table-column table:style-name="Table137.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table137.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame6" text:anchor-type="paragraph" svg:y="0cm" svg:width="11.534cm" fo:min-height="20.043cm" draw:z-index="107">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetCell services" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.479cm" svg:height="19.66cm" draw:z-index="108" xlink:href="SheetCell.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram shwoing the supported services of a com.sun.star.sheet.SheetCell</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration7" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.8</text:sequence>: SheetCell</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="P17">The <text:span text:style-name="Code (in text)">SheetCell</text:span> exports the following interfaces:</text:p>
  <table:table table:name="Table62" table:style-name="Table62">
   <table:table-column table:style-name="Table62.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table62.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr13" draw:name="Frame9" text:anchor-type="paragraph" svg:width="12.123cm" fo:min-height="10.031cm" draw:z-index="23">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr14" draw:name="UML diagram of com.sun.star.sheet.SheetCell interfaces" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="12.04cm" svg:height="9.65cm" draw:z-index="24" xlink:href="SheetCellInterfaces.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the interfasces of the com.sun.star.sheet.SheetCell service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration8" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.9</text:sequence>: SheetCell Interfaces</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">SheetCell</text:span> service has the following capabilities:</text:p>
  <text:unordered-list text:style-name="L7">
   <text:list-item>
    <text:p text:style-name="P18">It can access the cell content. It can contain numeric <text:span text:style-name="Emphasis">values</text:span> that are used for calculations, <text:span text:style-name="Emphasis">formulas</text:span> that operate on these values, and <text:span text:style-name="Emphasis">text</text:span> supporting full-featured formatting and hyperlink text fields. The access to the cell values and formulas is provided through the <text:span text:style-name="Code (in text)">SheetCell</text:span> parent service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.Cell]</text:span>. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCell]</text:span> is capable of manipulating the values and formulas in a cell. For text, the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.Text]</text:span> with the main interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XText]</text:span> is available at a <text:span text:style-name="Code (in text)">SheetCell.</text:span> Its text fields are accessed through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XTextFieldsSupplier]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P18">A <text:span text:style-name="Code (in text)">SheetCell</text:span> is a special case of a <text:span text:style-name="Code (in text)">SheetCellRange</text:span>. As such, it has all capabilities of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span> described above.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P18">It can have an annotation: <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotationAnchor]</text:span>. </text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P18">It can provide its unique cell address in the spreadsheet document, that is, its column, row and the sheet it is located in. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellAddressable:getCellAddress]()</text:span> returns the appropriate <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellAddress]</text:span> struct.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P18">It can be locked temporarily against user interaction with <text:span text:style-name="Code (in text)">[IDL:com.sun.star.document.XActionLockable]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 5" text:level="5">Capabilities of SheetCellRanges Container</text:h>
  <text:p text:style-name="Paragraph">The container of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span> is used where several cell ranges have to be handled at once for cell query results and other situations. The <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> service includes cell, paragraph and character property services, and it offers a query option:</text:p>
  <table:table table:name="Table29" table:style-name="Table29">
   <table:table-column table:style-name="Table29.A"/>
   <table:table-row table:style-name="Table29.1">
    <table:table-cell table:style-name="Table29.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame13" text:anchor-type="paragraph" svg:width="11.532cm" fo:min-height="14.642cm" draw:z-index="25">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr16" draw:name="UML diagram of com.sun.star.sheet.SheetCellRanges" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.471cm" svg:height="14.259cm" draw:z-index="26" xlink:href="SheetCellRangesUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SheetCellRanges service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration9" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.10</text:sequence>: Services of SheetCellRanges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The interfaces of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span> are element accesses for the ranges in the <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> container. These interfaces are discussed below.</text:p>
  <table:table table:name="Table54" table:style-name="Table54">
   <table:table-column table:style-name="Table54.A"/>
   <table:table-row table:style-name="Table54.1">
    <table:table-cell table:style-name="Table54.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame53" text:anchor-type="paragraph" svg:width="12.173cm" fo:min-height="13.903cm" draw:z-index="27">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetCellRanges interfaces" text:anchor-type="paragraph" svg:x="0.101cm" svg:y="0cm" svg:width="12.1cm" svg:height="13.42cm" draw:z-index="82" xlink:href="SheetCellRangesUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram shwoing the interfaces of the com.sun.star.sheet.SheetCellRanges service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration10" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.11</text:sequence>: Implemented interfaces of SheetCellRanges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P19">The <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> container has the following capabilities:</text:p>
  <text:unordered-list text:style-name="L8">
   <text:list-item>
    <text:p text:style-name="P20">It can be formatted using the character, paragraph and cell property services it includes.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L9">
   <text:list-item>
    <text:p text:style-name="P21">It yields independent cell ranges through the element access interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P21">It can access, replace, append and remove ranges by <text:span text:style-name="Emphasis">name</text:span> through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameContainer]</text:span></text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P21">It can add new ranges to <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> by their <text:span text:style-name="Emphasis">address descriptions, </text:span>access the ranges by <text:span text:style-name="Emphasis">index,</text:span> and obtain the <text:span text:style-name="Emphasis">cells</text:span> in the ranges. This is possible through the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRangeContainer]</text:span> that was originally based on <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span>. The <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> maintain a sub-container of all cells in the ranges that are not empty, obtainable through the <text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetCellRanges:getCells]() </text:span>method.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P21">It can enumerate the ranges using <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L6">
   <text:list-item>
    <text:p text:style-name="P16">It can query the ranges for certain cell contents, such as formula cells, formula result types or empty cells. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangesQuery]</text:span> of the included <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetRangesQuery]</text:span> service is responsible for this task.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L9">
   <text:list-item>
    <text:p text:style-name="P21">The <text:span text:style-name="Code (in text)">SheetCellRanges</text:span> supports selected <text:span text:style-name="Code (in text)">SheetCellRange</text:span> features, such as searching and replacing, indenting, sheet operations and charting.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 5" text:level="5">Capabilities of <text:alphabetical-index-mark text:string-value="columns" text:key1="spreadsheet document"/>Columns and <text:alphabetical-index-mark text:string-value="rows" text:key1="spreadsheet document"/>Rows</text:h>
  <text:p text:style-name="Paragraph">All cell ranges are organized in columns and rows, therefore column and row containers are retrieved from a spreadsheet, as well as from sub-ranges of a spreadsheet through <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XColumnRowRange]</text:span>. These containers are <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumns]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRows]</text:span>. Both containers support index and enumeration access. Only the <text:span text:style-name="Code (in text)">TableColumns</text:span> supports name access to the single columns and rows (<text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumn]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRow]</text:span>) of a <text:span text:style-name="Code (in text)">SheetCellRange</text:span>.</text:p>
  <text:p text:style-name="Paragraph">The following UML charts show table columns and rows. The first chart shows columns:</text:p>
  <table:table table:name="Table159" table:style-name="Table159">
   <table:table-column table:style-name="Table159.A"/>
   <table:table-row table:style-name="Table159.1">
    <table:table-cell table:style-name="Table159.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame54" text:anchor-type="paragraph" svg:y="0cm" svg:width="13.025cm" fo:min-height="11.513cm" draw:z-index="83">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.TableColumns" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.959cm" svg:height="11.13cm" draw:z-index="84" xlink:href="TableColumnsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.TableColumns service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration11" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.12</text:sequence>: Collection of table columns</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P5">The collection of table rows differs from the collection of columns, that is, it does not support <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span>:</text:p>
  <table:table table:name="Table160" table:style-name="Table160">
   <table:table-column table:style-name="Table160.A"/>
   <table:table-row table:style-name="Table160.1">
    <table:table-cell table:style-name="Table160.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame55" text:anchor-type="paragraph" svg:width="13.03cm" fo:min-height="11.513cm" draw:z-index="85">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.TableRows" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.959cm" svg:height="11.13cm" draw:z-index="86" xlink:href="TableRowsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.TableRows service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration12" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.13</text:sequence>: Collection of table rows</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The services for table rows and columns control the table structure and grid size of a cell range:</text:p>
  <text:unordered-list text:style-name="L10">
   <text:list-item>
    <text:p text:style-name="P22">The containers for columns and rows have methods to insert and remove columns, and rows by index in their main interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableRows]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableColumns]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L11">
   <text:list-item>
    <text:p text:style-name="P23">The services <text:span text:style-name="Code (in text)">TableColumn</text:span> and <text:span text:style-name="Code (in text)">TableRow</text:span> have properties to adjust their column width and row height, toggle their visibility, and set page breaks.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 4" text:level="4">Spreadsheet</text:h>
  <text:p text:style-name="Paragraph">A spreadsheet is a cell range with additional interfaces and is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheet]</text:span>.</text:p>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="properties" text:key1="spreadsheet document"/>Properties of Spreadsheet</text:h>
  <text:p text:style-name="Paragraph">The properties of a spreadsheet deal with its visibility and its page style:</text:p>
  <table:table table:name="Table99" table:style-name="Table99">
   <table:table-column table:style-name="Table99.A"/>
   <table:table-column table:style-name="Table99.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table99.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheet]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table99.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.Spreadsheet:IsVisible]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table99.B2" table:value-type="string">
     <text:p text:style-name="P7">boolean — Determines if the sheet is visible in the GUI.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table99.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.Spreadsheet:PageStyle]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table99.B2" table:value-type="string">
     <text:p text:style-name="P7">Contains the name of the page style of this spreadsheet. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.OverallFeatures.Styles]</text:span> for details about styles.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="naming" text:key1="spreadsheet document"/>Naming</text:h>
  <text:p text:style-name="Paragraph">The spreadsheet interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span> obtains and changes the name of the spreadsheet, and uses it to get a spreadsheet from the spreadsheet collection. Refer to <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.Document]</text:span>.</text:p>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="inserting cells" text:key1="spreadsheet document"/>Inserting Cells, <text:alphabetical-index-mark text:string-value="moving cell ranges" text:key1="spreadsheet document"/>Moving and <text:alphabetical-index-mark text:string-value="copying cell ranges" text:key1="spreadsheet document"/>Copying Cell Ranges</text:h>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeMovement]</text:span> of the <text:span text:style-name="Code (in text)">Spreadsheet</text:span> service supports <text:span text:style-name="Emphasis">inserting</text:span> and <text:span text:style-name="Emphasis">removing</text:span> cells from a spreadsheet, and <text:span text:style-name="Emphasis">copying</text:span> and <text:span text:style-name="Emphasis">moving</text:span> cell contents. When cells are copied or moved, the relative references of all formulas are updated automatically. The sheet index included in the source range addresses should be equal to the index of the sheet of this interface.</text:p>
  <table:table table:name="Table151" table:style-name="Table151">
   <table:table-column table:style-name="Table151.A"/>
   <table:table-column table:style-name="Table151.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table151.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead"><text:s/>Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeMovement]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table151.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XCellRangeMovement:insertCells]]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table151.B2" table:value-type="string">
     <text:p text:style-name="P7">Inserts a range of empty cells at a specific position. The direction of the insertion is determined by the parameter nMode (type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellInsertMode]</text:span>).</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table151.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XCellRangeMovement:removeRange]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table151.B2" table:value-type="string">
     <text:p text:style-name="P7">Deletes a range of cells from the spreadsheet. The parameter <text:span text:style-name="Code (in text)">nMode</text:span> (type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellDeleteMode]</text:span>) determines how remaining cells will be moved.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table151.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XCellRangeMovement:copyRange]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table151.B2" table:value-type="string">
     <text:p text:style-name="P7">Copies the contents of a cell range to another place in the document.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table151.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">IDLS:com.sun.star.sheet.XCellRangeMovement:moveRange]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table151.B2" table:value-type="string">
     <text:p text:style-name="P7">Moves the contents of a cell range to another place in the document. Deletes all contents of the source range.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The following example copies a cell range to another location in the sheet. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table67" table:style-name="Table67">
   <table:table-column table:style-name="Table67.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">/** Copies a cell range to another place in the sheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s/>The XSpreadsheet interface of the spreadsheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aDestCell <text:s/>The address of the first cell of the destination range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aSourceRange <text:s/>The source range address.</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">public void doMovementExample(com.sun.star.sheet.XSpreadsheet xSheet,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.table.CellAddress aDestCell, com.sun.star.table.CellRangeAddress aSourceRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeMovement xMovement = (com.sun.star.sheet.XCellRangeMovement)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeMovement.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xMovement.<text:span text:style-name="CODE Emphasis">copyRange</text:span>(aDestCell, aSourceRange);</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="page breaks" text:key1="spreadsheet document"/>Page Breaks</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetPageBreak;com.sun.star.sheet.TablePageBreakData]The methods <text:span text:style-name="Code (in text)">getColumnPageBreaks()</text:span> and <text:span text:style-name="Code (in text)">getRowPageBreaks()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetPageBreak]</text:span> return the positions of column and row page breaks, represented by a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TablePageBreakData]</text:span> structs. Each struct contains the position of the page break and a boolean property that determines if the page break was inserted manually. Inserting and removing a manual page break uses the property <text:span text:style-name="Code (in text)">IsStartOfNewPage</text:span> of the services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumn]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRow]</text:span>.</text:p>
  <text:p text:style-name="P5">The following example prints the positions of all the automatic column page breaks: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table68" table:style-name="Table68">
   <table:table-column table:style-name="Table68.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Print automatic column page breaks ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetPageBreak xPageBreak = (com.sun.star.sheet.XSheetPageBreak)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetPageBreak.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.TablePageBreakData[] aPageBreakArray = xPageBreak.getColumnPageBreaks();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.print(&quot;Automatic column page breaks:&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nIndex = 0; nIndex &lt; aPageBreakArray.length; ++nIndex)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (!aPageBreakArray[nIndex].ManualBreak)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>System.out.print( &quot; &quot; + aPageBreakArray[nIndex].Position);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println();</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="cell range" text:key1="spreadsheet document"/>Cell Ranges</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetCellRange]A cell range is a rectangular range of cells. It is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span>.</text:p>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="properties" text:key1="cell range"/>Properties of Cell Ranges</text:h>
  <text:p text:style-name="Paragraph">The cell range properties deal with the position and size of a range, conditional formats, and cell validation during user input.</text:p>
  <table:table table:name="Table145" table:style-name="Table145">
   <table:table-column table:style-name="Table145.A"/>
   <table:table-column table:style-name="Table145.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table145.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span></text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table145.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:Position]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:Size]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table145.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">The position and size of the cell in 100<text:span text:style-name="T9">th</text:span> of a millimeter. The position is relative to the first cell of the spreadsheet. Note, that this is not always the first visible cell.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table145.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:ConditionalFormat]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:ConditionalFormatLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table145.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access conditional formats. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Formatting.Conditional]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table145.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:Validation]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRange:ValidationLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table145.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access data validation. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Other.Validation]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P17">This service extends the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRange]</text:span> to provide common table cell range functionality.</text:p>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="accessing" text:key1="cell"/>Cell and <text:alphabetical-index-mark text:string-value="accessing" text:key1="cell range"/>Cell Range Access</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetCellRange;com.sun.star.table.XCellRange;com.sun.star.sheet.XSheetCellRange]The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRange]</text:span> is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span>. It provides access to cells of the range and sub ranges, and is supported by the spreadsheet and sub-ranges of a spreadsheet. The methods in <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRange]</text:span> are:</text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::table::XCell <text:span text:style-name="MethodSignatureEmphasis">getCellByPosition</text:span>( [in] long nColumn, [in] long nRow)</text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::table::XCellRange <text:span text:style-name="MethodSignatureEmphasis">getCellRangeByPosition</text:span>( [in] long nLeft, [in] long nTop,</text:p>
  <text:p text:style-name="MethodSignatures"><text:s text:c="58"/>[in] long nRight, [in] long nBottom)</text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::table::XCellRange <text:span text:style-name="MethodSignatureEmphasis">getCellRangeByName</text:span> ( [in] string aRange)</text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::sheet::XSpreadsheet <text:span text:style-name="MethodSignatureEmphasis">getSpreadsheet</text:span>() <text:s/></text:p>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span> provides methods to access cell ranges and single cells from a cell range. </text:p>
  <text:p text:style-name="Paragraph">Cells are retrieved by their position. Cell addresses consist of a row index and a column index. The index is zero-based, that is, the index 0 means the first row or column of the table.</text:p>
  <text:p text:style-name="Paragraph">Cell ranges are retrieved:</text:p>
  <text:p text:style-name="TitledListHead">by position</text:p>
  <text:p text:style-name="TitledListBody">Addresses of cell ranges consist of indexes to the first and last row, and the first and last column. Range indexes are always zero-based, that is, the index 0 points to the first row or column of the table.</text:p>
  <text:p text:style-name="TitledListHead">by name</text:p>
  <text:p text:style-name="TitledListBody">It is possible to address a cell range over its name in A1:B2 notation as it would appear in the application.</text:p>
  <table:table table:name="Table140" table:style-name="Table140">
   <table:table-column table:style-name="Table140.A"/>
   <table:table-column table:style-name="Table140.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table140.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Tip" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="87" xlink:href="../tip.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Tip graphics marks a hint section in the text</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table140.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">In a spreadsheet, “A1:B2”, “$C$1:$D$2”, or “E5” are valid ranges. Even user defined cell names, range names, or database range names can be used.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">Additionally, <text:span text:style-name="Code (in text)">XCellRange</text:span> contains the method <text:span text:style-name="Code (in text)">getSpreadsheet()</text:span> that returns the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> interface of the spreadsheet which contains the cell range.</text:p>
  <table:table table:name="Table37" table:style-name="Table37">
   <table:table-column table:style-name="Table37.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- First cell in a cell range. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCell xCell = xCellRange.getCellByPosition(0, 0);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Spreadsheet that contains the cell range. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet = xCellRange.getSpreadsheet();</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">There are no methods to modify the contents of <text:span text:style-name="Emphasis">all</text:span> cells of a cell range. Access to cell range formatting is supported. Refer to the chapter <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Formatting]</text:span> for additional details.</text:p>
  <text:p text:style-name="Paragraph">In the following example, <text:span text:style-name="Code (in text)">xRange</text:span> is an existing cell range (a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span> interface): <text:s/>[SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <table:table table:name="Tabelle7" table:style-name="Tabelle7">
   <table:table-column table:style-name="Tabelle7.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = null;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = null;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Accessing a CELL RANGE ***</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Accessing a cell range over its position.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellRange = xRange.getCellRangeByPosition(2, 0, 3, 1);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Change properties of the range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0x8080FF));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Accessing a cell range over its name.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellRange = xRange.getCellRangeByName(&quot;C4:D5&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Change properties of the range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0xFFFF80));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="merging" text:key1="cell range"/>Merging Cell Ranges into a Single Cell</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.util.XMergeable]The cell range interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XMergeable]</text:span> <text:s/>merges and undoes merged cell ranges.</text:p>
  <text:unordered-list text:style-name="L12">
   <text:list-item>
    <text:p text:style-name="P24">The method <text:span text:style-name="Code (in text)">merge()</text:span> merges or <text:s/>undoes merged the whole cell range.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P24">The method <text:span text:style-name="Code (in text)">getIsMerged()</text:span> determines if the cell range is completely merged.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">[SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table33" table:style-name="Table33">
   <table:table-column table:style-name="Table33.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Merge cells. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XMergeable xMerge = (com.sun.star.util.XMergeable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.util.XMergeable.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xMerge.<text:span text:style-name="MethodSignatureEmphasis">merge</text:span>(true);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Column and Row Access</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.table.XColumnRowRange]The cell range interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XColumnRowRange]</text:span> accesses the column and row ranges in the current cell range. A column or row range contains all the cells in the selected column or row. This type of range has additional properties, such as, visibility, and width or height. For more information, see <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.ColumnsRows]</text:span>.</text:p>
  <text:unordered-list text:style-name="L13">
   <text:list-item>
    <text:p text:style-name="P25">The method <text:span text:style-name="Code (in text)">getColumns()</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableColumns]</text:span> of the collection of columns.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P25">The method <text:span text:style-name="Code (in text)">getRows()</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableRows]</text:span> of the collection of rows.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">[SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table36" table:style-name="Table36">
   <table:table-column table:style-name="Table36.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Column properties. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XColumnRowRange xColRowRange = (com.sun.star.table.XColumnRowRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.table.XColumnRowRange.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XTableColumns xColumns = xColRowRange.getColumns();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aColumnObj = xColumns.getByIndex(0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.beans.XPropertySet.class, aColumnObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue( &quot;Width&quot;, new Integer( 6000 ) );</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNamed xNamed = (com.sun.star.container.XNamed)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNamed.class, aColumnObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;The name of the wide column is &quot; + xNamed.getName() + &quot;.&quot;);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="data array" text:key1="cell range"/>Data Array</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XCellRangeData]The contents of a cell range that are stored in a 2-dimensional array of objects are set and obtained by the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeData]</text:span>.</text:p>
  <text:unordered-list text:style-name="L14">
   <text:list-item>
    <text:p text:style-name="P26">The method <text:span text:style-name="Code (in text)">getDataArray()</text:span> returns a 2-dimensional array with the contents of all cells of the range.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P26">The method <text:span text:style-name="Code (in text)">setDataArray()</text:span> fills the data of the passed array into the cells. An empty cell is created by an empty string. The size of the array has to fit in the size of the cell range.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The following example uses the cell range <text:span text:style-name="Code (in text)">xCellRange</text:span> that has the size of 2 columns and 3 rows. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table38" table:style-name="Table38">
   <table:table-column table:style-name="Table38.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Cell range data ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeData xData = (com.sun.star.sheet.XCellRangeData)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeData.class, xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object[][] aValues =</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>{</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{new Double(1.1), new Integer(10)},</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{new Double(2.2), new String(&quot;&quot;)},</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{new Double(3.3), new String(&quot;Text&quot;)}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>};</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>xData.setDataArray(aValues);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Absolute Address</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XCellRangeAddressable]The method <text:span text:style-name="Code (in text)">getCellRangeAddress()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeAddressable]</text:span> returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> struct that contains the absolute address of the cell in the spreadsheet document, including the sheet index. This is useful to get the address of cell ranges returned by other methods. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table39" table:style-name="Table39">
   <table:table-column table:style-name="Table39.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Get cell range address. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeAddressable xRangeAddr = (com.sun.star.sheet.XCellRangeAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeAddressable.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRangeAddress = xRangeAddr.getRangeAddress();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Address of this range: <text:s/>Sheet=&quot; + aRangeAddress.Sheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>&quot;Start column=&quot; + aRangeAddress.StartColumn + &quot;; <text:s/>Start row=&quot; + aRangeAddress.StartRow);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>&quot;End column <text:s/>=&quot; + aRangeAddress.EndColumn <text:s text:c="2"/>+ &quot;; <text:s/>End row <text:s/>=&quot; + aRangeAddress.EndRow);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Fill Series</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XCellSeries]The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellSeries]</text:span> fills out each cell of a cell range with values based on a start value, step count and fill mode. It is possible to fill a series in each direction, specified by a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FillDirection]</text:span> constant. If the fill direction is horizontal, each row of the cell range forms a separate series. Similarly each column forms a series on a vertical fill.</text:p>
  <text:unordered-list text:style-name="L15">
   <text:list-item>
    <text:p text:style-name="P27">The method <text:span text:style-name="Code (in text)">fillSeries()</text:span> uses the first cell of each series as start value. For example, if the fill direction is “To top”, the bottom-most cell of each column is used as the start value. It expects a fill mode to be used to continue the start value, a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FillMode]</text:span> constant. If the values are dates, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FillDateMode]</text:span> constants describes the mode how the dates are calculated. If the series reaches the specified end value, the calculation is stopped.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L16">
   <text:list-item>
    <text:p text:style-name="P28">The method <text:span text:style-name="Code (in text)">fillAuto()</text:span> determines the fill mode and step count automatically. It takes a parameter containing the number of cells to be examined. For example, if the fill direction is “To top” and the specified number of cells is three, the three bottom-most cells of each column are used to continue the series.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P5">The following example may operate on the following spreadsheet:</text:p>
  <table:table table:name="Table41" table:style-name="Table41">
   <table:table-column table:style-name="Table41.A"/>
   <table:table-column table:style-name="Table41.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Table41.D"/>
   <table:table-column table:style-name="Table41.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Table41.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">01/30/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">Jan</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29">10</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">7</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A2" table:value-type="string">
     <text:p text:style-name="P30">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">05/28/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">02/28/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table41.A10" table:value-type="float" table:value="9">
     <text:p text:style-name="P30">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table41.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P5">Inserting filled series in Java: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table42" table:style-name="Table42">
   <table:table-column table:style-name="Table42.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public void doSeriesSample(com.sun.star.sheet.XSpreadsheet xSheet) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellSeries xSeries = null;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Fill 2 rows linear with end value -&gt; 2nd series is not filled completely</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;A1:E2&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDirection.TO_RIGHT, com.sun.star.sheet.FillMode.LINEAR,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, 2, 9);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Add months to a date</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;A3:E3&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDirection.TO_RIGHT, com.sun.star.sheet.FillMode.DATE,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDateMode.FILL_DATE_MONTH, 1, 0x7FFFFFFF);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Fill right to left with a text containing a value</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;A4:E4&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDirection.TO_LEFT, com.sun.star.sheet.FillMode.LINEAR,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, 10, 0x7FFFFFFF);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Fill with an user defined list</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;A5:E5&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDirection.TO_RIGHT, com.sun.star.sheet.FillMode.AUTO,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, 1, 0x7FFFFFFF);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Fill bottom to top with a geometric series</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;G1:G5&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDirection.TO_TOP, com.sun.star.sheet.FillMode.GROWTH,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.FillDateMode.FILL_DATE_DAY, 2, 0x7FFFFFFF);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Auto fill</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries = getCellSeries(xSheet, &quot;A7:G9&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSeries.fillAuto(com.sun.star.sheet.FillDirection.TO_RIGHT, 2);</text:p>
     <text:p text:style-name="Code">}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">/** Returns the XCellSeries interface of a cell range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s/>The spreadsheet containing the cell range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aRange <text:s/>The address of the cell range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>The XCellSeries interface. */</text:p>
     <text:p text:style-name="Code">private com.sun.star.sheet.XCellSeries getCellSeries(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet, String aRange) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return (com.sun.star.sheet.XCellSeries) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XCellSeries.class, xSheet.getCellRangeByName(aRange));</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P5">This example produces the following result:</text:p>
  <table:table table:name="Table43" table:style-name="Table43">
   <table:table-column table:style-name="Table43.A"/>
   <table:table-column table:style-name="Table43.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Table43.D"/>
   <table:table-column table:style-name="Table43.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Table43.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">7</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">160</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">80</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">01/30/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">02/28/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">03/30/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">04/30/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">05/30/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">40</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 50</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 40</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 30</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 20</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Text 10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">20</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Jan</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Feb</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Mar</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">Apr</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">May</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">10</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">7</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">7</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">05/28/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">02/28/2002</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">11/28/2001</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">08/28/2001</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">05/28/2001</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">02/28/2001</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">11/28/2000</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table43.A2" table:value-type="string">
     <text:p text:style-name="P30">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">-2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.B2" table:value-type="string">
     <text:p text:style-name="P29">-4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table43.H2" table:value-type="string">
     <text:p text:style-name="P29">-6</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="operations" text:key1="cell range"/>Operations</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetOperation]The cell range interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOperation]</text:span> computes a value based on the contents of all cells of a cell range or clears specific contents of the cells.</text:p>
  <text:unordered-list text:style-name="L17">
   <text:list-item>
    <text:p text:style-name="P31">The method <text:span text:style-name="Code (in text)">computeFunction()</text:span> returns the result of the calculation. The constants <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.GeneralFunction]</text:span> specify the calculation method.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L18">
   <text:list-item>
    <text:p text:style-name="P32">The method <text:span text:style-name="Code (in text)">clearContents()</text:span> clears contents of the cells used. The parameter describes the contents to clear, using the constants of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellFlags]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The following code shows how to compute the average of a cell range and clear the cell contents:</text:p>
  <table:table table:name="Table40" table:style-name="Table40">
   <table:table-column table:style-name="Table40.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Sheet operation. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Compute a function</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetOperation xSheetOp = (com.sun.star.sheet.XSheetOperation)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetOperation.class, xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>double fResult = xSheetOp.<text:span text:style-name="CODE Emphasis">computeFunction</text:span>(com.sun.star.sheet.GeneralFunction.AVERAGE);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Average value of the data table A10:C30: &quot; + fResult);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Clear cell contents</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSheetOp.<text:span text:style-name="MethodSignatureEmphasis">clearContents</text:span>(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.CellFlags.ANNOTATION | com.sun.star.sheet.CellFlags.OBJECTS);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="multiple operations" text:key1="cell range"/>Multiple Operations</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XMultipleOperation]A multiple operation combines a series of formulas with a variable and a series of values. The results of each formula with each value is shown in the table. Additionally, it is possible to calculate a single formula with two variables using a 2-value series. The method <text:span text:style-name="Code (in text)">setTableOperation()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XMultipleOperation]</text:span> inserts a multiple operation range.</text:p>
  <text:p text:style-name="Paragraph">The following example shows how to calculate the values 1 to 5 raised to the powers of 1 to 5 (each value to each power). The first column contains the base values, and the first row the exponents, for example, cell E3 contains the result of 2<text:span text:style-name="T9">4</text:span>. Below there are three trigonometrical functions calculated based on a series of values, for example, cell C11 contains the result of cos(0.2).</text:p>
  <table:table table:name="Table46" table:style-name="Table46">
   <table:table-column table:style-name="Table46.A"/>
   <table:table-column table:style-name="Table46.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Table46.D"/>
   <table:table-column table:style-name="Table46.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Table46.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">=A2^B1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">7</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">=SIN(A8)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">=COS(A8)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">=TAN(A8)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">0.1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">11</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">0.2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">12</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">0.3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table46.A2" table:value-type="string">
     <text:p text:style-name="P30">13</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29">0.4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table46.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">Note that the value series have to be included in the multiple operations cell range, but not the formula cell range (in the second example). The references in the formulas address any cell outside of the area to be filled. The column cell and row cell parameter have to reference these cells exactly. In the second example, a row cell address does not have to be used, because the row contains the formulas. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table47" table:style-name="Table47">
   <table:table-column table:style-name="Table47.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public void InsertMultipleOperation(com.sun.star.sheet.XSpreadsheet xSheet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Two independent value series ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress aFormulaRange = createCellRangeAddress(xSheet, &quot;A1&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aColCell = createCellAddress(xSheet, &quot;A2&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aRowCell = createCellAddress(xSheet, &quot;B1&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = xSheet.getCellRangeByName(&quot;A1:F6&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XMultipleOperation xMultOp = (com.sun.star.sheet.XMultipleOperation)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XMultipleOperation.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xMultOp.setTableOperation(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aFormulaRange, com.sun.star.sheet.TableOperationMode.BOTH, aColCell, aRowCell);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- A value series, a formula series ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFormulaRange = createCellRangeAddress(xSheet, &quot;B8:D8&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aColCell = createCellAddress(xSheet, &quot;A8&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Row cell not needed</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellRange = xSheet.getCellRangeByName(&quot;A9:D13&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xMultOp = (com.sun.star.sheet.XMultipleOperation)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XMultipleOperation.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xMultOp.setTableOperation(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aFormulaRange, com.sun.star.sheet.TableOperationMode.COLUMN, aColCell, aRowCell);</text:p>
     <text:p text:style-name="Code">}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">/** Creates a com.sun.star.table.CellAddress and initializes it</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>with the given range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s/>The XSpreadsheet interface of the spreadsheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aCell <text:s/>The address of the cell (or a named cell).</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">public com.sun.star.table.CellAddress createCellAddress(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aCell ) throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellAddressable xAddr = (com.sun.star.sheet.XCellAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellAddressable.class,</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>xSheet.getCellRangeByName(aCell).getCellByPosition(0, 0));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return xAddr.getCellAddress();</text:p>
     <text:p text:style-name="Code">}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">/** Creates a com.sun.star.table.CellRangeAddress and initializes</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>it with the given range.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s/>The XSpreadsheet interface of the spreadsheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aRange <text:s/>The address of the cell range (or a named range).</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">public com.sun.star.table.CellRangeAddress createCellRangeAddress(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet, String aRange) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeAddressable xAddr = (com.sun.star.sheet.XCellRangeAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeAddressable.class,</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>xSheet.getCellRangeByName(aRange));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return xAddr.getRangeAddress();</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="array formulas" text:key1="cell range"/>Handling Array Formulas</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XArrayFormulaRange]The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XArrayFormulaRange]</text:span> handles array formulas.</text:p>
  <text:unordered-list text:style-name="L19">
   <text:list-item>
    <text:p text:style-name="P33">If the whole cell range contains an array formula, the method <text:span text:style-name="Code (in text)">getArrayFormula()</text:span> returns the formula string, otherwise an empty string is returned.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P33">The method <text:span text:style-name="Code (in text)">setArrayFormula()</text:span> sets an array formula to the complete cell range.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">[SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table44" table:style-name="Table44">
   <table:table-column table:style-name="Table44.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Array formulas ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XArrayFormulaRange xArrayFormula = (com.sun.star.sheet.XArrayFormulaRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XArrayFormulaRange.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Insert a 3x3 unit matrix.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xArrayFormula.setArrayFormula(&quot;=A10:C12&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Array formula is: &quot; + xArrayFormula.getArrayFormula());</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <table:table table:name="Table45" table:style-name="Table45">
   <table:table-column table:style-name="Table45.A"/>
   <table:table-column table:style-name="Table45.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table45.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Important" text:anchor-type="paragraph" svg:x="0.12cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="88" xlink:href="../important.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Pay attention to the following important text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table45.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Due to a bug, this interface does not work correctly in the current implementation. The method accepts the translated function names, but not the English names. This is inconsistent to the method <text:span text:style-name="Code (in text)">setFormula()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCell]</text:span>.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="cells" text:key1="spreadsheet document"/>Cells</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetCell]A single cell of a spreadsheet is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span>. This service extends the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.Cell]</text:span>, that provides fundamental table cell functionality, such as setting formulas, values and text of a cell. </text:p>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="properties" text:key1="spreadsheet document" text:key2="cell"/>Properties of SheetCell</text:h>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span> introduces new properties and interfaces, extending the formatting-related cell properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.Cell]</text:span>.</text:p>
  <table:table table:name="Table23" table:style-name="Table23">
   <table:table-column table:style-name="Table23.A"/>
   <table:table-column table:style-name="Table23.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table23.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span></text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table23.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:Position]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:Size]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table23.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">The position and size of the cell in 100<text:span text:style-name="T9">th</text:span> of a millimeter. The position is relative to the first cell of the spreadsheet. Note that this is not always the first visible cell.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table23.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:FormulaLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table23.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to query or set a formula using function names of the current language.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table23.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:FormulaResultType]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table23.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">The type of the result. It is a constant from the set <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FormulaResult]</text:span>.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table23.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">IDLS:com.sun.star.sheet.SheetCell:ConditionalFormat]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:ConditionalFormatLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table23.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access conditional formats. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Formatting.Conditional]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table23.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:Validation]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCell:ValidationLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table23.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access data validation. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Other.Validation]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="formulas" text:key1="spreadsheet document" text:key2="cell"/>Access to Formulas, Values and <text:alphabetical-index-mark text:string-value="errors" text:key1="spreadsheet document" text:key2="cell"/>Errors</text:h>
  <text:p text:style-name="Paragraph">The cell interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCell]</text:span> provides methods to access the value, formula, <text:s/>content type, and error code of a single cell:</text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="MethodSignatureEmphasis">setValue</text:span>( [in] double nValue)</text:p>
  <text:p text:style-name="MethodSignatures">double <text:span text:style-name="MethodSignatureEmphasis">getValue</text:span>() </text:p>
  <text:p text:style-name="MethodSignatures">void <text:span text:style-name="MethodSignatureEmphasis">setFormula</text:span>( [in] string aFormula)</text:p>
  <text:p text:style-name="MethodSignatures">string <text:span text:style-name="MethodSignatureEmphasis">getFormula</text:span>() </text:p>
  <text:p text:style-name="MethodSignatures">com::sun::star::table::CellContentType <text:span text:style-name="MethodSignatureEmphasis">getType</text:span>()</text:p>
  <text:p text:style-name="MethodSignatures">long <text:span text:style-name="MethodSignatureEmphasis">getError</text:span>()</text:p>
  <text:p text:style-name="Paragraph">The value of a cell is a floating-point number. To set a formula to a cell, the whole formula string has to be passed including the leading equality sign. The function names must be in English.</text:p>
  <table:table table:name="Table24" table:style-name="Table24">
   <table:table-column table:style-name="Table24.A"/>
   <table:table-column table:style-name="Table24.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table24.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Tip2" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="89" xlink:href="../tip.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Tip graphics marks a hint section in the text</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table24.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">It is possible to set simple strings or even values with special number formats. In this case, the formula string consists only of a string constant or of the number as it would be entered in the table (for instance date, time, or currency values).</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The method <text:span text:style-name="Code (in text)">getType()</text:span> returns a value of the enumeration <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellContentType]</text:span> indicating the type of the cell content.</text:p>
  <text:p text:style-name="Paragraph">The following code fragment shows how to access and modify the content, and formatting of single cells. The <text:span text:style-name="Code (in text)">xRange</text:span> is an existing cell range (a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span> interface, described in <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.CellRanges]</text:span>). The method <text:span text:style-name="Code (in text)">getCellByPosition()</text:span> is provided by this interface. [SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <table:table table:name="Table25" table:style-name="Table25">
   <table:table-column table:style-name="Table25.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = null;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCell xCell = null;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Access and modify a VALUE CELL ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition(0, 0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Set cell value.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCell.setValue(1234);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get cell value.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>double nDblValue = xCell.getValue() * 2;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRange.getCellByPosition(0, 1).setValue(nDblValue);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Create a FORMULA CELL and query error type ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition(0, 2);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Set formula string.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCell.setFormula(&quot;=1/0&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get error type.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>boolean bValid = (xCell.getError() == 0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get formula string.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aText = &quot;The formula &quot; + xCell.getFormula() + &quot; is &quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText += bValid ? &quot;valid.&quot; : &quot;erroneous.&quot;;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Insert a TEXT CELL using the XText interface ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCell = xRange.getCellByPosition( 0, 3 );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XText xCellText = (com.sun.star.text.XText)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface( com.sun.star.text.XText.class, xCell );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XTextCursor xTextCursor = xCellText.createTextCursor();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellText.insertString( xTextCursor, aText, false );</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Change cell properties ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nValue = bValid ? 0x00FF00 : 0xFF4040;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.beans.XPropertySet.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(nValue));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Access to <text:alphabetical-index-mark text:string-value="text content" text:key1="spreadsheet document" text:key2="cell"/>Text Content</text:h>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.Text]</text:span> supports the modification of simple or formatted text contents. Changing text contents and text formatting is provided by the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XText]</text:span> as discussed in <text:span text:style-name="ChapterRef">[CHAPTER:FirstSteps]</text:span>. Refer to chapter <text:span text:style-name="ChapterRef">[CHAPTER:Text.Working.WordProcessing.Editing]</text:span> for further information. It implements the interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> that provides access to the paragraphs of the text and the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XText]</text:span> to insert and modify text contents. For detailed information about text handling, see <text:span text:style-name="ChapterRef">[CHAPTER:Text.Working.WordProcessing.Editing]</text:span>. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table119" table:style-name="Table119">
   <table:table-column table:style-name="Table119.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table119.A1" table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Insert two text paragraphs into the cell. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XText xText = (com.sun.star.text.XText)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.text.XText.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.text.XTextCursor xTextCursor = xText.createTextCursor();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>xText.insertString(xTextCursor, &quot;Text in first line.&quot;, false);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xText.insertControlCharacter(xTextCursor,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK, false);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xText.insertString(xTextCursor, &quot;Some more text.&quot;, false);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Query the separate paragraphs. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aText;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XEnumerationAccess xParaEA =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.container.XEnumerationAccess) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.container.XEnumerationAccess.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XEnumeration xParaEnum = xParaEA.createEnumeration();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Go through the paragraphs</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>while (xParaEnum.hasMoreElements()) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Object aPortionObj = xParaEnum.nextElement();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.container.XEnumerationAccess xPortionEA =</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>(com.sun.star.container.XEnumerationAccess) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>com.sun.star.container.XEnumerationAccess.class, aPortionObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.container.XEnumeration xPortionEnum = xPortionEA.createEnumeration();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aText = &quot;&quot;;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>// Go through all text portions of a paragraph and construct string.</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>while (xPortionEnum.hasMoreElements()) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.text.XTextRange xRange =</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>(com.sun.star.text.XTextRange) xPortionEnum.nextElement();</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aText += xRange.getString();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>System.out.println(&quot;Paragraph text: &quot; + aText);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">SheetCell</text:span> interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XTextFieldsSupplier]</text:span> contains methods that provide access to the collection of text fields in the cell. For details on inserting text fields, refer to <text:span text:style-name="ChapterRef">[CHAPTER:Text.Working.TextFields]</text:span>.</text:p>
  <table:table table:name="Table26" table:style-name="Table26">
   <table:table-column table:style-name="Table26.A"/>
   <table:table-column table:style-name="Table26.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table26.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note2" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="90" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table26.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Currently, the only possible text field in Calc cells is the hyperlink field <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.textfield.URL]</text:span>.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:s/>Absolute Address</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XCellAddressable]The method <text:span text:style-name="Code (in text)">getCellAddress()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellAddressable]</text:span> returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellAddress]</text:span> struct that contains the absolute address of the cell in the spreadsheet document, including the sheet index. This is useful to get the address of cells returned by other methods. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table133" table:style-name="Table133">
   <table:table-column table:style-name="Table133.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Get cell address. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellAddressable xCellAddr = (com.sun.star.sheet.XCellAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellAddressable.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aAddress = xCellAddr.getCellAddress();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aText = &quot;Address of this cell: <text:s/>Column=&quot; + aAddress.Column;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText += &quot;; <text:s/>Row=&quot; + aAddress.Row;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText += &quot;; <text:s/>Sheet=&quot; + aAddress.Sheet;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(aText);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5"><text:alphabetical-index-mark text:string-value="annotations" text:key1="spreadsheet document" text:key2="cell"/>Cell Annotations</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.CellAnnotation;com.sun.star.sheet.XSheetAnnotation;com.sun.star.sheet.XSheetAnnotationAnchor]A spreadsheet cell may contain one annotation that consists of simple unformatted Text.</text:p>
  <table:table table:name="Table150" table:style-name="Table150">
   <table:table-column table:style-name="Table150.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table150.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr19" draw:name="Frame10" text:anchor-type="paragraph" svg:width="13.157cm" fo:min-height="14.982cm" draw:z-index="109">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr20" draw:name="UML diagram of com.sun.star.sheet.CellAnnotation" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.079cm" svg:height="14.499cm" draw:z-index="110" xlink:href="SheetAnnotationsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.CellAnnotation service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration13" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.14</text:sequence>: Cell annotations</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">This service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellAnnotation]</text:span> represents an annotation. It implements interfaces to manipulate the contents and access the source cell.</text:p>
  <text:unordered-list text:style-name="L20">
   <text:list-item>
    <text:p text:style-name="P34">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotation]</text:span> implements methods to query data of the annotation and to show and hide it. This interface is returned by the method <text:span text:style-name="Code (in text)">getAnnotation()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotationAnchor]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P34">The method <text:span text:style-name="Code (in text)">getParent()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XChild]</text:span> returns the cell object that contains the annotation.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P34">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XSimpleText]</text:span> <text:s/>modifies the text contents of the annotation. See <text:span text:style-name="ChapterRef">[CHAPTER:Text.Working.WordProcessing.Editing]</text:span> for details.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">It is possible to access the annotations through a container object from the spreadsheet or directly from a cell object.</text:p>
  <text:unordered-list text:style-name="L21">
   <text:list-item>
    <text:p text:style-name="P35">The method <text:span text:style-name="Code (in text)">getAnnotations()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotationsSupplier]</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotations]</text:span> of the annotations collection of this spreadsheet.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P35">The method <text:span text:style-name="Code (in text)">getAnnotation()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotationAnchor]</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotation]</text:span> of an annotation object.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellAnnotations]</text:span> represents the collection of annotations for the spreadsheet and implements two interfaces to access the annotations.</text:p>
  <text:unordered-list text:style-name="L22">
   <text:list-item>
    <text:p text:style-name="P36">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAnnotations]</text:span> is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> to access and remove annotations through their index. The method <text:span text:style-name="Code (in text)">insertNew()</text:span> attaches a new annotation to a cell.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P36">The method <text:span text:style-name="Code (in text)">createEnumeration()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> creates an enumeration object, represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellAnnotationsEnumeration]</text:span>, to access the annotations sequentially.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P5">The following example inserts an annotation and makes it permanently visible. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table144" table:style-name="Table144">
   <table:table-column table:style-name="Table144.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public void doAnnotationSample(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nColumn, int nRow ) throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create the CellAddress struct</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCell xCell = xSheet.getCellByPosition(nColumn, nRow);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellAddressable xCellAddr = (com.sun.star.sheet.XCellAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellAddressable.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aAddress = xCellAddr.<text:span text:style-name="CODE Emphasis">getCellAddress</text:span>();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// insert an annotation</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetAnnotationsSupplier xAnnotationsSupp =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XSheetAnnotationsSupplier) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XSheetAnnotationsSupplier.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetAnnotations xAnnotations = xAnnotationsSupp.getAnnotations();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xAnnotations.<text:span text:style-name="CODE Emphasis">insertNew</text:span>(aAddress, &quot;This is an annotation&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// make the annotation visible</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetAnnotationAnchor xAnnotAnchor =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XSheetAnnotationAnchor) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XSheetAnnotationAnchor.class, xCell);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetAnnotation xAnnotation = xAnnotAnchor.getAnnotation();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xAnnotation.<text:span text:style-name="CODE Emphasis">setIsVisible</text:span>(true);</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph"/>
  <text:h text:style-name="Head 4" text:level="4">Cell Ranges and Cells Container</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetCellRanges]Cell range collections are represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span>. They are returned by several methods, for instance the cell query methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetRangesQuery]</text:span>. Besides standard container operations, it performs a few spreadsheet functions also usable with a single cell range.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Properties of SheetCellRanges</text:h>
  <text:p text:style-name="Standard"/>
  <table:table table:name="Table52" table:style-name="Table52">
   <table:table-column table:style-name="Table52.A"/>
   <table:table-column table:style-name="Table52.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table52.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Properties of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table52.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRanges:ConditionalFormat]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRanges:ConditionalFormatLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table52.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access conditional formats. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Formatting.Conditional]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table52.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRanges:Validation]</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.SheetCellRanges:ValidationLocal]</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table52.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Used to access data validation. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Other.Validation]</text:span> for details.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Access to Single Cell Ranges in SheetCellRanges Container</text:h>
  <text:p text:style-name="P17">The interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> iterates over all contained cell ranges by index or <text:s/>enumeration. With the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameContainer]</text:span>, it is possible to insert ranges with a user-defined name. Later the range can be found, replaced or removed using the name.</text:p>
  <text:p text:style-name="Paragraph">The following interfaces and service perform cell range actions on all ranges contained in the collection:</text:p>
  <text:unordered-list text:style-name="L23">
   <text:list-item>
    <text:p text:style-name="P37">Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XReplaceable]</text:span> (see <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Navigating]</text:span>)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P37">Service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetRangesQuery]</text:span> (see <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Navigating]</text:span>)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P37">Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XIndent]</text:span> (see <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Formatting]</text:span>)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P37">Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOperation]</text:span> (see <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.CellRanges]</text:span>)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P37">Interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.chart.XChartDataArray]</text:span> (see <text:span text:style-name="ChapterRef">[CHAPTER:Charts]</text:span>)</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRangeContainer]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRanges]</text:span> support basic handling of cell range collections.</text:p>
  <text:unordered-list text:style-name="L24">
   <text:list-item>
    <text:p text:style-name="P38">The method <text:span text:style-name="Code (in text)">getRangeAddressesAsString()</text:span> returns the string representation of all cell ranges.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L25">
   <text:list-item>
    <text:p text:style-name="P39">The method <text:span text:style-name="Code (in text)">getRangeAddresses()</text:span> returns a sequence with all cell range addresses.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRangeContainer]</text:span> is derived from the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRanges]</text:span> to insert and remove cell ranges.</text:p>
  <text:unordered-list text:style-name="L26">
   <text:list-item>
    <text:p text:style-name="P40">The methods <text:span text:style-name="Code (in text)">addRangeAddress()</text:span> and <text:span text:style-name="Code (in text)">addRangeAddresses()</text:span> insert one or more ranges into the collection. If the <text:span text:style-name="Code (in text)">boolean</text:span> parameter bMergeRanges is set to <text:span text:style-name="Code (in text)">true</text:span>, the methods try to merge the new range(s) with the ranges of the collection.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P40">The methods <text:span text:style-name="Code (in text)">removeRangeAddress()</text:span> and <text:span text:style-name="Code (in text)">removeRangeAddresses()</text:span> remove existing ranges from the collection. Only ranges that are contained in the collection are removed. The methods do not try to shorten a range.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRanges]</text:span> implements methods for access to cells and cell ranges:</text:p>
  <text:unordered-list text:style-name="L27">
   <text:list-item>
    <text:p text:style-name="P41">The method <text:span text:style-name="Code (in text)">getCells()</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> of a cell collection. The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Cells]</text:span> is discussed below. This collection contains the cell addresses of non-empty cells in all cell ranges.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.Cells]The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Cells]</text:span> represents a collection of cells.</text:p>
  <table:table table:name="Table161" table:style-name="Table161">
   <table:table-column table:style-name="Table161.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table161.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr9" draw:name="Frame91" text:anchor-type="paragraph" svg:y="0cm" svg:width="11.684cm" fo:min-height="8.225cm" draw:z-index="111">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.Cells" text:anchor-type="paragraph" svg:x="0cm" svg:y="-5.031cm" svg:width="11.65cm" svg:height="7.691cm" draw:z-index="112" xlink:href="SheetCellsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.Cells service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration14" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.15</text:sequence>: Cell collections</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The following example demonstrates the usage of cell range collections and cell collections. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <text:p text:style-name="Code">/** All samples regarding cell range collections. */</text:p>
  <text:p text:style-name="Code">public void doCellRangesSamples(com.sun.star.sheet.XSpreadsheetDocument xDocument)</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>throws RuntimeException, Exception {</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Create a new cell range container</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.lang.XMultiServiceFactory xDocFactory =</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.lang.XMultiServiceFactory) UnoRuntime.queryInterface(</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.lang.XMultiServiceFactory.class, xDocument);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCellRangeContainer xRangeCont =</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XSheetCellRangeContainer) UnoRuntime.queryInterface(</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XSheetCellRangeContainer.class,</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>xDocFactory.createInstance(&quot;com.sun.star.sheet.SheetCellRanges&quot;));</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Insert ranges</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>insertRange(xRangeCont, 0, 0, 0, 0, 0, false); <text:s text:c="3"/>// A1:A1</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>insertRange(xRangeCont, 0, 0, 1, 0, 2, true); <text:s text:c="4"/>// A2:A3</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>insertRange(xRangeCont, 0, 1, 0, 1, 2, false); <text:s text:c="3"/>// B1:B3</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"><text:s text:c="4"/>// Query the list of filled cells</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>System.out.print(&quot;All filled cells: &quot;);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XEnumerationAccess xCellsEA = xRangeCont.getCells();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XEnumeration xEnum = xCellsEA.createEnumeration();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>while (xEnum.hasMoreElements()) {</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>Object aCellObj = xEnum.nextElement();</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XCellAddressable xAddr = (com.sun.star.sheet.XCellAddressable)</text:p>
  <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellAddressable.class, aCellObj);</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.table.CellAddress aAddr = xAddr.getCellAddress();</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>System.out.print(getCellAddressString(aAddr.Column, aAddr.Row) + &quot; &quot;);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println();</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code"/>
  <text:p text:style-name="Code">/** Inserts a cell range address into a cell range container and prints a message.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param xContainer <text:s/>The com.sun.star.sheet.XSheetCellRangeContainer interface of the container.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nSheet <text:s/>Index of sheet of the range.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nStartCol <text:s/>Index of first column of the range.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nStartRow <text:s/>Index of first row of the range.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nEndCol <text:s/>Index of last column of the range.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param nEndRow <text:s/>Index of last row of the range.</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>@param bMerge <text:s/>Determines whether the new range should be merged with the existing ranges.</text:p>
  <text:p text:style-name="Code"><text:s/>*/</text:p>
  <text:p text:style-name="Code">private void insertRange(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSheetCellRangeContainer xContainer,</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>int nSheet, int nStartCol, int nStartRow, int nEndCol, int nEndRow,</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>boolean bMerge) throws RuntimeException, Exception {</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress aAddress = new com.sun.star.table.CellRangeAddress();</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aAddress.Sheet = (short)nSheet;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aAddress.StartColumn = nStartCol;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aAddress.StartRow = nStartRow;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aAddress.EndColumn = nEndCol;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>aAddress.EndRow = nEndRow;</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>xContainer.addRangeAddress(aAddress, bMerge);</text:p>
  <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>&quot;Inserting &quot; + (bMerge ? &quot; <text:s text:c="2"/>with&quot; : &quot;without&quot;) + &quot; merge,&quot;</text:p>
  <text:p text:style-name="Code"><text:s text:c="8"/>+ &quot; result list: &quot; + xContainer.getRangeAddressesAsString());</text:p>
  <text:p text:style-name="Code">}</text:p>
  <text:h text:style-name="Head 4" text:level="4">Columns and Rows</text:h>
  <text:p text:style-name="P17">[TOPIC:com.sun.star.table.TableColumns;com.sun.star.table.TableRows]Collection of table columns:</text:p>
  <table:table table:name="Table21" table:style-name="Table21">
   <table:table-column table:style-name="Table21.A"/>
   <table:table-row table:style-name="Table21.1">
    <table:table-cell table:style-name="Table21.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame19" text:anchor-type="paragraph" svg:width="13.03cm" fo:min-height="11.613cm" draw:z-index="28">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.TableColumnsEnumeration" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.959cm" svg:height="11.13cm" draw:z-index="29" xlink:href="TableColumnsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.TableColumnsEnumeration service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration15" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.16</text:sequence>: Collection of table columns</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P5">Collection of table rows:</text:p>
  <table:table table:name="Table134" table:style-name="Table134">
   <table:table-column table:style-name="Table134.A"/>
   <table:table-row table:style-name="Table134.1">
    <table:table-cell table:style-name="Table134.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame20" text:anchor-type="paragraph" svg:width="13.018cm" fo:min-height="11.613cm" draw:z-index="80">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.TableRowsEnumeration" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.959cm" svg:height="11.13cm" draw:z-index="81" xlink:href="TableRowsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.TableRowsEnumeration service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration16" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.17</text:sequence>: Collection of table rows</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumns]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRows]</text:span> represent collections of all columns and rows of a table. It is possible to access cells of columns and rows, and insert and remove columns and rows using the interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableColumns]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableRows]</text:span> that are derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span>. The method <text:span text:style-name="Code (in text)">createEnumeration()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> creates an enumeration of all columns or rows. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> accesses columns through their names. The implementation of this interface is optional.</text:p>
  <text:p text:style-name="Paragraph">A single column or row is represented by the services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableColumn]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableRow]</text:span>. They implement the interfaces <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span> that provide access to the cells and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> for modifying settings. Additionally, the service TableColumn implements the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span>. It provides the method <text:span text:style-name="Code (in text)">getName()</text:span> that returns the name of a column. Changing the name of a column is not supported.</text:p>
  <table:table table:name="Table135" table:style-name="Table135">
   <table:table-column table:style-name="Table135.A"/>
   <table:table-column table:style-name="Table135.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table135.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note3" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="13" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table135.B1" table:value-type="string">
      <text:p text:style-name="TextInTable">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> returns columns and rows relative to the cell range (index 0 is always the first column or row of the cell range). But the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> returns columns with their real names, regardless of the cell range.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">In the following example, <text:span text:style-name="Code (in text)">xColumns</text:span> is an interface of a collection of columns, <text:span text:style-name="Code (in text)">xRows</text:span> is an interface of a collection of rows, and <text:span text:style-name="Code (in text)">xRange</text:span> is the range formed by the columns and rows. [SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <table:table table:name="Table136" table:style-name="Table136">
   <table:table-column table:style-name="Table136.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = null;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Modifying COLUMNS and ROWS ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get column C by index (interface XIndexAccess).</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aColumnObj = xColumns.getByIndex(2);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aColumnObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;Width&quot;, new Integer(5000));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get the name of the column.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNamed xNamed = (com.sun.star.container.XNamed)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNamed.class, aColumnObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText = &quot;The name of this column is &quot; + xNamed.getName() + &quot;.&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRange.getCellByPosition(2, 2).setFormula(aText);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get column D by name (interface XNameAccess).</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNameAccess xColumnsName = (com.sun.star.container.XNameAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNameAccess.class, xColumns);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>aColumnObj = xColumnsName.getByName(&quot;D&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aColumnObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;IsVisible&quot;, new Boolean(false));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get row 7 by index (interface XIndexAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aRowObj = xRows.getByIndex(6);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aRowObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;Height&quot;, new Integer(5000));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Create a cell series with the values 1 ... 7.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nRow = 8; nRow &lt; 15; ++nRow)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xRange.getCellByPosition( 0, nRow ).setValue( nRow - 7 );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Insert a row between 1 and 2</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRows.insertByIndex(9, 1);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Delete the rows with the values 3 and 4.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRows.removeByIndex(11, 2);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Formatting</text:h>
  <text:h text:style-name="Head 4" text:level="4">Cell Formatting</text:h>
  <text:p text:style-name="Paragraph">In cells, cell ranges, table rows, table columns and cell ranges collections, the cells are formatted through the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellProperties]</text:span>. These properties are accessible through the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> that is supported by all the objects mentioned above. The service contains all properties that describe the cell formatting of the cell range, such as the cell background color, borders, the number format and the cell alignment. Changing the property values affects all cells of the object being formatted.</text:p>
  <text:p text:style-name="Paragraph">The cell border style is stored in the struct <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableBorder]</text:span>. A cell range contains six different kinds of border lines: upper, lower, left, right, horizontal inner, and vertical inner line. Each line is represented by a struct <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.BorderLine]</text:span> that contains the line style and color. The <text:span text:style-name="Code (in text)">boolean</text:span> members <text:span text:style-name="Code (in text)">Is...LineValid</text:span> specifies the validity of the <text:span text:style-name="Code (in text)">...Line</text:span> members containing the line style. If the property contains the value <text:span text:style-name="Code (in text)">true</text:span>, the line style is equal in all cells that include the line. The style is contained in the <text:span text:style-name="Code (in text)">...Line</text:span> struct. The value <text:span text:style-name="Code (in text)">false</text:span> means the cells are formatted differently and the content of the <text:span text:style-name="Code (in text)">...Line</text:span> struct is undefined. When changing the border property, these boolean values determine if the lines are changed to the style contained in the respective <text:span text:style-name="Code (in text)">...Line</text:span> struct.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Character and Paragraph Format</text:h>
  <text:p text:style-name="Paragraph">The following services of a cell range contain properties for the character style and paragraph format:</text:p>
  <text:unordered-list text:style-name="L28">
   <text:list-item>
    <text:p text:style-name="P42">Service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.ParagraphProperties]</text:span></text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P42">Service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.CharacterProperties]</text:span></text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P42">Service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.CharacterPropertiesAsian]</text:span></text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P42">Service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.CharacterPropertiesComplex]</text:span></text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The chapter <text:span text:style-name="ChapterRef">[CHAPTER:Text.Working.Formatting]</text:span> contains a description of these properties.</text:p>
  <text:p text:style-name="Paragraph">This example formats a given cell range <text:span text:style-name="Code (in text)">xCellRange:</text:span> [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table30" table:style-name="Table30">
   <table:table-column table:style-name="Table30.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table30.A1" table:value-type="string">
      <text:p text:style-name="Code"><text:s text:c="4"/>// --- Change cell range properties. ---</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
      <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCellRange);</text:p>
      <text:p text:style-name="Code"/>
      <text:p text:style-name="Code"><text:s text:c="4"/>// from com.sun.star.styles.CharacterProperties</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CharColor&quot;, new Integer(0x003399));</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CharHeight&quot;, new Float(20.0));</text:p>
      <text:p text:style-name="Code"/>
      <text:p text:style-name="Code"><text:s text:c="4"/>// from com.sun.star.styles.ParagraphProperties</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;ParaLeftMargin&quot;, new Integer(500));</text:p>
      <text:p text:style-name="Code"/>
      <text:p text:style-name="Code"><text:s text:c="4"/>// from com.sun.star.table.CellProperties</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;IsCellBackgroundTransparent&quot;, new Boolean(false));</text:p>
      <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0x99CCFF));</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The code below changes the character and paragraph formatting of a cell. Assume that <text:span text:style-name="Code (in text)">xCell</text:span> is a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCell]</text:span> interface of a spreadsheet cell. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table81" table:style-name="Table81">
   <table:table-column table:style-name="Table81.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table81.A1" table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Change cell properties. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCell);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// from styles.CharacterProperties</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CharColor&quot;, new Integer(0x003399));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CharHeight&quot;, new Float(20.0));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// from styles.ParagraphProperties</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;ParaLeftMargin&quot;, new Integer(500));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// from table.CellProperties</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;IsCellBackgroundTransparent&quot;, new Boolean(false));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0x99CCFF));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Indentation</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.util.XIndent]The methods of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XIndent]</text:span> change the left indentation of the cell contents. This interface is supported by cells, <text:s/>cell ranges and collections of cell ranges. The indentation is incremental and decremental, independent for each cell.</text:p>
  <text:unordered-list text:style-name="L29">
   <text:list-item>
    <text:p text:style-name="P43">The method <text:span text:style-name="Code (in text)">decrementIndent()</text:span> reduces the indentation of each cell by 1.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P43">The method <text:span text:style-name="Code (in text)">incrementIndent()</text:span> enlarges the indentation of each cell by 1.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The following sample shows how to increase the cell indentation by 1. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table34" table:style-name="Table34">
   <table:table-column table:style-name="Table34.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Change indentation. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XIndent xIndent = (com.sun.star.util.XIndent)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.util.XIndent.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xIndent.incrementIndent();</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <table:table table:name="Table35" table:style-name="Table35">
   <table:table-column table:style-name="Table35.A"/>
   <table:table-column table:style-name="Table35.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table35.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Important2" text:anchor-type="paragraph" svg:x="0.12cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="91" xlink:href="../important.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Pay attention to the following important text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table35.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Due to a bug, this interface does not work in the current implementation. Workaround: Use the paragraph property <text:span text:style-name="Code (in text)">ParaIndent</text:span>.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Equally Formatted Cell Ranges</text:h>
  <text:p text:style-name="Paragraph">It is possible to get collections of all equally formatted cell ranges contained in a source cell range.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Cell Format Ranges</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.CellFormatRanges]The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellFormatRanges]</text:span> represents a collection of equally formatted cell ranges. The cells inside of a cell range of the collection have the same formatting attributes. All cells of the source range are contained in one of the ranges. If there is a non-rectangular, equal-formatted range, it is split into several rectangular ranges.</text:p>
  <table:table table:name="Table9" table:style-name="Table9">
   <table:table-column table:style-name="Table9.A"/>
   <table:table-row table:style-name="Table9.1">
    <table:table-cell table:style-name="Table9.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr7" draw:name="Frame26" text:anchor-type="paragraph" svg:width="13.132cm" fo:min-height="12.674cm" draw:z-index="30">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr20" draw:name="UML diagram of com.sun.star.sheet.CellFormatRanges" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.06cm" svg:height="12.19cm" draw:z-index="31" xlink:href="CellFormatRangesUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the  com.sun.star.sheet.CellFormatRanges service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration17" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.18</text:sequence>: Cell Format Ranges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Unique Cell Format Ranges</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.UniqueCellFormatRanges]The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.UniqueCellFormatRanges]</text:span> represents, similar to Cell Format Ranges above, a collection of equally formatted cell ranges, but this collection contains cell range container objects (service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span>) that contain the cell ranges. The cells of all ranges inside of a cell range container are equally formatted. The formatting attributes of a range container differ from each other range container. All equally formatted ranges are consolidated into one container.</text:p>
  <table:table table:name="Table10" table:style-name="Table10">
   <table:table-column table:style-name="Table10.A"/>
   <table:table-row table:style-name="Table10.1">
    <table:table-cell table:style-name="Table10.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr21" draw:name="Frame27" text:anchor-type="paragraph" svg:width="13.132cm" fo:min-height="12.674cm" draw:z-index="32">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr22" draw:name="UML diagram of com.sun.star.sheet.UniqueCellFormatRanges" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.06cm" svg:height="12.19cm" draw:z-index="33" xlink:href="CellFormatRangesUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.UniqueCellFormatRanges service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration18" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.19</text:sequence>: UniqueCellFormatRanges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">In the following example, the cells have two different background colors. The formatted ranges of the range A1:G3 are queried in both described ways.</text:p>
  <table:table table:name="Table11" table:style-name="Table11">
   <table:table-column table:style-name="Table11.A"/>
   <table:table-column table:style-name="Table11.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Table11.D"/>
   <table:table-column table:style-name="Table11.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Table11.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table11.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table11.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table11.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.E3" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table11.H4" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellFormatRanges]</text:span> object contains the following ranges: A1:C2, D1:G1, D2:F2, G2:G2, and A3:G3.</text:p>
  <text:p text:style-name="Paragraph">A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.UniqueCellFormatRanges]</text:span> object contains two <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span> range collections. One collection contains the white ranges, that is, A1:C2, D1:G1, G2:G2, and the other collection, the gray ranges, that is, D2:F2, A3:G3.</text:p>
  <text:p text:style-name="P5">The following code is an example of accessing the formatted ranges in Java. The <text:span text:style-name="Code (in text)">getCellRangeAddressString </text:span>is a helper method that returns the range address as a string. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table12" table:style-name="Table12">
   <table:table-column table:style-name="Table12.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">/** All samples regarding formatted cell ranges. */</text:p>
     <text:p text:style-name="Code">public void doFormattedCellRangesSamples(com.sun.star.sheet.XSpreadsheet xSheet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// All ranges in one container</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellRange = xSheet.getCellRangeByName(&quot;A1:G3&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Service CellFormatRanges:&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellFormatRangesSupplier xFormatSupp =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XCellFormatRangesSupplier) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XCellFormatRangesSupplier.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xRangeIA = xFormatSupp.getCellFormatRanges();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println( getCellRangeListString(xRangeIA));</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Ranges sorted in SheetCellRanges containers</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;\nService UniqueCellFormatRanges:&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XUniqueCellFormatRangesSupplier xUniqueFormatSupp =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XUniqueCellFormatRangesSupplier) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XUniqueCellFormatRangesSupplier.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xRangesIA = xUniqueFormatSupp.getUniqueCellFormatRanges();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nCount = xRangesIA.getCount();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nIndex = 0; nIndex &lt; nCount; ++nIndex) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Object aRangesObj = xRangesIA.getByIndex(nIndex);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xRangeIA = (com.sun.star.container.XIndexAccess) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.container.XIndexAccess.class, aRangesObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>System.out.println(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>&quot;Container &quot; + (nIndex + 1) + &quot;: &quot; + getCellRangeListString(xRangeIA));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code">}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">/** Returns a list of addresses of all cell ranges contained in the collection.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xRangesIA <text:s/>The XIndexAccess interface of the collection.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@return <text:s/>A string containing the cell range address list.</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">private String getCellRangeListString( com.sun.star.container.XIndexAccess xRangesIA )</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aStr = &quot;&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nCount = xRangesIA.getCount();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nIndex = 0; nIndex &lt; nCount; ++nIndex) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (nIndex &gt; 0)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aStr += &quot; &quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Object aRangeObj = xRangesIA.getByIndex(nIndex);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSheetCellRange xCellRange = (com.sun.star.sheet.XSheetCellRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetCellRange.class, aRangeObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aStr += getCellRangeAddressString(xCellRange, false);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return aStr;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="P13" text:level="4">Table Auto Formats</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.TableAutoFormat;com.sun.star.sheet.TableAutoFormat;com.sun.star.sheet.TableAutoFormatField;com.sun.star.table.XAutoFormattable]Table auto formats are used to apply different formats to a cell range. A table auto format is a collection of cell styles used to format all cells of a range. The style applied is dependent on the position of the cell. </text:p>
  <text:p text:style-name="Paragraph">The table auto format contains separate information about four different row types and four different column types:</text:p>
  <text:unordered-list text:style-name="L30">
   <text:list-item>
    <text:p text:style-name="P44">First row (header), first data area row, second data area row, last row (footer)</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P44">First column, first data area column, second data area column, last column</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The row or column types for the data area (between first and last row/column) are repeated in sequence. Each cell of the formatted range belongs to one of the row types and column types, resulting in 16 different auto-format fields. In the example below, the highlighted cells have the formatting of the first data area row and last column field. Additionally, this example shows the indexes of all the auto format fields. These indexes are used to access the field with the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span>.</text:p>
  <table:table table:name="Table13" table:style-name="Table13">
   <table:table-column table:style-name="Table13.A"/>
   <table:table-column table:style-name="Table13.B"/>
   <table:table-column table:style-name="Table13.C"/>
   <table:table-column table:style-name="Table13.D"/>
   <table:table-column table:style-name="Table13.C"/>
   <table:table-column table:style-name="Table13.F"/>
   <table:table-row>
    <table:table-cell table:style-name="Table13.A1" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="P29">First column</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="P29">First data area column</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="P29">Second data area column</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="P29">First data area column</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="P29">Last Column</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">First row (header)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B2" table:value-type="string">
     <text:p text:style-name="P29">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">First data area row</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F3" table:value-type="string">
     <text:p text:style-name="P30">7</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">Second data area row</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F4" table:value-type="string">
     <text:p text:style-name="P29">11</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">First data area row</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">6</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">5</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F3" table:value-type="string">
     <text:p text:style-name="P30">7</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">Second data area row</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">8</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">9</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F4" table:value-type="string">
     <text:p text:style-name="P29">11</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table13.B1" table:value-type="string">
     <text:p text:style-name="TextInTable">Last row (footer)</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">12</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">13</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">14</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.B3" table:value-type="string">
     <text:p text:style-name="P29">13</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table13.F4" table:value-type="string">
     <text:p text:style-name="P29">15</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph"/>
  <table:table table:name="Table14" table:style-name="Table14">
   <table:table-column table:style-name="Table14.A"/>
   <table:table-row table:style-name="Table14.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame28" text:anchor-type="paragraph" svg:width="13.642cm" fo:min-height="18.454cm" draw:z-index="34">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.TableAutoFormat" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.57cm" svg:height="17.971cm" draw:z-index="79" xlink:href="TableAutoFormatUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram shwoing the com.sun.star.sheet.TableAutoFormat service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration19" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.20</text:sequence>: TableAutoFormat</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A table auto format is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableAutoFormat]</text:span>. It contains exactly 16 auto format fields (service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableAutoFormatField]</text:span>). Each auto format field contains all properties of a single cell.</text:p>
  <text:p text:style-name="Paragraph">The cell range interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XAutoFormattable]</text:span> contains the method <text:span text:style-name="Code (in text)">autoFormat()</text:span> that applies a <text:span text:style-name="Emphasis">table auto format</text:span> to a cell range. The cell range must have a size of at least 3x3 cells. The <text:span text:style-name="Code (in text)">boolean</text:span> properties of the table auto format determine the formatting properties are copied to the cells. The default setting of all the properties is <text:span text:style-name="Code (in text)">true</text:span>.</text:p>
  <table:table table:name="Table15" table:style-name="Table15">
   <table:table-column table:style-name="Table15.A"/>
   <table:table-column table:style-name="Table15.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table15.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note4" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="19" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table15.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">In the current implementation it is not possible to modify the cell borders of a table auto format (the property <text:span text:style-name="Code (in text)">TableBorder</text:span> is missing). Nevertheless, the property <text:span text:style-name="Code (in text)">IncludeBorder</text:span> controls whether the borders of default auto formats are applied to the cells.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The collection of all table auto formats is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableAutoFormats]</text:span>. There is only one instance of this collection in the whole application. It contains all default and user-defined auto formats that are used in spreadsheets and tables of the word-processing application. It is possible to iterate through all table auto formats with an enumeration, or to access them directly using their index or their name.</text:p>
  <table:table table:name="Table16" table:style-name="Table16">
   <table:table-column table:style-name="Table16.A"/>
   <table:table-row table:style-name="Table16.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame29" text:anchor-type="paragraph" svg:width="13.293cm" fo:min-height="10.144cm" draw:z-index="35">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.TableAutoFormats" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.24cm" svg:height="9.601cm" draw:z-index="36" xlink:href="TableAutoFormatUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.TableAutoFormats service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration20" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.21</text:sequence>: TableAutoFormats</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The following example shows how to insert a new table auto format, fill it with properties, apply it to a cell range and remove it from the format collection. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table17" table:style-name="Table17">
   <table:table-column table:style-name="Table17.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public void doAutoFormatSample(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.lang.XMultiServiceFactory xServiceManager,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheetDocument xDocument) throws RuntimeException, Exception { <text:s text:c="7"/></text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the global collection of table auto formats, use global service manager</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aAutoFormatsObj = xServiceManager.createInstance(&quot;com.sun.star.sheet.TableAutoFormats&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNameContainer xAutoFormatsNA = (com.sun.star.container.XNameContainer)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNameContainer.class, aAutoFormatsObj);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create a new table auto format and insert into the container</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aAutoFormatName = <text:s/>&quot;Temp_Example&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>boolean bExistsAlready = xAutoFormatsNA.hasByName(aAutoFormatName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aAutoFormatObj = null;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (bExistsAlready)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>// auto format already exists -&gt; use it</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aAutoFormatObj = xAutoFormatsNA.getByName(aAutoFormatName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>// create a new auto format (with document service manager!)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.lang.XMultiServiceFactory xDocServiceManager =</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>(com.sun.star.lang.XMultiServiceFactory) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>com.sun.star.lang.XMultiServiceFactory.class, xDocument);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aAutoFormatObj = xDocServiceManager.createInstance(&quot;com.sun.star.sheet.TableAutoFormat&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xAutoFormatsNA.insertByName(aAutoFormatName, aAutoFormatObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// index access to the auto format fields</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xAutoFormatIA = (com.sun.star.container.XIndexAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XIndexAccess.class, aAutoFormatObj);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// set properties of all auto format fields</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nRow = 0; nRow &lt; 4; ++nRow) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nRowColor = 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>switch (nRow) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>case 0: <text:s text:c="3"/>nRowColor = 0x999999; <text:s text:c="2"/>break;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>case 1: <text:s text:c="3"/>nRowColor = 0xFFFFCC; <text:s text:c="2"/>break;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>case 2: <text:s text:c="3"/>nRowColor = 0xEEEEEE; <text:s text:c="2"/>break;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>case 3: <text:s text:c="3"/>nRowColor = 0x999999; <text:s text:c="2"/>break;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>for (int nColumn = 0; nColumn &lt; 4; ++nColumn) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>int nColor = nRowColor;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>if ((nColumn == 0) || (nColumn == 3))</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>nColor -= 0x333300;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="12"/>// get the auto format field and apply properties</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>Object aFieldObj = xAutoFormatIA.getByIndex(4 * nRow + nColumn);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aFieldObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(nColor));</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// set the auto format to the second spreadsheet</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheets xSheets = xDocument.getSheets();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xSheetsIA = (com.sun.star.container.XIndexAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XIndexAccess.class, xSheets);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSpreadsheet xSheet =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XSpreadsheet) xSheetsIA.getByIndex(1);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = xSheet.getCellRangeByName(&quot;A5:H25&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XAutoFormattable xAutoForm = (com.sun.star.table.XAutoFormattable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.table.XAutoFormattable.class, xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>xAutoForm.autoFormat(aAutoFormatName);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// remove the auto format</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (!bExistsAlready)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xAutoFormatsNA.removeByName(aAutoFormatName);</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="P13" text:level="4">Conditional Formats</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetConditionalEntries;com.sun.star.sheet.TableConditionalFormat;com.sun.star.sheet.ConditionOperator]A cell can be formatted automatically with a conditional format, depending on its contents or the result of a formula. A conditional format consists of several condition entries that contain the condition and name of a cell style. The style of the first met condition, <text:span text:style-name="Code (in text)">true</text:span> or “not zero”, is applied to the cell.</text:p>
  <table:table table:name="Table18" table:style-name="Table18">
   <table:table-column table:style-name="Table18.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame30" text:anchor-type="paragraph" svg:width="11.783cm" fo:min-height="10.682cm" draw:z-index="37">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr23" draw:name="UML diagram of com.sun.star.sheet.TableConditionalFormat" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="11.68cm" svg:height="10.201cm" draw:z-index="78" xlink:href="SheetCondFormatUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.TableConditionalFormat service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration21" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.22</text:sequence>: TableConditionalFormats</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A cell or cell range object contains the properties <text:span text:style-name="Code (in text)">ConditionalFormat</text:span> and <text:span text:style-name="Code (in text)">ConditionalFormatLocal</text:span>. These properties return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetConditionalEntries]</text:span> of the conditional format container <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableConditionalFormat]</text:span>. The objects of both properties are equal, except for the representation of formulas. The <text:s/><text:span text:style-name="Code (in text)">ConditionalFormatLocal </text:span>property uses function names in the current language.</text:p>
  <table:table table:name="Table19" table:style-name="Table19">
   <table:table-column table:style-name="Table19.A"/>
   <table:table-column table:style-name="Table19.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table19.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note5" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="20" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table19.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">After a conditional format is changed, it has to be reinserted into the property set of the cell or cell range.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="P45">A condition entry of a conditional format is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableConditionalEntry]</text:span>. It implements two interfaces:</text:p>
  <text:unordered-list text:style-name="L31">
   <text:list-item>
    <text:p text:style-name="P46">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCondition]</text:span> gets and sets the operator, the first and second formula and the base address for relative references. </text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P46">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetConditionalEntry]</text:span> gets and sets the cell style name.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableConditionalFormat]</text:span> contains all format conditions and returns <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableConditionalEntry]</text:span> objects. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetConditionalEntries]</text:span> inserts new conditions and removes them.</text:p>
  <text:unordered-list text:style-name="L32">
   <text:list-item>
    <text:p text:style-name="P47">The method <text:span text:style-name="Code (in text)">addNew()</text:span> inserts a new condition. It expects a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.PropertyValue]</text:span> objects. The following properties are supported:</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P48"><text:span text:style-name="Code (in text)">Operator</text:span>: A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ConditionOperator]</text:span> constant describing the operation to perform.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P48"><text:span text:style-name="Code (in text)">Formula1</text:span> and <text:span text:style-name="Code (in text)">Formula2</text:span>: Strings that contain the values or formulas to evaluate. <text:span text:style-name="Code (in text)">Formula2</text:span> is used only if the property <text:span text:style-name="Code (in text)">Operator</text:span> contains <text:span text:style-name="Code (in text)">BETWEEN</text:span> or <text:span text:style-name="Code (in text)">NOT_BETWEEN</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P48"><text:span text:style-name="Code (in text)">SourcePosition</text:span>: A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellAddress]</text:span> struct that contains the base address for relative cell references in formulas.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P48"><text:span text:style-name="Code (in text)">StyleName</text:span>: The name of the cell style to apply.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P49">The methods <text:span text:style-name="Code (in text)">removeByIndex()</text:span> removes the condition entry at the specified position.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P49">The method <text:span text:style-name="Code (in text)">clear()</text:span> removes all condition entries.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P45">The following example applies a conditional format to a cell range. It uses the cell style “MyNewCellStyle” that is applied to each cell containing a value greater than 1. The <text:span text:style-name="Code (in text)">xSheet</text:span> is the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> interface of a spreadsheet. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table20" table:style-name="Table20">
   <table:table-column table:style-name="Table20.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the conditional format object of the cell range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = xSheet.getCellRangeByName(&quot;A1:B10&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetConditionalEntries xEntries =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.sheet.XSheetConditionalEntries) xPropSet.getPropertyValue(&quot;ConditionalFormat&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create a condition and apply it to the range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.PropertyValue[] aCondition = new com.sun.star.beans.PropertyValue[3];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[0] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[0].Name <text:s/>= &quot;Operator&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[0].Value = com.sun.star.sheet.ConditionOperator.GREATER;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[1] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[1].Name <text:s/>= &quot;Formula1&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[1].Value = &quot;1&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[2] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[2].Name <text:s/>= &quot;StyleName&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aCondition[2].Value = &quot;MyNewCellStyle&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xEntries.addNew(aCondition);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;ConditionalFormat&quot;, xEntries);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Navigating</text:h>
  <text:p text:style-name="Paragraph">Unlike other document models that provide access to their content by content suppliers, the spreadsheet document contains properties that allow direct access to various containers.</text:p>
  <table:table table:name="Tabelle1" table:style-name="Tabelle1">
   <table:table-column table:style-name="Tabelle1.A"/>
   <table:table-column table:style-name="Tabelle1.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle1.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Important3" text:anchor-type="paragraph" svg:x="0.12cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="116" xlink:href="../important.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Pay attention to the following important text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Tabelle1.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">This design inconsistency may be changed in future versions. The properties remain for compatibility.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The properties allow access to various containers:</text:p>
  <text:unordered-list text:style-name="L33">
   <text:list-item>
    <text:p text:style-name="P50"><text:span text:style-name="Code (in text)">NamedRanges</text:span>: The container with all the named ranges. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Navigating.NamedRanges]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P50"><text:span text:style-name="Code (in text)">ColumnLabelRanges</text:span> and <text:span text:style-name="Code (in text)">RowLabelRanges</text:span>: Containers with row labels and column labels. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Navigating.LabelRanges]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P50"><text:span text:style-name="Code (in text)">DatabaseRanges</text:span>: The container with all database ranges. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Database.Ranges]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P50"><text:span text:style-name="Code (in text)">SheetLinks</text:span>, <text:span text:style-name="Code (in text)">AreaLinks</text:span> and <text:span text:style-name="Code (in text)">DDELinks</text:span>: Containers with external links. See <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.LinkingExternal.Sheet]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="P13" text:level="4">Cell Cursor</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetCellCursor]A <text:span text:style-name="Emphasis">cell cursor</text:span> is a cell range with extended functionality and is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellCursor]</text:span>. With a cell cursor it is possible to move through a cell range. Each table can contain only one cell cursor.</text:p>
  <table:table table:name="Tabelle2" table:style-name="Tabelle2">
   <table:table-column table:style-name="Tabelle2.A"/>
   <table:table-row table:style-name="Tabelle2.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Rahmen3" text:anchor-type="paragraph" svg:width="13.596cm" fo:min-height="7.624cm" draw:z-index="117">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetCellCursor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.531cm" svg:height="7.14cm" draw:z-index="118" xlink:href="SheetCellCursorUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SheetCellCursor service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration22" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.23</text:sequence>: Cell cursor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">It implements all interfaces described in <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.CellRanges]</text:span> and the basic cursor interfaces of the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellCursor]</text:span> that represents the cell or cell range cursor of a table.</text:p>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> of a spreadsheet creates the cell cursors. The methods return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellCursor]</text:span> of the cursor. It is derived from the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRange]</text:span> that provides access to cells and cell ranges. Refer to <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.CellRanges]</text:span> for additional information.</text:p>
  <text:unordered-list text:style-name="L34">
   <text:list-item>
    <text:p text:style-name="P51">The method <text:span text:style-name="Code (in text)">createCursor()</text:span> creates a cursor that spans over the whole spreadsheet.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P51">The method <text:span text:style-name="Code (in text)">createCursorByRange()</text:span> creates a cursor that spans over the given cell range.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">SheetCellCursor </text:span>includes the <text:span text:style-name="Code (in text)">CellCursor</text:span> service from the table module:</text:p>
  <table:table table:name="Tabelle3" table:style-name="Tabelle3">
   <table:table-column table:style-name="Tabelle3.A"/>
   <table:table-row table:style-name="Tabelle3.1">
    <table:table-cell table:style-name="Tabelle3.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Rahmen31" text:anchor-type="paragraph" svg:width="10.474cm" fo:min-height="2.743cm" draw:z-index="119">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.CellCursor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="10.43cm" svg:height="2.26cm" draw:z-index="120" xlink:href="CellCursorUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.CellCursor service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration23" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.24</text:sequence>: Table cell cursor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Cursor Movement</text:h>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellCursor]</text:span> implements the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellCursor]</text:span> that provides methods to move to specific cells of a cell range. This interface is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellRange]</text:span> so all methods that access single cells can be used.</text:p>
  <table:table table:name="Tabelle4" table:style-name="Tabelle4">
   <table:table-column table:style-name="Tabelle4.A"/>
   <table:table-column table:style-name="Tabelle4.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle4.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellCursor]</text:span></text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle4.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.table.CellCursor:gotoStart]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle4.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Moves to the first filled cell. This cell may be outside of the current range of the cursor.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle4.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.table.CellCursor:gotoEnd]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle4.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Moves to the last filled cell. This cell may be outside of the current range of the cursor.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle4.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.table.CellCursor:gotoOffset]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle4.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Moves the cursor relative to the current position, even if the cursor is a range.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle4.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.table.CellCursor:gotoPrev]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle4.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Moves the cursor to the latest available unprotected cell. In most cases,this is the cell to the left of the current cell.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle4.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.table.CellCursor:gotoNext]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle4.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Moves the cursor to the next available unprotected cell. In most cases,this is the cell to the right of the current cell.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The following example shows how to modify a cell beyond a filled area.The <text:span text:style-name="Code (in text)">xCursor</text:span> may be an initialized cell cursor. <text:s/>[SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <table:table table:name="Tabelle5" table:style-name="Tabelle5">
   <table:table-column table:style-name="Tabelle5.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Use the cell cursor to add some data below of the filled area ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Move to the last filled cell.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCursor.gotoEnd();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Move one row down.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCursor.gotoOffset(0, 1);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCursor.getCellByPosition(0, 0).setFormula(&quot;Beyond of the last filled cell.&quot;);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellCursor]</text:span> sets the cursor to specific ranges in the sheet.</text:p>
  <text:unordered-list text:style-name="L35">
   <text:list-item>
    <text:p text:style-name="P52">The method <text:span text:style-name="Code (in text)">collapseToCurrentRegion()</text:span> expands the cursor to the shortest cell range filled with any data. A few examples from the spreadsheet below are: the cursor C2:C2 expands to B2:D3, cursor C1:C2 expands to B1:D3 and cursor A1:D4 is unchanged.</text:p>
   </text:list-item>
  </text:unordered-list>
  <table:table table:name="Tabelle6" table:style-name="Tabelle6">
   <table:table-column table:style-name="Tabelle6.A"/>
   <table:table-column table:style-name="Tabelle6.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Tabelle6.E"/>
   <table:table-column table:style-name="Tabelle6.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Tabelle6.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle6.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle6.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">{=C2:D3}</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.H2" table:value-type="string">
     <text:p text:style-name="P29">{=C2:D3}</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle6.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">Text</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29">{=C2:D3}</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.H2" table:value-type="string">
     <text:p text:style-name="P29">{=C2:D3}</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle6.A2" table:value-type="string">
     <text:p text:style-name="P30">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle6.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:unordered-list text:style-name="L36">
   <text:list-item>
    <text:p text:style-name="P53">The method <text:span text:style-name="Code (in text)">collapseToCurrentArray()</text:span> expands or shortens the cursor range to an array formula range. This works only if the top-left cell of the current cursor contains an array formula. An example using the spreadsheet above: All the cursors with a top-left cell located in the range F2:G3 are modified to this array formula range, F2:F2 or G2:G4.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P54">The method <text:span text:style-name="Code (in text)">collapseToMergedArea()</text:span> expands the current cursor range so that all merged cell ranges intersecting the current range fit completely.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L36">
   <text:list-item>
    <text:p text:style-name="P54">The methods <text:span text:style-name="Code (in text)">expandToEntireColumns()</text:span> and <text:span text:style-name="Code (in text)">expandToEntireRows()</text:span> expand the cursor range so that it contains all cells of the columns or rows of the current range.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P54">The method <text:span text:style-name="Code (in text)">collapseToSize()</text:span> resizes the cursor range to the given dimensions. The start address of the range is left unmodified. To move the cursor range without changing the current size, use the method <text:span text:style-name="Code (in text)">gotoOffset()</text:span> from the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XCellCursor]</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <table:table table:name="Tabelle8" table:style-name="Tabelle8">
   <table:table-column table:style-name="Tabelle8.A"/>
   <table:table-column table:style-name="Tabelle8.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle8.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note6" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="115" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Tabelle8.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Some of the methods above have misleading names: <text:span text:style-name="Code (in text)">collapseToCurrentRegion()</text:span> and <text:span text:style-name="Code (in text)">collapseToMergedArea()</text:span> expand the cursor range,but never shorten it and <text:span text:style-name="Code (in text)">collapseToCurrentArray()</text:span>may expand or shorten the cursor range.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="P17">The following example tries to find the range of the array formula in cell F22.The <text:span text:style-name="Code (in text)">xSheet</text:span> is a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> interface of a spreadsheet and <text:span text:style-name="Code (in text)">getCellRangeAddressString()</text:span> is a helper method that returns the range address as a string. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle9" table:style-name="Tabelle9">
   <table:table-column table:style-name="Tabelle9.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- find the array formula using a cell cursor ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xRange = xSheet.getCellRangeByName(&quot;F22&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCellRange xCellRange = (com.sun.star.sheet.XSheetCellRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetCellRange.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCellCursor xCursor = xSheet.createCursorByRange(xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCursor.collapseToCurrentArray();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XArrayFormulaRange xArray = (com.sun.star.sheet.XArrayFormulaRange)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XArrayFormulaRange.class, xCursor);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>&quot;Array formula in &quot; + getCellRangeAddressString(xCursor, false)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>+ &quot; contains formula &quot; + xArray.getArrayFormula());</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Used Area</text:h>
  <text:p text:style-name="P17">[TOPIC:com.sun.star.sheet.XUsedAreaCursor]The cursor interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XUsedAreaCursor]</text:span> contains methods to locate the used area of the entire sheet. The used area is the smallest cell range that contains all cells of the spreadsheet with any contents, such as values, text, and formulas, or visible formatting, such as borders and background color. In the following example, <text:span text:style-name="Code (in text)">xSheet</text:span> is a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> interface of a spreadsheet. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle10" table:style-name="Tabelle10">
   <table:table-column table:style-name="Tabelle10.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Find the used area ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCellCursor xCursor = xSheet.createCursor();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XUsedAreaCursor xUsedCursor = (com.sun.star.sheet.XUsedAreaCursor)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XUsedAreaCursor.class, xCursor);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xUsedCursor.gotoStartOfUsedArea(false);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xUsedCursor.gotoEndOfUsedArea(true);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;The used area is: &quot; + getCellRangeAddressString(xCursor, true));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Referencing Ranges by Name</text:h>
  <text:p text:style-name="Paragraph">Cell ranges can be assigned a name that they may be addressed by in formulas. This is done with <text:span text:style-name="Emphasis">named ranges</text:span>. Another way to use names for cell references in formulas is the automatic label lookup which is controlled using <text:span text:style-name="Emphasis">label ranges</text:span>.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Named Ranges</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XNamedRanges]A named range is a named formula expression, where a cell range is just one possible content. Thus, the content of a named range is always set as a string.</text:p>
  <table:table table:name="Tabelle11" table:style-name="Tabelle11">
   <table:table-column table:style-name="Tabelle11.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle11.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Rahmen4" text:anchor-type="paragraph" svg:width="11.111cm" fo:min-height="10.283cm" draw:z-index="121">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.NamedRange" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="11.06cm" svg:height="9.8cm" draw:z-index="122" xlink:href="NamedRangesUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.NamedRange service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration24" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.25</text:sequence>: Named ranges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The collection of named ranges is accessed using the document&apos;s <text:span text:style-name="Code (in text)">NamedRanges</text:span> property. A new named range is added by calling the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XNamedRanges]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">addNewByName()</text:span> method. The method&apos;s parameters are:</text:p>
  <text:unordered-list text:style-name="L37">
   <text:list-item>
    <text:p text:style-name="P55">The name for the new named range.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P55">The content. This must be a string containing a valid formula expression. A commonly used type of expression is an absolute cell range reference like “$Sheet1.$A1:$C3”.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P55">A reference position for relative references. If the content contains relative cell references, and the named range is used in a formula, the references are adjusted for the formula&apos;s position. The reference position states which cell the references are relative to.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P55">The type of the named range that controls if the named range is included in some dialogs. The type must be a combination of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.NamedRangeFlag]</text:span> constants:</text:p>
    <text:unordered-list>
     <text:list-item>
      <text:p text:style-name="P55">If the <text:span text:style-name="Code (in text)">FILTER_CRITERIA</text:span> bit is set, the named range is offered as a criteria range in the “Advanced Filter” dialog.</text:p>
     </text:list-item>
     <text:list-item>
      <text:p text:style-name="P55">If the <text:span text:style-name="Code (in text)">PRINT_AREA</text:span>, <text:span text:style-name="Code (in text)">COLUMN_HEADER</text:span> or <text:span text:style-name="Code (in text)">ROW_HEADER</text:span> bit is set, the named range is selected as “Print range”, “Columns to repeat” or “Rows to repeat” in the <text:span text:style-name="Buttons/Menus">Edit Print Ranges</text:span> dialog.</text:p>
     </text:list-item>
    </text:unordered-list>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">addNewFromTitles()</text:span> method creates named ranges from header columns or rows in a cell range. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Border]</text:span> enum parameter selects which named ranges are created:</text:p>
  <text:unordered-list text:style-name="L38">
   <text:list-item>
    <text:p text:style-name="P56">If the value is <text:span text:style-name="Code (in text)">TOP</text:span>, a named range is created for each column of the cell range with the name taken from the range&apos;s first row, and the other cells of that column within the cell range as content.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P56">For <text:span text:style-name="Code (in text)">BOTTOM</text:span>, the names are taken from the range&apos;s last row.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P56">If the value is <text:span text:style-name="Code (in text)">LEFT</text:span>, a named range is created for each row of the cell range with the name taken from the range&apos;s first column, and the other cells of that row within the cell range as content.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P56">For <text:span text:style-name="Code (in text)">RIGHT</text:span>, the names are taken from the range&apos;s last column.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">removeByName()</text:span> method is used to remove a named range. The <text:span text:style-name="Code (in text)">outputList()</text:span> method writes a list of all the named ranges into the document, starting at the specified cell position.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.NamedRange]</text:span> service accesses an existing named range. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span> interface changes the name, and the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XNamedRange]</text:span> interface changes the other settings. See the <text:span text:style-name="Code (in text)">addNewByName</text:span> description above for the meaning of the individual values.</text:p>
  <text:p text:style-name="Paragraph">If the content of the name is a single cell range reference, the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeReferrer]</text:span> interface is used to access that cell range.</text:p>
  <text:p text:style-name="Paragraph">The following example creates a named range that calculates the sum of the two cells above the position where it is used. This is done by using the relative reference “G43:G44” with the reference position G45. Then, the example uses the named range in two formulas. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle14" table:style-name="Tabelle14">
   <table:table-column table:style-name="Tabelle14.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// insert a named range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xDocProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xDocument);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aRangesObj = xDocProp.getPropertyValue(&quot;NamedRanges&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XNamedRanges xNamedRanges = (com.sun.star.sheet.XNamedRanges)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XNamedRanges.class, aRangesObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aRefPos = new com.sun.star.table.CellAddress();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRefPos.Sheet <text:s/>= 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRefPos.Column = 6;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRefPos.Row <text:s text:c="3"/>= 44;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xNamedRanges.addNewByName(&quot;ExampleName&quot;, &quot;SUM(G43:G44)&quot;, aRefPos, 0);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// use the named range in formulas</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSheet.getCellByPosition(6, 44).setFormula(&quot;=ExampleName&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSheet.getCellByPosition(7, 44).setFormula(&quot;=ExampleName&quot;);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Label Ranges</text:h>
  <text:p text:style-name="P19">[TOPIC:com.sun.star.sheet.LabelRanges]A label range consists of a label area containing the labels, and a data area containing the data that the labels address. There are label ranges for columns and rows of data, which are kept in two separate collections in the document.</text:p>
  <table:table table:name="Tabelle15" table:style-name="Tabelle15">
   <table:table-column table:style-name="Tabelle15.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle15.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Rahmen5" text:anchor-type="paragraph" svg:width="10.911cm" fo:min-height="9.663cm" draw:z-index="123">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.LabelRange" text:anchor-type="paragraph" svg:x="0cm" svg:y="0cm" svg:width="10.871cm" svg:height="9.179cm" draw:z-index="124" xlink:href="NamedRangesUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.LabelRange service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration25" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.26</text:sequence>: Label Ranges</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.LabelRanges]</text:span> service contains the document&apos;s column label ranges or row label ranges, depending if the <text:span text:style-name="Code (in text)">ColumnLabelRanges</text:span> or <text:span text:style-name="Code (in text)">RowLabelRanges</text:span> property was used to get it. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XLabelRanges]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">addNew()</text:span> method is used to add a new label range, specifying the label area and data area. The <text:span text:style-name="Code (in text)">removeByIndex()</text:span> method removes a label range.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.LabelRange]</text:span> service represents a single label range and contains the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XLabelRange]</text:span> interface to modify the label area and data area.</text:p>
  <text:p text:style-name="Paragraph"/>
  <text:p text:style-name="P5">The following example inserts a column label range with the label area G48:H48 and the data area G49:H50, that is, the content of G48 is used as a label for G49:G50 and the content of H48 is used as a label for H49:H50, as shown in the two formulas the example inserts. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle16" table:style-name="Tabelle16">
   <table:table-column table:style-name="Tabelle16.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xRange = xSheet.getCellRangeByPosition(6, 47, 7, 49);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeData xData = (com.sun.star.sheet.XCellRangeData)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeData.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object[][] aValues =</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>{</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{&quot;Apples&quot;, &quot;Oranges&quot;},</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{new Double(5), new Double(7)},</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>{new Double(6), new Double(8)}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>};</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xData.setDataArray(aValues);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// insert a column label range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aLabelsObj = xDocProp.getPropertyValue(&quot;ColumnLabelRanges&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XLabelRanges xLabelRanges = (com.sun.star.sheet.XLabelRanges)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XLabelRanges.class, aLabelsObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress aLabelArea = new com.sun.star.table.CellRangeAddress();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aLabelArea.Sheet <text:s text:c="6"/>= 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aLabelArea.StartColumn = 6;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aLabelArea.StartRow <text:s text:c="3"/>= 47;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aLabelArea.EndColumn <text:s text:c="2"/>= 7;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aLabelArea.EndRow <text:s text:c="5"/>= 47;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress aDataArea = new com.sun.star.table.CellRangeAddress();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aDataArea.Sheet <text:s text:c="6"/>= 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aDataArea.StartColumn = 6;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aDataArea.StartRow <text:s text:c="3"/>= 48;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aDataArea.EndColumn <text:s text:c="2"/>= 7;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aDataArea.EndRow <text:s text:c="5"/>= 49;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xLabelRanges.addNew(aLabelArea, aDataArea);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// use the label range in formulas</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSheet.getCellByPosition(8, 48).setFormula(&quot;=Apples+Oranges&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSheet.getCellByPosition(8, 49).setFormula(&quot;=Apples+Oranges&quot;);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Querying for Cells with Specific Properties</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetRangesQuery;com.sun.star.sheet.XCellRangesQuery;com.sun.star.sheet.XFormulaQuery]Cells, cell ranges and collections of cell ranges are queried for certain cell contents through the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetRangesQuery]</text:span>. It implements interfaces to query cells and cell ranges with specific properties. </text:p>
  <text:p text:style-name="Paragraph">The methods of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangesQuery]</text:span> search for cells with specific contents or properties inside of the given cell range. The methods of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XFormulaQuery]</text:span> search for cells in the entire spreadsheet that are reference to or are referenced from formula cells in the given range.</text:p>
  <table:table table:name="Tabelle17" table:style-name="Tabelle17">
   <table:table-column table:style-name="Tabelle17.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle17.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Rahmen6" text:anchor-type="paragraph" svg:width="11.712cm" fo:min-height="8.243cm" draw:z-index="127">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetRangesQuery" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.67cm" svg:height="7.759cm" draw:z-index="128" xlink:href="SheetCellRangeUML3.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.SheetRangesQuery service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration26" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.27</text:sequence>: Query sheet ranges</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <table:table table:name="Tabelle18" table:style-name="Tabelle18">
   <table:table-column table:style-name="Tabelle18.A"/>
   <table:table-column table:style-name="Tabelle18.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle18.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Important4" text:anchor-type="paragraph" svg:x="0.12cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="125" xlink:href="../important.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Pay attention to the following important text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Tabelle18.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Due to a bug in the current implementation, both methods <text:span text:style-name="Code (in text)">queryPrecedents()</text:span> and <text:span text:style-name="Code (in text)">queryDependents()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XFormulaQuery]</text:span> cause an endless loop in recursive mode, if parameter <text:span text:style-name="Code (in text)">bRecursive</text:span> is <text:span text:style-name="Code (in text)">true</text:span>. </text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">All methods return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCellRanges]</text:span> of a cell range collection. Cell range collections are described in the chapter <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.DocumentStructure.CellRangesAndCellsContainer]</text:span>.</text:p>
  <table:table table:name="Tabelle19" table:style-name="Tabelle19">
   <table:table-column table:style-name="Tabelle19.A"/>
   <table:table-column table:style-name="Tabelle19.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle19.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead"><text:s/>Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangesQuery]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryVisibleCells]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells that are not hidden.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryEmptyCells]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells that do not have any content.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryContentCells]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells that have the contents described by the passed parameter. The flags are defined in <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellFlags]</text:span>.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryFormulaCells]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all formula cells whose results have a specific type described by the passed parameter. The result flags are defined in <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FormulaResult]</text:span>.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryColumnDifferences]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells of the range that have different contents than the cell in the same column of the specified row. See <text:s/>the example below.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryRowDifferences]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells of the range that have different contents than the cell in the same row of the specified column. See the example below.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle19.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="T10">[IDLS:com.sun.star.sheet.XCellRangesQuery:queryIntersection]</text:span><text:span text:style-name="T11">()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle19.B2" table:value-type="string">
     <text:p text:style-name="P57">Returns all cells of the range that are contained in the passed range address.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">Example:</text:p>
  <table:table table:name="Tabelle20" table:style-name="Tabelle20">
   <table:table-column table:style-name="Tabelle20.A"/>
   <table:table-column table:style-name="Tabelle20.B" table:number-columns-repeated="2"/>
   <table:table-column table:style-name="Tabelle20.D"/>
   <table:table-column table:style-name="Tabelle20.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Tabelle20.H"/>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">A</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">B</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">C</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">D</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">E</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.A1" table:value-type="string">
     <text:p text:style-name="P30">F</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.H1" table:value-type="string">
     <text:p text:style-name="P30">G</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle20.A2" table:value-type="string">
     <text:p text:style-name="P30">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle20.A2" table:value-type="string">
     <text:p text:style-name="P30">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle20.A2" table:value-type="string">
     <text:p text:style-name="P30">3</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Tabelle20.A2" table:value-type="string">
     <text:p text:style-name="P30">4</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.B2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
    <table:table-cell table:style-name="Tabelle20.H2" table:value-type="string">
     <text:p text:style-name="P29"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P58">The queried range is A1:C4 and the passed cell address is B2.</text:p>
  <text:unordered-list text:style-name="L39">
   <text:list-item>
    <text:p text:style-name="P59"><text:span text:style-name="Code (in text)">queryColumnDifferences()</text:span>: (the row number is of interest) The cells of column A are compared with cell A2, the cells of column B with B2 and so on. The function returns the cell range list B1:B1, B4:B4, C3:C4.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L40">
   <text:list-item>
    <text:p text:style-name="P60"><text:span text:style-name="Code (in text)">queryRowDifferences()</text:span>: (the column index is of interest) The function compares row 1 with cell B1, row 2 with cell B2 and so on. It returns the cell range list C1:C1, A2:A2, A3:A3, C3:C3.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The following code queries all cells with text content: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle21" table:style-name="Tabelle21">
   <table:table-column table:style-name="Tabelle21.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Cell Ranges Query ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// query addresses of all cells containing text</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangesQuery xRangesQuery = (com.sun.star.sheet.XCellRangesQuery)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangesQuery.class, xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCellRanges xCellRanges =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xRangesQuery.<text:span text:style-name="CODE Emphasis">queryContentCells</text:span>((short)com.sun.star.sheet.CellFlags.STRING);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Cells containing text: &quot; + xCellRanges.getRangeAddressesAsString());</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Search and Replace</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.util.XReplaceable]The cell range interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XReplaceable]</text:span> is derived from <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XSearchable]</text:span> providing search and replacement of text.</text:p>
  <text:unordered-list text:style-name="L41">
   <text:list-item>
    <text:p text:style-name="P61">The method <text:span text:style-name="Code (in text)">createReplaceDescriptor()</text:span> creates a new descriptor that contains all data for the replace action. It returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XReplaceDescriptor]</text:span> of this descriptor.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P61">The method <text:span text:style-name="Code (in text)">replaceAll()</text:span> performs a replacement in all cells according to the passed replace descriptor. </text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The following example replaces all occurrences of “cell” with “text”: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Tabelle22" table:style-name="Tabelle22">
   <table:table-column table:style-name="Tabelle22.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Replace text in all cells. ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XReplaceable xReplace = (com.sun.star.util.XReplaceable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.util.XReplaceable.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XReplaceDescriptor xReplaceDesc = xReplace.<text:span text:style-name="CODE Emphasis">createReplaceDescriptor</text:span>();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xReplaceDesc.setSearchString(&quot;cell&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xReplaceDesc.setReplaceString(&quot;text&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// property SearchWords searches for whole cells!</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xReplaceDesc.setPropertyValue(&quot;SearchWords&quot;, new Boolean(false));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nCount = xReplace.<text:span text:style-name="CODE Emphasis">replaceAll</text:span>(xReplaceDesc);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;Search text replaced &quot; + nCount + &quot; times.&quot;); </text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <table:table table:name="Tabelle23" table:style-name="Tabelle23">
   <table:table-column table:style-name="Tabelle23.A"/>
   <table:table-column table:style-name="Tabelle23.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Tabelle23.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note7" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="126" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Tabelle23.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The property <text:span text:style-name="Code (in text)">SearchWords</text:span> has a different meaning in spreadsheets: If <text:span text:style-name="Code (in text)">true,</text:span> only cells containing the whole search text and nothing else is found. If <text:span text:style-name="Code (in text)">false,</text:span> cells containing the search string as a substring is found.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Sorting</text:h>
  <text:h text:style-name="Head 4" text:level="4">Table Sort Descriptor</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetSortDescriptor2]A <text:span text:style-name="Emphasis">sort descriptor</text:span> describes all properties of a sort operation. The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableSortDescriptor2]</text:span> extends the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.SortDescriptor2]</text:span> with table specific sorting properties, such as:</text:p>
  <text:p text:style-name="Paragraph">The sorting orientation using the <text:span text:style-name="Code (in text)">boolean IsSortColumns.</text:span></text:p>
  <text:p text:style-name="Paragraph">A sequence of sorting fields using the <text:span text:style-name="Code (in text)">SortFields</text:span> property that contains a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableSortField]</text:span> structs.</text:p>
  <text:p text:style-name="Paragraph">The size of the sequence using the <text:span text:style-name="Code (in text)">MaxSortFieldsCount</text:span> property.</text:p>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetSortDescriptor2]</text:span> extends the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableSortDescriptor2]</text:span>with spreadsheet specific sorting properties, such as:</text:p>
  <text:p text:style-name="Paragraph">The moving of cell formats with the cells they belong to using the boolean property <text:span text:style-name="Code (in text)">BindFormatsToContent</text:span>.The existence of column or row headers using the boolean property <text:span text:style-name="Code (in text)">ContainsHeader</text:span>.</text:p>
  <text:p text:style-name="Paragraph">The copying of the sorted data to another position in the document using the boolean property <text:span text:style-name="Code (in text)">CopyOutputData</text:span>.</text:p>
  <text:p text:style-name="Paragraph">Position where sorted data are to be copied using the property <text:span text:style-name="Code (in text)">OutputPosition</text:span>.</text:p>
  <text:p text:style-name="Paragraph">If the <text:span text:style-name="Code (in text)">IsUserListEnabled</text:span> property is <text:span text:style-name="Code (in text)">true</text:span>, a user-defined sort list is used that specifies an order for the strings it contains. The <text:span text:style-name="Code (in text)">UserListIndex</text:span> property selects an entry from the <text:span text:style-name="Code (in text)">UserLists</text:span> property of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.GlobalSheetSettings]</text:span> service to find the sort list that is used.</text:p>
  <table:table table:name="Table27" table:style-name="Table27">
   <table:table-column table:style-name="Table27.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table27.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame31" text:anchor-type="paragraph" svg:width="12.474cm" fo:min-height="13.944cm" draw:z-index="38">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetSortDescriptor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.42cm" svg:height="13.46cm" draw:z-index="51" xlink:href="DatabaseOperationsUML3.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.SheetSortDescriptor service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration27" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.28</text:sequence>: SheetSortDescriptor2</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">To sort the contents of a cell range, the <text:span text:style-name="Code (in text)">sort()</text:span> method from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XSortable]</text:span> interface is called, passing a sequence of property values with properties from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetSortDescriptor2]</text:span> service. The sequence can be constructed from scratch containing the properties that should be set, or the return value of the <text:span text:style-name="Code (in text)">createSortDescriptor()</text:span> method can be used and modified. If the cell range is a database range that has a stored sort operation, <text:span text:style-name="Code (in text)">createSortDescriptor()</text:span> returns a sequence with the options of this sort operation.</text:p>
  <text:p text:style-name="Paragraph">The fields that the cell range is sorted by are specified in the <text:span text:style-name="Code (in text)">SortFields</text:span> property as a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableSortField]</text:span> elements. In the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableSortField]</text:span> struct, the <text:span text:style-name="Code (in text)">Field</text:span> member specifies the field number by which to sort, and the boolean <text:span text:style-name="Code (in text)">IsAscending</text:span> member switches between ascending and descending sorting for that field. The boolean <text:span text:style-name="Code (in text)">IsCaseSensitive</text:span> specifies if the case of letters is important when comparing entries. The <text:span text:style-name="Code (in text)">CollatorLocale</text:span> is used to sort according to the sorting rules of a given locale. For some locales, several different sorting rules exist. In this case, the <text:span text:style-name="Code (in text)">CollatorAlgorithm</text:span> <text:s/>is used to select one of the sorting rules. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.i18n.Collator]</text:span> service is used to find the possible <text:span text:style-name="Code (in text)">CollatorAlgorithm</text:span> values for a locale. At the moment it is not possible to have different Locals, Algorithms and case sensity on the different fields. This is not possible in the spreadsheet application at the moment.</text:p>
  <table:table table:name="Table58" table:style-name="Table58">
   <table:table-column table:style-name="Table58.A"/>
   <table:table-column table:style-name="Table58.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table58.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note8" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="15" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table58.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The <text:span text:style-name="Code (in text)">FieldType</text:span> member, that is used to select textual or numeric sorting in text documents is ignored in the spreadsheet application. In a spreadsheet, a cell always has a known type of text or value, which is used for sorting, with numbers sorted before text cells.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph"/>
  <text:p text:style-name="Paragraph"/>
  <text:p text:style-name="Paragraph"/>
  <text:p text:style-name="Paragraph">The following example sorts the cell range by the second column in ascending order: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table88" table:style-name="Table88">
   <table:table-column table:style-name="Table88.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- sort by second column, ascending ---</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// define the fields to sort</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.SortField[] aSortFields = new com.sun.star.table.TableSortField[1];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortFields[0] = new com.sun.star.table.TableSortField();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortFields[0].Field <text:s text:c="8"/>= 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortFields[0].IsAscending = true;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortFields[0].IsCaseSensitive = false;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// define the sort descriptor</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.PropertyValue[] aSortDesc = new com.sun.star.beans.PropertyValue[2];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[0] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[0].Name <text:s/>= &quot;SortFields&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[0].Value = aSortFields;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[1] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[1].Name <text:s/>= &quot;ContainsHeader&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSortDesc[1].Value = new Boolean(true);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// perform the sorting</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XSortable xSort = (com.sun.star.util.XSortable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.util.XSortable.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSort.sort(aSortDesc);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Database Operations</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DatabaseRange;com.sun.star.sheet.DatabaseRanges]This section discusses the operations that treat the contents of a cell range as database data, organized in rows and columns like a database table. These operations are filtering, sorting, adding of subtotals and importing from an external database. Each of the operations is controlled using a descriptor service. The descriptors can be used in two ways:</text:p>
  <text:unordered-list text:style-name="L42">
   <text:list-item>
    <text:p text:style-name="P62">Performing an operation on a cell range. This is described in the following sections about the individual descriptors.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P62">Accessing the settings that are stored with a database range. This is described in the section about database ranges.</text:p>
   </text:list-item>
  </text:unordered-list>
  <table:table table:name="Table83" table:style-name="Table83">
   <table:table-column table:style-name="Table83.A"/>
   <table:table-row table:style-name="Table83.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame32" text:anchor-type="paragraph" svg:width="13.755cm" fo:min-height="20.274cm" draw:z-index="39">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.DatabaseRange" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.69cm" svg:height="19.791cm" draw:z-index="40" xlink:href="DatabaseOperationsUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram shwing the com.sun.star.sheet.DatabaseRange service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration28" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.29</text:sequence>: DatabaseRange</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Filtering</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetFilterable;com.sun.star.sheet.XSheetFilterableEx;com.sun.star.sheet.SheetFilterDescriptor]A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetFilterDescriptor]</text:span> object is created using the <text:span text:style-name="Code (in text)">createFilterDescriptor()</text:span> method from the range&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterable]</text:span> interface to filter data in a cell range. After applying the settings to the descriptor, it is passed to the <text:span text:style-name="Code (in text)">filter()</text:span> method.</text:p>
  <text:p text:style-name="Paragraph">If <text:span text:style-name="Code (in text)">true</text:span> is passed as a <text:span text:style-name="Code (in text)">bEmpty</text:span> parameter to <text:span text:style-name="Code (in text)">createFilterDescriptor()</text:span>, the returned descriptor contains default values for all settings. If <text:span text:style-name="Code (in text)">false</text:span> is passed and the cell range is a database range that has a stored filter operation, the settings for that filter are used.</text:p>
  <table:table table:name="Table84" table:style-name="Table84">
   <table:table-column table:style-name="Table84.A"/>
   <table:table-row table:style-name="Table84.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame33" text:anchor-type="paragraph" svg:width="12.495cm" fo:min-height="5.683cm" draw:z-index="41">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetFilterDescriptor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.42cm" svg:height="5.2cm" draw:z-index="42" xlink:href="DatabaseOperationsUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SheetFilterDescriptor service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration29" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.30</text:sequence>: SheetFilterDescriptor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterDescriptor]</text:span> interface is used to set the filter criteria as a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableFilterField]</text:span> elements. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableFilterField]</text:span> struct describes a single condition and contains the following members:</text:p>
  <text:unordered-list text:style-name="L43">
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">Connection</text:span> has the values <text:span text:style-name="Code (in text)">AND</text:span> or <text:span text:style-name="Code (in text)">OR,</text:span> and specifies how the condition is connected to the previous condition in the sequence. For the first entry, <text:span text:style-name="Code (in text)">Connection</text:span> is ignored.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">Field</text:span> is the number of the field that the condition is applied to.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">Operator</text:span> is the type of the condition, such as <text:span text:style-name="Code (in text)">EQUAL</text:span> or <text:span text:style-name="Code (in text)">GREATER</text:span></text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">IsNumeric</text:span> selects a numeric or textual condition.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">NumericValue</text:span> contains the value that is used in the condition if <text:span text:style-name="Code (in text)">IsNumeric</text:span> is <text:span text:style-name="Code (in text)">true</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P63"><text:span text:style-name="Code (in text)">StringValue</text:span> contains the text that is used in the condition if <text:span text:style-name="Code (in text)">IsNumeric</text:span> is <text:span text:style-name="Code (in text)">false</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">Additionally, the filter descriptor contains a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface for settings that affect the whole filter operation.</text:p>
  <text:p text:style-name="Paragraph">If the property <text:span text:style-name="Code (in text)">CopyOutputData</text:span> is <text:span text:style-name="Code (in text)">true</text:span>, the data that matches the filter criteria is copied to a cell range in the document that starts at the position specified by the <text:span text:style-name="Code (in text)">OutputPosition</text:span> property. Otherwise, the rows that do not match the filter criteria are filtered (hidden) in the original cell range.</text:p>
  <text:p text:style-name="Paragraph">The following example filters the range that is in the variable <text:span text:style-name="Code (in text)">xRange</text:span> for values greater or equal to 1998 in the second column: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table85" table:style-name="Table85">
   <table:table-column table:style-name="Table85.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- filter for second column &gt;= 1998 ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetFilterable xFilter = (com.sun.star.sheet.XSheetFilterable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetFilterable.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetFilterDescriptor xFilterDesc =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xFilter.createFilterDescriptor(true);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.TableFilterField[] aFilterFields =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>new com.sun.star.sheet.TableFilterField[1];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFilterFields[0] = new com.sun.star.sheet.TableFilterField();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFilterFields[0].Field <text:s text:c="7"/>= 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFilterFields[0].IsNumeric <text:s text:c="3"/>= true;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFilterFields[0].Operator <text:s text:c="4"/>= com.sun.star.sheet.FilterOperator.GREATER_EQUAL;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFilterFields[0].NumericValue = 1998;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFilterDesc.setFilterFields(aFilterFields);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xFilterProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xFilterDesc);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFilterProp.setPropertyValue(&quot;ContainsHeader&quot;, new Boolean(true));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFilter.filter(xFilterDesc);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterableEx]</text:span> interface is used to create a filter descriptor from criteria in a cell range in the same manner as the “Advanced Filter” dialog. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterableEx]</text:span> interface must be queried from the range that contains the conditions, and the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetFilterable]</text:span> interface of the range to be filtered must be passed to the <text:span text:style-name="Code (in text)">createFilterDescriptorByObject()</text:span> call.</text:p>
  <text:p text:style-name="Paragraph">The following example performs the same filter operation as the example before, but reads the filter criteria from a cell range:</text:p>
  <table:table table:name="Table86" table:style-name="Table86">
   <table:table-column table:style-name="Table86.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- do the same filter as above, using criteria from a cell range ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCritRange = xSheet.getCellRangeByName(&quot;B27:B28&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeData xCritData = (com.sun.star.sheet.XCellRangeData)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeData.class, xCritRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object[][] aCritValues = {{&quot;Year&quot;}, {&quot;&gt;= 1998&quot;}};</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCritData.setDataArray(aCritValues);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetFilterableEx xCriteria = (com.sun.star.sheet.XSheetFilterableEx)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetFilterableEx.class, xCritRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFilterDesc = xCriteria.createFilterDescriptorByObject(xFilter);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (xFilterDesc != null)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xFilter.filter(xFilterDesc);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Subtotals</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SubTotalDescriptor;com.sun.star.sheet.XSubTotalCalculatable;com.sun.star.sheet.SubTotalColumn;com.sun.star.sheet.SubTotalField]A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SubTotalDescriptor]</text:span> object is created using the <text:span text:style-name="Code (in text)">createSubTotalDescriptor()</text:span> method from the range&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSubTotalCalculatable]</text:span> interface to create subtotals for a cell range. After applying the settings to the descriptor, it is passed to the <text:span text:style-name="Code (in text)">applySubTotals()</text:span> method.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">bEmpty</text:span> parameter to the <text:span text:style-name="Code (in text)">createSubTotalDescriptor()</text:span> method works in the same manner as the parameter to the <text:span text:style-name="Code (in text)">createFilterDescriptor()</text:span> method described in the filtering section. If the <text:span text:style-name="Code (in text)">bReplace</text:span> parameter to the <text:span text:style-name="Code (in text)">applySubTotals()</text:span> method is <text:span text:style-name="Code (in text)">true</text:span>, existing subtotal rows are deleted before inserting new ones.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">removeSubTotals()</text:span> method removes the subtotal rows from the cell range without modifying the stored subtotal settings, so that the same subtotals can later be restored.</text:p>
  <table:table table:name="Table89" table:style-name="Table89">
   <table:table-column table:style-name="Table89.A"/>
   <table:table-row table:style-name="Table89.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame34" text:anchor-type="paragraph" svg:y="0cm" svg:width="12.626cm" svg:height="7.84cm" draw:z-index="43">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SubTotalDescriptor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.569cm" svg:height="7.28cm" draw:z-index="44" xlink:href="DatabaseOperationsUML4.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SubTotalDescriptor descriptor</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration30" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.31</text:sequence>: SubtotalDescriptor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">New fields are added to the subtotal descriptor using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSubTotalDescriptor]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">addNew()</text:span> method. The <text:span text:style-name="Code (in text)">nGroupColumn</text:span> parameter selects the column by which values are grouped. The subtotals are inserted at changes of the column&apos;s values. The <text:span text:style-name="Code (in text)">aSubTotalColumns</text:span> parameter specifies which column subtotal values are calculated. It is a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SubTotalColumn]</text:span> entries where each entry contains the column number and the function to be calculated.</text:p>
  <text:p text:style-name="Paragraph">To query or modify the fields in a subtotal descriptor, the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> interface is used to access the fields. Each field&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSubTotalField]</text:span> interface gets and sets the group and subtotal columns.</text:p>
  <text:p text:style-name="Paragraph">The example below creates subtotals, grouping by the first column and calculating the sum of the third column: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table90" table:style-name="Table90">
   <table:table-column table:style-name="Table90.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- insert subtotals ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSubTotalCalculatable xSub = (com.sun.star.sheet.XSubTotalCalculatable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSubTotalCalculatable.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSubTotalDescriptor xSubDesc = xSub.createSubTotalDescriptor(true);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.SubTotalColumn[] aColumns = new com.sun.star.sheet.SubTotalColumn[1];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// calculate sum of third column</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aColumns[0] = new com.sun.star.sheet.SubTotalColumn();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aColumns[0].Column <text:s text:c="2"/>= 2;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aColumns[0].Function = com.sun.star.sheet.GeneralFunction.SUM;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// group by first column</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSubDesc.addNew(aColumns, 0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xSub.applySubTotals(xSubDesc, true);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Database Import</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DatabaseImportDescriptor]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XImportable]</text:span> interface imports data from an external data source (database) into spreadsheet cells. The database has to be registered in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API, so that it can be selected using its name. The <text:span text:style-name="Code (in text)">doImport</text:span> call takes a sequence of property values that select the data to import.</text:p>
  <text:p text:style-name="Paragraph">Similar to the sort descriptor, the import descriptor&apos;s sequence of property values can be constructed from scratch, or the return value of the <text:span text:style-name="Code (in text)">createImportDescriptor()</text:span> method can be used and modified. The <text:span text:style-name="Code (in text)">createImportDescriptor()</text:span> method returns a description of the previously imported data if the cell range is a database range with stored import settings and the <text:span text:style-name="Code (in text)">bEmpty</text:span> parameter is <text:span text:style-name="Code (in text)">false</text:span>.</text:p>
  <table:table table:name="Table91" table:style-name="Table91">
   <table:table-column table:style-name="Table91.A"/>
   <table:table-row table:style-name="Table91.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr24" draw:name="Frame35" text:anchor-type="paragraph" svg:width="6.145cm" fo:min-height="3.343cm" draw:z-index="45">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.DatabaseImportDescriptor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="6.091cm" svg:height="2.859cm" draw:z-index="46" xlink:href="DatabaseOperationsUML5.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.DatabaseImportDescriptor service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration31" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.32</text:sequence>: DatabaseImportDescriptor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">DatabaseName</text:span> property selects a database. The <text:span text:style-name="Code (in text)">SourceType</text:span> selects the kind of object from the database that is imported. It can have the following values:</text:p>
  <text:unordered-list text:style-name="L44">
   <text:list-item>
    <text:p text:style-name="P64">If <text:span text:style-name="Code (in text)">SourceType</text:span> is <text:span text:style-name="Code (in text)">TABLE</text:span>, the whole table that is named by <text:span text:style-name="Code (in text)">SourceObject</text:span> is imported.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P64">If <text:span text:style-name="Code (in text)">SourceType</text:span> is <text:span text:style-name="Code (in text)">QUERY</text:span>, the <text:span text:style-name="Code (in text)">SourceObject</text:span> must be the name of a named query.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P64">If <text:span text:style-name="Code (in text)">SourceType</text:span> is <text:span text:style-name="Code (in text)">SQL</text:span>, the <text:span text:style-name="Code (in text)">SourceObject</text:span> is used as a literal SQL command string.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">If a database name is in the <text:span text:style-name="Code (in text)">aDatabase</text:span> variable and a table name in <text:span text:style-name="Code (in text)">aTableName</text:span>, the following code imports that table from the database: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table92" table:style-name="Table92">
   <table:table-column table:style-name="Table92.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- import from database ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.PropertyValue[] aImportDesc = new com.sun.star.beans.PropertyValue[3];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[0] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[0].Name <text:s/>= &quot;DatabaseName&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[0].Value = aDatabase;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[1] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[1].Name <text:s/>= &quot;SourceType&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[1].Value = com.sun.star.sheet.DataImportMode.TABLE;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[2] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[2].Name <text:s/>= &quot;SourceObject&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aImportDesc[2].Value = aTableName;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xImportRange = xSheet.getCellRangeByName(&quot;B33:B33&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.util.XImportable xImport = ( com.sun.star.util.XImportable )</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.util.XImportable.class, xImportRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xImport.doImport(aImportDesc);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Database Ranges</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XDatabaseRanges]A database range is a name for a cell range that also stores filtering, sorting, subtotal and import settings, as well as some options.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetDocument]</text:span> service has a property <text:span text:style-name="Code (in text)">DatabaseRanges</text:span> that is used to get the document&apos;s collection of database ranges. A new database range is added using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDatabaseRanges]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">addNewByName()</text:span> method that requires the name of the new database range, and a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> with the address of the cell range as arguments. The <text:span text:style-name="Code (in text)">removeByName()</text:span> method removes a database range.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface is used to get a single <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DatabaseRange]</text:span> object. Its <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeReferrer]</text:span> interface is used to access the cell range that it is pointed to. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDatabaseRange]</text:span> interface retrieves or changes the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> that is named, and gets the stored descriptors.</text:p>
  <text:p text:style-name="Paragraph">All descriptors of a database range are updated when a database operation is carried out on the cell range that the database range points to. The stored filter descriptor and subtotal descriptor can also be modified by changing the objects that are returned by the <text:span text:style-name="Code (in text)">getFilterDescriptor()</text:span> and <text:span text:style-name="Code (in text)">getSubTotalDescriptor()</text:span> methods. Calling the <text:span text:style-name="Code (in text)">refresh()</text:span> method carries out the stored operations again.</text:p>
  <text:p text:style-name="Paragraph">Whenever a database operation is carried out on a cell range where a database range is not defined, a temporary database range is used to hold the settings. This temporary database range has its <text:span text:style-name="Code (in text)">IsUserDefined</text:span> property set to <text:span text:style-name="Code (in text)">false</text:span> and is valid until another database operation is performed on a different cell range. In this case, the temporary database range is modified to refer to the new cell range.</text:p>
  <text:p text:style-name="Paragraph">The following example uses the <text:span text:style-name="Code (in text)">IsUserDefined</text:span> property to find the temporary database range, and applies a background color to the corresponding cell range. If run directly after the database import example above, this marks the imported data. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table93" table:style-name="Table93">
   <table:table-column table:style-name="Table93.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// use the temporary database range to find the imported data&apos;s size</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xDocProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, getDocument());</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aRangesObj = xDocProp.getPropertyValue(&quot;DatabaseRanges&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNameAccess xRanges = (com.sun.star.container.XNameAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNameAccess.class, aRangesObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String[] aNames = xRanges.getElementNames();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;aNames.length; i++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Object aRangeObj = xRanges.getByName(aNames[i] );</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.beans.XPropertySet xRangeProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aRangeObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>boolean bUser = ((Boolean) xRangeProp.getPropertyValue(&quot;IsUserDefined&quot;)).booleanValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (!bUser) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>// this is the temporary database range - get the cell range and format it</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.sheet.XCellRangeReferrer xRef = (com.sun.star.sheet.XCellRangeReferrer)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeReferrer.class, aRangeObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.table.XCellRange xResultRange = xRef.getReferredCells();</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.beans.XPropertySet xResultProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xResultRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>xResultProp.setPropertyValue(&quot;IsCellBackgroundTransparent&quot;, new Boolean(false));</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>xResultProp.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0xFFFFCC));</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Linking External Data</text:h>
  <text:p text:style-name="Paragraph">This section explains different ways to link data from external sources into a spreadsheet document. Refer to the <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.Working.Database.Import]</text:span> chapter for linking data from a database.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Sheet Links</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SheetLink;com.sun.star.sheet.SheetLinks;com.sun.star.sheet.XSheetLinkable]Each sheet in a spreadsheet document can be linked to a sheet from a different document. The spreadsheet document has a collection of all the sheet links to different source documents.</text:p>
  <table:table table:name="Table48" table:style-name="Table48">
   <table:table-column table:style-name="Table48.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table48.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr25" draw:name="Frame36" text:anchor-type="paragraph" svg:width="11.134cm" fo:min-height="13.954cm" draw:z-index="47">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SheetLink" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.06cm" svg:height="13.471cm" draw:z-index="50" xlink:href="ExternalLinksUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.SheetLink service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration32" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.33</text:sequence>: SheetLinks</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetLinkable]</text:span> is relevant if the current sheet is used as buffer for an external sheet link. The interfaces provides access to the data of the link. A link is established using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetLinkable]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">link()</text:span> method. The method&apos;s parameters are:</text:p>
  <text:unordered-list text:style-name="L45">
   <text:list-item>
    <text:p text:style-name="P65">The source document&apos;s URL. When a sheet link is inserted or updated, the source document is loaded from its URL. Unsaved changes in a source document that is open in memory are not included. All URL types that can be used to load files can also be used in links, including HTTP to link to data from a web server.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P65">The name of the sheet in the source document from the contents are copied from. If this string is empty, the source document&apos;s first sheet is used, regardless of its name.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P65">The filter name and options that are used to load the source document. Refer to the <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev.AppEnv.HandleDocuments]</text:span> chapter. All spreadsheet file filters can be used, so it is possible, for <text:s/>example, to link to a CSV text file.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P65">A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetLinkMode]</text:span> enum value that controls how the contents are copied:</text:p>
    <text:unordered-list>
     <text:list-item>
      <text:p text:style-name="P65">If the mode is <text:span text:style-name="Code (in text)">NORMAL</text:span>, all cells from the source sheet are copied, including formulas.</text:p>
     </text:list-item>
     <text:list-item>
      <text:p text:style-name="P65">If the mode is <text:span text:style-name="Code (in text)">VALUE</text:span>, formulas are replaced by their results in the copy.</text:p>
     </text:list-item>
    </text:unordered-list>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The link mode, source URL and source sheet name can also be queried and changed using the <text:span text:style-name="Code (in text)">getLinkMode()</text:span>, <text:span text:style-name="Code (in text)">setLinkMode()</text:span>, <text:span text:style-name="Code (in text)">getLinkUrl()</text:span>, <text:span text:style-name="Code (in text)">setLinkUrl()</text:span>, <text:span text:style-name="Code (in text)">getLinkSheetName()</text:span> and <text:span text:style-name="Code (in text)">setLinkSheetName()</text:span> methods. Setting the mode to <text:span text:style-name="Code (in text)">NONE</text:span> removes the link.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetLinks]</text:span> collection contains an entry for every source document that is used in sheet links. If several sheets are linked to different sheets from the same source document, there is only one entry for them. The name that is used for the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface is the source document&apos;s URL.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetLink]</text:span> service changes a link&apos;s source URL, filter or filter options through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XRefreshable]</text:span> interface is used to update the link. This affects all sheets that are linked to any sheet from the link&apos;s source document.</text:p>
  <table:table table:name="Table130" table:style-name="Table130">
   <table:table-column table:style-name="Table130.A"/>
   <table:table-column table:style-name="Table130.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table130.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note9" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="9" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table130.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">External references in cell formulas are implemented using hidden linked sheets that show as sheet link objects.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Cell Area Links</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XAreaLink;com.sun.star.sheet.XAreaLinks]A cell area link is a cell area (range) in a spreadsheet that is linked to a cell area from a different document.</text:p>
  <table:table table:name="Table56" table:style-name="Table56">
   <table:table-column table:style-name="Table56.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table56.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr19" draw:name="Frame37" text:anchor-type="paragraph" svg:width="11.077cm" fo:min-height="11.083cm" draw:z-index="76">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr26" draw:name="UML diagram of com.sun.star.sheet.CellAreaLink" text:anchor-type="paragraph" svg:x="0cm" svg:width="11.01cm" svg:height="10.5cm" draw:z-index="77" xlink:href="ExternalLinksUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.CellAreaLink service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration33" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.34</text:sequence>: CellAreaLinks</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">To insert an area link, the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XAreaLinks]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">insertAtPosition()</text:span> method is used with the following parameters:</text:p>
  <text:unordered-list text:style-name="L46">
   <text:list-item>
    <text:p text:style-name="P66">The position where the link is placed in the document as a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellAddress]</text:span> struct.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L45">
   <text:list-item>
    <text:p text:style-name="P65">The source document&apos;s URL is used in the same manner as sheet links.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P65">A string describing the source range in the source document. This can be the name of a named range or database range, or a direct cell reference, such as “sheet1.a1:c5”. Note that the WebQuery import filter creates a named range for each HTML table. These names can be used also.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P65">The filter name and filter options are used in the same manner as sheet links.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">removeByIndex()</text:span> method is used to remove a link.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.CellAreaLink]</text:span> service is used to modify or refresh an area link. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XAreaLink]</text:span> interface queries and modifies the link&apos;s source range and its output range in the document. Note that the output range changes in size after updating if the size of the source range changes.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface changes the link&apos;s source URL, filter name and filter options. Unlike sheet links, these changes affect only one linked area. Additionally, the <text:span text:style-name="Code (in text)">RefreshDelay</text:span> property is used to set an interval in seconds to periodically update the link. If the value is 0, no automatic updates occur.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XRefreshable]</text:span> interface is used to update the link.</text:p>
  <text:h text:style-name="Head 4" text:level="4">DDE Links</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DDELink]A DDE link is created whenever the DDE spreadsheet function is used in a cell formula.</text:p>
  <table:table table:name="Table61" table:style-name="Table61">
   <table:table-column table:style-name="Table61.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table61.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame38" text:anchor-type="paragraph" svg:width="10.299cm" fo:min-height="10.299cm" draw:z-index="48">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.DDELink" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.06cm" svg:height="9.82cm" draw:z-index="49" xlink:href="ExternalLinksUML3.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.DDELink service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration34" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.35</text:sequence>: DDELink</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DDELink]</text:span> service is only used to query the link&apos;s parameters using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDDELink]</text:span> interface, and refresh it using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XRefreshable]</text:span> interface. The DDE link&apos;s parameters, <text:span text:style-name="Emphasis">Application</text:span>, <text:span text:style-name="Emphasis">Topic</text:span> and <text:span text:style-name="Emphasis">Item</text:span> are determined by the formula that contains the DDE function, therefore it is not possible to change these parameters in the link object.</text:p>
  <text:p text:style-name="Paragraph">The link&apos;s name used for the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface consists of the three parameter strings concatenated.</text:p>
  <text:h text:style-name="Head 3" text:level="3">DataPilot</text:h>
  <text:h text:style-name="Head 4" text:level="4">DataPilot Tables</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotTables]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotTables]</text:span> and related services create and modify DataPilot tables in a spreadsheet.</text:p>
  <text:p text:style-name="Paragraph">The method <text:span text:style-name="Code (in text)">getDataPilotTables()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTablesSupplier]</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTables]</text:span> of the collection of all data pilot tables contained in the spreadsheet. </text:p>
  <table:table table:name="Table101" table:style-name="Table101">
   <table:table-column table:style-name="Table101.A"/>
   <table:table-row table:style-name="Table101.1">
    <table:table-cell table:style-name="Table101.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame7" text:anchor-type="paragraph" svg:width="15.083cm" fo:min-height="18.203cm" draw:z-index="92">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.DataPilotTables" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="14.981cm" svg:height="17.72cm" draw:z-index="93" xlink:href="DataPilotUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.DataPilotTables service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration35" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.36</text:sequence>: DataPilotTables</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotTables]</text:span> service is accessed by getting the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTablesSupplier]</text:span> interface from a spreadsheet object and calling the <text:span text:style-name="Code (in text)">getDataPilotTables()</text:span> method.</text:p>
  <table:table table:name="Table102" table:style-name="Table102">
   <table:table-column table:style-name="Table102.A"/>
   <table:table-column table:style-name="Table102.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table102.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note10" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="94" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table102.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Only DataPilot tables that are based on cell data are supported by these services. DataPilot tables created directly from external data sources or using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSource]</text:span> service cannot be created or modified this way.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Creating a New DataPilot Table</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotDescriptor;com.sun.star.sheet.DataPilotField;com.sun.star.sheet.DataPilotFieldOrientation]The first step to creating a new DataPilot table is to create a new <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotDescriptor]</text:span> object by calling the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTables]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">createDataPilotDescriptor()</text:span> method. The descriptor is then used to describe the DataPilot table&apos;s layout and options, and passed to the <text:span text:style-name="Code (in text)">insertNewByName()</text:span> method of <text:span text:style-name="Code (in text)">XDataPilotTables</text:span>. The other parameters for <text:span text:style-name="Code (in text)">insertNewByName()</text:span> are the name for the new table, and the position where the table is to be placed on the spreadsheet.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotDescriptor]</text:span> interface offers methods to change the DataPilot table settings:</text:p>
  <text:unordered-list text:style-name="L47">
   <text:list-item>
    <text:p text:style-name="P67">The cell range that contains the source data is set with the <text:span text:style-name="Code (in text)">setSourceRange()</text:span> method. It is a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> struct.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P67">The individual fields are handled using the <text:span text:style-name="Code (in text)">getDataPilotFields()</text:span>, <text:span text:style-name="Code (in text)">getColumnFields()</text:span>, <text:span text:style-name="Code (in text)">getRowFields()</text:span>, <text:span text:style-name="Code (in text)">getPageFields()</text:span>, <text:span text:style-name="Code (in text)">getDataFields()</text:span> and <text:span text:style-name="Code (in text)">getHiddenFields()</text:span> methods. The details are discussed below.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P67">The <text:span text:style-name="Code (in text)">setTag()</text:span> method sets an additional string that is stored with the DataPilot table, but does not influence its results.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P67">The <text:span text:style-name="Code (in text)">getFilterDescriptor()</text:span> method returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetFilterDescriptor]</text:span> object that can be used to apply filter criteria to the source data. Refer to the section on data operations for details on how to use a filter descriptor.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The layout of the DataPilot table is controlled using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotFields]</text:span> service. Each <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotField]</text:span> object has a property <text:span text:style-name="Code (in text)">Orientation</text:span> that controls where in the DataPilot table the field is used. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotFieldOrientation]</text:span> enum contains the possible orientations:</text:p>
  <text:unordered-list text:style-name="L48">
   <text:list-item>
    <text:p text:style-name="P68"><text:span text:style-name="Code (in text)">HIDDEN</text:span>: The field is not used in the table.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P68"><text:span text:style-name="Code (in text)">COLUMN</text:span>: Values from this field are used to determine the columns of the table.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P68"><text:span text:style-name="Code (in text)">ROW</text:span>: Values from this field are used to determine the rows of the table.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P68"><text:span text:style-name="Code (in text)">PAGE</text:span>: The field is used in the table&apos;s “page” area, where single values from the field can be selected.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P68"><text:span text:style-name="Code (in text)">DATA</text:span>: The values from this field are used to calculate the table&apos;s data area.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">Function</text:span> property is used to assign a function to the field. For instance, if the field has a <text:span text:style-name="Code (in text)">DATA</text:span> orientation, this is the function that is used for calculation of the results. If the field has <text:span text:style-name="Code (in text)">COLUMN</text:span> or <text:span text:style-name="Code (in text)">ROW</text:span> orientation, it is the function that is used to calculate subtotals for the values from this field.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getDataPilotFields()</text:span> method returns a collection containing one <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotField]</text:span> entry for each column of source data, and one additional entry for the “Data” column that becomes visible when two or more fields get the <text:span text:style-name="Code (in text)">DATA</text:span> orientation. Each source column appears only once, even if it is used with several orientations or functions.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getColumnFields()</text:span>, <text:span text:style-name="Code (in text)">getRowFields()</text:span>, <text:span text:style-name="Code (in text)">getPageFields()</text:span> and <text:span text:style-name="Code (in text)">getDataFields()</text:span> methods each return a collection of the fields with the respective orientation. In the case of <text:span text:style-name="Code (in text)">getDataFields()</text:span>, a single source column can appear several times if it is used with different functions. The <text:span text:style-name="Code (in text)">getHiddenFields()</text:span> method returns a collection of those fields from the <text:span text:style-name="Code (in text)">getDataPilotFields()</text:span> collection that are not in any of the other collections.</text:p>
  <table:table table:name="Table103" table:style-name="Table103">
   <table:table-column table:style-name="Table103.A"/>
   <table:table-column table:style-name="Table103.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table103.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note11" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="95" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table103.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Note: Page fields and the <text:span text:style-name="Code (in text)">PAGE</text:span> orientation are not supported by the current implementation. Setting a field&apos;s orientation to <text:span text:style-name="Code (in text)">PAGE</text:span> has the same effect as using <text:span text:style-name="Code (in text)">HIDDEN.</text:span> The <text:span text:style-name="Code (in text)">getPageFields()</text:span> method always returns an empty collection.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The exact effect of changing a field orientation depends on which field collection the field object was taken from. If the object is from the <text:span text:style-name="Code (in text)">getDataPilotFields()</text:span> collection, the field is added to the collection that corresponds to the new <text:span text:style-name="Code (in text)">Orientation</text:span> value. If the object is from any of the other collections, the field is removed from the old orientation and added to the new orientation.</text:p>
  <text:p text:style-name="Paragraph">The following example creates a simple DataPilot table with one column, row and data field. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table104" table:style-name="Table104">
   <table:table-column table:style-name="Table104.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Create a new DataPilot table ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XDataPilotTablesSupplier xDPSupp = (com.sun.star.sheet.XDataPilotTablesSupplier)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XDataPilotTablesSupplier.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XDataPilotTables xDPTables = xDPSupp.getDataPilotTables();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XDataPilotDescriptor xDPDesc = xDPTables.createDataPilotDescriptor();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// set source range (use data range from CellRange test)</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress aSourceAddress = createCellRangeAddress(xSheet, &quot;A10:C30&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xDPDesc.setSourceRange(aSourceAddress);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// settings for fields</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xFields = xDPDesc.getDataPilotFields();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aFieldObj;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xFieldProp;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// use first column as column field</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFieldObj = xFields.getByIndex(0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aFieldObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Orientation&quot;, com.sun.star.sheet.DataPilotFieldOrientation.COLUMN);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// use second column as row field</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFieldObj = xFields.getByIndex(1);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aFieldObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Orientation&quot;, com.sun.star.sheet.DataPilotFieldOrientation.ROW);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// use third column as data field, calculating the sum</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFieldObj = xFields.getByIndex(2);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aFieldObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Orientation&quot;, com.sun.star.sheet.DataPilotFieldOrientation.DATA);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Function&quot;, com.sun.star.sheet.GeneralFunction.SUM);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// select output position</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellAddress aDestAddress = createCellAddress(xSheet, &quot;A40&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xDPTables.insertNewByName(&quot;DataPilotExample&quot;, aDestAddress, xDPDesc);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Modifying a DataPilot Table</text:h>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotTable]</text:span> service is used to modify an existing DataPilot table. The object for an existing table is available through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotTables]</text:span> service. It implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotDescriptor]</text:span> interface, so that the DataPilot table can be modified in the same manner as the descriptor for a new table in the preceding section. After any change to a DataPilot table&apos;s settings, the table is automatically recalculated.</text:p>
  <text:p text:style-name="Paragraph">Additionally, the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTable]</text:span> interface offers a <text:span text:style-name="Code (in text)">getOutputRange()</text:span> method that is used to find which range on the spreadsheet the table occupies, and a <text:span text:style-name="Code (in text)">refresh()</text:span> method that recalculates the table without changing any settings.</text:p>
  <text:p text:style-name="Paragraph">The following example modifies the table from the previous example to contain a second data field using the same source column as the existing data field, but using the “average” function instead. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table105" table:style-name="Table105">
   <table:table-column table:style-name="Table105.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Modify the DataPilot table ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aDPTableObj = xDPTables.getByName(&quot;DataPilotExample&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xDPDesc = (com.sun.star.sheet.XDataPilotDescriptor)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XDataPilotDescriptor.class, aDPTableObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFields = xDPDesc.getDataPilotFields();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// add a second data field from the third column, calculating the average</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aFieldObj = xFields.getByIndex(2);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aFieldObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Orientation&quot;, com.sun.star.sheet.DataPilotFieldOrientation.DATA);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFieldProp.setPropertyValue(&quot;Function&quot;, com.sun.star.sheet.GeneralFunction.AVERAGE);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <table:table table:name="Table121" table:style-name="Table121">
   <table:table-column table:style-name="Table121.A"/>
   <table:table-column table:style-name="Table121.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table121.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note12" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="96" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table121.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">Note how the field object for the third column is taken from the collection returned by <text:span text:style-name="Code (in text)">getDataPilotFields()</text:span> to create a second data field. If the field object was taken from the collection returned by <text:span text:style-name="Code (in text)">getDataFields()</text:span>, only the existing data field&apos;s function would be changed by the <text:span text:style-name="Code (in text)">setPropertyValue()</text:span> calls to that object.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Removing a DataPilot Table</text:h>
  <text:p text:style-name="Paragraph">To remove a DataPilot table from a spreadsheet, call the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotTables]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">removeByName()</text:span> method, passing the DataPilot table&apos;s name.</text:p>
  <text:h text:style-name="Head 4" text:level="4">DataPilot Sources</text:h>
  <text:p text:style-name="Paragraph">The DataPilot feature in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API Calc makes use of an external component that provides the tabular results in the DataPilot table using the field orientations and other settings that are made in the DataPilot dialog or interactively by dragging the fields in the spreadsheet.</text:p>
  <text:p text:style-name="Paragraph">Such a component might, for example, connect to an OLAP server, allowing the use of a DataPilot table to interactively display results from that server.</text:p>
  <table:table table:name="Table106" table:style-name="Table106">
   <table:table-column table:style-name="Table106.A"/>
   <table:table-row table:style-name="Table106.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame39" text:anchor-type="paragraph" svg:y="0cm" svg:width="13.077cm" svg:height="21.033cm" draw:z-index="97">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.DataPilotSource" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="13.01cm" svg:height="20.549cm" draw:z-index="98" xlink:href="DataPilotSourceUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.DataPilotSource service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration36" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.37</text:sequence>: DataPilotSource</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The example that is used here provides four dimensions with the same number of members each, and one data dimension that uses these members as digits to form integer numbers. A resulting DataPilot table look similar to the following:</text:p>
  <table:table table:name="Table107" table:style-name="Table107">
   <table:table-column table:style-name="Table107.A"/>
   <table:table-column table:style-name="Table107.B" table:number-columns-repeated="3"/>
   <table:table-column table:style-name="Table107.E"/>
   <table:table-row table:style-name="Table107.1">
    <table:table-cell table:style-name="Table107.A1" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B1" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.C1" table:value-type="string">
     <text:p text:style-name="TextInTable">hundreds</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B1" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E1" table:value-type="string">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A2" table:value-type="string">
     <text:p text:style-name="TextInTable">ones</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">tens</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.C2" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E2" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="0">
     <text:p text:style-name="P69">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="100">
     <text:p text:style-name="P69">100</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="200">
     <text:p text:style-name="P69">200</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="10">
     <text:p text:style-name="P69">10</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="110">
     <text:p text:style-name="P69">110</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="210">
     <text:p text:style-name="P69">210</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.C2" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.C2" table:value-type="float" table:value="20">
     <text:p text:style-name="P69">20</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="120">
     <text:p text:style-name="P69">120</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E2" table:value-type="float" table:value="220">
     <text:p text:style-name="P69">220</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="1">
     <text:p text:style-name="P69">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="101">
     <text:p text:style-name="P69">101</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="201">
     <text:p text:style-name="P69">201</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="11">
     <text:p text:style-name="P69">11</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="111">
     <text:p text:style-name="P69">111</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="211">
     <text:p text:style-name="P69">211</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.C2" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.C2" table:value-type="float" table:value="21">
     <text:p text:style-name="P69">21</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="121">
     <text:p text:style-name="P69">121</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E2" table:value-type="float" table:value="221">
     <text:p text:style-name="P69">221</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="0">
     <text:p text:style-name="TextInTable">0</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="2">
     <text:p text:style-name="P69">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="102">
     <text:p text:style-name="P69">102</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="202">
     <text:p text:style-name="P69">202</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.2">
    <table:table-cell table:style-name="Table107.A3" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="1">
     <text:p text:style-name="TextInTable">1</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.A3" table:value-type="float" table:value="12">
     <text:p text:style-name="P69">12</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.B3" table:value-type="float" table:value="112">
     <text:p text:style-name="P69">112</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E3" table:value-type="float" table:value="212">
     <text:p text:style-name="P69">212</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row table:style-name="Table107.1">
    <table:table-cell table:style-name="Table107.C2" table:value-type="float">
     <text:p text:style-name="TextInTable"/>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="2">
     <text:p text:style-name="TextInTable">2</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.C2" table:value-type="float" table:value="22">
     <text:p text:style-name="P69">22</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.D2" table:value-type="float" table:value="122">
     <text:p text:style-name="P69">122</text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table107.E2" table:value-type="float" table:value="222">
     <text:p text:style-name="P69">222</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The example uses the following class to hold the settings that are applied to the DataPilot source: [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table108" table:style-name="Table108">
   <table:table-column table:style-name="Table108.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">class ExampleSettings</text:p>
     <text:p text:style-name="Code">{</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>static public final int nDimensionCount = 6;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>static public final int nValueDimension = 4;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>static public final int nDataDimension = 5;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>static public final String [] aDimensionNames = {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>&quot;ones&quot;, &quot;tens&quot;, &quot;hundreds&quot;, &quot;thousands&quot;, &quot;value&quot;, &quot;&quot; };</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>static public final String getMemberName(int nMember) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return String.valueOf(nMember);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public int nMemberCount = 3;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>public java.util.List aColDimensions = new java.util.ArrayList();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>public java.util.List aRowDimensions = new java.util.ArrayList();</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">To create a DataPilot table using a DataPilot source component, three steps are carried out:</text:p>
  <text:ordered-list text:style-name="L49">
   <text:list-item>
    <text:p text:style-name="P70">The application gets the list of available dimensions (fields) from the component.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P70">The application applies the user-specified settings to the component.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P70">The application gets the results from the component.</text:p>
   </text:list-item>
  </text:ordered-list>
  <text:p text:style-name="Paragraph">The same set of objects are used for all three steps. The root object from which the other objects are accessed is the implementation of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSource]</text:span> service.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceDimensions]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceHierarchies]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceLevels]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceMembers]</text:span> services are accessed using their parent object interfaces. That is: </text:p>
  <text:unordered-list text:style-name="L50">
   <text:list-item>
    <text:p text:style-name="P71"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceDimensions]</text:span> is the parent object of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDimensionsSupplier]</text:span> </text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P71"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceHierarchies]</text:span> is the parent object of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XHierarchiesSupplier]</text:span> </text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P71"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceLevels]</text:span> is the parent object of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XLevelsSupplier]</text:span> </text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P71"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceMembers]</text:span> is the parent object of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XMembersSupplier]</text:span> </text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">All contain the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface to access their children.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Source Object</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotSource]An implementation of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSource]</text:span> service must be registered, so that a component can be used as a DataPilot source. If any implementations for the service are present, the <text:span text:style-name="Buttons/Menus">External source/interface</text:span> option in the DataPilot <text:span text:style-name="Buttons/Menus">Select Source</text:span> dialog is enabled. Any of the implementations can then be selected by its implementation name in the <text:span text:style-name="Buttons/Menus">External Source </text:span>dialog, along with four option strings labeled “Source”, “Name”, “User” and “Password”. The four options are passed to the component unchanged.</text:p>
  <text:p text:style-name="Paragraph">The option strings are passed to the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XInitialization]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">initialize()</text:span> method if that interface is present. The sequence that is passed to the call contains four strings with the values from the dialog. Note that the “Password” string is only saved in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API&apos;s old binary file format, but not in the XML-based format. If the component needs a password, for example, to connect to a database, it must be able to prompt for that password.</text:p>
  <text:p text:style-name="Paragraph">The example below uses the first of the strings to determine how many members each dimension should have: [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table109" table:style-name="Table109">
   <table:table-column table:style-name="Table109.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">private ExampleSettings aSettings = new ExampleSettings();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">public void initialize(Object[] aArguments) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// <text:s/>If the first argument (Source) is a number between 2 and 10,</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// <text:s/>use it as member count, otherwise keep the default value.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (aArguments.length &gt;= 1) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aSource = (String) aArguments[0];</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (aSource != null) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>try {</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>int nValue = Integer.parseInt(aSource);</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>if (nValue &gt;= 2 &amp;&amp; nValue &lt;= 10)</text:p>
     <text:p text:style-name="Code"><text:s text:c="20"/>aSettings.nMemberCount = nValue;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>} catch (NumberFormatException e) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The source object&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface is used to apply two settings: The <text:span text:style-name="Code (in text)">ColumnGrand</text:span> and <text:span text:style-name="Code (in text)">RowGrand</text:span> properties control if grand totals for columns or rows should be added. The settings are taken from the <text:span text:style-name="Buttons/Menus">DataPilot</text:span> dialog. The example does not use them.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotResults]</text:span> interface is used to query the results from the component. This includes only the numeric “data” part of the table. In the example table above, it would be the 9x3 area of cells that are right-aligned. The <text:span text:style-name="Code (in text)">getResults()</text:span> call returns a sequence of rows, where each row is a sequence of the results for that row. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataResult]</text:span> struct contains the numeric value in the <text:span text:style-name="Code (in text)">Value</text:span> member, and a <text:span text:style-name="Code (in text)">Flags</text:span> member contains a combination of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataResultFlags]</text:span> constants:</text:p>
  <text:unordered-list text:style-name="L51">
   <text:list-item>
    <text:p text:style-name="P72"><text:span text:style-name="Code (in text)">HASDATA</text:span> is set if there is a valid result at the entry&apos;s position. A result value of zero is different from no result, so this must be set only if the result is not empty.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P72"><text:span text:style-name="Code (in text)">SUBTOTAL</text:span> marks a subtotal value that is formatted differently in the DataPilot table output.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P72"><text:span text:style-name="Code (in text)">ERROR</text:span> is set if the result at the entry&apos;s position is an error.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">In the example table above, all entries have different <text:span text:style-name="Code (in text)">Value</text:span> numbers, and a <text:span text:style-name="Code (in text)">Flags</text:span> value of <text:span text:style-name="Code (in text)">HASDATA</text:span>. The implementation for the example looks like this: [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table110" table:style-name="Table110">
   <table:table-column table:style-name="Table110.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public com.sun.star.sheet.DataResult[][] getResults() {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int[] nDigits = new int[ExampleSettings.nDimensionCount];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nValue = 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;ExampleSettings.nDimensionCount; i++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nDigits[i] = nValue;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nValue *= 10;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nMemberCount = aSettings.nMemberCount;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nRowDimCount = aSettings.aRowDimensions.size();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nColDimCount = aSettings.aColDimensions.size();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nRows = 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;nRowDimCount; i++)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nRows *= nMemberCount;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nColumns = 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;nColDimCount; i++)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nColumns *= nMemberCount;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.DataResult[][] aResults = new com.sun.star.sheet.DataResult[nRows][];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nRow=0; nRow&lt;nRows; nRow++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nRowVal = nRow;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nRowResult = 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>for (int nRowDim=0; nRowDim&lt;nRowDimCount; nRowDim++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>int nDim = ((Integer)aSettings.aRowDimensions.get(nRowDimCount-nRowDim-1)).intValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nRowResult += ( nRowVal % nMemberCount ) * nDigits[nDim];</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nRowVal /= nMemberCount;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>aResults[nRow] = new com.sun.star.sheet.DataResult[nColumns];</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>for (int nCol=0; nCol&lt;nColumns; nCol++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>int nColVal = nCol;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>int nResult = nRowResult;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>for (int nColDim=0; nColDim&lt;nColDimCount; nColDim++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>int nDim = ((Integer)</text:p>
     <text:p text:style-name="Code"><text:s text:c="20"/>aSettings.aColDimensions.get(nColDimCount-nColDim-1)).intValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>nResult += (nColVal % nMemberCount) * nDigits[nDim];</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>nColVal /= nMemberCount;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nRow][nCol] = new com.sun.star.sheet.DataResult();</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nRow][nCol].Flags = com.sun.star.sheet.DataResultFlags.HASDATA;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nRow][nCol].Value = nResult;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return aResults;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XRefreshable]</text:span> interface contains a <text:span text:style-name="Code (in text)">refresh()</text:span> method that tells the component to discard cached results and recalculate the results the next time they are needed. The <text:span text:style-name="Code (in text)">addRefreshListener()</text:span> and <text:span text:style-name="Code (in text)">removeRefreshListener()</text:span> methods are not used by <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API Calc. The <text:span text:style-name="Code (in text)">refresh()</text:span> implementation in the example is empty, because the results are always calculated dynamically.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Dimensions</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotSourceDimensions]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceDimensions]</text:span> service contains an entry for each dimension that can be used as column, row or page dimension, for each possible data (measure) dimension, and one for the “data layout” dimension that contains the names of the data dimensions.</text:p>
  <text:p text:style-name="Paragraph">The example below initializes a dimension&apos;s orientation as DATA for the data dimension, and is otherwise HIDDEN. Thus, when the user creates a new DataPilot table using the example component, the data dimension is already present in the “Data” area of the DataPilot dialog. [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table111" table:style-name="Table111">
   <table:table-column table:style-name="Table111.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">private ExampleSettings aSettings;</text:p>
     <text:p text:style-name="Code">private int nDimension;</text:p>
     <text:p text:style-name="Code">private com.sun.star.sheet.DataPilotFieldOrientation eOrientation;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">public ExampleDimension(ExampleSettings aSet, int nDim) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aSettings = aSet;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>nDimension = nDim;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>eOrientation = (nDim == ExampleSettings.nValueDimension) ?</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.DataPilotFieldOrientation.DATA :</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.DataPilotFieldOrientation.HIDDEN;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceDimension]</text:span> service contains a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface that is used for the following properties of a dimension:</text:p>
  <text:unordered-list text:style-name="L52">
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">Original</text:span> (read-only) contains the dimension object from which a dimension was cloned, or <text:span text:style-name="Code (in text)">null</text:span> if it was not cloned. A description of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XCloneable]</text:span> interface is described below.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">IsDataLayoutDimension</text:span> (read-only) must contain <text:span text:style-name="Code (in text)">true</text:span> if the dimension is the “data layout” dimension, otherwise <text:span text:style-name="Code (in text)">false</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">Orientation</text:span> controls how a dimension is used in the DataPilot table. If it contains the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotFieldOrientation]</text:span> enum values <text:span text:style-name="Code (in text)">COLUMN</text:span> or <text:span text:style-name="Code (in text)">ROW</text:span>, the dimension is used as a column or row dimension, respectively. If the value is <text:span text:style-name="Code (in text)">DATA</text:span>, the dimension is used as data (measure) dimension. The <text:span text:style-name="Code (in text)">PAGE</text:span> designates a page dimension, but is not currently used in <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API Calc. If the value is <text:span text:style-name="Code (in text)">HIDDEN</text:span>, the dimension is not used.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">Position</text:span> contains the position of the dimension within the orientation. This controls the order of the dimensions. If a dimension&apos;s orientation is changed, it is added at the end of the dimensions for that orientation, and the <text:span text:style-name="Code (in text)">Position</text:span> property reflects that position.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">Function</text:span> specifies the function that is used to aggregate data for a data dimension.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">UsedHierarchy</text:span> selects which of the dimension&apos;s hierarchies is used in the DataPilot table. See the section on hierarchies below.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P73"><text:span text:style-name="Code (in text)">Filter</text:span> specifies a list of filter criteria to be applied to the source data before processing. It is currently not used by <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API Calc.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">In the following example, the <text:span text:style-name="Code (in text)">setPropertyValue()</text:span> method for the dimension only implements the modification of <text:span text:style-name="Code (in text)">Orientation</text:span> and <text:span text:style-name="Code (in text)">Position</text:span>, using two lists to store the order of column and row dimensions. Page dimensions are not supported in the example. [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table112" table:style-name="Table112">
   <table:table-column table:style-name="Table112.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public void setPropertyValue(String aPropertyName, Object aValue)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws com.sun.star.beans.UnknownPropertyException {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (aPropertyName.equals(&quot;Orientation&quot;)) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.DataPilotFieldOrientation eNewOrient =</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>(com.sun.star.sheet.DataPilotFieldOrientation) aValue;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (nDimension != ExampleSettings.nValueDimension &amp;&amp;</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>nDimension != ExampleSettings.nDataDimension &amp;&amp;</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>eNewOrient != com.sun.star.sheet.DataPilotFieldOrientation.DATA) {</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="12"/>// remove from list for old orientation and add for new one</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>Integer aDimInt = new Integer(nDimension);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.COLUMN)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aSettings.aColDimensions.remove(aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>else if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.ROW)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aSettings.aRowDimensions.remove(aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>if (eNewOrient == com.sun.star.sheet.DataPilotFieldOrientation.COLUMN)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aSettings.aColDimensions.add(aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>else if (eNewOrient == com.sun.star.sheet.DataPilotFieldOrientation.ROW)</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aSettings.aRowDimensions.add(aDimInt);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="12"/>// change orientation</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>eOrientation = eNewOrient;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>} else if (aPropertyName.equals(&quot;Position&quot;)) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nNewPos = ((Integer) aValue).intValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Integer aDimInt = new Integer(nDimension);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.COLUMN) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aSettings.aColDimensions.remove(aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aSettings.aColDimensions.add( nNewPos, aDimInt );</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>else if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.ROW) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aSettings.aRowDimensions.remove(aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aSettings.aRowDimensions.add(nNewPos, aDimInt);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>} else if (aPropertyName.equals(&quot;Function&quot;) || aPropertyName.equals(&quot;UsedHierarchy&quot;) ||</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aPropertyName.equals(&quot;Filter&quot;)) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>// ignored</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>} else</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throw new com.sun.star.beans.UnknownPropertyException();</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The associated <text:span text:style-name="Code (in text)">getPropertyValue()</text:span> method returns the stored values for <text:span text:style-name="Code (in text)">Orientation</text:span> and <text:span text:style-name="Code (in text)">Position.</text:span> If it is the data layout dimension, then <text:span text:style-name="Code (in text)">IsDataLayoutDimension </text:span>is <text:span text:style-name="Code (in text)">true</text:span>, and the values default for the remaining properties. [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table113" table:style-name="Table113">
   <table:table-column table:style-name="Table113.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">public Object getPropertyValue(String aPropertyName)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throws com.sun.star.beans.UnknownPropertyException {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (aPropertyName.equals(&quot;Original&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return null;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals( &quot;IsDataLayoutDimension&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return new Boolean(nDimension == ExampleSettings.nDataDimension);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals(&quot;Orientation&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return eOrientation;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals(&quot;Position&quot;)) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>int nPosition;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.COLUMN)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nPosition = aSettings.aColDimensions.indexOf(new Integer(nDimension));</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>else if (eOrientation == com.sun.star.sheet.DataPilotFieldOrientation.ROW)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nPosition = aSettings.aRowDimensions.indexOf(new Integer(nDimension));</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>else</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nPosition = nDimension;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return new Integer(nPosition);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals(&quot;Function&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return com.sun.star.sheet.GeneralFunction.SUM;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals(&quot;UsedHierarchy&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return new Integer(0);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else if (aPropertyName.equals(&quot;Filter&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return new com.sun.star.sheet.TableFilterField[0];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>throw new com.sun.star.beans.UnknownPropertyException();</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The dimension&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XCloneable]</text:span> interface is required when a dimension is used in multiple positions. The DataPilot dialog allows the use of a column or row dimension additionally as data dimension, and it also allows multiple use of a data dimension by assigning several functions to it. In both cases, additional dimension objects are created from the original one by calling the <text:span text:style-name="Code (in text)">createClone()</text:span> method. Each clone is given a new name using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">setName()</text:span> method, then the different settings are applied to the objects. A dimension object that was created using the <text:span text:style-name="Code (in text)">createClone()</text:span> method must return the original object that it was created from in the <text:span text:style-name="Code (in text)">Original</text:span> property.</text:p>
  <text:p text:style-name="Paragraph">The example does not support multiple uses of a dimension, so it always returns <text:span text:style-name="Code (in text)">null</text:span> from the <text:span text:style-name="Code (in text)">createClone()</text:span> method, and the <text:span text:style-name="Code (in text)">Original</text:span> property is also always <text:span text:style-name="Code (in text)">null</text:span>.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Hierarchies</text:h>
  <text:p text:style-name="Paragraph">A single dimension can have several hierarchies, that is, several ways of grouping the elements of the dimension. For example, date values may be grouped:</text:p>
  <text:unordered-list text:style-name="L53">
   <text:list-item>
    <text:p text:style-name="P74">in a hierarchy with the levels “year”, “month” and “day of month”.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P74">in a hierarchy with the levels “year”, “week” and “day of week”.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The property <text:span text:style-name="Code (in text)">UsedHierarchy</text:span> of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceDimension]</text:span> service selects which hierarchy of a dimension is used. The property contains an index into the sequence of names that is returned by the dimension&apos;s <text:span text:style-name="Code (in text)">getElementNames()</text:span> method. [PRODUCTNAME] API Calc currently has no user interface to select a hierarchy, so it uses the hierarchy that the initial value of the <text:span text:style-name="Code (in text)">UsedHierarchy</text:span> property selects.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceHierarchy]</text:span> service serves as a container to access the levels object.</text:p>
  <text:p text:style-name="Paragraph">In the example, each dimension has only one hierarchy, which in turn has one level.</text:p>
  <text:h text:style-name="Head 5" text:level="5">Levels</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotSourceLevel]Each level of a hierarchy that is used in a DataPilot table corresponds to a column or row showing its members in the left or upper part of the table. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceLevel]</text:span> service contains a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface that is used to apply the following settings to a level:</text:p>
  <text:unordered-list text:style-name="L54">
   <text:list-item>
    <text:p text:style-name="P75">The <text:span text:style-name="Code (in text)">SubTotals</text:span> property defines a list of functions that are used to calculate subtotals for each member. If the sequence is empty, no subtotal columns or rows are generated. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.GeneralFunction]</text:span> enum value <text:span text:style-name="Code (in text)">AUTO</text:span> is used to select “automatic” subtotals, determined by the type of the data.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P75">The <text:span text:style-name="Code (in text)">ShowEmpty</text:span> property controls if result columns or rows are generated for members that have no data.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">Both of these settings can be modified by the user in the “Data Field” dialog. The example does not use them.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XDataPilotMemberResults]</text:span> interface is used to get the result header column that is displayed below the level&apos;s name for a row dimension, or the header row for a column dimension. The sequence returned from the <text:span text:style-name="Code (in text)">getResults()</text:span> call must have the same size as the data result&apos;s columns or rows respectively, or be empty. If the sequence is empty, or none of the entries contains the <text:span text:style-name="Code (in text)">HASMEMBER</text:span> flag, the level is not shown.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.MemberResult]</text:span> struct contains the following members:</text:p>
  <text:unordered-list text:style-name="L55">
   <text:list-item>
    <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">Name</text:span> is the name of the member that is represented by the entry, exactly as returned by the member object&apos;s <text:span text:style-name="Code (in text)">getName()</text:span> method. It is used to find the member object, for example when the user double-clicks on the cell.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">Caption</text:span> is the string that will be displayed in the cell. It may or may not be the same as <text:span text:style-name="Code (in text)">Name</text:span>.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:unordered-list text:style-name="L55">
   <text:list-item>
    <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">Flags</text:span> indicates the kind of result the entry represents. It can be a combination of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.MemberResultFlags]</text:span> constants:</text:p>
    <text:unordered-list>
     <text:list-item>
      <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">HASMEMBER</text:span> indicates there is a member that belongs to this entry.</text:p>
     </text:list-item>
     <text:list-item>
      <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">SUBTOTAL</text:span> marks an entry that corresponds to a subtotal column or row. The <text:span text:style-name="Code (in text)">HASMEMBER</text:span> <text:s/>should be set.</text:p>
     </text:list-item>
     <text:list-item>
      <text:p text:style-name="P76"><text:span text:style-name="Code (in text)">CONTINUE</text:span> marks an entry that is a continuation of the previous entry. In this case, none of the others are set, and the <text:span text:style-name="Code (in text)">Name</text:span> and <text:span text:style-name="Code (in text)">Caption</text:span> members are both empty.</text:p>
     </text:list-item>
    </text:unordered-list>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">In the example table shown above, the resulting sequence for the “ones” level would consist of:</text:p>
  <text:unordered-list text:style-name="L56">
   <text:list-item>
    <text:p text:style-name="P77">an entry containing the name and caption “1” and the <text:span text:style-name="Code (in text)">HASMEMBER</text:span> flag</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P77">two entries containing only the <text:span text:style-name="Code (in text)">CONTINUE</text:span> flag</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P77">the same repeated for member names “2” and “3”.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The implementation for the example looks similar to this: [SOURCE:Spreadsheet/ExampleDataPiloSource.java]</text:p>
  <table:table table:name="Table114" table:style-name="Table114">
   <table:table-column table:style-name="Table114.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">private ExampleSettings aSettings;</text:p>
     <text:p text:style-name="Code">private int nDimension;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">public com.sun.star.sheet.MemberResult[] getResults() {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nDimensions = 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nPosition = aSettings.aColDimensions.indexOf(new Integer(nDimension));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (nPosition &gt;= 0)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nDimensions = aSettings.aColDimensions.size();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>else {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>nPosition = aSettings.aRowDimensions.indexOf(new Integer(nDimension));</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (nPosition &gt;= 0)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nDimensions = aSettings.aRowDimensions.size();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (nPosition &lt; 0)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return new com.sun.star.sheet.MemberResult[0];</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nMembers = aSettings.nMemberCount;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nRepeat = 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nFill = 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;nDimensions; i++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>if (i &lt; nPosition)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nRepeat *= nMembers;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>else if (i &gt; nPosition)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>nFill *= nMembers;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nSize = nRepeat * nMembers * nFill;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.MemberResult[] aResults = new com.sun.star.sheet.MemberResult[nSize];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int nResultPos = 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nOuter=0; nOuter&lt;nRepeat; nOuter++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>for (int nMember=0; nMember&lt;nMembers; nMember++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nResultPos] = new com.sun.star.sheet.MemberResult();</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nResultPos].Name = ExampleSettings.getMemberName( nMember );</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nResultPos].Caption = aResults[nResultPos].Name;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>aResults[nResultPos].Flags = com.sun.star.sheet.MemberResultFlags.HASMEMBER;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>++nResultPos;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="12"/>for (int nInner=1; nInner&lt;nFill; nInner++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aResults[nResultPos] = new com.sun.star.sheet.MemberResult();</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>aResults[nResultPos].Flags = com.sun.star.sheet.MemberResultFlags.CONTINUE;</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>++nResultPos;</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return aResults;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 5" text:level="5">Members</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.DataPilotSourceMember]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.DataPilotSourceMember]</text:span> service contains two settings that are accessed through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface:</text:p>
  <text:unordered-list text:style-name="L57">
   <text:list-item>
    <text:p text:style-name="P78">If the boolean <text:span text:style-name="Code (in text)">IsVisible</text:span> property is <text:span text:style-name="Code (in text)">false</text:span>, the member and its data are hidden. There is currently no user interface to change this property.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P78">The boolean <text:span text:style-name="Code (in text)">ShowDetails</text:span> property controls if the results for a member should be detailed in the following level. If a member has this property set to <text:span text:style-name="Code (in text)">false</text:span>, only a single result column or row is generated for each data dimension. The property can be changed by the user by double-clicking on a result header cell for the member.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">These properties are not used in the example.</text:p>
  <text:h text:style-name="Head 3" text:level="3">Protecting Spreadsheets</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.document.XActionLockable;com.sun.star.util.XProtectable]The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.document.XActionLockable]</text:span> protects this cell from painting or updating during changes. The interface can be used to optimize the performance of complex changes, for instance, inserting or deleting formatted text.</text:p>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.util.XProtectable]</text:span> contains methods to protect and unprotect the spreadsheet with a password. Protecting the spreadsheet protects the locked cells only.</text:p>
  <text:unordered-list text:style-name="L58">
   <text:list-item>
    <text:p text:style-name="P79">The methods <text:span text:style-name="Code (in text)">protect()</text:span> and <text:span text:style-name="Code (in text)">unprotect()</text:span> to switch the protection on and off. If a wrong password is used to unprotect the spreadsheet, it leads to an exception.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P79">The method <text:span text:style-name="Code (in text)">isProtected()</text:span> returns the protection state of the spreadsheet as a <text:span text:style-name="Code (in text)">boolean</text:span> value.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:h text:style-name="Head 3" text:level="3">Sheet Outline</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetOutline]The spreadsheet interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOutline]</text:span> contains all the methods to control the row and column outlines of a spreadsheet:</text:p>
  <table:table table:name="Table148" table:style-name="Table148">
   <table:table-column table:style-name="Table148.A"/>
   <table:table-column table:style-name="Table148.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table148.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead"><text:s/>Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetOutline]</text:span> </text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:group]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Creates a new outline group and the method <text:span text:style-name="Code (in text)">ungroup()</text:span> removes the innermost outline group for a cell range. The parameter <text:span text:style-name="Code (in text)">nOrientation</text:span> (type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableOrientation]</text:span>) selects the orientation of the outline (columns or rows).</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TextInTable"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:autoOutline]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Inserts outline groups for a cell range depending on formula references.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:clearOutline]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Removes all outline groups from the sheet.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:hideDetail]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Collapses an outline group.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:showDetail]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Reopens an outline group.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table148.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetOutline:showLevel]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table148.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Shows the specified number of outline group levels and hides the others.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Detective</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XSheetAuditing]The spreadsheet interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAuditing]</text:span> supports the detective functionality of the spreadsheet.</text:p>
  <table:table table:name="Table149" table:style-name="Table149">
   <table:table-column table:style-name="Table149.A"/>
   <table:table-column table:style-name="Table149.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table149.A1" table:number-columns-spanned="2" table:value-type="string">
      <text:p text:style-name="TableHead">Methods of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetAuditing]</text:span></text:p>
     </table:table-cell>
     <table:covered-table-cell/>
    </table:table-row>
   </table:table-header-rows>
   <table:table-row>
    <table:table-cell table:style-name="Table149.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:hideDependents]()</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:hidePrecedents]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table149.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Hides the last arrows to dependent or precedent cells of a formula cell. Repeated calls of the methods shrink the chains of arrows.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table149.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:showDependents]()</text:span></text:p>
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:showPrecedents]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table149.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Adds arrows to the next dependent or precedent cells of a formula cell. Repeated calls of the methods extend the chains of arrows.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table149.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:showErrors]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table149.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Inserts arrows to all cells that cause an error in the specified cell.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table149.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:showInvalid]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table149.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Marks all cells that contain invalid values.</text:p>
    </table:table-cell>
   </table:table-row>
   <table:table-row>
    <table:table-cell table:style-name="Table149.A2" table:value-type="string">
     <text:p text:style-name="TableCode"><text:span text:style-name="Code (in text)">[IDLS:com.sun.star.sheet.XSheetAuditing:clearArrows]()</text:span></text:p>
    </table:table-cell>
    <table:table-cell table:style-name="Table149.B2" table:value-type="string">
     <text:p text:style-name="TextInTable">Removes all auditing arrows from the spreadsheet.</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Other Table Operations</text:h>
  <text:h text:style-name="Head 4" text:level="4">Data Validation</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.TableValidation]Data validation checks if a user entered valid entries.</text:p>
  <table:table table:name="Table94" table:style-name="Table94">
   <table:table-column table:style-name="Table94.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr15" draw:name="Frame40" text:anchor-type="paragraph" svg:width="12.499cm" fo:min-height="10.523cm" draw:z-index="52">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.TableValidation" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.42cm" svg:height="10.04cm" draw:z-index="75" xlink:href="SheetValidation.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the  com.sun.star.sheet.TableValidation service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration37" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.38</text:sequence>: TableValidation</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A cell or cell range object contains the properties <text:span text:style-name="Code (in text)">Validation</text:span> and <text:span text:style-name="Code (in text)">ValidationLocal</text:span>. They return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> of the validation object <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableValidation]</text:span>. The objects of both properties are equal, except the representation of formulas. The <text:span text:style-name="Code (in text)">ValidationLocal</text:span> property uses function names in the current language).</text:p>
  <table:table table:name="Table95" table:style-name="Table95">
   <table:table-column table:style-name="Table95.A"/>
   <table:table-column table:style-name="Table95.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table95.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note13" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="2" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table95.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">After the validation settings are changed, the validation object is reinserted into the property set of the cell or cell range.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:unordered-list text:style-name="L59">
   <text:list-item>
    <text:p text:style-name="P80"><text:span text:style-name="Code (in text)">Type</text:span> (type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ValidationType]</text:span>): Describes the type of data the cells <text:s/>contain. In text cells, it is possible to check the length of the text.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P80"><text:span text:style-name="Code (in text)">IgnoreBlankCells</text:span>: Determines if blank cells are valid.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P80"><text:span text:style-name="Code (in text)">ShowInputMessage</text:span>, <text:span text:style-name="Code (in text)">InputTitle</text:span> and <text:span text:style-name="Code (in text)">InputMessage</text:span>: These properties describe the message that appears if a cell of the validation area is selected.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P80"><text:span text:style-name="Code (in text)">ShowErrorMessage</text:span>, <text:span text:style-name="Code (in text)">ErrorTitle</text:span>, <text:span text:style-name="Code (in text)">ErrorMessage</text:span> and <text:span text:style-name="Code (in text)">ErrorAlertStyle</text:span> (type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ValidationAlertStyle]</text:span>): These properties describe the error message that appear if an invalid value has been entered. If the alert style is STOP, all invalid values are rejected. With the alerts WARNING and INFO, it is possible to keep invalid values. The alert MACRO starts a macro on invalid values. The property <text:span text:style-name="Code (in text)">ErrorTitle</text:span> has to contain the name of the macro.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P45">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSheetCondition]</text:span> sets the conditions for valid values. The comparison operator, the first and second formula and the base address for relative references in formulas.</text:p>
  <text:p text:style-name="P81">The following example enters values between 0.0 and 5.0 in a cell range. The <text:span text:style-name="Code (in text)">xSheet</text:span> is the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheet]</text:span> of a spreadsheet. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table96" table:style-name="Table96">
   <table:table-column table:style-name="Table96.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Data validation ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = xSheet.getCellRangeByName(&quot;A7:C7&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xCellPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xCellRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// validation properties</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xValidPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xCellPropSet.getPropertyValue(&quot;Validation&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xValidPropSet.setPropertyValue(&quot;Type&quot;, com.sun.star.sheet.ValidationType.DECIMAL);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xValidPropSet.setPropertyValue(&quot;ShowErrorMessage&quot;, new Boolean(true));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xValidPropSet.setPropertyValue(&quot;ErrorMessage&quot;, &quot;This is an invalid value!&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xValidPropSet.setPropertyValue(&quot;ErrorAlertStyle&quot;, com.sun.star.sheet.ValidationAlertStyle.STOP);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// condition</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XSheetCondition xCondition = (com.sun.star.sheet.XSheetCondition)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSheetCondition.class, xValidPropSet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCondition.setOperator(com.sun.star.sheet.ConditionOperator.BETWEEN);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCondition.setFormula1(&quot;0.0&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCondition.setFormula2(&quot;5.0&quot;);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// apply on cell range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellPropSet.setPropertyValue(&quot;Validation&quot;, xValidPropSet);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Data Consolidation</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XConsolidatable;com.sun.star.sheet.XConsolidationDescriptor]The data consolidation feature calculates results based on several cell ranges.</text:p>
  <table:table table:name="Table97" table:style-name="Table97">
   <table:table-column table:style-name="Table97.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame41" text:anchor-type="paragraph" svg:width="11.523cm" fo:min-height="5.463cm" draw:z-index="53">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.ConsolidationDescriptor" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.46cm" svg:height="5.08cm" draw:z-index="54" xlink:href="SheetConsolidationUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.ConsolidationDescriptor service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration38" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.39</text:sequence>: ConsolidationDescriptor</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XConsolidatable]</text:span>&apos;s method <text:span text:style-name="Code (in text)">createConsolidationDescriptor()</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XConsolidationDescriptor]</text:span> of a consolidation descriptor (service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ConsolidationDescriptor]</text:span>). This descriptor contains all data needed for a consolidation. It is possible to get and set all properties:</text:p>
  <text:unordered-list text:style-name="L60">
   <text:list-item>
    <text:p text:style-name="P82"><text:span text:style-name="Code (in text)">getFunction()</text:span> and <text:span text:style-name="Code (in text)">setFunction()</text:span>: The function for calculation, type <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.GeneralFunction]</text:span>.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P82"><text:span text:style-name="Code (in text)">getSources()</text:span> and <text:span text:style-name="Code (in text)">setSources()</text:span>: A sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> structs with all cell ranges containing the source data.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P82"><text:span text:style-name="Code (in text)">getStartOutputPosition()</text:span> and <text:span text:style-name="Code (in text)">setStartOutputPosition()</text:span>: A <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellAddress]</text:span> containing the first cell of the result cell range.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P82"><text:span text:style-name="Code (in text)">getUseColumnHeaders()</text:span>, <text:span text:style-name="Code (in text)">setUseColumnHeaders()</text:span>, <text:span text:style-name="Code (in text)">getUseRowHeaders()</text:span> and <text:span text:style-name="Code (in text)">setUseRowHeaders()</text:span>: Determine if the first column or row of each cell range is used to find matching data.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P82"><text:span text:style-name="Code (in text)">getInsertLinks()</text:span> and <text:span text:style-name="Code (in text)">setInsertLinks()</text:span>: Determine if the results are linked to the source data (formulas are inserted) or not (only results are inserted).</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The method <text:span text:style-name="Code (in text)">consolidate()</text:span> of the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XConsolidatable]</text:span> performs a consolidation with the passed descriptor.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Charts</text:h>
  <table:table table:name="Tabelle12" table:style-name="Tabelle12">
   <table:table-column table:style-name="Tabelle12.A"/>
   <table:table-row table:style-name="Tabelle12.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame42" text:anchor-type="paragraph" svg:width="13.033cm" fo:min-height="10.864cm" draw:z-index="55">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.table.Charts" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.989cm" svg:height="10.38cm" draw:z-index="74" xlink:href="TableChartsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.table.Charts service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration39" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.40</text:sequence>: TableCharts</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableChart]</text:span> represents a chart object. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableChart]</text:span> provides access to the cell range of the source data and controls the existence of column and row headers.</text:p>
  <table:table table:name="Table153" table:style-name="Table153">
   <table:table-column table:style-name="Table153.A"/>
   <table:table-column table:style-name="Table153.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table153.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note14" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="14" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table153.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableChart]</text:span> does not represent the chart document, but the object in the table that contains the chart document. The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.document.XEmbeddedObjectSupplier]</text:span> provides access to that chart document. For further information, see <text:span text:style-name="ChapterRef">[CHAPTER:Charts]</text:span>.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span> retrieves and changes the name of the chart object.</text:p>
  <text:p text:style-name="Paragraph">For further information about charts, see <text:span text:style-name="ChapterRef">[CHAPTER:Charts]</text:span>.</text:p>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.TableCharts]</text:span> represents the collection of all chart objects contained in the table. It implements the interfaces:</text:p>
  <text:unordered-list text:style-name="L61">
   <text:list-item>
    <text:p text:style-name="P83"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableCharts]</text:span> to create new charts and accessing them by their names.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P83"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> to access the charts by the insertion index.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P83"><text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XEnumerationAccess]</text:span> to create an enumeration of all charts.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P5">The following example shows how <text:span text:style-name="Code (in text)">xCharts</text:span> can be a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.XTableCharts]</text:span> interface of a collection of charts. [SOURCE:Spreadsheet/GeneralTableSample.java]</text:p>
  <table:table table:name="Tabelle13" table:style-name="Tabelle13">
   <table:table-column table:style-name="Tabelle13.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// *** Inserting CHARTS ***</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String aName = &quot;newChart&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.awt.Rectangle aRect = new com.sun.star.awt.Rectangle();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRect.X = 10000;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRect.Y = 3000;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRect.Width = aRect.Height = 5000;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress[] aRanges = new com.sun.star.table.CellRangeAddress[1];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRanges[0] = new com.sun.star.table.CellRangeAddress();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRanges[0].Sheet = aRanges[0].StartColumn = aRanges[0].EndColumn = 0;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRanges[0].StartRow = 0; aRanges[0].EndRow = 9;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Create the chart.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCharts.addNewByName(aName, aRect, aRanges, false, false);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Get the chart by name.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aChartObj = xCharts.getByName(aName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XTableChart xChart = (com.sun.star.table.XTableChart)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.table.XTableChart.class, aChartObj);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// Query the state of row and column headers.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText = &quot;Chart has column headers: &quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText += xChart.getHasColumnHeaders() ? &quot;yes&quot; : &quot;no&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(aText);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText = &quot;Chart has row headers: &quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aText += xChart.getHasRowHeaders() ? &quot;yes&quot; : &quot;no&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(aText);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Scenarios</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XScenarios]A set of scenarios contains different selectable cell contents for one or more cell ranges in a spreadsheet. The data of each scenario in this set is stored in a hidden sheet following the scenario sheet. To change the scenario&apos;s data, its hidden sheet has to be modified.</text:p>
  <table:table table:name="Table98" table:style-name="Table98">
   <table:table-column table:style-name="Table98.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame43" text:anchor-type="paragraph" svg:y="0cm" svg:width="12.524cm" fo:min-height="12.901cm" draw:z-index="56">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr27" draw:name="UML diagram of com.sun.star.sheet.Scenarios" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.441cm" svg:height="12.381cm" draw:z-index="57" xlink:href="SheetScenariosUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.Scenarios service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration40" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.41</text:sequence>: Scenarios</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XScenariosSupplier]</text:span>&apos;s method <text:span text:style-name="Code (in text)">getScenarios()</text:span> returns the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XScenarios]</text:span> of the scenario set of the spreadsheet. This scenario set is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Scenarios]</text:span> containing spreadsheet objects. It is possible to access the scenarios through their names that is equal to the name of the corresponding spreadsheet, their index, or using an enumeration (represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ScenariosEnumeration]</text:span>).</text:p>
  <text:p text:style-name="Paragraph">The interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XScenarios]</text:span> inserts and removes scenarios:</text:p>
  <text:unordered-list text:style-name="L62">
   <text:list-item>
    <text:p text:style-name="P84">The method <text:span text:style-name="Code (in text)">addNewByName()</text:span> adds a scenario with the given name that contains the specified cell ranges.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P84">The method <text:span text:style-name="Code (in text)">removeByName()</text:span> removes the scenario (the spreadsheet) with the given name.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P5">The following method shows how to create a scenario: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table87" table:style-name="Table87">
   <table:table-column table:style-name="Table87.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">/** Inserts a scenario containing one cell range into a sheet and applies the value array.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s text:c="10"/>The XSpreadsheet interface of the spreadsheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aRange <text:s text:c="10"/>The range address for the scenario.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aValueArray <text:s text:c="5"/>The array of cell contents.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aScenarioName <text:s text:c="3"/>The name of the new scenario.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aScenarioComment The user comment for the scenario.</text:p>
     <text:p text:style-name="Code"><text:s/>*/</text:p>
     <text:p text:style-name="Code">public void insertScenario(</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aRange,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>Object[][] aValueArray,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aScenarioName,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aScenarioComment ) throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the cell range with the given address</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xCellRange = xSheet.getCellRangeByName(aRange);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create the range address sequence</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeAddressable xAddr = (com.sun.star.sheet.XCellRangeAddressable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeAddressable.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.CellRangeAddress[] aRangesSeq = new com.sun.star.table.CellRangeAddress[1];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aRangesSeq[0] = xAddr.getRangeAddress();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create the scenario</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XScenariosSupplier xScenSupp = (com.sun.star.sheet.XScenariosSupplier)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XScenariosSupplier.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XScenarios xScenarios = xScenSupp.getScenarios();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xScenarios.<text:span text:style-name="CODE Emphasis">addNewByName</text:span>(aScenarioName, aRangesSeq, aScenarioComment);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// insert the values into the range</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeData xData = (com.sun.star.sheet.XCellRangeData)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeData.class, xCellRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xData.setDataArray(aValueArray);</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.Spreadsheet]</text:span> implements the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XScenario]</text:span> to modify an existing scenario:</text:p>
  <text:unordered-list text:style-name="L63">
   <text:list-item>
    <text:p text:style-name="P85">The method <text:span text:style-name="Code (in text)">getIsScenario()</text:span> tests if this spreadsheet is used to store scenario data.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P85">The methods <text:span text:style-name="Code (in text)">getScenarioComment()</text:span> and <text:span text:style-name="Code (in text)">setScenarioComment()</text:span> retrieves and sets the user comment for this scenario.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P85">The method <text:span text:style-name="Code (in text)">addRanges()</text:span> adds new cell ranges to the scenario.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P85">The method <text:span text:style-name="Code (in text)">apply()</text:span> copies the data of this scenario to the spreadsheet containing the scenario set, that is, it makes the scenario visible.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="P5">The following method shows how to activate a scenario: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table100" table:style-name="Table100">
   <table:table-column table:style-name="Table100.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">/** Activates a scenario.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param xSheet <text:s text:c="10"/>The XSpreadsheet interface of the spreadsheet.</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>@param aScenarioName <text:s text:c="3"/>The name of the scenario.</text:p>
     <text:p text:style-name="Code">*/</text:p>
     <text:p text:style-name="Code">public void showScenario( com.sun.star.sheet.XSpreadsheet xSheet,</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>String aScenarioName) throws RuntimeException, Exception {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the scenario set</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XScenariosSupplier xScenSupp = (com.sun.star.sheet.XScenariosSupplier)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XScenariosSupplier.class, xSheet);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XScenarios xScenarios = xScenSupp.getScenarios();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the scenario and activate it</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aScenarioObj = xScenarios.getByName(aScenarioName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XScenario xScenario = (com.sun.star.sheet.XScenario)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XScenario.class, aScenarioObj);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xScenario.<text:span text:style-name="CODE Emphasis">apply</text:span>();</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 2" text:level="2">Overall Document Features</text:h>
  <text:h text:style-name="Head 3" text:level="3"><text:alphabetical-index-mark text:string-value="styles" text:key1="spreadsheet document"/>Styles</text:h>
  <text:p text:style-name="P86">[TOPIC:com.sun.star.style.XStyleFamiliesSupplier]A style contains all formatting properties for a specific object. All styles of the same type are contained in a collection named a <text:span text:style-name="Emphasis">style family</text:span>. Each style family has a specific name to identify it in the collection. In [PRODUCTNAME] API Calc, there are two style families named <text:span text:style-name="Emphasis">CellStyles</text:span> and <text:span text:style-name="Emphasis">PageStyles</text:span>. A cell style can be applied to a cell, a cell range, or all cells of the spreadsheet. A page style can be applied to a spreadsheet itself.</text:p>
  <table:table table:name="Table1" table:style-name="Table1">
   <table:table-column table:style-name="Table1.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame44" text:anchor-type="paragraph" svg:width="11.705cm" fo:min-height="13.021cm" draw:z-index="58">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.style.StyleFamilies" text:anchor-type="paragraph" svg:x="0cm" svg:y="-4.821cm" svg:width="11.65cm" svg:height="12.539cm" draw:z-index="73" xlink:href="SheetStyleFamiliesUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.style.StyleFamilies service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration41" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.42</text:sequence>: StyleFamilies</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The collection of style families is available from the spreadsheet document with the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.XStyleFamiliesSupplier]</text:span>&apos;s method <text:span text:style-name="Code (in text)">getStyleFamilies()</text:span>. The general handling of styles is described in <text:span text:style-name="ChapterRef">[CHAPTER:Spreadsheet.OverallFeatures.Styles]</text:span>, therefore this chapter focuses on the spreadsheet specific style properties.</text:p>
  <table:table table:name="Table4" table:style-name="Table4">
   <table:table-column table:style-name="Table4.A"/>
   <table:table-column table:style-name="Table4.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table4.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note15" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="10" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table4.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">A new style is inserted into the family container,then it is possible to set any properties.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="styles" text:key1="spreadsheet document" text:key2="cell"/>Cell Styles</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.TableCellStyle]Cell styles are predefined packages of format settings that are applied in a single step.</text:p>
  <table:table table:name="Table5" table:style-name="Table5">
   <table:table-column table:style-name="Table5.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame45" text:anchor-type="paragraph" svg:width="12.383cm" fo:min-height="11.633cm" draw:z-index="59">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.TableCellStyle" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.321cm" svg:height="11.15cm" draw:z-index="60" xlink:href="SheetCellStyleUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.TableCellStyle service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration42" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.43</text:sequence>: CellStyle</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">A cell style is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TableCellStyle]</text:span>. If a formatting property is applied directly to a cell, it covers the property of the applied cell style. This service does not support the property <text:span text:style-name="Code (in text)">CellStyle</text:span>. The name of the style is set with the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNamed]</text:span>.</text:p>
  <text:p text:style-name="Paragraph">The following example creates a new cell style with gray background. The <text:span text:style-name="Code (in text)">xDocument</text:span> is the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheetDocument]</text:span> interface of a spreadsheet document. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table6" table:style-name="Table6">
   <table:table-column table:style-name="Table6.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the cell style container</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.style.XStyleFamiliesSupplier xFamiliesSupplier =</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>(com.sun.star.style.XStyleFamiliesSupplier) UnoRuntime.queryInterface(</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>com.sun.star.style.XStyleFamiliesSupplier.class, xDocument);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNameAccess xFamiliesNA = xFamiliesSupplier.getStyleFamilies();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aCellStylesObj = xFamiliesNA.getByName(&quot;CellStyles&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XNameContainer xCellStylesNA = (com.sun.star.container.XNameContainer)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XNameContainer.class, aCellStylesObj);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// create a new cell style</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.lang.XMultiServiceFactory xServiceManager = (com.sun.star.lang.XMultiServiceFactory)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.lang.XMultiServiceFactory.class, xDocument);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aCellStyle = xServiceManager.createInstance(&quot;com.sun.star.style.CellStyle&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xCellStylesNA.insertByName(&quot;MyNewCellStyle&quot;, aCellStyle);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// modify properties of the new style</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, aCellStyle);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0x888888));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xPropSet.setPropertyValue(&quot;IsCellBackgroundTransparent&quot;, new Boolean(false));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4"><text:alphabetical-index-mark text:string-value="page" text:key1="spreadsheet document" text:key2="styles"/>Page Styles</text:h>
  <text:p text:style-name="P5">[TOPIC:com.sun.star.sheet.TablePageStyle]A page style is represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.TablePageStyle]</text:span>. It contains the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.style.PageStyle]</text:span> and additional spreadsheet specific page properties.</text:p>
  <table:table table:name="Table7" table:style-name="Table7">
   <table:table-column table:style-name="Table7.A"/>
   <table:table-row>
    <table:table-cell table:style-name="Table7.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame46" text:anchor-type="paragraph" svg:width="12.76cm" fo:min-height="14.483cm" draw:z-index="61">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.TablePageStyle" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.689cm" svg:height="14cm" draw:z-index="72" xlink:href="SheetPageStyleUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.TablePageStyle service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration43" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.44</text:sequence>: TablePageStyle</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The properties <text:span text:style-name="Code (in text)">LeftPageFooterContent</text:span>, <text:span text:style-name="Code (in text)">LeftPageHeaderContent</text:span>, <text:span text:style-name="Code (in text)">RightPageFooterContent</text:span> and <text:span text:style-name="Code (in text)">RightPageHeaderContent</text:span> return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XHeaderFooterContent]</text:span> for the headers and footers for the left and right pages. Headers and footers are represented by the service <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.HeaderFooterContent]</text:span>. Each header or footer object contains three text objects for the left, middle and right portion of a header or footer. The methods <text:span text:style-name="Code (in text)">getLeftText()</text:span>, <text:span text:style-name="Code (in text)">getCenterText()</text:span> and <text:span text:style-name="Code (in text)">getRightText()</text:span> return the interface <text:span text:style-name="Code (in text)">[IDL:com.sun.star.text.XText]</text:span> of these text portions.</text:p>
  <table:table table:name="Table8" table:style-name="Table8">
   <table:table-column table:style-name="Table8.A"/>
   <table:table-column table:style-name="Table8.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table8.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr4" draw:name="Note16" text:anchor-type="paragraph" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="8" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table8.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">After the text of a header or footer is changed, it is reinserted into the property set of the page style.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Function Handling</text:h>
  <text:p text:style-name="Paragraph">This section describes the services which handle spreadsheet functions.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Calculating Function Results</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.FunctionAccess]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionAccess]</text:span> service calls any spreadsheet function and gets its result without having to insert a formula into a spreadsheet document.</text:p>
  <table:table table:name="Table3" table:style-name="Table3">
   <table:table-column table:style-name="Table3.A"/>
   <table:table-row table:style-name="Table3.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame47" text:anchor-type="paragraph" svg:width="11.523cm" fo:min-height="5.563cm" draw:z-index="62">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.FunctionAccess" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="11.46cm" svg:height="5.08cm" draw:z-index="71" xlink:href="FunctionHandlingUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.FunctionAccess service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration44" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.45</text:sequence>: FunctionAccess</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The service can be instantiated through the service manager. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XFunctionAccess]</text:span> interface contains only one method, <text:span text:style-name="Code (in text)">callFunction()</text:span>. The first parameter is the name of the function to call. The name has to be the function&apos;s programmatic name.</text:p>
  <text:unordered-list text:style-name="L64">
   <text:list-item>
    <text:p text:style-name="P87">For a built-in function, the English name is always used, regardless of the application&apos;s UI language.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P87">For an add-in function, the complete internal name that is the add-in component&apos;s service name, followed by a dot and the function&apos;s name as defined in the interface. For the <text:span text:style-name="Code (in text)">getIncremented</text:span> function in the example from the add-in section, this would be: “<text:span text:style-name="Code (in text)">com.sun.star.sheet.addin.ExampleAddIn.getIncremented</text:span>”.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The second parameter to <text:span text:style-name="Code (in text)">callFunction()</text:span> is a sequence containing the function arguments. The supported types for each argument are described in the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XFunctionAccess]</text:span> interface description, and are similar to the argument types for add-in functions. The following example passes two arguments to the <text:span text:style-name="Code (in text)">ZTEST</text:span> function, an array of values and a single value. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table115" table:style-name="Table115">
   <table:table-column table:style-name="Table115.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Calculate a function ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aFuncInst = xServiceManager.createInstance(&quot;com.sun.star.sheet.FunctionAccess&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XFunctionAccess xFuncAcc = (com.sun.star.sheet.XFunctionAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XFunctionAccess.class, aFuncInst);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// put the data into a two-dimensional array</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>double[][] aData = {{1.0, 2.0, 3.0}};</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>// construct the array of function arguments</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object[] aArgs = new Object[2];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArgs[0] = aData;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArgs[1] = new Double( 2.0 );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aResult = xFuncAcc.callFunction(&quot;ZTEST&quot;, aArgs);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;ZTEST result for data {1,2,3} and value 2 is &quot;</text:p>
     <text:p text:style-name="Code"><text:s text:c="36"/>+ ((Double)aResult).doubleValue());</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Standard"/>
  <table:table table:name="Table116" table:style-name="Table116">
   <table:table-column table:style-name="Table116.A"/>
   <table:table-column table:style-name="Table116.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table116.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note17" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="5" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table116.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The implementation of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionAccess]</text:span> uses the same internal structures as a spreadsheet document, therefore it is bound by the same limitations, such as the limit of 32000 rows exist for the function arguments.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 4" text:level="4">Information about Functions</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.FunctionDescription;com.sun.star.sheet.FunctionDescriptions]The services <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescriptions]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescription]</text:span> provide help texts about the available spreadsheet cell functions, including add-in functions and their arguments. This is the same information that <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API Calc displays in the function AutoPilot.</text:p>
  <table:table table:name="Table117" table:style-name="Table117">
   <table:table-column table:style-name="Table117.A"/>
   <table:table-row table:style-name="Table117.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame48" text:anchor-type="paragraph" svg:width="12.24cm" fo:min-height="11.134cm" draw:z-index="63">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr27" draw:name="UML diagram of com.sun.star.sheet.FunctionDescription" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.171cm" svg:height="10.65cm" draw:z-index="70" xlink:href="FunctionHandlingUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.FunctionDescription service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration45" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.46</text:sequence>: FunctionDescriptions</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescriptions]</text:span> service is instantiated through the service manager. It provides three different methods to access the information for the different functions:</text:p>
  <text:unordered-list text:style-name="L65">
   <text:list-item>
    <text:p text:style-name="P88">By name through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XNameAccess]</text:span> interface.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P88">By index through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> interface.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P88">By function identifier through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XFunctionDescriptions]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">getById()</text:span> method. The function identifier is the same used in the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.RecentFunctions]</text:span> service.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescription]</text:span> that is returned by any of these calls is a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.PropertyValue]</text:span> structs. To access one of these properties, loop through the sequence, looking for the desired property&apos;s name in the <text:span text:style-name="Code (in text)">Name</text:span> member. The <text:span text:style-name="Code (in text)">Arguments</text:span> property contains a sequence of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionArgument]</text:span> structs, one for each argument that the function accepts. The struct contains the name and description of the argument, as well as a boolean flag showing if the argument is optional.</text:p>
  <table:table table:name="Table118" table:style-name="Table118">
   <table:table-column table:style-name="Table118.A"/>
   <table:table-column table:style-name="Table118.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table118.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note18" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="3" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table118.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">All of the strings contained in the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescription]</text:span> service are to be used in user interaction, and therefore translated to the application&apos;s UI language. They cannot be used where programmatic function names are expected, for example, <text:s/>the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionAccess]</text:span> service.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The Recently Used Functions section below provides an example on how to use the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescriptions]</text:span> service.</text:p>
  <text:h text:style-name="Head 4" text:level="4">Recently Used Functions</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.RecentFunctions]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.RecentFunctions]</text:span> service provides access to the list of recently used functions of the spreadsheet application, that is displayed in the <text:span text:style-name="Buttons/Menus">AutoPilot:Functions</text:span> and the <text:span text:style-name="Buttons/Menus">Function List</text:span> window for example.</text:p>
  <table:table table:name="Table63" table:style-name="Table63">
   <table:table-column table:style-name="Table63.A"/>
   <table:table-row table:style-name="Table63.1">
    <table:table-cell table:style-name="Table63.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame49" text:anchor-type="paragraph" svg:width="12.234cm" fo:min-height="5.814cm" draw:z-index="64">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.RecentFunctions" text:anchor-type="paragraph" svg:x="0.004cm" svg:y="0.002cm" svg:width="12.16cm" svg:height="5.33cm" draw:z-index="65" xlink:href="FunctionHandlingUML3.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.RecentFunctions service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration46" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.47</text:sequence>: RecentFunctions</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The service can be instantiated through the service manager. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XRecentFunctions]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">getRecentFunctionIds()</text:span> method returns a sequence of function identifiers that are used with the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescriptions]</text:span> service. The <text:span text:style-name="Code (in text)">setRecentFunctionIds()</text:span> method changes the list. If the parameter to the <text:span text:style-name="Code (in text)">setRecentFunctionIds()</text:span> call contains more entries than the application handles, only the first entries are used. The maximum size of the list of recently used functions, currently 10, can be queried with the <text:span text:style-name="Code (in text)">getMaxRecentFunctions()</text:span> method.</text:p>
  <text:p text:style-name="Paragraph">The following example demonstrates the use of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.RecentFunctions]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.FunctionDescriptions]</text:span> services. [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table120" table:style-name="Table120">
   <table:table-column table:style-name="Table120.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Get the list of recently used functions ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aRecInst = xServiceManager.createInstance(&quot;com.sun.star.sheet.RecentFunctions&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XRecentFunctions xRecFunc = (com.sun.star.sheet.XRecentFunctions)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XRecentFunctions.class, aRecInst);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>int[] nRecentIds = xRecFunc.<text:span text:style-name="CODE Emphasis">getRecentFunctionIds</text:span>();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>// --- Get the names for these functions ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aDescInst = xServiceManager.createInstance(&quot;com.sun.star.sheet.FunctionDescriptions&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XFunctionDescriptions xFuncDesc = (com.sun.star.sheet.XFunctionDescriptions)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XFunctionDescriptions.class, aDescInst);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.print(&quot;Recently used functions: &quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int nFunction=0; nFunction&lt;nRecentIds.length; nFunction++) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.beans.PropertyValue[] aProperties = xFuncDesc.getById(nRecentIds[nFunction]);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>for (int nProp=0; nProp&lt;aProperties.length; nProp++)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>if (aProperties[nProp].Name.equals(&quot;Name&quot;))</text:p>
     <text:p text:style-name="Code"><text:s text:c="16"/>System.out.print(aProperties[nProp].Value + &quot; &quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println();</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Settings</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.GlobalSheetSettings]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.GlobalSheetSettings]</text:span> service contains settings that affect the whole spreadsheet application. It can be instantiated through the service manager. The properties are accessed using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface.</text:p>
  <table:table table:name="Table163" table:style-name="Table163">
   <table:table-column table:style-name="Table163.A"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table163.A1" table:value-type="string">
      <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr28" draw:name="Frame12" text:anchor-type="paragraph" svg:width="12.472cm" fo:min-height="6.463cm" draw:z-index="113">
        <text:p text:style-name="Illustration"><draw:image draw:style-name="fr29" draw:name="UML diagram of com.sun.star.sheet.GlobalSheetSettings" text:anchor-type="paragraph" svg:width="12.42cm" svg:height="5.881cm" draw:z-index="114" xlink:href="ApplicationSettingsUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
          <svg:desc>UML diagram showing the com.sun.star.sheet.GlobalSheetSettings service</svg:desc>
         </draw:image>Illustration <text:sequence text:ref-name="refIllustration47" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.48</text:sequence>: GlobalSheetSettings</text:p>
       </draw:text-box></text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The following example gets the list of user-defined sort lists from the settings and displays them: [SOURCE:Spreadsheet/SpreadsheetSample.java]</text:p>
  <table:table table:name="Table122" table:style-name="Table122">
   <table:table-column table:style-name="Table122.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="3"/>// --- Get the user defined sort lists ---</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aSettings = xServiceManager.createInstance(&quot;com.sun.star.sheet.GlobalSheetSettings&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xPropSet = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface( com.sun.star.beans.XPropertySet.class, aSettings );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>String[] aEntries = (String[]) xPropSet.getPropertyValue(&quot;UserLists&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>System.out.println(&quot;User defined sort lists:&quot;);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>for (int i=0; i&lt;aEntries.length; i++)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>System.out.println( aEntries[i] );</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 2" text:level="2">Spreadsheet Document Controller</text:h>
  <text:h text:style-name="Head 3" text:level="3">Spreadsheet View</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SpreadsheetView]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetView]</text:span> service is the spreadsheet&apos;s extension of the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.Controller]</text:span> service and represents a table editing view for a spreadsheet document.</text:p>
  <table:table table:name="Table71" table:style-name="Table71">
   <table:table-column table:style-name="Table71.A"/>
   <table:table-row table:style-name="Table71.1">
    <table:table-cell table:style-name="Table71.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame51" text:anchor-type="paragraph" svg:width="14.157cm" fo:min-height="18.431cm" draw:z-index="66">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.SpreadsheetView" text:anchor-type="paragraph" svg:x="0cm" svg:y="-4.821cm" svg:width="14.12cm" svg:height="17.949cm" draw:z-index="69" xlink:href="SpreadsheetViewUML1.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.SpreadsheetView service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration48" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.49</text:sequence>: SpreadsheetView</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <table:table table:name="Table72" table:style-name="Table72">
   <table:table-column table:style-name="Table72.A"/>
   <table:table-column table:style-name="Table72.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table72.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note19" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="1" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table72.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The page preview does not have an API representation.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:p text:style-name="Paragraph">The view object is the spreadsheet application&apos;s controller object as described in the chapter <text:span text:style-name="ChapterRef">[CHAPTER:OfficeDev.AppEnv.Overview.FrameworkAPI.FCM]</text:span>. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.XController]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.frame.XDispatchProvider]</text:span> and <text:span text:style-name="Code (in text)">[IDL:com.sun.star.ui.XContextMenuInterception]</text:span> interfaces work as described in that chapter.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.XSelectionSupplier]</text:span> interface queries and modifies the view&apos;s selection. The selection in a spreadsheet view can be a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCell]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRange]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SheetCellRanges]</text:span>, <text:span text:style-name="Code (in text)">[IDL:com.sun.star.drawing.Shape]</text:span> or <text:span text:style-name="Code (in text)">[IDL:com.sun.star.drawing.Shapes]</text:span> object.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XSpreadsheetView]</text:span> interface gives access to the spreadsheet that is displayed in the view. The <text:span text:style-name="Code (in text)">getActiveSheet()</text:span> method returns the active sheet&apos;s object, the <text:span text:style-name="Code (in text)">setActiveSheet()</text:span> method switches to a different sheet. The parameter to <text:span text:style-name="Code (in text)">setActiveSheet()</text:span> must be a sheet of the view&apos;s document.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XViewSplitable]</text:span> interface splits a view into two parts or panes, horizontally and vertically. The <text:span text:style-name="Code (in text)">splitAtPosition()</text:span> method splits the view at the specified pixel positions. To remove the split, a position of 0 is passed. The <text:span text:style-name="Code (in text)">getIsWindowSplit()</text:span> method returns <text:span text:style-name="Code (in text)">true</text:span> if the view is split, the <text:span text:style-name="Code (in text)">getSplitHorizontal()</text:span> and <text:span text:style-name="Code (in text)">getSplitVertical()</text:span> methods return the pixel positions where the view is split. The <text:span text:style-name="Code (in text)">getSplitColumn()</text:span> and <text:span text:style-name="Code (in text)">getSplitRow()</text:span> methods return the cell column or row that corresponds to the split position, and are used with frozen panes as discussed below.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XViewFreezable]</text:span> interface is used to freeze a number of columns and rows in the left and upper part of the view. The <text:span text:style-name="Code (in text)">freezeAtPosition()</text:span> method freezes the specified number of columns and rows. This also sets the split positions accordingly. The <text:span text:style-name="Code (in text)">hasFrozenPanes()</text:span> method returns <text:span text:style-name="Code (in text)">true</text:span> if the columns or rows are frozen. A view can only have frozen columns or rows, or normal split panes at a time.</text:p>
  <text:p text:style-name="Paragraph">If a view is split or frozen, it has up to four view pane objects that represent the individual parts. These are accessed using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.container.XIndexAccess]</text:span> interface. If a view is not split, it contains only one pane object. The active pane of a spreadsheet view is also accessed using the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetViewPane]</text:span> service&apos;s interfaces directly with the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetView]</text:span> service that inherits them.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XRangeSelection]</text:span> interface is explained in the “Range Selection” chapter below.</text:p>
  <text:p text:style-name="Paragraph">The following example uses the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XViewFreezable]</text:span> interface to freeze the first column and the first two rows: [SOURCE:Spreadsheet/ViewSample.java]</text:p>
  <table:table table:name="Table73" table:style-name="Table73">
   <table:table-column table:style-name="Table73.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// freeze the first column and first two rows</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XViewFreezable xFreeze = (com.sun.star.sheet.XViewFreezable)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XViewFreezable.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xFreeze.freezeAtPosition(1, 2);</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">View Panes</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SpreadsheetViewPane]The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetViewPane]</text:span> service represents a pane in a view that shows a rectangular area of the document. The exposed area of a view pane always starts at a cell boundary. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XViewPane]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">getFirstVisibleColumn()</text:span>, <text:span text:style-name="Code (in text)">getFirstVisibleRow()</text:span>, <text:span text:style-name="Code (in text)">setFirstVisibleColumn()</text:span> and <text:span text:style-name="Code (in text)">setFirstVisibleRow()</text:span> methods query and set the start of the exposed area. The <text:span text:style-name="Code (in text)">getVisibleRange()</text:span> method returns a <text:span text:style-name="Code (in text)">[IDL:com.sun.star.table.CellRangeAddress]</text:span> struct describing which cells are shown in the pane. Columns or rows that are only partly visible at the right or lower edge of the view are not included.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCellRangeReferrer]</text:span> interface gives direct access to the same cell range of exposed cells that are addressed by the <text:s/><text:span text:style-name="Code (in text)">getVisibleRange()</text:span> return value.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.view.XControlAccess]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">getControl()</text:span> method gives access to a control model&apos;s control for the view pane. Refer to the chapter <text:span text:style-name="ChapterRef">[CHAPTER:Forms.MVC]</text:span> for additional information.</text:p>
  <text:p text:style-name="Paragraph">The example below retrieves the cell range that is shown in the second pane. It is the lower left one after freezing both columns and rows, and assigns a cell background: [SOURCE:Spreadsheet/ViewSample.java]</text:p>
  <table:table table:name="Table74" table:style-name="Table74">
   <table:table-column table:style-name="Table74.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// get the cell range shown in the second pane and assign a cell background to them</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.container.XIndexAccess xIndex = (com.sun.star.container.XIndexAccess)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.container.XIndexAccess.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>Object aPane = xIndex.getByIndex(1);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XCellRangeReferrer xRefer = (com.sun.star.sheet.XCellRangeReferrer)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XCellRangeReferrer.class, aPane);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.table.XCellRange xRange = xRefer.getReferredCells();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xRangeProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRangeProp.setPropertyValue(&quot;IsCellBackgroundTransparent&quot;, new Boolean(false));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRangeProp.setPropertyValue(&quot;CellBackColor&quot;, new Integer(0xFFFFCC));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">View Settings</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.SpreadsheetViewSettings]The properties from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.SpreadsheetViewSettings]</text:span> service are accessed through the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.beans.XPropertySet]</text:span> interface controlling the appearance of the view. Most of the properties correspond to settings in the options dialog. The <text:span text:style-name="Code (in text)">ShowObjects</text:span>, <text:span text:style-name="Code (in text)">ShowCharts</text:span> and <text:span text:style-name="Code (in text)">ShowDrawing</text:span> properties take values of 0 for “show”, 1 for “hide”, and 2 for “placeholder display”.</text:p>
  <text:p text:style-name="Paragraph">The following example changes the view to display green grid lines: [SOURCE:Spreadsheet/ViewSample.java]</text:p>
  <table:table table:name="Table75" table:style-name="Table75">
   <table:table-column table:style-name="Table75.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// change the view to display green grid lines</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.XPropertySet xProp = (com.sun.star.beans.XPropertySet)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.beans.XPropertySet.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xProp.setPropertyValue(&quot;ShowGrid&quot;, new Boolean(true));</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xProp.setPropertyValue(&quot;GridColor&quot;, new Integer(0x00CC00));</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Range Selection</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XRangeSelection;com.sun.star.sheet.RangeSelectionArguments;com.sun.star.sheet.XRangeSelectionChangeListener]The view&apos;s <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XRangeSelection]</text:span> interface is used to let a user interactively select a cell range in the view, independently of the view&apos;s selection. This is used for dialogs that require a cell reference as input. While the range selection is active, a small dialog is shown, similar to the minimized state of <text:span text:style-name="T2">[PRODUCTNAME]</text:span> API&apos;s own dialogs that allow cell reference input.</text:p>
  <table:table table:name="Table76" table:style-name="Table76">
   <table:table-column table:style-name="Table76.A"/>
   <table:table-row table:style-name="Table76.1">
    <table:table-cell table:style-name="Table76.A1" table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr2" draw:name="Frame52" text:anchor-type="paragraph" svg:y="0.049cm" svg:width="12.04cm" fo:min-height="6.511cm" draw:z-index="67">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.RangeSelectionArguments" text:anchor-type="paragraph" svg:x="0cm" svg:y="-5.08cm" svg:width="12cm" svg:height="6.031cm" draw:z-index="68" xlink:href="SpreadsheetViewUML2.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.RangeSelectionArguments service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration49" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.50</text:sequence>: XRangeSelection interface</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">Before the range selection mode is started, a listener is registered using the <text:span text:style-name="Code (in text)">addRangeSelectionListener()</text:span> method. The listener implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XRangeSelectionListener]</text:span> interface. Its <text:span text:style-name="Code (in text)">done()</text:span> or <text:span text:style-name="Code (in text)">aborted()</text:span> method is called when the selection is finished or aborted. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.RangeSelectionEvent]</text:span> struct that is passed to the calls contains the selected range in the <text:span text:style-name="Code (in text)">RangeDescriptor</text:span> member. It is a string because the user can <text:s text:c="2"/>type into the minimized dialog during range selection.</text:p>
  <text:p text:style-name="Paragraph">In the following example, the listener implementation stores the result in a member in the <text:span text:style-name="Code (in text)">done()</text:span> method, and notifies the main thread about the completion of the selection in the <text:span text:style-name="Code (in text)">done()</text:span> and <text:span text:style-name="Code (in text)">aborted()</text:span> methods: [SOURCE:Spreadsheet/ViewSample.java]</text:p>
  <table:table table:name="Table77" table:style-name="Table77">
   <table:table-column table:style-name="Table77.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">private class ExampleRangeListener implements com.sun.star.sheet.XRangeSelectionListener {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>public String aResult;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void done(com.sun.star.sheet.RangeSelectionEvent aEvent) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aResult = aEvent.RangeDescriptor;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>synchronized (this) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>notify();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void aborted( com.sun.star.sheet.RangeSelectionEvent aEvent ) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>synchronized (this) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>notify();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void disposing( com.sun.star.lang.EventObject aObj ) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">It is also possible to add another listener using the <text:span text:style-name="Code (in text)">addRangeSelectionChangeListener()</text:span> method. This listener implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XRangeSelectionChangeListener]</text:span> interface, and its <text:span text:style-name="Code (in text)">descriptorChanged()</text:span> method is called during the selection when the selection changes. Using this listener normally is not necessary.</text:p>
  <text:p text:style-name="Paragraph">After registering the listeners, the range selection mode is started using the <text:span text:style-name="Code (in text)">startRangeSelection()</text:span> method. The parameter to that method is a <text:s/>sequence of property values with properties from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.RangeSelectionArguments]</text:span> service:</text:p>
  <text:unordered-list text:style-name="L66">
   <text:list-item>
    <text:p text:style-name="P89"><text:span text:style-name="Code (in text)">InitialValue</text:span> specifies an existing selection value that is shown in the dialog and highlighted in the view when the selection mode is started.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P89"><text:span text:style-name="Code (in text)">Title</text:span> is the title for the range selection dialog.</text:p>
   </text:list-item>
   <text:list-item>
    <text:p text:style-name="P89"><text:span text:style-name="Code (in text)">CloseOnMouseRelease</text:span> specifies when the selection mode is ended. If the value is <text:span text:style-name="Code (in text)">true</text:span>, selection is ended when the mouse button is released after selecting a cell range. If it is <text:span text:style-name="Code (in text)">false</text:span> or not specified, the user presses the <text:span text:style-name="T6">Shrink</text:span> button in the dialog to end selection mode.</text:p>
   </text:list-item>
  </text:unordered-list>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">startRangeSelection()</text:span> method returns immediately after starting the range selection mode. This allows it to be called from a dialog&apos;s event handler. The <text:span text:style-name="Code (in text)">abortRangeSelection()</text:span> method is used to cancel the range selection mode programmatically.</text:p>
  <text:p text:style-name="Paragraph">The following example lets the user pick a range, and then selects that range in the view. Note that the use of <text:span text:style-name="Code (in text)">wait</text:span> to wait for the end of the selection is not how a GUI application normally handles the events. [SOURCE:Spreadsheet/ViewSample.java]</text:p>
  <table:table table:name="Table78" table:style-name="Table78">
   <table:table-column table:style-name="Table78.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>// let the user select a range and use it as the view&apos;s selection</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.sheet.XRangeSelection xRngSel = (com.sun.star.sheet.XRangeSelection)</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>UnoRuntime.queryInterface(com.sun.star.sheet.XRangeSelection.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>ExampleRangeListener aListener = new ExampleRangeListener();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRngSel.addRangeSelectionListener(aListener);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>com.sun.star.beans.PropertyValue[] aArguments = new com.sun.star.beans.PropertyValue[2];</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[0] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[0].Name <text:s text:c="2"/>= &quot;Title&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[0].Value <text:s/>= &quot;Please select a range&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[1] = new com.sun.star.beans.PropertyValue();</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[1].Name <text:s text:c="2"/>= &quot;CloseOnMouseRelease&quot;;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>aArguments[1].Value <text:s/>= new Boolean(true);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRngSel.startRangeSelection(aArguments);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>synchronized (aListener) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aListener.wait(); <text:s text:c="6"/>// wait until the selection is done</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>xRngSel.removeRangeSelectionListener(aListener);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (aListener.aResult != null &amp;&amp; aListener.aResult.length() != 0)</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>{</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.view.XSelectionSupplier xSel = (com.sun.star.view.XSelectionSupplier)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.view.XSelectionSupplier.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheetView xView = (com.sun.star.sheet.XSpreadsheetView)</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>UnoRuntime.queryInterface(com.sun.star.sheet.XSpreadsheetView.class, xController);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.XSpreadsheet xSheet = xView.getActiveSheet();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.table.XCellRange xResultRange = xSheet.getCellRangeByName(aListener.aResult);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>xSel.select(xResultRange);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 2" text:level="2">Spreadsheet <text:alphabetical-index-mark text:string-value="add-ins" text:key1="spreadsheet"/>Add-Ins</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.AddIn]An add-in component is used to add new functions to the spreadsheet application that can be used in cell formulas, such as the built-in functions. A spreadsheet add-in is a UNO component. The chapter <text:span text:style-name="ChapterRef">[CHAPTER:Components]</text:span> describes how to write and deploy a UNO component.</text:p>
  <table:table table:name="Table123" table:style-name="Table123">
   <table:table-column table:style-name="Table123.A"/>
   <table:table-row table:style-name="Table123.1">
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Paragraph"><draw:text-box draw:style-name="fr17" draw:name="Frame141" text:anchor-type="paragraph" svg:width="12.391cm" fo:min-height="7.31cm" draw:z-index="16">
       <text:p text:style-name="Illustration"><draw:image draw:style-name="fr8" draw:name="UML diagram of com.sun.star.sheet.Addin" text:anchor-type="paragraph" svg:x="0cm" svg:y="-4.821cm" svg:width="12.31cm" svg:height="6.83cm" draw:z-index="17" xlink:href="AddInUML.png" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
         <svg:desc>UML diagram showing the com.sun.star.sheet.Addin service</svg:desc>
        </draw:image>Illustration <text:sequence text:ref-name="refIllustration50" text:name="Illustration" text:formula="Illustration+1" style:num-format="1">1.51</text:sequence>: AddIn</text:p>
      </draw:text-box></text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The functions that the add-in component exports to the spreadsheet application have to be defined in a new interface. The function names in the interface, together with the component&apos;s service name, are used internally to identify an add-in function. For a list of the supported types for function arguments and return values, see the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.AddIn]</text:span> service description. An example interface that defines two functions is similar to the following code: [SOURCE:Spreadsheet/XExampleAddIn.idl]</text:p>
  <table:table table:name="Table124" table:style-name="Table124">
   <table:table-column table:style-name="Table124.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">#include &lt;com/sun/star/uno/XInterface.idl&gt;</text:p>
     <text:p text:style-name="Code">#include &lt;com/sun/star/sheet/XVolatileResult.idl&gt;</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">module com { module sun { module star { module sheet { module addin {</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>interface XExampleAddIn : com::sun::star::uno::XInterface</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>{</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>/// Sample function that just increments a value.</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>long getIncremented( [in] long nValue );</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>/// Sample function that returns a volatile result.</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com::sun::star::sheet::XVolatileResult getCounter( [in] string aName );</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>};</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">}; }; }; }; };</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">In addition to this interface, the add-in has to implement the interfaces from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.AddIn]</text:span> service and the usual interfaces every component has to support.</text:p>
  <text:h text:style-name="Head 3" text:level="3">Function Descriptions</text:h>
  <text:p text:style-name="Paragraph">The methods from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XAddIn]</text:span> interface are used to provide descriptions of the user-visible functions.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getDisplayFunctionName()</text:span> and <text:span text:style-name="Code (in text)">getProgrammaticFuntionName()</text:span> methods are used to map between the internal function name, as defined in the interface and the function name as shown to the user of the spreadsheet application. The user-visible name, as well as the function and argument descriptions, can be translated strings for the language which is set using <text:span text:style-name="Code (in text)">setLocale()</text:span>.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getProgrammaticCategoryName()</text:span> method sorts each add-in functions into one of the spreadsheet application&apos;s function categories. It returns the category&apos;s internal (non-translated) name. In addition, the <text:span text:style-name="Code (in text)">getDisplayCategoryName()</text:span> method provides a translated name for the category.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getFunctionDescription()</text:span>, <text:span text:style-name="Code (in text)">getDisplayArgumentName()</text:span> and <text:span text:style-name="Code (in text)">getArgumentDescription()</text:span> methods provide descriptions of the function and its arguments that are shown to the user, for example in the function AutoPilot.</text:p>
  <table:table table:name="Table125" table:style-name="Table125">
   <table:table-column table:style-name="Table125.A"/>
   <table:table-column table:style-name="Table125.B"/>
   <table:table-header-rows>
    <table:table-row>
     <table:table-cell table:style-name="Table125.A1" table:value-type="string">
      <text:p text:style-name="Table Contents"><draw:image draw:style-name="fr18" draw:name="Note20" text:anchor-type="paragraph" svg:x="0.065cm" svg:y="0.026cm" svg:width="0.847cm" svg:height="0.847cm" draw:z-index="4" xlink:href="../interesting.gif" xlink:type="simple" xlink:show="embed" xlink:actuate="onLoad">
        <svg:desc>Note graphics marks a special text section</svg:desc>
       </draw:image></text:p>
     </table:table-cell>
     <table:table-cell table:style-name="Table125.B1" table:value-type="string">
      <text:p text:style-name="TipInTable">The <text:span text:style-name="Code (in text)">getProgrammaticFuntionName()</text:span> method name is misspelled, but the wrong spelling has to be retained for compatibility reasons.</text:p>
     </table:table-cell>
    </table:table-row>
   </table:table-header-rows>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Service Names</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.lang.XServiceInfo]The add-in component has to support two services, the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.AddIn]</text:span> service, and an additional service that is used to identify the set of functions that the add-in supplies. There may be several implementations of the same set of functions. In that case, they all use the same service name, but different implementation names. Therefore, a spreadsheet document that uses the functions can make use of the implementation that is present.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XServiceInfo]</text:span> methods <text:span text:style-name="Code (in text)">supportsService()</text:span> and <text:span text:style-name="Code (in text)">getSupportedServiceNames()</text:span> handle both service names, and the component also has to be registered for both services. In addition, the component has to implement the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XServiceName]</text:span> interface, and in its <text:span text:style-name="Code (in text)">getServiceName()</text:span> method return the name of the function-specific service.</text:p>
  <text:h text:style-name="Head 3" text:level="3">Compatibility Names</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XCompatibilityNames]Optionally, the component can implement the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XCompatibilityNames]</text:span> interface, and in the <text:span text:style-name="Code (in text)">getCompatibilityNames()</text:span> method return a sequence of locale-dependent compatibility names for a function. These names are used by the spreadsheet application when loading or saving Excel files. They should only be present for a function if it is known to be an Excel add-in function with equivalent functionality.</text:p>
  <text:p text:style-name="Paragraph">The sequence of compatibility names for a function may contain several names for a single locale. In that case, all of these names are considered when importing a file. When exporting, the first name is used. If a file is exported in a locale for which no entry is present, the first entry is used. If there is a default locale, the entries for that locale are first in the sequence.</text:p>
  <text:h text:style-name="Head 3" text:level="3">Custom Functions</text:h>
  <text:p text:style-name="Paragraph">The user-visible functions have to be implemented as defined in the interface. The spreadsheet application does the necessary conversions to pass the arguments. For example, floating point numbers are rounded if a function has integer arguments. To enable the application to find the functions, it is important that the component implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.lang.XTypeProvider]</text:span> interface.</text:p>
  <text:p text:style-name="Paragraph">The <text:span text:style-name="Code (in text)">getIncremented()</text:span> function from the example interface above can be implemented like this: [SOURCE:Spreadsheet/ExampleAddIn.java]</text:p>
  <table:table table:name="Table126" table:style-name="Table126">
   <table:table-column table:style-name="Table126.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code"><text:s text:c="4"/>public int getIncremented( int nValue ) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return nValue + 1;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:h text:style-name="Head 3" text:level="3">Variable Results</text:h>
  <text:p text:style-name="Paragraph">[TOPIC:com.sun.star.sheet.XVolatileResult]It is also possible to implement functions with results that change over time. Whenever such a result changes, the formulas that use the result are recalculated and the new values are shown in the spreadsheet. This can be used to display data from a real-time data feed in a spreadsheet.</text:p>
  <text:p text:style-name="Paragraph">In its interface, a function with a variable result must be defined with a return type of <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XVolatileResult]</text:span>, such as the <text:span text:style-name="Code (in text)">getCounter()</text:span> function from the example interface above. The function&apos;s implementation must return an object that implements the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.VolatileResult]</text:span> service. Subsequent calls to the same function with the same arguments return the same object. An implementation that returns a different result object for every name looks like this: [SOURCE:Spreadsheet/ExampleAddIn.java]</text:p>
  <table:table table:name="Table127" table:style-name="Table127">
   <table:table-column table:style-name="Table127.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">private java.util.Hashtable aResults = new java.util.Hashtable();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code">public com.sun.star.sheet.XVolatileResult getCounter(String aName) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>ExampleAddInResult aResult = (ExampleAddInResult) aResults.get(aName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>if (aResult == null) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aResult = new ExampleAddInResult(aName);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aResults.put(aName, aResult);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>return aResult;</text:p>
     <text:p text:style-name="Code">}</text:p>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="Paragraph">The result object has to implement the <text:span text:style-name="Code (in text)">addResultListener()</text:span> and <text:span text:style-name="Code (in text)">removeResultListener()</text:span> methods from the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XVolatileResult]</text:span> interface to maintain a list of listeners, and notify each of these listeners by calling the <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.XResultListener]</text:span> interface&apos;s <text:span text:style-name="Code (in text)">modified()</text:span> method whenever a new result is available. The <text:span text:style-name="Code (in text)">[IDL:com.sun.star.sheet.ResultEvent]</text:span> object that is passed to the <text:span text:style-name="Code (in text)">modified()</text:span> call must contain the new result in the <text:span text:style-name="Code (in text)">Value</text:span> member. The possible types for the result are the same as for a function&apos;s return value if no volatile results are involved.</text:p>
  <text:p text:style-name="Paragraph">If a result is already available when <text:span text:style-name="Code (in text)">addResultListener()</text:span> is called, it can be publicized by immediately calling <text:span text:style-name="Code (in text)">modified()</text:span> for the new listener. Otherwise, the spreadsheet application displays a “#N/A” error value until a result is available.</text:p>
  <text:p text:style-name="Paragraph">The following example shows a simple implementation of a result object. Every time the incrementValue method is called, for example, from a background thread, the result value is incremented and the listeners are notified. [SOURCE:Spreadsheet/ExampleAddIn.java]</text:p>
  <table:table table:name="Table128" table:style-name="Table128">
   <table:table-column table:style-name="Table128.A"/>
   <table:table-row>
    <table:table-cell table:value-type="string">
     <text:p text:style-name="Code">class ExampleAddInResult implements com.sun.star.sheet.XVolatileResult {</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>private String aName;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>private int nValue;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>private java.util.Vector aListeners = new java.util.Vector();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public ExampleAddInResult(String aNewName) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aName = aNewName;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>private com.sun.star.sheet.ResultEvent getResult() {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.ResultEvent aEvent = new com.sun.star.sheet.ResultEvent();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aEvent.Value = aName + &quot; &quot; + String.valueOf(nValue);</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aEvent.Source = this;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>return aEvent;</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void addResultListener(com.sun.star.sheet.XResultListener aListener) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aListeners.addElement(aListener);</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>// immediately notify of initial value</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aListener.modified(getResult());</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void removeResultListener(com.sun.star.sheet.XResultListener aListener) {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>aListeners.removeElement(aListener);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="4"/>public void incrementValue() {</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>++nValue;</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>com.sun.star.sheet.ResultEvent aEvent = getResult();</text:p>
     <text:p text:style-name="Code"/>
     <text:p text:style-name="Code"><text:s text:c="8"/>java.util.Enumeration aEnum = aListeners.elements();</text:p>
     <text:p text:style-name="Code"><text:s text:c="8"/>while (aEnum.hasMoreElements())</text:p>
     <text:p text:style-name="Code"><text:s text:c="12"/>((com.sun.star.sheet.XResultListener)aEnum.nextElement()).modified(aEvent);</text:p>
     <text:p text:style-name="Code"><text:s text:c="4"/>}</text:p>
     <text:p text:style-name="Code">}</text:p>
     <text:p text:style-name="Paragraph"/>
    </table:table-cell>
   </table:table-row>
  </table:table>
  <text:p text:style-name="P90"/>
 </office:body>
</office:document>