76      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./012345 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                   ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./01234567 8 9 : ; <!=!>!?!@!A!B!C!D!E!F!G!H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~########$None!"9;T)Set the namespace for the entire documentDThis follows the same policy that the rest of the xlsx package uses.The main namespace for Excel$  !"#$   !  !"#$None0,required attribute parsing-)parsing optional attributes with defaults.parsing optional attributes9Add sml namespace to name%&'()*+,-./0123456789:;<=>?@AB%&'()*+,-./0123456789:;<)*9+'(%&,-./012345678<:;%&'()*+,-./0123456789:;<=>?@ABNone!".E*See 20.1.8.44 "noFill (No Fill)" (p. 2872)FJSolid fill TODO: colors See 20.1.8.54 "solidFill (Solid Fill)" (p. 2879)T,Specifies the rotation of the Graphic Frame.USpecifies a horizontal flip. When true, this attribute defines that the shape is flipped horizontally about the center of its bounding box.VSpecifies a vertical flip. When true, this attribute defines that the shape is flipped vetically about the center of its bounding box.W%See 20.1.7.4 "off (Offset)" (p. 2847)XSSee 20.1.7.3 "ext (Extents)" (p. 2846) or 20.5.2.14 "ext (Shape Extent)" (p. 3165)]Positive position or length in EMUs, maximu allowed value is 27273042316900. see 20.1.10.41 "ST_PositiveCoordinate (Positive Coordinate)" (p. 2942)ctUnits used in "Universal measure" coordinates see 22.9.2.15 "ST_UniversalMeasure (Universal Measurement)" (p. 3793)j@This simple type represents a one dimensional position or length5See 20.1.10.16 "ST_Coordinate (Coordinate)" (p. 2921)k@see 20.1.10.19 "ST_CoordinateUnqualified (Coordinate)" (p. 2922)lEsee 22.9.2.15 "ST_UniversalMeasure (Universal Measurement)" (p. 3793)mText run TODO: br, fldqText character properties.TODO: kumimoji, lang, altLang, sz, strike, kern, cap, spc, normalizeH, baseline, noProof, dirty, err, smtClean, smtId, bmk, ln, a_EG_FillProperties, a_EG_EffectProperties, highlight, a_EG_TextUnderlineLine, a_EG_TextUnderlineFill, latin, ea, cs, sym, hlinkClick, hlinkMouseOver, rtl, extLstSee CT_TextCharacterProperties (p. 4039)zAThis type specifies a list of available anchoring types for text.FSee 20.1.10.59 "ST_TextAnchoringType (Text Anchoring Types)" (p. 3058){8Anchor the text at the bottom of the bounding rectangle.|8Anchor the text at the middle of the bounding rectangle.}Anchor the text so that it is distributed vertically. When text is horizontal, this spaces out the actual lines of text and is almost always identical in behavior to ~ (special case: if only 1 line, then anchored in middle). When text is vertical, then it distributes the letters vertically. This is different than ~i, because it always forces distribution of the words, even if there are only one or two words in a line.~Anchor the text so that it is justified vertically. When text is horizontal, this spaces out the actual lines of text and is almost always identical in behavior to } (special case: if only 1 line, then anchored at top). When text is vertical, then it justifies the letters vertically. This is different than }P because in some cases such as very little text in a line, it does not justify.5Anchor the text at the top of the bounding rectangle.Text wrapping typesDSee 20.1.10.84 "ST_TextWrappingType (Text Wrapping Types)" (p. 3084)uNo wrapping occurs on this text body. Words spill out without paying attention to the bounding rectangle boundaries.?Determines whether we wrap words within the bounding rectangle.UIf there is vertical text, determines what kind of vertical text is going to be used.DSee 20.1.10.82 "ST_TextVerticalType (Vertical Text Types)" (p. 3083)A special version of vertical text, where some fonts are displayed as if rotated by 90 degrees while some fonts (mostly East Asian) are displayed vertical.(Horizontal text. This should be default.A special version of vertical text, where some fonts are displayed as if rotated by 90 degrees while some fonts (mostly East Asian) are displayed vertical. The difference between this and the C is the text flows top down then LEFT RIGHT, instead of RIGHT LEFTDetermines if all of the text is vertical orientation (each line is 90 degrees rotated clockwise, so it goes from top to bottom; each next line is to the left from the previous one).Determines if all of the text is vertical orientation (each line is 270 degrees rotated clockwise, so it goes from bottom to top; each next line is to the right from the previous one).KDetermines if all of the text is vertical ("one letter on top of another").^Specifies that vertical WordArt should be shown from right to left rather than left to right.cText vertical overflow See 20.1.10.83 "ST_TextVertOverflowType (Text Vertical Overflow)" (p. 3083)iPay attention to top and bottom barriers. Provide no indication that there is text which is not visible.mPay attention to top and bottom barriers. Use an ellipsis to denote that there is text which is not visible.BOverflow the text and pay no attention to top and bottom barriers."A string with rich text formattingTODO: horzOverflow, lIns, tIns, rIns, bIns, numCol, spcCol, rtlCol, fromWordArt, forceAA, upright, compatLnSpc, prstTxWarp, a_EG_TextAutofit, scene3d, a_EG_Text3D, extLstSee  CT_TextBody (p. 4034)QSpecifies the rotation that is being applied to the text within the bounding box.aSpecifies whether the before and after paragraph spacing defined by the user is to be respected.HDetermines whether the text can flow out of the bounding box vertically.QDetermines if the text within the given text body should be displayed vertically.=Specifies the wrapping options to be used for this text body.@Specifies the anchoring position of the txBody within the shape.$Specifies the centering of the text box. The way it works fundamentally is to determine the smallest possible "bounds box" for the text and then to center that "bounds box" accordingly. This is different than paragraph alignment, which aligns the text within the "bounds box" for the text.2Paragraphs of text within the containing text bodyThis simple type represents an angle in 60,000ths of a degree. Positive angles are clockwise (i.e., towards the positive y axis); negative angles are counter-clockwise (i.e., towards the negative y axis).Add DrawingML namespace to nameDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~bDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~z{|}~vwxyqrstumnopjklcdefghi_`ab]^YZ[\RSTUVWXPQJKLMNOGHIDEF?DEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ NoneNone!"*Add package relationship namespace to name None0Internal helper type for parsing "numFmt" recods.See 18.8.30 "numFmt (Number Format)" (p. 1777)None!">Describes relationships according to Open Packaging ConventionTSee ECMA-376, 4th Edition Office Open XML File Formats  Open Packaging Conventions"Hjoins relative URI (actually a file path as an internal relation target)'*Add package relationship namespace to name(2Add office document relationship namespace to name !"#$%&'()*+,-./0 !"#$%&'()*+ !"#$%0/.-&,'()*+ !"#$%&'()*+,-./0 None!"o5 Paper size6A2 paper (420 mm by 594 mm)7A3 paper (297 mm by 420 mm)8!A3 extra paper (322 mm by 445 mm)9,A3 extra transverse paper (322 mm by 445 mm):&A3 transverse paper (297 mm by 420 mm);A4 paper (210 mm by 297 mm)<!A4 extra paper (236 mm by 322 mm)= A4 plus paper (210 mm by 330 mm)>!A4 small paper (210 mm by 297 mm)?&A4 transverse paper (210 mm by 297 mm)@A5 paper (148 mm by 210 mm)A!A5 extra paper (174 mm by 235 mm)B&A5 transverse paper (148 mm by 210 mm)CB4 paper (250 mm by 353 mm)DB5 paper (176 mm by 250 mm)EC paper (17 in. by 22 in.)FD paper (22 in. by 34 in.)GE paper (34 in. by 44 in.)H&Executive paper (7.25 in. by 10.5 in.)I(German legal fanfold (8.5 in. by 13 in.)J+German standard fanfold (8.5 in. by 12 in.)K*US standard fanfold (14.875 in. by 11 in.)LFolio paper (8.5 in. by 13 in.)MISO B4 (250 mm by 353 mm)N%ISO B5 extra paper (201 mm by 276 mm)O+Japanese double postcard (200 mm by 148 mm)P*JIS B5 transverse paper (182 mm by 257 mm)QLedger paper (17 in. by 11 in.)RLegal paper (8.5 in. by 14 in.)S'Legal extra paper (9.275 in. by 15 in.)T Letter paper (8.5 in. by 11 in.)U(Letter extra paper (9.275 in. by 12 in.)V3Letter extra transverse paper (9.275 in. by 12 in.)W(Letter plus paper (8.5 in. by 12.69 in.)X&Letter small paper (8.5 in. by 11 in.)Y-Letter transverse paper (8.275 in. by 11 in.)ZNote paper (8.5 in. by 11 in.)[Quarto paper (215 mm by 275 mm)\ Standard paper (9 in. by 11 in.)]!Standard paper (10 in. by 11 in.)^!Standard paper (10 in. by 14 in.)_!Standard paper (11 in. by 17 in.)`!Standard paper (15 in. by 11 in.)a$Statement paper (5.5 in. by 8.5 in.)bSuperASuperAA4 paper (227 mm by 356 mm)cSuperBSuperBA3 paper (305 mm by 487 mm)d Tabloid paper (11 in. by 17 in.)e)Tabloid extra paper (11.69 in. by 18 in.)f%6 3/4 envelope (3.625 in. by 6.5 in.)g$#9 envelope (3.875 in. by 8.875 in.)h##10 envelope (4.125 in. by 9.5 in.)i$#11 envelope (4.5 in. by 10.375 in.)j!#12 envelope (4.75 in. by 11 in.)k #14 envelope (5 in. by 11.5 in.)lB4 envelope (250 mm by 353 mm)mB5 envelope (176 mm by 250 mm)nB6 envelope (176 mm by 125 mm)oC3 envelope (324 mm by 458 mm)pC4 envelope (229 mm by 324 mm)qC5 envelope (162 mm by 229 mm)rC6 envelope (114 mm by 162 mm)sC65 envelope (114 mm by 229 mm)tDL envelope (110 mm by 220 mm)u"Invite envelope (220 mm by 220 mm)v!Italy envelope (110 mm by 230 mm)w(Monarch envelope (3.875 in. by 7.5 in.).xSpecifies printed page ordery4Order pages vertically first, then move horizontallyz4Order pages horizontally first, then move vertically{ Print orientation for this sheet Print errorsYThis enumeration specifies how to display cells with errors when printing the worksheet.Display cell errors as blankDisplay cell errors as dashes*Display cell errors as displayed on screenDisplay cell errors as #N/A Cell comments]These enumerations specify how cell comments shall be displayed for paper printing purposes.8See 18.18.5 "ST_CellComments (Cell Comments)" (p. 2441). Print cell comments as displayed&Print cell comments at end of documentDo not print cell commentsPrint black and white.4This attribute specifies how to print cell comments.Number of copies to print.Print without graphics.9Specifies how to print cell values for cells with errors.DPage number for first printed page. If no value is specified, then  automatic is assumed.#Number of vertical pages to fit on.%Number of horizontal pages to fit on.*Horizontal print resolution of the device.5Relationship Id of the devMode printer settings part.-(Explicit reference to a parent XML element.)ESee 22.8.2.1 "ST_RelationshipId (Explicit Relationship ID)" (p. 3784)Orientation of the page.Order of printed pagesAHeight of custom paper as a number followed by a unit identifier.VWhen paperHeight and paperWidth are specified, paperSize shall be ignored. Examples: "297mm", "11in".VSee 22.9.2.12 "ST_PositiveUniversalMeasure (Positive Universal Measurement)" (p. 3792) Pager sizeYWhen paperHeight, paperWidth, and paperUnits are specified, paperSize should be ignored.?Width of custom paper as a number followed by a unit identifier Examples: 21cm, 8.5inKWhen paperHeight and paperWidth are specified, paperSize shall be ignored.Print scaling.This attribute is restricted to values ranging from 10 to 400. This setting is overridden when fitToWidth and/or fitToHeight are in use.Use @ value for first page number, and do not auto number the pages.tUse the printer s defaults settings for page setup values and don't use the default values specified in the schema.Example: If dpi is not present or specified in the XML, the application must not assume 600dpi as specified in the schema as a default and instead must let the printer specify the default dpi.(Vertical print resolution of the device.See ST_Orientation , p. 3923See  ST_PrintError , p. 3923See ST_CellComments , p. 3923See  ST_PageOrder , p. 3923See  paperSize (attribute of  pageSetup ), p. 1659See  CT_PageSetup , p. 3922See  paperSize (attribute of  pageSetup ), p. 1659See  ST_PageOrder , p. 3923See ST_Orientation , p. 3923See  ST_PrintError , p. 3923See ST_CellComments , p. 3923See  CT_PageSetup , p. 392256789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~{56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~{{|}~xyz56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvw&5B6789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None None!"NSheet protection options to enforce and specify that it needs to be protectedJTODO: algorithms specified in the spec with hashes, salts and spin countsDSee 18.3.1.85 "sheetProtection (Sheet Protection Options)" (p. 1694)OSpecifies the legacy hash of the password required for editing this worksheet.fSee Part 4, 15.3.1.6 "Additional attribute for sheetProtection element (Part 1, 18.3.1.85)" (p. 229)Fthe value of this attribute dictates whether the other attributes of  should be appliedIAutoFilters should not be allowed to operate when the sheet is protectedCdeleting columns should not be allowed when the sheet is protected@deleting rows should not be allowed when the sheet is protectedCformatting cells should not be allowed when the sheet is protectedEformatting columns should not be allowed when the sheet is protectedBformatting rows should not be allowed when the sheet is protectedDinserting columns should not be allowed when the sheet is protectedGinserting hyperlinks should not be allowed when the sheet is protectedAinserting rows should not be allowed when the sheet is protectedEediting of objects should not be allowed when the sheet is protectedIPivotTables should not be allowed to operate when the sheet is protected:Scenarios should not be edited when the sheet is protectedLselection of locked cells should not be allowed when the sheet is protectedNselection of unlocked cells should not be allowed when the sheet is protected9sorting should not be allowed when the sheet is protectedCreates legacy XOR hashed password.Note: The implementation is known to work only for ASCII symbols, if you know how to encode properly others - an email or a PR will be highly apperciated See Part 4, 14.7.1 "Legacy Password Hash Algorithm" (p. 73) and Part 4, 15.2.3 "Additional attributes for workbookProtection element (Part 1, 18.2.29)" (p. 220) and Par 4, 15.3.1.6 "Additional attribute for sheetProtection element (Part 1, 18.3.1.85)" (p. 229)no sheet protection at all9protection of all sheet features which could be protected-(( None!" Reading order:See 18.8.1 "alignment (Alignment)" (p. 1754, esp. p. 1755)AIndicates the style of fill pattern being used for a cell format.:Section 18.18.55 "ST_PatternType (Pattern Type)" (p. 2472)*Vertical alignmentMSee 22.9.2.17 "ST_VerticalAlignRun (Vertical Positioning Location)" (p. 3794).Font underline property#See 18.4.13 "u (Underline)", p 17284 Font scheme;See 18.18.33 "ST_FontScheme (Font scheme Styles)" (p. 2456)5+This font is the major font for this theme.6+This font is the minor font for this theme.7This font is not a theme font.8 Font familyhSee 18.8.18 "family (Font Family)" (p. 1766) and 17.18.30 "ST_FontFamily (Font Family Value)" (p. 1388)9Family is not applicable:Proportional font with serifs; Proportional font without serifs<%Monospace font with or without serifs=;Script font designed to mimic the appearance of handwriting> Novelty font?Vertical alignment in cellsHSee 18.18.88 "ST_VerticalAlignment (Vertical Alignment Types)" (p. 2512)EHorizontal alignment in cellsKSee 18.18.40 "ST_HorizontalAlignment (Horizontal Alignment Type)" (p. 2459)NProtection propertiesContains protection properties associated with the cell. Each cell has protection properties that can be set. The cell protection properties do not take effect unless the sheet has been protected.>Section 18.8.33, "protection (Protection Properties)", p. 1793RImplied number formatsNote:o This only implements the predefined values for 18.2.30 "All Languages", other built-in format ids (with id < ) are stored in NfOtherBuiltinS  0 GeneralT 1 0U 2 0.00V 3 #,##0W  4 #,##0.00X 9 0%Y 10 0.00%Z  11 0.00E+00[ 12 # ?/?\  13 # ??/??]  14 mm-dd-yy^  15 d-mmm-yy_ 16 d-mmm`  17 mmm-yya  18 h:mm AM/PMb 19 h:mm:ss AM/PMc 20 h:mmd  21 h:mm:sse 22 m/d/yy h:mmf 37 #,##0 ;(#,##0)g 38 #,##0 ;[Red](#,##0)h 39 #,##0.00;(#,##0.00)i 40 #,##0.00;[Red](#,##0.00)j 45 mm:ssk  46 [h]:mm:ssl  47 mmss.0m  48 ##0.0E+0n 49 @o5other (non local-neutral?) built-in format (id < 164)puThis element specifies number format properties which indicate how to format and render the numeric value of a cell.2Section 18.2.30 "numFmt (Number Format)" (p. 1777)tEA single dxf record, expressing incremental formatting to be applied.-Section 18.8.14, "dxf (Formatting)" (p. 1765){PThis element defines the properties for one of the fonts used in this workbook.'Section 18.2.22 "font (Font)" (p. 1769)},Displays characters in bold face font style.~9This element defines the font character set of this font.7This field is used in font creation and selection if a font of the given facename is not available on the system. Although it is not required to have around when resolving font facename, the information can be stored for when needed to help resolve which font face to use of all available fonts on a system.Charset represents the basic set of characters associated with a font (that it can display), and roughly corresponds to the ANSI codepage (8-bit or DBCS) of that character set used by a given language. Given more common use of Unicode where many fonts support more than one of the traditional charset categories, and the use of font linking, using charset to resolve font name is less and less common, but still can be useful.,These are operating-system-dependent values.FSection 18.4.1 "charset (Character Set)" provides some example values.ColorMacintosh compatibility setting. Represents special word/character rendering on Macintosh, when this flag is set. The effect is to condense the text (squeeze it together). SpreadsheetML applications are not required to render according to this flag.=This element specifies a compatibility setting used for previous spreadsheet applications, resulting in special word/character rendering on those legacy applications, when this flag is set. The effect extends or stretches out the text. SpreadsheetML applications are not required to render according to this flag.The font family this font belongs to. A font family is a set of fonts having common stroke width and serif characteristics. This is system level font information. The font name overrides when there are conflicting values.Displays characters in italic font style. The italic style is defined by the font at a system level and is not specified by ECMA-376.2This element specifies the face name of this font.A string representing the name of the font. If the font doesn't exist (because it isn't installed on the system), or the charset not supported by that font, then another font should be substituted.AThe string length for this attribute shall be 0 to 31 characters.tThis element displays only the inner and outer borders of each character. This is very similar to Bold in behavior.Defines the font scheme, if any, to which this font belongs. When a font definition is part of a theme definition, then the font is categorized as either a major or minor font scheme component. When a new theme is chosen, every font that is part of a theme definition is updated to use the new major or minor font definition for that theme. Usually major fonts are used for styles like headings, and minor fonts are used for body and paragraph text.Macintosh compatibility setting. Represents special word/character rendering on Macintosh, when this flag is set. The effect is to render a shadow behind, beneath and to the right of the text. SpreadsheetML applications are not required to render according to this flag.SThis element draws a strikethrough line through the horizontal middle of the text.[This element represents the point size (1/72 of an inch) of the Latin and East Asian text.7This element represents the underline formatting style.This element adjusts the vertical position of the text relative to the text's default appearance for this run. It is used to get  superscript or  subscriptU texts, and shall reduce the font size (if a smaller size is available) accordingly.This element is used to specify cell fill information for pattern and solid color cell fills. For solid cell fills (no pattern), fgColor is used. For cell fills with patterns specified, then the cell fill color is specified by the bgColor element.1Section 18.8.32 "patternFill (Pattern)" (p. 1793)'This element specifies fill formatting.^TODO: Gradient fills (18.8.4) are currently unsupported. If we add them, then the spec says (CT_FillO, p. 3935), _either_ a gradient _or_ a solid fill pattern should be specified.(Section 18.8.20, "fill (Fill)" (p. 1768)>One of the colors associated with the data bar or color scale.The I attribute (used for backwards compatibility only) is not modelled here.0See 18.3.1.15 "color (Data Bar Color)" (p. 1608)NA boolean value indicating the color is automatic and system color dependent.1Standard Alpha Red Green Blue color value (ARGB).This simple type's contents have a length of exactly 8 hexadecimal digit(s); see "18.18.86 ST_UnsignedIntHex (Hex Unsigned Integer)" (p. 2511).A zero-based index into the  clrScheme2 collection (20.1.6.2), referencing a particular  sysClr or  srgbClr$ value expressed in the Theme part..Specifies the tint value applied to the color.lIf tint is supplied, then it is applied to the RGB value of the color to determine the final color applied.The tint value is stored as a double from -1.0 .. 1.0, where -1.0 means 100% darken and 1.0 means 100% lighten. Also, 0.0 means no change.Border style See  CT_BorderPr (p. 3934)vExpresses a single set of cell border formats (left, right, top, bottom, diagonal). Color is optional. When missing,  automatic is implied.&See 18.8.4 "border (Border)" (p. 1759)A boolean value indicating if the cell's diagonal border includes a diagonal line, starting at the top left corner of the cell and moving down to the bottom right corner of the cell.A boolean value indicating if the cell's diagonal border includes a diagonal line, starting at the bottom left corner of the cell and moving up to the top right corner of the cell.~A boolean value indicating if left, right, top, and bottom borders should be applied only to outside borders of a cell range. Bottom borderDiagonalTrailing edge border See also BHorizontal inner borders Left border(NOTE: The spec does not formally list a left. border element, but the examples do mention left* and the scheme contains it too. See also C. Right border(NOTE: The spec does not formally list a right. border element, but the examples do mention right* and the scheme contains it too. See also >.Leading edge border See also @ Top borderVertical inner border Alignment,See 18.8.1 "alignment (Alignment)" (p. 1754)4Specifies the type of horizontal alignment in cells.An integer value, where an increment of 1 represents 3 spaces. Indicates the number of spaces (of the normal style font) of indentation for text in a cell.A boolean value indicating if the cells justified or distributed alignment should be used on the last line of text. (This is typical for East Asian alignments but not typical in other contexts.)An integer value indicating whether the reading order (bidirectionality) of the cell is leftto- right, right-to-left, or context dependent.An integer value (used only in a dxf element) to indicate the additional number of spaces of indentation to adjust for text in a cell.A boolean value indicating if the displayed text in the cell should be shrunk to fit the cell width. Not applicable when a cell contains multiple lines of text.Text rotation in cells. Expressed in degrees. Values range from 0 to 180. The first letter of the text is considered the center-point of the arc.Vertical alignment in cells.YA boolean value indicating if the text in a cell should be line-wrapped within the cell.Cell formatting TODO: The extLst field is currently unsupported.'Section 18.8.45 "xf (Format)" (p. 1800)eA boolean value indicating whether the alignment formatting specified for this xf should be applied.bA boolean value indicating whether the border formatting specified for this xf should be applied.`A boolean value indicating whether the fill formatting specified for this xf should be applied.`A boolean value indicating whether the font formatting specified for this xf should be applied.bA boolean value indicating whether the number formatting specified for this xf should be applied.fA boolean value indicating whether the protection formatting specified for this xf should be applied.?Zero-based index of the border record used by this cell format.(18.18.2, p. 2437).=Zero-based index of the fill record used by this cell format.(18.18.30, p. 2455)=Zero-based index of the font record used by this cell format.7An integer that represents a zero based index into the 4 collection in the style sheet (18.18.32, p. 2456).AId of the number format (numFmt) record used by this cell format.This simple type defines the identifier to a style sheet number format entry in CT_NumFmts. Number formats are written to the styles part (18.18.47, p. 2468). See also 18.8.31 (p. 1784) for more information on number formats.^A boolean value indicating whether the cell rendering includes a pivot table dropdown button.A boolean value indicating whether the text string in a cell should be prefixed by a single quote mark (e.g., 'text). In these cases, the quote is not stored in the Shared Strings Part.For xf records contained in cellXfs this is the zero-based index of an xf record contained in cellStyleXfs corresponding to the cell style applied to the cell.5Not present for xf records contained in cellStyleXfs.Used by xf records and cellStyle records to reference xf records defined in the cellStyleXfs collection. (18.18.10, p. 2442) TODO: the cellStyleXfs field of a style sheet not currently implemented.Formatting information pertaining to text alignment in cells. There are a variety of choices for how text is aligned both horizontally and vertically, as well as indentation settings, and so on.Contains protection properties associated with the cell. Each cell has protection properties that can be set. The cell protection properties do not take effect unless the sheet has been protected.StyleSheet for an XML document;Relevant parts of the EMCA standard (4th edition, part 1,  Ehttp://www.ecma-international.org/publications/standards/Ecma-376.htmc), page numbers refer to the page in the PDF rather than the page number as printed on the page): Chapter 12,  SpreadsheetMLA (p. 74) In particular Section 12.3.20, "Styles Part" (p. 104)XChapter 18, "SpreadsheetML Reference Material" (p. 1528) In particular Section 18.8, Styles (p. 1754) and Section 18.8.39 "styleSheet" (Style Sheet)" (p. 1796); it is the latter section that specifies the top-level style sheet format.#TODO: the following child elements: cellStyles cellStyleXfscolorsextLst tableStyles9NOTE: You will probably want to base your style sheet on a . See also:$ to translate a  to Styles#% for a higher level interface.& to translate a raw  into StyleswThis element contains borders formatting information, specifying all border definitions for all cells in the workbook.-Section 18.8.5, "borders (Borders)" (p. 1760) Cell formatsThis element contains the master formatting records (xf) which define the formatting applied to cells in this workbook. These records are the starting point for determining the formatting for a cell. Cells in the Sheet Part reference the xf records by zero-based index.3Section 18.8.10, "cellXfs (Cell Formats)" (p. 1764)This element defines the cell fills portion of the Styles part, consisting of a sequence of fill records. A cell fill consists of a background color, foreground color, and pattern to be applied across the cell.*Section 18.8.21, "fills (Fills)" (p. 1768)=This element contains all font definitions for this workbook.)Section 18.8.23 "fonts (Fonts)" (p. 1769)Differential formatting*This element contains the master differential formatting records (dxf's) which define formatting for all non-cell formatting in this workbook. Whereas xf records fully specify a particular aspect of formatting (e.g., cell borders) by referencing those formatting definitions elsewhere in the Styles part, dxf records specify incremental (or differential) aspects of formatting directly inline within the dxf element. The dxf formatting is to be applied on top of or in addition to any formatting already present on the object using the dxf record.+Section 18.8.15, "dxfs (Formats)" (p. 1765)Number formatsGThis element contains custom number formats defined in this style sheet5Section 18.8.31, "numFmts (Number Formats)" (p. 1784)Basic number format with predefined number of decimals as format code of number format in xlsx should be less than 255 characters number of decimals shouldn't be more than 253DBasic number format with predefined number of decimals. Works like  with the only difference that extra zeroes are displayed when number of digits after the point is less than the number of digits specified in the formataMinimal style sheet~Excel expects some minimal definitions in the stylesheet; you probably want to define your own stylesheets based on this one.2This more-or-less follows the recommendations at  ]http://stackoverflow.com/questions/26050708/minimal-style-sheet-for-excel-open-xml-with-dates:, but with some additions based on experimental evidence.bSee CT_CellProtection , p. 4484fSee CT_CellAlignment , p. 4482gSee CT_Dxf , p. 3937hSee CT_Xf , p. 4486kSee  CT_Border , p. 4483mSee CT_PatternFill , p. 4484nSee CT_Fill , p. 4484rSee CT_Color , p. 4484s4See 18.18.94 "ST_FontFamily (Font Family)" (p. 2517)tSee CT_Font , p. 4489uSee  CT_Stylesheet , p. 4482See CT_CellProtection , p. 4484See CT_Font , p. 4489See CT_PatternFill , p. 4484See CT_Fill , p. 4484See CT_Color , p. 4484See  CT_BorderPr , p. 4483See  CT_Border , p. 4483See CT_CellAlignment , p. 4482See CT_Dxf , p. 3937See CT_Xf , p. 4486See  CT_Stylesheet , p. 4482Q      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`aatuvwxyz{|}~pqrRSTUVWXYZ[\]^_`abcdefghijklmnosNOPQEFGHIJKLM?@ABCD89:;<=>4567./0123*+,- !"#$%&'()      !"#$%&()+'*,-./0123456789<=A:;>?CDE@BFGIHJKLMNOPQRSTUVWXYZ\[]^_`      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None!"Run properties0Section 18.4.7, "rPr (Run Properties)" (p. 1725),Displays characters in bold face font style.$Section 18.8.2, "b (Bold)" (p. 1757)9This element defines the font character set of this font.3Section 18.4.1, "charset (Character Set)" (p. 1721)>One of the colors associated with the data bar or color scale.5Section 18.3.1.15, "color (Data Bar Color)" (p. 1608)Macintosh compatibility setting. Represents special word/character rendering on Macintosh, when this flag is set. The effect is to condense the text (squeeze it together).0Section 18.8.12, "condense (Condense)" (p. 1764)This element specifies a compatibility setting used for previous spreadsheet applications, resulting in special word/character rendering on those legacy applications, when this flag is set. The effect extends or stretches out the text.,Section 18.8.17, "extend (Extend)" (p. 1766)The font family this font belongs to. A font family is a set of fonts having common stroke width and serif characteristics. This is system level font information. The font name overrides when there are conflicting values.1Section 18.8.18, "family (Font Family)" (p. 1766)Displays characters in italic font style. The italic style is defined by the font at a system level and is not specified by ECMA-376.'Section 18.8.26, "i (Italic)" (p. 1773)tThis element displays only the inner and outer borders of each character. This is very similar to Bold in behavior.-Section 18.4.2, "outline (Outline)" (p. 1722)YThis element is a string representing the name of the font assigned to display this run.(Section 18.4.5, "rFont (Font)" (p. 1724)Defines the font scheme, if any, to which this font belongs. When a font definition is part of a theme definition, then the font is categorized as either a major or minor font scheme component. When a new theme is chosen, every font that is part of a theme definition is updated to use the new major or minor font definition for that theme. Usually major fonts are used for styles like headings, and minor fonts are used for body and paragraph text.,Section 18.8.35, "scheme (Scheme)" (p. 1794)Macintosh compatibility setting. Represents special word/character rendering on Macintosh, when this flag is set. The effect is to render a shadow behind, beneath and to the right of the text.,Section 18.8.36, "shadow (Shadow)" (p. 1795)SThis element draws a strikethrough line through the horizontal middle of the text.4Section 18.4.10, "strike (Strike Through)" (p. 1726)[This element represents the point size (1/72 of an inch) of the Latin and East Asian text.+Section 18.4.11, "sz (Font Size)" (p. 1727)7This element represents the underline formatting style.*Section 18.4.13, "u (Underline)" (p. 1728)This element adjusts the vertical position of the text relative to the text's default appearance for this run. It is used to get  superscript or  subscriptU texts, and shall reduce the font size (if a smaller size is available) accordingly.;Section 18.4.14, "vertAlign (Vertical Alignment)" (p. 1728) Rich Text RunThis element represents a run of rich text. A rich text run is a region of text that share a common set of properties, such as formatting properties.-Section 18.4.4, "r (Rich Text Run)" (p. 1724)\This element represents a set of properties to apply to the contents of this rich text run.CThis element represents the text content shown as part of a string.NOTE: [ elements with an empty text field will result in an error when opening the file in Excel.%Section 18.4.12, "t (Text)" (p. 1727)Apply properties to a If the g specifies its own properties, then these overrule the properties specified here. For example, adding bold to a  which is already italic will make the  both  bold and Qitalic@ but adding it to one that that is explicitly _not_ bold will leave the  unchanged.The  instance for 4 is biased: later properties override earlier ones.See  CT_RPrElt , p. 3903See CT_RElt , p. 3903See  CT_RPrElt , p. 3903See CT_RElt , p. 3903.''NoneCell values include text, numbers and booleans, standard includes date format also but actually dates are represented by numbers with a date format assigned to a cell containing it A formula-See 18.18.35 "ST_Formula (Formula)" (p. 2457)MCommon type containing either simple string or rich formatted text. Used in si, comment and is elementsE.g. si spec says: "If the string is just a simple string with formatting applied at the cell level, then the String Item (si) should contain a single text element used to express the string. However, if the string in the cell is more complex - i.e., has formatting applied at the character level - then the string item shall consist of multiple rich text runs which collectively are used to express the string.". So we have either a single Text field, or else a list of  RichTextRuns, each of which is some Text with layout properties."TODO: Currently we do not support  phoneticPr, (Phonetic Properties, 18.4.3, p. 1723) or rPh! (Phonetic Run, 18.4.6, p. 1725).,Section 18.4.8, "si (String Item)" (p. 1725)See CT_Rst , p. 3903A sequence of cell references5See 18.18.76 "ST_Sqref (Reference Sequence)" (p.2488)Excel range (e.g. D13:H14), actually store as as  in xlsx)Excel cell or cell range reference (e.g. E3) See 18.18.62 ST_Ref (p. 2482)Kconvert column number (starting from 1) to its textual form (e.g. 3 -> "C") reverse to Render position in  (row, col) format to an Excel reference. mkCellRef (2, 4) == "D2" reverse to  mkCellRef reverse to  mkCellRefJ expecting valid reference and failig with a standard error message like "Bad cell reference XXX" Render range  mkRange (2, 4) (6, 8) == "D2:H6" reverse to See  ST_Formula , p. 3873See CT_Rst , p. 3903See  ST_Formula , p. 3873See CT_Rst , p. 3903"None!"AutoFilter temporarily hides rows based on a filter criteria, which is applied column by column to a table of datain the worksheet.TODO: sortState, extList=Section 18.3.1.2 "autoFilter (AutoFilter Settings)" (p. 1596))Show results which are equal to criteria.-Show results which are greater than criteria.9Show results which are greater than or equal to criteria.*Show results which are less than criteria.6Show results which are less than or equal to criteria.-Show results which are not equal to criteria..The filterColumn collection identifies a particular column in the AutoFilter range and specifies filter information that has been applied to this column. If a column in the AutoFilter range has no criteria specified, then there is no corresponding filterColumn collection expressed for that column.=Section 18.3.2.7 "filterColumn (AutoFilter Column)" (p. 1717)                    None User comment for a cell=TODO: the following child elements: guid, shapeId, commentPr,Section 18.7.3 "comment (Comment)" (p. 1749)"Rcell comment text, maybe formatted Section 18.7.7 "text (Comment Text)" (p. 1754)#comment author !"#$ !"#$ !"#$ !"#$None!"('JThis collection represents a description of a conditional formatting rule.>See 18.3.1.10 "cfRule (Conditional Formatting Rule)" (p. 1602)*This is an index to a dxf element in the Styles Part indicating which cell formatting to apply when the conditional formatting rule criteria is met.+The priority of this conditional formatting rule. This value is used to determine which format should be evaluated and rendered. Lower numeric values are higher priority than higher numeric values, where 1 is the highest priority.,vIf this flag is set, no rules with lower priority shall be applied over this rule, when this rule evaluates to true.-9Conditions which could be used for conditional formatting<See 18.18.12 "ST_CfType (Conditional Format Type)" (p. 2443).This conditional formatting rule highlights cells in the range that begin with the given text. Equivalent to using the LEFT() sheet function and comparing values./jThis conditional formatting rule compares a cell value to a formula calculated result, using an operator.0This conditional formatting rule highlights cells that are completely blank. Equivalent of using LEN(TRIM()). This means that if the cell contains only characters that TRIM() would remove, then it is considered blank. An empty cell is also considered blank.1This conditional formatting rule highlights cells with formula errors. Equivalent to using ISERROR() sheet function to determine if there is a formula error.2This conditional formatting rule highlights cells containing given text. Equivalent to using the SEARCH() sheet function to determine whether the cell contains the text.3This conditional formatting rule highlights cells without formula errors. Equivalent to using ISERROR() sheet function to determine if there is a formula error.4This conditional formatting rule highlights cells that are not blank. Equivalent of using LEN(TRIM()). This means that if the cell contains only characters that TRIM() would remove, then it is considered blank. An empty cell is also considered blank.5This conditional formatting rule highlights cells that do not contain given text. Equivalent to using the SEARCH() sheet function.6This conditional formatting rule highlights cells ending with given text. Equivalent to using the RIGHT() sheet function and comparing values.7|This conditional formatting rule contains a formula to evaluate. When the formula result is true, the cell is highlighted.8_This conditional formatting rule highlights cells containing dates in the specified time period. The underlying value of the cell is evaluated, therefore the cell does not need to be formatted as a date to be evaluated. For example, with a cell containing the value 38913 the conditional format shall be applied if the rule requires a value of 7142006.9Used in a "contains dates" conditional formatting rule. These are dynamic time periods, which change based on the date the conditional formatting is refreshed / applied.:See 18.18.82 "ST_TimePeriod (Time Period Types)" (p. 2508):A date in the last seven days.;+A date occuring in the last calendar month.<A date occuring last week.=+A date occuring in the next calendar month.>A date occuring next week.?'A date occuring in this calendar month.@A date occuring this week.A Today's date.BTomorrow's date.CYesterday's date.DLogical operation used in / conditionYSee 18.18.15 "ST_ConditionalFormattingOperator (Conditional Format Operators)" (p. 2446)E'Begins with' operatorFBetween operatorGContains operatorH'Ends with' operatorI'Equal to' operatorJ'Greater than' operatorK#'Greater than or equal to' operatorL'Less than' operatorM 'Less than or equal to' operatorN'Not between' operatorO'Does not contain' operatorP'Not equal to' operator9'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP]^_`abcdef0'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP]^_`ab0]'()*+,-./012345678DEFGHIJKLMNOP9:;<=>?@ABC^_`ab'()*+,- ./0123456789 :;<=>?@ABCD EFGHIJKLMNOP]^_`abcdefNone!"Between operator"Equal to" operator"Greater than" operator#"Greater than or equal to" operator"Less than" operator "Less than or equal to" operator"Not between" operator"Not equal to" operator8ghijklmnopqrstuvwxyz{|}~2ghijklmnopqrstuvwxyz{|}~8wxyz{|}~stuvghijklmnopqrg hijklmnopqrstuvwxyz{|}~None!"0Specifies the possible positions for tick marks.6(Cross) Specifies the tick marks shall cross the axis.@(Inside) Specifies the tick marks shall be inside the plot area..(None) Specifies there shall be no tick marks.B(Outside) Specifies the tick marks shall be outside the plot area.FSettings for the data labels for an entire series or the entire chartTODO: numFmt, spPr, txPr, dLblPos, showBubbleSize, separator, showLeaderLines, leaderLines See 21.2.2.49 "dLbls (Data Labels)" (p. 3384)5integer between 2 and 72, specifying a size in pointsA series on a line chart*TODO: dPt, trendline, errBars, cat, extLstSee  CT_LineSer (p. 4064)-currently only reference formula is supported+Specifies common series options TODO: spPrSee  EG_SerShared (p. 4063)mspecifies text for a series name, without rich text formatting currently only reference formula is supported"Possible groupings for a bar chart0See 21.2.3.17 "ST_Grouping (Grouping)" (p. 3446){(100% Stacked) Specifies that the chart series are drawn next to each other along the value axis and scaled to total 100%.Z(Stacked) Specifies that the chart series are drawn next to each other on the value axis.H(Standard) Specifies that the chart series are drawn on the value axis.Specific Chart TODO: areaChart, area3DChart, line3DChart, stockChart, radarChart, scatterChart, pieChart, pie3DChart, doughnutChart, barChart, bar3DChart, ofPieChart, surfaceChart, surface3DChart, bubbleChart(specifies that the marker shall be shownbspecifies the line connecting the points on the chart shall be smoothed using Catmull-Rom splinesPb (Bottom) Specifies that the legend shall be drawn at the bottom of the chart.Ll (Left) Specifies that the legend shall be drawn at the left of the chart.Nr (Right) Specifies that the legend shall be drawn at the right of the chart.Jt (Top) Specifies that the legend shall be drawn at the top of the chart.Wtr (Top Right) Specifies that the legend shall be drawn at the top right of the chart.?This simple type specifies the possible ways to display blanks.=See 21.2.3.10 "ST_DispBlanksAs (Display Blanks As)" (p. 3444)3Specifies that blank values shall be left as a gap.9Specifies that blank values shall be spanned with a line.5Specifies that blank values shall be treated as zero. Chart title)TODO: layout, overlay, spPr, txPr, extLstMain Chart holder, combines TODO: title, autoTitleDeleted, pivotFmts view3D, floor, sideWall, backWall, showDLblsOverMax, extLstAdd chart namespace to namee   Le   *    None!",/9;DLR9RSpecifies a unique identifier for the current DrawingML object within the current6TODO: make ids internal and consistent by construction:pSpecifies the name of the object. Typically, this is used to store the original file name of a picture object.;Alternative Text for ObjectGsThis element is used to set certain properties related to a drawing element on the client spreadsheet application.1see 20.5.2.3 "clientData (Client Data)" (p. 3156)IgThis attribute indicates whether to disable selection on drawing elements when the sheet is protected.JTThis attribute indicates whether to print drawing elements when printing the sheet.k2information about image file as a par of a drawingmFimage filename, images are assumed to be stored under path "xl/media/"nfimage content type, ECMA-376 advises to use "image/png" or "image/jpeg" if interoperability is wantedoimage file contentsq/basic function to create picture drawing objectNote: specification says that drawing element ids need to be unique within 1 document, otherwise /...document shall be considered non-conformant/.rhelper to retrive information about all picture files in particular drawing alongside with their anchorings (i.e. sizes and positions)scsimple drawing object anchoring using one cell as a top lelft corner and dimensions of that object+Add Spreadsheet DrawingML namespace to name}&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs<x+y coordinates of a cell used as top left anchoring corner&size of drawing object to be anchorede&'()*+,.-/0213456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs}klmnoefghijpabcdVWXYZ[\]^_`KLMNOPQRSTUqrGHIJDEFABC>?@789:;<=3456012+,-./s()*'&C&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK LMNOPQRSTUV WXYZ[\]^_`abcdefghijklmnopqrsNoneInternal helper type for parsing "conditionalFormatting recods TODO: pivot, extList Implementing those will need this implementation to be changedHSee 18.3.1.18 "conditionalFormatting (Conditional Formatting)" (p. 1610)None!"Fhelper to render comment baloons vml file, currently uses fixed shape   None8Internal helper type for parsing data validation records?See 18.3.1.32 "dataValidation (Data Validation)" (p. 1614/1624)None!" ZData consolidation functions specified by the user and used to consolidate ranges of dataTSee 18.18.17 "ST_DataConsolidateFunction (Data Consolidation Functions)" (p. 2447)The average of the values.mThe number of data values. The Count consolidation function works the same as the COUNTA worksheet function.The number of data values that are numbers. The Count Nums consolidation function works the same as the COUNT worksheet function.The largest value.The smallest value.The product of the values.nAn estimate of the standard deviation of a population, where the sample is a subset of the entire population.bThe standard deviation of a population, where the population is all of the data to be summarized.The sum of the values.dAn estimate of the variance of a population, where the sample is a subset of the entire population.XThe variance of a population, where the population is all of the data to be summarized.-))  None!"None!":State of the sheet's pane.6Section 18.18.53 "ST_PaneState (Pane State)" (p. 2711)Panes are frozen, but were not split being frozen. In this state, when the panes are unfrozen again, a single pane results, with no split. In this state, the split bars are not adjustable.Panes are frozen and were split before being frozen. In this state, when the panes are unfrozen again, the split remains, but is adjustable.[Panes are split, but not frozen. In this state, the split bars are adjustable by the user. Pane type1Section 18.18.52 "ST_Pane (Pane Types)" (p. 2710)GBottom left pane, when both vertical and horizontal splits are applied.This value is also used when only a horizontal split has been applied, dividing the pane into upper and lower regions. In that case, this value specifies the bottom pane.DTop left pane, when both vertical and horizontal splits are applied.This value is also used when only a horizontal split has been applied, dividing the pane into upper and lower regions. In that case, this value specifies the top pane.This value is also used when only a vertical split has been applied, dividing the pane into right and left regions. In that case, this value specifies the left paneETop right pane, when both vertical and horizontal splits are applied.This value is also used when only a vertical split has been applied, dividing the pane into right and left regions. In that case, this value specifies the right pane. View setting of the sheet?Section 18.18.69 "ST_SheetViewType (Sheet View Type)" (p. 2726)! Normal view"Page break preview#Page layout view$Worksheet view pane.Section 18.3.1.66 "pane (View Pane)" (p. 1843)&The pane that is active.'bIndicates whether the pane has horizontal / vertical splits, and whether those splits are frozen.(]Location of the top left visible cell in the bottom right pane (when in Left-To-Right mode).)Horizontal position of the split, in 1/20th of a point; 0 (zero) if none. If the pane is frozen, this value indicates the number of columns visible in the top pane.*Vertical position of the split, in 1/20th of a point; 0 (zero) if none. If the pane is frozen, this value indicates the number of rows visible in the left pane.+Worksheet view selection.3Section 18.3.1.78 "selection (Selection)" (p. 1864)-Location of the active cell.0-based index of the range reference (in the array of references listed in sqref) containing the active cell. Only used when the selection in sqref is not contiguous. Therefore, this value needs to be aware of the order in which the range references are written in sqref.<When this value is out of range then activeCell can be used./)The pane to which this selection belongs.0<Range of the selection. Can be non-contiguous set of ranges.1Worksheet viewA single sheet view definition. When more than one sheet view is defined in the file, it means that when opening the workbook, each sheet view corresponds to a separate window within the spreadsheet application, where each window is showing the particular sheet containing the same workbookViewId value, the last sheetView definition is loaded, and the others are discarded. When multiple windows are viewing the same sheet, multiple sheetView elements (with corresponding workbookView entries) are saved. TODO: The pivotSelection and extLst child elements are unsupported.<See Section 18.3.1.87 "sheetView (Worksheet View)" (p. 1880)3Index to the color value for row/column text headings and gridlines. This is an 'index color value' (ICV) rather than rgb value.4Flag indicating that the consuming application should use the default grid lines color (system dependent). Overrides any color specified in colorId.5Flag indicating whether the sheet is in 'right to left' display mode. When in this mode, Column A is on the far right, Column B ;is one column left of Column A, and so on. Also, information in cells is displayed in the Right to Left format.6;Flag indicating whether this sheet should display formulas.7<Flag indicating whether this sheet should display gridlines.8Flag indicating whether the sheet has outline symbols visible. This flag shall always override SheetPr element's outlinePr child element whose attribute is named showOutlineSymbols when there is a conflict.9IFlag indicating whether the sheet should display row and column headings.:#Show the ruler in Page Layout View.;Flag indicating whether page layout view shall display margins. False means do not display left, right, top (header), and bottom (footer) margins (even when there is data in the header or footer).<Flag indicating whether the window should show 0 (zero) in cells containing zero value. When false, cells with zero value appear blank instead of showing the number zero.=Flag indicating whether this sheet is selected. When only 1 sheet is selected and active, this value should be in synch with the activeTab value. In case of a conflict, the Start Part setting wins and sets the active sheet tab.QMultiple sheets can be selected, but only one sheet shall be active at one time.>Location of the top left visible cell Location of the top left visible cell in the bottom right pane (when in Left-to-Right mode).?Indicates the view type.@Flag indicating whether the panes in the window are locked due to workbook protection. This is an option when the workbook structure is protected.AhZero-based index of this workbook view, pointing to a workbookView element in the bookViews collection.!NOTE: This attribute is required.BWindow zoom magnification for current view representing percent values. This attribute is restricted to values ranging from 10 to 400. Horizontal & Vertical scale together.CZoom magnification to use when in normal view, representing percent values. This attribute is restricted to values ranging from 10 to 400. Horizontal & Vertical scale together.DZoom magnification to use when in page layout view, representing percent values. This attribute is restricted to values ranging from 10 to 400. Horizontal & Vertical scale together.EZoom magnification to use when in page break preview, representing percent values. This attribute is restricted to values ranging from 10 to 400. Horizontal & Vertical scale together.FWorksheet view paneGWorksheet view selection#Minimum of 0, maximum of 4 elementsxSee  ST_PaneState , p. 3929ySee ST_Pane , p. 3914zSee ST_SheetViewType , p. 3913{See  CT_Selection , p. 3914|See CT_Pane , p. 3913}See  CT_SheetView , p. 3913~See  ST_PaneState , p. 3929See ST_Pane , p. 3914See ST_SheetViewType , p. 3913See CT_Pane , p. 3913See  CT_Selection , p. 3914See  CT_SheetView , p. 3913 NOTE: The  instance for 1 sets the required attribute A to 0.^ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~O !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGZ[\]^_`abcdefghijklmnopqrstuvwO123456789:;<=>?@ABCDEFG+,-./0$%&'()* !"#Z[]_`abcdefghijklmn\^opqrstuvw3 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None!" None!"Single table columnTODO: styling information7Section 18.5.1.3 "tableColumn (Table Column)" (p. 1735)A string representing the unique caption of the table column. This is what shall be displayed in the header row in the UI, and is referenced through functions. This name shall be unique per table.Tables are ranges of data in the worksheet that have special behavior applied which allow users to better sort, analyze, format, manage, add, and delete data. Tables and table columns can also be referenced through formulas by the spreadsheet application using friendly names, making formula calculations that use tables much easier to understand and maintain. Tables provide a natural way for working with large sets of tabular data. NOTE: as headerRowCountp property isn't yet supported it's supposed that it's library user liability to guarantee that the 1st row of / range contains cells with names specified in nSection 18.5 "Tables" (p. 1728) Section 18.5.1 "Tables" (p. 1729) Section 18.5.1.2 "table (Table)" (p. 1730)kA string representing the name of the table. This is the name that shall be used in formula references, and displayed in the UI to the spreadsheet user. This name shall not have any spaces in it, and it shall be unique amongst all other displayNames and definedNames in the workbook. The character lengths and restrictions are the same as for definedNames .CA string representing the name of the table that is used to reference the table programmatically through the spreadsheet applications object model. This string shall be unique per table per sheet. It has the same length and character restrictions as for displayName. By default this should be the same as the table's  . This name should also be kept in synch with the displayName when the displayName is updated in the UI by the spreadsheet user.^The range on the relevant sheet that the table occupies expressed using A1 style referencing.Ucolumns of this table, specification requires any table to include at least 1 column   None-Add doc props variant types namespace to name   None!"SCurrently cell details include only cell values and style ids (e.g. formulas from <f> and inline strings from <is> subelements are ignored)Formula for the cell.7TODO: array. dataTable and shared formula types support%See 18.3.1.40 "f (Formula)" (p. 1636)6Specifies that this formula assigns a value to a name.`Indicates that this formula needs to be recalculated the next time calculation is performed. [ExampleT: This is always set on volatile functions, like =RAND(), and circular references.  end example]Xlsx worksheet column widths)custom row properties (height, style) map"data mapped by (row, column) pairsSpreadsheetML Drawinglist of cell merges(Column range (from cwMin to cwMax) widthFirst column affected by this  ColumnWidth record.Last column affected by this  ColumnWidth record.Column width measured as the number of characters of the maximum digit width of the numbers 0, 1, 2, ..., 9 as rendered in the normal style's font.XSee longer description in Section 18.3.1.13 "col (Column Width & Formatting)" (p. 1605)Default style for the affected column(s). Affects cells not yet allocated in the column(s). In other words, this style applies to new columns.Map containing cell values which are indexed by row and column if you need to use more traditional (x,y) indexing please you could use corresponding accessors from ''( Defined namesNEach defined name consists of a name, an optional local sheet ID, and a value.This element defines the collection of defined names for this workbook. Defined names are descriptive names to represent cells, ranges of cells, formulas, or constant values. Defined names can be used to represent a range on any worksheet.LExcel also defines a number of reserved names with a special interpretation:_xlnm.Print_Area8 specifies the workbook's print area. Example value: SheetName!$A:$A,SheetName!$1:$4_xlnm.Print_TitlesP specifies the row(s) or column(s) to repeat at the top of each printed page._xlnm.Sheet_Title:refers to a sheet title.gand others. See Section 18.2.6, "definedNames (Defined Names)" (p. 1728) of the spec (second edition).GNOTE: Right now this is only a minimal implementation of defined names.KStructured representation of Xlsx file (currently a subset of its contents)Render $This is used to render a structured  into a raw XML  document. Actually  replacing  with & would mean we would need to write a parser for  as well (and would moreover require that we support the full style sheet specification, which is still quite a bit of work).Parse This is used to parse raw  into structured t currently not all of the style sheet specification is supported so parser (and the data model) is to be completed~converts cells mapped by (row, column) into rows which contain row index and cells as pairs of column indices and cell values reverse to S  nDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a      !"#$'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP]^_`abghijklmnopqrstuvwxyz{|}~&'()*+,.-/0213456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGZ[\]^_`abcdefghijklmnopqrstuvw  f  ,  None!"Shared string tablelA workbook can contain thousands of cells containing string (non-numeric) data. Furthermore this data is very likely to be repeated across many rows or columns. The goal of implementing a single string table that is shared across the workbook is to improve performance in opening and saving the file by only reading and writing the repetitive information once.;Relevant parts of the EMCA standard (2nd edition, part 1,  Ehttp://www.ecma-international.org/publications/standards/Ecma-376.htmc), page numbers refer to the page in the PDF rather than the page number as printed on the page):wSection 18.4, "Shared String Table" (p. 1712) in particular subsection 18.4.9, "sst (Shared String Table)" (p. 1726) TODO: The extLst( child element is currently unsupported.Construct the SharedStringsTable from an existing document Internal generalization used by  and !See CT_Sst , p. 3902The optional attributes count and  uniqCount% are being ignored at least currently"See CT_Sst , p. 3902. TODO: The count and  uniqCount& attributes are currently unsupported.  !"#    !"#None.'Add custom properties namespace to name0FMTID_UserDefinedProperties'()*+,-./01234 '()*+,-./0)*+,4-./32'(10 '()*+,-./01234 None!"L7Writes  to raw data (lazy bytestring)fully qualified XML name6fully qualified XML name from prefix to ns URL mapping5Creates element holding reference to some linked file3777"7!None!"LTCReads  from raw data (lazy bytestring)DReads B from raw data (lazy bytestring), failing with Left on parse error>Get xml cursor from the specified file inside the zip archive.JGet xml cursor from the given file, failing with MissingFile if not found.Get shared string table@readWorkbook pulls the names of the sheets and the defined names<=>?@ABCD <=>?@ABCD CD=>?@AB<<=>?@ABCD"NoneDORT H'lens giving access to a worksheet from  object by its nameI variant of H lensNote:k if there is no such sheet in this workbook then new sheet will be added as the last one to the sheet listJlens giving access to a cell in some worksheet by its position, by default row+column index is used so this lens is a synonym of KK"lens to access cell in a worksheetLJlens to access cell in a worksheet using more traditional x+y coordinatesMHaccessor that can read, write or delete cell in a worksheet synonym of N so uses row+column indexN1lens to read, write or delete cell in a worksheetOalens to read, write or delete cell in a worksheet using more traditional x+y or row+column indexPblens to read, write or delete cell value in a worksheet with row+column coordinates, synonym for  cellValueRCQblens to read, write or delete cell value in a worksheet using row+column coordinates of that cellRZlens to read, write or delete cell value in a worksheet using traditional x+y coordinatesHIJKLMNOPQRST HIJKLMNOPQR HIJKLMNOPQRHIJKLMNOPQRST#None!"OT In reverse order'Formatting options used to format cellsTODOs:Add a number format (, )*Add references to the named style sheets ()_Cell with formatting.  property of a is ignoredSee | for more details.qThe resulting stylesheetr?The final map of conditional formatting rules applied to rangessResult of formattingSee |u The final ; see vThe final stylesheet; see  (and )w#The final list of cell merges; see |1Higher level API for creating formatted documents0Creating formatted Excel spreadsheets using the 3 datatype directly, even with the support for the ; datatype, is fairly painful. This has a number of causes:The  datatype wants an 7 for the style, which is supposed to point into the  part of a stylesheet. However, this can be difficult to work with, as it requires manual tracking of cell style IDs, which in turns requires manual tracking of font IDs, border IDs, etc.LRow-span and column-span properties are set on the worksheet as a whole (") rather than on individual cells.Excel does not correctly deal with borders on cells that span multiple columns or rows. Instead, these rows must be set on all the edge cells in the block. Again, this means that this becomes a global property of the spreadsheet rather than properties of individual cells.<This function deals with all these problems. Given a map of _s, which refer directly to {s, s, etc. (rather than font IDs, border IDs, etc.), and an initial stylesheet, it recovers all possible sharing, constructs IDs, and then constructs the final 6, as well as the final stylesheet and list of merges.If you don't already have a ) you want to use as starting point then a is a good choice.} reverse to |h which allows to get a map of formatted cells from an existing worksheet and its workbook's style sheet3Format a cell with (potentially) rowspan or colspan%Cell block corresponding to a single _ A single _U might have a colspan or rowspan greater than 1. Although Excel obviously supports cell merges, it does not correctly apply borders to the cells covered by the rowspan or colspan. Therefore we create a block of cells in this function; the top-left is the cell proper, and the remaining cells are the cells covered by the rowspan/colspan.0Also returns the cell merge instruction, if any.N     YZ[\_`abcdefghijklopqrstuvwxyz{|}~"YZ[\_`abcdefghijklopqrstuvwxyz{|}~"_`abcdstuvw|}opqr~efghikjlxzy{YZ[\-      YZ[\_`abcdefghijklopqrstuvwxyz{|}~'NoneDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~56789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a      !"#$'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP]^_`abghijklmnopqrstuvwxyz{|}~&'()*+,.-/0213456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrs !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGZ[\]^_`abcdefghijklmnopqrstuvw  7<=>?@ABCDHIJKLMNOPQR)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTTUVWXYZ[\]^_`abcdefghijklmnopqqrsstuvwxyzz{|}~       !"#$%&'(()*+,-../00123456789:;<=>?@ABCDEFGHIJ K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                      ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                                                                                                             ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                                                                          !"#$%&&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdeefghijklmnopqrstuvwxyz{|}~       !"#$%&''()**+,-./00122344566789:;<=>?@ABCDEFGHIJKLMNOPQRSSTUVWXXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~3      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghhijklmnopqrstuuvwwxyz{|}~$&34      ! !!!!!!!!!!!"""""""" "!"""#"$"%"&"'#(#)#*#+#,#-#.#/#0#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#?#@#A#B#B#C#D#E#F#G#H#I#%#J#K#L#M#N#O#P#Q#RS TUVWXYZ[\]^_`)*abbcdeffghijk l m n o o p q r s t u v w x y z z { | } ~                             !!!!!!!!!!!!!!!!!!!!!T"""""#########################################!xlsx-0.4.3-5I3LoCzSTObDo8CH8zuzMzCodec.Xlsx.TypesCodec.Xlsx.Writer.InternalCodec.Xlsx.Parser.InternalCodec.Xlsx.Types.Drawing.CommonCodec.Xlsx.Types.Internal&Codec.Xlsx.Types.Internal.ContentTypes$Codec.Xlsx.Types.Internal.NumFmtPair'Codec.Xlsx.Types.Internal.RelationshipsCodec.Xlsx.Types.PageSetup$Codec.Xlsx.Types.PivotTable.InternalCodec.Xlsx.Types.ProtectionCodec.Xlsx.Types.StyleSheetCodec.Xlsx.Types.RichTextCodec.Xlsx.Types.CommonCodec.Xlsx.Types.AutoFilterCodec.Xlsx.Types.Comment&Codec.Xlsx.Types.ConditionalFormattingCodec.Xlsx.Types.DataValidationCodec.Xlsx.Types.Drawing.ChartCodec.Xlsx.Types.Drawing Codec.Xlsx.Types.Internal.CfPair&Codec.Xlsx.Types.Internal.CommentTable Codec.Xlsx.Types.Internal.DvPairCodec.Xlsx.Types.PivotTable%Codec.Xlsx.Parser.Internal.PivotTableCodec.Xlsx.Types.SheetViews%Codec.Xlsx.Writer.Internal.PivotTableCodec.Xlsx.Types.TableCodec.Xlsx.Types.Variant+Codec.Xlsx.Types.Internal.SharedStringTable*Codec.Xlsx.Types.Internal.CustomPropertiesCodec.Xlsx.WriterCodec.Xlsx.ParserCodec.Xlsx.LensCodec.Xlsx.FormattedrenderStyleSheet formattedparseStyleSheet Codec.XlsxLens'1data-default-class-0.1.2.0-FYQpjIylblBDctdkHAFeXAData.Default.Classdef ToAttrVal toAttrVal ToElement toElement ToDocument toDocumentdocumentFromElementdocumentFromNsElementdocumentFromNsPrefElementcountedElementList elementListelementListSimplenonEmptyElListSimple leafElement emptyElementelementContent0elementContentelementContentPreserved elementValue.=.=?setAttraddNS mainNamespacetxtdtxtbtxti justNonDef justFalsejustTrue$fToAttrValBool$fToAttrValDouble$fToAttrValInteger$fToAttrValInt $fToAttrVal[]$fToAttrValText FromAttrVal fromAttrVal FromCursor fromCursorParseException nodeElNameIs fromAttributefromAttributeDefmaybeAttributefromElementValuemaybeElementValuemaybeElementValueDefmaybeBoolElementValuemaybeFromElementcontentOrEmpty readSuccess readFailure invalidTextdefaultReadFailuren_decimalrationalboolean$fFromAttrValBool$fFromAttrValDouble$fFromAttrValInteger$fFromAttrValInt$fFromAttrValText$fExceptionParseException$fShowParseExceptionFillPropertiesNoFill SolidFillLineProperties_lnFillShapeProperties_spXfrm _spGeometry_spFill _spOutlineGeometryPresetGeometry Transform2D_trRot_trFlipH_trFlipV _trOffset _trExtentsPositiveSize2D_ps2dX_ps2dYPositiveCoordinatePoint2D_pt2dX_pt2dYUnitIdentifierUnitCmUnitMmUnitInUnitPtUnitPcUnitPi Coordinate UnqCoordinateUniversalMeasureTextRun RegularRun _txrCharProps_txrTextTextCharacterProperties _txchBold _txchItalic_txchUnderline TextParagraph_txpaDefCharProps _txpaRuns TextAnchoringTextAnchoringBottomTextAnchoringCenterTextAnchoringDistributedTextAnchoringJustifiedTextAnchoringTopTextWrap TextWrapNoneTextWrapSquare TextVerticalTextVerticalEATextVerticalHorzTextVerticalMongolianTextVertical270TextVerticalWordArtTextVerticalWordArtRtlTextVertOverflowTextVertOverflowClipTextVertOverflowEllipsisTextBody _txbdRotation_txbdSpcFirstLastPara_txbdVertOverflow _txbdVertical _txbdWrap _txbdAnchor_txbdAnchorCenter_txbdParagraphsAngle unqPoint2DpositiveSize2DcmSize2Dcm2emugeometryFromNodefillPropsFromNode coordinategeometryToElementfillPropsToElementa_ drawingNs$fToElementLineProperties$fToElementTransform2D$fToAttrValPositiveCoordinate$fToAttrValCoordinate$fToElementPositiveSize2D$fToElementPoint2D$fToElementShapeProperties$fToAttrValAngle$fToAttrValTextAnchoring$fToAttrValTextWrap$fToAttrValTextVertical$fToAttrValTextVertOverflow$fToElementTextRun"$fToElementTextCharacterProperties$fToElementTextParagraph$fToElementTextBody$fFromCursorFillProperties$fFromCursorPositiveSize2D$fFromCursorPoint2D$fFromCursorLineProperties$fFromCursorGeometry$fFromCursorTransform2D$fFromCursorShapeProperties$fFromAttrValTextAnchoring$fFromAttrValTextWrap$fFromAttrValTextVertical$fFromAttrValTextVertOverflow$fFromAttrValAngle$fFromCursorTextRun#$fFromCursorTextCharacterProperties$fFromCursorTextParagraph$fFromCursorTextBody$fDefaultShapeProperties $fEqAngle $fShowAngle$fEqTextVertOverflow$fShowTextVertOverflow$fEqTextVertical$fShowTextVertical $fEqTextWrap$fShowTextWrap$fEqTextAnchoring$fShowTextAnchoring$fEqTextCharacterProperties$fShowTextCharacterProperties $fEqTextRun $fShowTextRun$fEqTextParagraph$fShowTextParagraph $fEqTextBody$fShowTextBody$fEqUnitIdentifier$fShowUnitIdentifier$fEqCoordinate$fShowCoordinate $fEqPoint2D $fShowPoint2D$fEqPositiveCoordinate$fOrdPositiveCoordinate$fShowPositiveCoordinate$fEqPositiveSize2D$fShowPositiveSize2D$fEqTransform2D$fShowTransform2D $fEqGeometry$fShowGeometry$fEqFillProperties$fShowFillProperties$fEqLineProperties$fShowLineProperties$fEqShapeProperties$fShowShapePropertiesRefIdunRefId$fFromAttrValRefId$fToAttrValRefId $fShowRefId $fEqRefId $fOrdRefId ContentTypes ctDefaultsctTypesOverride ovrPartNameovrContentType CtDefault dfltExtensiondfltContentTypelookupctcontentTypesNs$fFromCursorOverride$fFromCursorCtDefault$fFromCursorContentTypes $fEqCtDefault$fShowCtDefault $fEqOverride$fShowOverride$fEqContentTypes$fShowContentTypes NumFmtPair unNumFmtPair$fToElementNumFmtPair$fFromCursorNumFmtPair$fEqNumFmtPair$fShowNumFmtPair RelationshipsrelMap RelationshiprelType relTargetfromListemptysizerelEntrysetTargetsFromjoinRelrelFrom findRelByType allByType parseRelEntryprodrodRelNspkgRelNs stdRelType$fFromCursorRelationship$fFromCursorRelationships$fToElementRelationship$fToElementRelationships$fToDocumentRelationships$fShowRelationship$fEqRelationship$fShowRelationships$fEqRelationships PaperSizePaperA2PaperA3 PaperA3ExtraPaperA3ExtraTransversePaperA3TransversePaperA4 PaperA4Extra PaperA4Plus PaperA4SmallPaperA4TransversePaperA5 PaperA5ExtraPaperA5TransversePaperB4PaperB5PaperCPaperDPaperEPaperExecutivePaperFanfoldGermanLegalPaperFanfoldGermanStandardPaperFanfoldUsStandard PaperFolio PaperIsoB4PaperIsoB5ExtraPaperJapaneseDoublePostcardPaperJisB5Transverse PaperLedger PaperLegalPaperLegalExtra PaperLetterPaperLetterExtraPaperLetterExtraTransversePaperLetterPlusPaperLetterSmallPaperLetterTransverse PaperNote PaperQuartoPaperStandard9_11PaperStandard10_11PaperStandard10_14PaperStandard11_17PaperStandard15_11PaperStatement PaperSuperA PaperSuperB PaperTabloidPaperTabloidExtra Envelope6_3_4 Envelope9 Envelope10 Envelope11 Envelope12 Envelope14 EnvelopeB4 EnvelopeB5 EnvelopeB6 EnvelopeC3 EnvelopeC4 EnvelopeC5 EnvelopeC6 EnvelopeC65 EnvelopeDLEnvelopeInvite EnvelopeItalyEnvelopeMonarch PageOrderPageOrderDownThenOverPageOrderOverThenDown OrientationOrientationDefaultOrientationLandscapeOrientationPortrait PrintErrorsPrintErrorsBlankPrintErrorsDashPrintErrorsDisplayed PrintErrorsNA CellCommentsCellCommentsAsDisplayedCellCommentsAtEndCellCommentsNone PageSetup_pageSetupBlackAndWhite_pageSetupCellComments_pageSetupCopies_pageSetupDraft_pageSetupErrors_pageSetupFirstPageNumber_pageSetupFitToHeight_pageSetupFitToWidth_pageSetupHorizontalDpi _pageSetupId_pageSetupOrientation_pageSetupPageOrder_pageSetupPaperHeight_pageSetupPaperSize_pageSetupPaperWidth_pageSetupScale_pageSetupUseFirstPageNumber_pageSetupUsePrinterDefaults_pageSetupVerticalDpi$fDefaultPageSetup$fShowCellComments$fEqCellComments$fOrdCellComments$fShowPrintErrors$fEqPrintErrors$fOrdPrintErrors$fShowOrientation$fEqOrientation$fOrdOrientation$fShowPageOrder $fEqPageOrder$fOrdPageOrder$fShowPaperSize $fEqPaperSize$fOrdPaperSize$fShowPageSetup $fEqPageSetup$fOrdPageSetuppageSetupBlackAndWhitepageSetupCellCommentspageSetupCopiespageSetupDraftpageSetupErrorspageSetupFirstPageNumberpageSetupFitToHeightpageSetupFitToWidthpageSetupHorizontalDpi pageSetupIdpageSetupOrientationpageSetupPageOrderpageSetupPaperHeightpageSetupPaperSizepageSetupPaperWidthpageSetupScalepageSetupUseFirstPageNumberpageSetupUsePrinterDefaultspageSetupVerticalDpi$fFromAttrValOrientation$fFromAttrValPrintErrors$fFromAttrValCellComments$fFromAttrValPageOrder$fFromAttrValPaperSize$fFromCursorPageSetup$fToAttrValPaperSize$fToAttrValPageOrder$fToAttrValOrientation$fToAttrValPrintErrors$fToAttrValCellComments$fToElementPageSetupCacheId$fFromAttrValCacheId $fEqCacheIdSheetProtection_sprLegacyPassword _sprSheet_sprAutoFilter_sprDeleteColumns_sprDeleteRows_sprFormatCells_sprFormatColumns_sprFormatRows_sprInsertColumns_sprInsertHyperlinks_sprInsertRows _sprObjects_sprPivotTables _sprScenarios_sprSelectLockedCells_sprSelectUnlockedCells_sprSortLegacyPasswordlegacyPassword$fEqLegacyPassword$fShowLegacyPassword$fEqSheetProtection$fShowSheetProtection sprAutoFiltersprDeleteColumns sprDeleteRowssprFormatCellssprFormatColumns sprFormatRowssprInsertColumnssprInsertHyperlinks sprInsertRowssprLegacyPassword sprObjectssprPivotTables sprScenariossprSelectLockedCellssprSelectUnlockedCellssprSheetsprSortnoSheetProtectionfullSheetProtection$fToAttrValLegacyPassword$fToElementSheetProtection$fFromAttrValLegacyPassword$fFromCursorSheetProtection ReadingOrderReadingOrderContextDependentReadingOrderLeftToRightReadingOrderRightToLeft PatternTypePatternTypeDarkDownPatternTypeDarkGrayPatternTypeDarkGridPatternTypeDarkHorizontalPatternTypeDarkTrellisPatternTypeDarkUpPatternTypeDarkVerticalPatternTypeGray0625PatternTypeGray125PatternTypeLightDownPatternTypeLightGrayPatternTypeLightGridPatternTypeLightHorizontalPatternTypeLightTrellisPatternTypeLightUpPatternTypeLightVerticalPatternTypeMediumGrayPatternTypeNonePatternTypeSolid LineStyleLineStyleDashDotLineStyleDashDotDotLineStyleDashedLineStyleDottedLineStyleDouble LineStyleHairLineStyleMediumLineStyleMediumDashDotLineStyleMediumDashDotDotLineStyleMediumDashed LineStyleNoneLineStyleSlantDashDotLineStyleThick LineStyleThinFontVerticalAlignmentFontVerticalAlignmentBaselineFontVerticalAlignmentSubscript FontVerticalAlignmentSuperscript FontUnderlineFontUnderlineSingleFontUnderlineDoubleFontUnderlineSingleAccountingFontUnderlineDoubleAccountingFontUnderlineNone FontSchemeFontSchemeMajorFontSchemeMinorFontSchemeNone FontFamilyFontFamilyNotApplicableFontFamilyRomanFontFamilySwissFontFamilyModernFontFamilyScriptFontFamilyDecorativeCellVerticalAlignmentCellVerticalAlignmentBottomCellVerticalAlignmentCenter CellVerticalAlignmentDistributedCellVerticalAlignmentJustifyCellVerticalAlignmentTopCellHorizontalAlignmentCellHorizontalAlignmentCenter'CellHorizontalAlignmentCenterContinuous"CellHorizontalAlignmentDistributedCellHorizontalAlignmentFillCellHorizontalAlignmentGeneralCellHorizontalAlignmentJustifyCellHorizontalAlignmentLeftCellHorizontalAlignmentRight Protection_protectionHidden_protectionLockedImpliedNumberFormat NfGeneralNfZero Nf2Decimal NfMax3DecimalNfThousandSeparator2Decimal NfPercentNfPercent2DecimalNfExponent2DecimalNfSingleSpacedFractionNfDoubleSpacedFractionNfMmDdYyNfDMmmYyNfDMmmNfMmmYy NfHMm12Hr NfHMmSs12HrNfHMmNfHMmSsNfMdyHMmNfThousandsNegativeParensNfThousandsNegativeRed!NfThousands2DecimalNegativeParensNfTousands2DecimalNEgativeRedNfMmSs NfOptHMmSsNfMmSs1DecimalNfExponent1DecimalNfTextPlaceHolderNfOtherImplied NumberFormatStdNumberFormatUserNumberFormatNumFmtDxf_dxfFont_dxfFill _dxfAlignment _dxfBorder_dxfProtectionFont _fontBold _fontCharset _fontColor _fontCondense _fontExtend _fontFamily _fontItalic _fontName _fontOutline _fontScheme _fontShadow_fontStrikeThrough _fontSize_fontUnderline_fontVertAlign FillPattern_fillPatternBgColor_fillPatternFgColor_fillPatternTypeFill _fillPatternColor_colorAutomatic _colorARGB _colorTheme _colorTint BorderStyle_borderStyleColor_borderStyleLineBorder_borderDiagonalDown_borderDiagonalUp_borderOutline _borderBottom_borderDiagonal _borderEnd_borderHorizontal _borderLeft _borderRight _borderStart _borderTop_borderVertical Alignment_alignmentHorizontal_alignmentIndent_alignmentJustifyLastLine_alignmentReadingOrder_alignmentRelativeIndent_alignmentShrinkToFit_alignmentTextRotation_alignmentVertical_alignmentWrapTextCellXf_cellXfApplyAlignment_cellXfApplyBorder_cellXfApplyFill_cellXfApplyFont_cellXfApplyNumberFormat_cellXfApplyProtection_cellXfBorderId _cellXfFillId _cellXfFontId_cellXfNumFmtId_cellXfPivotButton_cellXfQuotePrefix _cellXfId_cellXfAlignment_cellXfProtection StyleSheet_styleSheetBorders_styleSheetCellXfs_styleSheetFills_styleSheetFonts_styleSheetDxfs_styleSheetNumFmts fmtDecimalsfmtDecimalsZeroesstdNumberFormatIdidToStdNumberFormatfirstUserNumFmtId $fShowColor $fEqColor $fOrdColor$fShowImpliedNumberFormat$fEqImpliedNumberFormat$fOrdImpliedNumberFormat$fEqNumberFormat$fOrdNumberFormat$fShowNumberFormat$fShowProtection$fEqProtection$fOrdProtection$fShowCellHorizontalAlignment$fEqCellHorizontalAlignment$fOrdCellHorizontalAlignment$fShowCellVerticalAlignment$fEqCellVerticalAlignment$fOrdCellVerticalAlignment$fShowFontFamily$fEqFontFamily$fOrdFontFamily$fShowFontScheme$fEqFontScheme$fOrdFontScheme$fShowFontUnderline$fEqFontUnderline$fOrdFontUnderline$fShowFontVerticalAlignment$fEqFontVerticalAlignment$fOrdFontVerticalAlignment $fShowFont$fEqFont $fOrdFont$fShowLineStyle $fEqLineStyle$fOrdLineStyle$fShowBorderStyle$fEqBorderStyle$fOrdBorderStyle $fShowBorder $fEqBorder $fOrdBorder$fShowPatternType$fEqPatternType$fOrdPatternType$fShowFillPattern$fEqFillPattern$fOrdFillPattern $fShowFill$fEqFill $fOrdFill$fShowReadingOrder$fEqReadingOrder$fOrdReadingOrder$fShowAlignment $fEqAlignment$fOrdAlignment$fEqDxf$fOrdDxf $fShowDxf $fShowCellXf $fEqCellXf $fOrdCellXf$fEqStyleSheet$fOrdStyleSheet$fShowStyleSheetstyleSheetBordersstyleSheetCellXfsstyleSheetDxfsstyleSheetFillsstyleSheetFontsstyleSheetNumFmtscellXfAlignmentcellXfApplyAlignmentcellXfApplyBordercellXfApplyFillcellXfApplyFontcellXfApplyNumberFormatcellXfApplyProtectioncellXfBorderId cellXfFillId cellXfFontIdcellXfIdcellXfNumFmtIdcellXfPivotButtoncellXfProtectioncellXfQuotePrefix dxfAlignment dxfBorderdxfFilldxfFont dxfProtectionalignmentHorizontalalignmentIndentalignmentJustifyLastLinealignmentReadingOrderalignmentRelativeIndentalignmentShrinkToFitalignmentTextRotationalignmentVerticalalignmentWrapText borderBottomborderDiagonalborderDiagonalDownborderDiagonalUp borderEndborderHorizontal borderLeft borderOutline borderRight borderStart borderTopborderVerticalborderStyleColorborderStyleLine colorARGBcolorAutomatic colorTheme colorTint fillPatternfillPatternBgColorfillPatternFgColorfillPatternTypefontBold fontCharset fontColor fontCondense fontExtend fontFamily fontItalicfontName fontOutline fontScheme fontShadowfontSizefontStrikeThrough fontUnderline fontVertAlignprotectionHiddenprotectionLockedminimalStyleSheet$fFromCursorProtection$fFromAttrValReadingOrder"$fFromAttrValCellVerticalAlignment$$fFromAttrValCellHorizontalAlignment$fFromCursorAlignment$fFromCursorDxf$fFromCursorCellXf$fFromAttrValLineStyle$fFromCursorBorderStyle$fFromCursorBorder$fFromAttrValPatternType$fFromCursorFillPattern$fFromCursorFill$fFromAttrValFontScheme"$fFromAttrValFontVerticalAlignment$fFromAttrValFontUnderline$fFromCursorColor$fFromAttrValFontFamily$fFromCursorFont$fFromCursorStyleSheet$fToAttrValReadingOrder$fToAttrValPatternType$fToAttrValLineStyle $fToAttrValFontVerticalAlignment$fToAttrValFontUnderline$fToAttrValFontScheme$fToAttrValFontFamily $fToAttrValCellVerticalAlignment"$fToAttrValCellHorizontalAlignment$fToElementProtection$fToElementFont$fToElementFillPattern$fToElementFill$fToElementColor$fToElementBorderStyle$fToElementBorder$fToElementAlignment$fToElementDxf$fToElementCellXf$fToElementStyleSheet$fToDocumentStyleSheet$fDefaultProtection $fDefaultFont$fDefaultFillPattern $fDefaultFill$fDefaultColor$fDefaultBorderStyle$fDefaultBorder$fDefaultAlignment $fDefaultDxf$fDefaultCellXf$fDefaultStyleSheet RunProperties_runPropertiesBold_runPropertiesCharset_runPropertiesColor_runPropertiesCondense_runPropertiesExtend_runPropertiesFontFamily_runPropertiesItalic_runPropertiesOutline_runPropertiesFont_runPropertiesScheme_runPropertiesShadow_runPropertiesStrikeThrough_runPropertiesSize_runPropertiesUnderline_runPropertiesVertAlign RichTextRun_richTextRunProperties_richTextRunText$fShowRunProperties$fEqRunProperties$fOrdRunProperties$fShowRichTextRun$fEqRichTextRun$fOrdRichTextRunrichTextRunPropertiesrichTextRunTextrunPropertiesBoldrunPropertiesCharsetrunPropertiesColorrunPropertiesCondenserunPropertiesExtendrunPropertiesFontrunPropertiesFontFamilyrunPropertiesItalicrunPropertiesOutlinerunPropertiesSchemerunPropertiesShadowrunPropertiesSizerunPropertiesStrikeThroughrunPropertiesUnderlinerunPropertiesVertAlignapplyRunProperties$fMonoidRunProperties$fFromCursorRunProperties$fFromCursorRichTextRun$fToElementRunProperties$fToElementRichTextRun$fDefaultRunProperties$fDefaultRichTextRun CellValueCellText CellDoubleCellBoolCellRichFormula unFormulaXlsxText XlsxRichTextSqRefRangeCellRef unCellRefint2colcol2int singleCellReffromSingleCellReffromSingleCellRefNotingmkRange fromRange$fToElementFormula$fToAttrValSqRef$fToAttrValCellRef$fToElementXlsxText$fFromCursorFormula$fFromAttrValSqRef$fFromAttrValCellRef$fFromCursorXlsxText $fEqCellRef $fOrdCellRef $fShowCellRef $fEqSqRef $fOrdSqRef $fShowSqRef$fShowXlsxText $fEqXlsxText $fOrdXlsxText $fEqFormula $fOrdFormula $fShowFormula $fEqCellValue$fOrdCellValue$fShowCellValue AutoFilter_afRef_afFilterColumnsCustomFilterOperator FltrEqualFltrGreaterThanFltrGreaterThanOrEqual FltrLessThanFltrLessThanOrEqual FltrNotEqual CustomFilter cfltOperator cfltValue FilterColumnFilters ACustomFilterCustomFiltersOrCustomFiltersAnd _fltValues$fEqCustomFilterOperator$fShowCustomFilterOperator$fEqCustomFilter$fShowCustomFilter$fEqFilterColumn$fShowFilterColumn$fEqAutoFilter$fShowAutoFilterafFilterColumnsafReffltColFromNodefltColToElement$fToAttrValCustomFilterOperator$fToElementCustomFilter$fToElementAutoFilter!$fFromAttrValCustomFilterOperator$fFromCursorAutoFilter$fDefaultAutoFilterComment _commentText_commentAuthor_commentVisible $fShowComment $fEqCommentCfRule _cfrCondition _cfrDxfId _cfrPriority_cfrStopIfTrue Condition BeginsWithCellIsContainsBlanksContainsErrors ContainsTextDoesNotContainErrorsDoesNotContainBlanksDoesNotContainTextEndsWith Expression InTimePeriod TimePeriod PerLast7Days PerLastMonth PerLastWeek PerNextMonth PerNextWeek PerThisMonth PerThisWeekPerToday PerTomorrow PerYesterdayOperatorExpression OpBeginsWith OpBetweenOpContainsText OpEndsWithOpEqual OpGreaterThanOpGreaterThanOrEqual OpLessThanOpLessThanOrEqual OpNotBetween OpNotContains OpNotEqual$fEqOperatorExpression$fOrdOperatorExpression$fShowOperatorExpression$fEqTimePeriod$fOrdTimePeriod$fShowTimePeriod $fEqCondition$fOrdCondition$fShowCondition $fEqCfRule $fOrdCfRule $fShowCfRuleConditionalFormatting cfrConditioncfrDxfId cfrPriority cfrStopIfTrue topCfPriority$fToAttrValTimePeriod$fToElementCfRule$fFromAttrValTimePeriod$fFromCursorCfRuleDataValidation _dvAllowBlank_dvError _dvErrorStyle _dvErrorTitle _dvPrompt_dvPromptTitle_dvShowDropDown_dvShowErrorMessage_dvShowInputMessage_dvValidationType ErrorStyleErrorStyleInformationErrorStyleStopErrorStyleWarningValidationTypeValidationTypeNoneValidationTypeCustomValidationTypeDateValidationTypeDecimalValidationTypeListValidationTypeTextLengthValidationTypeTimeValidationTypeWholeValidationExpression ValBetweenValEqualValGreaterThanValGreaterThanOrEqual ValLessThanValLessThanOrEqual ValNotBetween ValNotEqual$fEqValidationExpression$fShowValidationExpression$fEqValidationType$fShowValidationType$fEqErrorStyle$fShowErrorStyle$fEqDataValidation$fShowDataValidation dvAllowBlankdvError dvErrorStyle dvErrorTitledvPrompt dvPromptTitledvShowDropDowndvShowErrorMessagedvShowInputMessagedvValidationTypereadValidationTypereadListFormulareadOpExpression2readValidationTypeOpExpreadValExpressionviewValidationExpression$fToElementDataValidation$fToAttrValErrorStyle$fToAttrValValidationType$fFromCursorDataValidation$fFromAttrValErrorStyle$fDefaultDataValidationTickMark TickMarkCross TickMarkIn TickMarkNone TickMarkOut DataLblProps_dlblShowLegendKey _dlblShowVal_dlblShowCatName_dlblShowSerName_dlblShowPercentDataMarkerSymbolDataMarkerCircleDataMarkerDashDataMarkerDiamond DataMarkerDotDataMarkerNoneDataMarkerPictureDataMarkerPlusDataMarkerSquareDataMarkerStarDataMarkerTriangle DataMarkerXDataMarkerAuto DataMarker _dmrkSymbol _dmrkSize LineSeries _lnserShared _lnserMarker_lnserDataLblProps _lnserVal _lnserSmoothSeries_serTx ChartGroupingPercentStackedGroupingStackedGroupingStandardGroupingChart LineChart _lnchGrouping _lnchSeries _lnchMarker _lnchSmooth LegendPos LegendBottom LegendLeft LegendRight LegendTopLegendTopRightLegend _legendPos_legendOverlay DispBlanksAsDispBlanksAsGapDispBlanksAsSpanDispBlanksAsZero ChartTitle ChartSpace _chspTitle _chspCharts _chspLegend_chspPlotVisOnly_chspDispBlanksAs chartFromNodechartToElementc_chartNs$fToAttrValTickMark$fToAttrValDispBlanksAs$fToAttrValLegendPos$fToElementLegend$fToElementChartTitle$fToElementSeries$fToElementDataLblProps$fToAttrValDataMarkerSymbol$fToElementDataMarker$fToElementLineSeries$fToAttrValChartGrouping$fToElementChartSpace$fToDocumentChartSpace$fDefaultLegend$fFromAttrValDispBlanksAs$fFromAttrValLegendPos$fFromCursorLegend$fFromCursorChartTitle$fFromAttrValChartGrouping$fFromCursorDataLblProps$fFromAttrValDataMarkerSymbol$fFromCursorDataMarker$fFromCursorSeries$fFromCursorLineSeries$fFromCursorChartSpace$fEqChartTitle$fShowChartTitle$fEqDispBlanksAs$fShowDispBlanksAs $fEqLegendPos$fShowLegendPos $fEqLegend $fShowLegend$fEqChartGrouping$fShowChartGrouping $fEqSeries $fShowSeries$fEqDataMarkerSymbol$fShowDataMarkerSymbol$fEqDataMarker$fShowDataMarker$fEqDataLblProps$fShowDataLblProps$fEqLineSeries$fShowLineSeries $fEqChart $fShowChart$fEqChartSpace$fShowChartSpace $fEqTickMark$fShowTickMarkUnresolvedDrawingDrawingGenericDrawing _xdrAnchorsAnchor_anchAnchoring _anchObject_anchClientDataFillModeFillTile FillStretchBlipFillProperties _bfpImageInfo _bfpFillModeNonVisualDrawingProperties_nvdpId _nvdpName_nvdpDescription _nvdpHidden _nvdpTitleDrawingElementIdunDrawingElementIdGraphNonVisual_gnvDrawingProps PicNonVisual_pnvDrawingProps ClientData_cldLcksWithSheet_cldPrintsWithSheet DrawingObjectPictureGraphic _picMacro _picPublished _picNonVisual _picBlipFill_picShapeProperties _grNonVisual _grChartSpace _grTransform AnchoringAbsoluteAnchor OneCellAnchor TwoCellAnchorabsaPosabsaExt onecaFromonecaExttcaFromtcaTo tcaEditAsEditAs EditAsTwoCell EditAsOneCellEditAsAbsoluteMarker_mrkCol _mrkColOff_mrkRow _mrkRowOffFileInfo _fiFilename_fiContentType _fiContents unqMarkerpictureextractPicturessimpleAnchorXY $fEqFileInfo$fShowFileInfo $fEqMarker $fShowMarker $fEqEditAs $fShowEditAs $fEqAnchoring$fShowAnchoring$fEqClientData$fShowClientData$fEqDrawingElementId$fShowDrawingElementId$fEqNonVisualDrawingProperties $fShowNonVisualDrawingProperties$fEqGraphNonVisual$fShowGraphNonVisual$fEqPicNonVisual$fShowPicNonVisual $fEqFillMode$fShowFillMode$fEqBlipFillProperties$fShowBlipFillProperties$fEqDrawingObject$fShowDrawingObject $fEqAnchor $fShowAnchor$fEqGenericDrawing$fShowGenericDrawing anchAnchoringanchClientData anchObject grChartSpace grNonVisual grTransform picBlipFillpicMacro picNonVisual picPublishedpicShapeProperties bfpFillMode bfpImageInfo xdrAnchorsanchoringFromNodedrawingObjectFromNodefillModeFromNodeanchorToElementanchoringToElementdrawingObjToElementfillModeToElementxdr xlDrawingNs$fToAttrValEditAs$fToElementClientData$fToElementBlipFillProperties$fToAttrValDrawingElementId%$fToElementNonVisualDrawingProperties$fToElementGraphNonVisual$fToElementPicNonVisual$fToElementMarker$fToElementGenericDrawing$fToDocumentGenericDrawing$fFromCursorClientData$fFromAttrValEditAs$fFromCursorFillMode$fFromCursorBlipFillProperties$fFromAttrValDrawingElementId&$fFromCursorNonVisualDrawingProperties$fFromCursorGraphNonVisual$fFromCursorPicNonVisual$fFromCursorDrawingObject$fFromCursorMarker$fFromCursorAnchoring$fFromCursorAnchor$fFromCursorGenericDrawing$fDefaultClientDataCfPairunCfPair$fToElementCfPair$fFromCursorCfPair $fEqCfPair $fShowCfPair CommentTable_commentsTabletoList lookupComment parseComment renderShapes$fFromCursorCommentTable$fToElementCommentTable$fToDocumentCommentTable$fShowCommentTable$fEqCommentTableDvPairunDvPair$fToElementDvPair$fFromCursorDvPair $fEqDvPair $fShowDvPairConsolidateFunctionConsolidateAverageConsolidateCountConsolidateCountNumsConsolidateMaximumConsolidateMinimumConsolidateProductConsolidateStdDevConsolidateStdDevPConsolidateSumConsolidateVarianceConsolidateVarP DataField_dfField_dfName _dfFunctionPositionedField DataPosition FieldPositionPivotFieldNamePivotFieldInfo_pfiName _pfiOutline PivotTable_pvtName_pvtDataCaption _pvtRowFields_pvtColumnFields_pvtDataFields _pvtFields_pvtRowGrandTotals_pvtColumnGrandTotals _pvtOutline_pvtOutlineData _pvtLocation _pvtSrcSheet _pvtSrcRef$fFromAttrValPivotFieldName $fFromAttrValConsolidateFunction$fToAttrValPivotFieldName$fToAttrValConsolidateFunction$fEqPivotFieldName$fOrdPivotFieldName$fShowPivotFieldName$fEqPivotFieldInfo$fShowPivotFieldInfo$fEqPositionedField$fOrdPositionedField$fShowPositionedField$fEqConsolidateFunction$fShowConsolidateFunction $fEqDataField$fShowDataField$fEqPivotTable$fShowPivotTableparsePivotTable parseCache PaneStatePaneStateFrozenPaneStateFrozenSplitPaneStateSplitPaneTypePaneTypeBottomLeftPaneTypeBottomRightPaneTypeTopLeftPaneTypeTopRight SheetViewTypeSheetViewTypeNormalSheetViewTypePageBreakPreviewSheetViewTypePageLayoutPane_paneActivePane _paneState_paneTopLeftCell _paneXSplit _paneYSplit Selection_selectionActiveCell_selectionActiveCellId_selectionPane_selectionSqref SheetView_sheetViewColorId_sheetViewDefaultGridColor_sheetViewRightToLeft_sheetViewShowFormulas_sheetViewShowGridLines_sheetViewShowOutlineSymbols_sheetViewShowRowColHeaders_sheetViewShowRuler_sheetViewShowWhiteSpace_sheetViewShowZeros_sheetViewTabSelected_sheetViewTopLeftCell_sheetViewType_sheetViewWindowProtection_sheetViewWorkbookViewId_sheetViewZoomScale_sheetViewZoomScaleNormal!_sheetViewZoomScalePageLayoutView"_sheetViewZoomScaleSheetLayoutView_sheetViewPane_sheetViewSelection$fShowSheetViewType$fEqSheetViewType$fOrdSheetViewType $fEqPaneType$fShowPaneType $fOrdPaneType$fShowSelection $fEqSelection$fOrdSelection $fEqPaneState$fShowPaneState$fOrdPaneState $fShowPane$fEqPane $fOrdPane$fShowSheetView $fEqSheetView$fOrdSheetViewsheetViewColorIdsheetViewDefaultGridColor sheetViewPanesheetViewRightToLeftsheetViewSelectionsheetViewShowFormulassheetViewShowGridLinessheetViewShowOutlineSymbolssheetViewShowRowColHeaderssheetViewShowRulersheetViewShowWhiteSpacesheetViewShowZerossheetViewTabSelectedsheetViewTopLeftCell sheetViewTypesheetViewWindowProtectionsheetViewWorkbookViewIdsheetViewZoomScalesheetViewZoomScaleNormal sheetViewZoomScalePageLayoutView!sheetViewZoomScaleSheetLayoutViewselectionActiveCellselectionActiveCellId selectionPaneselectionSqrefpaneActivePane paneStatepaneTopLeftCell paneXSplit paneYSplit$fFromAttrValPaneState$fFromAttrValPaneType$fFromAttrValSheetViewType$fFromCursorSelection$fFromCursorPane$fFromCursorSheetView$fToAttrValPaneState$fToAttrValPaneType$fToAttrValSheetViewType$fToElementPane$fToElementSelection$fToElementSheetView $fDefaultPane$fDefaultSelection$fDefaultSheetViewPivotTableFiles pvtfTablepvtfCacheDefinitionrenderPivotTableFiles$fToElementCacheField$fToElementCacheDefinition$fToDocumentCacheDefinition$fEqPivotTableFiles$fShowPivotTableFiles$fEqCacheField$fShowCacheField$fEqCacheDefinition$fShowCacheDefinition TableColumntblcNameTabletblDisplayNametblNametblRef tblColumns tblAutoFilter$fEqTableColumn$fShowTableColumn $fEqTable $fShowTabletableToDocumenttableToElement$fFromCursorTableVariantVtBlobVtBool VtDecimalVtLpwstrVtIntvariantFromNodekillWhitespace decodeBase64vt docPropsVtNsvariantToElement$fFromCursorVariant $fEqVariant $fShowVariantCell _cellStyle _cellValue _cellComment _cellFormula CellFormulaNormalCellFormula_cellfExpression_cellfAssignsToName_cellfCalculatesimpleCellFormula$fEqCellFormula$fShowCellFormula$fEqCell $fShowCell Worksheet _wsColumns_wsRowPropertiesMap_wsCells _wsDrawing _wsMerges _wsSheetViews _wsPageSetup_wsConditionalFormattings_wsDataValidations_wsPivotTables _wsAutoFilter _wsTables _wsProtection ColumnsWidthcwMincwMaxcwWidthcwStyle RowPropertiesRowProps rowHeightrowStyleCellMap cellComment cellFormula cellStyle cellValue$fFromCursorColumnsWidth $fDefaultCell$fReadRowProperties$fEqRowProperties$fShowRowProperties$fOrdRowProperties$fEqColumnsWidth$fShowColumnsWidth $fEqWorksheet$fShowWorksheet DefinedNamesXlsx _xlSheets _xlStyles_xlDefinedNames_xlCustomPropertiesStylesunStyles wsAutoFilterwsCells wsColumnswsConditionalFormattingswsDataValidations wsDrawingwsMerges wsPageSetup wsPivotTables wsProtectionwsRowPropertiesMap wsSheetViewswsTables$fDefaultWorksheet $fEqStyles $fShowStyles$fEqDefinedNames$fShowDefinedNames$fEqXlsx $fShowXlsxxlCustomPropertiesxlDefinedNamesxlSheetsxlStyles emptyStylestoRowsfromRows$fToElementCellFormula$fFromCursorCellFormula$fDefaultDefinedNames $fDefaultXlsxSharedStringTablesstTablesstEmpty sstConstruct sstLookupText sstLookupRichsstItem$fFromCursorSharedStringTable$fToElementSharedStringTable$fToDocumentSharedStringTable$fShowSharedStringTable$fEqSharedStringTable$fOrdSharedStringTableCustomPropertyCustomPropertiesparseCustomPropertyEntrycpr custPropNsuserDefinedFmtID$fToElementCustomProperty$fToElementCustomProperties$fToDocumentCustomProperties$fFromCursorCustomProperties$fShowCustomProperties$fEqCustomPropertiesfromXlsx$fShowXlsxCellData$fEqXlsxCellData$fShowXlsxCell $fEqXlsxCellParser ParseErrorInvalidZipArchive MissingFile InvalidFile InvalidRefInconsistentXlsxtoXlsx toXlsxEither$fShowParseError$fEqParseError$fShowWorksheetFileixSheetatSheetixCellixCellRCixCellXYatCellatCellRCatCellXY cellValueAt cellValueAtRC cellValueAtXY $fAtSheetList$fIxedSheetList $fEqSheetList$fShowSheetList$fEqFormattedCondFmt$fShowFormattedCondFmtcondfmtCondition condfmtDxfcondfmtPrioritycondfmtStopIfTrue $fEqFormat $fShowFormat FormattedCell_formattedCell_formattedFormat_formattedColSpan_formattedRowSpanformatAlignment formatBorder formatFill formatFontformatNumberFormatformatPivotButtonformatProtectionformatQuotePrefix$fEqFormattedCell$fShowFormattedCell CondFormattedcondformattedStyleSheetcondformattedFormattings FormattedformattedCellMapformattedStyleSheetformattedMerges formattedCellformattedColSpanformattedFormatformattedRowSpantoFormattedCellsconditionallyFormatted$fDefaultFormattedCondFmt$fDefaultFormat$fDefaultFormattedCell $fEqFormatted$fShowFormatted$fEqCondFormatted$fShowCondFormatted runReader"lens-4.15.1-75ICqM0X19YDHpsB5vklPDControl.Lens.Internal.IndexedindexedbaseGHC.BaseMonoidsingleCellRefRawfromSingleCellRefRaw readConditionreadOpExpression conditionDataoperatorExpressionData formulaNodeDefaultCacheDefinition cdSourceRef cdSourceSheetcdFields CacheFieldptDefinitionDocumentptDefinitionElement generateCachetypedCellFormula sstLookupqNamensName refElementXlsxCell xlsxCellStyle xlsxCellValue xlsxCommentxlsxCellFormula XlsxCellDataXlsxSS XlsxDoubleXlsxBoolCellsReferencedFileDataFileDatafdPath fdContentType fdRelType fdContents PvGenerated pvgCacheFilespvgSheetTableFiles pvgOtherssingleSheetFiles nextRefId unsafeRefId sheetDataXml genComments genDrawinggenChartgeneratePivotFilesgenTablerefFileDataToRelcoreXmlappXml xlsxCellTypevaluetransformSheetData bookFilesbookXmlssXmlcustomPropsXmlcontentTypesXmlnmnElsmlCTrelsCTxmlCursorOptionalxmlCursorRequiredgetSharedStrings readWorkbookCaches WorksheetFilewfNamewfPath extractSheetextractCellValuegetContentTypes getStyles getCommentsgetCustomProperties getDrawing readChartgetTable worksheetFilegetRels lookupRelPathControl.Lens.AtAt SheetList unSheetListupsert sheetList_formattingMergesFormatghc-prim GHC.TypesInt formatCell cellBlockFormattingState_formattingBorders_formattingCellXfs_formattingFills_formattingFonts_formattingNumFmtsFormattedCondFmt_condfmtCondition _condfmtDxf_condfmtPriority_condfmtStopIfTrueformattingBordersformattingCellXfsformattingFillsformattingFontsformattingMergesformattingNumFmtsstateFromStyleSheet fromValueList toValueListupdateStyleSheetFromStategetIdgetId'_formatAlignment _formatBorder _formatFill _formatFont_formatNumberFormat_formatProtection_formatPivotButton_formatQuotePrefix cellStyleIdconstructCellXfmapDxf