/ *
* Copyright ( C ) Ascensio System SIA 2012 - 2021. All rights reserved
*
* https : //www.onlyoffice.com/
*
* Version : 0.0 . 0 ( build : 0 )
* /
/ *
window [ 'AscCommon' ] . g _specialPasteHelper . specialPasteStart && drawingCtx && levelMap [ groupArr [ i ] [ j ] . end + 1 ] . collapsed modelSort . Ref . isEqual ( selection ) ? * /
( function ( window , undefined ) { var AscBrowser = { userAgent : "" , isIE : false , isMacOs : false , isSafariMacOs : false , isAppleDevices : false , isAndroid : false , isMobile : false , isGecko : false , isChrome : false , isOpera : false , isOperaOld : false , isWebkit : false , isSafari : false , isArm : false , isMozilla : false , isRetina : false , isLinuxOS : false , retinaPixelRatio : 1 , isVivaldiLinux : false , isSailfish : false , isEmulateDevicePixelRatio : false , isNeedEmulateUpload : false , chromeVersion : 70 , iosVersion : 13 } ; AscBrowser . userAgent = navigator . userAgent . toLowerCase ( ) ;
AscBrowser . isIE = AscBrowser . userAgent . indexOf ( "msie" ) > - 1 || AscBrowser . userAgent . indexOf ( "trident" ) > - 1 || AscBrowser . userAgent . indexOf ( "edge" ) > - 1 ; AscBrowser . isIeEdge = AscBrowser . userAgent . indexOf ( "edge/" ) > - 1 ; AscBrowser . isIE9 = AscBrowser . userAgent . indexOf ( "msie9" ) > - 1 || AscBrowser . userAgent . indexOf ( "msie 9" ) > - 1 ; AscBrowser . isIE10 = AscBrowser . userAgent . indexOf ( "msie10" ) > - 1 || AscBrowser . userAgent . indexOf ( "msie 10" ) > - 1 ; AscBrowser . isMacOs = AscBrowser . userAgent . indexOf ( "mac" ) > - 1 ; AscBrowser . isChrome = ! AscBrowser . isIE &&
AscBrowser . userAgent . indexOf ( "chrome" ) > - 1 ; if ( AscBrowser . isChrome ) { var checkVersion = AscBrowser . userAgent . match ( /chrom(e|ium)\/([0-9]+)\./ ) ; if ( checkVersion && checkVersion [ 2 ] ) AscBrowser . chromeVersion = parseInt ( checkVersion [ 2 ] , 10 ) } AscBrowser . isSafari = ! AscBrowser . isIE && ! AscBrowser . isChrome && AscBrowser . userAgent . indexOf ( "safari" ) > - 1 ; AscBrowser . isSafariMacOs = AscBrowser . isSafari && AscBrowser . isMacOs ; AscBrowser . isAppleDevices = AscBrowser . userAgent . indexOf ( "ipad" ) > - 1 || AscBrowser . userAgent . indexOf ( "iphone" ) > - 1 ||
AscBrowser . userAgent . indexOf ( "ipod" ) > - 1 ; if ( ! AscBrowser . isAppleDevices && AscBrowser . isSafariMacOs && navigator . platform === "MacIntel" && navigator . maxTouchPoints > 1 ) AscBrowser . isAppleDevices = true ; if ( AscBrowser . isAppleDevices ) { var iosversion = AscBrowser . iosVersion ; try { var v = navigator . appVersion . match ( /OS (\d+)_(\d+)_?(\d+)?/ ) ; if ( ! v ) v = navigator . appVersion . match ( /Version\/(\d+).(\d+)/ ) ; iosversion = parseInt ( v [ 1 ] , 10 ) } catch ( err ) { } AscBrowser . iosVersion = iosversion } AscBrowser . isAndroid = AscBrowser . userAgent . indexOf ( "android" ) >
- 1 ; AscBrowser . isMobile = /android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i . test ( navigator . userAgent || navigator . vendor || window . opera ) ; AscBrowser . isGecko = AscBrowser . userAgent . indexOf ( "gecko/" ) > - 1 ; AscBrowser . isOpera = ! ! window . opera || AscBrowser . userAgent . indexOf ( "opr/" ) > - 1 ; AscBrowser . isOperaOld = ! ! window . opera ;
AscBrowser . isWebkit = ! AscBrowser . isIE && AscBrowser . userAgent . indexOf ( "webkit" ) > - 1 ; AscBrowser . isArm = AscBrowser . userAgent . indexOf ( "arm" ) > - 1 ; AscBrowser . isMozilla = ! AscBrowser . isIE && AscBrowser . userAgent . indexOf ( "firefox" ) > - 1 ; AscBrowser . isLinuxOS = AscBrowser . userAgent . indexOf ( " linux " ) > - 1 ; AscBrowser . isVivaldiLinux = AscBrowser . isLinuxOS && AscBrowser . userAgent . indexOf ( "vivaldi" ) > - 1 ; AscBrowser . isSailfish = AscBrowser . userAgent . indexOf ( "sailfish" ) > - 1 ; AscBrowser . isEmulateDevicePixelRatio = AscBrowser . userAgent . indexOf ( "emulatedevicepixelratio" ) >
- 1 ; AscBrowser . isNeedEmulateUpload = AscBrowser . userAgent . indexOf ( "needemulateupload" ) > - 1 ; AscBrowser . zoom = 1 ; AscBrowser . checkZoom = function ( ) { if ( AscBrowser . isSailfish && AscBrowser . isEmulateDevicePixelRatio ) { var scale = 1 ; if ( screen . width <= 540 ) scale = 1.5 ; else if ( screen . width > 540 && screen . width <= 768 ) scale = 2 ; else if ( screen . width > 768 ) scale = 3 ; AscBrowser . isRetina = scale >= 1.9 ; AscBrowser . retinaPixelRatio = scale ; window . devicePixelRatio = scale ; return } if ( AscBrowser . isAndroid ) { AscBrowser . isRetina = window . devicePixelRatio >=
1.9 ; AscBrowser . retinaPixelRatio = window . devicePixelRatio ; return } AscBrowser . zoom = 1 ; AscBrowser . isRetina = false ; AscBrowser . retinaPixelRatio = 1 ; if ( AscBrowser . isChrome && ! AscBrowser . isOperaOld && ! AscBrowser . isMobile && document && document . firstElementChild && document . body ) { if ( window . devicePixelRatio > . 1 ) if ( window . devicePixelRatio < 1.99 ) { var _devicePixelRatio = 1 ; AscBrowser . zoom = window . devicePixelRatio / _devicePixelRatio } else { var _devicePixelRatio = 2 ; AscBrowser . zoom = window . devicePixelRatio / _devicePixelRatio ; AscBrowser . isRetina =
true } var firstElemStyle = document . firstElementChild . style ; if ( AscBrowser . isMozilla ) if ( window . devicePixelRatio > . 1 ) { firstElemStyle . transformOrigin = "0 0" ; firstElemStyle . transform = "scale(" + 1 / AscBrowser . zoom + ")" ; firstElemStyle . width = AscBrowser . zoom * 100 + "%" ; firstElemStyle . height = AscBrowser . zoom * 100 + "%" } else { firstElemStyle . transformOrigin = "0 0" ; firstElemStyle . transform = "scale(1)" ; firstElemStyle . width = "100%" ; firstElemStyle . height = "100%" } else if ( window . devicePixelRatio > . 1 ) firstElemStyle . zoom = 1 / AscBrowser . zoom ;
else firstElemStyle . zoom = "normal" ; if ( AscBrowser . isRetina ) AscBrowser . retinaPixelRatio = 2 } else { AscBrowser . isRetina = Math . abs ( 2 - window . devicePixelRatio / AscBrowser . zoom ) < . 01 ; if ( AscBrowser . isRetina ) AscBrowser . retinaPixelRatio = 2 ; if ( AscBrowser . isMobile ) { AscBrowser . isRetina = window . devicePixelRatio >= 1.9 ; AscBrowser . retinaPixelRatio = window . devicePixelRatio } } } ; AscBrowser . checkZoom ( ) ; AscBrowser . convertToRetinaValue = function ( value , isScale ) { if ( isScale === true ) return value * AscBrowser . retinaPixelRatio + . 5 >> 0 ; else return value /
AscBrowser . retinaPixelRatio + . 5 >> 0 } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . AscBrowser = AscBrowser } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var g _cCharDelimiter = String . fromCharCode ( 5 ) ; var g _cGeneralFormat = "General" ; var FONT _THUMBNAIL _HEIGHT = 7 * 96 / 25.4 >> 0 ; var c _oAscMaxColumnWidth = 255 ; var c _oAscMaxRowHeight = 409.5 ; var c _nMaxConversionTime = 9E5 ; var c _nMaxDownloadTitleLen = 255 ; var c _nVersionNoBase64 = 10 ; var c _dMaxParaRunContentLength = 256 ; var c _rUneditableTypes = /^(?:(pdf|djvu|xps))$/ ; var c _oAscFileType = { UNKNOWN : 0 , PDF : 513 , PDFA : 2305 , HTML : 2051 , DOCX : 65 , DOC : 66 , ODT : 67 , RTF : 68 , TXT : 69 , MHT : 71 , EPUB : 72 , FB2 : 73 , MOBI : 74 , DOCM : 75 , DOTX : 76 ,
DOTM : 77 , FODT : 78 , OTT : 79 , DOCY : 4097 , CANVAS _WORD : 8193 , JSON : 2056 , XLSX : 257 , XLS : 258 , ODS : 259 , CSV : 260 , XLSM : 261 , XLTX : 262 , XLTM : 263 , FODS : 264 , OTS : 265 , XLSY : 4098 , PPTX : 129 , PPT : 130 , ODP : 131 , PPSX : 132 , PPTM : 133 , PPSM : 134 , POTX : 135 , POTM : 136 , FODP : 137 , OTP : 138 } ; var c _oAscError = { Level : { Critical : - 1 , NoCritical : 0 } , ID : { ServerSaveComplete : 3 , ConvertationProgress : 2 , DownloadProgress : 1 , No : 0 , Unknown : - 1 , ConvertationTimeout : - 2 , DownloadError : - 4 , UnexpectedGuid : - 5 , Database : - 6 , FileRequest : - 7 , FileVKey : - 8 , UplImageSize : - 9 , UplImageExt : - 10 , UplImageFileCount : - 11 ,
NoSupportClipdoard : - 12 , UplImageUrl : - 13 , DirectUrl : - 14 , MaxDataPointsError : - 16 , StockChartError : - 17 , CoAuthoringDisconnect : - 18 , ConvertationPassword : - 19 , VKeyEncrypt : - 20 , KeyExpire : - 21 , UserCountExceed : - 22 , AccessDeny : - 23 , LoadingScriptError : - 24 , EditingError : - 25 , SplitCellMaxRows : - 30 , SplitCellMaxCols : - 31 , SplitCellRowsDivider : - 32 , MobileUnexpectedCharCount : - 35 , MailMergeLoadFile : - 40 , MailMergeSaveFile : - 41 , DataValidate : - 45 , MoreOneTypeDataValidate : - 46 , ContainsCellsWithoutDataValidate : - 47 , AutoFilterDataRangeError : - 50 ,
AutoFilterChangeFormatTableError : - 51 , AutoFilterChangeError : - 52 , AutoFilterMoveToHiddenRangeError : - 53 , LockedAllError : - 54 , LockedWorksheetRename : - 55 , FTChangeTableRangeError : - 56 , FTRangeIncludedOtherTables : - 57 , ChangeFilteredRangeError : - 58 , PasteMaxRangeError : - 64 , PastInMergeAreaError : - 65 , CopyMultiselectAreaError : - 66 , PasteSlicerError : 67 , MoveSlicerError : 68 , PasteMultiSelectError : - 69 , DataRangeError : - 75 , CannotMoveRange : - 74 , ErrorInFormula : - 73 , InvalidReference : - 72 , NoSingleRowCol : - 71 , NoValues : - 70 , MaxDataSeriesError : - 80 ,
CannotFillRange : - 81 , ConvertationOpenError : - 82 , ConvertationSaveError : - 83 , ConvertationOpenLimitError : - 84 , UserDrop : - 100 , Warning : - 101 , UpdateVersion : - 102 , PrintMaxPagesCount : - 110 , SessionAbsolute : - 120 , SessionIdle : - 121 , SessionToken : - 122 , FrmlMaxReference : - 297 , FrmlMaxLength : - 298 , FrmlMaxTextLength : - 299 , FrmlWrongCountParentheses : - 300 , FrmlWrongOperator : - 301 , FrmlWrongMaxArgument : - 302 , FrmlWrongCountArgument : - 303 , FrmlWrongFunctionName : - 304 , FrmlAnotherParsingError : - 305 , FrmlWrongArgumentRange : - 306 , FrmlOperandExpected : - 307 ,
FrmlParenthesesCorrectCount : - 308 , FrmlWrongReferences : - 309 , InvalidReferenceOrName : - 310 , LockCreateDefName : - 311 , LockedCellPivot : - 312 , PivotLabledColumns : - 313 , PivotOverlap : - 314 , ForceSaveButton : - 331 , ForceSaveTimeout : - 332 , OpenWarning : 500 , DataEncrypted : - 600 , CannotChangeFormulaArray : - 450 , MultiCellsInTablesFormulaArray : - 451 , MailToClientMissing : - 452 , NoDataToParse : - 601 , CannotCompareInCoEditing : 651 , CannotUngroupError : - 700 , UplDocumentSize : - 751 , UplDocumentExt : - 752 , UplDocumentFileCount : - 753 , CustomSortMoreOneSelectedError : - 800 ,
CustomSortNotOriginalSelectError : - 801 , DataValidateNotNumeric : - 830 , DataValidateNegativeTextLength : - 831 , DataValidateMustEnterValue : - 832 , DataValidateMinGreaterMax : 833 , DataValidateInvalid : 834 , NamedRangeNotFound : 835 , FormulaEvaluateError : 836 , DataValidateInvalidList : 837 , RemoveDuplicates : - 850 , LargeRangeWarning : - 900 , LockedEditView : - 950 } } ; var c _oAscAsyncAction = { Open : 0 , Save : 1 , LoadDocumentFonts : 2 , LoadDocumentImages : 3 , LoadFont : 4 , LoadImage : 5 , DownloadAs : 6 , Print : 7 , UploadImage : 8 , ApplyChanges : 9 , SlowOperation : 11 , LoadTheme : 12 ,
MailMergeLoadFile : 13 , DownloadMerge : 14 , SendMailMerge : 15 , ForceSaveButton : 16 , ForceSaveTimeout : 17 , Waiting : 18 } ; var c _oAscAdvancedOptionsID = { CSV : 0 , TXT : 1 , DRM : 2 } ; var c _oAscAdvancedOptionsAction = { None : 0 , Open : 1 , Save : 2 } ; var c _oAscRestrictionType = { None : 0 , OnlyForms : 1 , OnlyComments : 2 , OnlySignatures : 4 , View : 128 } ; var c _oAscFontRenderingModeType = { noHinting : 1 , hinting : 2 , hintingAndSubpixeling : 3 } ; var c _oAscAsyncActionType = { Information : 0 , BlockInteraction : 1 } ; var DownloadType = { None : "" , Download : "asc_onDownloadUrl" , Print : "asc_onPrintUrl" ,
MailMerge : "asc_onSaveMailMerge" } ; var CellValueType = { Number : 0 , String : 1 , Bool : 2 , Error : 3 } ; var c _oAscNumFormatType = { None : - 1 , General : 0 , Number : 1 , Scientific : 2 , Accounting : 3 , Currency : 4 , Date : 5 , Time : 6 , Percent : 7 , Fraction : 8 , Text : 9 , Custom : 10 } ; var c _oAscDrawingLayerType = { BringToFront : 0 , SendToBack : 1 , BringForward : 2 , SendBackward : 3 } ; var c _oAscCellAnchorType = { cellanchorAbsolute : 0 , cellanchorOneCell : 1 , cellanchorTwoCell : 2 } ; var c _oAscChartDefines = { defaultChartWidth : 478 , defaultChartHeight : 286 } ; var c _oAscStyleImage = { Default : 0 ,
Document : 1 } ; var c _oAscTypeSelectElement = { Paragraph : 0 , Table : 1 , Image : 2 , Header : 3 , Hyperlink : 4 , SpellCheck : 5 , Shape : 6 , Slide : 7 , Chart : 8 , Math : 9 , MailMerge : 10 , ContentControl : 11 } ; var c _oAscLineDrawingRule = { Left : 0 , Center : 1 , Right : 2 , Top : 0 , Bottom : 2 } ; var align _Right = 0 ; var align _Left = 1 ; var align _Center = 2 ; var align _Justify = 3 ; var linerule _AtLeast = 0 ; var linerule _Auto = 1 ; var linerule _Exact = 2 ; var c _oAscShdClear = 0 ; var c _oAscShdNil = 1 ; var c _oAscShd = { Clear : 0 , Nil : 1 , DiagCross : 2 , DiagStripe : 3 , HorzCross : 4 , HorzStripe : 5 , Pct10 : 6 , Pct12 : 7 ,
Pct15 : 8 , Pct20 : 9 , Pct25 : 10 , Pct30 : 11 , Pct35 : 12 , Pct37 : 13 , Pct40 : 14 , Pct45 : 15 , Pct5 : 16 , Pct50 : 17 , Pct55 : 18 , Pct60 : 19 , Pct62 : 20 , Pct65 : 21 , Pct70 : 22 , Pct75 : 23 , Pct80 : 24 , Pct85 : 25 , Pct87 : 26 , Pct90 : 27 , Pct95 : 28 , ReverseDiagStripe : 29 , Solid : 30 , ThinDiagCross : 31 , ThinDiagStripe : 32 , ThinHorzCross : 33 , ThinHorzStripe : 34 , ThinReverseDiagStripe : 35 , ThinVertStripe : 36 , VertStripe : 37 } ; var vertalign _Baseline = 0 ; var vertalign _SuperScript = 1 ; var vertalign _SubScript = 2 ; var hdrftr _Header = 1 ; var hdrftr _Footer = 2 ; var vaKSize = . 65 ; var vaKSuper = . 35 ; var vaKSub =
- . 141 ; var c _oAscDropCap = { None : 0 , Drop : 1 , Margin : 2 } ; var c _oAscChartTitleShowSettings = { none : 0 , overlay : 1 , noOverlay : 2 } ; var c _oAscChartHorAxisLabelShowSettings = { none : 0 , noOverlay : 1 } ; var c _oAscChartVertAxisLabelShowSettings = { none : 0 , rotated : 1 , vertical : 2 , horizontal : 3 } ; var c _oAscChartLegendShowSettings = { none : 0 , left : 1 , top : 2 , right : 3 , bottom : 4 , leftOverlay : 5 , rightOverlay : 6 , layout : 7 , topRight : 8 } ; var c _oAscChartDataLabelsPos = { none : 0 , b : 1 , bestFit : 2 , ctr : 3 , inBase : 4 , inEnd : 5 , l : 6 , outEnd : 7 , r : 8 , t : 9 } ; var c _oAscGridLinesSettings =
{ none : 0 , major : 1 , minor : 2 , majorMinor : 3 } ; var c _oAscChartTypeSettings = { barNormal : 0 , barStacked : 1 , barStackedPer : 2 , barNormal3d : 3 , barStacked3d : 4 , barStackedPer3d : 5 , barNormal3dPerspective : 6 , lineNormal : 7 , lineStacked : 8 , lineStackedPer : 9 , lineNormalMarker : 10 , lineStackedMarker : 11 , lineStackedPerMarker : 12 , line3d : 13 , pie : 14 , pie3d : 15 , hBarNormal : 16 , hBarStacked : 17 , hBarStackedPer : 18 , hBarNormal3d : 19 , hBarStacked3d : 20 , hBarStackedPer3d : 21 , areaNormal : 22 , areaStacked : 23 , areaStackedPer : 24 , doughnut : 25 , stock : 26 , scatter : 27 , scatterLine : 28 ,
scatterLineMarker : 29 , scatterMarker : 30 , scatterNone : 31 , scatterSmooth : 32 , scatterSmoothMarker : 33 , surfaceNormal : 34 , surfaceWireframe : 35 , contourNormal : 36 , contourWireframe : 37 , unknown : 38 } ; var c _oAscValAxisRule = { auto : 0 , fixed : 1 } ; var c _oAscValAxUnits = { none : 0 , BILLIONS : 1 , HUNDRED _MILLIONS : 2 , HUNDREDS : 3 , HUNDRED _THOUSANDS : 4 , MILLIONS : 5 , TEN _MILLIONS : 6 , TEN _THOUSANDS : 7 , TRILLIONS : 8 , CUSTOM : 9 , THOUSANDS : 10 } ; var c _oAscTickMark = { TICK _MARK _CROSS : 0 , TICK _MARK _IN : 1 , TICK _MARK _NONE : 2 , TICK _MARK _OUT : 3 } ; var c _oAscTickLabelsPos = { TICK _LABEL _POSITION _HIGH : 0 ,
TICK _LABEL _POSITION _LOW : 1 , TICK _LABEL _POSITION _NEXT _TO : 2 , TICK _LABEL _POSITION _NONE : 3 } ; var c _oAscCrossesRule = { auto : 0 , maxValue : 1 , value : 2 , minValue : 3 } ; var c _oAscBetweenLabelsRule = { auto : 0 , manual : 1 } ; var c _oAscLabelsPosition = { byDivisions : 0 , betweenDivisions : 1 } ; var c _oAscAxisType = { auto : 0 , date : 1 , text : 2 , cat : 3 , val : 4 } ; var c _oAscHAnchor = { Margin : 0 , Page : 1 , Text : 2 } ; var c _oAscXAlign = { Center : 0 , Inside : 1 , Left : 2 , Outside : 3 , Right : 4 } ; var c _oAscYAlign = { Bottom : 0 , Center : 1 , Inline : 2 , Inside : 3 , Outside : 4 , Top : 5 } ; var c _oAscVAnchor = { Margin : 0 ,
Page : 1 , Text : 2 } ; var c _oAscRelativeFromH = { Character : 0 , Column : 1 , InsideMargin : 2 , LeftMargin : 3 , Margin : 4 , OutsideMargin : 5 , Page : 6 , RightMargin : 7 } ; var c _oAscSizeRelFromH = { sizerelfromhMargin : 0 , sizerelfromhPage : 1 , sizerelfromhLeftMargin : 2 , sizerelfromhRightMargin : 3 , sizerelfromhInsideMargin : 4 , sizerelfromhOutsideMargin : 5 } ; var c _oAscSizeRelFromV = { sizerelfromvMargin : 0 , sizerelfromvPage : 1 , sizerelfromvTopMargin : 2 , sizerelfromvBottomMargin : 3 , sizerelfromvInsideMargin : 4 , sizerelfromvOutsideMargin : 5 } ; var c _oAscRelativeFromV =
{ BottomMargin : 0 , InsideMargin : 1 , Line : 2 , Margin : 3 , OutsideMargin : 4 , Page : 5 , Paragraph : 6 , TopMargin : 7 } ; var c _oAscWrapStyle = { Inline : 0 , Flow : 1 } ; var c _oAscBorderWidth = { None : 0 , Thin : 1 , Medium : 2 , Thick : 3 } ; var c _oAscBorderStyles = { None : 0 , Double : 1 , Hair : 2 , DashDotDot : 3 , DashDot : 4 , Dotted : 5 , Dashed : 6 , Thin : 7 , MediumDashDotDot : 8 , SlantDashDot : 9 , MediumDashDot : 10 , MediumDashed : 11 , Medium : 12 , Thick : 13 } ; var c _oAscBorderType = { Hor : 1 , Ver : 2 , Diag : 3 } ; var c _oAscPageOrientation = { PagePortrait : 0 , PageLandscape : 1 } ; var c _oAscLockTypes = { kLockTypeNone : 1 ,
kLockTypeMine : 2 , kLockTypeOther : 3 , kLockTypeOther2 : 4 , kLockTypeOther3 : 5 } ; var c _oAscFormatPainterState = { kOff : 0 , kOn : 1 , kMultiple : 2 } ; var c _oAscSaveTypes = { PartStart : 0 , Part : 1 , Complete : 2 , CompleteAll : 3 } ; var c _oAscColor = { COLOR _TYPE _NONE : 0 , COLOR _TYPE _SRGB : 1 , COLOR _TYPE _PRST : 2 , COLOR _TYPE _SCHEME : 3 , COLOR _TYPE _SYS : 4 } ; var c _oAscFill = { FILL _TYPE _NONE : 0 , FILL _TYPE _BLIP : 1 , FILL _TYPE _NOFILL : 2 , FILL _TYPE _SOLID : 3 , FILL _TYPE _GRAD : 4 , FILL _TYPE _PATT : 5 , FILL _TYPE _GRP : 6 } ; var c _oAscChartType = { line : "Line" , bar : "Bar" , hbar : "HBar" , area : "Area" ,
pie : "Pie" , scatter : "Scatter" , stock : "Stock" , doughnut : "Doughnut" } ; var c _oAscChartSubType = { normal : "normal" , stacked : "stacked" , stackedPer : "stackedPer" } ; var c _oAscFillGradType = { GRAD _LINEAR : 1 , GRAD _PATH : 2 } ; var c _oAscFillBlipType = { STRETCH : 1 , TILE : 2 } ; var c _oAscStrokeType = { STROKE _NONE : 0 , STROKE _COLOR : 1 } ; var c _oAscVAlign = { Bottom : 0 , Center : 1 , Dist : 2 , Just : 3 , Top : 4 } ; var c _oAscVertDrawingText = { normal : 1 , vert : 3 , vert270 : 4 } ; var c _oAscLineJoinType = { Round : 1 , Bevel : 2 , Miter : 3 } ; var c _oAscLineCapType = { Flat : 0 , Round : 1 , Square : 2 } ; var c _oAscLineBeginType =
{ None : 0 , Arrow : 1 , Diamond : 2 , Oval : 3 , Stealth : 4 , Triangle : 5 } ; var c _oAscLineBeginSize = { small _small : 0 , small _mid : 1 , small _large : 2 , mid _small : 3 , mid _mid : 4 , mid _large : 5 , large _small : 6 , large _mid : 7 , large _large : 8 } ; var c _oAscCsvDelimiter = { None : 0 , Tab : 1 , Semicolon : 2 , Colon : 3 , Comma : 4 , Space : 5 } ; var c _oAscUrlType = { Invalid : 0 , Http : 1 , Email : 2 } ; var c _oAscCellTextDirection = { LRTB : 0 , TBRL : 1 , BTLR : 2 } ; var c _oAscDocumentUnits = { Millimeter : 0 , Inch : 1 , Point : 2 } ; var c _oAscMouseMoveDataTypes = { Common : 0 , Hyperlink : 1 , LockedObject : 2 , Footnote : 3 , Form : 4 } ;
var c _oAscSelectionType = { RangeCells : 1 , RangeCol : 2 , RangeRow : 3 , RangeMax : 4 , RangeImage : 5 , RangeChart : 6 , RangeShape : 7 , RangeSlicer : 8 , RangeShapeText : 9 , RangeChartText : 10 , RangeFrozen : 11 } ; var c _oAscInsertOptions = { InsertCellsAndShiftRight : 1 , InsertCellsAndShiftDown : 2 , InsertColumns : 3 , InsertRows : 4 , InsertTableRowAbove : 5 , InsertTableRowBelow : 6 , InsertTableColLeft : 7 , InsertTableColRight : 8 } ; var c _oAscDeleteOptions = { DeleteCellsAndShiftLeft : 1 , DeleteCellsAndShiftTop : 2 , DeleteColumns : 3 , DeleteRows : 4 , DeleteTable : 5 } ; var c _oAscPrintDefaultSettings =
{ PageWidth : 210 , PageHeight : 297 , PageOrientation : c _oAscPageOrientation . PagePortrait , PageLeftField : 17.8 , PageRightField : 17.8 , PageTopField : 19.1 , PageBottomField : 19.1 , PageHeaderField : 7.62 , PageFooterField : 7.62 , MinPageLeftField : . 17 , MinPageRightField : . 17 , MinPageTopField : . 17 , MinPageBottomField : . 17 , PageGridLines : false , PageHeadings : false } ; var c _oAscPrintType = { ActiveSheets : 0 , EntireWorkbook : 1 , Selection : 2 } ; var c _oZoomType = { FitToPage : 1 , FitToWidth : 2 , CustomMode : 3 } ; var c _oNotifyType = { Dirty : 0 , Shift : 1 , Move : 2 , Delete : 3 , RenameTableColumn : 4 ,
ChangeDefName : 5 , ChangeSheet : 6 , DelColumnTable : 7 , Prepare : 8 } ; var c _oNotifyParentType = { Change : 0 , ChangeFormula : 1 , EndCalculate : 2 , GetRangeCell : 3 , IsDefName : 4 , Shared : 5 , ProcessNotify : 6 } ; var c _oDashType = { dash : 0 , dashDot : 1 , dot : 2 , lgDash : 3 , lgDashDot : 4 , lgDashDotDot : 5 , solid : 6 , sysDash : 7 , sysDashDot : 8 , sysDashDotDot : 9 , sysDot : 10 } ; var c _oAscMathInterfaceType = { Common : 0 , Fraction : 1 , Script : 2 , Radical : 3 , LargeOperator : 4 , Delimiter : 5 , Function : 6 , Accent : 7 , BorderBox : 8 , Bar : 9 , Box : 10 , Limit : 11 , GroupChar : 12 , Matrix : 13 , EqArray : 14 , Phantom : 15 } ;
var c _oAscMathInterfaceBarPos = { Top : 0 , Bottom : 1 } ; var c _oAscMathInterfaceScript = { None : 0 , Sup : 1 , Sub : 2 , SubSup : 3 , PreSubSup : 4 } ; var c _oAscMathInterfaceFraction = { Bar : 1 , Skewed : 2 , Linear : 3 , NoBar : 4 } ; var c _oAscMathInterfaceLimitPos = { None : - 1 , Top : 0 , Bottom : 1 } ; var c _oAscMathInterfaceMatrixMatrixAlign = { Top : 0 , Center : 1 , Bottom : 2 } ; var c _oAscMathInterfaceMatrixColumnAlign = { Left : 0 , Center : 1 , Right : 2 } ; var c _oAscMathInterfaceEqArrayAlign = { Top : 0 , Center : 1 , Bottom : 2 } ; var c _oAscMathInterfaceNaryLimitLocation = { UndOvr : 0 , SubSup : 1 } ; var c _oAscMathInterfaceGroupCharPos =
{ None : - 1 , Top : 0 , Bottom : 1 } ; var c _oAscTabType = { Bar : 0 , Center : 1 , Clear : 2 , Decimal : 3 , Num : 5 , Right : 7 , Left : 8 } ; var c _oAscTabLeader = { Dot : 0 , Heavy : 1 , Hyphen : 2 , MiddleDot : 3 , None : 4 , Underscore : 5 } ; var c _oAscEncodings = [ [ 0 , 28596 , "ISO-8859-6" , "Arabic (ISO 8859-6)" ] , [ 1 , 720 , "DOS-720" , "Arabic (OEM 720)" ] , [ 2 , 1256 , "windows-1256" , "Arabic (Windows)" ] , [ 3 , 28594 , "ISO-8859-4" , "Baltic (ISO 8859-4)" ] , [ 4 , 28603 , "ISO-8859-13" , "Baltic (ISO 8859-13)" ] , [ 5 , 775 , "IBM775" , "Baltic (OEM 775)" ] , [ 6 , 1257 , "windows-1257" , "Baltic (Windows)" ] , [ 7 , 28604 ,
"ISO-8859-14" , "Celtic (ISO 8859-14)" ] , [ 8 , 28595 , "ISO-8859-5" , "Cyrillic (ISO 8859-5)" ] , [ 9 , 20866 , "KOI8-R" , "Cyrillic (KOI8-R)" ] , [ 10 , 21866 , "KOI8-U" , "Cyrillic (KOI8-U)" ] , [ 11 , 10007 , "x-mac-cyrillic" , "Cyrillic (Mac)" ] , [ 12 , 855 , "IBM855" , "Cyrillic (OEM 855)" ] , [ 13 , 866 , "cp866" , "Cyrillic (OEM 866)" ] , [ 14 , 1251 , "windows-1251" , "Cyrillic (Windows)" ] , [ 15 , 852 , "IBM852" , "Central European (OEM 852)" ] , [ 16 , 1250 , "windows-1250" , "Central European (Windows)" ] , [ 17 , 950 , "Big5" , "Chinese (Big5 Traditional)" ] , [ 18 , 936 , "GB2312" , "Central (GB2312 Simplified)" ] ,
[ 19 , 28592 , "ISO-8859-2" , "Eastern European (ISO 8859-2)" ] , [ 20 , 28597 , "ISO-8859-7" , "Greek (ISO 8859-7)" ] , [ 21 , 737 , "IBM737" , "Greek (OEM 737)" ] , [ 22 , 869 , "IBM869" , "Greek (OEM 869)" ] , [ 23 , 1253 , "windows-1253" , "Greek (Windows)" ] , [ 24 , 28598 , "ISO-8859-8" , "Hebrew (ISO 8859-8)" ] , [ 25 , 862 , "DOS-862" , "Hebrew (OEM 862)" ] , [ 26 , 1255 , "windows-1255" , "Hebrew (Windows)" ] , [ 27 , 932 , "Shift_JIS" , "Japanese (Shift-JIS)" ] , [ 52 , 950 , "EUC-JP" , "Japanese (EUC-JP)" ] , [ 28 , 949 , "KS_C_5601-1987" , "Korean (Windows)" ] , [ 29 , 51949 , "EUC-KR" , "Korean (EUC)" ] ,
[ 30 , 861 , "IBM861" , "North European (Icelandic OEM 861)" ] , [ 31 , 865 , "IBM865" , "North European (Nordic OEM 865)" ] , [ 32 , 874 , "windows-874" , "Thai (TIS-620)" ] , [ 33 , 28593 , "ISO-8859-3" , "Turkish (ISO 8859-3)" ] , [ 34 , 28599 , "ISO-8859-9" , "Turkish (ISO 8859-9)" ] , [ 35 , 857 , "IBM857" , "Turkish (OEM 857)" ] , [ 36 , 1254 , "windows-1254" , "Turkish (Windows)" ] , [ 37 , 28591 , "ISO-8859-1" , "Western European (ISO-8859-1)" ] , [ 38 , 28605 , "ISO-8859-15" , "Western European (ISO-8859-15)" ] , [ 39 , 850 , "IBM850" , "Western European (OEM 850)" ] , [ 40 , 858 , "IBM858" ,
"Western European (OEM 858)" ] , [ 41 , 860 , "IBM860" , "Western European (OEM 860 : Portuguese)" ] , [ 42 , 863 , "IBM863" , "Western European (OEM 863 : French)" ] , [ 43 , 437 , "IBM437" , "Western European (OEM-US)" ] , [ 44 , 1252 , "windows-1252" , "Western European (Windows)" ] , [ 45 , 1258 , "windows-1258" , "Vietnamese (Windows)" ] , [ 46 , 65001 , "UTF-8" , "Unicode (UTF-8)" ] , [ 47 , 65E3 , "UTF-7" , "Unicode (UTF-7)" ] , [ 48 , 1200 , "UTF-16LE" , "Unicode (UTF-16)" ] , [ 49 , 1201 , "UTF-16BE" , "Unicode (UTF-16 Big Endian)" ] , [ 50 , 12E3 , "UTF-32LE" , "Unicode (UTF-32)" ] , [ 51 ,
12001 , "UTF-32BE" , "Unicode (UTF-32 Big Endian)" ] ] ; var c _oAscEncodingsMap = { 437 : 43 , 720 : 1 , 737 : 21 , 775 : 5 , 850 : 39 , 852 : 15 , 855 : 12 , 857 : 35 , 858 : 40 , 860 : 41 , 861 : 30 , 862 : 25 , 863 : 42 , 865 : 31 , 866 : 13 , 869 : 22 , 874 : 32 , 932 : 27 , 936 : 18 , 949 : 28 , 950 : 17 , 1200 : 48 , 1201 : 49 , 1250 : 16 , 1251 : 14 , 1252 : 44 , 1253 : 23 , 1254 : 36 , 1255 : 26 , 1256 : 2 , 1257 : 6 , 1258 : 45 , 10007 : 11 , 12E3 : 50 , 12001 : 51 , 20866 : 9 , 21866 : 10 , 28591 : 37 , 28592 : 19 , 28593 : 33 , 28594 : 3 , 28595 : 8 , 28596 : 0 , 28597 : 20 , 28598 : 24 , 28599 : 34 , 28603 : 4 , 28604 : 7 , 28605 : 38 , 51949 : 29 , 65E3 : 47 , 65001 : 46 } ; var c _oAscCodePageNone = - 1 ;
var c _oAscCodePageUtf7 = 47 ; var c _oAscCodePageUtf8 = 46 ; var c _oAscCodePageUtf16 = 48 ; var c _oAscCodePageUtf16BE = 49 ; var c _oAscCodePageUtf32 = 50 ; var c _oAscCodePageUtf32BE = 51 ; var c _oAscMaxTooltipLength = 256 ; var c _oAscMaxCellOrCommentLength = 32767 ; var c _oAscMaxFormulaLength = 8192 ; var c _oAscMaxHeaderFooterLength = 255 ; var c _oAscMaxFilterListLength = 1E4 ; var c _oAscMaxFormulaReferenceLength = 2048 ; var c _oAscMaxTableColumnTextLength = 256 ; var locktype _None = 1 ; var locktype _Mine = 2 ; var locktype _Other = 3 ; var locktype _Other2 = 4 ; var locktype _Other3 =
5 ; var changestype _None = 0 ; var changestype _Paragraph _Content = 1 ; var changestype _Paragraph _Properties = 2 ; var changestype _Paragraph _AddText = 3 ; var changestype _Paragraph _TextProperties = 4 ; var changestype _Document _Content = 10 ; var changestype _Document _Content _Add = 11 ; var changestype _Document _SectPr = 12 ; var changestype _Document _Styles = 13 ; var changestype _Table _Properties = 20 ; var changestype _Table _RemoveCells = 21 ; var changestype _Image _Properties = 23 ; var changestype _ContentControl _Remove = 24 ; var changestype _ContentControl _Properties =
25 ; var changestype _ContentControl _Add = 26 ; var changestype _HdrFtr = 30 ; var changestype _Remove = 40 ; var changestype _Delete = 41 ; var changestype _Drawing _Props = 51 ; var changestype _ColorScheme = 60 ; var changestype _Text _Props = 61 ; var changestype _RemoveSlide = 62 ; var changestype _PresentationProps = 63 ; var changestype _Theme = 64 ; var changestype _SlideSize = 65 ; var changestype _SlideBg = 66 ; var changestype _SlideTiming = 67 ; var changestype _MoveComment = 68 ; var changestype _AddSp = 69 ; var changestype _AddComment = 70 ; var changestype _Layout =
71 ; var changestype _AddShape = 72 ; var changestype _AddShapes = 73 ; var changestype _PresDefaultLang = 74 ; var changestype _SlideHide = 75 ; var changestype _CorePr = 76 ; var changestype _2 _InlineObjectMove = 1 ; var changestype _2 _HdrFtr = 2 ; var changestype _2 _Comment = 3 ; var changestype _2 _Element _and _Type = 4 ; var changestype _2 _ElementsArray _and _Type = 5 ; var changestype _2 _AdditionalTypes = 6 ; var changestype _2 _Element _and _Type _Array = 7 ; var contentchanges _Add = 1 ; var contentchanges _Remove = 2 ; var PUNCTUATION _FLAG _BASE = 1 ; var PUNCTUATION _FLAG _CANT _BE _AT _BEGIN =
16 ; var PUNCTUATION _FLAG _CANT _BE _AT _END = 32 ; var PUNCTUATION _FLAG _EAST _ASIAN = 256 ; var PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E = 2 ; var PUNCTUATION _FLAG _CANT _BE _AT _END _E = 4 ; var g _aPunctuation = [ ] ; g _aPunctuation [ 33 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 34 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 35 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 36 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 37 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN |
PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 38 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 39 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 40 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 41 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 42 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 43 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 44 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ;
g _aPunctuation [ 45 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 46 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 47 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 58 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 59 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 60 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 61 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 62 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 63 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 64 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 91 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 92 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 93 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 94 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 95 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 96 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 123 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 124 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 125 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 126 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 161 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 162 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 163 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 164 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 165 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 166 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 167 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 168 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 169 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 170 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 171 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 172 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 173 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 174 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 175 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 176 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 177 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 180 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 182 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 183 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 184 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 186 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 187 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 187 ] =
PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 191 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8208 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8209 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8210 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8211 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8212 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8213 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8214 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8215 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8216 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 8217 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8218 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8219 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8220 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 8221 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8222 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8223 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8224 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8225 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8226 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8227 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8228 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8229 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8230 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8231 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8240 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8241 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8242 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8243 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8244 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8245 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8246 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8247 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8248 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8249 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8250 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 8251 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8252 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8253 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8254 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8255 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8256 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8257 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8258 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8259 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8260 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8261 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8262 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8263 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8264 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8265 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8266 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8267 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8268 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8269 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8270 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8271 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8272 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8273 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8274 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8275 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8276 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8277 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 8278 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8279 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8280 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8281 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8282 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8283 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8284 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8285 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 8286 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12289 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12290 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12291 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12292 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12293 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12294 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12295 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12296 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12297 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12298 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ;
g _aPunctuation [ 12299 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12300 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12301 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12302 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12303 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12304 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12305 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12306 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12307 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12308 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12309 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12310 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12311 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12312 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12313 ] = PUNCTUATION _FLAG _BASE ;
g _aPunctuation [ 12314 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12315 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12316 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 12317 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 12318 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 12319 ] = PUNCTUATION _FLAG _BASE ; g _aPunctuation [ 65281 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65282 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65283 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65284 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65285 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65286 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65287 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN |
PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65288 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65289 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65290 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65291 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65292 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65293 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65294 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65295 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65306 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ;
g _aPunctuation [ 65307 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65308 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65309 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65310 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65311 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65312 ] =
PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65339 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65340 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65341 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; g _aPunctuation [ 65342 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65343 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65344 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65371 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END | PUNCTUATION _FLAG _CANT _BE _AT _END _E ; g _aPunctuation [ 65372 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65373 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ;
g _aPunctuation [ 65374 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65375 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65376 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65377 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65378 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65379 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65380 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65381 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65504 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; g _aPunctuation [ 65505 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65506 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65507 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65508 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ;
g _aPunctuation [ 65509 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN | PUNCTUATION _FLAG _CANT _BE _AT _END ; g _aPunctuation [ 65510 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65512 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65513 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65514 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65515 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65516 ] = PUNCTUATION _FLAG _BASE |
PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65517 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; g _aPunctuation [ 65518 ] = PUNCTUATION _FLAG _BASE | PUNCTUATION _FLAG _EAST _ASIAN ; var offlineMode = "_offline_" ; var chartMode = "_chart_" ; var c _oSpecialPasteProps = { paste : 0 , pasteOnlyFormula : 1 , formulaNumberFormat : 2 , formulaAllFormatting : 3 , formulaWithoutBorders : 4 , formulaColumnWidth : 5 , mergeConditionalFormating : 6 , pasteOnlyValues : 7 , valueNumberFormat : 8 , valueAllFormating : 9 , pasteOnlyFormating : 10 , transpose : 11 , link : 12 , picture : 13 ,
linkedPicture : 14 , sourceformatting : 15 , destinationFormatting : 16 , mergeFormatting : 17 , uniteList : 18 , doNotUniteList : 19 , insertAsNestedTable : 20 , uniteIntoTable : 21 , insertAsNewRows : 22 , keepTextOnly : 23 , overwriteCells : 24 , useTextImport : 25 , comments : 26 , columnWidth : 27 } ; var c _oSpecialPasteOperation = { none : 0 , add : 1 , subtract : 2 , multiply : 3 , divide : 4 } ; var c _oAscNumberingFormat = { None : 0 , Bullet : 4097 , Decimal : 8194 , LowerRoman : 8195 , UpperRoman : 8196 , LowerLetter : 8197 , UpperLetter : 8198 , DecimalZero : 8199 , DecimalEnclosedCircle : 8200 , RussianLower : 8201 ,
RussianUpper : 8202 , ChineseCounting : 8449 , ChineseCountingThousand : 8450 , ChineseLegalSimplified : 8451 , BulletFlag : 4096 , NumberedFlag : 8192 } ; var c _oAscNumberingSuff = { Tab : 1 , Space : 2 , None : 3 } ; var c _oAscNumberingLvlTextType = { Text : 0 , Num : 1 } ; var c _oAscSdtAppearance = { Frame : 1 , Hidden : 2 } ; var c _oAscObjectsAlignType = { Selected : 0 , Slide : 1 , Page : 2 , Margin : 3 } ; var c _oAscItemType = { Default : 0 , Avg : 1 , Count : 2 , CountA : 3 , Max : 4 , Min : 5 , Product : 6 , StdDev : 7 , StdDevP : 8 , Sum : 9 , Var : 10 , VarP : 11 , Data : 12 , Grand : 13 , Blank : 14 } ; var c _oAscRevisionsMove = { NoMove : 0 ,
MoveTo : 1 , MoveFrom : 2 } ; var c _oAscRevisionsChangeType = { Unknown : 0 , TextAdd : 1 , TextRem : 2 , ParaAdd : 3 , ParaRem : 4 , TextPr : 5 , ParaPr : 6 , TablePr : 7 , RowsAdd : 8 , RowsRem : 9 , MoveMark : 254 , MoveMarkRemove : 255 } ; var c _oAscSectionBreakType = { NextPage : 0 , OddPage : 1 , EvenPage : 2 , Continuous : 3 , Column : 4 } ; var c _oAscSdtLockType = { ContentLocked : 0 , SdtContentLocked : 1 , SdtLocked : 2 , Unlocked : 3 } ; var c _oAscAlignH = { Center : 0 , Inside : 1 , Left : 2 , Outside : 3 , Right : 4 } ; var c _oAscAlignV = { Bottom : 0 , Center : 1 , Inside : 2 , Outside : 3 , Top : 4 } ; var c _oAscWatermarkType = { None : 0 ,
Text : 1 , Image : 2 } ; var c _oAscCalendarType = { Gregorian : 0 , GregorianArabic : 1 , GregorianMeFrench : 2 , GregorianUs : 3 , GregorianXlitEnglish : 4 , GregorianXlitFrench : 5 , Hebrew : 6 , Hijri : 7 , Japan : 8 , Korea : 9 , None : 10 , Saka : 11 , Taiwan : 12 , Thai : 13 } ; var c _oAscContentControlSpecificType = { None : 0 , CheckBox : 1 , Picture : 2 , ComboBox : 3 , DropDownList : 4 , DateTime : 5 , TOC : 10 } ; var c _oAscDefNameType = { none : 0 , table : 1 , slicer : 2 } ; var g _aLcidNameIdArray = [ "ar" , 1 , "bg" , 2 , "ca" , 3 , "zh-Hans" , 4 , "cs" , 5 , "da" , 6 , "de" , 7 , "el" , 8 , "en" , 9 , "es" , 10 , "fi" , 11 , "fr" , 12 , "he" , 13 , "hu" ,
14 , "is" , 15 , "it" , 16 , "ja" , 17 , "ko" , 18 , "nl" , 19 , "no" , 20 , "pl" , 21 , "pt" , 22 , "rm" , 23 , "ro" , 24 , "ru" , 25 , "hr" , 26 , "sk" , 27 , "sq" , 28 , "sv" , 29 , "th" , 30 , "tr" , 31 , "ur" , 32 , "id" , 33 , "uk" , 34 , "be" , 35 , "sl" , 36 , "et" , 37 , "lv" , 38 , "lt" , 39 , "tg" , 40 , "fa" , 41 , "vi" , 42 , "hy" , 43 , "az" , 44 , "eu" , 45 , "hsb" , 46 , "mk" , 47 , "tn" , 50 , "xh" , 52 , "zu" , 53 , "af" , 54 , "ka" , 55 , "fo" , 56 , "hi" , 57 , "mt" , 58 , "se" , 59 , "ga" , 60 , "ms" , 62 , "kk" , 63 , "ky" , 64 , "sw" , 65 , "tk" , 66 , "uz" , 67 , "tt" , 68 , "bn" , 69 , "pa" , 70 , "gu" , 71 , "or" , 72 , "ta" , 73 , "te" , 74 , "kn" , 75 , "ml" , 76 , "as" , 77 , "mr" , 78 , "sa" , 79 , "mn" , 80 , "bo" ,
81 , "cy" , 82 , "km" , 83 , "lo" , 84 , "gl" , 86 , "kok" , 87 , "syr" , 90 , "si" , 91 , "iu" , 93 , "am" , 94 , "tzm" , 95 , "ne" , 97 , "fy" , 98 , "ps" , 99 , "fil" , 100 , "dv" , 101 , "ha" , 104 , "yo" , 106 , "quz" , 107 , "nso" , 108 , "ba" , 109 , "lb" , 110 , "kl" , 111 , "ig" , 112 , "ii" , 120 , "arn" , 122 , "moh" , 124 , "br" , 126 , "ug" , 128 , "mi" , 129 , "oc" , 130 , "co" , 131 , "gsw" , 132 , "sah" , 133 , "qut" , 134 , "rw" , 135 , "wo" , 136 , "prs" , 140 , "gd" , 145 , "ar-SA" , 1025 , "bg-BG" , 1026 , "ca-ES" , 1027 , "zh-TW" , 1028 , "cs-CZ" , 1029 , "da-DK" , 1030 , "de-DE" , 1031 , "el-GR" , 1032 , "en-US" , 1033 , "es-ES_tradnl" , 1034 , "fi-FI" , 1035 , "fr-FR" ,
1036 , "he-IL" , 1037 , "hu-HU" , 1038 , "is-IS" , 1039 , "it-IT" , 1040 , "ja-JP" , 1041 , "ko-KR" , 1042 , "nl-NL" , 1043 , "nb-NO" , 1044 , "pl-PL" , 1045 , "pt-BR" , 1046 , "rm-CH" , 1047 , "ro-RO" , 1048 , "ru-RU" , 1049 , "hr-HR" , 1050 , "sk-SK" , 1051 , "sq-AL" , 1052 , "sv-SE" , 1053 , "th-TH" , 1054 , "tr-TR" , 1055 , "ur-PK" , 1056 , "id-ID" , 1057 , "uk-UA" , 1058 , "be-BY" , 1059 , "sl-SI" , 1060 , "et-EE" , 1061 , "lv-LV" , 1062 , "lt-LT" , 1063 , "tg-Cyrl-TJ" , 1064 , "fa-IR" , 1065 , "vi-VN" , 1066 , "hy-AM" , 1067 , "az-Latn-AZ" , 1068 , "eu-ES" , 1069 , "wen-DE" , 1070 , "mk-MK" , 1071 , "st-ZA" , 1072 , "ts-ZA" , 1073 , "tn-ZA" ,
1074 , "ven-ZA" , 1075 , "xh-ZA" , 1076 , "zu-ZA" , 1077 , "af-ZA" , 1078 , "ka-GE" , 1079 , "fo-FO" , 1080 , "hi-IN" , 1081 , "mt-MT" , 1082 , "se-NO" , 1083 , "ms-MY" , 1086 , "kk-KZ" , 1087 , "ky-KG" , 1088 , "sw-KE" , 1089 , "tk-TM" , 1090 , "uz-Latn-UZ" , 1091 , "tt-RU" , 1092 , "bn-IN" , 1093 , "pa-IN" , 1094 , "gu-IN" , 1095 , "or-IN" , 1096 , "ta-IN" , 1097 , "te-IN" , 1098 , "kn-IN" , 1099 , "ml-IN" , 1100 , "as-IN" , 1101 , "mr-IN" , 1102 , "sa-IN" , 1103 , "mn-MN" , 1104 , "bo-CN" , 1105 , "cy-GB" , 1106 , "km-KH" , 1107 , "lo-LA" , 1108 , "my-MM" , 1109 , "gl-ES" , 1110 , "kok-IN" , 1111 , "mni" , 1112 , "sd-IN" , 1113 , "syr-SY" , 1114 ,
"si-LK" , 1115 , "chr-US" , 1116 , "iu-Cans-CA" , 1117 , "am-ET" , 1118 , "tmz" , 1119 , "ne-NP" , 1121 , "fy-NL" , 1122 , "ps-AF" , 1123 , "fil-PH" , 1124 , "dv-MV" , 1125 , "bin-NG" , 1126 , "fuv-NG" , 1127 , "ha-Latn-NG" , 1128 , "ibb-NG" , 1129 , "yo-NG" , 1130 , "quz-BO" , 1131 , "nso-ZA" , 1132 , "ba-RU" , 1133 , "lb-LU" , 1134 , "kl-GL" , 1135 , "ig-NG" , 1136 , "kr-NG" , 1137 , "gaz-ET" , 1138 , "ti-ER" , 1139 , "gn-PY" , 1140 , "haw-US" , 1141 , "so-SO" , 1143 , "ii-CN" , 1144 , "pap-AN" , 1145 , "arn-CL" , 1146 , "moh-CA" , 1148 , "br-FR" , 1150 , "ug-CN" , 1152 , "mi-NZ" , 1153 , "oc-FR" , 1154 , "co-FR" , 1155 , "gsw-FR" , 1156 ,
"sah-RU" , 1157 , "qut-GT" , 1158 , "rw-RW" , 1159 , "wo-SN" , 1160 , "prs-AF" , 1164 , "plt-MG" , 1165 , "gd-GB" , 1169 , "ar-IQ" , 2049 , "zh-CN" , 2052 , "de-CH" , 2055 , "en-GB" , 2057 , "es-MX" , 2058 , "fr-BE" , 2060 , "it-CH" , 2064 , "nl-BE" , 2067 , "nn-NO" , 2068 , "pt-PT" , 2070 , "ro-MO" , 2072 , "ru-MO" , 2073 , "sr-Latn-CS" , 2074 , "sv-FI" , 2077 , "ur-IN" , 2080 , "az-Cyrl-AZ" , 2092 , "dsb-DE" , 2094 , "se-SE" , 2107 , "ga-IE" , 2108 , "ms-BN" , 2110 , "uz-Cyrl-UZ" , 2115 , "bn-BD" , 2117 , "pa-PK" , 2118 , "mn-Mong-CN" , 2128 , "bo-BT" , 2129 , "sd-PK" , 2137 , "iu-Latn-CA" , 2141 , "tzm-Latn-DZ" , 2143 , "ne-IN" , 2145 ,
"quz-EC" , 2155 , "ti-ET" , 2163 , "ar-EG" , 3073 , "zh-HK" , 3076 , "de-AT" , 3079 , "en-AU" , 3081 , "es-ES" , 3082 , "fr-CA" , 3084 , "sr-Cyrl-CS" , 3098 , "se-FI" , 3131 , "tmz-MA" , 3167 , "quz-PE" , 3179 , "ar-LY" , 4097 , "zh-SG" , 4100 , "de-LU" , 4103 , "en-CA" , 4105 , "es-GT" , 4106 , "fr-CH" , 4108 , "hr-BA" , 4122 , "smj-NO" , 4155 , "ar-DZ" , 5121 , "zh-MO" , 5124 , "de-LI" , 5127 , "en-NZ" , 5129 , "es-CR" , 5130 , "fr-LU" , 5132 , "bs-Latn-BA" , 5146 , "smj-SE" , 5179 , "ar-MA" , 6145 , "en-IE" , 6153 , "es-PA" , 6154 , "fr-MC" , 6156 , "sr-Latn-BA" , 6170 , "sma-NO" , 6203 , "ar-TN" , 7169 , "en-ZA" , 7177 , "es-DO" , 7178 ,
"fr-West" , 7180 , "sr-Cyrl-BA" , 7194 , "sma-SE" , 7227 , "ar-OM" , 8193 , "en-JM" , 8201 , "es-VE" , 8202 , "fr-RE" , 8204 , "bs-Cyrl-BA" , 8218 , "sms-FI" , 8251 , "ar-YE" , 9217 , "en-CB" , 9225 , "es-CO" , 9226 , "fr-CG" , 9228 , "sr-Latn-RS" , 9242 , "smn-FI" , 9275 , "ar-SY" , 10241 , "en-BZ" , 10249 , "es-PE" , 10250 , "fr-SN" , 10252 , "sr-Cyrl-RS" , 10266 , "ar-JO" , 11265 , "en-TT" , 11273 , "es-AR" , 11274 , "fr-CM" , 11276 , "sr-Latn-ME" , 11290 , "ar-LB" , 12289 , "en-ZW" , 12297 , "es-EC" , 12298 , "fr-CI" , 12300 , "sr-Cyrl-ME" , 12314 , "ar-KW" , 13313 , "en-PH" , 13321 , "es-CL" , 13322 , "fr-ML" , 13324 , "ar-AE" ,
14337 , "en-ID" , 14345 , "es-UY" , 14346 , "fr-MA" , 14348 , "ar-BH" , 15361 , "en-HK" , 15369 , "es-PY" , 15370 , "fr-HT" , 15372 , "ar-QA" , 16385 , "en-IN" , 16393 , "es-BO" , 16394 , "en-MY" , 17417 , "es-SV" , 17418 , "en-SG" , 18441 , "es-HN" , 18442 , "es-NI" , 19466 , "es-PR" , 20490 , "es-US" , 21514 , "bs-Cyrl" , 25626 , "bs-Latn" , 26650 , "sr-Cyrl" , 27674 , "sr-Latn" , 28698 , "smn" , 28731 , "az-Cyrl" , 29740 , "sms" , 29755 , "zh" , 30724 , "nn" , 30740 , "bs" , 30746 , "az-Latn" , 30764 , "sma" , 30779 , "uz-Cyrl" , 30787 , "mn-Cyrl" , 30800 , "iu-Cans" , 30813 , "zh-Hant" , 31748 , "nb" , 31764 , "sr" , 31770 , "tg-Cyrl" ,
31784 , "dsb" , 31790 , "smj" , 31803 , "uz-Latn" , 31811 , "mn-Mong" , 31824 , "iu-Latn" , 31837 , "tzm-Latn" , 31839 , "ha-Latn" , 31848 ] ; var g _oLcidNameToIdMap = { } ; var g _oLcidIdToNameMap = { } ; for ( var i = 0 , length = g _aLcidNameIdArray . length ; i + 1 < length ; i += 2 ) { var name = g _aLcidNameIdArray [ i ] ; var id = g _aLcidNameIdArray [ i + 1 ] ; g _oLcidNameToIdMap [ name ] = id ; g _oLcidIdToNameMap [ id ] = name } var document _compatibility _mode _Word11 = 11 ; var document _compatibility _mode _Word12 = 12 ; var document _compatibility _mode _Word14 = 14 ; var document _compatibility _mode _Word15 =
15 ; var document _compatibility _mode _Current = document _compatibility _mode _Word12 ; var c _oAscCustomShortcutType = { Symbol : 1 } ; var c _oAscLineNumberRestartType = { Continuous : 1 , NewPage : 2 , NewSection : 3 } ; var c _oAscSectionApplyType = { Current : 0 , ToEnd : 1 , All : 2 } ; var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "Asc" ] [ "FONT_THUMBNAIL_HEIGHT" ] = FONT _THUMBNAIL _HEIGHT ; window [ "Asc" ] [ "c_oAscMaxColumnWidth" ] = window [ "Asc" ] . c _oAscMaxColumnWidth = c _oAscMaxColumnWidth ; window [ "Asc" ] [ "c_oAscMaxRowHeight" ] = window [ "Asc" ] . c _oAscMaxRowHeight =
c _oAscMaxRowHeight ; window [ "Asc" ] [ "c_nMaxConversionTime" ] = window [ "Asc" ] . c _nMaxConversionTime = c _nMaxConversionTime ; window [ "Asc" ] [ "c_nMaxDownloadTitleLen" ] = window [ "Asc" ] . c _nMaxDownloadTitleLen = c _nMaxDownloadTitleLen ; window [ "Asc" ] [ "c_nVersionNoBase64" ] = window [ "Asc" ] . c _nVersionNoBase64 = c _nVersionNoBase64 ; window [ "Asc" ] [ "c_dMaxParaRunContentLength" ] = window [ "Asc" ] . c _dMaxParaRunContentLength = c _dMaxParaRunContentLength ; window [ "Asc" ] [ "c_rUneditableTypes" ] = window [ "Asc" ] . c _rUneditableTypes = c _rUneditableTypes ;
window [ "Asc" ] [ "c_oAscFileType" ] = window [ "Asc" ] . c _oAscFileType = c _oAscFileType ; window [ "Asc" ] . g _oLcidNameToIdMap = g _oLcidNameToIdMap ; window [ "Asc" ] . g _oLcidIdToNameMap = g _oLcidIdToNameMap ; prot = c _oAscFileType ; prot [ "UNKNOWN" ] = prot . UNKNOWN ; prot [ "PDF" ] = prot . PDF ; prot [ "PDFA" ] = prot . PDFA ; prot [ "HTML" ] = prot . HTML ; prot [ "DOCX" ] = prot . DOCX ; prot [ "DOC" ] = prot . DOC ; prot [ "ODT" ] = prot . ODT ; prot [ "RTF" ] = prot . RTF ; prot [ "TXT" ] = prot . TXT ; prot [ "MHT" ] = prot . MHT ; prot [ "EPUB" ] = prot . EPUB ; prot [ "FB2" ] = prot . FB2 ; prot [ "MOBI" ] = prot . MOBI ; prot [ "DOCM" ] =
prot . DOCM ; prot [ "DOTX" ] = prot . DOTX ; prot [ "DOTM" ] = prot . DOTM ; prot [ "FODT" ] = prot . FODT ; prot [ "OTT" ] = prot . OTT ; prot [ "DOCY" ] = prot . DOCY ; prot [ "JSON" ] = prot . JSON ; prot [ "XLSX" ] = prot . XLSX ; prot [ "XLS" ] = prot . XLS ; prot [ "ODS" ] = prot . ODS ; prot [ "CSV" ] = prot . CSV ; prot [ "XLSM" ] = prot . XLSM ; prot [ "XLTX" ] = prot . XLTX ; prot [ "XLTM" ] = prot . XLTM ; prot [ "FODS" ] = prot . FODS ; prot [ "OTS" ] = prot . OTS ; prot [ "XLSY" ] = prot . XLSY ; prot [ "PPTX" ] = prot . PPTX ; prot [ "PPT" ] = prot . PPT ; prot [ "ODP" ] = prot . ODP ; prot [ "PPSX" ] = prot . PPSX ; prot [ "PPTM" ] = prot . PPTM ; prot [ "PPSM" ] = prot . PPSM ;
prot [ "POTX" ] = prot . POTX ; prot [ "POTM" ] = prot . POTM ; prot [ "FODP" ] = prot . FODP ; prot [ "OTP" ] = prot . OTP ; window [ "Asc" ] [ "c_oAscError" ] = window [ "Asc" ] . c _oAscError = c _oAscError ; prot = c _oAscError ; prot [ "Level" ] = prot . Level ; prot [ "ID" ] = prot . ID ; prot = c _oAscError . Level ; prot [ "Critical" ] = prot . Critical ; prot [ "NoCritical" ] = prot . NoCritical ; prot = c _oAscError . ID ; prot [ "ServerSaveComplete" ] = prot . ServerSaveComplete ; prot [ "ConvertationProgress" ] = prot . ConvertationProgress ; prot [ "DownloadProgress" ] = prot . DownloadProgress ; prot [ "No" ] = prot . No ; prot [ "Unknown" ] =
prot . Unknown ; prot [ "ConvertationTimeout" ] = prot . ConvertationTimeout ; prot [ "DownloadError" ] = prot . DownloadError ; prot [ "UnexpectedGuid" ] = prot . UnexpectedGuid ; prot [ "Database" ] = prot . Database ; prot [ "FileRequest" ] = prot . FileRequest ; prot [ "FileVKey" ] = prot . FileVKey ; prot [ "UplImageSize" ] = prot . UplImageSize ; prot [ "UplImageExt" ] = prot . UplImageExt ; prot [ "UplImageFileCount" ] = prot . UplImageFileCount ; prot [ "NoSupportClipdoard" ] = prot . NoSupportClipdoard ; prot [ "UplImageUrl" ] = prot . UplImageUrl ; prot [ "DirectUrl" ] = prot . DirectUrl ; prot [ "MaxDataPointsError" ] =
prot . MaxDataPointsError ; prot [ "StockChartError" ] = prot . StockChartError ; prot [ "CoAuthoringDisconnect" ] = prot . CoAuthoringDisconnect ; prot [ "ConvertationPassword" ] = prot . ConvertationPassword ; prot [ "VKeyEncrypt" ] = prot . VKeyEncrypt ; prot [ "KeyExpire" ] = prot . KeyExpire ; prot [ "UserCountExceed" ] = prot . UserCountExceed ; prot [ "AccessDeny" ] = prot . AccessDeny ; prot [ "LoadingScriptError" ] = prot . LoadingScriptError ; prot [ "EditingError" ] = prot . EditingError ; prot [ "SplitCellMaxRows" ] = prot . SplitCellMaxRows ; prot [ "SplitCellMaxCols" ] = prot . SplitCellMaxCols ;
prot [ "SplitCellRowsDivider" ] = prot . SplitCellRowsDivider ; prot [ "MobileUnexpectedCharCount" ] = prot . MobileUnexpectedCharCount ; prot [ "MailMergeLoadFile" ] = prot . MailMergeLoadFile ; prot [ "MailMergeSaveFile" ] = prot . MailMergeSaveFile ; prot [ "DataValidate" ] = prot . DataValidate ; prot [ "MoreOneTypeDataValidate" ] = prot . MoreOneTypeDataValidate ; prot [ "ContainsCellsWithoutDataValidate" ] = prot . ContainsCellsWithoutDataValidate ; prot [ "AutoFilterDataRangeError" ] = prot . AutoFilterDataRangeError ; prot [ "AutoFilterChangeFormatTableError" ] =
prot . AutoFilterChangeFormatTableError ; prot [ "AutoFilterChangeError" ] = prot . AutoFilterChangeError ; prot [ "AutoFilterMoveToHiddenRangeError" ] = prot . AutoFilterMoveToHiddenRangeError ; prot [ "LockedAllError" ] = prot . LockedAllError ; prot [ "LockedWorksheetRename" ] = prot . LockedWorksheetRename ; prot [ "FTChangeTableRangeError" ] = prot . FTChangeTableRangeError ; prot [ "FTRangeIncludedOtherTables" ] = prot . FTRangeIncludedOtherTables ; prot [ "ChangeFilteredRangeError" ] = prot . ChangeFilteredRangeError ; prot [ "PasteMaxRangeError" ] = prot . PasteMaxRangeError ;
prot [ "PastInMergeAreaError" ] = prot . PastInMergeAreaError ; prot [ "CopyMultiselectAreaError" ] = prot . CopyMultiselectAreaError ; prot [ "PasteSlicerError" ] = prot . PasteSlicerError ; prot [ "MoveSlicerError" ] = prot . MoveSlicerError ; prot [ "PasteMultiSelectError" ] = prot . PasteMultiSelectError ; prot [ "DataRangeError" ] = prot . DataRangeError ; prot [ "CannotMoveRange" ] = prot . CannotMoveRange ; prot [ "MaxDataSeriesError" ] = prot . MaxDataSeriesError ; prot [ "CannotFillRange" ] = prot . CannotFillRange ; prot [ "ConvertationOpenError" ] = prot . ConvertationOpenError ;
prot [ "ConvertationSaveError" ] = prot . ConvertationSaveError ; prot [ "ConvertationOpenLimitError" ] = prot . ConvertationOpenLimitError ; prot [ "UserDrop" ] = prot . UserDrop ; prot [ "Warning" ] = prot . Warning ; prot [ "UpdateVersion" ] = prot . UpdateVersion ; prot [ "PrintMaxPagesCount" ] = prot . PrintMaxPagesCount ; prot [ "SessionAbsolute" ] = prot . SessionAbsolute ; prot [ "SessionIdle" ] = prot . SessionIdle ; prot [ "SessionToken" ] = prot . SessionToken ; prot [ "FrmlMaxTextLength" ] = prot . FrmlMaxTextLength ; prot [ "FrmlMaxLength" ] = prot . FrmlMaxLength ; prot [ "FrmlMaxReference" ] =
prot . FrmlMaxReference ; prot [ "FrmlWrongCountParentheses" ] = prot . FrmlWrongCountParentheses ; prot [ "FrmlWrongOperator" ] = prot . FrmlWrongOperator ; prot [ "FrmlWrongMaxArgument" ] = prot . FrmlWrongMaxArgument ; prot [ "FrmlWrongCountArgument" ] = prot . FrmlWrongCountArgument ; prot [ "FrmlWrongFunctionName" ] = prot . FrmlWrongFunctionName ; prot [ "FrmlAnotherParsingError" ] = prot . FrmlAnotherParsingError ; prot [ "FrmlWrongArgumentRange" ] = prot . FrmlWrongArgumentRange ; prot [ "FrmlOperandExpected" ] = prot . FrmlOperandExpected ; prot [ "FrmlParenthesesCorrectCount" ] =
prot . FrmlParenthesesCorrectCount ; prot [ "FrmlWrongReferences" ] = prot . FrmlWrongReferences ; prot [ "InvalidReferenceOrName" ] = prot . InvalidReferenceOrName ; prot [ "LockCreateDefName" ] = prot . LockCreateDefName ; prot [ "LockedCellPivot" ] = prot . LockedCellPivot ; prot [ "PivotLabledColumns" ] = prot . PivotLabledColumns ; prot [ "PivotOverlap" ] = prot . PivotOverlap ; prot [ "ForceSaveButton" ] = prot . ForceSaveButton ; prot [ "ForceSaveTimeout" ] = prot . ForceSaveTimeout ; prot [ "CannotChangeFormulaArray" ] = prot . CannotChangeFormulaArray ; prot [ "MultiCellsInTablesFormulaArray" ] =
prot . MultiCellsInTablesFormulaArray ; prot [ "MailToClientMissing" ] = prot . MailToClientMissing ; prot [ "OpenWarning" ] = prot . OpenWarning ; prot [ "DataEncrypted" ] = prot . DataEncrypted ; prot [ "NoDataToParse" ] = prot . NoDataToParse ; prot [ "CannotCompareInCoEditing" ] = prot . CannotCompareInCoEditing ; prot [ "CannotUngroupError" ] = prot . CannotUngroupError ; prot [ "UplDocumentSize" ] = prot . UplDocumentSize ; prot [ "UplDocumentExt" ] = prot . UplDocumentExt ; prot [ "UplDocumentFileCount" ] = prot . UplDocumentFileCount ; prot [ "CustomSortMoreOneSelectedError" ] =
prot . CustomSortMoreOneSelectedError ; prot [ "CustomSortNotOriginalSelectError" ] = prot . CustomSortNotOriginalSelectError ; prot [ "RemoveDuplicates" ] = prot . RemoveDuplicates ; prot [ "LargeRangeWarning" ] = prot . LargeRangeWarning ; prot [ "LockedEditView" ] = prot . LockedEditView ; prot [ "DataValidateNotNumeric" ] = prot . DataValidateNotNumeric ; prot [ "DataValidateNegativeTextLength" ] = prot . DataValidateNegativeTextLength ; prot [ "DataValidateMustEnterValue" ] = prot . DataValidateMustEnterValue ; prot [ "DataValidateMinGreaterMax" ] = prot . DataValidateMinGreaterMax ;
prot [ "DataValidateInvalid" ] = prot . DataValidateInvalid ; prot [ "NamedRangeNotFound" ] = prot . NamedRangeNotFound ; prot [ "FormulaEvaluateError" ] = prot . FormulaEvaluateError ; prot [ "DataValidateInvalidList" ] = prot . DataValidateInvalidList ; window [ "Asc" ] [ "c_oAscAsyncAction" ] = window [ "Asc" ] . c _oAscAsyncAction = c _oAscAsyncAction ; prot = c _oAscAsyncAction ; prot [ "Open" ] = prot . Open ; prot [ "Save" ] = prot . Save ; prot [ "LoadDocumentFonts" ] = prot . LoadDocumentFonts ; prot [ "LoadDocumentImages" ] = prot . LoadDocumentImages ; prot [ "LoadFont" ] = prot . LoadFont ;
prot [ "LoadImage" ] = prot . LoadImage ; prot [ "DownloadAs" ] = prot . DownloadAs ; prot [ "Print" ] = prot . Print ; prot [ "UploadImage" ] = prot . UploadImage ; prot [ "ApplyChanges" ] = prot . ApplyChanges ; prot [ "SlowOperation" ] = prot . SlowOperation ; prot [ "LoadTheme" ] = prot . LoadTheme ; prot [ "MailMergeLoadFile" ] = prot . MailMergeLoadFile ; prot [ "DownloadMerge" ] = prot . DownloadMerge ; prot [ "SendMailMerge" ] = prot . SendMailMerge ; prot [ "ForceSaveButton" ] = prot . ForceSaveButton ; prot [ "ForceSaveTimeout" ] = prot . ForceSaveTimeout ; window [ "Asc" ] [ "c_oAscAdvancedOptionsID" ] =
window [ "Asc" ] . c _oAscAdvancedOptionsID = c _oAscAdvancedOptionsID ; prot = c _oAscAdvancedOptionsID ; prot [ "CSV" ] = prot . CSV ; prot [ "TXT" ] = prot . TXT ; prot [ "DRM" ] = prot . DRM ; window [ "Asc" ] [ "c_oAscFontRenderingModeType" ] = window [ "Asc" ] . c _oAscFontRenderingModeType = c _oAscFontRenderingModeType ; prot = c _oAscFontRenderingModeType ; prot [ "noHinting" ] = prot . noHinting ; prot [ "hinting" ] = prot . hinting ; prot [ "hintingAndSubpixeling" ] = prot . hintingAndSubpixeling ; window [ "Asc" ] [ "c_oAscAsyncActionType" ] = window [ "Asc" ] . c _oAscAsyncActionType = c _oAscAsyncActionType ;
prot = c _oAscAsyncActionType ; prot [ "Information" ] = prot . Information ; prot [ "BlockInteraction" ] = prot . BlockInteraction ; window [ "Asc" ] [ "c_oAscNumFormatType" ] = window [ "Asc" ] . c _oAscNumFormatType = c _oAscNumFormatType ; prot = c _oAscNumFormatType ; prot [ "None" ] = prot . None ; prot [ "General" ] = prot . General ; prot [ "Number" ] = prot . Number ; prot [ "Scientific" ] = prot . Scientific ; prot [ "Accounting" ] = prot . Accounting ; prot [ "Currency" ] = prot . Currency ; prot [ "Date" ] = prot . Date ; prot [ "Time" ] = prot . Time ; prot [ "Percent" ] = prot . Percent ; prot [ "Fraction" ] = prot . Fraction ;
prot [ "Text" ] = prot . Text ; prot [ "Custom" ] = prot . Custom ; window [ "Asc" ] [ "c_oAscDrawingLayerType" ] = c _oAscDrawingLayerType ; prot = c _oAscDrawingLayerType ; prot [ "BringToFront" ] = prot . BringToFront ; prot [ "SendToBack" ] = prot . SendToBack ; prot [ "BringForward" ] = prot . BringForward ; prot [ "SendBackward" ] = prot . SendBackward ; window [ "Asc" ] [ "c_oAscTypeSelectElement" ] = window [ "Asc" ] . c _oAscTypeSelectElement = c _oAscTypeSelectElement ; prot = c _oAscTypeSelectElement ; prot [ "Paragraph" ] = prot . Paragraph ; prot [ "Table" ] = prot . Table ; prot [ "Image" ] = prot . Image ;
prot [ "Header" ] = prot . Header ; prot [ "Hyperlink" ] = prot . Hyperlink ; prot [ "SpellCheck" ] = prot . SpellCheck ; prot [ "Shape" ] = prot . Shape ; prot [ "Slide" ] = prot . Slide ; prot [ "Chart" ] = prot . Chart ; prot [ "Math" ] = prot . Math ; prot [ "MailMerge" ] = prot . MailMerge ; window [ "Asc" ] [ "linerule_AtLeast" ] = window [ "Asc" ] . linerule _AtLeast = linerule _AtLeast ; window [ "Asc" ] [ "linerule_Auto" ] = window [ "Asc" ] . linerule _Auto = linerule _Auto ; window [ "Asc" ] [ "linerule_Exact" ] = window [ "Asc" ] . linerule _Exact = linerule _Exact ; window [ "Asc" ] [ "c_oAscShdClear" ] = window [ "Asc" ] . c _oAscShdClear =
c _oAscShdClear ; window [ "Asc" ] [ "c_oAscShdNil" ] = window [ "Asc" ] . c _oAscShdNil = c _oAscShdNil ; window [ "Asc" ] [ "c_oAscShd" ] = window [ "Asc" ] . c _oAscShd = c _oAscShd ; prot = c _oAscShd ; prot [ "Clear" ] = prot . Clear ; prot [ "Nil" ] = prot . Nil ; prot [ "DiagCross" ] = prot . DiagCross ; prot [ "DiagStripe" ] = prot . DiagStripe ; prot [ "HorzCross" ] = prot . HorzCross ; prot [ "HorzStripe" ] = prot . HorzStripe ; prot [ "Pct10" ] = prot . Pct10 ; prot [ "Pct12" ] = prot . Pct12 ; prot [ "Pct15" ] = prot . Pct15 ; prot [ "Pct20" ] = prot . Pct20 ; prot [ "Pct25" ] = prot . Pct25 ; prot [ "Pct30" ] = prot . Pct30 ; prot [ "Pct35" ] =
prot . Pct35 ; prot [ "Pct37" ] = prot . Pct37 ; prot [ "Pct40" ] = prot . Pct40 ; prot [ "Pct45" ] = prot . Pct45 ; prot [ "Pct5" ] = prot . Pct5 ; prot [ "Pct50" ] = prot . Pct50 ; prot [ "Pct55" ] = prot . Pct55 ; prot [ "Pct60" ] = prot . Pct60 ; prot [ "Pct62" ] = prot . Pct62 ; prot [ "Pct65" ] = prot . Pct65 ; prot [ "Pct70" ] = prot . Pct70 ; prot [ "Pct75" ] = prot . Pct75 ; prot [ "Pct80" ] = prot . Pct80 ; prot [ "Pct85" ] = prot . Pct85 ; prot [ "Pct87" ] = prot . Pct87 ; prot [ "Pct90" ] = prot . Pct90 ; prot [ "Pct95" ] = prot . Pct95 ; prot [ "ReverseDiagStripe" ] = prot . ReverseDiagStripe ; prot [ "Solid" ] = prot . Solid ; prot [ "ThinDiagCross" ] =
prot . ThinDiagCross ; prot [ "ThinDiagStripe" ] = prot . ThinDiagStripe ; prot [ "ThinHorzCross" ] = prot . ThinHorzCross ; prot [ "ThinHorzStripe" ] = prot . ThinHorzStripe ; prot [ "ThinReverseDiagStripe" ] = prot . ThinReverseDiagStripe ; prot [ "ThinVertStripe" ] = prot . ThinVertStripe ; prot [ "VertStripe" ] = prot . VertStripe ; window [ "Asc" ] [ "c_oAscDropCap" ] = window [ "Asc" ] . c _oAscDropCap = c _oAscDropCap ; prot = c _oAscDropCap ; prot [ "None" ] = prot . None ; prot [ "Drop" ] = prot . Drop ; prot [ "Margin" ] = prot . Margin ; window [ "Asc" ] [ "c_oAscChartTitleShowSettings" ] = window [ "Asc" ] . c _oAscChartTitleShowSettings =
c _oAscChartTitleShowSettings ; prot = c _oAscChartTitleShowSettings ; prot [ "none" ] = prot . none ; prot [ "overlay" ] = prot . overlay ; prot [ "noOverlay" ] = prot . noOverlay ; window [ "Asc" ] [ "c_oAscChartHorAxisLabelShowSettings" ] = window [ "Asc" ] . c _oAscChartHorAxisLabelShowSettings = c _oAscChartHorAxisLabelShowSettings ; prot = c _oAscChartHorAxisLabelShowSettings ; prot [ "none" ] = prot . none ; prot [ "noOverlay" ] = prot . noOverlay ; window [ "Asc" ] [ "c_oAscChartVertAxisLabelShowSettings" ] = window [ "Asc" ] . c _oAscChartVertAxisLabelShowSettings = c _oAscChartVertAxisLabelShowSettings ;
prot = c _oAscChartVertAxisLabelShowSettings ; prot [ "none" ] = prot . none ; prot [ "rotated" ] = prot . rotated ; prot [ "vertical" ] = prot . vertical ; prot [ "horizontal" ] = prot . horizontal ; window [ "Asc" ] [ "c_oAscChartLegendShowSettings" ] = window [ "Asc" ] . c _oAscChartLegendShowSettings = c _oAscChartLegendShowSettings ; prot = c _oAscChartLegendShowSettings ; prot [ "none" ] = prot . none ; prot [ "left" ] = prot . left ; prot [ "top" ] = prot . top ; prot [ "right" ] = prot . right ; prot [ "bottom" ] = prot . bottom ; prot [ "leftOverlay" ] = prot . leftOverlay ; prot [ "rightOverlay" ] = prot . rightOverlay ;
prot [ "layout" ] = prot . layout ; prot [ "topRight" ] = prot . topRight ; window [ "Asc" ] [ "c_oAscChartDataLabelsPos" ] = window [ "Asc" ] . c _oAscChartDataLabelsPos = c _oAscChartDataLabelsPos ; prot = c _oAscChartDataLabelsPos ; prot [ "none" ] = prot . none ; prot [ "b" ] = prot . b ; prot [ "bestFit" ] = prot . bestFit ; prot [ "ctr" ] = prot . ctr ; prot [ "inBase" ] = prot . inBase ; prot [ "inEnd" ] = prot . inEnd ; prot [ "l" ] = prot . l ; prot [ "outEnd" ] = prot . outEnd ; prot [ "r" ] = prot . r ; prot [ "t" ] = prot . t ; window [ "Asc" ] [ "c_oAscGridLinesSettings" ] = window [ "Asc" ] . c _oAscGridLinesSettings = c _oAscGridLinesSettings ;
prot = c _oAscGridLinesSettings ; prot [ "none" ] = prot . none ; prot [ "major" ] = prot . major ; prot [ "minor" ] = prot . minor ; prot [ "majorMinor" ] = prot . majorMinor ; window [ "Asc" ] [ "c_oAscChartTypeSettings" ] = window [ "Asc" ] . c _oAscChartTypeSettings = c _oAscChartTypeSettings ; prot = c _oAscChartTypeSettings ; prot [ "barNormal" ] = prot . barNormal ; prot [ "barStacked" ] = prot . barStacked ; prot [ "barStackedPer" ] = prot . barStackedPer ; prot [ "barNormal3d" ] = prot . barNormal3d ; prot [ "barStacked3d" ] = prot . barStacked3d ; prot [ "barStackedPer3d" ] = prot . barStackedPer3d ; prot [ "barNormal3dPerspective" ] =
prot . barNormal3dPerspective ; prot [ "lineNormal" ] = prot . lineNormal ; prot [ "lineStacked" ] = prot . lineStacked ; prot [ "lineStackedPer" ] = prot . lineStackedPer ; prot [ "lineNormalMarker" ] = prot . lineNormalMarker ; prot [ "lineStackedMarker" ] = prot . lineStackedMarker ; prot [ "lineStackedPerMarker" ] = prot . lineStackedPerMarker ; prot [ "line3d" ] = prot . line3d ; prot [ "pie" ] = prot . pie ; prot [ "pie3d" ] = prot . pie3d ; prot [ "hBarNormal" ] = prot . hBarNormal ; prot [ "hBarStacked" ] = prot . hBarStacked ; prot [ "hBarStackedPer" ] = prot . hBarStackedPer ; prot [ "hBarNormal3d" ] =
prot . hBarNormal3d ; prot [ "hBarStacked3d" ] = prot . hBarStacked3d ; prot [ "hBarStackedPer3d" ] = prot . hBarStackedPer3d ; prot [ "areaNormal" ] = prot . areaNormal ; prot [ "areaStacked" ] = prot . areaStacked ; prot [ "areaStackedPer" ] = prot . areaStackedPer ; prot [ "doughnut" ] = prot . doughnut ; prot [ "stock" ] = prot . stock ; prot [ "scatter" ] = prot . scatter ; prot [ "scatterLine" ] = prot . scatterLine ; prot [ "scatterLineMarker" ] = prot . scatterLineMarker ; prot [ "scatterMarker" ] = prot . scatterMarker ; prot [ "scatterNone" ] = prot . scatterNone ; prot [ "scatterSmooth" ] = prot . scatterSmooth ;
prot [ "scatterSmoothMarker" ] = prot . scatterSmoothMarker ; prot [ "unknown" ] = prot . unknown ; window [ "Asc" ] [ "c_oAscValAxisRule" ] = window [ "Asc" ] . c _oAscValAxisRule = c _oAscValAxisRule ; prot = c _oAscValAxisRule ; prot [ "auto" ] = prot . auto ; prot [ "fixed" ] = prot . fixed ; window [ "Asc" ] [ "c_oAscValAxUnits" ] = window [ "Asc" ] . c _oAscValAxUnits = c _oAscValAxUnits ; prot = c _oAscValAxUnits ; prot [ "none" ] = prot . none ; prot [ "BILLIONS" ] = prot . BILLIONS ; prot [ "HUNDRED_MILLIONS" ] = prot . HUNDRED _MILLIONS ; prot [ "HUNDREDS" ] = prot . HUNDREDS ; prot [ "HUNDRED_THOUSANDS" ] = prot . HUNDRED _THOUSANDS ;
prot [ "MILLIONS" ] = prot . MILLIONS ; prot [ "TEN_MILLIONS" ] = prot . TEN _MILLIONS ; prot [ "TEN_THOUSANDS" ] = prot . TEN _THOUSANDS ; prot [ "TRILLIONS" ] = prot . TRILLIONS ; prot [ "CUSTOM" ] = prot . CUSTOM ; prot [ "THOUSANDS" ] = prot . THOUSANDS ; window [ "Asc" ] [ "c_oAscTickMark" ] = window [ "Asc" ] . c _oAscTickMark = c _oAscTickMark ; prot = c _oAscTickMark ; prot [ "TICK_MARK_CROSS" ] = prot . TICK _MARK _CROSS ; prot [ "TICK_MARK_IN" ] = prot . TICK _MARK _IN ; prot [ "TICK_MARK_NONE" ] = prot . TICK _MARK _NONE ; prot [ "TICK_MARK_OUT" ] = prot . TICK _MARK _OUT ; window [ "Asc" ] [ "c_oAscTickLabelsPos" ] =
window [ "Asc" ] . c _oAscTickLabelsPos = c _oAscTickLabelsPos ; prot = c _oAscTickLabelsPos ; prot [ "TICK_LABEL_POSITION_HIGH" ] = prot . TICK _LABEL _POSITION _HIGH ; prot [ "TICK_LABEL_POSITION_LOW" ] = prot . TICK _LABEL _POSITION _LOW ; prot [ "TICK_LABEL_POSITION_NEXT_TO" ] = prot . TICK _LABEL _POSITION _NEXT _TO ; prot [ "TICK_LABEL_POSITION_NONE" ] = prot . TICK _LABEL _POSITION _NONE ; window [ "Asc" ] [ "c_oAscCrossesRule" ] = window [ "Asc" ] . c _oAscCrossesRule = c _oAscCrossesRule ; prot = c _oAscCrossesRule ; prot [ "auto" ] = prot . auto ; prot [ "maxValue" ] = prot . maxValue ; prot [ "value" ] =
prot . value ; prot [ "minValue" ] = prot . minValue ; window [ "Asc" ] [ "c_oAscBetweenLabelsRule" ] = window [ "Asc" ] . c _oAscBetweenLabelsRule = c _oAscBetweenLabelsRule ; prot = c _oAscBetweenLabelsRule ; prot [ "auto" ] = prot . auto ; prot [ "manual" ] = prot . manual ; window [ "Asc" ] [ "c_oAscLabelsPosition" ] = window [ "Asc" ] . c _oAscLabelsPosition = c _oAscLabelsPosition ; prot = c _oAscLabelsPosition ; prot [ "byDivisions" ] = prot . byDivisions ; prot [ "betweenDivisions" ] = prot . betweenDivisions ; window [ "Asc" ] [ "c_oAscAxisType" ] = window [ "Asc" ] . c _oAscAxisType = c _oAscAxisType ;
prot = c _oAscAxisType ; prot [ "auto" ] = prot . auto ; prot [ "date" ] = prot . date ; prot [ "text" ] = prot . text ; prot [ "cat" ] = prot . cat ; prot [ "val" ] = prot . val ; window [ "Asc" ] [ "c_oAscHAnchor" ] = window [ "Asc" ] . c _oAscHAnchor = c _oAscHAnchor ; prot = c _oAscHAnchor ; prot [ "Margin" ] = prot . Margin ; prot [ "Page" ] = prot . Page ; prot [ "Text" ] = prot . Text ; window [ "Asc" ] [ "c_oAscXAlign" ] = window [ "Asc" ] . c _oAscXAlign = c _oAscXAlign ; prot = c _oAscXAlign ; prot [ "Center" ] = prot . Center ; prot [ "Inside" ] = prot . Inside ; prot [ "Left" ] = prot . Left ; prot [ "Outside" ] = prot . Outside ; prot [ "Right" ] =
prot . Right ; window [ "Asc" ] [ "c_oAscYAlign" ] = window [ "Asc" ] . c _oAscYAlign = c _oAscYAlign ; prot = c _oAscYAlign ; prot [ "Bottom" ] = prot . Bottom ; prot [ "Center" ] = prot . Center ; prot [ "Inline" ] = prot . Inline ; prot [ "Inside" ] = prot . Inside ; prot [ "Outside" ] = prot . Outside ; prot [ "Top" ] = prot . Top ; window [ "Asc" ] [ "c_oAscVAnchor" ] = window [ "Asc" ] . c _oAscVAnchor = c _oAscVAnchor ; prot = c _oAscVAnchor ; prot [ "Margin" ] = prot . Margin ; prot [ "Page" ] = prot . Page ; prot [ "Text" ] = prot . Text ; window [ "Asc" ] [ "c_oAscRelativeFromH" ] = window [ "Asc" ] . c _oAscRelativeFromH = c _oAscRelativeFromH ;
prot = c _oAscRelativeFromH ; prot [ "Character" ] = prot . Character ; prot [ "Column" ] = prot . Column ; prot [ "InsideMargin" ] = prot . InsideMargin ; prot [ "LeftMargin" ] = prot . LeftMargin ; prot [ "Margin" ] = prot . Margin ; prot [ "OutsideMargin" ] = prot . OutsideMargin ; prot [ "Page" ] = prot . Page ; prot [ "RightMargin" ] = prot . RightMargin ; window [ "Asc" ] [ "c_oAscRelativeFromV" ] = window [ "Asc" ] . c _oAscRelativeFromV = c _oAscRelativeFromV ; prot = c _oAscRelativeFromV ; prot [ "BottomMargin" ] = prot . BottomMargin ; prot [ "InsideMargin" ] = prot . InsideMargin ; prot [ "Line" ] = prot . Line ;
prot [ "Margin" ] = prot . Margin ; prot [ "OutsideMargin" ] = prot . OutsideMargin ; prot [ "Page" ] = prot . Page ; prot [ "Paragraph" ] = prot . Paragraph ; prot [ "TopMargin" ] = prot . TopMargin ; window [ "Asc" ] [ "c_oAscBorderStyles" ] = window [ "AscCommon" ] . c _oAscBorderStyles = c _oAscBorderStyles ; prot = c _oAscBorderStyles ; prot [ "None" ] = prot . None ; prot [ "Double" ] = prot . Double ; prot [ "Hair" ] = prot . Hair ; prot [ "DashDotDot" ] = prot . DashDotDot ; prot [ "DashDot" ] = prot . DashDot ; prot [ "Dotted" ] = prot . Dotted ; prot [ "Dashed" ] = prot . Dashed ; prot [ "Thin" ] = prot . Thin ; prot [ "MediumDashDotDot" ] =
prot . MediumDashDotDot ; prot [ "SlantDashDot" ] = prot . SlantDashDot ; prot [ "MediumDashDot" ] = prot . MediumDashDot ; prot [ "MediumDashed" ] = prot . MediumDashed ; prot [ "Medium" ] = prot . Medium ; prot [ "Thick" ] = prot . Thick ; window [ "Asc" ] [ "c_oAscPageOrientation" ] = window [ "Asc" ] . c _oAscPageOrientation = c _oAscPageOrientation ; prot = c _oAscPageOrientation ; prot [ "PagePortrait" ] = prot . PagePortrait ; prot [ "PageLandscape" ] = prot . PageLandscape ; window [ "Asc" ] [ "c_oAscColor" ] = window [ "Asc" ] . c _oAscColor = c _oAscColor ; prot = c _oAscColor ; prot [ "COLOR_TYPE_NONE" ] =
prot . COLOR _TYPE _NONE ; prot [ "COLOR_TYPE_SRGB" ] = prot . COLOR _TYPE _SRGB ; prot [ "COLOR_TYPE_PRST" ] = prot . COLOR _TYPE _PRST ; prot [ "COLOR_TYPE_SCHEME" ] = prot . COLOR _TYPE _SCHEME ; prot [ "COLOR_TYPE_SYS" ] = prot . COLOR _TYPE _SYS ; window [ "Asc" ] [ "c_oAscFill" ] = window [ "Asc" ] . c _oAscFill = c _oAscFill ; prot = c _oAscFill ; prot [ "FILL_TYPE_NONE" ] = prot . FILL _TYPE _NONE ; prot [ "FILL_TYPE_BLIP" ] = prot . FILL _TYPE _BLIP ; prot [ "FILL_TYPE_NOFILL" ] = prot . FILL _TYPE _NOFILL ; prot [ "FILL_TYPE_SOLID" ] = prot . FILL _TYPE _SOLID ; prot [ "FILL_TYPE_GRAD" ] = prot . FILL _TYPE _GRAD ;
prot [ "FILL_TYPE_PATT" ] = prot . FILL _TYPE _PATT ; prot [ "FILL_TYPE_GRP" ] = prot . FILL _TYPE _GRP ; window [ "Asc" ] [ "c_oAscFillGradType" ] = window [ "Asc" ] . c _oAscFillGradType = c _oAscFillGradType ; prot = c _oAscFillGradType ; prot [ "GRAD_LINEAR" ] = prot . GRAD _LINEAR ; prot [ "GRAD_PATH" ] = prot . GRAD _PATH ; window [ "Asc" ] [ "c_oAscFillBlipType" ] = window [ "Asc" ] . c _oAscFillBlipType = c _oAscFillBlipType ; prot = c _oAscFillBlipType ; prot [ "STRETCH" ] = prot . STRETCH ; prot [ "TILE" ] = prot . TILE ; window [ "Asc" ] [ "c_oAscStrokeType" ] = window [ "Asc" ] . c _oAscStrokeType = c _oAscStrokeType ;
prot = c _oAscStrokeType ; prot [ "STROKE_NONE" ] = prot . STROKE _NONE ; prot [ "STROKE_COLOR" ] = prot . STROKE _COLOR ; window [ "Asc" ] [ "c_oAscVAlign" ] = window [ "Asc" ] . c _oAscVAlign = c _oAscVAlign ; prot = c _oAscVAlign ; prot [ "Bottom" ] = prot . Bottom ; prot [ "Center" ] = prot . Center ; prot [ "Dist" ] = prot . Dist ; prot [ "Just" ] = prot . Just ; prot [ "Top" ] = prot . Top ; window [ "Asc" ] [ "c_oAscVertDrawingText" ] = c _oAscVertDrawingText ; prot = c _oAscVertDrawingText ; prot [ "normal" ] = prot . normal ; prot [ "vert" ] = prot . vert ; prot [ "vert270" ] = prot . vert270 ; window [ "Asc" ] [ "c_oAscLineJoinType" ] =
c _oAscLineJoinType ; prot = c _oAscLineJoinType ; prot [ "Round" ] = prot . Round ; prot [ "Bevel" ] = prot . Bevel ; prot [ "Miter" ] = prot . Miter ; window [ "Asc" ] [ "c_oAscLineCapType" ] = c _oAscLineCapType ; prot = c _oAscLineCapType ; prot [ "Flat" ] = prot . Flat ; prot [ "Round" ] = prot . Round ; prot [ "Square" ] = prot . Square ; window [ "Asc" ] [ "c_oAscLineBeginType" ] = c _oAscLineBeginType ; prot = c _oAscLineBeginType ; prot [ "None" ] = prot . None ; prot [ "Arrow" ] = prot . Arrow ; prot [ "Diamond" ] = prot . Diamond ; prot [ "Oval" ] = prot . Oval ; prot [ "Stealth" ] = prot . Stealth ; prot [ "Triangle" ] = prot . Triangle ;
window [ "Asc" ] [ "c_oAscLineBeginSize" ] = c _oAscLineBeginSize ; prot = c _oAscLineBeginSize ; prot [ "small_small" ] = prot . small _small ; prot [ "small_mid" ] = prot . small _mid ; prot [ "small_large" ] = prot . small _large ; prot [ "mid_small" ] = prot . mid _small ; prot [ "mid_mid" ] = prot . mid _mid ; prot [ "mid_large" ] = prot . mid _large ; prot [ "large_small" ] = prot . large _small ; prot [ "large_mid" ] = prot . large _mid ; prot [ "large_large" ] = prot . large _large ; window [ "Asc" ] [ "c_oAscCellTextDirection" ] = window [ "Asc" ] . c _oAscCellTextDirection = c _oAscCellTextDirection ; prot = c _oAscCellTextDirection ;
prot [ "LRTB" ] = prot . LRTB ; prot [ "TBRL" ] = prot . TBRL ; prot [ "BTLR" ] = prot . BTLR ; window [ "Asc" ] [ "c_oAscDocumentUnits" ] = window [ "Asc" ] . c _oAscDocumentUnits = c _oAscDocumentUnits ; prot = c _oAscDocumentUnits ; prot [ "Millimeter" ] = prot . Millimeter ; prot [ "Inch" ] = prot . Inch ; prot [ "Point" ] = prot . Point ; window [ "Asc" ] [ "c_oAscMouseMoveDataTypes" ] = window [ "Asc" ] . c _oAscMouseMoveDataTypes = c _oAscMouseMoveDataTypes ; prot = c _oAscMouseMoveDataTypes ; prot [ "Common" ] = prot . Common ; prot [ "Hyperlink" ] = prot . Hyperlink ; prot [ "LockedObject" ] = prot . LockedObject ;
prot [ "Footnote" ] = prot . Footnote ; prot [ "Form" ] = prot . Form ; window [ "Asc" ] [ "c_oAscMaxTooltipLength" ] = window [ "Asc" ] . c _oAscMaxTooltipLength = c _oAscMaxTooltipLength ; window [ "Asc" ] [ "c_oAscMaxCellOrCommentLength" ] = window [ "Asc" ] . c _oAscMaxCellOrCommentLength = c _oAscMaxCellOrCommentLength ; window [ "Asc" ] [ "c_oAscMaxHeaderFooterLength" ] = window [ "Asc" ] . c _oAscMaxHeaderFooterLength = c _oAscMaxHeaderFooterLength ; window [ "Asc" ] [ "c_oAscMaxFilterListLength" ] = window [ "Asc" ] . c _oAscMaxFilterListLength = c _oAscMaxFilterListLength ; window [ "Asc" ] [ "c_oAscSelectionType" ] =
window [ "Asc" ] . c _oAscSelectionType = c _oAscSelectionType ; prot = c _oAscSelectionType ; prot [ "RangeCells" ] = prot . RangeCells ; prot [ "RangeCol" ] = prot . RangeCol ; prot [ "RangeRow" ] = prot . RangeRow ; prot [ "RangeMax" ] = prot . RangeMax ; prot [ "RangeImage" ] = prot . RangeImage ; prot [ "RangeChart" ] = prot . RangeChart ; prot [ "RangeShape" ] = prot . RangeShape ; prot [ "RangeSlicer" ] = prot . RangeSlicer ; prot [ "RangeShapeText" ] = prot . RangeShapeText ; prot [ "RangeChartText" ] = prot . RangeChartText ; prot [ "RangeFrozen" ] = prot . RangeFrozen ; window [ "Asc" ] [ "c_oAscInsertOptions" ] =
window [ "Asc" ] . c _oAscInsertOptions = c _oAscInsertOptions ; prot = c _oAscInsertOptions ; prot [ "InsertCellsAndShiftRight" ] = prot . InsertCellsAndShiftRight ; prot [ "InsertCellsAndShiftDown" ] = prot . InsertCellsAndShiftDown ; prot [ "InsertColumns" ] = prot . InsertColumns ; prot [ "InsertRows" ] = prot . InsertRows ; prot [ "InsertTableRowAbove" ] = prot . InsertTableRowAbove ; prot [ "InsertTableRowBelow" ] = prot . InsertTableRowBelow ; prot [ "InsertTableColLeft" ] = prot . InsertTableColLeft ; prot [ "InsertTableColRight" ] = prot . InsertTableColRight ; window [ "Asc" ] [ "c_oAscDeleteOptions" ] =
window [ "Asc" ] . c _oAscDeleteOptions = c _oAscDeleteOptions ; prot = c _oAscDeleteOptions ; prot [ "DeleteCellsAndShiftLeft" ] = prot . DeleteCellsAndShiftLeft ; prot [ "DeleteCellsAndShiftTop" ] = prot . DeleteCellsAndShiftTop ; prot [ "DeleteColumns" ] = prot . DeleteColumns ; prot [ "DeleteRows" ] = prot . DeleteRows ; prot [ "DeleteTable" ] = prot . DeleteTable ; window [ "Asc" ] [ "c_oAscPrintType" ] = window [ "Asc" ] . c _oAscPrintType = c _oAscPrintType ; prot = c _oAscPrintType ; prot [ "ActiveSheets" ] = prot . ActiveSheets ; prot [ "EntireWorkbook" ] = prot . EntireWorkbook ; prot [ "Selection" ] =
prot . Selection ; window [ "Asc" ] [ "c_oDashType" ] = window [ "Asc" ] . c _oDashType = c _oDashType ; prot = c _oDashType ; prot [ "dash" ] = prot . dash ; prot [ "dashDot" ] = prot . dashDot ; prot [ "dot" ] = prot . dot ; prot [ "lgDash" ] = prot . lgDash ; prot [ "lgDashDot" ] = prot . lgDashDot ; prot [ "lgDashDotDot" ] = prot . lgDashDotDot ; prot [ "solid" ] = prot . solid ; prot [ "sysDash" ] = prot . sysDash ; prot [ "sysDashDot" ] = prot . sysDashDot ; prot [ "sysDashDotDot" ] = prot . sysDashDotDot ; prot [ "sysDot" ] = prot . sysDot ; window [ "Asc" ] [ "c_oAscMathInterfaceType" ] = window [ "Asc" ] . c _oAscMathInterfaceType =
c _oAscMathInterfaceType ; prot = c _oAscMathInterfaceType ; prot [ "Common" ] = prot . Common ; prot [ "Fraction" ] = prot . Fraction ; prot [ "Script" ] = prot . Script ; prot [ "Radical" ] = prot . Radical ; prot [ "LargeOperator" ] = prot . LargeOperator ; prot [ "Delimiter" ] = prot . Delimiter ; prot [ "Function" ] = prot . Function ; prot [ "Accent" ] = prot . Accent ; prot [ "BorderBox" ] = prot . BorderBox ; prot [ "Bar" ] = prot . Bar ; prot [ "Box" ] = prot . Box ; prot [ "Limit" ] = prot . Limit ; prot [ "GroupChar" ] = prot . GroupChar ; prot [ "Matrix" ] = prot . Matrix ; prot [ "EqArray" ] = prot . EqArray ; prot [ "Phantom" ] =
prot . Phantom ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceBarPos" ] = window [ "Asc" ] . c _oAscMathInterfaceBarPos = c _oAscMathInterfaceBarPos ; prot [ "Top" ] = c _oAscMathInterfaceBarPos . Top ; prot [ "Bottom" ] = c _oAscMathInterfaceBarPos . Bottom ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceScript" ] = window [ "Asc" ] . c _oAscMathInterfaceScript = c _oAscMathInterfaceScript ; prot [ "None" ] = c _oAscMathInterfaceScript . None ; prot [ "Sup" ] = c _oAscMathInterfaceScript . Sup ; prot [ "Sub" ] = c _oAscMathInterfaceScript . Sub ; prot [ "SubSup" ] = c _oAscMathInterfaceScript . SubSup ;
prot [ "PreSubSup" ] = c _oAscMathInterfaceScript . PreSubSup ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceFraction" ] = window [ "Asc" ] . c _oAscMathInterfaceFraction = c _oAscMathInterfaceFraction ; prot [ "None" ] = c _oAscMathInterfaceFraction . Bar ; prot [ "Skewed" ] = c _oAscMathInterfaceFraction . Skewed ; prot [ "Linear" ] = c _oAscMathInterfaceFraction . Linear ; prot [ "NoBar" ] = c _oAscMathInterfaceFraction . NoBar ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceLimitPos" ] = window [ "Asc" ] . c _oAscMathInterfaceLimitPos = c _oAscMathInterfaceLimitPos ; prot [ "None" ] = c _oAscMathInterfaceLimitPos . None ;
prot [ "Top" ] = c _oAscMathInterfaceLimitPos . Top ; prot [ "Bottom" ] = c _oAscMathInterfaceLimitPos . Bottom ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceMatrixMatrixAlign" ] = window [ "Asc" ] . c _oAscMathInterfaceMatrixMatrixAlign = c _oAscMathInterfaceMatrixMatrixAlign ; prot [ "Top" ] = c _oAscMathInterfaceMatrixMatrixAlign . Top ; prot [ "Center" ] = c _oAscMathInterfaceMatrixMatrixAlign . Center ; prot [ "Bottom" ] = c _oAscMathInterfaceMatrixMatrixAlign . Bottom ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceMatrixColumnAlign" ] = window [ "Asc" ] . c _oAscMathInterfaceMatrixColumnAlign =
c _oAscMathInterfaceMatrixColumnAlign ; prot [ "Left" ] = c _oAscMathInterfaceMatrixColumnAlign . Left ; prot [ "Center" ] = c _oAscMathInterfaceMatrixColumnAlign . Center ; prot [ "Right" ] = c _oAscMathInterfaceMatrixColumnAlign . Right ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceEqArrayAlign" ] = window [ "Asc" ] . c _oAscMathInterfaceEqArrayAlign = c _oAscMathInterfaceEqArrayAlign ; prot [ "Top" ] = c _oAscMathInterfaceEqArrayAlign . Top ; prot [ "Center" ] = c _oAscMathInterfaceEqArrayAlign . Center ; prot [ "Bottom" ] = c _oAscMathInterfaceEqArrayAlign . Bottom ; prot =
window [ "Asc" ] [ "c_oAscMathInterfaceNaryLimitLocation" ] = window [ "Asc" ] . c _oAscMathInterfaceNaryLimitLocation = c _oAscMathInterfaceNaryLimitLocation ; prot [ "UndOvr" ] = c _oAscMathInterfaceNaryLimitLocation . UndOvr ; prot [ "SubSup" ] = c _oAscMathInterfaceNaryLimitLocation . SubSup ; prot = window [ "Asc" ] [ "c_oAscMathInterfaceGroupCharPos" ] = window [ "Asc" ] . c _oAscMathInterfaceGroupCharPos = c _oAscMathInterfaceGroupCharPos ; prot [ "None" ] = c _oAscMathInterfaceGroupCharPos . None ; prot [ "Top" ] = c _oAscMathInterfaceGroupCharPos . Top ; prot [ "Bottom" ] =
c _oAscMathInterfaceGroupCharPos . Bottom ; prot = window [ "Asc" ] [ "c_oAscTabLeader" ] = window [ "Asc" ] . c _oAscTabLeader = c _oAscTabLeader ; prot [ "None" ] = c _oAscTabLeader . None ; prot [ "Heavy" ] = c _oAscTabLeader . Heavy ; prot [ "Dot" ] = c _oAscTabLeader . Dot ; prot [ "Hyphen" ] = c _oAscTabLeader . Hyphen ; prot [ "MiddleDot" ] = c _oAscTabLeader . MiddleDot ; prot [ "Underscore" ] = c _oAscTabLeader . Underscore ; prot = window [ "Asc" ] [ "c_oAscTabType" ] = window [ "Asc" ] . c _oAscTabType = c _oAscTabType ; prot [ "Bar" ] = c _oAscTabType . Bar ; prot [ "Center" ] = c _oAscTabType . Center ; prot [ "Clear" ] =
c _oAscTabType . Clear ; prot [ "Decimal" ] = c _oAscTabType . Decimal ; prot [ "Num" ] = c _oAscTabType . Num ; prot [ "Right" ] = c _oAscTabType . Right ; prot [ "Left" ] = c _oAscTabType . Left ; prot = window [ "Asc" ] [ "c_oAscRestrictionType" ] = window [ "Asc" ] . c _oAscRestrictionType = c _oAscRestrictionType ; prot [ "None" ] = c _oAscRestrictionType . None ; prot [ "OnlyForms" ] = c _oAscRestrictionType . OnlyForms ; prot [ "OnlyComments" ] = c _oAscRestrictionType . OnlyComments ; prot [ "OnlySignatures" ] = c _oAscRestrictionType . OnlySignatures ; prot [ "View" ] = c _oAscRestrictionType . View ;
prot = window [ "AscCommon" ] [ "c_oAscCellAnchorType" ] = window [ "AscCommon" ] . c _oAscCellAnchorType = c _oAscCellAnchorType ; prot [ "cellanchorAbsolute" ] = prot . cellanchorAbsolute ; prot [ "cellanchorOneCell" ] = prot . cellanchorOneCell ; prot [ "cellanchorTwoCell" ] = prot . cellanchorTwoCell ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . g _cCharDelimiter = g _cCharDelimiter ; window [ "AscCommon" ] . g _cGeneralFormat = g _cGeneralFormat ; window [ "AscCommon" ] . bDate1904 = false ; window [ "AscCommon" ] . c _oAscAdvancedOptionsAction = c _oAscAdvancedOptionsAction ;
window [ "AscCommon" ] . DownloadType = DownloadType ; window [ "AscCommon" ] . CellValueType = CellValueType ; window [ "AscCommon" ] . c _oAscChartDefines = c _oAscChartDefines ; window [ "AscCommon" ] . c _oAscStyleImage = c _oAscStyleImage ; window [ "AscCommon" ] . c _oAscLineDrawingRule = c _oAscLineDrawingRule ; window [ "AscCommon" ] . vertalign _Baseline = vertalign _Baseline ; window [ "AscCommon" ] . vertalign _SuperScript = vertalign _SuperScript ; window [ "AscCommon" ] . vertalign _SubScript = vertalign _SubScript ; window [ "AscCommon" ] . hdrftr _Header = hdrftr _Header ; window [ "AscCommon" ] . hdrftr _Footer =
hdrftr _Footer ; window [ "AscCommon" ] . vaKSize = vaKSize ; window [ "AscCommon" ] . vaKSuper = vaKSuper ; window [ "AscCommon" ] . vaKSub = vaKSub ; window [ "AscCommon" ] . c _oAscSizeRelFromH = c _oAscSizeRelFromH ; window [ "AscCommon" ] . c _oAscSizeRelFromV = c _oAscSizeRelFromV ; window [ "AscCommon" ] . c _oAscWrapStyle = c _oAscWrapStyle ; window [ "AscCommon" ] . c _oAscBorderWidth = c _oAscBorderWidth ; window [ "AscCommon" ] . c _oAscBorderType = c _oAscBorderType ; window [ "AscCommon" ] . c _oAscLockTypes = c _oAscLockTypes ; window [ "AscCommon" ] . c _oAscFormatPainterState = c _oAscFormatPainterState ;
window [ "AscCommon" ] . c _oAscSaveTypes = c _oAscSaveTypes ; window [ "AscCommon" ] . c _oAscChartType = c _oAscChartType ; window [ "AscCommon" ] . c _oAscChartSubType = c _oAscChartSubType ; window [ "AscCommon" ] . c _oAscCsvDelimiter = c _oAscCsvDelimiter ; window [ "AscCommon" ] . c _oAscUrlType = c _oAscUrlType ; window [ "AscCommon" ] . c _oAscPrintDefaultSettings = c _oAscPrintDefaultSettings ; window [ "AscCommon" ] . c _oZoomType = c _oZoomType ; window [ "AscCommon" ] . c _oNotifyType = c _oNotifyType ; window [ "AscCommon" ] . c _oNotifyParentType = c _oNotifyParentType ; window [ "AscCommon" ] . c _oAscEncodings =
c _oAscEncodings ; window [ "AscCommon" ] . c _oAscEncodingsMap = c _oAscEncodingsMap ; window [ "AscCommon" ] . c _oAscCodePageNone = c _oAscCodePageNone ; window [ "AscCommon" ] . c _oAscCodePageUtf7 = c _oAscCodePageUtf7 ; window [ "AscCommon" ] . c _oAscCodePageUtf8 = c _oAscCodePageUtf8 ; window [ "AscCommon" ] . c _oAscCodePageUtf16 = c _oAscCodePageUtf16 ; window [ "AscCommon" ] . c _oAscCodePageUtf16BE = c _oAscCodePageUtf16BE ; window [ "AscCommon" ] . c _oAscCodePageUtf32 = c _oAscCodePageUtf32 ; window [ "AscCommon" ] . c _oAscCodePageUtf32BE = c _oAscCodePageUtf32BE ; window [ "AscCommon" ] . c _oAscMaxFormulaLength =
c _oAscMaxFormulaLength ; window [ "AscCommon" ] . c _oAscMaxFormulaReferenceLength = c _oAscMaxFormulaReferenceLength ; window [ "AscCommon" ] . c _oAscMaxTableColumnTextLength = c _oAscMaxTableColumnTextLength ; window [ "AscCommon" ] . locktype _None = locktype _None ; window [ "AscCommon" ] . locktype _Mine = locktype _Mine ; window [ "AscCommon" ] . locktype _Other = locktype _Other ; window [ "AscCommon" ] . locktype _Other2 = locktype _Other2 ; window [ "AscCommon" ] . locktype _Other3 = locktype _Other3 ; window [ "AscCommon" ] . changestype _None = changestype _None ; window [ "AscCommon" ] . changestype _Paragraph _Content =
changestype _Paragraph _Content ; window [ "AscCommon" ] . changestype _Paragraph _Properties = changestype _Paragraph _Properties ; window [ "AscCommon" ] . changestype _Paragraph _AddText = changestype _Paragraph _AddText ; window [ "AscCommon" ] . changestype _Paragraph _TextProperties = changestype _Paragraph _TextProperties ; window [ "AscCommon" ] . changestype _Document _Content = changestype _Document _Content ; window [ "AscCommon" ] . changestype _Document _Content _Add = changestype _Document _Content _Add ; window [ "AscCommon" ] . changestype _Document _SectPr =
changestype _Document _SectPr ; window [ "AscCommon" ] . changestype _Document _Styles = changestype _Document _Styles ; window [ "AscCommon" ] . changestype _Table _Properties = changestype _Table _Properties ; window [ "AscCommon" ] . changestype _Table _RemoveCells = changestype _Table _RemoveCells ; window [ "AscCommon" ] . changestype _Image _Properties = changestype _Image _Properties ; window [ "AscCommon" ] . changestype _ContentControl _Remove = changestype _ContentControl _Remove ; window [ "AscCommon" ] . changestype _ContentControl _Properties = changestype _ContentControl _Properties ;
window [ "AscCommon" ] . changestype _ContentControl _Add = changestype _ContentControl _Add ; window [ "AscCommon" ] . changestype _HdrFtr = changestype _HdrFtr ; window [ "AscCommon" ] . changestype _Remove = changestype _Remove ; window [ "AscCommon" ] . changestype _Delete = changestype _Delete ; window [ "AscCommon" ] . changestype _Drawing _Props = changestype _Drawing _Props ; window [ "AscCommon" ] . changestype _ColorScheme = changestype _ColorScheme ; window [ "AscCommon" ] . changestype _Text _Props = changestype _Text _Props ; window [ "AscCommon" ] . changestype _RemoveSlide =
changestype _RemoveSlide ; window [ "AscCommon" ] . changestype _Theme = changestype _Theme ; window [ "AscCommon" ] . changestype _SlideSize = changestype _SlideSize ; window [ "AscCommon" ] . changestype _SlideBg = changestype _SlideBg ; window [ "AscCommon" ] . changestype _SlideTiming = changestype _SlideTiming ; window [ "AscCommon" ] . changestype _MoveComment = changestype _MoveComment ; window [ "AscCommon" ] . changestype _AddComment = changestype _AddComment ; window [ "AscCommon" ] . changestype _Layout = changestype _Layout ; window [ "AscCommon" ] . changestype _AddShape =
changestype _AddShape ; window [ "AscCommon" ] . changestype _AddShapes = changestype _AddShapes ; window [ "AscCommon" ] . changestype _PresDefaultLang = changestype _PresDefaultLang ; window [ "AscCommon" ] . changestype _SlideHide = changestype _SlideHide ; window [ "AscCommon" ] . changestype _CorePr = changestype _CorePr ; window [ "AscCommon" ] . changestype _2 _InlineObjectMove = changestype _2 _InlineObjectMove ; window [ "AscCommon" ] . changestype _2 _HdrFtr = changestype _2 _HdrFtr ; window [ "AscCommon" ] . changestype _2 _Comment = changestype _2 _Comment ; window [ "AscCommon" ] . changestype _2 _Element _and _Type =
changestype _2 _Element _and _Type ; window [ "AscCommon" ] . changestype _2 _ElementsArray _and _Type = changestype _2 _ElementsArray _and _Type ; window [ "AscCommon" ] . changestype _2 _AdditionalTypes = changestype _2 _AdditionalTypes ; window [ "AscCommon" ] . changestype _2 _Element _and _Type _Array = changestype _2 _Element _and _Type _Array ; window [ "AscCommon" ] . contentchanges _Add = contentchanges _Add ; window [ "AscCommon" ] . contentchanges _Remove = contentchanges _Remove ; window [ "AscCommon" ] . PUNCTUATION _FLAG _BASE = PUNCTUATION _FLAG _BASE ; window [ "AscCommon" ] . PUNCTUATION _FLAG _CANT _BE _AT _BEGIN =
PUNCTUATION _FLAG _CANT _BE _AT _BEGIN ; window [ "AscCommon" ] . PUNCTUATION _FLAG _CANT _BE _AT _END = PUNCTUATION _FLAG _CANT _BE _AT _END ; window [ "AscCommon" ] . PUNCTUATION _FLAG _EAST _ASIAN = PUNCTUATION _FLAG _EAST _ASIAN ; window [ "AscCommon" ] . PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E = PUNCTUATION _FLAG _CANT _BE _AT _BEGIN _E ; window [ "AscCommon" ] . PUNCTUATION _FLAG _CANT _BE _AT _END _E = PUNCTUATION _FLAG _CANT _BE _AT _END _E ; window [ "AscCommon" ] . g _aPunctuation = g _aPunctuation ; window [ "AscCommon" ] . offlineMode = offlineMode ; window [ "AscCommon" ] . chartMode = chartMode ;
window [ "AscCommon" ] [ "align_Right" ] = window [ "AscCommon" ] . align _Right = align _Right ; window [ "AscCommon" ] [ "align_Left" ] = window [ "AscCommon" ] . align _Left = align _Left ; window [ "AscCommon" ] [ "align_Center" ] = window [ "AscCommon" ] . align _Center = align _Center ; window [ "AscCommon" ] [ "align_Justify" ] = window [ "AscCommon" ] . align _Justify = align _Justify ; window [ "AscCommon" ] [ "c_oAscFormatPainterState" ] = c _oAscFormatPainterState ; c _oAscFormatPainterState [ "kOff" ] = c _oAscFormatPainterState . kOff ; c _oAscFormatPainterState [ "kOn" ] = c _oAscFormatPainterState . kOn ;
c _oAscFormatPainterState [ "kMultiple" ] = c _oAscFormatPainterState . kMultiple ; window [ "Asc" ] [ "c_oSpecialPasteProps" ] = window [ "Asc" ] . c _oSpecialPasteProps = c _oSpecialPasteProps ; prot = c _oSpecialPasteProps ; prot [ "paste" ] = prot . paste ; prot [ "pasteOnlyFormula" ] = prot . pasteOnlyFormula ; prot [ "formulaNumberFormat" ] = prot . formulaNumberFormat ; prot [ "formulaAllFormatting" ] = prot . formulaAllFormatting ; prot [ "formulaWithoutBorders" ] = prot . formulaWithoutBorders ; prot [ "formulaColumnWidth" ] = prot . formulaColumnWidth ; prot [ "mergeConditionalFormating" ] =
prot . mergeConditionalFormating ; prot [ "pasteOnlyValues" ] = prot . pasteOnlyValues ; prot [ "valueNumberFormat" ] = prot . valueNumberFormat ; prot [ "valueAllFormating" ] = prot . valueAllFormating ; prot [ "pasteOnlyFormating" ] = prot . pasteOnlyFormating ; prot [ "transpose" ] = prot . transpose ; prot [ "link" ] = prot . link ; prot [ "picture" ] = prot . picture ; prot [ "linkedPicture" ] = prot . linkedPicture ; prot [ "sourceformatting" ] = prot . sourceformatting ; prot [ "destinationFormatting" ] = prot . destinationFormatting ; prot [ "mergeFormatting" ] = prot . mergeFormatting ; prot [ "uniteList" ] =
prot . uniteList ; prot [ "doNotUniteList" ] = prot . doNotUniteList ; prot [ "keepTextOnly" ] = prot . keepTextOnly ; prot [ "insertAsNestedTable" ] = prot . insertAsNestedTable ; prot [ "overwriteCells" ] = prot . overwriteCells ; prot [ "useTextImport" ] = prot . useTextImport ; prot [ "comments" ] = prot . comments ; prot [ "columnWidth" ] = prot . columnWidth ; window [ "Asc" ] [ "c_oSpecialPasteOperation" ] = window [ "Asc" ] . c _oSpecialPasteOperation = c _oSpecialPasteOperation ; prot = c _oSpecialPasteOperation ; prot [ "none" ] = prot . none ; prot [ "add" ] = prot . add ; prot [ "subtract" ] = prot . subtract ;
prot [ "multiply" ] = prot . multiply ; prot [ "divide" ] = prot . divide ; window [ "Asc" ] [ "c_oAscNumberingFormat" ] = window [ "Asc" ] . c _oAscNumberingFormat = c _oAscNumberingFormat ; prot = c _oAscNumberingFormat ; prot [ "None" ] = prot . None ; prot [ "Bullet" ] = prot . Bullet ; prot [ "Decimal" ] = prot . Decimal ; prot [ "LowerRoman" ] = prot . LowerRoman ; prot [ "UpperRoman" ] = prot . UpperRoman ; prot [ "LowerLetter" ] = prot . LowerLetter ; prot [ "UpperLetter" ] = prot . UpperLetter ; prot [ "DecimalZero" ] = prot . DecimalZero ; prot [ "DecimalEnclosedCircle" ] = prot . DecimalEnclosedCircle ; prot [ "RussianLower" ] =
prot . RussianLower ; prot [ "RussianUpper" ] = prot . RussianUpper ; prot [ "ChineseCounting" ] = prot . ChineseCounting ; prot [ "ChineseCountingThousand" ] = prot . ChineseCountingThousand ; prot [ "ChineseLegalSimplified" ] = prot . ChineseLegalSimplified ; window [ "Asc" ] [ "c_oAscNumberingSuff" ] = window [ "Asc" ] . c _oAscNumberingSuff = c _oAscNumberingSuff ; prot = c _oAscNumberingSuff ; prot [ "Tab" ] = c _oAscNumberingSuff . Tab ; prot [ "Space" ] = c _oAscNumberingSuff . Space ; prot [ "None" ] = c _oAscNumberingSuff . None ; window [ "Asc" ] [ "c_oAscNumberingLvlTextType" ] = window [ "Asc" ] . c _oAscNumberingLvlTextType =
c _oAscNumberingLvlTextType ; prot = c _oAscNumberingLvlTextType ; prot [ "Text" ] = c _oAscNumberingLvlTextType . Text ; prot [ "Num" ] = c _oAscNumberingLvlTextType . Num ; prot = window [ "Asc" ] [ "c_oAscSdtAppearance" ] = window [ "Asc" ] . c _oAscSdtAppearance = c _oAscSdtAppearance ; prot [ "Frame" ] = c _oAscSdtAppearance . Frame ; prot [ "Hidden" ] = c _oAscSdtAppearance . Hidden ; prot = window [ "Asc" ] [ "c_oAscObjectsAlignType" ] = window [ "Asc" ] . c _oAscObjectsAlignType = c _oAscObjectsAlignType ; prot [ "Selected" ] = c _oAscObjectsAlignType . Selected ; prot [ "Slide" ] = c _oAscObjectsAlignType . Slide ;
prot [ "Page" ] = c _oAscObjectsAlignType . Page ; prot [ "Margin" ] = c _oAscObjectsAlignType . Margin ; prot = window [ "Asc" ] [ "c_oAscItemType" ] = window [ "Asc" ] . c _oAscItemType = c _oAscItemType ; prot [ "Data" ] = prot . Data ; prot [ "Default" ] = prot . Default ; prot [ "Sum" ] = prot . Sum ; prot [ "CountA" ] = prot . CountA ; prot [ "Avg" ] = prot . Avg ; prot [ "Max" ] = prot . Max ; prot [ "Min" ] = prot . Min ; prot [ "Product" ] = prot . Product ; prot [ "Count" ] = prot . Count ; prot [ "StdDev" ] = prot . StdDev ; prot [ "StdDevP" ] = prot . StdDevP ; prot [ "Var" ] = prot . Var ; prot [ "VarP" ] = prot . VarP ; prot [ "Grand" ] = prot . Grand ;
prot [ "Blank" ] = prot . Blank ; prot = window [ "Asc" ] [ "c_oAscRevisionsMove" ] = window [ "Asc" ] . c _oAscRevisionsMove = c _oAscRevisionsMove ; prot [ "NoMove" ] = c _oAscRevisionsMove . NoMove ; prot [ "MoveTo" ] = c _oAscRevisionsMove . MoveTo ; prot [ "MoveFrom" ] = c _oAscRevisionsMove . MoveFrom ; prot = window [ "Asc" ] [ "c_oAscRevisionsChangeType" ] = window [ "Asc" ] . c _oAscRevisionsChangeType = c _oAscRevisionsChangeType ; prot [ "Unknown" ] = c _oAscRevisionsChangeType . Unknown ; prot [ "TextAdd" ] = c _oAscRevisionsChangeType . TextAdd ; prot [ "TextRem" ] = c _oAscRevisionsChangeType . TextRem ;
prot [ "ParaAdd" ] = c _oAscRevisionsChangeType . ParaAdd ; prot [ "ParaRem" ] = c _oAscRevisionsChangeType . ParaRem ; prot [ "TextPr" ] = c _oAscRevisionsChangeType . TextPr ; prot [ "ParaPr" ] = c _oAscRevisionsChangeType . ParaPr ; prot [ "TablePr" ] = c _oAscRevisionsChangeType . TablePr ; prot [ "RowsAdd" ] = c _oAscRevisionsChangeType . RowsAdd ; prot [ "RowsRem" ] = c _oAscRevisionsChangeType . RowsRem ; prot [ "MoveMark" ] = c _oAscRevisionsChangeType . MoveMark ; prot = window [ "Asc" ] [ "c_oAscSectionBreakType" ] = window [ "Asc" ] . c _oAscSectionBreakType = c _oAscSectionBreakType ;
prot [ "NextPage" ] = c _oAscSectionBreakType . NextPage ; prot [ "OddPage" ] = c _oAscSectionBreakType . OddPage ; prot [ "EvenPage" ] = c _oAscSectionBreakType . EvenPage ; prot [ "Continuous" ] = c _oAscSectionBreakType . Continuous ; prot [ "Column" ] = c _oAscSectionBreakType . Column ; prot = window [ "Asc" ] [ "c_oAscSdtLockType" ] = window [ "Asc" ] . c _oAscSdtLockType = c _oAscSdtLockType ; prot [ "ContentLocked" ] = c _oAscSdtLockType . ContentLocked ; prot [ "SdtContentLocked" ] = c _oAscSdtLockType . SdtContentLocked ; prot [ "SdtLocked" ] = c _oAscSdtLockType . SdtLocked ; prot [ "Unlocked" ] =
c _oAscSdtLockType . Unlocked ; prot = window [ "Asc" ] [ "c_oAscAlignH" ] = window [ "Asc" ] . c _oAscAlignH = c _oAscAlignH ; prot [ "Center" ] = c _oAscAlignH . Center ; prot [ "Inside" ] = c _oAscAlignH . Inside ; prot [ "Left" ] = c _oAscAlignH . Left ; prot [ "Outside" ] = c _oAscAlignH . Outside ; prot [ "Right" ] = c _oAscAlignH . Right ; prot = window [ "Asc" ] [ "c_oAscAlignV" ] = window [ "Asc" ] . c _oAscAlignV = c _oAscAlignV ; prot [ "Bottom" ] = c _oAscAlignV . Bottom ; prot [ "Center" ] = c _oAscAlignV . Center ; prot [ "Inside" ] = c _oAscAlignV . Inside ; prot [ "Outside" ] = c _oAscAlignV . Outside ; prot [ "Top" ] =
c _oAscAlignV . Top ; prot = window [ "Asc" ] [ "c_oAscWatermarkType" ] = window [ "Asc" ] . c _oAscWatermarkType = c _oAscWatermarkType ; prot [ "None" ] = prot . None ; prot [ "Text" ] = prot . Text ; prot [ "Image" ] = prot . Image ; prot = window [ "Asc" ] [ "c_oAscCalendarType" ] = window [ "Asc" ] . c _oAscCalendarType = c _oAscCalendarType ; prot [ "Gregorian" ] = c _oAscCalendarType . Gregorian ; prot [ "GregorianArabic" ] = c _oAscCalendarType . GregorianArabic ; prot [ "GregorianMeFrench" ] = c _oAscCalendarType . GregorianMeFrench ; prot [ "GregorianUs" ] = c _oAscCalendarType . GregorianUs ; prot [ "GregorianXlitEnglish" ] =
c _oAscCalendarType . GregorianXlitEnglish ; prot [ "GregorianXlitFrench" ] = c _oAscCalendarType . GregorianXlitFrench ; prot [ "Hebrew" ] = c _oAscCalendarType . Hebrew ; prot [ "Hijri" ] = c _oAscCalendarType . Hijri ; prot [ "Japan" ] = c _oAscCalendarType . Japan ; prot [ "Korea" ] = c _oAscCalendarType . Korea ; prot [ "None" ] = c _oAscCalendarType . None ; prot [ "Saka" ] = c _oAscCalendarType . Saka ; prot [ "Taiwan" ] = c _oAscCalendarType . Taiwan ; prot [ "Thai" ] = c _oAscCalendarType . Thai ; prot = window [ "Asc" ] [ "c_oAscContentControlSpecificType" ] = window [ "Asc" ] . c _oAscContentControlSpecificType =
c _oAscContentControlSpecificType ; prot [ "None" ] = c _oAscContentControlSpecificType . None ; prot [ "CheckBox" ] = c _oAscContentControlSpecificType . CheckBox ; prot [ "Picture" ] = c _oAscContentControlSpecificType . Picture ; prot [ "ComboBox" ] = c _oAscContentControlSpecificType . ComboBox ; prot [ "DropDownList" ] = c _oAscContentControlSpecificType . DropDownList ; prot [ "DateTime" ] = c _oAscContentControlSpecificType . DateTime ; prot [ "TOC" ] = c _oAscContentControlSpecificType . TOC ; window [ "Asc" ] [ "c_oAscDefNameType" ] = window [ "Asc" ] . c _oAscDefNameType =
c _oAscDefNameType ; prot = c _oAscDefNameType ; prot [ "table" ] = prot . table ; prot [ "slicer" ] = prot . slicer ; window [ "AscCommon" ] . document _compatibility _mode _Word11 = document _compatibility _mode _Word11 ; window [ "AscCommon" ] . document _compatibility _mode _Word12 = document _compatibility _mode _Word12 ; window [ "AscCommon" ] . document _compatibility _mode _Word14 = document _compatibility _mode _Word14 ; window [ "AscCommon" ] . document _compatibility _mode _Word15 = document _compatibility _mode _Word15 ; window [ "AscCommon" ] . document _compatibility _mode _Current =
document _compatibility _mode _Current ; prot = window [ "AscCommon" ] [ "c_oAscCustomShortcutType" ] = window [ "AscCommon" ] . c _oAscCustomShortcutType = c _oAscCustomShortcutType ; prot [ "Symbol" ] = c _oAscCustomShortcutType . Symbol ; prot = window [ "Asc" ] [ "c_oAscLineNumberRestartType" ] = window [ "Asc" ] . c _oAscLineNumberRestartType = c _oAscLineNumberRestartType ; prot [ "Continuous" ] = c _oAscLineNumberRestartType . Continuous ; prot [ "NewPage" ] = c _oAscLineNumberRestartType . NewPage ; prot [ "NewSection" ] = c _oAscLineNumberRestartType . NewSection ; prot = window [ "Asc" ] [ "c_oAscSectionApplyType" ] =
window [ "Asc" ] . c _oAscSectionApplyType = c _oAscSectionApplyType ; prot [ "Current" ] = c _oAscSectionApplyType . Current ; prot [ "ToEnd" ] = c _oAscSectionApplyType . ToEnd ; prot [ "All" ] = c _oAscSectionApplyType . All } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function asc _CUser ( val ) { this . id = null ; this . idOriginal = null ; this . userName = null ; this . state = undefined ; this . indexUser = - 1 ; this . color = null ; this . view = false ; this . _setUser ( val ) ; return this } asc _CUser . prototype . _setUser = function ( val ) { if ( val ) { this . id = val [ "id" ] ; this . idOriginal = val [ "idOriginal" ] ; this . userName = val [ "username" ] ; this . indexUser = val [ "indexUser" ] ; this . color = window [ "AscCommon" ] . getUserColorById ( this . idOriginal , this . userName , false , true ) ; this . view = val [ "view" ] } } ; asc _CUser . prototype . asc _getId =
function ( ) { return this . id } ; asc _CUser . prototype . asc _getIdOriginal = function ( ) { return this . idOriginal } ; asc _CUser . prototype . asc _getUserName = function ( ) { return this . userName } ; asc _CUser . prototype . asc _getFirstName = function ( ) { return this . firstName } ; asc _CUser . prototype . asc _getLastName = function ( ) { return this . lastName } ; asc _CUser . prototype . asc _getState = function ( ) { return this . state } ; asc _CUser . prototype . asc _getColor = function ( ) { return "#" + ( "000000" + this . color . toString ( 16 ) ) . substr ( - 6 ) } ; asc _CUser . prototype . asc _getView =
function ( ) { return this . view } ; asc _CUser . prototype . setId = function ( val ) { this . id = val } ; asc _CUser . prototype . setUserName = function ( val ) { this . userName = val } ; asc _CUser . prototype . setFirstName = function ( val ) { this . firstName = val } ; asc _CUser . prototype . setLastName = function ( val ) { this . lastName = val } ; asc _CUser . prototype . setState = function ( val ) { this . state = val } ; var ConnectionState = { Reconnect : - 1 , None : 0 , WaitAuth : 1 , Authorized : 2 , ClosedCoAuth : 3 , ClosedAll : 4 , SaveChanges : 10 , AskSaveChanges : 11 } ; var c _oEditorId = { Word : 0 , Spreadsheet : 1 ,
Presentation : 2 } ; var c _oCloseCode = { serverShutdown : 4001 , sessionIdle : 4002 , sessionAbsolute : 4003 , accessDeny : 4004 , jwtExpired : 4005 , jwtError : 4006 , drop : 4007 , updateVersion : 4008 } ; var c _oAscServerCommandErrors = { NoError : 0 , DocumentIdError : 1 , ParseError : 2 , UnknownError : 3 , NotModified : 4 , UnknownCommand : 5 , Token : 6 , TokenExpire : 7 } ; var c _oAscForceSaveTypes = { Command : 0 , Button : 1 , Timeout : 2 } ; function getDisconnectErrorCode ( isDocumentLoadComplete , opt _closeCode ) { var code = Asc . c _oAscError . ID . CoAuthoringDisconnect ; if ( c _oCloseCode . serverShutdown ===
opt _closeCode ) code = Asc . c _oAscError . ID . CoAuthoringDisconnect ; else if ( c _oCloseCode . sessionIdle === opt _closeCode ) code = Asc . c _oAscError . ID . SessionIdle ; else if ( c _oCloseCode . sessionAbsolute === opt _closeCode ) code = Asc . c _oAscError . ID . SessionAbsolute ; else if ( c _oCloseCode . accessDeny === opt _closeCode ) code = Asc . c _oAscError . ID . AccessDeny ; else if ( c _oCloseCode . jwtExpired === opt _closeCode ) code = isDocumentLoadComplete ? Asc . c _oAscError . ID . SessionToken : Asc . c _oAscError . ID . KeyExpire ; else if ( c _oCloseCode . jwtError === opt _closeCode ) code =
Asc . c _oAscError . ID . VKeyEncrypt ; else if ( c _oCloseCode . drop === opt _closeCode ) code = Asc . c _oAscError . ID . UserDrop ; else if ( c _oCloseCode . updateVersion === opt _closeCode ) code = Asc . c _oAscError . ID . UpdateVersion ; return code } function getEnableDownloadByErrorCode ( code ) { return Asc . c _oAscError . ID . UpdateVersion === code || Asc . c _oAscError . ID . SessionIdle === code || Asc . c _oAscError . ID . SessionAbsolute === code } var prot ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . asc _CUser = asc _CUser ; prot = asc _CUser . prototype ; prot [ "asc_getId" ] =
prot . asc _getId ; prot [ "asc_getIdOriginal" ] = prot . asc _getIdOriginal ; prot [ "asc_getUserName" ] = prot . asc _getUserName ; prot [ "asc_getState" ] = prot . asc _getState ; prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "asc_getView" ] = prot . asc _getView ; window [ "AscCommon" ] . getDisconnectErrorCode = getDisconnectErrorCode ; window [ "AscCommon" ] . getEnableDownloadByErrorCode = getEnableDownloadByErrorCode ; window [ "AscCommon" ] . ConnectionState = ConnectionState ; window [ "AscCommon" ] . c _oEditorId = c _oEditorId ; window [ "AscCommon" ] . c _oCloseCode = c _oCloseCode ;
window [ "AscCommon" ] . c _oAscServerCommandErrors = c _oAscServerCommandErrors ; window [ "AscCommon" ] . c _oAscForceSaveTypes = c _oAscForceSaveTypes } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var Asc = window [ "Asc" ] ; var AscCommon = window [ "AscCommon" ] ; var ConnectionState = AscCommon . ConnectionState ; var c _oEditorId = AscCommon . c _oEditorId ; var c _oCloseCode = AscCommon . c _oCloseCode ; var c _oAscServerCommandErrors = AscCommon . c _oAscServerCommandErrors ; var c _oAscForceSaveTypes = AscCommon . c _oAscForceSaveTypes ; function CDocsCoApi ( options ) { this . _CoAuthoringApi = new DocsCoApi ; this . _onlineWork = false ; if ( options ) { this . onAuthParticipantsChanged = options . onAuthParticipantsChanged ; this . onParticipantsChanged =
options . onParticipantsChanged ; this . onMessage = options . onMessage ; this . onServerVersion = options . onServerVersion ; this . onCursor = options . onCursor ; this . onMeta = options . onMeta ; this . onSession = options . onSession ; this . onExpiredToken = options . onExpiredToken ; this . onForceSave = options . onForceSave ; this . onHasForgotten = options . onHasForgotten ; this . onLocksAcquired = options . onLocksAcquired ; this . onLocksReleased = options . onLocksReleased ; this . onLocksReleasedEnd = options . onLocksReleasedEnd ; this . onDisconnect = options . onDisconnect ;
this . onWarning = options . onWarning ; this . onFirstLoadChangesEnd = options . onFirstLoadChangesEnd ; this . onConnectionStateChanged = options . onConnectionStateChanged ; this . onSetIndexUser = options . onSetIndexUser ; this . onSpellCheckInit = options . onSpellCheckInit ; this . onSaveChanges = options . onSaveChanges ; this . onStartCoAuthoring = options . onStartCoAuthoring ; this . onEndCoAuthoring = options . onEndCoAuthoring ; this . onUnSaveLock = options . onUnSaveLock ; this . onRecalcLocks = options . onRecalcLocks ; this . onDocumentOpen = options . onDocumentOpen ;
this . onFirstConnect = options . onFirstConnect ; this . onLicense = options . onLicense ; this . onLicenseChanged = options . onLicenseChanged } } CDocsCoApi . prototype . init = function ( user , docid , documentCallbackUrl , token , editorType , documentFormatSave , docInfo ) { if ( this . _CoAuthoringApi && this . _CoAuthoringApi . isRightURL ( ) ) { var t = this ; this . _CoAuthoringApi . onAuthParticipantsChanged = function ( e , id ) { t . callback _OnAuthParticipantsChanged ( e , id ) } ; this . _CoAuthoringApi . onParticipantsChanged = function ( e ) { t . callback _OnParticipantsChanged ( e ) } ;
this . _CoAuthoringApi . onMessage = function ( e , clear ) { t . callback _OnMessage ( e , clear ) } ; this . _CoAuthoringApi . onServerVersion = function ( e ) { t . callback _OnServerVersion ( e ) } ; this . _CoAuthoringApi . onCursor = function ( e ) { t . callback _OnCursor ( e ) } ; this . _CoAuthoringApi . onMeta = function ( e ) { t . callback _OnMeta ( e ) } ; this . _CoAuthoringApi . onSession = function ( e ) { t . callback _OnSession ( e ) } ; this . _CoAuthoringApi . onExpiredToken = function ( e ) { t . callback _OnExpiredToken ( e ) } ; this . _CoAuthoringApi . onHasForgotten = function ( e ) { t . callback _OnHasForgotten ( e ) } ;
this . _CoAuthoringApi . onForceSave = function ( e ) { t . callback _OnForceSave ( e ) } ; this . _CoAuthoringApi . onLocksAcquired = function ( e ) { t . callback _OnLocksAcquired ( e ) } ; this . _CoAuthoringApi . onLocksReleased = function ( e , bChanges ) { t . callback _OnLocksReleased ( e , bChanges ) } ; this . _CoAuthoringApi . onLocksReleasedEnd = function ( ) { t . callback _OnLocksReleasedEnd ( ) } ; this . _CoAuthoringApi . onDisconnect = function ( e , code ) { t . callback _OnDisconnect ( e , code ) } ; this . _CoAuthoringApi . onWarning = function ( e ) { t . callback _OnWarning ( e ) } ; this . _CoAuthoringApi . onFirstLoadChangesEnd =
function ( ) { t . callback _OnFirstLoadChangesEnd ( ) } ; this . _CoAuthoringApi . onConnectionStateChanged = function ( e ) { t . callback _OnConnectionStateChanged ( e ) } ; this . _CoAuthoringApi . onSetIndexUser = function ( e ) { t . callback _OnSetIndexUser ( e ) } ; this . _CoAuthoringApi . onSpellCheckInit = function ( e ) { t . callback _OnSpellCheckInit ( e ) } ; this . _CoAuthoringApi . onSaveChanges = function ( e , userId , bFirstLoad ) { t . callback _OnSaveChanges ( e , userId , bFirstLoad ) } ; this . _CoAuthoringApi . onStartCoAuthoring = function ( e , isWaitAuth ) { t . callback _OnStartCoAuthoring ( e ,
isWaitAuth ) } ; this . _CoAuthoringApi . onEndCoAuthoring = function ( e ) { t . callback _OnEndCoAuthoring ( e ) } ; this . _CoAuthoringApi . onUnSaveLock = function ( ) { t . callback _OnUnSaveLock ( ) } ; this . _CoAuthoringApi . onRecalcLocks = function ( e ) { t . callback _OnRecalcLocks ( e ) } ; this . _CoAuthoringApi . onDocumentOpen = function ( data ) { t . callback _OnDocumentOpen ( data ) } ; this . _CoAuthoringApi . onFirstConnect = function ( ) { t . callback _OnFirstConnect ( ) } ; this . _CoAuthoringApi . onLicense = function ( res ) { t . callback _OnLicense ( res ) } ; this . _CoAuthoringApi . onLicenseChanged =
function ( res ) { t . callback _OnLicenseChanged ( res ) } ; this . _CoAuthoringApi . init ( user , docid , documentCallbackUrl , token , editorType , documentFormatSave , docInfo ) ; this . _onlineWork = true } else { this . onFirstConnect ( ) ; this . onLicense ( null ) } } ; CDocsCoApi . prototype . getDocId = function ( ) { if ( this . _CoAuthoringApi ) return this . _CoAuthoringApi . getDocId ( ) ; return undefined } ; CDocsCoApi . prototype . setDocId = function ( docId ) { if ( this . _CoAuthoringApi ) return this . _CoAuthoringApi . setDocId ( docId ) } ; CDocsCoApi . prototype . auth = function ( isViewer ,
opt _openCmd , opt _isIdle ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . auth ( isViewer , opt _openCmd , opt _isIdle ) ; else { this . callback _OnSpellCheckInit ( "" ) ; this . callback _OnSetIndexUser ( "123" ) ; this . onFirstLoadChangesEnd ( ) } } ; CDocsCoApi . prototype . set _url = function ( url ) { if ( this . _CoAuthoringApi ) this . _CoAuthoringApi . set _url ( url ) } ; CDocsCoApi . prototype . get _onlineWork = function ( ) { return this . _onlineWork } ; CDocsCoApi . prototype . get _state = function ( ) { if ( this . _CoAuthoringApi ) return this . _CoAuthoringApi . get _state ( ) ;
return 0 } ; CDocsCoApi . prototype . openDocument = function ( data ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . openDocument ( data ) } ; CDocsCoApi . prototype . sendRawData = function ( data ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . sendRawData ( data ) } ; CDocsCoApi . prototype . getMessages = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . getMessages ( ) } ; CDocsCoApi . prototype . sendMessage = function ( message ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . sendMessage ( message ) } ;
CDocsCoApi . prototype . sendCursor = function ( cursor ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . sendCursor ( cursor ) } ; CDocsCoApi . prototype . sendChangesError = function ( data ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . sendChangesError ( data ) } ; CDocsCoApi . prototype . askLock = function ( arrayBlockId , callback ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . askLock ( arrayBlockId , callback ) ; else { var t = this ; window . setTimeout ( function ( ) { if ( callback ) { var lengthArray =
arrayBlockId ? arrayBlockId . length : 0 ; if ( 0 < lengthArray ) { callback ( { "lock" : arrayBlockId [ 0 ] } ) ; for ( var i = 0 ; i < lengthArray ; ++ i ) t . callback _OnLocksAcquired ( { "state" : 2 , "block" : arrayBlockId [ i ] } ) } } } , 1 ) } } ; CDocsCoApi . prototype . askSaveChanges = function ( callback ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . askSaveChanges ( callback ) ; else window . setTimeout ( function ( ) { if ( callback ) callback ( { "saveLock" : false } ) } , 100 ) } ; CDocsCoApi . prototype . unSaveLock = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . unSaveLock ( ) ;
else { var t = this ; window . setTimeout ( function ( ) { t . callback _OnUnSaveLock ( ) } , 100 ) } } ; CDocsCoApi . prototype . saveChanges = function ( arrayChanges , deleteIndex , excelAdditionalInfo , canUnlockDocument , canReleaseLocks ) { if ( this . _CoAuthoringApi && this . _onlineWork ) { this . _CoAuthoringApi . canUnlockDocument = canUnlockDocument ; this . _CoAuthoringApi . canReleaseLocks = canReleaseLocks ; this . _CoAuthoringApi . saveChanges ( arrayChanges , null , deleteIndex , excelAdditionalInfo ) } } ; CDocsCoApi . prototype . unLockDocument = function ( isSave , canUnlockDocument ,
deleteIndex , canReleaseLocks ) { if ( this . _CoAuthoringApi && this . _onlineWork ) { this . _CoAuthoringApi . canUnlockDocument = canUnlockDocument ; this . _CoAuthoringApi . canReleaseLocks = canReleaseLocks ; this . _CoAuthoringApi . unLockDocument ( isSave , deleteIndex ) } } ; CDocsCoApi . prototype . getUsers = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . getUsers ( ) } ; CDocsCoApi . prototype . getUserConnectionId = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) return this . _CoAuthoringApi . getUserConnectionId ( ) ; return null } ;
CDocsCoApi . prototype . get _indexUser = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) return this . _CoAuthoringApi . get _indexUser ( ) ; return null } ; CDocsCoApi . prototype . get _isAuth = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) return this . _CoAuthoringApi . get _isAuth ( ) ; return null } ; CDocsCoApi . prototype . get _jwt = function ( ) { if ( this . _CoAuthoringApi && this . _onlineWork ) return this . _CoAuthoringApi . get _jwt ( ) ; return null } ; CDocsCoApi . prototype . releaseLocks = function ( blockId ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . releaseLocks ( blockId ) } ;
CDocsCoApi . prototype . disconnect = function ( opt _code , opt _reason ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . disconnect ( opt _code , opt _reason ) } ; CDocsCoApi . prototype . extendSession = function ( idleTime ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . extendSession ( idleTime ) } ; CDocsCoApi . prototype . versionHistory = function ( data ) { if ( this . _CoAuthoringApi && this . _onlineWork ) this . _CoAuthoringApi . versionHistory ( data ) } ; CDocsCoApi . prototype . forceSave = function ( ) { if ( this . _CoAuthoringApi &&
this . _onlineWork ) return this . _CoAuthoringApi . forceSave ( ) ; return false } ; CDocsCoApi . prototype . callback _OnAuthParticipantsChanged = function ( e , id ) { if ( this . onAuthParticipantsChanged ) this . onAuthParticipantsChanged ( e , id ) } ; CDocsCoApi . prototype . callback _OnParticipantsChanged = function ( e ) { if ( this . onParticipantsChanged ) this . onParticipantsChanged ( e ) } ; CDocsCoApi . prototype . callback _OnMessage = function ( e , clear ) { if ( this . onMessage ) this . onMessage ( e , clear ) } ; CDocsCoApi . prototype . callback _OnServerVersion = function ( e ) { if ( this . onServerVersion ) this . onServerVersion ( e ) } ;
CDocsCoApi . prototype . callback _OnCursor = function ( e ) { if ( this . onCursor ) this . onCursor ( e ) } ; CDocsCoApi . prototype . callback _OnMeta = function ( e ) { if ( this . onMeta ) this . onMeta ( e ) } ; CDocsCoApi . prototype . callback _OnSession = function ( e ) { if ( this . onSession ) this . onSession ( e ) } ; CDocsCoApi . prototype . callback _OnExpiredToken = function ( e ) { if ( this . onExpiredToken ) this . onExpiredToken ( e ) } ; CDocsCoApi . prototype . callback _OnForceSave = function ( e ) { if ( this . onForceSave ) this . onForceSave ( e ) } ; CDocsCoApi . prototype . callback _OnHasForgotten = function ( e ) { if ( this . onHasForgotten ) this . onHasForgotten ( e ) } ;
CDocsCoApi . prototype . callback _OnLocksAcquired = function ( e ) { if ( this . onLocksAcquired ) this . onLocksAcquired ( e ) } ; CDocsCoApi . prototype . callback _OnLocksReleased = function ( e , bChanges ) { if ( this . onLocksReleased ) this . onLocksReleased ( e , bChanges ) } ; CDocsCoApi . prototype . callback _OnLocksReleasedEnd = function ( ) { if ( this . onLocksReleasedEnd ) this . onLocksReleasedEnd ( ) } ; CDocsCoApi . prototype . callback _OnDisconnect = function ( e , code ) { if ( this . onDisconnect ) this . onDisconnect ( e , code ) } ; CDocsCoApi . prototype . callback _OnWarning = function ( e ) { if ( this . onWarning ) this . onWarning ( e ) } ;
CDocsCoApi . prototype . callback _OnFirstLoadChangesEnd = function ( ) { if ( this . onFirstLoadChangesEnd ) this . onFirstLoadChangesEnd ( ) } ; CDocsCoApi . prototype . callback _OnConnectionStateChanged = function ( e ) { if ( this . onConnectionStateChanged ) this . onConnectionStateChanged ( e ) } ; CDocsCoApi . prototype . callback _OnSetIndexUser = function ( e ) { if ( this . onSetIndexUser ) this . onSetIndexUser ( e ) } ; CDocsCoApi . prototype . callback _OnSpellCheckInit = function ( e ) { if ( this . onSpellCheckInit ) this . onSpellCheckInit ( e ) } ; CDocsCoApi . prototype . callback _OnSaveChanges =
function ( e , userId , bFirstLoad ) { if ( this . onSaveChanges ) this . onSaveChanges ( e , userId , bFirstLoad ) } ; CDocsCoApi . prototype . callback _OnStartCoAuthoring = function ( e , isWaitAuth ) { if ( this . onStartCoAuthoring ) this . onStartCoAuthoring ( e , isWaitAuth ) } ; CDocsCoApi . prototype . callback _OnEndCoAuthoring = function ( e ) { if ( this . onEndCoAuthoring ) this . onEndCoAuthoring ( e ) } ; CDocsCoApi . prototype . callback _OnUnSaveLock = function ( ) { if ( this . onUnSaveLock ) this . onUnSaveLock ( ) } ; CDocsCoApi . prototype . callback _OnRecalcLocks = function ( e ) { if ( this . onRecalcLocks ) this . onRecalcLocks ( e ) } ;
CDocsCoApi . prototype . callback _OnDocumentOpen = function ( e ) { if ( this . onDocumentOpen ) this . onDocumentOpen ( e ) } ; CDocsCoApi . prototype . callback _OnFirstConnect = function ( ) { if ( this . onFirstConnect ) this . onFirstConnect ( ) } ; CDocsCoApi . prototype . callback _OnLicense = function ( res ) { if ( this . onLicense ) this . onLicense ( res ) } ; CDocsCoApi . prototype . callback _OnLicenseChanged = function ( res ) { if ( this . onLicenseChanged ) this . onLicenseChanged ( res ) } ; function LockBufferElement ( arrayBlockId , callback ) { this . _arrayBlockId = arrayBlockId ? arrayBlockId . slice ( ) :
null ; this . _callback = callback } function DocsCoApi ( options ) { if ( options ) { this . onAuthParticipantsChanged = options . onAuthParticipantsChanged ; this . onParticipantsChanged = options . onParticipantsChanged ; this . onMessage = options . onMessage ; this . onServerVersion = options . onServerVersion ; this . onCursor = options . onCursor ; this . onMeta = options . onMeta ; this . onSession = options . onSession ; this . onExpiredToken = options . onExpiredToken ; this . onForceSave = options . onForceSave ; this . onHasForgotten = options . onHasForgotten ; this . onLocksAcquired =
options . onLocksAcquired ; this . onLocksReleased = options . onLocksReleased ; this . onLocksReleasedEnd = options . onLocksReleasedEnd ; this . onRelockFailed = options . onRelockFailed ; this . onDisconnect = options . onDisconnect ; this . onWarning = options . onWarning ; this . onSetIndexUser = options . onSetIndexUser ; this . onSpellCheckInit = options . onSpellCheckInit ; this . onSaveChanges = options . onSaveChanges ; this . onFirstLoadChangesEnd = options . onFirstLoadChangesEnd ; this . onConnectionStateChanged = options . onConnectionStateChanged ; this . onUnSaveLock =
options . onUnSaveLock ; this . onRecalcLocks = options . onRecalcLocks ; this . onDocumentOpen = options . onDocumentOpen ; this . onFirstConnect = options . onFirstConnect ; this . onLicense = options . onLicense ; this . onLicenseChanged = options . onLicenseChanged } this . _state = ConnectionState . None ; this . _participants = { } ; this . _participantsTimestamp ; this . _countEditUsers = 0 ; this . _countUsers = 0 ; this . isLicenseInit = false ; this . _locks = { } ; this . _msgBuffer = [ ] ; this . _msgInputBuffer = [ ] ; this . _lockCallbacks = { } ; this . _lockCallbacksErrorTimerId = { } ; this . _saveCallback =
[ ] ; this . saveLockCallbackErrorTimeOutId = null ; this . saveCallbackErrorTimeOutId = null ; this . unSaveLockCallbackErrorTimeOutId = null ; this . _id = null ; this . _sessionTimeConnect = null ; this . _allChangesSaved = null ; this . _lastForceSaveButtonTime = null ; this . _lastForceSaveTimeoutTime = null ; this . _indexUser = - 1 ; this . isCoAuthoring = false ; this . isCloseCoAuthoring = false ; this . websocketMaxPayloadSize = 1572864 ; this . currentIndex = 0 ; this . currentIndexEnd = 0 ; this . deleteIndex = 0 ; this . arrayChanges = null ; this . lastOtherSaveTime = - 1 ; this . lastOwnSaveTime =
- 1 ; this . changesIndex = 0 ; this . excelAdditionalInfo = null ; this . canUnlockDocument = false ; this . canReleaseLocks = false ; this . _url = "" ; this . reconnectTimeout = null ; this . attemptCount = 0 ; this . maxAttemptCount = 50 ; this . reconnectInterval = 2E3 ; this . errorTimeOut = 1E4 ; this . errorTimeOutSave = 6E4 ; this . _docid = null ; this . _documentCallbackUrl = null ; this . _token = null ; this . _user = null ; this . _userId = "Anonymous" ; this . ownedLockBlocks = [ ] ; this . sockjs _url = null ; this . sockjs = null ; this . editorType = - 1 ; this . _isExcel = false ; this . _isPresentation = false ;
this . _isAuth = false ; this . _documentFormatSave = 0 ; this . mode = undefined ; this . permissions = undefined ; this . lang = undefined ; this . jwtOpen = undefined ; this . jwtSession = undefined ; this . encrypted = undefined ; this . _isViewer = false ; this . _isReSaveAfterAuth = false ; this . _lockBuffer = [ ] ; this . _authChanges = [ ] ; this . _authOtherChanges = [ ] } DocsCoApi . prototype . isRightURL = function ( ) { return "" != this . _url } ; DocsCoApi . prototype . set _url = function ( url ) { this . _url = url } ; DocsCoApi . prototype . get _state = function ( ) { return this . _state } ; DocsCoApi . prototype . check _state =
function ( ) { return ConnectionState . Authorized === this . _state || ConnectionState . SaveChanges === this . _state || ConnectionState . AskSaveChanges === this . _state } ; DocsCoApi . prototype . get _indexUser = function ( ) { return this . _indexUser } ; DocsCoApi . prototype . get _isAuth = function ( ) { return this . _isAuth } ; DocsCoApi . prototype . get _jwt = function ( ) { return this . jwtSession || this . jwtOpen } ; DocsCoApi . prototype . getSessionId = function ( ) { return this . _id } ; DocsCoApi . prototype . getUserConnectionId = function ( ) { return this . _userId } ; DocsCoApi . prototype . getLocks =
function ( ) { return this . _locks } ; DocsCoApi . prototype . _sendBufferedLocks = function ( ) { var elem ; for ( var i = 0 , length = this . _lockBuffer . length ; i < length ; ++ i ) { elem = this . _lockBuffer [ i ] ; this . askLock ( elem . _arrayBlockId , elem . _callback ) } this . _lockBuffer = [ ] } ; DocsCoApi . prototype . askLock = function ( arrayBlockId , callback ) { if ( ConnectionState . SaveChanges === this . _state || ConnectionState . AskSaveChanges === this . _state ) { this . _lockBuffer . push ( new LockBufferElement ( arrayBlockId , callback ) ) ; return } var t = this ; var i = 0 ; var lengthArray =
arrayBlockId ? arrayBlockId . length : 0 ; var isLock = false ; var idLockInArray = null ; for ( ; i < lengthArray ; ++ i ) { idLockInArray = this . _isExcel || this . _isPresentation ? arrayBlockId [ i ] [ "guid" ] : arrayBlockId [ i ] ; if ( this . _locks [ idLockInArray ] && 0 !== this . _locks [ idLockInArray ] . state ) { isLock = true ; break } } if ( 0 === lengthArray ) isLock = true ; idLockInArray = this . _isExcel || this . _isPresentation ? arrayBlockId [ 0 ] [ "guid" ] : arrayBlockId [ 0 ] ; if ( ! isLock ) { if ( this . _lockCallbacksErrorTimerId . hasOwnProperty ( idLockInArray ) ) return ; this . _locks [ idLockInArray ] =
{ "state" : 1 } ; if ( callback ) { this . _lockCallbacks [ idLockInArray ] = callback ; this . _lockCallbacksErrorTimerId [ idLockInArray ] = window . setTimeout ( function ( ) { if ( t . _lockCallbacks . hasOwnProperty ( idLockInArray ) ) { t . _lockCallbacks [ idLockInArray ] ( { error : "Timed out" } ) ; delete t . _lockCallbacks [ idLockInArray ] ; delete t . _lockCallbacksErrorTimerId [ idLockInArray ] } } , this . errorTimeOut ) } this . _send ( { "type" : "getLock" , "block" : arrayBlockId } ) } else window . setTimeout ( function ( ) { if ( callback ) callback ( { error : idLockInArray + "-lock" } ) } , 100 ) } ;
DocsCoApi . prototype . askSaveChanges = function ( callback ) { if ( this . _saveCallback [ this . _saveCallback . length - 1 ] ) return ; if ( null !== this . saveLockCallbackErrorTimeOutId ) clearTimeout ( this . saveLockCallbackErrorTimeOutId ) ; if ( ConnectionState . Authorized !== this . _state ) { this . saveLockCallbackErrorTimeOutId = window . setTimeout ( function ( ) { if ( callback ) callback ( { error : "No connection" } ) } , 100 ) ; return } if ( callback ) { var t = this ; var indexCallback = this . _saveCallback . length ; this . _saveCallback [ indexCallback ] = callback ; this . saveLockCallbackErrorTimeOutId =
window . setTimeout ( function ( ) { t . saveLockCallbackErrorTimeOutId = null ; var oTmpCallback = t . _saveCallback [ indexCallback ] ; if ( oTmpCallback ) { t . _saveCallback [ indexCallback ] = null ; oTmpCallback ( { error : "Timed out" } ) ; t . _state = ConnectionState . Authorized ; t . _sendBufferedLocks ( ) } } , this . errorTimeOut ) } this . _state = ConnectionState . AskSaveChanges ; this . _send ( { "type" : "isSaveLock" } ) } ; DocsCoApi . prototype . unSaveLock = function ( ) { var t = this ; this . unSaveLockCallbackErrorTimeOutId = window . setTimeout ( function ( ) { t . unSaveLockCallbackErrorTimeOutId =
null ; t . unSaveLock ( ) } , this . errorTimeOut ) ; this . _send ( { "type" : "unSaveLock" } ) } ; DocsCoApi . prototype . releaseLocks = function ( blockId ) { if ( this . _locks [ blockId ] && 2 === this . _locks [ blockId ] . state ) this . _locks [ blockId ] = { "state" : 0 } } ; DocsCoApi . prototype . _reSaveChanges = function ( reSaveType ) { this . saveChanges ( this . arrayChanges , this . currentIndex , undefined , undefined , reSaveType ) } ; DocsCoApi . prototype . saveChanges = function ( arrayChanges , currentIndex , deleteIndex , excelAdditionalInfo , reSave ) { if ( null === currentIndex ) { this . deleteIndex =
deleteIndex ; if ( null != this . deleteIndex && - 1 !== this . deleteIndex ) this . deleteIndex += this . changesIndex ; this . currentIndex = 0 ; this . arrayChanges = arrayChanges ; this . excelAdditionalInfo = excelAdditionalInfo } else this . currentIndex = currentIndex ; var startIndex , endIndex ; startIndex = endIndex = this . currentIndex ; var curBytes = 0 ; for ( ; endIndex < arrayChanges . length && curBytes < this . websocketMaxPayloadSize ; ++ endIndex ) curBytes += arrayChanges [ endIndex ] . length + 9 ; this . currentIndexEnd = endIndex ; if ( endIndex === arrayChanges . length ) for ( var key in this . _locks ) if ( this . _locks . hasOwnProperty ( key ) ) if ( 2 ===
this . _locks [ key ] . state ) delete this . _locks [ key ] ; var t = this ; this . saveCallbackErrorTimeOutId = window . setTimeout ( function ( ) { t . saveCallbackErrorTimeOutId = null ; t . _reSaveChanges ( 1 ) } , this . errorTimeOutSave ) ; this . _state = ConnectionState . SaveChanges ; this . _send ( { "type" : "saveChanges" , "changes" : JSON . stringify ( arrayChanges . slice ( startIndex , endIndex ) ) , "startSaveChanges" : startIndex === 0 , "endSaveChanges" : endIndex === arrayChanges . length , "isCoAuthoring" : this . isCoAuthoring , "isExcel" : this . _isExcel , "deleteIndex" : this . deleteIndex ,
"excelAdditionalInfo" : this . excelAdditionalInfo ? JSON . stringify ( this . excelAdditionalInfo ) : null , "unlock" : this . canUnlockDocument , "releaseLocks" : this . canReleaseLocks , "reSave" : reSave } ) } ; DocsCoApi . prototype . unLockDocument = function ( isSave , deleteIndex ) { this . deleteIndex = deleteIndex ; if ( null != this . deleteIndex && - 1 !== this . deleteIndex ) this . deleteIndex += this . changesIndex ; this . _send ( { "type" : "unLockDocument" , "isSave" : isSave , "unlock" : this . canUnlockDocument , "deleteIndex" : this . deleteIndex , "releaseLocks" : this . canReleaseLocks } ) } ;
DocsCoApi . prototype . getUsers = function ( ) { if ( this . onAuthParticipantsChanged ) this . onAuthParticipantsChanged ( this . _participants , this . _userId ) } ; DocsCoApi . prototype . disconnect = function ( opt _code , opt _reason ) { this . isCloseCoAuthoring = true ; if ( opt _code ) this . sockjs . close ( opt _code , opt _reason ) ; else { this . _send ( { "type" : "close" } ) ; this . _state = ConnectionState . ClosedCoAuth } } ; DocsCoApi . prototype . extendSession = function ( idleTime ) { this . _send ( { "type" : "extendSession" , "idletime" : idleTime } ) } ; DocsCoApi . prototype . versionHistory =
function ( data ) { this . _send ( { "type" : "versionHistory" , "cmd" : data } ) } ; DocsCoApi . prototype . forceSave = function ( ) { var res = false ; var newForceSaveButtonTime = Math . max ( this . lastOtherSaveTime , this . lastOwnSaveTime ) ; if ( this . _lastForceSaveButtonTime < newForceSaveButtonTime ) { this . _lastForceSaveButtonTime = newForceSaveButtonTime ; this . _send ( { "type" : "forceSaveStart" } ) ; res = true } return res } ; DocsCoApi . prototype . openDocument = function ( data ) { this . _send ( { "type" : "openDocument" , "message" : data } ) } ; DocsCoApi . prototype . sendRawData =
function ( data ) { this . _sendRaw ( data ) } ; DocsCoApi . prototype . getMessages = function ( ) { this . _send ( { "type" : "getMessages" } ) } ; DocsCoApi . prototype . sendMessage = function ( message ) { if ( typeof message === "string" ) this . _send ( { "type" : "message" , "message" : message } ) } ; DocsCoApi . prototype . sendCursor = function ( cursor ) { if ( typeof cursor === "string" ) this . _send ( { "type" : "cursor" , "cursor" : cursor } ) } ; DocsCoApi . prototype . sendChangesError = function ( data ) { if ( typeof data === "string" ) this . _send ( { "type" : "changesError" , "stack" : data } ) } ; DocsCoApi . prototype . _applyPrebuffered =
function ( ) { for ( var i = 0 ; i < this . _msgInputBuffer . length ; ++ i ) this . _msgInputBuffer [ i ] ( ) ; this . _msgInputBuffer = [ ] } ; DocsCoApi . prototype . _sendPrebuffered = function ( ) { for ( var i = 0 ; i < this . _msgBuffer . length ; i ++ ) this . _sendRaw ( this . _msgBuffer [ i ] ) ; this . _msgBuffer = [ ] } ; DocsCoApi . prototype . _send = function ( data , useEncryption ) { if ( ! useEncryption && data && data [ "type" ] == "saveChanges" && AscCommon . EncryptionWorker && AscCommon . EncryptionWorker . isInit ( ) ) return AscCommon . EncryptionWorker . sendChanges ( this , data , AscCommon . EncryptionMessageType . Encrypt ) ;
if ( data !== null && typeof data === "object" ) if ( this . _state > 0 ) this . sockjs . send ( JSON . stringify ( data ) ) ; else this . _msgBuffer . push ( JSON . stringify ( data ) ) } ; DocsCoApi . prototype . _sendRaw = function ( data ) { if ( data !== null && typeof data === "string" ) if ( this . _state > 0 ) this . sockjs . send ( data ) ; else this . _msgBuffer . push ( data ) } ; DocsCoApi . prototype . _onMessages = function ( data , clear ) { if ( this . check _state ( ) && data [ "messages" ] && this . onMessage ) this . onMessage ( data [ "messages" ] , clear ) } ; DocsCoApi . prototype . _onServerVersion = function ( data ) { if ( this . onServerVersion ) this . onServerVersion ( data [ "buildVersion" ] ,
data [ "buildNumber" ] ) } ; DocsCoApi . prototype . _onCursor = function ( data ) { if ( this . check _state ( ) && data [ "messages" ] && this . onCursor ) this . onCursor ( data [ "messages" ] ) } ; DocsCoApi . prototype . _onMeta = function ( data ) { if ( data [ "messages" ] && this . onMeta ) this . onMeta ( data [ "messages" ] ) } ; DocsCoApi . prototype . _onSession = function ( data ) { if ( this . check _state ( ) && data [ "messages" ] && this . onSession ) this . onSession ( data [ "messages" ] ) } ; DocsCoApi . prototype . _onExpiredToken = function ( data ) { if ( this . onExpiredToken ) this . onExpiredToken ( data ) } ; DocsCoApi . prototype . _onHasForgotten =
function ( data ) { if ( this . onHasForgotten ) this . onHasForgotten ( ) } ; DocsCoApi . prototype . _onRefreshToken = function ( jwt ) { this . jwtOpen = undefined ; if ( jwt ) this . jwtSession = jwt } ; DocsCoApi . prototype . _onForceSaveStart = function ( data ) { var code = data [ "code" ] ; if ( code === c _oAscServerCommandErrors . NoError ) { this . _lastForceSaveButtonTime = data [ "time" ] ; this . onForceSave ( { type : c _oAscForceSaveTypes . Button , start : true } ) } else if ( code === c _oAscServerCommandErrors . NotModified ) this . onForceSave ( { type : c _oAscForceSaveTypes . Button , refuse : true } ) ;
else this . onWarning ( Asc . c _oAscError . ID . Unknown ) } ; DocsCoApi . prototype . _onForceSave = function ( data ) { var type = data [ "type" ] ; if ( c _oAscForceSaveTypes . Button === type ) { if ( this . _lastForceSaveButtonTime == data [ "time" ] ) this . onForceSave ( { type : type , success : data [ "success" ] } ) } else if ( data [ "start" ] ) { this . onForceSave ( { type : type , start : true } ) ; this . _lastForceSaveTimeoutTime = data [ "time" ] } else if ( this . _lastForceSaveTimeoutTime == data [ "time" ] ) this . onForceSave ( { type : type , success : data [ "success" ] } ) } ; DocsCoApi . prototype . _onGetLock =
function ( data ) { if ( this . check _state ( ) && data [ "locks" ] ) for ( var key in data [ "locks" ] ) if ( data [ "locks" ] . hasOwnProperty ( key ) ) { var lock = data [ "locks" ] [ key ] , blockTmp = this . _isExcel || this . _isPresentation ? lock [ "block" ] [ "guid" ] : key , blockValue = this . _isExcel || this . _isPresentation ? lock [ "block" ] : key ; if ( lock !== null ) { var changed = true ; if ( this . _locks [ blockTmp ] && 1 !== this . _locks [ blockTmp ] . state ) changed = ! ( this . _locks [ blockTmp ] . state === ( lock [ "user" ] === this . _userId ? 2 : 3 ) && this . _locks [ blockTmp ] [ "user" ] === lock [ "user" ] && this . _locks [ blockTmp ] [ "time" ] ===
lock [ "time" ] && this . _locks [ blockTmp ] [ "block" ] === blockTmp ) ; if ( changed ) this . _locks [ blockTmp ] = { "state" : lock [ "user" ] === this . _userId ? 2 : 3 , "user" : lock [ "user" ] , "time" : lock [ "time" ] , "block" : blockTmp , "blockValue" : blockValue } ; if ( this . _lockCallbacks . hasOwnProperty ( blockTmp ) ) { if ( lock [ "user" ] === this . _userId ) this . _lockCallbacks [ blockTmp ] ( { "lock" : this . _locks [ blockTmp ] } ) ; else this . _lockCallbacks [ blockTmp ] ( { "error" : "Already locked by " + lock [ "user" ] } ) ; if ( this . _lockCallbacksErrorTimerId . hasOwnProperty ( blockTmp ) ) { clearTimeout ( this . _lockCallbacksErrorTimerId [ blockTmp ] ) ;
delete this . _lockCallbacksErrorTimerId [ blockTmp ] } delete this . _lockCallbacks [ blockTmp ] } if ( this . onLocksAcquired && changed ) this . onLocksAcquired ( this . _locks [ blockTmp ] ) } } } ; DocsCoApi . prototype . _onReleaseLock = function ( data ) { if ( this . check _state ( ) && data [ "locks" ] ) { var bSendEnd = false ; for ( var block in data [ "locks" ] ) if ( data [ "locks" ] . hasOwnProperty ( block ) ) { var lock = data [ "locks" ] [ block ] , blockTmp = this . _isExcel || this . _isPresentation ? lock [ "block" ] [ "guid" ] : lock [ "block" ] ; if ( lock !== null ) { this . _locks [ blockTmp ] = { "state" : 0 ,
"user" : lock [ "user" ] , "time" : lock [ "time" ] , "changes" : lock [ "changes" ] , "block" : lock [ "block" ] } ; if ( this . onLocksReleased ) { this . onLocksReleased ( this . _locks [ blockTmp ] , false ) ; bSendEnd = true } } } if ( bSendEnd && this . onLocksReleasedEnd ) this . onLocksReleasedEnd ( ) } } ; DocsCoApi . prototype . _documentOpen = function ( data ) { this . onDocumentOpen ( data ) } ; DocsCoApi . prototype . _onSaveChanges = function ( data , useEncryption ) { if ( ! this . check _state ( ) ) { if ( ! this . get _isAuth ( ) ) this . _authOtherChanges . push ( data ) ; return } if ( ! useEncryption && AscCommon . EncryptionWorker &&
AscCommon . EncryptionWorker . isInit ( ) ) return AscCommon . EncryptionWorker . sendChanges ( this , data , AscCommon . EncryptionMessageType . Decrypt ) ; if ( data [ "locks" ] ) { var bSendEnd = false ; for ( var block in data [ "locks" ] ) if ( data [ "locks" ] . hasOwnProperty ( block ) ) { var lock = data [ "locks" ] [ block ] ; if ( lock !== null ) { var blockTmp = this . _isExcel || this . _isPresentation ? lock [ "block" ] [ "guid" ] : lock [ "block" ] ; this . _locks [ blockTmp ] = { "state" : 0 , "user" : lock [ "user" ] , "time" : lock [ "time" ] , "changes" : lock [ "changes" ] , "block" : lock [ "block" ] } ; if ( this . onLocksReleased ) { this . onLocksReleased ( this . _locks [ blockTmp ] ,
true ) ; bSendEnd = true } } } if ( bSendEnd && this . onLocksReleasedEnd ) this . onLocksReleasedEnd ( ) } this . _updateChanges ( data [ "changes" ] , data [ "changesIndex" ] , false ) ; if ( this . onRecalcLocks ) this . onRecalcLocks ( data [ "excelAdditionalInfo" ] ) } ; DocsCoApi . prototype . _onStartCoAuthoring = function ( isStartEvent , isWaitAuth ) { if ( isWaitAuth && false === this . isCoAuthoring && ! this . onStartCoAuthoring ) { var errorMsg = "Error: connection state changed waitAuth" + ";this.onStartCoAuthoring:" + ! ! this . onStartCoAuthoring ; this . sendChangesError ( errorMsg ) } if ( false ===
this . isCoAuthoring ) { this . isCoAuthoring = true ; if ( this . onStartCoAuthoring ) this . onStartCoAuthoring ( isStartEvent , isWaitAuth ) } else if ( isWaitAuth ) { this . canUnlockDocument = true ; this . unLockDocument ( false ) } } ; DocsCoApi . prototype . _onEndCoAuthoring = function ( isStartEvent ) { if ( true === this . isCoAuthoring ) { this . isCoAuthoring = false ; if ( this . onEndCoAuthoring ) this . onEndCoAuthoring ( isStartEvent ) } } ; DocsCoApi . prototype . _onSaveLock = function ( data ) { if ( null != data [ "saveLock" ] ) { var indexCallback = this . _saveCallback . length - 1 ; var oTmpCallback =
this . _saveCallback [ indexCallback ] ; if ( oTmpCallback ) { if ( null !== this . saveLockCallbackErrorTimeOutId ) { clearTimeout ( this . saveLockCallbackErrorTimeOutId ) ; this . saveLockCallbackErrorTimeOutId = null } this . _saveCallback [ indexCallback ] = null ; oTmpCallback ( data ) } } if ( null == data [ "saveLock" ] || data [ "error" ] || data [ "saveLock" ] ) { this . _state = ConnectionState . Authorized ; this . _sendBufferedLocks ( ) } } ; DocsCoApi . prototype . _onUnSaveLock = function ( data ) { if ( null !== this . saveCallbackErrorTimeOutId ) { clearTimeout ( this . saveCallbackErrorTimeOutId ) ;
this . saveCallbackErrorTimeOutId = null } if ( null !== this . unSaveLockCallbackErrorTimeOutId ) { clearTimeout ( this . unSaveLockCallbackErrorTimeOutId ) ; this . unSaveLockCallbackErrorTimeOutId = null } this . _state = ConnectionState . Authorized ; this . _sendBufferedLocks ( ) ; if ( - 1 !== data [ "index" ] ) this . changesIndex = data [ "index" ] ; if ( - 1 !== data [ "time" ] ) this . lastOwnSaveTime = data [ "time" ] ; if ( this . onUnSaveLock ) this . onUnSaveLock ( ) } ; DocsCoApi . prototype . _updateChanges = function ( allServerChanges , changesIndex , bFirstLoad ) { if ( this . onSaveChanges ) { this . changesIndex =
changesIndex ; if ( allServerChanges ) for ( var i = 0 ; i < allServerChanges . length ; ++ i ) { var change = allServerChanges [ i ] ; var changesOneUser = change [ "change" ] ; if ( changesOneUser ) { if ( change [ "user" ] !== this . _userId ) this . lastOtherSaveTime = change [ "time" ] ; this . onSaveChanges ( JSON . parse ( changesOneUser ) , change [ "useridoriginal" ] , bFirstLoad ) } } } } ; DocsCoApi . prototype . _onSetIndexUser = function ( data ) { if ( this . onSetIndexUser ) this . onSetIndexUser ( data ) } ; DocsCoApi . prototype . _onSpellCheckInit = function ( data ) { if ( this . onSpellCheckInit ) this . onSpellCheckInit ( data ) } ;
DocsCoApi . prototype . _onSavePartChanges = function ( data ) { if ( null !== this . saveCallbackErrorTimeOutId ) { clearTimeout ( this . saveCallbackErrorTimeOutId ) ; this . saveCallbackErrorTimeOutId = null } if ( - 1 !== data [ "changesIndex" ] ) this . changesIndex = data [ "changesIndex" ] ; this . saveChanges ( this . arrayChanges , this . currentIndexEnd ) } ; DocsCoApi . prototype . _onPreviousLocks = function ( locks , previousLocks ) { var i = 0 ; if ( locks && previousLocks ) { for ( var block in locks ) if ( locks . hasOwnProperty ( block ) ) { var lock = locks [ block ] ; if ( lock !== null && lock [ "block" ] ) for ( i =
0 ; i < previousLocks . length ; i ++ ) if ( previousLocks [ i ] === lock [ "block" ] && lock [ "user" ] === this . _userId ) { previousLocks . remove ( i ) ; break } } if ( previousLocks . length > 0 && this . onRelockFailed ) this . onRelockFailed ( previousLocks ) ; previousLocks = [ ] } } ; DocsCoApi . prototype . _onParticipantsChanged = function ( participants , needChanged ) { var participantsNew = { } ; var countEditUsersNew = 0 ; var countUsersNew = 0 ; var tmpUser ; var i ; var usersStateChanged = [ ] ; if ( participants ) for ( i = 0 ; i < participants . length ; ++ i ) { tmpUser = new AscCommon . asc _CUser ( participants [ i ] ) ;
participantsNew [ tmpUser . asc _getId ( ) ] = tmpUser ; if ( ! tmpUser . asc _getView ( ) ) ++ countEditUsersNew ; ++ countUsersNew } if ( needChanged ) { for ( i in participantsNew ) if ( ! this . _participants [ i ] ) { tmpUser = participantsNew [ i ] ; tmpUser . setState ( true ) ; usersStateChanged . push ( tmpUser ) } for ( i in this . _participants ) if ( ! participantsNew [ i ] ) { tmpUser = this . _participants [ i ] ; tmpUser . setState ( false ) ; usersStateChanged . push ( tmpUser ) } } this . _participants = participantsNew ; this . _countEditUsers = countEditUsersNew ; this . _countUsers = countUsersNew ;
return usersStateChanged } ; DocsCoApi . prototype . _onAuthParticipantsChanged = function ( participants ) { this . _participants = { } ; this . _countEditUsers = 0 ; this . _countUsers = 0 ; if ( participants ) { this . _onParticipantsChanged ( participants ) ; if ( this . onAuthParticipantsChanged ) this . onAuthParticipantsChanged ( this . _participants , this . _userId ) ; if ( 1 < this . _countEditUsers ) this . _onStartCoAuthoring ( true ) ; else this . _onEndCoAuthoring ( true ) } } ; DocsCoApi . prototype . _onConnectionStateChanged = function ( data ) { var t = this ; if ( ! this . check _state ( ) ) { this . _msgInputBuffer . push ( function ( ) { t . _onConnectionStateChanged ( data ) } ) ;
return } var isWaitAuth = data [ "waitAuth" ] ; var usersStateChanged ; if ( isWaitAuth && ! ( this . onConnectionStateChanged && ( ! this . _participantsTimestamp || this . _participantsTimestamp <= data [ "participantsTimestamp" ] ) ) ) { var errorMsg = "Error: connection state changed waitAuth" + ";onConnectionStateChanged:" + ! ! this . onConnectionStateChanged + ";this._participantsTimestamp:" + this . _participantsTimestamp + ";data.participantsTimestamp:" + data [ "participantsTimestamp" ] ; this . sendChangesError ( errorMsg ) } if ( this . onConnectionStateChanged &&
( ! this . _participantsTimestamp || this . _participantsTimestamp <= data [ "participantsTimestamp" ] ) ) { this . _participantsTimestamp = data [ "participantsTimestamp" ] ; usersStateChanged = this . _onParticipantsChanged ( data [ "participants" ] , true ) ; if ( isWaitAuth && ! ( usersStateChanged . length > 0 && 1 < this . _countEditUsers ) ) { var errorMsg = "Error: connection state changed waitAuth" + ";usersStateChanged:" + JSON . stringify ( usersStateChanged ) + ";this._countEditUsers:" + this . _countEditUsers ; this . sendChangesError ( errorMsg ) } if ( usersStateChanged . length >
0 ) { if ( 1 < this . _countEditUsers ) this . _onStartCoAuthoring ( false , isWaitAuth ) ; else this . _onEndCoAuthoring ( false ) ; this . onParticipantsChanged ( this . _participants ) ; for ( var i = 0 ; i < usersStateChanged . length ; ++ i ) this . onConnectionStateChanged ( usersStateChanged [ i ] ) } } } ; DocsCoApi . prototype . _onLicenseChanged = function ( data ) { this . onLicenseChanged ( data [ "licenseType" ] ) } ; DocsCoApi . prototype . _onDrop = function ( data ) { this . disconnect ( ) ; var code = data && data [ "code" ] || c _oCloseCode . drop ; this . onDisconnect ( data ? data [ "description" ] : "" ,
code ) } ; DocsCoApi . prototype . _onWarning = function ( data ) { this . onWarning ( Asc . c _oAscError . ID . Warning ) } ; DocsCoApi . prototype . _onLicense = function ( data ) { if ( ! this . isLicenseInit ) { this . isLicenseInit = true ; this . onLicense ( data [ "license" ] ) } } ; DocsCoApi . prototype . _onAuth = function ( data ) { var t = this ; this . _onRefreshToken ( data [ "jwt" ] ) ; if ( true === this . _isAuth ) { this . _state = ConnectionState . Authorized ; if ( this . isCloseCoAuthoring ) return ; this . _onServerVersion ( data ) ; this . _onLicenseChanged ( data ) ; this . _onAuthParticipantsChanged ( data [ "participants" ] ) ;
this . _onMessages ( data , true ) ; this . _onGetLock ( data ) ; this . _applyPrebuffered ( ) ; if ( this . _isReSaveAfterAuth ) { this . _isReSaveAfterAuth = false ; var callbackAskSaveChanges = function ( e ) { if ( false === e [ "saveLock" ] ) t . _reSaveChanges ( 2 ) ; else setTimeout ( function ( ) { t . askSaveChanges ( callbackAskSaveChanges ) } , 1E3 ) } ; this . askSaveChanges ( callbackAskSaveChanges ) } return } if ( data [ "result" ] === 1 ) { this . _isAuth = true ; this . _state = ConnectionState . Authorized ; this . _id = data [ "sessionId" ] ; this . _indexUser = data [ "indexUser" ] ; this . _userId = this . _user . asc _getId ( ) +
this . _indexUser ; this . _sessionTimeConnect = data [ "sessionTimeConnect" ] ; if ( data [ "settings" ] ) { if ( data [ "settings" ] [ "reconnection" ] ) { this . maxAttemptCount = data [ "settings" ] [ "reconnection" ] [ "attempts" ] ; this . reconnectInterval = data [ "settings" ] [ "reconnection" ] [ "delay" ] } if ( data [ "settings" ] [ "websocketMaxPayloadSize" ] ) this . websocketMaxPayloadSize = data [ "settings" ] [ "websocketMaxPayloadSize" ] } this . _onLicenseChanged ( data ) ; this . _onAuthParticipantsChanged ( data [ "participants" ] ) ; this . _onSpellCheckInit ( data [ "g_cAscSpellCheckUrl" ] ) ;
this . _onSetIndexUser ( this . _indexUser ) ; this . _onMessages ( data , false ) ; this . _onGetLock ( data ) ; if ( data [ "hasForgotten" ] ) this . _onHasForgotten ( ) ; if ( window [ "AscApplyChanges" ] && window [ "AscChanges" ] ) { var userOfflineChanges = window [ "AscChanges" ] , changeOneUser ; for ( var i = 0 ; i < userOfflineChanges . length ; ++ i ) { changeOneUser = userOfflineChanges [ i ] ; for ( var j = 0 ; j < changeOneUser . length ; ++ j ) this . onSaveChanges ( changeOneUser [ j ] , null , true ) } } this . _updateAuthChanges ( ) ; if ( this . onFirstLoadChangesEnd ) this . onFirstLoadChangesEnd ( ) ; this . _applyPrebuffered ( ) ;
this . _sendPrebuffered ( ) } } ; DocsCoApi . prototype . _onAuthChanges = function ( data ) { this . _authChanges . push ( data [ "changes" ] ) } ; DocsCoApi . prototype . _updateAuthChanges = function ( ) { var changesIndex = 0 , i , changes , data , indexDiff ; for ( i = 0 ; i < this . _authChanges . length ; ++ i ) { changes = this . _authChanges [ i ] ; changesIndex += changes . length ; this . _updateChanges ( changes , changesIndex , true ) } this . _authChanges = [ ] ; for ( i = 0 ; i < this . _authOtherChanges . length ; ++ i ) { data = this . _authOtherChanges [ i ] ; indexDiff = data [ "changesIndex" ] - changesIndex ; if ( indexDiff >
0 ) { if ( indexDiff >= data [ "changes" ] . length ) changes = data [ "changes" ] ; else changes = data [ "changes" ] . splice ( data [ "changes" ] . length - indexDiff , indexDiff ) ; changesIndex += changes . length ; this . _updateChanges ( changes , changesIndex , true ) } } this . _authOtherChanges = [ ] } ; DocsCoApi . prototype . init = function ( user , docid , documentCallbackUrl , token , editorType , documentFormatSave , docInfo ) { this . _user = user ; this . _docid = null ; this . _documentCallbackUrl = documentCallbackUrl ; this . _token = token ; this . ownedLockBlocks = [ ] ; this . sockjs _url = null ; this . editorType =
editorType ; this . _isExcel = c _oEditorId . Spreadsheet === editorType ; this . _isPresentation = c _oEditorId . Presentation === editorType ; this . _isAuth = false ; this . _documentFormatSave = documentFormatSave ; this . mode = docInfo . get _Mode ( ) ; this . permissions = docInfo . get _Permissions ( ) ; this . lang = docInfo . get _Lang ( ) ; this . jwtOpen = docInfo . get _Token ( ) ; this . encrypted = docInfo . get _Encrypted ( ) ; this . setDocId ( docid ) ; this . _initSocksJs ( ) } ; DocsCoApi . prototype . getDocId = function ( ) { return this . _docid } ; DocsCoApi . prototype . setDocId = function ( docid ) { this . _docid =
docid ; this . sockjs _url = AscCommon . getBaseUrl ( ) + "../../../../doc/" + docid + "/c" } ; DocsCoApi . prototype . auth = function ( isViewer , opt _openCmd , opt _isIdle ) { this . _isViewer = isViewer ; if ( this . _locks ) { this . ownedLockBlocks = [ ] ; for ( var block in this . _locks ) if ( this . _locks . hasOwnProperty ( block ) ) { var lock = this . _locks [ block ] ; if ( lock [ "state" ] === 2 ) this . ownedLockBlocks . push ( lock [ "blockValue" ] ) } this . _locks = { } } this . _send ( { "type" : "auth" , "docid" : this . _docid , "documentCallbackUrl" : this . _documentCallbackUrl , "token" : this . _token , "user" : { "id" : this . _user . asc _getId ( ) ,
"username" : this . _user . asc _getUserName ( ) , "firstname" : this . _user . asc _getFirstName ( ) , "lastname" : this . _user . asc _getLastName ( ) , "indexUser" : this . _indexUser } , "editorType" : this . editorType , "lastOtherSaveTime" : this . lastOtherSaveTime , "block" : this . ownedLockBlocks , "sessionId" : this . _id , "sessionTimeConnect" : this . _sessionTimeConnect , "sessionTimeIdle" : opt _isIdle >= 0 ? opt _isIdle : 0 , "documentFormatSave" : this . _documentFormatSave , "view" : this . _isViewer , "isCloseCoAuthoring" : this . isCloseCoAuthoring , "openCmd" : opt _openCmd , "lang" : this . lang ,
"mode" : this . mode , "permissions" : this . permissions , "encrypted" : this . encrypted , "jwtOpen" : this . jwtOpen , "jwtSession" : this . jwtSession } ) } ; DocsCoApi . prototype . _initSocksJs = function ( ) { var t = this ; var sockjs ; sockjs = this . sockjs = { } ; var send = function ( data ) { setTimeout ( function ( ) { sockjs . onmessage ( { data : JSON . stringify ( data ) } ) } ) } ; var license = { type : "license" , license : { type : 3 , mode : 0 , rights : 1 , buildVersion : "5.2.6" , buildNumber : 2 } } ; var channel ; require ( [ "/common/outer/worker-channel.js" , "/common/common-util.js" ] , function ( Channel ,
Util ) { var msgEv = Util . mkEvent ( ) ; var p = window . parent ; window . addEventListener ( "message" , function ( msg ) { if ( msg . source !== p ) return ; msgEv . fire ( msg ) } ) ; var postMsg = function ( data ) { p . postMessage ( data , "*" ) } ; Channel . create ( msgEv , postMsg , function ( chan ) { channel = chan ; send ( license ) ; chan . on ( "CMD" , function ( obj ) { send ( obj ) } ) } ) } ) ; sockjs . onopen = function ( ) { t . _state = ConnectionState . WaitAuth ; t . onFirstConnect ( ) } ; sockjs . onopen ( ) ; sockjs . close = function ( ) { console . error ( "Close realtime" ) } ; sockjs . send = function ( data ) { try { var obj = JSON . parse ( data ) } catch ( e ) { console . error ( e ) ;
return } if ( channel ) channel . event ( "CMD" , obj ) } ; sockjs . onmessage = function ( e ) { t . _onServerMessage ( e . data ) } ; return sockjs } ; DocsCoApi . prototype . _onServerOpen = function ( ) { if ( this . reconnectTimeout ) { clearTimeout ( this . reconnectTimeout ) ; this . reconnectTimeout = null ; this . attemptCount = 0 } this . _state = ConnectionState . WaitAuth ; this . onFirstConnect ( ) } ; DocsCoApi . prototype . _onServerMessage = function ( data ) { var dataObject = JSON . parse ( data ) ; switch ( dataObject [ "type" ] ) { case "auth" : this . _onAuth ( dataObject ) ; break ; case "message" : this . _onMessages ( dataObject ,
false ) ; break ; case "cursor" : this . _onCursor ( dataObject ) ; break ; case "meta" : this . _onMeta ( dataObject ) ; break ; case "getLock" : this . _onGetLock ( dataObject ) ; break ; case "releaseLock" : this . _onReleaseLock ( dataObject ) ; break ; case "connectState" : this . _onConnectionStateChanged ( dataObject ) ; break ; case "saveChanges" : this . _onSaveChanges ( dataObject ) ; break ; case "authChanges" : this . _onAuthChanges ( dataObject ) ; break ; case "saveLock" : this . _onSaveLock ( dataObject ) ; break ; case "unSaveLock" : this . _onUnSaveLock ( dataObject ) ; break ; case "savePartChanges" : this . _onSavePartChanges ( dataObject ) ;
break ; case "drop" : this . _onDrop ( dataObject ) ; break ; case "waitAuth" : break ; case "error" : this . _onDrop ( dataObject ) ; break ; case "documentOpen" : this . _documentOpen ( dataObject ) ; break ; case "warning" : this . _onWarning ( dataObject ) ; break ; case "license" : this . _onLicense ( dataObject ) ; break ; case "session" : this . _onSession ( dataObject ) ; break ; case "refreshToken" : this . _onRefreshToken ( dataObject [ "messages" ] ) ; break ; case "expiredToken" : this . _onExpiredToken ( dataObject ) ; break ; case "forceSaveStart" : this . _onForceSaveStart ( dataObject [ "messages" ] ) ;
break ; case "forceSave" : this . _onForceSave ( dataObject [ "messages" ] ) ; break } } ; DocsCoApi . prototype . _onServerClose = function ( evt ) { if ( ConnectionState . SaveChanges === this . _state ) { this . _isReSaveAfterAuth = true ; if ( null !== this . saveCallbackErrorTimeOutId ) { clearTimeout ( this . saveCallbackErrorTimeOutId ) ; this . saveCallbackErrorTimeOutId = null } } this . _state = ConnectionState . Reconnect ; var bIsDisconnectAtAll = c _oCloseCode . serverShutdown <= evt . code && evt . code <= c _oCloseCode . drop || this . attemptCount >= this . maxAttemptCount ; var code =
null ; if ( bIsDisconnectAtAll ) { this . _state = ConnectionState . ClosedAll ; code = evt . code } if ( this . onDisconnect ) this . onDisconnect ( evt . reason , code ) ; if ( ! bIsDisconnectAtAll ) this . _tryReconnect ( ) } ; DocsCoApi . prototype . _reconnect = function ( ) { delete this . sockjs ; this . _initSocksJs ( ) } ; DocsCoApi . prototype . _tryReconnect = function ( ) { var t = this ; if ( this . reconnectTimeout ) { clearTimeout ( this . reconnectTimeout ) ; t . reconnectTimeout = null } ++ this . attemptCount ; this . reconnectTimeout = setTimeout ( function ( ) { t . _reconnect ( ) } , this . reconnectInterval ) } ;
window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . CDocsCoApi = CDocsCoApi } ) ( window ) ; "use strict" ;
( function ( window ) { var CSpellCheckApi = function ( ) { this . _SpellCheckApi = new SpellCheckApi ; this . _onlineWork = false ; this . onDisconnect = null ; this . onSpellCheck = null } ; CSpellCheckApi . prototype . init = function ( docid ) { if ( this . _SpellCheckApi && this . _SpellCheckApi . isRightURL ( ) ) { var t = this ; this . _SpellCheckApi . onDisconnect = function ( e , isDisconnectAtAll , isCloseCoAuthoring ) { t . callback _OnDisconnect ( e , isDisconnectAtAll , isCloseCoAuthoring ) } ; this . _SpellCheckApi . onSpellCheck = function ( e ) { t . callback _OnSpellCheck ( e ) } ; this . _SpellCheckApi . onInit =
function ( e ) { t . callback _OnInit ( e ) } ; this . _SpellCheckApi . init ( docid ) ; this . _onlineWork = true } } ; CSpellCheckApi . prototype . set _url = function ( url ) { if ( this . _SpellCheckApi ) this . _SpellCheckApi . set _url ( url ) } ; CSpellCheckApi . prototype . get _state = function ( ) { if ( this . _SpellCheckApi ) return this . _SpellCheckApi . get _state ( ) ; return 0 } ; CSpellCheckApi . prototype . disconnect = function ( ) { if ( this . _SpellCheckApi && this . _onlineWork ) this . _SpellCheckApi . disconnect ( ) } ; CSpellCheckApi . prototype . spellCheck = function ( spellCheckData ) { if ( this . _SpellCheckApi &&
this . _onlineWork ) this . _SpellCheckApi . spellCheck ( spellCheckData ) } ; CSpellCheckApi . prototype . checkDictionary = function ( lang ) { if ( this . _SpellCheckApi && this . _onlineWork ) return this . _SpellCheckApi . checkDictionary ( lang ) ; return true } ; CSpellCheckApi . prototype . callback _OnSpellCheck = function ( e ) { if ( this . onSpellCheck ) return this . onSpellCheck ( e ) } ; CSpellCheckApi . prototype . callback _OnInit = function ( e ) { if ( this . onInit ) return this . onInit ( e ) } ; CSpellCheckApi . prototype . callback _OnDisconnect = function ( e , isDisconnectAtAll , isCloseCoAuthoring ) { if ( this . onDisconnect ) return this . onDisconnect ( e ,
isDisconnectAtAll , isCloseCoAuthoring ) } ; var SpellCheckApi = function ( ) { this . onDisconnect = null ; this . onConnect = null ; this . onSpellCheck = null ; this . onInit = null ; this . _state = 0 ; this . isCloseCoAuthoring = false ; this . isInit = false ; this . languages = null ; this . dataNeedSend = [ ] ; this . _url = "" } ; SpellCheckApi . prototype . isRightURL = function ( ) { return "" !== this . _url } ; SpellCheckApi . prototype . set _url = function ( url ) { this . _url = url } ; SpellCheckApi . prototype . get _state = function ( ) { return this . _state } ; SpellCheckApi . prototype . spellCheck = function ( spellCheckData ) { this . _send ( { "type" : "spellCheck" ,
"spellCheckData" : spellCheckData } ) } ; SpellCheckApi . prototype . checkDictionary = function ( lang ) { return ! this . isInit || ! ! this . languages [ lang ] } ; SpellCheckApi . prototype . disconnect = function ( ) { this . isCloseCoAuthoring = true ; return this . sockjs . close ( ) } ; SpellCheckApi . prototype . _send = function ( data ) { if ( data !== null && typeof data === "object" ) if ( this . _state > 0 ) this . sockjs . send ( JSON . stringify ( data ) ) ; else this . dataNeedSend . push ( data ) } ; SpellCheckApi . prototype . _sendAfterConnect = function ( ) { var data ; while ( this . _state > 0 && undefined !==
( data = this . dataNeedSend . shift ( ) ) ) this . _send ( data ) } ; SpellCheckApi . prototype . _onSpellCheck = function ( data ) { if ( data [ "spellCheckData" ] && this . onSpellCheck ) this . onSpellCheck ( data [ "spellCheckData" ] ) } ; SpellCheckApi . prototype . _onInit = function ( data ) { if ( ! this . isInit && data [ "languages" ] ) { if ( this . onInit ) this . onInit ( data [ "languages" ] ) ; this . languages = data [ "languages" ] . reduce ( function ( map , value ) { map [ value ] = 1 ; return map } , { } ) ; this . isInit = true } } ; var reconnectTimeout , attemptCount = 0 ; function initSocksJs ( url , docsCoApi ) { if ( window [ "IS_NATIVE_EDITOR" ] ) return ;
var sockjs = new ( AscCommon . getSockJs ( ) ) ( url , null , { "transports" : [ "websocket" , "xdr-polling" , "xhr-polling" , "iframe-xhr-polling" , "jsonp-polling" ] } ) ; sockjs . onopen = function ( ) { if ( reconnectTimeout ) { clearTimeout ( reconnectTimeout ) ; attemptCount = 0 } docsCoApi . _state = 1 ; if ( docsCoApi . onConnect ) docsCoApi . onConnect ( ) ; docsCoApi . _sendAfterConnect ( ) } ; sockjs . onmessage = function ( e ) { var dataObject = JSON . parse ( e . data ) ; var type = dataObject . type ; switch ( type ) { case "spellCheck" : docsCoApi . _onSpellCheck ( dataObject ) ; break ; case "init" : docsCoApi . _onInit ( dataObject ) ;
break } } ; sockjs . onclose = function ( evt ) { docsCoApi . _state = - 1 ; var bIsDisconnectAtAll = attemptCount >= 20 || docsCoApi . isCloseCoAuthoring ; if ( bIsDisconnectAtAll ) docsCoApi . _state = 3 ; if ( docsCoApi . onDisconnect ) docsCoApi . onDisconnect ( evt . reason , bIsDisconnectAtAll , docsCoApi . isCloseCoAuthoring ) ; if ( docsCoApi . isCloseCoAuthoring ) return ; if ( attemptCount < 20 ) tryReconnect ( ) } ; function tryReconnect ( ) { if ( reconnectTimeout ) clearTimeout ( reconnectTimeout ) ; attemptCount ++ ; reconnectTimeout = setTimeout ( function ( ) { delete docsCoApi . sockjs ;
docsCoApi . sockjs = initSocksJs ( url , docsCoApi ) } , 500 * attemptCount ) } return sockjs } SpellCheckApi . prototype . init = function ( docid ) { this . _docid = docid ; var re = /^https?:\/\// ; var spellcheckUrl = this . _url + "/doc/" + docid + "/c" ; if ( re . test ( this . _url ) ) this . sockjs _url = spellcheckUrl ; else this . sockjs _url = AscCommon . getBaseUrl ( ) + "../../../.." + spellcheckUrl ; this . sockjs = initSocksJs ( this . sockjs _url , this ) } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . CSpellCheckApi = CSpellCheckApi } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var Asc = window [ "Asc" ] ; var AscCommon = window [ "AscCommon" ] ; var prot ; var c _oAscMouseMoveDataTypes = Asc . c _oAscMouseMoveDataTypes ; var c _oAscColor = Asc . c _oAscColor ; var c _oAscFill = Asc . c _oAscFill ; var c _oAscFillBlipType = Asc . c _oAscFillBlipType ; var c _oAscChartTypeSettings = Asc . c _oAscChartTypeSettings ; var c _oAscTickMark = Asc . c _oAscTickMark ; var c _oAscAxisType = Asc . c _oAscAxisType ; var c _oAscArrUserColors = [ 16757719 , 7929702 , 56805 , 10081791 , 12884479 , 16751001 , 6748927 , 16762931 , 6865407 , 15650047 , 16737894 ,
3407768 , 16759142 , 10852863 , 6750176 , 16774656 , 13926655 , 13815039 , 3397375 , 11927347 , 16752947 , 9404671 , 4980531 , 16744678 , 3407830 , 15919360 , 16731553 , 52479 , 13330175 , 16743219 , 3386367 , 14221056 , 16737966 , 1896960 , 65484 , 10970879 , 16759296 , 16711680 , 13496832 , 62072 , 49906 , 16734720 , 10682112 , 7890687 , 16731610 , 65406 , 38655 , 16747008 , 59890 , 12733951 , 15859712 , 47077 , 15050496 , 15224319 , 10154496 , 58807 , 16724950 , 1759488 , 9981439 , 15064320 , 15893248 , 16724883 , 58737 , 15007744 , 36594 , 12772608 , 12137471 , 6442495 , 15039488 , 16718470 , 14274816 , 53721 ,
16718545 , 1625088 , 15881472 , 13419776 , 32985 , 16711800 , 1490688 , 16711884 , 8991743 , 13407488 , 41932 , 7978752 , 15028480 , 52387 , 15007927 , 12114176 , 1421824 , 55726 , 13041893 , 10665728 , 30924 , 49049 , 14241024 , 36530 , 11709440 , 13397504 , 45710 , 34214 ] ; function CreateAscColorCustom ( r , g , b , auto ) { var ret = new asc _CColor ; ret . type = c _oAscColor . COLOR _TYPE _SRGB ; ret . r = r ; ret . g = g ; ret . b = b ; ret . a = 255 ; ret . Auto = undefined === auto ? false : auto ; return ret } function CreateAscColor ( unicolor ) { if ( null == unicolor || null == unicolor . color ) return new asc _CColor ;
var ret = new asc _CColor ; ret . r = unicolor . RGBA . R ; ret . g = unicolor . RGBA . G ; ret . b = unicolor . RGBA . B ; ret . a = unicolor . RGBA . A ; var _color = unicolor . color ; switch ( _color . type ) { case c _oAscColor . COLOR _TYPE _SRGB : case c _oAscColor . COLOR _TYPE _SYS : { break } case c _oAscColor . COLOR _TYPE _PRST : case c _oAscColor . COLOR _TYPE _SCHEME : { ret . type = _color . type ; ret . value = _color . id ; break } default : break } return ret } var uuid = [ ] ; for ( var i = 0 ; i < 256 ; i ++ ) uuid [ i ] = ( i < 16 ? "0" : "" ) + i . toString ( 16 ) ; function CreateUUID ( isNoDashes ) { var d0 = Math . random ( ) * 4294967295 |
0 ; var d1 = Math . random ( ) * 4294967295 | 0 ; var d2 = Math . random ( ) * 4294967295 | 0 ; var d3 = Math . random ( ) * 4294967295 | 0 ; if ( isNoDashes ) return uuid [ d0 & 255 ] + uuid [ d0 >> 8 & 255 ] + uuid [ d0 >> 16 & 255 ] + uuid [ d0 >> 24 & 255 ] + uuid [ d1 & 255 ] + uuid [ d1 >> 8 & 255 ] + uuid [ d1 >> 16 & 15 | 64 ] + uuid [ d1 >> 24 & 255 ] + uuid [ d2 & 63 | 128 ] + uuid [ d2 >> 8 & 255 ] + uuid [ d2 >> 16 & 255 ] + uuid [ d2 >> 24 & 255 ] + uuid [ d3 & 255 ] + uuid [ d3 >> 8 & 255 ] + uuid [ d3 >> 16 & 255 ] + uuid [ d3 >> 24 & 255 ] ; else return uuid [ d0 & 255 ] + uuid [ d0 >> 8 & 255 ] + uuid [ d0 >> 16 & 255 ] + uuid [ d0 >> 24 & 255 ] + "-" + uuid [ d1 & 255 ] + uuid [ d1 >> 8 & 255 ] + "-" + uuid [ d1 >>
16 & 15 | 64 ] + uuid [ d1 >> 24 & 255 ] + "-" + uuid [ d2 & 63 | 128 ] + uuid [ d2 >> 8 & 255 ] + "-" + uuid [ d2 >> 16 & 255 ] + uuid [ d2 >> 24 & 255 ] + uuid [ d3 & 255 ] + uuid [ d3 >> 8 & 255 ] + uuid [ d3 >> 16 & 255 ] + uuid [ d3 >> 24 & 255 ] } function CreateGUID ( ) { function s4 ( ) { return Math . floor ( ( 1 + Math . random ( ) ) * 65536 ) . toString ( 16 ) . substring ( 1 ) } var val = "{" + s4 ( ) + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + "-" + s4 ( ) + s4 ( ) + s4 ( ) + "}" ; val = val . toUpperCase ( ) ; return val } function CreateUInt32 ( ) { return Math . floor ( Math . random ( ) * 4294967296 ) } function FixDurableId ( val ) { var res = val & 2147483647 ; return 2147483647 !==
res ? res : res - 1 } function CreateDurableId ( ) { return FixDurableId ( CreateUInt32 ( ) ) } function ExtendPrototype ( dst , src ) { for ( var k in src . prototype ) dst . prototype [ k ] = src . prototype [ k ] } function isFileBuild ( ) { return window [ "NATIVE_EDITOR_ENJINE" ] && ! window [ "IS_NATIVE_EDITOR" ] && ! window [ "DoctRendererMode" ] } var c _oLicenseResult = { Error : 1 , Expired : 2 , Success : 3 , UnknownUser : 4 , Connections : 5 , ExpiredTrial : 6 , SuccessLimit : 7 , UsersCount : 8 , ConnectionsOS : 9 , UsersCountOS : 10 , ExpiredLimited : 11 } ; var c _oRights = { None : 0 , Edit : 1 , Review : 2 ,
Comment : 3 , View : 4 } ; var c _oLicenseMode = { None : 0 , Trial : 1 , Developer : 2 , Limited : 4 } ; var EPluginDataType = { none : "none" , text : "text" , ole : "ole" , html : "html" , desktop : "desktop" } ; function asc _CSignatureLine ( ) { this . id = undefined ; this . guid = "" ; this . signer1 = "" ; this . signer2 = "" ; this . email = "" ; this . instructions = "" ; this . showDate = false ; this . valid = 0 ; this . image = "" ; this . date = "" ; this . isvisible = false ; this . isrequested = false } asc _CSignatureLine . prototype . correct = function ( ) { if ( this . id == null ) this . id = "0" ; if ( this . guid == null ) this . guid = "" ;
if ( this . signer1 == null ) this . signer1 = "" ; if ( this . signer2 == null ) this . signer2 = "" ; if ( this . email == null ) this . email = "" ; if ( this . instructions == null ) this . instructions = "" ; if ( this . showDate == null ) this . showDate = false ; if ( this . valid == null ) this . valid = 0 ; if ( this . image == null ) this . image = "" ; if ( this . date == null ) this . date = "" ; if ( this . isvisible == null ) this . isvisible = false } ; asc _CSignatureLine . prototype . asc _getId = function ( ) { return this . id } ; asc _CSignatureLine . prototype . asc _setId = function ( v ) { this . id = v } ; asc _CSignatureLine . prototype . asc _getGuid =
function ( ) { return this . guid } ; asc _CSignatureLine . prototype . asc _setGuid = function ( v ) { this . guid = v } ; asc _CSignatureLine . prototype . asc _getSigner1 = function ( ) { return this . signer1 } ; asc _CSignatureLine . prototype . asc _setSigner1 = function ( v ) { this . signer1 = v } ; asc _CSignatureLine . prototype . asc _getSigner2 = function ( ) { return this . signer2 } ; asc _CSignatureLine . prototype . asc _setSigner2 = function ( v ) { this . signer2 = v } ; asc _CSignatureLine . prototype . asc _getEmail = function ( ) { return this . email } ; asc _CSignatureLine . prototype . asc _setEmail =
function ( v ) { this . email = v } ; asc _CSignatureLine . prototype . asc _getInstructions = function ( ) { return this . instructions } ; asc _CSignatureLine . prototype . asc _setInstructions = function ( v ) { this . instructions = v } ; asc _CSignatureLine . prototype . asc _getShowDate = function ( ) { return this . showDate } ; asc _CSignatureLine . prototype . asc _setShowDate = function ( v ) { this . showDate = v } ; asc _CSignatureLine . prototype . asc _getValid = function ( ) { return this . valid } ; asc _CSignatureLine . prototype . asc _setValid = function ( v ) { this . valid = v } ; asc _CSignatureLine . prototype . asc _getDate =
function ( ) { return this . date } ; asc _CSignatureLine . prototype . asc _setDate = function ( v ) { this . date = v } ; asc _CSignatureLine . prototype . asc _getVisible = function ( ) { return this . isvisible } ; asc _CSignatureLine . prototype . asc _setVisible = function ( v ) { this . isvisible = v } ; asc _CSignatureLine . prototype . asc _getRequested = function ( ) { return this . isrequested } ; asc _CSignatureLine . prototype . asc _setRequested = function ( v ) { this . isrequested = v } ; function asc _CAscEditorPermissions ( ) { this . licenseType = c _oLicenseResult . Error ; this . licenseMode =
c _oLicenseMode . None ; this . isLight = false ; this . rights = c _oRights . None ; this . canCoAuthoring = true ; this . canReaderMode = true ; this . canBranding = false ; this . customization = false ; this . isAutosaveEnable = true ; this . AutosaveMinInterval = 300 ; this . isAnalyticsEnable = false ; this . buildVersion = null ; this . buildNumber = null ; this . betaVersion = "false" ; return this } asc _CAscEditorPermissions . prototype . asc _getLicenseType = function ( ) { return this . licenseType } ; asc _CAscEditorPermissions . prototype . asc _getCanCoAuthoring = function ( ) { return this . canCoAuthoring } ;
asc _CAscEditorPermissions . prototype . asc _getCanReaderMode = function ( ) { return this . canReaderMode } ; asc _CAscEditorPermissions . prototype . asc _getCanBranding = function ( ) { return this . canBranding } ; asc _CAscEditorPermissions . prototype . asc _getCustomization = function ( ) { return this . customization } ; asc _CAscEditorPermissions . prototype . asc _getIsAutosaveEnable = function ( ) { return this . isAutosaveEnable } ; asc _CAscEditorPermissions . prototype . asc _getAutosaveMinInterval = function ( ) { return this . AutosaveMinInterval } ; asc _CAscEditorPermissions . prototype . asc _getIsAnalyticsEnable =
function ( ) { return this . isAnalyticsEnable } ; asc _CAscEditorPermissions . prototype . asc _getIsLight = function ( ) { return this . isLight } ; asc _CAscEditorPermissions . prototype . asc _getLicenseMode = function ( ) { return this . licenseMode } ; asc _CAscEditorPermissions . prototype . asc _getRights = function ( ) { return this . rights } ; asc _CAscEditorPermissions . prototype . asc _getBuildVersion = function ( ) { return this . buildVersion } ; asc _CAscEditorPermissions . prototype . asc _getBuildNumber = function ( ) { return this . buildNumber } ; asc _CAscEditorPermissions . prototype . asc _getIsBeta =
function ( ) { return this . betaVersion === "true" } ; asc _CAscEditorPermissions . prototype . setLicenseType = function ( v ) { this . licenseType = v } ; asc _CAscEditorPermissions . prototype . setCanBranding = function ( v ) { this . canBranding = v } ; asc _CAscEditorPermissions . prototype . setCustomization = function ( v ) { this . customization = v } ; asc _CAscEditorPermissions . prototype . setIsLight = function ( v ) { this . isLight = v } ; asc _CAscEditorPermissions . prototype . setLicenseMode = function ( v ) { this . licenseMode = v } ; asc _CAscEditorPermissions . prototype . setRights =
function ( v ) { this . rights = v } ; asc _CAscEditorPermissions . prototype . setBuildVersion = function ( v ) { this . buildVersion = v } ; asc _CAscEditorPermissions . prototype . setBuildNumber = function ( v ) { this . buildNumber = v } ; function asc _ValAxisSettings ( ) { this . minValRule = null ; this . minVal = null ; this . maxValRule = null ; this . maxVal = null ; this . invertValOrder = null ; this . logScale = null ; this . logBase = null ; this . dispUnitsRule = null ; this . units = null ; this . showUnitsOnChart = null ; this . majorTickMark = null ; this . minorTickMark = null ; this . tickLabelsPos = null ;
this . crossesRule = null ; this . crosses = null ; this . axisType = c _oAscAxisType . val } asc _ValAxisSettings . prototype = { isEqual : function ( oPr ) { if ( ! oPr ) return false ; if ( this . minValRule !== oPr . minValRule ) return false ; if ( this . minVal !== oPr . minVal ) return false ; if ( this . maxValRule !== oPr . maxValRule ) return false ; if ( this . maxVal !== oPr . maxVal ) return false ; if ( this . invertValOrder !== oPr . invertValOrder ) return false ; if ( this . logScale !== oPr . logScale ) return false ; if ( this . logBase !== oPr . logBase ) return false ; if ( this . dispUnitsRule !== oPr . dispUnitsRule ) return false ;
if ( this . units !== oPr . units ) return false ; if ( this . showUnitsOnChart !== oPr . showUnitsOnChart ) return false ; if ( this . majorTickMark !== oPr . majorTickMark ) return false ; if ( this . minorTickMark !== oPr . minorTickMark ) return false ; if ( this . tickLabelsPos !== oPr . tickLabelsPos ) return false ; if ( this . crossesRule !== oPr . crossesRule ) return false ; if ( this . crosses !== oPr . crosses ) return false ; if ( this . axisType !== oPr . axisType ) return false ; return true } , putAxisType : function ( v ) { this . axisType = v } , putMinValRule : function ( v ) { this . minValRule = v } ,
putMinVal : function ( v ) { this . minVal = v } , putMaxValRule : function ( v ) { this . maxValRule = v } , putMaxVal : function ( v ) { this . maxVal = v } , putInvertValOrder : function ( v ) { this . invertValOrder = v } , putLogScale : function ( v ) { this . logScale = v } , putLogBase : function ( v ) { this . logBase = v } , putUnits : function ( v ) { this . units = v } , putShowUnitsOnChart : function ( v ) { this . showUnitsOnChart = v } , putMajorTickMark : function ( v ) { this . majorTickMark = v } , putMinorTickMark : function ( v ) { this . minorTickMark = v } , putTickLabelsPos : function ( v ) { this . tickLabelsPos = v } , putCrossesRule : function ( v ) { this . crossesRule =
v } , putCrosses : function ( v ) { this . crosses = v } , putDispUnitsRule : function ( v ) { this . dispUnitsRule = v } , getAxisType : function ( ) { return this . axisType } , getDispUnitsRule : function ( ) { return this . dispUnitsRule } , getMinValRule : function ( ) { return this . minValRule } , getMinVal : function ( ) { return this . minVal } , getMaxValRule : function ( ) { return this . maxValRule } , getMaxVal : function ( ) { return this . maxVal } , getInvertValOrder : function ( ) { return this . invertValOrder } , getLogScale : function ( ) { return this . logScale } , getLogBase : function ( ) { return this . logBase } ,
getUnits : function ( ) { return this . units } , getShowUnitsOnChart : function ( ) { return this . showUnitsOnChart } , getMajorTickMark : function ( ) { return this . majorTickMark } , getMinorTickMark : function ( ) { return this . minorTickMark } , getTickLabelsPos : function ( ) { return this . tickLabelsPos } , getCrossesRule : function ( ) { return this . crossesRule } , getCrosses : function ( ) { return this . crosses } , setDefault : function ( ) { this . putMinValRule ( Asc . c _oAscValAxisRule . auto ) ; this . putMaxValRule ( Asc . c _oAscValAxisRule . auto ) ; this . putTickLabelsPos ( Asc . c _oAscTickLabelsPos . TICK _LABEL _POSITION _NEXT _TO ) ;
this . putInvertValOrder ( false ) ; this . putDispUnitsRule ( Asc . c _oAscValAxUnits . none ) ; this . putMajorTickMark ( c _oAscTickMark . TICK _MARK _OUT ) ; this . putMinorTickMark ( c _oAscTickMark . TICK _MARK _NONE ) ; this . putCrossesRule ( Asc . c _oAscCrossesRule . auto ) } } ; function asc _CatAxisSettings ( ) { this . intervalBetweenTick = null ; this . intervalBetweenLabelsRule = null ; this . intervalBetweenLabels = null ; this . invertCatOrder = null ; this . labelsAxisDistance = null ; this . majorTickMark = null ; this . minorTickMark = null ; this . tickLabelsPos = null ; this . crossesRule =
null ; this . crosses = null ; this . labelsPosition = null ; this . axisType = c _oAscAxisType . cat ; this . crossMinVal = null ; this . crossMaxVal = null } asc _CatAxisSettings . prototype = { isEqual : function ( oPr ) { if ( ! oPr ) return false ; if ( this . intervalBetweenTick !== oPr . intervalBetweenTick ) return false ; if ( this . intervalBetweenLabelsRule !== oPr . intervalBetweenLabelsRule ) return false ; if ( this . intervalBetweenLabels !== oPr . intervalBetweenLabels ) return false ; if ( this . invertCatOrder !== oPr . invertCatOrder ) return false ; if ( this . labelsAxisDistance !==
oPr . labelsAxisDistance ) return false ; if ( this . majorTickMark !== oPr . majorTickMark ) return false ; if ( this . minorTickMark !== oPr . minorTickMark ) return false ; if ( this . tickLabelsPos !== oPr . tickLabelsPos ) return false ; if ( this . crossesRule !== oPr . crossesRule ) return false ; if ( this . crosses !== oPr . crosses ) return false ; if ( this . labelsPosition !== oPr . labelsPosition ) return false ; if ( this . axisType !== oPr . axisType ) return false ; if ( this . crossMinVal !== oPr . crossMinVal ) return false ; if ( this . crossMaxVal !== oPr . crossMaxVal ) return false ; return true } ,
putIntervalBetweenTick : function ( v ) { this . intervalBetweenTick = v } , putIntervalBetweenLabelsRule : function ( v ) { this . intervalBetweenLabelsRule = v } , putIntervalBetweenLabels : function ( v ) { this . intervalBetweenLabels = v } , putInvertCatOrder : function ( v ) { this . invertCatOrder = v } , putLabelsAxisDistance : function ( v ) { this . labelsAxisDistance = v } , putMajorTickMark : function ( v ) { this . majorTickMark = v } , putMinorTickMark : function ( v ) { this . minorTickMark = v } , putTickLabelsPos : function ( v ) { this . tickLabelsPos = v } , putCrossesRule : function ( v ) { this . crossesRule =
v } , putCrosses : function ( v ) { this . crosses = v } , putAxisType : function ( v ) { this . axisType = v } , putLabelsPosition : function ( v ) { this . labelsPosition = v } , getIntervalBetweenTick : function ( v ) { return this . intervalBetweenTick } , getIntervalBetweenLabelsRule : function ( ) { return this . intervalBetweenLabelsRule } , getIntervalBetweenLabels : function ( ) { return this . intervalBetweenLabels } , getInvertCatOrder : function ( ) { return this . invertCatOrder } , getLabelsAxisDistance : function ( ) { return this . labelsAxisDistance } , getMajorTickMark : function ( ) { return this . majorTickMark } ,
getMinorTickMark : function ( ) { return this . minorTickMark } , getTickLabelsPos : function ( ) { return this . tickLabelsPos } , getCrossesRule : function ( ) { return this . crossesRule } , getCrosses : function ( ) { return this . crosses } , getAxisType : function ( ) { return this . axisType } , getLabelsPosition : function ( ) { return this . labelsPosition } , getCrossMinVal : function ( ) { return this . crossMinVal } , getCrossMaxVal : function ( ) { return this . crossMaxVal } , putCrossMinVal : function ( val ) { this . crossMinVal = val } , putCrossMaxVal : function ( val ) { this . crossMaxVal =
val } , setDefault : function ( ) { this . putIntervalBetweenLabelsRule ( Asc . c _oAscBetweenLabelsRule . auto ) ; this . putLabelsPosition ( Asc . c _oAscLabelsPosition . betweenDivisions ) ; this . putTickLabelsPos ( Asc . c _oAscTickLabelsPos . TICK _LABEL _POSITION _NEXT _TO ) ; this . putLabelsAxisDistance ( 100 ) ; this . putMajorTickMark ( c _oAscTickMark . TICK _MARK _OUT ) ; this . putMinorTickMark ( c _oAscTickMark . TICK _MARK _NONE ) ; this . putIntervalBetweenTick ( 1 ) ; this . putCrossesRule ( Asc . c _oAscCrossesRule . auto ) } } ; function asc _ChartSettings ( ) { this . style = null ; this . title =
null ; this . rowCols = null ; this . horAxisLabel = null ; this . vertAxisLabel = null ; this . legendPos = null ; this . dataLabelsPos = null ; this . vertAx = null ; this . horAx = null ; this . horGridLines = null ; this . vertGridLines = null ; this . type = null ; this . showSerName = null ; this . showCatName = null ; this . showVal = null ; this . separator = null ; this . horAxisProps = null ; this . vertAxisProps = null ; this . inColumns = null ; this . aRanges = [ ] ; this . showMarker = null ; this . bLine = null ; this . smooth = null ; this . showHorAxis = null ; this . showVerAxis = null ; this . chartSpace = null } asc _ChartSettings . prototype =
{ equalBool : function ( a , b ) { return ! ! a === ! ! b } , isEqual : function ( oPr ) { if ( ! oPr ) return false ; if ( this . style !== oPr . style ) return false ; if ( this . title !== oPr . title ) return false ; if ( this . rowCols !== oPr . rowCols ) return false ; if ( this . horAxisLabel !== oPr . horAxisLabel ) return false ; if ( this . vertAxisLabel !== oPr . vertAxisLabel ) return false ; if ( this . legendPos !== oPr . legendPos ) return false ; if ( this . dataLabelsPos !== oPr . dataLabelsPos ) return false ; if ( this . vertAx !== oPr . vertAx ) return false ; if ( this . horAx !== oPr . horAx ) return false ; if ( this . horGridLines !==
oPr . horGridLines ) return false ; if ( this . vertGridLines !== oPr . vertGridLines ) return false ; if ( this . type !== oPr . type ) return false ; if ( ! this . equalBool ( this . showSerName , oPr . showSerName ) ) return false ; if ( ! this . equalBool ( this . showCatName , oPr . showCatName ) ) return false ; if ( ! this . equalBool ( this . showVal , oPr . showVal ) ) return false ; if ( this . separator !== oPr . separator && ! ( this . separator === " " && oPr . separator == null || oPr . separator === " " && this . separator == null ) ) return false ; if ( ! this . horAxisProps ) { if ( oPr . horAxisProps ) return false } else if ( ! this . horAxisProps . isEqual ( oPr . horAxisProps ) ) return false ;
if ( ! this . vertAxisProps ) { if ( oPr . vertAxisProps ) return false } else if ( ! this . vertAxisProps . isEqual ( oPr . vertAxisProps ) ) return false ; if ( this . aRanges . length !== oPr . aRanges . length ) return false ; for ( var i = 0 ; i < this . aRanges . length ; ++ i ) if ( this . aRanges [ i ] !== oPr . aRanges [ i ] ) return false ; if ( ! this . equalBool ( this . inColumns , oPr . inColumns ) ) return false ; if ( ! this . equalBool ( this . showMarker , oPr . showMarker ) ) return false ; if ( ! this . equalBool ( this . bLine , oPr . bLine ) ) return false ; if ( ! this . equalBool ( this . smooth , oPr . smooth ) ) return false ;
if ( ! this . equalBool ( this . showHorAxis , oPr . showHorAxis ) ) return false ; if ( ! this . equalBool ( this . showVerAxis , oPr . showVerAxis ) ) return false ; return true } , putShowMarker : function ( v ) { this . showMarker = v } , getShowMarker : function ( ) { return this . showMarker } , putLine : function ( v ) { this . bLine = v } , getLine : function ( ) { return this . bLine } , putRanges : function ( aRanges ) { if ( Array . isArray ( aRanges ) ) this . aRanges = aRanges ; else this . aRanges . length = 0 } , getRanges : function ( ) { return this . aRanges } , putSmooth : function ( v ) { this . smooth = v } , getSmooth : function ( ) { return this . smooth } ,
putStyle : function ( index ) { this . style = parseInt ( index , 10 ) } , getStyle : function ( ) { return this . style } , putRange : function ( range ) { this . aRanges . length = 0 ; this . aRanges [ 0 ] = range } , setRange : function ( sRange ) { if ( this . chartSpace ) { this . chartSpace . setRange ( sRange ) ; this . updateChart ( ) } } , isValidRange : function ( sRange ) { if ( sRange === "" ) return Asc . c _oAscError . ID . No ; var sCheck = sRange ; if ( sRange [ 0 ] === "=" ) sCheck = sRange . slice ( 1 ) ; var aRanges = AscFormat . fParseChartFormula ( sCheck ) ; return aRanges . length !== 0 ? Asc . c _oAscError . ID . No : Asc . c _oAscError . ID . DataRangeError } ,
getRange : function ( ) { if ( this . chartSpace ) return this . chartSpace . getCommonRange ( ) ; if ( this . aRanges . length > 0 && typeof this . aRanges [ 0 ] === "string" ) { var sRange = this . aRanges [ 0 ] ; if ( sRange . length > 0 ) return sRange } return null } , putInColumns : function ( inColumns ) { this . inColumns = inColumns } , getInColumns : function ( ) { return this . inColumns } , putTitle : function ( v ) { this . title = v } , getTitle : function ( ) { return this . title } , putRowCols : function ( v ) { this . rowCols = v } , getRowCols : function ( ) { return this . rowCols } , putHorAxisLabel : function ( v ) { this . horAxisLabel =
v } , putVertAxisLabel : function ( v ) { this . vertAxisLabel = v } , putLegendPos : function ( v ) { this . legendPos = v } , putDataLabelsPos : function ( v ) { this . dataLabelsPos = v } , putCatAx : function ( v ) { this . vertAx = v } , putValAx : function ( v ) { this . horAx = v } , getHorAxisLabel : function ( v ) { return this . horAxisLabel } , getVertAxisLabel : function ( v ) { return this . vertAxisLabel } , getLegendPos : function ( v ) { return this . legendPos } , getDataLabelsPos : function ( v ) { return this . dataLabelsPos } , getVertAx : function ( v ) { return this . vertAx } , getHorAx : function ( v ) { return this . horAx } ,
putHorGridLines : function ( v ) { this . horGridLines = v } , getHorGridLines : function ( v ) { return this . horGridLines } , putVertGridLines : function ( v ) { this . vertGridLines = v } , getVertGridLines : function ( ) { return this . vertGridLines } , getType : function ( ) { return this . type } , putType : function ( v ) { return this . type = v } , putShowSerName : function ( v ) { return this . showSerName = v } , putShowCatName : function ( v ) { return this . showCatName = v } , putShowVal : function ( v ) { return this . showVal = v } , getShowSerName : function ( ) { return this . showSerName } , getShowCatName : function ( ) { return this . showCatName } ,
getShowVal : function ( ) { return this . showVal } , putSeparator : function ( v ) { this . separator = v } , getSeparator : function ( ) { return this . separator } , putHorAxisProps : function ( v ) { this . horAxisProps = v } , getHorAxisProps : function ( ) { return this . horAxisProps } , putVertAxisProps : function ( v ) { this . vertAxisProps = v } , getVertAxisProps : function ( ) { return this . vertAxisProps } , checkSwapAxisProps : function ( bHBar ) { var hor _axis _settings = this . getHorAxisProps ( ) ; var vert _axis _settings = this . getVertAxisProps ( ) ; if ( ! bHBar ) { if ( hor _axis _settings ) { if ( hor _axis _settings . getAxisType ( ) !==
c _oAscAxisType . cat ) if ( vert _axis _settings && vert _axis _settings . getAxisType ( ) === c _oAscAxisType . cat ) this . putHorAxisProps ( vert _axis _settings ) ; else { var new _hor _axis _settings = new asc _CatAxisSettings ; new _hor _axis _settings . setDefault ( ) ; this . putHorAxisProps ( new _hor _axis _settings ) } } else { var new _hor _axis _settings = new asc _CatAxisSettings ; new _hor _axis _settings . setDefault ( ) ; this . putHorAxisProps ( new _hor _axis _settings ) } if ( vert _axis _settings ) { if ( vert _axis _settings . getAxisType ( ) !== c _oAscAxisType . val ) if ( hor _axis _settings &&
hor _axis _settings . getAxisType ( ) === c _oAscAxisType . val ) this . putVertAxisProps ( hor _axis _settings ) ; else { var new _vert _axis _settings = new asc _ValAxisSettings ; new _vert _axis _settings . setDefault ( ) ; this . putVertAxisProps ( new _vert _axis _settings ) } } else { var new _vert _axis _settings = new asc _ValAxisSettings ; new _vert _axis _settings . setDefault ( ) ; this . putVertAxisProps ( new _vert _axis _settings ) } } else { if ( hor _axis _settings ) { if ( hor _axis _settings . getAxisType ( ) !== c _oAscAxisType . val ) if ( vert _axis _settings && vert _axis _settings . getAxisType ( ) ===
c _oAscAxisType . val ) this . putHorAxisProps ( vert _axis _settings ) ; else { var new _hor _axis _settings = new asc _ValAxisSettings ; new _hor _axis _settings . setDefault ( ) ; this . putHorAxisProps ( new _hor _axis _settings ) } } else { var new _hor _axis _settings = new asc _ValAxisSettings ; new _hor _axis _settings . setDefault ( ) ; this . putHorAxisProps ( new _hor _axis _settings ) } if ( vert _axis _settings ) { if ( vert _axis _settings . getAxisType ( ) !== c _oAscAxisType . cat ) if ( hor _axis _settings && hor _axis _settings . getAxisType ( ) === c _oAscAxisType . cat ) this . putVertAxisProps ( hor _axis _settings ) ;
else { var new _vert _axis _settings = new asc _CatAxisSettings ; new _vert _axis _settings . setDefault ( ) ; this . putVertAxisProps ( new _vert _axis _settings ) } } else { var new _vert _axis _settings = new asc _CatAxisSettings ; new _vert _axis _settings . setDefault ( ) ; this . putVertAxisProps ( new _vert _axis _settings ) } } } , changeType : function ( type ) { if ( null === this . type ) { this . putType ( type ) ; return } if ( this . type === type ) return ; var bSwapGridLines = ( this . type === c _oAscChartTypeSettings . hBarNormal || this . type === c _oAscChartTypeSettings . hBarStacked || this . type ===
c _oAscChartTypeSettings . hBarStackedPer || this . type === c _oAscChartTypeSettings . hBarNormal3d || this . type === c _oAscChartTypeSettings . hBarStacked3d || this . type === c _oAscChartTypeSettings . hBarStackedPer3d ) !== ( type === c _oAscChartTypeSettings . hBarNormal || type === c _oAscChartTypeSettings . hBarStacked || type === c _oAscChartTypeSettings . hBarStackedPer || this . type === c _oAscChartTypeSettings . hBarNormal3d || this . type === c _oAscChartTypeSettings . hBarStacked3d || this . type === c _oAscChartTypeSettings . hBarStackedPer3d ) ; var bSwapLines =
( type === c _oAscChartTypeSettings . lineNormal || type === c _oAscChartTypeSettings . lineStacked || type === c _oAscChartTypeSettings . lineStackedPer || type === c _oAscChartTypeSettings . lineNormalMarker || type === c _oAscChartTypeSettings . lineStackedMarker || type === c _oAscChartTypeSettings . lineStackedPerMarker || type === c _oAscChartTypeSettings . line3d ) !== ( this . type === c _oAscChartTypeSettings . lineNormal || this . type === c _oAscChartTypeSettings . lineStacked || this . type === c _oAscChartTypeSettings . lineStackedPer || this . type === c _oAscChartTypeSettings . lineNormalMarker ||
this . type === c _oAscChartTypeSettings . lineStackedMarker || this . type === c _oAscChartTypeSettings . lineStackedPerMarker || this . type === c _oAscChartTypeSettings . line3d ) ; var bSwapScatter = this . type === c _oAscChartTypeSettings . scatter !== ( type === c _oAscChartTypeSettings . scatter ) ; var nOldType = this . type ; this . putType ( type ) ; var hor _axis _settings = this . getHorAxisProps ( ) ; var vert _axis _settings = this . getVertAxisProps ( ) ; var new _hor _axis _settings , new _vert _axis _settings , oTempVal ; if ( bSwapGridLines ) { oTempVal = hor _axis _settings ; hor _axis _settings =
vert _axis _settings ; vert _axis _settings = oTempVal ; this . putHorAxisProps ( hor _axis _settings ) ; this . putVertAxisProps ( vert _axis _settings ) ; oTempVal = this . horGridLines ; this . putHorGridLines ( this . vertGridLines ) ; this . putVertGridLines ( oTempVal ) } switch ( type ) { case c _oAscChartTypeSettings . pie : case c _oAscChartTypeSettings . pie3d : case c _oAscChartTypeSettings . doughnut : { this . putHorAxisProps ( null ) ; this . putVertAxisProps ( null ) ; this . putHorAxisLabel ( null ) ; this . putVertAxisLabel ( null ) ; this . putShowHorAxis ( null ) ; this . putShowVerAxis ( null ) ;
break } case c _oAscChartTypeSettings . barNormal : case c _oAscChartTypeSettings . barStacked : case c _oAscChartTypeSettings . barStackedPer : case c _oAscChartTypeSettings . barNormal3d : case c _oAscChartTypeSettings . barStacked3d : case c _oAscChartTypeSettings . barStackedPer3d : case c _oAscChartTypeSettings . barNormal3dPerspective : case c _oAscChartTypeSettings . lineNormal : case c _oAscChartTypeSettings . lineStacked : case c _oAscChartTypeSettings . lineStackedPer : case c _oAscChartTypeSettings . lineNormalMarker : case c _oAscChartTypeSettings . lineStackedMarker : case c _oAscChartTypeSettings . lineStackedPerMarker : case c _oAscChartTypeSettings . line3d : case c _oAscChartTypeSettings . areaNormal : case c _oAscChartTypeSettings . areaStacked : case c _oAscChartTypeSettings . areaStackedPer : case c _oAscChartTypeSettings . stock : case c _oAscChartTypeSettings . surfaceNormal : case c _oAscChartTypeSettings . surfaceWireframe : case c _oAscChartTypeSettings . contourNormal : case c _oAscChartTypeSettings . contourWireframe : { this . checkSwapAxisProps ( false ) ;
if ( bSwapLines ) { this . putShowMarker ( false ) ; this . putSmooth ( null ) ; this . putLine ( true ) } if ( nOldType === c _oAscChartTypeSettings . hBarNormal || nOldType === c _oAscChartTypeSettings . hBarStacked || nOldType === c _oAscChartTypeSettings . hBarStackedPer || nOldType === c _oAscChartTypeSettings . hBarNormal3d || nOldType === c _oAscChartTypeSettings . hBarStacked3d || nOldType === c _oAscChartTypeSettings . hBarStackedPer3d ) { var bTemp = this . showHorAxis ; this . putShowHorAxis ( this . showVerAxis ) ; this . putShowVerAxis ( bTemp ) } else if ( nOldType === c _oAscChartTypeSettings . pie ||
nOldType === c _oAscChartTypeSettings . pie3d || nOldType === c _oAscChartTypeSettings . doughnut ) { this . putShowHorAxis ( true ) ; this . putShowVerAxis ( true ) } var oHorAxisProps = this . getHorAxisProps ( ) ; if ( oHorAxisProps && oHorAxisProps . getAxisType ( ) === c _oAscAxisType . cat ) if ( type === c _oAscChartTypeSettings . areaNormal || type === c _oAscChartTypeSettings . areaStacked || type === c _oAscChartTypeSettings . areaStackedPer || type === c _oAscChartTypeSettings . stock || type === c _oAscChartTypeSettings . surfaceNormal || type === c _oAscChartTypeSettings . surfaceWireframe ||
type === c _oAscChartTypeSettings . contourNormal || type === c _oAscChartTypeSettings . contourWireframe ) oHorAxisProps . putLabelsPosition ( Asc . c _oAscLabelsPosition . byDivisions ) ; else oHorAxisProps . putLabelsPosition ( Asc . c _oAscLabelsPosition . betweenDivisions ) ; break } case c _oAscChartTypeSettings . hBarNormal : case c _oAscChartTypeSettings . hBarStacked : case c _oAscChartTypeSettings . hBarStackedPer : case c _oAscChartTypeSettings . hBarNormal3d : case c _oAscChartTypeSettings . hBarStacked3d : case c _oAscChartTypeSettings . hBarStackedPer3d : { this . checkSwapAxisProps ( true ) ;
if ( nOldType === c _oAscChartTypeSettings . pie || nOldType === c _oAscChartTypeSettings . pie3d || nOldType === c _oAscChartTypeSettings . doughnut ) { this . putShowHorAxis ( true ) ; this . putShowVerAxis ( true ) } else if ( nOldType !== c _oAscChartTypeSettings . hBarNormal && nOldType !== c _oAscChartTypeSettings . hBarStacked && nOldType !== c _oAscChartTypeSettings . hBarStackedPer || nOldType !== c _oAscChartTypeSettings . hBarNormal3d || nOldType !== c _oAscChartTypeSettings . hBarStacked3d || nOldType !== c _oAscChartTypeSettings . hBarStackedPer3d ) { var bTemp = this . showHorAxis ;
this . putShowHorAxis ( this . showVerAxis ) ; this . putShowVerAxis ( bTemp ) } var oVertAxisProps = this . getVertAxisProps ( ) ; if ( oVertAxisProps && oVertAxisProps . getAxisType ( ) === c _oAscAxisType . cat ) oVertAxisProps . putLabelsPosition ( Asc . c _oAscLabelsPosition . betweenDivisions ) ; break } case c _oAscChartTypeSettings . scatter : case c _oAscChartTypeSettings . scatterLine : case c _oAscChartTypeSettings . scatterLineMarker : case c _oAscChartTypeSettings . scatterMarker : case c _oAscChartTypeSettings . scatterNone : case c _oAscChartTypeSettings . scatterSmooth : case c _oAscChartTypeSettings . scatterSmoothMarker : { if ( ! hor _axis _settings ||
hor _axis _settings . getAxisType ( ) !== c _oAscAxisType . val ) { new _hor _axis _settings = new asc _ValAxisSettings ; new _hor _axis _settings . setDefault ( ) ; this . putHorAxisProps ( new _hor _axis _settings ) } if ( ! vert _axis _settings || vert _axis _settings . getAxisType ( ) !== c _oAscAxisType . val ) { new _vert _axis _settings = new asc _ValAxisSettings ; new _vert _axis _settings . setDefault ( ) ; this . putVertAxisProps ( new _vert _axis _settings ) } if ( bSwapScatter ) { this . putShowMarker ( true ) ; this . putSmooth ( null ) ; this . putLine ( false ) } if ( nOldType === c _oAscChartTypeSettings . hBarNormal ||
nOldType === c _oAscChartTypeSettings . hBarStacked || nOldType === c _oAscChartTypeSettings . hBarStackedPer || nOldType === c _oAscChartTypeSettings . hBarNormal3d || nOldType === c _oAscChartTypeSettings . hBarStacked3d || nOldType === c _oAscChartTypeSettings . hBarStackedPer3d ) { var bTemp = this . showHorAxis ; this . putShowHorAxis ( this . showVerAxis ) ; this . putShowVerAxis ( bTemp ) } else if ( nOldType === c _oAscChartTypeSettings . pie || nOldType === c _oAscChartTypeSettings . pie3d || nOldType === c _oAscChartTypeSettings . doughnut ) { this . putShowHorAxis ( true ) ;
this . putShowVerAxis ( true ) } break } } } , putShowHorAxis : function ( v ) { this . showHorAxis = v } , getShowHorAxis : function ( ) { return this . showHorAxis } , putShowVerAxis : function ( v ) { this . showVerAxis = v } , getShowVerAxis : function ( ) { return this . showVerAxis } , getSeries : function ( ) { if ( this . chartSpace ) return this . chartSpace . getAllSeries ( ) ; return [ ] } , getCatValues : function ( ) { if ( this . chartSpace ) return this . chartSpace . getCatValues ( ) ; return [ ] } , getCatFormula : function ( ) { if ( this . chartSpace ) return this . chartSpace . getCatFormula ( ) ; return "" } ,
setCatFormula : function ( sFormula ) { if ( this . chartSpace ) return this . chartSpace . setCatFormula ( sFormula ) ; this . updateChart ( ) } , isValidCatFormula : function ( sFormula ) { if ( sFormula === "" || sFormula === null ) return Asc . c _oAscError . ID . No ; return AscFormat . ExecuteNoHistory ( function ( ) { var oCat = new AscFormat . CCat ; return oCat . setValues ( sFormula ) . getError ( ) } , this , [ ] ) } , switchRowCol : function ( ) { var nError = Asc . c _oAscError . ID . No ; if ( this . chartSpace ) nError = this . chartSpace . switchRowCol ( ) ; this . updateChart ( ) ; return nError } , addSeries : function ( ) { var oRet =
null ; if ( this . chartSpace ) oRet = this . chartSpace . addNewSeries ( ) ; this . updateChart ( ) ; return oRet } , addScatterSeries : function ( ) { var oRet = null ; if ( this . chartSpace ) oRet = this . chartSpace . addNewSeries ( ) ; this . updateChart ( ) ; return oRet } , startEdit : function ( ) { AscCommon . History . Create _NewPoint ( ) ; AscCommon . History . StartTransaction ( ) } , endEdit : function ( ) { AscCommon . History . EndTransaction ( ) ; this . updateChart ( ) } , cancelEdit : function ( ) { AscCommon . History . EndTransaction ( ) ; AscCommon . History . Undo ( ) ; AscCommon . History . Clear _Redo ( ) ;
AscCommon . History . _sendCanUndoRedo ( ) ; this . updateChart ( ) } , startEditData : function ( ) { AscCommon . History . SavePointIndex ( ) } , cancelEditData : function ( ) { AscCommon . History . UndoToPointIndex ( ) ; this . updateChart ( ) } , endEditData : function ( ) { AscCommon . History . ClearPointIndex ( ) ; this . updateChart ( ) } , updateChart : function ( ) { if ( this . chartSpace ) this . chartSpace . onDataUpdate ( ) } } ; function asc _CRect ( x , y , width , height ) { this . _x = x ; this . _y = y ; this . _width = width ; this . _height = height } asc _CRect . prototype = { asc _getX : function ( ) { return this . _x } ,
asc _getY : function ( ) { return this . _y } , asc _getWidth : function ( ) { return this . _width } , asc _getHeight : function ( ) { return this . _height } } ; function CColor ( r , g , b , a ) { this . r = undefined == r ? 0 : r ; this . g = undefined == g ? 0 : g ; this . b = undefined == b ? 0 : b ; this . a = undefined == a ? 1 : a } CColor . prototype = { constructor : CColor , getR : function ( ) { return this . r } , get _r : function ( ) { return this . r } , put _r : function ( v ) { this . r = v ; this . hex = undefined } , getG : function ( ) { return this . g } , get _g : function ( ) { return this . g } , put _g : function ( v ) { this . g = v ; this . hex = undefined } ,
getB : function ( ) { return this . b } , get _b : function ( ) { return this . b } , put _b : function ( v ) { this . b = v ; this . hex = undefined } , getA : function ( ) { return this . a } , get _hex : function ( ) { if ( ! this . hex ) { var r = this . r . toString ( 16 ) ; var g = this . g . toString ( 16 ) ; var b = this . b . toString ( 16 ) ; this . hex = ( r . length == 1 ? "0" + r : r ) + ( g . length == 1 ? "0" + g : g ) + ( b . length == 1 ? "0" + b : b ) } return this . hex } , Compare : function ( Color ) { return this . r === Color . r && this . g === Color . g && this . b === Color . b && this . a === Color . a } , Copy : function ( ) { return new CColor ( this . r , this . g , this . b ,
this . a ) } , getVal : function ( ) { return ( this . r << 16 & 16711680 ) + ( this . g << 8 & 65280 ) + this . b } } ; function asc _CColor ( ) { this . type = c _oAscColor . COLOR _TYPE _SRGB ; this . value = null ; this . r = 0 ; this . g = 0 ; this . b = 0 ; this . a = 255 ; this . Auto = false ; this . Mods = [ ] ; this . ColorSchemeId = - 1 ; if ( 1 === arguments . length ) { this . r = arguments [ 0 ] . r ; this . g = arguments [ 0 ] . g ; this . b = arguments [ 0 ] . b } else { if ( 3 <= arguments . length ) { this . r = arguments [ 0 ] ; this . g = arguments [ 1 ] ; this . b = arguments [ 2 ] } if ( 4 === arguments . length ) this . a = arguments [ 3 ] } } asc _CColor . prototype = { constructor : asc _CColor ,
asc _getR : function ( ) { return this . r } , asc _putR : function ( v ) { this . r = v ; this . hex = undefined } , asc _getG : function ( ) { return this . g } , asc _putG : function ( v ) { this . g = v ; this . hex = undefined } , asc _getB : function ( ) { return this . b } , asc _putB : function ( v ) { this . b = v ; this . hex = undefined } , asc _getA : function ( ) { return this . a } , asc _putA : function ( v ) { this . a = v ; this . hex = undefined } , asc _getType : function ( ) { return this . type } , asc _putType : function ( v ) { this . type = v } , asc _getValue : function ( ) { return this . value } , asc _putValue : function ( v ) { this . value = v } , asc _getHex : function ( ) { if ( ! this . hex ) { var a =
this . a . toString ( 16 ) ; var r = this . r . toString ( 16 ) ; var g = this . g . toString ( 16 ) ; var b = this . b . toString ( 16 ) ; this . hex = ( a . length == 1 ? "0" + a : a ) + ( r . length == 1 ? "0" + r : r ) + ( g . length == 1 ? "0" + g : g ) + ( b . length == 1 ? "0" + b : b ) } return this . hex } , asc _getColor : function ( ) { return new CColor ( this . r , this . g , this . b ) } , asc _putAuto : function ( v ) { this . Auto = v } , asc _getAuto : function ( ) { return this . Auto } } ; function asc _CTextBorder ( obj ) { if ( obj ) { if ( obj . Color instanceof asc _CColor ) this . Color = obj . Color ; else this . Color = undefined != obj . Color && null != obj . Color ?
CreateAscColorCustom ( obj . Color . r , obj . Color . g , obj . Color . b ) : null ; this . Size = undefined != obj . Size ? obj . Size : null ; this . Value = undefined != obj . Value ? obj . Value : null ; this . Space = undefined != obj . Space ? obj . Space : null } else { this . Color = CreateAscColorCustom ( 0 , 0 , 0 ) ; this . Size = . 5 * window [ "AscCommonWord" ] . g _dKoef _pt _to _mm ; this . Value = window [ "AscCommonWord" ] . border _Single ; this . Space = 0 } } asc _CTextBorder . prototype . asc _getColor = function ( ) { return this . Color } ; asc _CTextBorder . prototype . asc _putColor = function ( v ) { this . Color = v } ; asc _CTextBorder . prototype . asc _getSize =
function ( ) { return this . Size } ; asc _CTextBorder . prototype . asc _putSize = function ( v ) { this . Size = v } ; asc _CTextBorder . prototype . asc _getValue = function ( ) { return this . Value } ; asc _CTextBorder . prototype . asc _putValue = function ( v ) { this . Value = v } ; asc _CTextBorder . prototype . asc _getSpace = function ( ) { return this . Space } ; asc _CTextBorder . prototype . asc _putSpace = function ( v ) { this . Space = v } ; asc _CTextBorder . prototype . asc _getForSelectedCells = function ( ) { return this . ForSelectedCells } ; asc _CTextBorder . prototype . asc _putForSelectedCells =
function ( v ) { this . ForSelectedCells = v } ; function asc _CParagraphBorders ( obj ) { if ( obj ) { this . Left = undefined != obj . Left && null != obj . Left ? new asc _CTextBorder ( obj . Left ) : null ; this . Top = undefined != obj . Top && null != obj . Top ? new asc _CTextBorder ( obj . Top ) : null ; this . Right = undefined != obj . Right && null != obj . Right ? new asc _CTextBorder ( obj . Right ) : null ; this . Bottom = undefined != obj . Bottom && null != obj . Bottom ? new asc _CTextBorder ( obj . Bottom ) : null ; this . Between = undefined != obj . Between && null != obj . Between ? new asc _CTextBorder ( obj . Between ) :
null } else { this . Left = null ; this . Top = null ; this . Right = null ; this . Bottom = null ; this . Between = null } } asc _CParagraphBorders . prototype = { asc _getLeft : function ( ) { return this . Left } , asc _putLeft : function ( v ) { this . Left = v ? new asc _CTextBorder ( v ) : null } , asc _getTop : function ( ) { return this . Top } , asc _putTop : function ( v ) { this . Top = v ? new asc _CTextBorder ( v ) : null } , asc _getRight : function ( ) { return this . Right } , asc _putRight : function ( v ) { this . Right = v ? new asc _CTextBorder ( v ) : null } , asc _getBottom : function ( ) { return this . Bottom } , asc _putBottom : function ( v ) { this . Bottom =
v ? new asc _CTextBorder ( v ) : null } , asc _getBetween : function ( ) { return this . Between } , asc _putBetween : function ( v ) { this . Between = v ? new asc _CTextBorder ( v ) : null } } ; function asc _CListType ( obj ) { if ( obj ) { this . Type = undefined == obj . Type ? null : obj . Type ; this . SubType = undefined == obj . Type ? null : obj . SubType } else { this . Type = null ; this . SubType = null } } asc _CListType . prototype . asc _getListType = function ( ) { return this . Type } ; asc _CListType . prototype . asc _getListSubType = function ( ) { return this . SubType } ; function asc _CTextFontFamily ( obj ) { if ( obj ) { this . Name =
undefined != obj . Name ? obj . Name : null ; this . Index = undefined != obj . Index ? obj . Index : null } else { this . Name = "Times New Roman" ; this . Index = - 1 } } asc _CTextFontFamily . prototype = { asc _getName : function ( ) { return this . Name } , asc _getIndex : function ( ) { return this . Index } , asc _putName : function ( v ) { this . Name = v } , asc _putIndex : function ( v ) { this . Index = v } } ; function asc _CParagraphTab ( Pos , Value , Leader ) { this . Pos = Pos ; this . Value = Value ; this . Leader = Leader } asc _CParagraphTab . prototype . asc _getValue = function ( ) { return this . Value } ; asc _CParagraphTab . prototype . asc _putValue =
function ( v ) { this . Value = v } ; asc _CParagraphTab . prototype . asc _getPos = function ( ) { return this . Pos } ; asc _CParagraphTab . prototype . asc _putPos = function ( v ) { this . Pos = v } ; asc _CParagraphTab . prototype . asc _getLeader = function ( ) { if ( Asc . c _oAscTabLeader . Heavy === this . Leader ) return Asc . c _oAscTabLeader . Underscore ; return this . Leader } ; asc _CParagraphTab . prototype . asc _putLeader = function ( v ) { this . Leader = v } ; function asc _CParagraphTabs ( obj ) { this . Tabs = [ ] ; if ( undefined != obj ) { var Count = obj . Tabs . length ; for ( var Index = 0 ; Index < Count ; Index ++ ) this . Tabs . push ( new asc _CParagraphTab ( obj . Tabs [ Index ] . Pos ,
obj . Tabs [ Index ] . Value , obj . Tabs [ Index ] . Leader ) ) } } asc _CParagraphTabs . prototype = { asc _getCount : function ( ) { return this . Tabs . length } , asc _getTab : function ( Index ) { return this . Tabs [ Index ] } , asc _addTab : function ( Tab ) { this . Tabs . push ( Tab ) } , asc _clear : function ( ) { this . Tabs . length = 0 } } ; function asc _CParagraphShd ( obj ) { if ( obj ) { this . Value = undefined != obj . Value ? obj . Value : null ; if ( obj . Unifill && obj . Unifill . fill && obj . Unifill . fill . type === c _oAscFill . FILL _TYPE _SOLID && obj . Unifill . fill . color ) this . Color = CreateAscColor ( obj . Unifill . fill . color ) ;
else this . Color = undefined != obj . Color && null != obj . Color ? CreateAscColorCustom ( obj . Color . r , obj . Color . g , obj . Color . b ) : null } else { this . Value = Asc . c _oAscShdNil ; this . Color = CreateAscColorCustom ( 255 , 255 , 255 ) } } asc _CParagraphShd . prototype = { asc _getValue : function ( ) { return this . Value } , asc _putValue : function ( v ) { this . Value = v } , asc _getColor : function ( ) { return this . Color } , asc _putColor : function ( v ) { this . Color = v ? v : null } } ; function asc _CParagraphFrame ( obj ) { if ( obj ) { this . FromDropCapMenu = false ; this . DropCap = obj . DropCap ; this . H = obj . H ;
this . HAnchor = obj . HAnchor ; this . HRule = obj . HRule ; this . HSpace = obj . HSpace ; this . Lines = obj . Lines ; this . VAnchor = obj . VAnchor ; this . VSpace = obj . VSpace ; this . W = obj . W ; this . Wrap = obj . Wrap ; this . X = obj . X ; this . XAlign = obj . XAlign ; this . Y = obj . Y ; this . YAlign = obj . YAlign ; this . Brd = undefined != obj . Brd && null != obj . Brd ? new asc _CParagraphBorders ( obj . Brd ) : null ; this . Shd = undefined != obj . Shd && null != obj . Shd ? new asc _CParagraphShd ( obj . Shd ) : null ; this . FontFamily = undefined != obj . FontFamily && null != obj . FontFamily ? new asc _CTextFontFamily ( obj . FontFamily ) :
null } else { this . FromDropCapMenu = false ; this . DropCap = undefined ; this . H = undefined ; this . HAnchor = undefined ; this . HRule = undefined ; this . HSpace = undefined ; this . Lines = undefined ; this . VAnchor = undefined ; this . VSpace = undefined ; this . W = undefined ; this . Wrap = undefined ; this . X = undefined ; this . XAlign = undefined ; this . Y = undefined ; this . YAlign = undefined ; this . Shd = null ; this . Brd = null ; this . FontFamily = null } } asc _CParagraphFrame . prototype . asc _getDropCap = function ( ) { return this . DropCap } ; asc _CParagraphFrame . prototype . asc _putDropCap = function ( v ) { this . DropCap =
v } ; asc _CParagraphFrame . prototype . asc _getH = function ( ) { return this . H } ; asc _CParagraphFrame . prototype . asc _putH = function ( v ) { this . H = v } ; asc _CParagraphFrame . prototype . asc _getHAnchor = function ( ) { return this . HAnchor } ; asc _CParagraphFrame . prototype . asc _putHAnchor = function ( v ) { this . HAnchor = v } ; asc _CParagraphFrame . prototype . asc _getHRule = function ( ) { return this . HRule } ; asc _CParagraphFrame . prototype . asc _putHRule = function ( v ) { this . HRule = v } ; asc _CParagraphFrame . prototype . asc _getHSpace = function ( ) { return this . HSpace } ; asc _CParagraphFrame . prototype . asc _putHSpace =
function ( v ) { this . HSpace = v } ; asc _CParagraphFrame . prototype . asc _getLines = function ( ) { return this . Lines } ; asc _CParagraphFrame . prototype . asc _putLines = function ( v ) { this . Lines = v } ; asc _CParagraphFrame . prototype . asc _getVAnchor = function ( ) { return this . VAnchor } ; asc _CParagraphFrame . prototype . asc _putVAnchor = function ( v ) { this . VAnchor = v } ; asc _CParagraphFrame . prototype . asc _getVSpace = function ( ) { return this . VSpace } ; asc _CParagraphFrame . prototype . asc _putVSpace = function ( v ) { this . VSpace = v } ; asc _CParagraphFrame . prototype . asc _getW =
function ( ) { return this . W } ; asc _CParagraphFrame . prototype . asc _putW = function ( v ) { this . W = v } ; asc _CParagraphFrame . prototype . asc _getWrap = function ( ) { return this . Wrap } ; asc _CParagraphFrame . prototype . asc _putWrap = function ( v ) { this . Wrap = v } ; asc _CParagraphFrame . prototype . asc _getX = function ( ) { return this . X } ; asc _CParagraphFrame . prototype . asc _putX = function ( v ) { this . X = v } ; asc _CParagraphFrame . prototype . asc _getXAlign = function ( ) { return this . XAlign } ; asc _CParagraphFrame . prototype . asc _putXAlign = function ( v ) { this . XAlign = v } ; asc _CParagraphFrame . prototype . asc _getY =
function ( ) { return this . Y } ; asc _CParagraphFrame . prototype . asc _putY = function ( v ) { this . Y = v } ; asc _CParagraphFrame . prototype . asc _getYAlign = function ( ) { return this . YAlign } ; asc _CParagraphFrame . prototype . asc _putYAlign = function ( v ) { this . YAlign = v } ; asc _CParagraphFrame . prototype . asc _getBorders = function ( ) { return this . Brd } ; asc _CParagraphFrame . prototype . asc _putBorders = function ( v ) { this . Brd = v } ; asc _CParagraphFrame . prototype . asc _getShade = function ( ) { return this . Shd } ; asc _CParagraphFrame . prototype . asc _putShade = function ( v ) { this . Shd =
v } ; asc _CParagraphFrame . prototype . asc _getFontFamily = function ( ) { return this . FontFamily } ; asc _CParagraphFrame . prototype . asc _putFontFamily = function ( v ) { this . FontFamily = v } ; asc _CParagraphFrame . prototype . asc _putFromDropCapMenu = function ( v ) { this . FromDropCapMenu = v } ; function asc _CParagraphSpacing ( obj ) { if ( obj ) { this . Line = undefined != obj . Line ? obj . Line : null ; this . LineRule = undefined != obj . LineRule ? obj . LineRule : null ; this . Before = undefined != obj . Before ? obj . Before : null ; this . After = undefined != obj . After ? obj . After : null } else { this . Line =
undefined ; this . LineRule = undefined ; this . Before = undefined ; this . After = undefined } } asc _CParagraphSpacing . prototype = { asc _getLine : function ( ) { return this . Line } , asc _getLineRule : function ( ) { return this . LineRule } , asc _getBefore : function ( ) { return this . Before } , asc _getAfter : function ( ) { return this . After } , asc _putLine : function ( v ) { this . Line = v } , asc _putLineRule : function ( v ) { this . LineRule = v } , asc _putBefore : function ( v ) { this . Before = v } , asc _putAfter : function ( v ) { this . After = v } } ; function asc _CParagraphInd ( obj ) { if ( obj ) { this . Left =
undefined != obj . Left ? obj . Left : null ; this . Right = undefined != obj . Right ? obj . Right : null ; this . FirstLine = undefined != obj . FirstLine ? obj . FirstLine : null } else { this . Left = undefined ; this . Right = undefined ; this . FirstLine = undefined } } asc _CParagraphInd . prototype = { asc _getLeft : function ( ) { return this . Left } , asc _putLeft : function ( v ) { this . Left = v } , asc _getRight : function ( ) { return this . Right } , asc _putRight : function ( v ) { this . Right = v } , asc _getFirstLine : function ( ) { return this . FirstLine } , asc _putFirstLine : function ( v ) { this . FirstLine = v } } ; function asc _CParagraphProperty ( obj ) { if ( obj ) { this . ContextualSpacing =
undefined != obj . ContextualSpacing ? obj . ContextualSpacing : null ; this . Ind = undefined != obj . Ind && null != obj . Ind ? new asc _CParagraphInd ( obj . Ind ) : null ; this . KeepLines = undefined != obj . KeepLines ? obj . KeepLines : null ; this . KeepNext = undefined != obj . KeepNext ? obj . KeepNext : undefined ; this . WidowControl = undefined != obj . WidowControl ? obj . WidowControl : undefined ; this . PageBreakBefore = undefined != obj . PageBreakBefore ? obj . PageBreakBefore : null ; this . Spacing = undefined != obj . Spacing && null != obj . Spacing ? new asc _CParagraphSpacing ( obj . Spacing ) :
null ; this . Brd = undefined != obj . Brd && null != obj . Brd ? new asc _CParagraphBorders ( obj . Brd ) : null ; this . Shd = undefined != obj . Shd && null != obj . Shd ? new asc _CParagraphShd ( obj . Shd ) : null ; this . Tabs = undefined != obj . Tabs ? new asc _CParagraphTabs ( obj . Tabs ) : undefined ; this . DefaultTab = obj . DefaultTab != null ? obj . DefaultTab : window [ "AscCommonWord" ] . Default _Tab _Stop ; this . Locked = undefined != obj . Locked && null != obj . Locked ? obj . Locked : false ; this . CanAddTable = undefined != obj . CanAddTable ? obj . CanAddTable : true ; this . FramePr = undefined != obj . FramePr ?
new asc _CParagraphFrame ( obj . FramePr ) : undefined ; this . CanAddDropCap = undefined != obj . CanAddDropCap ? obj . CanAddDropCap : false ; this . CanAddImage = undefined != obj . CanAddImage ? obj . CanAddImage : false ; this . Subscript = undefined != obj . Subscript ? obj . Subscript : undefined ; this . Superscript = undefined != obj . Superscript ? obj . Superscript : undefined ; this . SmallCaps = undefined != obj . SmallCaps ? obj . SmallCaps : undefined ; this . AllCaps = undefined != obj . AllCaps ? obj . AllCaps : undefined ; this . Strikeout = undefined != obj . Strikeout ? obj . Strikeout : undefined ;
this . DStrikeout = undefined != obj . DStrikeout ? obj . DStrikeout : undefined ; this . TextSpacing = undefined != obj . TextSpacing ? obj . TextSpacing : undefined ; this . Position = undefined != obj . Position ? obj . Position : undefined ; this . Jc = undefined != obj . Jc ? obj . Jc : undefined ; this . ListType = undefined != obj . ListType ? obj . ListType : undefined ; this . OutlineLvl = undefined != obj . OutlineLvl ? obj . OutlineLvl : undefined ; this . OutlineLvlStyle = undefined != obj . OutlineLvlStyle ? obj . OutlineLvlStyle : false ; this . SuppressLineNumbers = undefined !== obj . SuppressLineNumbers ?
obj . SuppressLineNumbers : false ; this . Bullet = obj . Bullet ; var oBullet = obj . Bullet ; if ( oBullet ) oBullet . FirstTextPr = obj . FirstTextPr ; this . CanDeleteBlockCC = undefined !== obj . CanDeleteBlockCC ? obj . CanDeleteBlockCC : true ; this . CanEditBlockCC = undefined !== obj . CanEditBlockCC ? obj . CanEditBlockCC : true ; this . CanDeleteInlineCC = undefined !== obj . CanDeleteInlineCC ? obj . CanDeleteInlineCC : true ; this . CanEditInlineCC = undefined !== obj . CanEditInlineCC ? obj . CanEditInlineCC : true } else { this . ContextualSpacing = undefined ; this . Ind = new asc _CParagraphInd ;
this . KeepLines = undefined ; this . KeepNext = undefined ; this . WidowControl = undefined ; this . PageBreakBefore = undefined ; this . Spacing = new asc _CParagraphSpacing ; this . Brd = undefined ; this . Shd = undefined ; this . Locked = false ; this . CanAddTable = true ; this . Tabs = undefined ; this . Subscript = undefined ; this . Superscript = undefined ; this . SmallCaps = undefined ; this . AllCaps = undefined ; this . Strikeout = undefined ; this . DStrikeout = undefined ; this . TextSpacing = undefined ; this . Position = undefined ; this . Jc = undefined ; this . ListType = undefined ; this . OutlineLvl =
undefined ; this . OutlineLvlStyle = false ; this . SuppressLineNumbers = false ; this . Bullet = undefined ; this . CanDeleteBlockCC = true ; this . CanEditBlockCC = true ; this . CanDeleteInlineCC = true ; this . CanEditInlineCC = true } } asc _CParagraphProperty . prototype = { asc _getContextualSpacing : function ( ) { return this . ContextualSpacing } , asc _putContextualSpacing : function ( v ) { this . ContextualSpacing = v } , asc _getInd : function ( ) { return this . Ind } , asc _putInd : function ( v ) { this . Ind = v } , asc _getJc : function ( ) { return this . Jc } , asc _putJc : function ( v ) { this . Jc =
v } , asc _getKeepLines : function ( ) { return this . KeepLines } , asc _putKeepLines : function ( v ) { this . KeepLines = v } , asc _getKeepNext : function ( ) { return this . KeepNext } , asc _putKeepNext : function ( v ) { this . KeepNext = v } , asc _getPageBreakBefore : function ( ) { return this . PageBreakBefore } , asc _putPageBreakBefore : function ( v ) { this . PageBreakBefore = v } , asc _getWidowControl : function ( ) { return this . WidowControl } , asc _putWidowControl : function ( v ) { this . WidowControl = v } , asc _getSpacing : function ( ) { return this . Spacing } , asc _putSpacing : function ( v ) { this . Spacing =
v } , asc _getBorders : function ( ) { return this . Brd } , asc _putBorders : function ( v ) { this . Brd = v } , asc _getShade : function ( ) { return this . Shd } , asc _putShade : function ( v ) { this . Shd = v } , asc _getLocked : function ( ) { return this . Locked } , asc _getCanAddTable : function ( ) { return this . CanAddTable } , asc _getSubscript : function ( ) { return this . Subscript } , asc _putSubscript : function ( v ) { this . Subscript = v } , asc _getSuperscript : function ( ) { return this . Superscript } , asc _putSuperscript : function ( v ) { this . Superscript = v } , asc _getSmallCaps : function ( ) { return this . SmallCaps } ,
asc _putSmallCaps : function ( v ) { this . SmallCaps = v } , asc _getAllCaps : function ( ) { return this . AllCaps } , asc _putAllCaps : function ( v ) { this . AllCaps = v } , asc _getStrikeout : function ( ) { return this . Strikeout } , asc _putStrikeout : function ( v ) { this . Strikeout = v } , asc _getDStrikeout : function ( ) { return this . DStrikeout } , asc _putDStrikeout : function ( v ) { this . DStrikeout = v } , asc _getTextSpacing : function ( ) { return this . TextSpacing } , asc _putTextSpacing : function ( v ) { this . TextSpacing = v } , asc _getPosition : function ( ) { return this . Position } , asc _putPosition : function ( v ) { this . Position =
v } , asc _getTabs : function ( ) { return this . Tabs } , asc _putTabs : function ( v ) { this . Tabs = v } , asc _getDefaultTab : function ( ) { return this . DefaultTab } , asc _putDefaultTab : function ( v ) { this . DefaultTab = v } , asc _getFramePr : function ( ) { return this . FramePr } , asc _putFramePr : function ( v ) { this . FramePr = v } , asc _getCanAddDropCap : function ( ) { return this . CanAddDropCap } , asc _getCanAddImage : function ( ) { return this . CanAddImage } , asc _getOutlineLvl : function ( ) { return this . OutlineLvl } , asc _putOutLineLvl : function ( nLvl ) { this . OutlineLvl = nLvl } , asc _getOutlineLvlStyle : function ( ) { return this . OutlineLvlStyle } ,
asc _getSuppressLineNumbers : function ( ) { return this . SuppressLineNumbers } , asc _putSuppressLineNumbers : function ( isSuppress ) { this . SuppressLineNumbers = isSuppress } , asc _putBullet : function ( val ) { this . Bullet = val } , asc _getBullet : function ( ) { return this . Bullet } , asc _putBulletSize : function ( size ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putSize ( size ) } , asc _getBulletSize : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getSize ( ) } , asc _putBulletColor : function ( color ) { if ( ! this . Bullet ) this . Bullet =
new Asc . asc _CBullet ; this . Bullet . asc _putColor ( color ) } , asc _getBulletColor : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getColor ( ) } , asc _putNumStartAt : function ( NumStartAt ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putNumStartAt ( NumStartAt ) } , asc _getNumStartAt : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getNumStartAt ( ) } , asc _getBulletFont : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getFont ( ) } , asc _putBulletFont : function ( v ) { if ( ! this . Bullet ) this . Bullet =
new Asc . asc _CBullet ; this . Bullet . asc _putFont ( v ) } , asc _getBulletSymbol : function ( ) { if ( ! this . Bullet ) return undefined ; return this . Bullet . asc _getSymbol ( ) } , asc _putBulletSymbol : function ( v ) { if ( ! this . Bullet ) this . Bullet = new Asc . asc _CBullet ; this . Bullet . asc _putSymbol ( v ) } , asc _canDeleteBlockContentControl : function ( ) { return this . CanDeleteBlockCC } , asc _canEditBlockContentControl : function ( ) { return this . CanEditBlockCC } , asc _canDeleteInlineContentControl : function ( ) { return this . CanDeleteInlineCC } , asc _canEditInlineContentControl : function ( ) { return this . CanEditInlineCC } } ;
function asc _CTexture ( ) { this . Id = 0 ; this . Image = "" } asc _CTexture . prototype = { asc _getId : function ( ) { return this . Id } , asc _getImage : function ( ) { return this . Image } } ; function asc _CImageSize ( width , height , isCorrect ) { this . Width = undefined == width ? 0 : width ; this . Height = undefined == height ? 0 : height ; this . IsCorrect = isCorrect } asc _CImageSize . prototype = { asc _getImageWidth : function ( ) { return this . Width } , asc _getImageHeight : function ( ) { return this . Height } , asc _getIsCorrect : function ( ) { return this . IsCorrect } } ; function asc _CPaddings ( obj ) { if ( obj ) { this . Left =
undefined == obj . Left ? null : obj . Left ; this . Top = undefined == obj . Top ? null : obj . Top ; this . Bottom = undefined == obj . Bottom ? null : obj . Bottom ; this . Right = undefined == obj . Right ? null : obj . Right } else { this . Left = null ; this . Top = null ; this . Bottom = null ; this . Right = null } } asc _CPaddings . prototype = { asc _getLeft : function ( ) { return this . Left } , asc _putLeft : function ( v ) { this . Left = v } , asc _getTop : function ( ) { return this . Top } , asc _putTop : function ( v ) { this . Top = v } , asc _getBottom : function ( ) { return this . Bottom } , asc _putBottom : function ( v ) { this . Bottom = v } ,
asc _getRight : function ( ) { return this . Right } , asc _putRight : function ( v ) { this . Right = v } } ; function asc _CShapeProperty ( ) { this . type = null ; this . fill = null ; this . stroke = null ; this . paddings = null ; this . canFill = true ; this . canChangeArrows = false ; this . bFromChart = false ; this . bFromImage = false ; this . Locked = false ; this . w = null ; this . h = null ; this . vert = null ; this . verticalTextAlign = null ; this . textArtProperties = null ; this . lockAspect = null ; this . title = null ; this . description = null ; this . columnNumber = null ; this . columnSpace = null ; this . textFitType =
null ; this . vertOverflowType = null ; this . signatureId = null ; this . rot = null ; this . rotAdd = null ; this . flipH = null ; this . flipV = null ; this . flipHInvert = null ; this . flipVInvert = null ; this . shadow = undefined ; this . anchor = null } asc _CShapeProperty . prototype = { constructor : asc _CShapeProperty , asc _getType : function ( ) { return this . type } , asc _putType : function ( v ) { this . type = v } , asc _getFill : function ( ) { return this . fill } , asc _putFill : function ( v ) { this . fill = v } , asc _getStroke : function ( ) { return this . stroke } , asc _putStroke : function ( v ) { this . stroke = v } ,
asc _getPaddings : function ( ) { return this . paddings } , asc _putPaddings : function ( v ) { this . paddings = v } , asc _getCanFill : function ( ) { return this . canFill } , asc _putCanFill : function ( v ) { this . canFill = v } , asc _getCanChangeArrows : function ( ) { return this . canChangeArrows } , asc _setCanChangeArrows : function ( v ) { this . canChangeArrows = v } , asc _getFromChart : function ( ) { return this . bFromChart } , asc _setFromChart : function ( v ) { this . bFromChart = v } , asc _getLocked : function ( ) { return this . Locked } , asc _setLocked : function ( v ) { this . Locked = v } , asc _getWidth : function ( ) { return this . w } ,
asc _putWidth : function ( v ) { this . w = v } , asc _getHeight : function ( ) { return this . h } , asc _putHeight : function ( v ) { this . h = v } , asc _getVerticalTextAlign : function ( ) { return this . verticalTextAlign } , asc _putVerticalTextAlign : function ( v ) { this . verticalTextAlign = v } , asc _getVert : function ( ) { return this . vert } , asc _putVert : function ( v ) { this . vert = v } , asc _getTextArtProperties : function ( ) { return this . textArtProperties } , asc _putTextArtProperties : function ( v ) { this . textArtProperties = v } , asc _getLockAspect : function ( ) { return this . lockAspect } ,
asc _putLockAspect : function ( v ) { this . lockAspect = v } , asc _getTitle : function ( ) { return this . title } , asc _putTitle : function ( v ) { this . title = v } , asc _getDescription : function ( ) { return this . description } , asc _putDescription : function ( v ) { this . description = v } , asc _getColumnNumber : function ( ) { return this . columnNumber } , asc _putColumnNumber : function ( v ) { this . columnNumber = v } , asc _getColumnSpace : function ( ) { return this . columnSpace } , asc _getTextFitType : function ( ) { return this . textFitType } , asc _getVertOverflowType : function ( ) { return this . vertOverflowType } ,
asc _putColumnSpace : function ( v ) { this . columnSpace = v } , asc _putTextFitType : function ( v ) { this . textFitType = v } , asc _putVertOverflowType : function ( v ) { this . vertOverflowType = v } , asc _getSignatureId : function ( ) { return this . signatureId } , asc _putSignatureId : function ( v ) { this . signatureId = v } , asc _getFromImage : function ( ) { return this . bFromImage } , asc _putFromImage : function ( v ) { this . bFromImage = v } , asc _getRot : function ( ) { return this . rot } , asc _putRot : function ( v ) { this . rot = v } , asc _getRotAdd : function ( ) { return this . rotAdd } , asc _putRotAdd : function ( v ) { this . rotAdd =
v } , asc _getFlipH : function ( ) { return this . flipH } , asc _putFlipH : function ( v ) { this . flipH = v } , asc _getFlipV : function ( ) { return this . flipV } , asc _putFlipV : function ( v ) { this . flipV = v } , asc _getFlipHInvert : function ( ) { return this . flipHInvert } , asc _putFlipHInvert : function ( v ) { this . flipHInvert = v } , asc _getFlipVInvert : function ( ) { return this . flipVInvert } , asc _putFlipVInvert : function ( v ) { this . flipVInvert = v } , asc _getShadow : function ( ) { return this . shadow } , asc _putShadow : function ( v ) { this . shadow = v } , asc _getAnchor : function ( ) { return this . anchor } ,
asc _putAnchor : function ( v ) { this . anchor = v } } ; function asc _TextArtProperties ( obj ) { if ( obj ) { this . Fill = obj . Fill ; this . Line = obj . Line ; this . Form = obj . Form ; this . Style = obj . Style } else { this . Fill = undefined ; this . Line = undefined ; this . Form = undefined ; this . Style = undefined } } asc _TextArtProperties . prototype . asc _putFill = function ( oAscFill ) { this . Fill = oAscFill } ; asc _TextArtProperties . prototype . asc _getFill = function ( ) { return this . Fill } ; asc _TextArtProperties . prototype . asc _putLine = function ( oAscStroke ) { this . Line = oAscStroke } ; asc _TextArtProperties . prototype . asc _getLine =
function ( ) { return this . Line } ; asc _TextArtProperties . prototype . asc _putForm = function ( sForm ) { this . Form = sForm } ; asc _TextArtProperties . prototype . asc _getForm = function ( ) { return this . Form } ; asc _TextArtProperties . prototype . asc _putStyle = function ( Style ) { this . Style = Style } ; asc _TextArtProperties . prototype . asc _getStyle = function ( ) { return this . Style } ; function CImagePositionH ( obj ) { if ( obj ) { this . RelativeFrom = undefined === obj . RelativeFrom ? undefined : obj . RelativeFrom ; this . UseAlign = undefined === obj . UseAlign ? undefined : obj . UseAlign ;
this . Align = undefined === obj . Align ? undefined : obj . Align ; this . Value = undefined === obj . Value ? undefined : obj . Value ; this . Percent = undefined === obj . Percent ? undefined : obj . Percent } else { this . RelativeFrom = undefined ; this . UseAlign = undefined ; this . Align = undefined ; this . Value = undefined ; this . Percent = undefined } } CImagePositionH . prototype . get _RelativeFrom = function ( ) { return this . RelativeFrom } ; CImagePositionH . prototype . put _RelativeFrom = function ( v ) { this . RelativeFrom = v } ; CImagePositionH . prototype . get _UseAlign = function ( ) { return this . UseAlign } ;
CImagePositionH . prototype . put _UseAlign = function ( v ) { this . UseAlign = v } ; CImagePositionH . prototype . get _Align = function ( ) { return this . Align } ; CImagePositionH . prototype . put _Align = function ( v ) { this . Align = v } ; CImagePositionH . prototype . get _Value = function ( ) { return this . Value } ; CImagePositionH . prototype . put _Value = function ( v ) { this . Value = v } ; CImagePositionH . prototype . get _Percent = function ( ) { return this . Percent } ; CImagePositionH . prototype . put _Percent = function ( v ) { this . Percent = v } ; function CImagePositionV ( obj ) { if ( obj ) { this . RelativeFrom =
undefined === obj . RelativeFrom ? undefined : obj . RelativeFrom ; this . UseAlign = undefined === obj . UseAlign ? undefined : obj . UseAlign ; this . Align = undefined === obj . Align ? undefined : obj . Align ; this . Value = undefined === obj . Value ? undefined : obj . Value ; this . Percent = undefined === obj . Percent ? undefined : obj . Percent } else { this . RelativeFrom = undefined ; this . UseAlign = undefined ; this . Align = undefined ; this . Value = undefined ; this . Percent = undefined } } CImagePositionV . prototype . get _RelativeFrom = function ( ) { return this . RelativeFrom } ; CImagePositionV . prototype . put _RelativeFrom =
function ( v ) { this . RelativeFrom = v } ; CImagePositionV . prototype . get _UseAlign = function ( ) { return this . UseAlign } ; CImagePositionV . prototype . put _UseAlign = function ( v ) { this . UseAlign = v } ; CImagePositionV . prototype . get _Align = function ( ) { return this . Align } ; CImagePositionV . prototype . put _Align = function ( v ) { this . Align = v } ; CImagePositionV . prototype . get _Value = function ( ) { return this . Value } ; CImagePositionV . prototype . put _Value = function ( v ) { this . Value = v } ; CImagePositionV . prototype . get _Percent = function ( ) { return this . Percent } ; CImagePositionV . prototype . put _Percent =
function ( v ) { this . Percent = v } ; function CPosition ( obj ) { if ( obj ) { this . X = undefined == obj . X ? null : obj . X ; this . Y = undefined == obj . Y ? null : obj . Y } else { this . X = null ; this . Y = null } } CPosition . prototype . get _X = function ( ) { return this . X } ; CPosition . prototype . put _X = function ( v ) { this . X = v } ; CPosition . prototype . get _Y = function ( ) { return this . Y } ; CPosition . prototype . put _Y = function ( v ) { this . Y = v } ; function asc _CImgProperty ( obj ) { if ( obj ) { this . CanBeFlow = undefined != obj . CanBeFlow ? obj . CanBeFlow : true ; this . Width = undefined != obj . Width ? obj . Width : undefined ;
this . Height = undefined != obj . Height ? obj . Height : undefined ; this . WrappingStyle = undefined != obj . WrappingStyle ? obj . WrappingStyle : undefined ; this . Paddings = undefined != obj . Paddings ? new asc _CPaddings ( obj . Paddings ) : undefined ; this . Position = undefined != obj . Position ? new CPosition ( obj . Position ) : undefined ; this . AllowOverlap = undefined != obj . AllowOverlap ? obj . AllowOverlap : undefined ; this . PositionH = undefined != obj . PositionH ? new CImagePositionH ( obj . PositionH ) : undefined ; this . PositionV = undefined != obj . PositionV ? new CImagePositionV ( obj . PositionV ) :
undefined ; this . SizeRelH = undefined != obj . SizeRelH ? new CImagePositionH ( obj . SizeRelH ) : undefined ; this . SizeRelV = undefined != obj . SizeRelV ? new CImagePositionV ( obj . SizeRelV ) : undefined ; this . Internal _Position = undefined != obj . Internal _Position ? obj . Internal _Position : null ; this . ImageUrl = undefined != obj . ImageUrl ? obj . ImageUrl : null ; this . Token = obj . Token ; this . Locked = undefined != obj . Locked ? obj . Locked : false ; this . lockAspect = undefined != obj . lockAspect ? obj . lockAspect : false ; this . ChartProperties = undefined != obj . ChartProperties ? obj . ChartProperties :
null ; this . ShapeProperties = undefined != obj . ShapeProperties ? obj . ShapeProperties : null ; this . SlicerProperties = undefined != obj . SlicerProperties ? obj . SlicerProperties : null ; this . ChangeLevel = undefined != obj . ChangeLevel ? obj . ChangeLevel : null ; this . Group = obj . Group != undefined ? obj . Group : null ; this . fromGroup = obj . fromGroup != undefined ? obj . fromGroup : null ; this . severalCharts = obj . severalCharts != undefined ? obj . severalCharts : false ; this . severalChartTypes = obj . severalChartTypes != undefined ? obj . severalChartTypes : undefined ; this . severalChartStyles =
obj . severalChartStyles != undefined ? obj . severalChartStyles : undefined ; this . verticalTextAlign = obj . verticalTextAlign != undefined ? obj . verticalTextAlign : undefined ; this . vert = obj . vert != undefined ? obj . vert : undefined ; this . pluginGuid = obj . pluginGuid !== undefined ? obj . pluginGuid : undefined ; this . pluginData = obj . pluginData !== undefined ? obj . pluginData : undefined ; this . oleWidth = obj . oleWidth != undefined ? obj . oleWidth : undefined ; this . oleHeight = obj . oleHeight != undefined ? obj . oleHeight : undefined ; this . title = obj . title != undefined ? obj . title :
undefined ; this . description = obj . description != undefined ? obj . description : undefined ; this . columnNumber = obj . columnNumber != undefined ? obj . columnNumber : undefined ; this . columnSpace = obj . columnSpace != undefined ? obj . columnSpace : undefined ; this . textFitType = obj . textFitType != undefined ? obj . textFitType : undefined ; this . vertOverflowType = obj . vertOverflowType != undefined ? obj . vertOverflowType : undefined ; this . shadow = obj . shadow != undefined ? obj . shadow : undefined ; this . rot = obj . rot != undefined ? obj . rot : undefined ; this . flipH = obj . flipH !=
undefined ? obj . flipH : undefined ; this . flipV = obj . flipV != undefined ? obj . flipV : undefined ; this . resetCrop = obj . resetCrop != undefined ? obj . resetCrop : undefined ; this . anchor = obj . anchor != undefined ? obj . anchor : undefined } else { this . CanBeFlow = true ; this . Width = undefined ; this . Height = undefined ; this . WrappingStyle = undefined ; this . Paddings = undefined ; this . Position = undefined ; this . PositionH = undefined ; this . PositionV = undefined ; this . SizeRelH = undefined ; this . SizeRelV = undefined ; this . Internal _Position = null ; this . ImageUrl = null ; this . Token =
undefined ; this . Locked = false ; this . ChartProperties = null ; this . ShapeProperties = null ; this . SlicerProperties = null ; this . ChangeLevel = null ; this . Group = null ; this . fromGroup = null ; this . severalCharts = false ; this . severalChartTypes = undefined ; this . severalChartStyles = undefined ; this . verticalTextAlign = undefined ; this . vert = undefined ; this . pluginGuid = undefined ; this . pluginData = undefined ; this . oleWidth = undefined ; this . oleHeight = undefined ; this . title = undefined ; this . description = undefined ; this . columnNumber = undefined ; this . columnSpace =
undefined ; this . textFitType = undefined ; this . vertOverflowType = undefined ; this . rot = undefined ; this . rotAdd = undefined ; this . flipH = undefined ; this . flipV = undefined ; this . resetCrop = undefined ; this . anchor = undefined } } asc _CImgProperty . prototype = { constructor : asc _CImgProperty , asc _getChangeLevel : function ( ) { return this . ChangeLevel } , asc _putChangeLevel : function ( v ) { this . ChangeLevel = v } , asc _getCanBeFlow : function ( ) { return this . CanBeFlow } , asc _getWidth : function ( ) { return this . Width } , asc _putWidth : function ( v ) { this . Width = v } , asc _getHeight : function ( ) { return this . Height } ,
asc _putHeight : function ( v ) { this . Height = v } , asc _getWrappingStyle : function ( ) { return this . WrappingStyle } , asc _putWrappingStyle : function ( v ) { this . WrappingStyle = v } , asc _getPaddings : function ( ) { return this . Paddings } , asc _putPaddings : function ( v ) { this . Paddings = v } , asc _getAllowOverlap : function ( ) { return this . AllowOverlap } , asc _putAllowOverlap : function ( v ) { this . AllowOverlap = v } , asc _getPosition : function ( ) { return this . Position } , asc _putPosition : function ( v ) { this . Position = v } , asc _getPositionH : function ( ) { return this . PositionH } ,
asc _putPositionH : function ( v ) { this . PositionH = v } , asc _getPositionV : function ( ) { return this . PositionV } , asc _putPositionV : function ( v ) { this . PositionV = v } , asc _getSizeRelH : function ( ) { return this . SizeRelH } , asc _putSizeRelH : function ( v ) { this . SizeRelH = v } , asc _getSizeRelV : function ( ) { return this . SizeRelV } , asc _putSizeRelV : function ( v ) { this . SizeRelV = v } , asc _getValue _X : function ( RelativeFrom ) { if ( null != this . Internal _Position ) return this . Internal _Position . Calculate _X _Value ( RelativeFrom ) ; return 0 } , asc _getValue _Y : function ( RelativeFrom ) { if ( null !=
this . Internal _Position ) return this . Internal _Position . Calculate _Y _Value ( RelativeFrom ) ; return 0 } , asc _getImageUrl : function ( ) { return this . ImageUrl } , asc _putImageUrl : function ( v , sToken ) { this . ImageUrl = v ; this . Token = sToken } , asc _getGroup : function ( ) { return this . Group } , asc _putGroup : function ( v ) { this . Group = v } , asc _getFromGroup : function ( ) { return this . fromGroup } , asc _putFromGroup : function ( v ) { this . fromGroup = v } , asc _getisChartProps : function ( ) { return this . isChartProps } , asc _putisChartPross : function ( v ) { this . isChartProps =
v } , asc _getSeveralCharts : function ( ) { return this . severalCharts } , asc _putSeveralCharts : function ( v ) { this . severalCharts = v } , asc _getSeveralChartTypes : function ( ) { return this . severalChartTypes } , asc _putSeveralChartTypes : function ( v ) { this . severalChartTypes = v } , asc _getSeveralChartStyles : function ( ) { return this . severalChartStyles } , asc _putSeveralChartStyles : function ( v ) { this . severalChartStyles = v } , asc _getVerticalTextAlign : function ( ) { return this . verticalTextAlign } , asc _putVerticalTextAlign : function ( v ) { this . verticalTextAlign =
v } , asc _getVert : function ( ) { return this . vert } , asc _putVert : function ( v ) { this . vert = v } , asc _getLocked : function ( ) { return this . Locked } , asc _getLockAspect : function ( ) { return this . lockAspect } , asc _putLockAspect : function ( v ) { this . lockAspect = v } , asc _getChartProperties : function ( ) { return this . ChartProperties } , asc _putChartProperties : function ( v ) { this . ChartProperties = v } , asc _getShapeProperties : function ( ) { return this . ShapeProperties } , asc _putShapeProperties : function ( v ) { this . ShapeProperties = v } , asc _getSlicerProperties : function ( ) { return this . SlicerProperties } ,
asc _putSlicerProperties : function ( v ) { this . SlicerProperties = v } , asc _getOriginSize : function ( api ) { if ( window [ "AscFormat" ] . isRealNumber ( this . oleWidth ) && window [ "AscFormat" ] . isRealNumber ( this . oleHeight ) ) return new asc _CImageSize ( this . oleWidth , this . oleHeight , true ) ; if ( this . ImageUrl === null ) return new asc _CImageSize ( 50 , 50 , false ) ; var origW = 0 ; var origH = 0 ; var _image = api . ImageLoader . map _image _index [ AscCommon . getFullImageSrc2 ( this . ImageUrl ) ] ; if ( _image != undefined && _image . Image != null && _image . Status == window [ "AscFonts" ] . ImageLoadStatus . Complete ) { origW =
_image . Image . width ; origH = _image . Image . height } else if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "GetImageOriginalSize" ] ) { var _size = window [ "AscDesktopEditor" ] [ "GetImageOriginalSize" ] ( this . ImageUrl ) ; if ( _size . W != 0 && _size . H != 0 ) { origW = _size . W ; origH = _size . H } } if ( origW != 0 && origH != 0 ) { var _ _w = Math . max ( origW * AscCommon . g _dKoef _pix _to _mm , 1 ) ; var _ _h = Math . max ( origH * AscCommon . g _dKoef _pix _to _mm , 1 ) ; return new asc _CImageSize ( _ _w , _ _h , true ) } return new asc _CImageSize ( 50 , 50 , false ) } , asc _getPluginGuid : function ( ) { return this . pluginGuid } ,
asc _putPluginGuid : function ( v ) { this . pluginGuid = v } , asc _getPluginData : function ( ) { return this . pluginData } , asc _putPluginData : function ( v ) { this . pluginData = v } , asc _getTitle : function ( ) { return this . title } , asc _putTitle : function ( v ) { this . title = v } , asc _getDescription : function ( ) { return this . description } , asc _putDescription : function ( v ) { this . description = v } , asc _getColumnNumber : function ( ) { return this . columnNumber } , asc _putColumnNumber : function ( v ) { this . columnNumber = v } , asc _getColumnSpace : function ( ) { return this . columnSpace } ,
asc _getTextFitType : function ( ) { return this . textFitType } , asc _getVertOverflowType : function ( ) { return this . vertOverflowType } , asc _putColumnSpace : function ( v ) { this . columnSpace = v } , asc _putTextFitType : function ( v ) { this . textFitType = v } , asc _putVertOverflowType : function ( v ) { this . vertOverflowType = v } , asc _getSignatureId : function ( ) { if ( this . ShapeProperties ) return this . ShapeProperties . asc _getSignatureId ( ) ; return undefined } , asc _getRot : function ( ) { return this . rot } , asc _putRot : function ( v ) { this . rot = v } , asc _getRotAdd : function ( ) { return this . rotAdd } ,
asc _putRotAdd : function ( v ) { this . rotAdd = v } , asc _getFlipH : function ( ) { return this . flipH } , asc _putFlipH : function ( v ) { this . flipH = v } , asc _getFlipHInvert : function ( ) { return this . flipHInvert } , asc _putFlipHInvert : function ( v ) { this . flipHInvert = v } , asc _getFlipV : function ( ) { return this . flipV } , asc _putFlipV : function ( v ) { this . flipV = v } , asc _getFlipVInvert : function ( ) { return this . flipVInvert } , asc _putFlipVInvert : function ( v ) { this . flipVInvert = v } , asc _putResetCrop : function ( v ) { this . resetCrop = v } , asc _getShadow : function ( ) { return this . shadow } ,
asc _putShadow : function ( v ) { this . shadow = v } , asc _getAnchor : function ( ) { return this . anchor } , asc _putAnchor : function ( v ) { this . anchor = v } } ; function asc _CSelectedObject ( type , val ) { this . Type = undefined != type ? type : null ; this . Value = undefined != val ? val : null } asc _CSelectedObject . prototype . asc _getObjectType = function ( ) { return this . Type } ; asc _CSelectedObject . prototype . asc _getObjectValue = function ( ) { return this . Value } ; function asc _CShapeFill ( ) { this . type = null ; this . fill = null ; this . transparent = null } asc _CShapeFill . prototype = { asc _getType : function ( ) { return this . type } ,
asc _putType : function ( v ) { this . type = v } , asc _getFill : function ( ) { return this . fill } , asc _putFill : function ( v ) { this . fill = v } , asc _getTransparent : function ( ) { return this . transparent } , asc _putTransparent : function ( v ) { this . transparent = v } , asc _CheckForseSet : function ( ) { if ( null != this . transparent ) return true ; if ( null != this . fill && this . fill . Positions != null ) return true ; return false } } ; function asc _CFillBlip ( ) { this . type = c _oAscFillBlipType . STRETCH ; this . url = "" ; this . token = undefined ; this . texture _id = null } asc _CFillBlip . prototype =
{ asc _getType : function ( ) { return this . type } , asc _putType : function ( v ) { this . type = v } , asc _getUrl : function ( ) { return this . url } , asc _putUrl : function ( v , sToken ) { this . url = v ; this . token = sToken } , asc _getTextureId : function ( ) { return this . texture _id } , asc _putTextureId : function ( v ) { this . texture _id = v } } ; function asc _CFillHatch ( ) { this . PatternType = undefined ; this . fgClr = undefined ; this . bgClr = undefined } asc _CFillHatch . prototype = { asc _getPatternType : function ( ) { return this . PatternType } , asc _putPatternType : function ( v ) { this . PatternType =
v } , asc _getColorFg : function ( ) { return this . fgClr } , asc _putColorFg : function ( v ) { this . fgClr = v } , asc _getColorBg : function ( ) { return this . bgClr } , asc _putColorBg : function ( v ) { this . bgClr = v } } ; function asc _CFillGrad ( ) { this . Colors = undefined ; this . Positions = undefined ; this . GradType = 0 ; this . LinearAngle = undefined ; this . LinearScale = true ; this . PathType = 0 } asc _CFillGrad . prototype = { asc _getColors : function ( ) { return this . Colors } , asc _putColors : function ( v ) { this . Colors = v } , asc _getPositions : function ( ) { return this . Positions } , asc _putPositions : function ( v ) { this . Positions =
v } , asc _getGradType : function ( ) { return this . GradType } , asc _putGradType : function ( v ) { this . GradType = v } , asc _getLinearAngle : function ( ) { return this . LinearAngle } , asc _putLinearAngle : function ( v ) { this . LinearAngle = v } , asc _getLinearScale : function ( ) { return this . LinearScale } , asc _putLinearScale : function ( v ) { this . LinearScale = v } , asc _getPathType : function ( ) { return this . PathType } , asc _putPathType : function ( v ) { this . PathType = v } } ; function asc _CFillSolid ( ) { this . color = new asc _CColor } asc _CFillSolid . prototype = { asc _getColor : function ( ) { return this . color } ,
asc _putColor : function ( v ) { this . color = v } } ; function asc _CStroke ( ) { this . type = null ; this . width = null ; this . color = null ; this . prstDash = null ; this . LineJoin = null ; this . LineCap = null ; this . LineBeginStyle = null ; this . LineBeginSize = null ; this . LineEndStyle = null ; this . LineEndSize = null ; this . canChangeArrows = false } asc _CStroke . prototype = { asc _getType : function ( ) { return this . type } , asc _putType : function ( v ) { this . type = v } , asc _getWidth : function ( ) { return this . width } , asc _putWidth : function ( v ) { this . width = v } , asc _getColor : function ( ) { return this . color } ,
asc _putColor : function ( v ) { this . color = v } , asc _getLinejoin : function ( ) { return this . LineJoin } , asc _putLinejoin : function ( v ) { this . LineJoin = v } , asc _getLinecap : function ( ) { return this . LineCap } , asc _putLinecap : function ( v ) { this . LineCap = v } , asc _getLinebeginstyle : function ( ) { return this . LineBeginStyle } , asc _putLinebeginstyle : function ( v ) { this . LineBeginStyle = v } , asc _getLinebeginsize : function ( ) { return this . LineBeginSize } , asc _putLinebeginsize : function ( v ) { this . LineBeginSize = v } , asc _getLineendstyle : function ( ) { return this . LineEndStyle } ,
asc _putLineendstyle : function ( v ) { this . LineEndStyle = v } , asc _getLineendsize : function ( ) { return this . LineEndSize } , asc _putLineendsize : function ( v ) { this . LineEndSize = v } , asc _getCanChangeArrows : function ( ) { return this . canChangeArrows } , asc _putPrstDash : function ( v ) { this . prstDash = v } , asc _getPrstDash : function ( ) { return this . prstDash } } ; function CAscColorScheme ( ) { this . colors = [ ] ; this . name = "" ; this . scheme = null ; this . summ = 0 } CAscColorScheme . prototype . get _colors = function ( ) { return this . colors } ; CAscColorScheme . prototype . get _name =
function ( ) { return this . name } ; CAscColorScheme . prototype . get _dk1 = function ( ) { return this . colors [ 0 ] } ; CAscColorScheme . prototype . get _lt1 = function ( ) { return this . colors [ 1 ] } ; CAscColorScheme . prototype . get _dk2 = function ( ) { return this . colors [ 2 ] } ; CAscColorScheme . prototype . get _lt2 = function ( ) { return this . colors [ 3 ] } ; CAscColorScheme . prototype . get _accent1 = function ( ) { return this . colors [ 4 ] } ; CAscColorScheme . prototype . get _accent2 = function ( ) { return this . colors [ 5 ] } ; CAscColorScheme . prototype . get _accent3 = function ( ) { return this . colors [ 6 ] } ;
CAscColorScheme . prototype . get _accent4 = function ( ) { return this . colors [ 7 ] } ; CAscColorScheme . prototype . get _accent5 = function ( ) { return this . colors [ 8 ] } ; CAscColorScheme . prototype . get _accent6 = function ( ) { return this . colors [ 9 ] } ; CAscColorScheme . prototype . get _hlink = function ( ) { return this . colors [ 10 ] } ; CAscColorScheme . prototype . get _folHlink = function ( ) { return this . colors [ 11 ] } ; CAscColorScheme . prototype . putColor = function ( color ) { this . colors . push ( color ) ; this . summ += color . getVal ( ) } ; CAscColorScheme . prototype . isEqual = function ( oColorScheme ) { if ( this . summ ===
oColorScheme . summ ) { for ( var i = 0 ; i < this . colors . length ; ++ i ) { var oColor1 = this . colors [ i ] ; var oColor2 = oColorScheme . colors [ i ] ; if ( ! ( ! oColor1 && ! oColor2 || oColor2 && oColor2 && oColor1 . Compare ( oColor2 ) ) ) return false } return this . name === oColorScheme . name } return false } ; function CMouseMoveData ( obj ) { if ( obj ) { this . Type = undefined != obj . Type ? obj . Type : c _oAscMouseMoveDataTypes . Common ; this . X _abs = undefined != obj . X _abs ? obj . X _abs : 0 ; this . Y _abs = undefined != obj . Y _abs ? obj . Y _abs : 0 ; switch ( this . Type ) { case c _oAscMouseMoveDataTypes . Hyperlink : { this . Hyperlink =
undefined != obj . PageNum ? obj . PageNum : 0 ; break } case c _oAscMouseMoveDataTypes . LockedObject : { this . UserId = undefined != obj . UserId ? obj . UserId : "" ; this . HaveChanges = undefined != obj . HaveChanges ? obj . HaveChanges : false ; this . LockedObjectType = undefined != obj . LockedObjectType ? obj . LockedObjectType : Asc . c _oAscMouseMoveLockedObjectType . Common ; break } case c _oAscMouseMoveDataTypes . Footnote : { this . Text = "" ; this . Number = 1 ; break } } } else { this . Type = c _oAscMouseMoveDataTypes . Common ; this . X _abs = 0 ; this . Y _abs = 0 } } CMouseMoveData . prototype . get _Type =
function ( ) { return this . Type } ; CMouseMoveData . prototype . get _X = function ( ) { return this . X _abs } ; CMouseMoveData . prototype . get _Y = function ( ) { return this . Y _abs } ; CMouseMoveData . prototype . get _Hyperlink = function ( ) { return this . Hyperlink } ; CMouseMoveData . prototype . get _UserId = function ( ) { return this . UserId } ; CMouseMoveData . prototype . get _HaveChanges = function ( ) { return this . HaveChanges } ; CMouseMoveData . prototype . get _LockedObjectType = function ( ) { return this . LockedObjectType } ; CMouseMoveData . prototype . get _FootnoteText = function ( ) { return this . Text } ;
CMouseMoveData . prototype . get _FootnoteNumber = function ( ) { return this . Number } ; CMouseMoveData . prototype . get _FormHelpText = function ( ) { return this . Text } ; function CHyperlinkProperty ( obj ) { if ( obj ) { this . Text = undefined != obj . Text ? obj . Text : null ; this . Value = undefined != obj . Value ? obj . Value : "" ; this . ToolTip = undefined != obj . ToolTip ? obj . ToolTip : "" ; this . Class = undefined !== obj . Class ? obj . Class : null ; this . Anchor = undefined !== obj . Anchor ? obj . Anchor : null ; this . Heading = obj . Heading ? obj . Heading : null } else { this . Text = null ; this . Value = "" ;
this . ToolTip = "" ; this . Class = null ; this . Anchor = null ; this . Heading = null } } CHyperlinkProperty . prototype . get _Value = function ( ) { return this . Value } ; CHyperlinkProperty . prototype . put _Value = function ( v ) { this . Value = v } ; CHyperlinkProperty . prototype . get _ToolTip = function ( ) { return this . ToolTip } ; CHyperlinkProperty . prototype . put _ToolTip = function ( v ) { this . ToolTip = v ? v . slice ( 0 , Asc . c _oAscMaxTooltipLength ) : v } ; CHyperlinkProperty . prototype . get _Text = function ( ) { return this . Text } ; CHyperlinkProperty . prototype . put _Text = function ( v ) { this . Text =
v } ; CHyperlinkProperty . prototype . put _InternalHyperlink = function ( oClass ) { this . Class = oClass } ; CHyperlinkProperty . prototype . get _InternalHyperlink = function ( ) { return this . Class } ; CHyperlinkProperty . prototype . is _TopOfDocument = function ( ) { return this . Anchor === "_top" } ; CHyperlinkProperty . prototype . put _TopOfDocument = function ( ) { this . Anchor = "_top" } ; CHyperlinkProperty . prototype . get _Bookmark = function ( ) { return this . Anchor } ; CHyperlinkProperty . prototype . put _Bookmark = function ( sBookmark ) { this . Anchor = sBookmark } ; CHyperlinkProperty . prototype . is _Heading =
function ( ) { return this . Heading instanceof AscCommonWord . Paragraph ? true : false } ; CHyperlinkProperty . prototype . put _Heading = function ( oParagraph ) { this . Heading = oParagraph } ; CHyperlinkProperty . prototype . get _Heading = function ( ) { return this . Heading } ; window [ "Asc" ] [ "CHyperlinkProperty" ] = window [ "Asc" ] . CHyperlinkProperty = CHyperlinkProperty ; CHyperlinkProperty . prototype [ "get_Value" ] = CHyperlinkProperty . prototype . get _Value ; CHyperlinkProperty . prototype [ "put_Value" ] = CHyperlinkProperty . prototype . put _Value ; CHyperlinkProperty . prototype [ "get_ToolTip" ] =
CHyperlinkProperty . prototype . get _ToolTip ; CHyperlinkProperty . prototype [ "put_ToolTip" ] = CHyperlinkProperty . prototype . put _ToolTip ; CHyperlinkProperty . prototype [ "get_Text" ] = CHyperlinkProperty . prototype . get _Text ; CHyperlinkProperty . prototype [ "put_Text" ] = CHyperlinkProperty . prototype . put _Text ; CHyperlinkProperty . prototype [ "get_InternalHyperlink" ] = CHyperlinkProperty . prototype . get _InternalHyperlink ; CHyperlinkProperty . prototype [ "put_InternalHyperlink" ] = CHyperlinkProperty . prototype . put _InternalHyperlink ; CHyperlinkProperty . prototype [ "is_TopOfDocument" ] =
CHyperlinkProperty . prototype . is _TopOfDocument ; CHyperlinkProperty . prototype [ "put_TopOfDocument" ] = CHyperlinkProperty . prototype . put _TopOfDocument ; CHyperlinkProperty . prototype [ "get_Bookmark" ] = CHyperlinkProperty . prototype . get _Bookmark ; CHyperlinkProperty . prototype [ "put_Bookmark" ] = CHyperlinkProperty . prototype . put _Bookmark ; CHyperlinkProperty . prototype [ "is_Heading" ] = CHyperlinkProperty . prototype . is _Heading ; CHyperlinkProperty . prototype [ "put_Heading" ] = CHyperlinkProperty . prototype . put _Heading ; CHyperlinkProperty . prototype [ "get_Heading" ] =
CHyperlinkProperty . prototype . get _Heading ; function asc _CUserInfo ( ) { this . Id = null ; this . FullName = null ; this . FirstName = null ; this . LastName = null } asc _CUserInfo . prototype . asc _putId = asc _CUserInfo . prototype . put _Id = function ( v ) { this . Id = v } ; asc _CUserInfo . prototype . asc _getId = asc _CUserInfo . prototype . get _Id = function ( ) { return this . Id } ; asc _CUserInfo . prototype . asc _putFullName = asc _CUserInfo . prototype . put _FullName = function ( v ) { this . FullName = v } ; asc _CUserInfo . prototype . asc _getFullName = asc _CUserInfo . prototype . get _FullName = function ( ) { return this . FullName } ;
asc _CUserInfo . prototype . asc _putFirstName = asc _CUserInfo . prototype . put _FirstName = function ( v ) { this . FirstName = v } ; asc _CUserInfo . prototype . asc _getFirstName = asc _CUserInfo . prototype . get _FirstName = function ( ) { return this . FirstName } ; asc _CUserInfo . prototype . asc _putLastName = asc _CUserInfo . prototype . put _LastName = function ( v ) { this . LastName = v } ; asc _CUserInfo . prototype . asc _getLastName = asc _CUserInfo . prototype . get _LastName = function ( ) { return this . LastName } ; function asc _CDocInfo ( ) { this . Id = null ; this . Url = null ; this . Title = null ;
this . Format = null ; this . VKey = null ; this . Token = null ; this . UserInfo = null ; this . Options = null ; this . CallbackUrl = null ; this . TemplateReplacement = null ; this . Mode = null ; this . Permissions = null ; this . Lang = null ; this . OfflineApp = false ; this . Encrypted ; this . EncryptedInfo ; this . IsEnabledPlugins = true ; this . IsEnabledMacroses = true } prot = asc _CDocInfo . prototype ; prot . get _Id = prot . asc _getId = function ( ) { return this . Id } ; prot . put _Id = prot . asc _putId = function ( v ) { this . Id = v } ; prot . get _Url = prot . asc _getUrl = function ( ) { return this . Url } ; prot . put _Url =
prot . asc _putUrl = function ( v ) { this . Url = v } ; prot . get _Title = prot . asc _getTitle = function ( ) { return this . Title } ; prot . put _Title = prot . asc _putTitle = function ( v ) { this . Title = v } ; prot . get _Format = prot . asc _getFormat = function ( ) { return this . Format } ; prot . put _Format = prot . asc _putFormat = function ( v ) { this . Format = v } ; prot . get _VKey = prot . asc _getVKey = function ( ) { return this . VKey } ; prot . put _VKey = prot . asc _putVKey = function ( v ) { this . VKey = v } ; prot . get _Token = prot . asc _getToken = function ( ) { return this . Token } ; prot . put _Token = prot . asc _putToken =
function ( v ) { this . Token = v } ; prot . get _OfflineApp = function ( ) { return this . OfflineApp } ; prot . put _OfflineApp = function ( v ) { this . OfflineApp = v } ; prot . get _UserId = prot . asc _getUserId = function ( ) { return this . UserInfo ? this . UserInfo . get _Id ( ) : null } ; prot . get _UserName = prot . asc _getUserName = function ( ) { return this . UserInfo ? this . UserInfo . get _FullName ( ) : null } ; prot . get _FirstName = prot . asc _getFirstName = function ( ) { return this . UserInfo ? this . UserInfo . get _FirstName ( ) : null } ; prot . get _LastName = prot . asc _getLastName = function ( ) { return this . UserInfo ?
this . UserInfo . get _LastName ( ) : null } ; prot . get _Options = prot . asc _getOptions = function ( ) { return this . Options } ; prot . put _Options = prot . asc _putOptions = function ( v ) { this . Options = v } ; prot . get _CallbackUrl = prot . asc _getCallbackUrl = function ( ) { return this . CallbackUrl } ; prot . put _CallbackUrl = prot . asc _putCallbackUrl = function ( v ) { this . CallbackUrl = v } ; prot . get _TemplateReplacement = prot . asc _getTemplateReplacement = function ( ) { return this . TemplateReplacement } ; prot . put _TemplateReplacement = prot . asc _putTemplateReplacement = function ( v ) { this . TemplateReplacement =
v } ; prot . get _UserInfo = prot . asc _getUserInfo = function ( ) { return this . UserInfo } ; prot . put _UserInfo = prot . asc _putUserInfo = function ( v ) { this . UserInfo = v } ; prot . get _Mode = prot . asc _getMode = function ( ) { return this . Mode } ; prot . put _Mode = prot . asc _putMode = function ( v ) { this . Mode = v } ; prot . get _Permissions = prot . asc _getPermissions = function ( ) { return this . Permissions } ; prot . put _Permissions = prot . asc _putPermissions = function ( v ) { this . Permissions = v } ; prot . get _Lang = prot . asc _getLang = function ( ) { return this . Lang } ; prot . put _Lang = prot . asc _putLang =
function ( v ) { this . Lang = v } ; prot . get _Encrypted = prot . asc _getEncrypted = function ( ) { return this . Encrypted } ; prot . put _Encrypted = prot . asc _putEncrypted = function ( v ) { this . Encrypted = v } ; prot . get _EncryptedInfo = prot . asc _getEncryptedInfo = function ( ) { return this . EncryptedInfo } ; prot . put _EncryptedInfo = prot . asc _putEncryptedInfo = function ( v ) { this . EncryptedInfo = v } ; prot . get _IsEnabledPlugins = prot . asc _getIsEnabledPlugins = function ( ) { return this . IsEnabledPlugins } ; prot . put _IsEnabledPlugins = prot . asc _putIsEnabledPlugins = function ( v ) { this . IsEnabledPlugins =
v } ; prot . get _IsEnabledMacroses = prot . asc _getIsEnabledMacroses = function ( ) { return this . IsEnabledMacroses } ; prot . put _IsEnabledMacroses = prot . asc _putIsEnabledMacroses = function ( v ) { this . IsEnabledMacroses = v } ; function COpenProgress ( ) { this . Type = Asc . c _oAscAsyncAction . Open ; this . FontsCount = 0 ; this . CurrentFont = 0 ; this . ImagesCount = 0 ; this . CurrentImage = 0 } COpenProgress . prototype . asc _getType = function ( ) { return this . Type } ; COpenProgress . prototype . asc _getFontsCount = function ( ) { return this . FontsCount } ; COpenProgress . prototype . asc _getCurrentFont =
function ( ) { return this . CurrentFont } ; COpenProgress . prototype . asc _getImagesCount = function ( ) { return this . ImagesCount } ; COpenProgress . prototype . asc _getCurrentImage = function ( ) { return this . CurrentImage } ; function CErrorData ( ) { this . Value = 0 } CErrorData . prototype . put _Value = function ( v ) { this . Value = v } ; CErrorData . prototype . get _Value = function ( ) { return this . Value } ; function CAscMathType ( ) { this . Id = 0 ; this . X = 0 ; this . Y = 0 } CAscMathType . prototype . get _Id = function ( ) { return this . Id } ; CAscMathType . prototype . get _X = function ( ) { return this . X } ;
CAscMathType . prototype . get _Y = function ( ) { return this . Y } ; function CAscMathCategory ( ) { this . Id = 0 ; this . Data = [ ] ; this . W = 0 ; this . H = 0 } CAscMathCategory . prototype . get _Id = function ( ) { return this . Id } ; CAscMathCategory . prototype . get _Data = function ( ) { return this . Data } ; CAscMathCategory . prototype . get _W = function ( ) { return this . W } ; CAscMathCategory . prototype . get _H = function ( ) { return this . H } ; CAscMathCategory . prototype . private _Sort = function ( ) { this . Data . sort ( function ( a , b ) { return a . Id - b . Id } ) } ; function CStyleImage ( name , type , image ,
uiPriority ) { this . name = name ; this . displayName = null ; this . type = type ; this . image = image ; this . uiPriority = uiPriority } CStyleImage . prototype . asc _getId = CStyleImage . prototype . asc _getName = CStyleImage . prototype . get _Name = function ( ) { return this . name } ; CStyleImage . prototype . asc _getDisplayName = function ( ) { return this . displayName } ; CStyleImage . prototype . asc _getType = CStyleImage . prototype . get _Type = function ( ) { return this . type } ; CStyleImage . prototype . asc _getImage = function ( ) { return this . image } ; function asc _CSpellCheckProperty ( Word ,
Checked , Variants , ParaId , Element ) { this . Word = Word ; this . Checked = Checked ; this . Variants = Variants ; this . ParaId = ParaId ; this . Element = Element } asc _CSpellCheckProperty . prototype . get _Word = function ( ) { return this . Word } ; asc _CSpellCheckProperty . prototype . get _Checked = function ( ) { return this . Checked } ; asc _CSpellCheckProperty . prototype . get _Variants = function ( ) { return this . Variants } ; function CWatermarkOnDraw ( htmlContent , api ) { this . api = api ; this . isFontsLoaded = false ; this . inputContentSrc = htmlContent ; if ( typeof this . inputContentSrc ===
"object" ) this . inputContentSrc = JSON . stringify ( this . inputContentSrc ) ; this . replaceMap = { } ; this . image = null ; this . imageBase64 = undefined ; this . width = 0 ; this . height = 0 ; this . transparent = . 3 ; this . zoom = 1 ; this . calculatezoom = - 1 ; this . contentObjects = null ; this . CheckParams = function ( ) { this . replaceMap [ "%user_name%" ] = this . api . User . userName ; var content = this . inputContentSrc ; for ( var key in this . replaceMap ) { if ( ! this . replaceMap . hasOwnProperty ( key ) ) continue ; content = content . replace ( new RegExp ( key , "g" ) , this . replaceMap [ key ] ) } this . contentObjects =
{ } ; try { var _objTmp = JSON . parse ( content ) ; this . contentObjects = _objTmp } catch ( err ) { } this . transparent = undefined == this . contentObjects [ "transparent" ] ? . 3 : this . contentObjects [ "transparent" ] } ; this . Generate = function ( ) { if ( ! this . isFontsLoaded ) return ; if ( this . zoom == this . calculatezoom ) return ; this . calculatezoom = this . zoom ; this . privateGenerateShape ( this . contentObjects ) } ; this . Draw = function ( context , dw _or _dx , dh _or _dy , dw , dh ) { if ( ! this . image || ! this . isFontsLoaded ) return ; var x = 0 ; var y = 0 ; if ( undefined == dw ) { x = dw _or _dx - this . width >>
1 ; y = dh _or _dy - this . height >> 1 } else { x = dw _or _dx + ( dw - this . width ) / 2 >> 0 ; y = dh _or _dy + ( dh - this . height ) / 2 >> 0 } var oldGlobalAlpha = context . globalAlpha ; context . globalAlpha = this . transparent ; context . drawImage ( this . image , x , y ) ; context . globalAlpha = oldGlobalAlpha } ; this . StartRenderer = function ( ) { var canvasTransparent = document . createElement ( "canvas" ) ; canvasTransparent . width = this . image . width ; canvasTransparent . height = this . image . height ; var ctx = canvasTransparent . getContext ( "2d" ) ; ctx . globalAlpha = this . transparent ; ctx . drawImage ( this . image ,
0 , 0 ) ; this . imageBase64 = canvasTransparent . toDataURL ( "image/png" ) ; canvasTransparent = null } ; this . EndRenderer = function ( ) { delete this . imageBase64 ; this . imageBase64 = undefined } ; this . DrawOnRenderer = function ( renderer , w , h ) { var wMM = this . width * AscCommon . g _dKoef _pix _to _mm / this . zoom ; var hMM = this . height * AscCommon . g _dKoef _pix _to _mm / this . zoom ; var x = ( w - wMM ) / 2 ; var y = ( h - hMM ) / 2 ; renderer . UseOriginImageUrl = true ; renderer . drawImage ( this . imageBase64 , x , y , wMM , hMM ) ; renderer . UseOriginImageUrl = false } ; this . privateGenerateShape = function ( obj ) { AscFormat . ExecuteNoHistory ( function ( obj ) { var oShape =
new AscFormat . CShape ; var bWord = false ; var oApi = Asc [ "editor" ] || editor ; if ( ! oApi ) return null ; switch ( oApi . getEditorId ( ) ) { case AscCommon . c _oEditorId . Word : { oShape . setWordShape ( true ) ; bWord = true ; break } case AscCommon . c _oEditorId . Presentation : { oShape . setWordShape ( false ) ; oShape . setParent ( oApi . WordControl . m _oLogicDocument . Slides [ oApi . WordControl . m _oLogicDocument . CurPage ] ) ; break } case AscCommon . c _oEditorId . Spreadsheet : { oShape . setWordShape ( false ) ; oShape . setWorksheet ( oApi . wb . getWorksheet ( ) . model ) ; break } } var _oldTrackRevision =
false ; if ( oApi . getEditorId ( ) == AscCommon . c _oEditorId . Word && oApi . WordControl && oApi . WordControl . m _oLogicDocument ) _oldTrackRevision = oApi . WordControl . m _oLogicDocument . TrackRevisions ; if ( _oldTrackRevision ) oApi . WordControl . m _oLogicDocument . TrackRevisions = false ; var bRemoveDocument = false ; if ( oApi . WordControl && ! oApi . WordControl . m _oLogicDocument ) { bRemoveDocument = true ; oApi . WordControl . m _oLogicDocument = new AscCommonWord . CDocument ; oApi . WordControl . m _oDrawingDocument . m _oLogicDocument = oApi . WordControl . m _oLogicDocument } oShape . setBDeleted ( false ) ;
oShape . spPr = new AscFormat . CSpPr ; oShape . spPr . setParent ( oShape ) ; oShape . spPr . setXfrm ( new AscFormat . CXfrm ) ; oShape . spPr . xfrm . setParent ( oShape . spPr ) ; oShape . spPr . xfrm . setOffX ( 0 ) ; oShape . spPr . xfrm . setOffY ( 0 ) ; oShape . spPr . xfrm . setExtX ( obj [ "width" ] ) ; oShape . spPr . xfrm . setExtY ( obj [ "height" ] ) ; oShape . spPr . xfrm . setRot ( AscFormat . normalizeRotate ( obj [ "rotate" ] ? obj [ "rotate" ] * Math . PI / 180 : 0 ) ) ; oShape . spPr . setGeometry ( AscFormat . CreateGeometry ( obj [ "type" ] ) ) ; if ( obj [ "fill" ] && obj [ "fill" ] . length === 3 ) oShape . spPr . setFill ( AscFormat . CreteSolidFillRGB ( obj [ "fill" ] [ 0 ] ,
obj [ "fill" ] [ 1 ] , obj [ "fill" ] [ 2 ] ) ) ; if ( AscFormat . isRealNumber ( obj [ "stroke-width" ] ) || Array . isArray ( obj [ "stroke" ] ) && obj [ "stroke" ] . length === 3 ) { var oUnifill ; if ( Array . isArray ( obj [ "stroke" ] ) && obj [ "stroke" ] . length === 3 ) oUnifill = AscFormat . CreteSolidFillRGB ( obj [ "stroke" ] [ 0 ] , obj [ "stroke" ] [ 1 ] , obj [ "stroke" ] [ 2 ] ) ; else oUnifill = AscFormat . CreteSolidFillRGB ( 0 , 0 , 0 ) ; oShape . spPr . setLn ( AscFormat . CreatePenFromParams ( oUnifill , undefined , undefined , undefined , undefined , AscFormat . isRealNumber ( obj [ "stroke-width" ] ) ? obj [ "stroke-width" ] :
12700 / 36E3 ) ) } if ( bWord ) oShape . createTextBoxContent ( ) ; else oShape . createTextBody ( ) ; var align = obj [ "align" ] ; if ( undefined != align ) oShape . setVerticalAlign ( align ) ; if ( Array . isArray ( obj [ "margins" ] ) && obj [ "margins" ] . length === 4 ) oShape . setPaddings ( { Left : obj [ "margins" ] [ 0 ] , Top : obj [ "margins" ] [ 1 ] , Right : obj [ "margins" ] [ 2 ] , Bottom : obj [ "margins" ] [ 3 ] } ) ; var oContent = oShape . getDocContent ( ) ; var aParagraphsS = obj [ "paragraphs" ] ; if ( aParagraphsS . length > 0 ) oContent . Content . length = 0 ; for ( var i = 0 ; i < aParagraphsS . length ; ++ i ) { var oCurParS =
aParagraphsS [ i ] ; var oNewParagraph = new AscCommonWord . Paragraph ( oContent . DrawingDocument , oContent , ! bWord ) ; if ( AscFormat . isRealNumber ( oCurParS [ "align" ] ) ) oNewParagraph . Set _Align ( oCurParS [ "align" ] ) ; if ( Array . isArray ( oCurParS [ "fill" ] ) && oCurParS [ "fill" ] . length === 3 ) { var oShd = new AscCommonWord . CDocumentShd ; oShd . Value = Asc . c _oAscShdClear ; oShd . Color . r = oCurParS [ "fill" ] [ 0 ] ; oShd . Color . g = oCurParS [ "fill" ] [ 1 ] ; oShd . Color . b = oCurParS [ "fill" ] [ 2 ] ; oNewParagraph . Set _Shd ( oShd , true ) } if ( AscFormat . isRealNumber ( oCurParS [ "linespacing" ] ) ) oNewParagraph . Set _Spacing ( { Line : oCurParS [ "linespacing" ] ,
Before : 0 , After : 0 , LineRule : Asc . linerule _Auto } , true ) ; var aRunsS = oCurParS [ "runs" ] ; for ( var j = 0 ; j < aRunsS . length ; ++ j ) { var oRunS = aRunsS [ j ] ; var oRun = new AscCommonWord . ParaRun ( oNewParagraph , false ) ; if ( Array . isArray ( oRunS [ "fill" ] ) && oRunS [ "fill" ] . length === 3 ) oRun . Set _Unifill ( AscFormat . CreteSolidFillRGB ( oRunS [ "fill" ] [ 0 ] , oRunS [ "fill" ] [ 1 ] , oRunS [ "fill" ] [ 2 ] ) ) ; var fontFamilyName = oRunS [ "font-family" ] ? oRunS [ "font-family" ] : "Arial" ; var fontSize = oRunS [ "font-size" ] != null ? oRunS [ "font-size" ] : 50 ; oRun . Set _RFonts _Ascii ( { Name : fontFamilyName ,
Index : - 1 } ) ; oRun . Set _RFonts _CS ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _RFonts _EastAsia ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _RFonts _HAnsi ( { Name : fontFamilyName , Index : - 1 } ) ; oRun . Set _FontSize ( fontSize ) ; oRun . Set _Bold ( oRunS [ "bold" ] === true ) ; oRun . Set _Italic ( oRunS [ "italic" ] === true ) ; oRun . Set _Strikeout ( oRunS [ "strikeout" ] === true ) ; oRun . Set _Underline ( oRunS [ "underline" ] === true ) ; var sCustomText = oRunS [ "text" ] ; if ( sCustomText === "<%br%>" ) oRun . AddToContent ( 0 , new AscCommonWord . ParaNewLine ( AscCommonWord . break _Line ) ,
false ) ; else oRun . AddText ( sCustomText ) ; oNewParagraph . Internal _Content _Add ( j , oRun , false ) } oContent . Internal _Content _Add ( oContent . Content . length , oNewParagraph ) } var bLoad = AscCommon . g _oIdCounter . m _bLoad ; AscCommon . g _oIdCounter . Set _Load ( false ) ; oShape . recalculate ( ) ; if ( oShape . bWordShape ) oShape . recalculateText ( ) ; AscCommon . g _oIdCounter . Set _Load ( bLoad ) ; var oldShowParaMarks ; if ( window . editor ) { oldShowParaMarks = oApi . ShowParaMarks ; oApi . ShowParaMarks = false } AscCommon . IsShapeToImageConverter = true ; var _bounds _cheker = new AscFormat . CSlideBoundsChecker ;
var w _mm = 210 ; var h _mm = 297 ; var w _px = AscCommon . AscBrowser . convertToRetinaValue ( w _mm * AscCommon . g _dKoef _mm _to _pix * this . zoom , true ) ; var h _px = AscCommon . AscBrowser . convertToRetinaValue ( h _mm * AscCommon . g _dKoef _mm _to _pix * this . zoom , true ) ; _bounds _cheker . init ( w _px , h _px , w _mm , h _mm ) ; _bounds _cheker . transform ( 1 , 0 , 0 , 1 , 0 , 0 ) ; _bounds _cheker . AutoCheckLineWidth = true ; _bounds _cheker . CheckLineWidth ( oShape ) ; oShape . draw ( _bounds _cheker , 0 ) ; _bounds _cheker . CorrectBounds2 ( ) ; var _need _pix _width = _bounds _cheker . Bounds . max _x - _bounds _cheker . Bounds . min _x +
1 ; var _need _pix _height = _bounds _cheker . Bounds . max _y - _bounds _cheker . Bounds . min _y + 1 ; if ( _need _pix _width <= 0 || _need _pix _height <= 0 ) return ; if ( ! this . image ) this . image = document . createElement ( "canvas" ) ; this . image . width = _need _pix _width ; this . image . height = _need _pix _height ; this . width = _need _pix _width ; this . height = _need _pix _height ; var _ctx = this . image . getContext ( "2d" ) ; var g = new AscCommon . CGraphics ; g . init ( _ctx , w _px , h _px , w _mm , h _mm ) ; g . m _oFontManager = AscCommon . g _fontManager ; g . m _oCoordTransform . tx = - _bounds _cheker . Bounds . min _x ;
g . m _oCoordTransform . ty = - _bounds _cheker . Bounds . min _y ; g . transform ( 1 , 0 , 0 , 1 , 0 , 0 ) ; oShape . draw ( g , 0 ) ; AscCommon . IsShapeToImageConverter = false ; if ( bRemoveDocument ) { oApi . WordControl . m _oLogicDocument = null ; oApi . WordControl . m _oDrawingDocument . m _oLogicDocument = null } if ( window . editor ) oApi . ShowParaMarks = oldShowParaMarks ; if ( _oldTrackRevision ) oApi . WordControl . m _oLogicDocument . TrackRevisions = true } , this , [ obj ] ) } ; this . onReady = function ( ) { this . isFontsLoaded = true ; var oApi = this . api ; switch ( oApi . editorId ) { case AscCommon . c _oEditorId . Word : { if ( oApi . WordControl ) { if ( oApi . watermarkDraw ) { oApi . watermarkDraw . zoom =
oApi . WordControl . m _nZoomValue / 100 ; oApi . watermarkDraw . Generate ( ) } oApi . WordControl . OnRePaintAttack ( ) } break } case AscCommon . c _oEditorId . Presentation : { if ( oApi . WordControl ) { if ( oApi . watermarkDraw ) { oApi . watermarkDraw . zoom = oApi . WordControl . m _nZoomValue / 100 ; oApi . watermarkDraw . Generate ( ) } oApi . WordControl . OnRePaintAttack ( ) } break } case AscCommon . c _oEditorId . Spreadsheet : { var ws = oApi . wb && oApi . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender ) ws . objectRender . OnUpdateOverlay ( ) ; break } } } ; this . checkOnReady = function ( ) { this . CheckParams ( ) ;
var fonts = [ ] ; var pars = this . contentObjects [ "paragraphs" ] ; var i , j ; for ( i = 0 ; i < pars . length ; i ++ ) { var runs = pars [ i ] [ "runs" ] ; for ( j = 0 ; j < runs . length ; j ++ ) { if ( undefined === runs [ j ] [ "font-family" ] ) runs [ j ] [ "font-family" ] = "Arial" ; fonts . push ( runs [ j ] [ "font-family" ] ) } } for ( i = 0 ; i < fonts . length ; i ++ ) fonts [ i ] = new AscFonts . CFont ( AscFonts . g _fontApplication . GetFontInfoName ( fonts [ i ] ) , 0 , "" , 0 , null ) ; if ( false === AscCommon . g _font _loader . CheckFontsNeedLoading ( fonts ) ) { this . onReady ( ) ; return false } this . api . asyncMethodCallback = function ( ) { var oApi =
Asc [ "editor" ] || editor ; oApi . watermarkDraw . onReady ( ) } ; AscCommon . g _font _loader . LoadDocumentFonts2 ( fonts ) } } function CPluginVariation ( ) { this . description = "" ; this . url = "" ; this . help = "" ; this . baseUrl = "" ; this . index = 0 ; this . icons = [ "1x" , "2x" ] ; this . isViewer = false ; this . EditorsSupport = [ "word" , "cell" , "slide" ] ; this . isSystem = false ; this . isVisual = false ; this . isModal = false ; this . isInsideMode = false ; this . isCustomWindow = false ; this . initDataType = EPluginDataType . none ; this . initData = "" ; this . isUpdateOleOnResize = false ; this . buttons =
[ { "text" : "Ok" , "primary" : true } , { "text" : "Cancel" , "primary" : false } ] ; this . size = undefined ; this . initOnSelectionChanged = undefined ; this . events = [ ] ; this . eventsMap = { } } CPluginVariation . prototype [ "get_Description" ] = function ( ) { return this . description } ; CPluginVariation . prototype [ "set_Description" ] = function ( value ) { this . description = value } ; CPluginVariation . prototype [ "get_Url" ] = function ( ) { return this . url } ; CPluginVariation . prototype [ "set_Url" ] = function ( value ) { this . url = value } ; CPluginVariation . prototype [ "get_Help" ] = function ( ) { return this . help } ;
CPluginVariation . prototype [ "set_Help" ] = function ( value ) { this . help = value } ; CPluginVariation . prototype [ "get_Icons" ] = function ( ) { return this . icons } ; CPluginVariation . prototype [ "set_Icons" ] = function ( value ) { this . icons = value } ; CPluginVariation . prototype [ "get_System" ] = function ( ) { return this . isSystem } ; CPluginVariation . prototype [ "set_System" ] = function ( value ) { this . isSystem = value } ; CPluginVariation . prototype [ "get_Viewer" ] = function ( ) { return this . isViewer } ; CPluginVariation . prototype [ "set_Viewer" ] = function ( value ) { this . isViewer =
value } ; CPluginVariation . prototype [ "get_EditorsSupport" ] = function ( ) { return this . EditorsSupport } ; CPluginVariation . prototype [ "set_EditorsSupport" ] = function ( value ) { this . EditorsSupport = value } ; CPluginVariation . prototype [ "get_Visual" ] = function ( ) { return this . isVisual } ; CPluginVariation . prototype [ "set_Visual" ] = function ( value ) { this . isVisual = value } ; CPluginVariation . prototype [ "get_Modal" ] = function ( ) { return this . isModal } ; CPluginVariation . prototype [ "set_Modal" ] = function ( value ) { this . isModal = value } ; CPluginVariation . prototype [ "get_InsideMode" ] =
function ( ) { return this . isInsideMode } ; CPluginVariation . prototype [ "set_InsideMode" ] = function ( value ) { this . isInsideMode = value } ; CPluginVariation . prototype [ "get_CustomWindow" ] = function ( ) { return this . isCustomWindow } ; CPluginVariation . prototype [ "set_CustomWindow" ] = function ( value ) { this . isCustomWindow = value } ; CPluginVariation . prototype [ "get_InitDataType" ] = function ( ) { return this . initDataType } ; CPluginVariation . prototype [ "set_InitDataType" ] = function ( value ) { this . initDataType = value } ; CPluginVariation . prototype [ "get_InitData" ] =
function ( ) { return this . initData } ; CPluginVariation . prototype [ "set_InitData" ] = function ( value ) { this . initData = value } ; CPluginVariation . prototype [ "get_UpdateOleOnResize" ] = function ( ) { return this . isUpdateOleOnResize } ; CPluginVariation . prototype [ "set_UpdateOleOnResize" ] = function ( value ) { this . isUpdateOleOnResize = value } ; CPluginVariation . prototype [ "get_Buttons" ] = function ( ) { return this . buttons } ; CPluginVariation . prototype [ "set_Buttons" ] = function ( value ) { this . buttons = value } ; CPluginVariation . prototype [ "get_Size" ] = function ( ) { return this . size } ;
CPluginVariation . prototype [ "set_Size" ] = function ( value ) { this . size = value } ; CPluginVariation . prototype [ "get_InitOnSelectionChanged" ] = function ( ) { return this . initOnSelectionChanged } ; CPluginVariation . prototype [ "set_InitOnSelectionChanged" ] = function ( value ) { this . initOnSelectionChanged = value } ; CPluginVariation . prototype [ "get_Events" ] = function ( ) { return this . events } ; CPluginVariation . prototype [ "set_Events" ] = function ( value ) { if ( ! value ) return ; this . events = value . slice ( 0 , value . length ) ; this . eventsMap = { } ; for ( var i = 0 ; i <
this . events . length ; i ++ ) this . eventsMap [ this . events [ i ] ] = true } ; CPluginVariation . prototype [ "serialize" ] = function ( ) { var _object = { } ; _object [ "description" ] = this . description ; _object [ "url" ] = this . url ; _object [ "help" ] = this . help ; _object [ "index" ] = this . index ; _object [ "icons" ] = this . icons ; _object [ "isViewer" ] = this . isViewer ; _object [ "EditorsSupport" ] = this . EditorsSupport ; _object [ "isSystem" ] = this . isSystem ; _object [ "isVisual" ] = this . isVisual ; _object [ "isModal" ] = this . isModal ; _object [ "isInsideMode" ] = this . isInsideMode ; _object [ "isCustomWindow" ] =
this . isCustomWindow ; _object [ "initDataType" ] = this . initDataType ; _object [ "initData" ] = this . initData ; _object [ "isUpdateOleOnResize" ] = this . isUpdateOleOnResize ; _object [ "buttons" ] = this . buttons ; _object [ "size" ] = this . size ; _object [ "initOnSelectionChanged" ] = this . initOnSelectionChanged ; return _object } ; CPluginVariation . prototype [ "deserialize" ] = function ( _object ) { this . description = _object [ "description" ] != null ? _object [ "description" ] : this . description ; this . url = _object [ "url" ] != null ? _object [ "url" ] : this . url ; this . help = _object [ "help" ] !=
null ? _object [ "help" ] : this . help ; this . index = _object [ "index" ] != null ? _object [ "index" ] : this . index ; this . icons = _object [ "icons" ] != null ? _object [ "icons" ] : this . icons ; this . isViewer = _object [ "isViewer" ] != null ? _object [ "isViewer" ] : this . isViewer ; this . EditorsSupport = _object [ "EditorsSupport" ] != null ? _object [ "EditorsSupport" ] : this . EditorsSupport ; this . isVisual = _object [ "isVisual" ] != null ? _object [ "isVisual" ] : this . isVisual ; this . isModal = _object [ "isModal" ] != null ? _object [ "isModal" ] : this . isModal ; this . isInsideMode = _object [ "isInsideMode" ] !=
null ? _object [ "isInsideMode" ] : this . isInsideMode ; this . isCustomWindow = _object [ "isCustomWindow" ] != null ? _object [ "isCustomWindow" ] : this . isCustomWindow ; this . initDataType = _object [ "initDataType" ] != null ? _object [ "initDataType" ] : this . initDataType ; this . initData = _object [ "initData" ] != null ? _object [ "initData" ] : this . initData ; this . isUpdateOleOnResize = _object [ "isUpdateOleOnResize" ] != null ? _object [ "isUpdateOleOnResize" ] : this . isUpdateOleOnResize ; this . buttons = _object [ "buttons" ] != null ? _object [ "buttons" ] : this . buttons ; this . size =
_object [ "size" ] != null ? _object [ "size" ] : this . size ; this . initOnSelectionChanged = _object [ "initOnSelectionChanged" ] != null ? _object [ "initOnSelectionChanged" ] : this . initOnSelectionChanged } ; function CPlugin ( ) { this . name = "" ; this . guid = "" ; this . baseUrl = "" ; this . variations = [ ] } CPlugin . prototype [ "get_Name" ] = function ( ) { return this . name } ; CPlugin . prototype [ "set_Name" ] = function ( value ) { this . name = value } ; CPlugin . prototype [ "get_Guid" ] = function ( ) { return this . guid } ; CPlugin . prototype [ "set_Guid" ] = function ( value ) { this . guid = value } ;
CPlugin . prototype [ "get_BaseUrl" ] = function ( ) { return this . baseUrl } ; CPlugin . prototype [ "set_BaseUrl" ] = function ( value ) { this . baseUrl = value } ; CPlugin . prototype [ "get_Variations" ] = function ( ) { return this . variations } ; CPlugin . prototype [ "set_Variations" ] = function ( value ) { this . variations = value } ; CPlugin . prototype [ "serialize" ] = function ( ) { var _object = { } ; _object [ "name" ] = this . name ; _object [ "guid" ] = this . guid ; _object [ "baseUrl" ] = this . baseUrl ; _object [ "variations" ] = [ ] ; for ( var i = 0 ; i < this . variations . length ; i ++ ) _object [ "variations" ] . push ( this . variations [ i ] . serialize ( ) ) ;
return _object } ; CPlugin . prototype [ "deserialize" ] = function ( _object ) { this . name = _object [ "name" ] != null ? _object [ "name" ] : this . name ; this . guid = _object [ "guid" ] != null ? _object [ "guid" ] : this . guid ; this . baseUrl = _object [ "baseUrl" ] != null ? _object [ "baseUrl" ] : this . baseUrl ; this . variations = [ ] ; for ( var i = 0 ; i < _object [ "variations" ] . length ; i ++ ) { var _variation = new CPluginVariation ; _variation [ "deserialize" ] ( _object [ "variations" ] [ i ] ) ; this . variations . push ( _variation ) } } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "Asc" ] =
window [ "Asc" ] || { } ; window [ "Asc" ] [ "c_oAscArrUserColors" ] = window [ "Asc" ] . c _oAscArrUserColors = c _oAscArrUserColors ; window [ "AscCommon" ] . CreateAscColorCustom = CreateAscColorCustom ; window [ "AscCommon" ] . CreateAscColor = CreateAscColor ; window [ "AscCommon" ] . CreateGUID = CreateGUID ; window [ "AscCommon" ] . CreateUUID = CreateUUID ; window [ "AscCommon" ] . CreateUInt32 = CreateUInt32 ; window [ "AscCommon" ] . CreateDurableId = CreateDurableId ; window [ "AscCommon" ] . FixDurableId = FixDurableId ; window [ "AscCommon" ] . ExtendPrototype = ExtendPrototype ;
window [ "Asc" ] [ "c_oLicenseResult" ] = window [ "Asc" ] . c _oLicenseResult = c _oLicenseResult ; prot = c _oLicenseResult ; prot [ "Error" ] = prot . Error ; prot [ "Expired" ] = prot . Expired ; prot [ "Success" ] = prot . Success ; prot [ "UnknownUser" ] = prot . UnknownUser ; prot [ "Connections" ] = prot . Connections ; prot [ "ExpiredTrial" ] = prot . ExpiredTrial ; prot [ "SuccessLimit" ] = prot . SuccessLimit ; prot [ "UsersCount" ] = prot . UsersCount ; prot [ "ConnectionsOS" ] = prot . ConnectionsOS ; prot [ "UsersCountOS" ] = prot . UsersCountOS ; prot [ "ExpiredLimited" ] = prot . ExpiredLimited ; window [ "Asc" ] [ "c_oRights" ] =
window [ "Asc" ] . c _oRights = c _oRights ; prot = c _oRights ; prot [ "None" ] = prot . None ; prot [ "Edit" ] = prot . Edit ; prot [ "Review" ] = prot . Review ; prot [ "Comment" ] = prot . Comment ; prot [ "View" ] = prot . View ; window [ "Asc" ] [ "c_oLicenseMode" ] = window [ "Asc" ] . c _oLicenseMode = c _oLicenseMode ; prot = c _oLicenseMode ; prot [ "None" ] = prot . None ; prot [ "Trial" ] = prot . Trial ; prot [ "Developer" ] = prot . Developer ; prot [ "Limited" ] = prot . Limited ; window [ "Asc" ] [ "EPluginDataType" ] = window [ "Asc" ] . EPluginDataType = EPluginDataType ; prot = EPluginDataType ; prot [ "none" ] = prot . none ;
prot [ "text" ] = prot . text ; prot [ "ole" ] = prot . ole ; prot [ "html" ] = prot . html ; window [ "AscCommon" ] [ "asc_CSignatureLine" ] = window [ "AscCommon" ] . asc _CSignatureLine = asc _CSignatureLine ; prot = asc _CSignatureLine . prototype ; prot [ "asc_getId" ] = prot . asc _getId ; prot [ "asc_setId" ] = prot . asc _setId ; prot [ "asc_getGuid" ] = prot . asc _getGuid ; prot [ "asc_setGuid" ] = prot . asc _setGuid ; prot [ "asc_getSigner1" ] = prot . asc _getSigner1 ; prot [ "asc_setSigner1" ] = prot . asc _setSigner1 ; prot [ "asc_getSigner2" ] = prot . asc _getSigner2 ; prot [ "asc_setSigner2" ] = prot . asc _setSigner2 ;
prot [ "asc_getEmail" ] = prot . asc _getEmail ; prot [ "asc_setEmail" ] = prot . asc _setEmail ; prot [ "asc_getInstructions" ] = prot . asc _getInstructions ; prot [ "asc_setInstructions" ] = prot . asc _setInstructions ; prot [ "asc_getShowDate" ] = prot . asc _getShowDate ; prot [ "asc_setShowDate" ] = prot . asc _setShowDate ; prot [ "asc_getValid" ] = prot . asc _getValid ; prot [ "asc_setValid" ] = prot . asc _setValid ; prot [ "asc_getDate" ] = prot . asc _getDate ; prot [ "asc_setDate" ] = prot . asc _setDate ; prot [ "asc_getVisible" ] = prot . asc _getVisible ; prot [ "asc_setVisible" ] = prot . asc _setVisible ;
prot [ "asc_getRequested" ] = prot . asc _getRequested ; prot [ "asc_setRequested" ] = prot . asc _setRequested ; window [ "AscCommon" ] . asc _CAscEditorPermissions = asc _CAscEditorPermissions ; prot = asc _CAscEditorPermissions . prototype ; prot [ "asc_getLicenseType" ] = prot . asc _getLicenseType ; prot [ "asc_getCanCoAuthoring" ] = prot . asc _getCanCoAuthoring ; prot [ "asc_getCanReaderMode" ] = prot . asc _getCanReaderMode ; prot [ "asc_getCanBranding" ] = prot . asc _getCanBranding ; prot [ "asc_getCustomization" ] = prot . asc _getCustomization ; prot [ "asc_getIsAutosaveEnable" ] =
prot . asc _getIsAutosaveEnable ; prot [ "asc_getAutosaveMinInterval" ] = prot . asc _getAutosaveMinInterval ; prot [ "asc_getIsAnalyticsEnable" ] = prot . asc _getIsAnalyticsEnable ; prot [ "asc_getIsLight" ] = prot . asc _getIsLight ; prot [ "asc_getLicenseMode" ] = prot . asc _getLicenseMode ; prot [ "asc_getRights" ] = prot . asc _getRights ; prot [ "asc_getBuildVersion" ] = prot . asc _getBuildVersion ; prot [ "asc_getBuildNumber" ] = prot . asc _getBuildNumber ; prot [ "asc_getIsBeta" ] = prot . asc _getIsBeta ; window [ "AscCommon" ] . asc _ValAxisSettings = asc _ValAxisSettings ; prot =
asc _ValAxisSettings . prototype ; prot [ "putMinValRule" ] = prot . putMinValRule ; prot [ "putMinVal" ] = prot . putMinVal ; prot [ "putMaxValRule" ] = prot . putMaxValRule ; prot [ "putMaxVal" ] = prot . putMaxVal ; prot [ "putInvertValOrder" ] = prot . putInvertValOrder ; prot [ "putLogScale" ] = prot . putLogScale ; prot [ "putLogBase" ] = prot . putLogBase ; prot [ "putUnits" ] = prot . putUnits ; prot [ "putShowUnitsOnChart" ] = prot . putShowUnitsOnChart ; prot [ "putMajorTickMark" ] = prot . putMajorTickMark ; prot [ "putMinorTickMark" ] = prot . putMinorTickMark ; prot [ "putTickLabelsPos" ] =
prot . putTickLabelsPos ; prot [ "putCrossesRule" ] = prot . putCrossesRule ; prot [ "putCrosses" ] = prot . putCrosses ; prot [ "putDispUnitsRule" ] = prot . putDispUnitsRule ; prot [ "getDispUnitsRule" ] = prot . getDispUnitsRule ; prot [ "putAxisType" ] = prot . putAxisType ; prot [ "getAxisType" ] = prot . getAxisType ; prot [ "getMinValRule" ] = prot . getMinValRule ; prot [ "getMinVal" ] = prot . getMinVal ; prot [ "getMaxValRule" ] = prot . getMaxValRule ; prot [ "getMaxVal" ] = prot . getMaxVal ; prot [ "getInvertValOrder" ] = prot . getInvertValOrder ; prot [ "getLogScale" ] = prot . getLogScale ;
prot [ "getLogBase" ] = prot . getLogBase ; prot [ "getUnits" ] = prot . getUnits ; prot [ "getShowUnitsOnChart" ] = prot . getShowUnitsOnChart ; prot [ "getMajorTickMark" ] = prot . getMajorTickMark ; prot [ "getMinorTickMark" ] = prot . getMinorTickMark ; prot [ "getTickLabelsPos" ] = prot . getTickLabelsPos ; prot [ "getCrossesRule" ] = prot . getCrossesRule ; prot [ "getCrosses" ] = prot . getCrosses ; prot [ "setDefault" ] = prot . setDefault ; window [ "AscCommon" ] . asc _CatAxisSettings = asc _CatAxisSettings ; prot = asc _CatAxisSettings . prototype ; prot [ "putIntervalBetweenTick" ] = prot . putIntervalBetweenTick ;
prot [ "putIntervalBetweenLabelsRule" ] = prot . putIntervalBetweenLabelsRule ; prot [ "putIntervalBetweenLabels" ] = prot . putIntervalBetweenLabels ; prot [ "putInvertCatOrder" ] = prot . putInvertCatOrder ; prot [ "putLabelsAxisDistance" ] = prot . putLabelsAxisDistance ; prot [ "putMajorTickMark" ] = prot . putMajorTickMark ; prot [ "putMinorTickMark" ] = prot . putMinorTickMark ; prot [ "putTickLabelsPos" ] = prot . putTickLabelsPos ; prot [ "putCrossesRule" ] = prot . putCrossesRule ; prot [ "putCrosses" ] = prot . putCrosses ; prot [ "putAxisType" ] = prot . putAxisType ; prot [ "putLabelsPosition" ] =
prot . putLabelsPosition ; prot [ "putCrossMaxVal" ] = prot . putCrossMaxVal ; prot [ "putCrossMinVal" ] = prot . putCrossMinVal ; prot [ "getIntervalBetweenTick" ] = prot . getIntervalBetweenTick ; prot [ "getIntervalBetweenLabelsRule" ] = prot . getIntervalBetweenLabelsRule ; prot [ "getIntervalBetweenLabels" ] = prot . getIntervalBetweenLabels ; prot [ "getInvertCatOrder" ] = prot . getInvertCatOrder ; prot [ "getLabelsAxisDistance" ] = prot . getLabelsAxisDistance ; prot [ "getMajorTickMark" ] = prot . getMajorTickMark ; prot [ "getMinorTickMark" ] = prot . getMinorTickMark ;
prot [ "getTickLabelsPos" ] = prot . getTickLabelsPos ; prot [ "getCrossesRule" ] = prot . getCrossesRule ; prot [ "getCrosses" ] = prot . getCrosses ; prot [ "getAxisType" ] = prot . getAxisType ; prot [ "getLabelsPosition" ] = prot . getLabelsPosition ; prot [ "getCrossMaxVal" ] = prot . getCrossMaxVal ; prot [ "getCrossMinVal" ] = prot . getCrossMinVal ; prot [ "setDefault" ] = prot . setDefault ; window [ "Asc" ] [ "asc_ChartSettings" ] = window [ "Asc" ] . asc _ChartSettings = asc _ChartSettings ; prot = asc _ChartSettings . prototype ; prot [ "putStyle" ] = prot . putStyle ; prot [ "putTitle" ] = prot . putTitle ;
prot [ "putRowCols" ] = prot . putRowCols ; prot [ "putHorAxisLabel" ] = prot . putHorAxisLabel ; prot [ "putVertAxisLabel" ] = prot . putVertAxisLabel ; prot [ "putLegendPos" ] = prot . putLegendPos ; prot [ "putDataLabelsPos" ] = prot . putDataLabelsPos ; prot [ "putCatAx" ] = prot . putCatAx ; prot [ "putValAx" ] = prot . putValAx ; prot [ "getStyle" ] = prot . getStyle ; prot [ "getTitle" ] = prot . getTitle ; prot [ "getRowCols" ] = prot . getRowCols ; prot [ "getHorAxisLabel" ] = prot . getHorAxisLabel ; prot [ "getVertAxisLabel" ] = prot . getVertAxisLabel ; prot [ "getLegendPos" ] = prot . getLegendPos ;
prot [ "getDataLabelsPos" ] = prot . getDataLabelsPos ; prot [ "getHorAx" ] = prot . getHorAx ; prot [ "getVertAx" ] = prot . getVertAx ; prot [ "getHorGridLines" ] = prot . getHorGridLines ; prot [ "putHorGridLines" ] = prot . putHorGridLines ; prot [ "getVertGridLines" ] = prot . getVertGridLines ; prot [ "putVertGridLines" ] = prot . putVertGridLines ; prot [ "getType" ] = prot . getType ; prot [ "putType" ] = prot . putType ; prot [ "putShowSerName" ] = prot . putShowSerName ; prot [ "getShowSerName" ] = prot . getShowSerName ; prot [ "putShowCatName" ] = prot . putShowCatName ; prot [ "getShowCatName" ] =
prot . getShowCatName ; prot [ "putShowVal" ] = prot . putShowVal ; prot [ "getShowVal" ] = prot . getShowVal ; prot [ "putSeparator" ] = prot . putSeparator ; prot [ "getSeparator" ] = prot . getSeparator ; prot [ "putHorAxisProps" ] = prot . putHorAxisProps ; prot [ "getHorAxisProps" ] = prot . getHorAxisProps ; prot [ "putVertAxisProps" ] = prot . putVertAxisProps ; prot [ "getVertAxisProps" ] = prot . getVertAxisProps ; prot [ "putRange" ] = prot . putRange ; prot [ "getRange" ] = prot . getRange ; prot [ "putRanges" ] = prot . putRanges ; prot [ "getRanges" ] = prot . getRanges ; prot [ "putInColumns" ] =
prot . putInColumns ; prot [ "getInColumns" ] = prot . getInColumns ; prot [ "putShowMarker" ] = prot . putShowMarker ; prot [ "getShowMarker" ] = prot . getShowMarker ; prot [ "putLine" ] = prot . putLine ; prot [ "getLine" ] = prot . getLine ; prot [ "putSmooth" ] = prot . putSmooth ; prot [ "getSmooth" ] = prot . getSmooth ; prot [ "changeType" ] = prot . changeType ; prot [ "putShowHorAxis" ] = prot . putShowHorAxis ; prot [ "getShowHorAxis" ] = prot . getShowHorAxis ; prot [ "putShowVerAxis" ] = prot . putShowVerAxis ; prot [ "getShowVerAxis" ] = prot . getShowVerAxis ; prot [ "getSeries" ] = prot . getSeries ;
prot [ "getCatValues" ] = prot . getCatValues ; prot [ "switchRowCol" ] = prot . switchRowCol ; prot [ "addSeries" ] = prot . addSeries ; prot [ "addScatterSeries" ] = prot . addScatterSeries ; prot [ "getCatFormula" ] = prot . getCatFormula ; prot [ "setCatFormula" ] = prot . setCatFormula ; prot [ "isValidCatFormula" ] = prot . isValidCatFormula ; prot [ "setRange" ] = prot . setRange ; prot [ "isValidRange" ] = prot . isValidRange ; prot [ "startEdit" ] = prot . startEdit ; prot [ "endEdit" ] = prot . endEdit ; prot [ "cancelEdit" ] = prot . cancelEdit ; prot [ "startEditData" ] = prot . startEditData ; prot [ "cancelEditData" ] =
prot . cancelEditData ; prot [ "endEditData" ] = prot . endEditData ; window [ "AscCommon" ] . asc _CRect = asc _CRect ; prot = asc _CRect . prototype ; prot [ "asc_getX" ] = prot . asc _getX ; prot [ "asc_getY" ] = prot . asc _getY ; prot [ "asc_getWidth" ] = prot . asc _getWidth ; prot [ "asc_getHeight" ] = prot . asc _getHeight ; window [ "AscCommon" ] . CColor = CColor ; prot = CColor . prototype ; prot [ "getR" ] = prot . getR ; prot [ "get_r" ] = prot . get _r ; prot [ "put_r" ] = prot . put _r ; prot [ "getG" ] = prot . getG ; prot [ "get_g" ] = prot . get _g ; prot [ "put_g" ] = prot . put _g ; prot [ "getB" ] = prot . getB ; prot [ "get_b" ] =
prot . get _b ; prot [ "put_b" ] = prot . put _b ; prot [ "getA" ] = prot . getA ; prot [ "get_hex" ] = prot . get _hex ; window [ "Asc" ] [ "asc_CColor" ] = window [ "Asc" ] . asc _CColor = asc _CColor ; prot = asc _CColor . prototype ; prot [ "get_r" ] = prot [ "asc_getR" ] = prot . asc _getR ; prot [ "put_r" ] = prot [ "asc_putR" ] = prot . asc _putR ; prot [ "get_g" ] = prot [ "asc_getG" ] = prot . asc _getG ; prot [ "put_g" ] = prot [ "asc_putG" ] = prot . asc _putG ; prot [ "get_b" ] = prot [ "asc_getB" ] = prot . asc _getB ; prot [ "put_b" ] = prot [ "asc_putB" ] = prot . asc _putB ; prot [ "get_a" ] = prot [ "asc_getA" ] = prot . asc _getA ; prot [ "put_a" ] =
prot [ "asc_putA" ] = prot . asc _putA ; prot [ "get_auto" ] = prot [ "asc_getAuto" ] = prot . asc _getAuto ; prot [ "put_auto" ] = prot [ "asc_putAuto" ] = prot . asc _putAuto ; prot [ "get_type" ] = prot [ "asc_getType" ] = prot . asc _getType ; prot [ "put_type" ] = prot [ "asc_putType" ] = prot . asc _putType ; prot [ "get_value" ] = prot [ "asc_getValue" ] = prot . asc _getValue ; prot [ "put_value" ] = prot [ "asc_putValue" ] = prot . asc _putValue ; prot [ "get_hex" ] = prot [ "asc_getHex" ] = prot . asc _getHex ; prot [ "get_color" ] = prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "get_hex" ] = prot [ "asc_getHex" ] =
prot . asc _getHex ; window [ "Asc" ] [ "asc_CTextBorder" ] = window [ "Asc" ] . asc _CTextBorder = asc _CTextBorder ; prot = asc _CTextBorder . prototype ; prot [ "get_Color" ] = prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "put_Color" ] = prot [ "asc_putColor" ] = prot . asc _putColor ; prot [ "get_Size" ] = prot [ "asc_getSize" ] = prot . asc _getSize ; prot [ "put_Size" ] = prot [ "asc_putSize" ] = prot . asc _putSize ; prot [ "get_Value" ] = prot [ "asc_getValue" ] = prot . asc _getValue ; prot [ "put_Value" ] = prot [ "asc_putValue" ] = prot . asc _putValue ; prot [ "get_Space" ] = prot [ "asc_getSpace" ] =
prot . asc _getSpace ; prot [ "put_Space" ] = prot [ "asc_putSpace" ] = prot . asc _putSpace ; prot [ "get_ForSelectedCells" ] = prot [ "asc_getForSelectedCells" ] = prot . asc _getForSelectedCells ; prot [ "put_ForSelectedCells" ] = prot [ "asc_putForSelectedCells" ] = prot . asc _putForSelectedCells ; window [ "Asc" ] [ "asc_CParagraphBorders" ] = window [ "Asc" ] . asc _CParagraphBorders = asc _CParagraphBorders ; prot = asc _CParagraphBorders . prototype ; prot [ "get_Left" ] = prot [ "asc_getLeft" ] = prot . asc _getLeft ; prot [ "put_Left" ] = prot [ "asc_putLeft" ] = prot . asc _putLeft ; prot [ "get_Top" ] =
prot [ "asc_getTop" ] = prot . asc _getTop ; prot [ "put_Top" ] = prot [ "asc_putTop" ] = prot . asc _putTop ; prot [ "get_Right" ] = prot [ "asc_getRight" ] = prot . asc _getRight ; prot [ "put_Right" ] = prot [ "asc_putRight" ] = prot . asc _putRight ; prot [ "get_Bottom" ] = prot [ "asc_getBottom" ] = prot . asc _getBottom ; prot [ "put_Bottom" ] = prot [ "asc_putBottom" ] = prot . asc _putBottom ; prot [ "get_Between" ] = prot [ "asc_getBetween" ] = prot . asc _getBetween ; prot [ "put_Between" ] = prot [ "asc_putBetween" ] = prot . asc _putBetween ; window [ "AscCommon" ] . asc _CListType = asc _CListType ; prot = asc _CListType . prototype ;
prot [ "get_ListType" ] = prot [ "asc_getListType" ] = prot . asc _getListType ; prot [ "get_ListSubType" ] = prot [ "asc_getListSubType" ] = prot . asc _getListSubType ; window [ "AscCommon" ] . asc _CTextFontFamily = asc _CTextFontFamily ; window [ "AscCommon" ] [ "asc_CTextFontFamily" ] = asc _CTextFontFamily ; prot = asc _CTextFontFamily . prototype ; prot [ "get_Name" ] = prot [ "asc_getName" ] = prot . get _Name = prot . asc _getName ; prot [ "get_Index" ] = prot [ "asc_getIndex" ] = prot . get _Index = prot . asc _getIndex ; prot [ "put_Name" ] = prot [ "asc_putName" ] = prot . put _Name = prot . asc _putName ;
prot [ "put_Index" ] = prot [ "asc_putIndex" ] = prot . put _Index = prot . asc _putIndex ; window [ "Asc" ] [ "asc_CParagraphTab" ] = window [ "Asc" ] . asc _CParagraphTab = asc _CParagraphTab ; prot = asc _CParagraphTab . prototype ; prot [ "get_Value" ] = prot [ "asc_getValue" ] = prot . asc _getValue ; prot [ "put_Value" ] = prot [ "asc_putValue" ] = prot . asc _putValue ; prot [ "get_Pos" ] = prot [ "asc_getPos" ] = prot . asc _getPos ; prot [ "put_Pos" ] = prot [ "asc_putPos" ] = prot . asc _putPos ; prot [ "get_Leader" ] = prot [ "asc_getLeader" ] = prot . asc _getLeader ; prot [ "put_Leader" ] = prot [ "asc_putLeader" ] =
prot . asc _putLeader ; window [ "Asc" ] [ "asc_CParagraphTabs" ] = window [ "Asc" ] . asc _CParagraphTabs = asc _CParagraphTabs ; prot = asc _CParagraphTabs . prototype ; prot [ "get_Count" ] = prot [ "asc_getCount" ] = prot . asc _getCount ; prot [ "get_Tab" ] = prot [ "asc_getTab" ] = prot . asc _getTab ; prot [ "add_Tab" ] = prot [ "asc_addTab" ] = prot . asc _addTab ; prot [ "clear" ] = prot . clear = prot [ "asc_clear" ] = prot . asc _clear ; window [ "Asc" ] [ "asc_CParagraphShd" ] = window [ "Asc" ] . asc _CParagraphShd = asc _CParagraphShd ; prot = asc _CParagraphShd . prototype ; prot [ "get_Value" ] = prot [ "asc_getValue" ] =
prot . asc _getValue ; prot [ "put_Value" ] = prot [ "asc_putValue" ] = prot . asc _putValue ; prot [ "get_Color" ] = prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "put_Color" ] = prot [ "asc_putColor" ] = prot . asc _putColor ; window [ "Asc" ] [ "asc_CParagraphFrame" ] = window [ "Asc" ] . asc _CParagraphFrame = asc _CParagraphFrame ; prot = asc _CParagraphFrame . prototype ; prot [ "asc_getDropCap" ] = prot [ "get_DropCap" ] = prot . asc _getDropCap ; prot [ "asc_putDropCap" ] = prot [ "put_DropCap" ] = prot . asc _putDropCap ; prot [ "asc_getH" ] = prot [ "get_H" ] = prot . asc _getH ; prot [ "asc_putH" ] =
prot [ "put_H" ] = prot . asc _putH ; prot [ "asc_getHAnchor" ] = prot [ "get_HAnchor" ] = prot . asc _getHAnchor ; prot [ "asc_putHAnchor" ] = prot [ "put_HAnchor" ] = prot . asc _putHAnchor ; prot [ "asc_getHRule" ] = prot [ "get_HRule" ] = prot . asc _getHRule ; prot [ "asc_putHRule" ] = prot [ "put_HRule" ] = prot . asc _putHRule ; prot [ "asc_getHSpace" ] = prot [ "get_HSpace" ] = prot . asc _getHSpace ; prot [ "asc_putHSpace" ] = prot [ "put_HSpace" ] = prot . asc _putHSpace ; prot [ "asc_getLines" ] = prot [ "get_Lines" ] = prot . asc _getLines ; prot [ "asc_putLines" ] = prot [ "put_Lines" ] = prot . asc _putLines ;
prot [ "asc_getVAnchor" ] = prot [ "get_VAnchor" ] = prot . asc _getVAnchor ; prot [ "asc_putVAnchor" ] = prot [ "put_VAnchor" ] = prot . asc _putVAnchor ; prot [ "asc_getVSpace" ] = prot [ "get_VSpace" ] = prot . asc _getVSpace ; prot [ "asc_putVSpace" ] = prot [ "put_VSpace" ] = prot . asc _putVSpace ; prot [ "asc_getW" ] = prot [ "get_W" ] = prot . asc _getW ; prot [ "asc_putW" ] = prot [ "put_W" ] = prot . asc _putW ; prot [ "asc_getWrap" ] = prot [ "get_Wrap" ] = prot . asc _getWrap ; prot [ "asc_putWrap" ] = prot [ "put_Wrap" ] = prot . asc _putWrap ; prot [ "asc_getX" ] = prot [ "get_X" ] = prot . asc _getX ; prot [ "asc_putX" ] =
prot [ "put_X" ] = prot . asc _putX ; prot [ "asc_getXAlign" ] = prot [ "get_XAlign" ] = prot . asc _getXAlign ; prot [ "asc_putXAlign" ] = prot [ "put_XAlign" ] = prot . asc _putXAlign ; prot [ "asc_getY" ] = prot [ "get_Y" ] = prot . asc _getY ; prot [ "asc_putY" ] = prot [ "put_Y" ] = prot . asc _putY ; prot [ "asc_getYAlign" ] = prot [ "get_YAlign" ] = prot . asc _getYAlign ; prot [ "asc_putYAlign" ] = prot [ "put_YAlign" ] = prot . asc _putYAlign ; prot [ "asc_getBorders" ] = prot [ "get_Borders" ] = prot . asc _getBorders ; prot [ "asc_putBorders" ] = prot [ "put_Borders" ] = prot . asc _putBorders ; prot [ "asc_getShade" ] =
prot [ "get_Shade" ] = prot . asc _getShade ; prot [ "asc_putShade" ] = prot [ "put_Shade" ] = prot . asc _putShade ; prot [ "asc_getFontFamily" ] = prot [ "get_FontFamily" ] = prot . asc _getFontFamily ; prot [ "asc_putFontFamily" ] = prot [ "put_FontFamily" ] = prot . asc _putFontFamily ; prot [ "asc_putFromDropCapMenu" ] = prot [ "put_FromDropCapMenu" ] = prot . asc _putFromDropCapMenu ; window [ "AscCommon" ] . asc _CParagraphSpacing = asc _CParagraphSpacing ; prot = asc _CParagraphSpacing . prototype ; prot [ "get_Line" ] = prot [ "asc_getLine" ] = prot . asc _getLine ; prot [ "put_Line" ] = prot [ "asc_putLine" ] =
prot . asc _putLine ; prot [ "get_LineRule" ] = prot [ "asc_getLineRule" ] = prot . asc _getLineRule ; prot [ "put_LineRule" ] = prot [ "asc_putLineRule" ] = prot . asc _putLineRule ; prot [ "get_Before" ] = prot [ "asc_getBefore" ] = prot . asc _getBefore ; prot [ "put_Before" ] = prot [ "asc_putBefore" ] = prot . asc _putBefore ; prot [ "get_After" ] = prot [ "asc_getAfter" ] = prot . asc _getAfter ; prot [ "put_After" ] = prot [ "asc_putAfter" ] = prot . asc _putAfter ; window [ "Asc" ] [ "asc_CParagraphInd" ] = window [ "Asc" ] . asc _CParagraphInd = asc _CParagraphInd ; prot = asc _CParagraphInd . prototype ;
prot [ "get_Left" ] = prot [ "asc_getLeft" ] = prot . asc _getLeft ; prot [ "put_Left" ] = prot [ "asc_putLeft" ] = prot . asc _putLeft ; prot [ "get_Right" ] = prot [ "asc_getRight" ] = prot . asc _getRight ; prot [ "put_Right" ] = prot [ "asc_putRight" ] = prot . asc _putRight ; prot [ "get_FirstLine" ] = prot [ "asc_getFirstLine" ] = prot . asc _getFirstLine ; prot [ "put_FirstLine" ] = prot [ "asc_putFirstLine" ] = prot . asc _putFirstLine ; window [ "Asc" ] [ "asc_CParagraphProperty" ] = window [ "Asc" ] . asc _CParagraphProperty = asc _CParagraphProperty ; prot = asc _CParagraphProperty . prototype ; prot [ "get_ContextualSpacing" ] =
prot [ "asc_getContextualSpacing" ] = prot . asc _getContextualSpacing ; prot [ "put_ContextualSpacing" ] = prot [ "asc_putContextualSpacing" ] = prot . asc _putContextualSpacing ; prot [ "get_Ind" ] = prot [ "asc_getInd" ] = prot . asc _getInd ; prot [ "put_Ind" ] = prot [ "asc_putInd" ] = prot . asc _putInd ; prot [ "get_Jc" ] = prot [ "asc_getJc" ] = prot . asc _getJc ; prot [ "put_Jc" ] = prot [ "asc_putJc" ] = prot . asc _putJc ; prot [ "get_KeepLines" ] = prot [ "asc_getKeepLines" ] = prot . asc _getKeepLines ; prot [ "put_KeepLines" ] = prot [ "asc_putKeepLines" ] = prot . asc _putKeepLines ; prot [ "get_KeepNext" ] =
prot [ "asc_getKeepNext" ] = prot . asc _getKeepNext ; prot [ "put_KeepNext" ] = prot [ "asc_putKeepNext" ] = prot . asc _putKeepNext ; prot [ "get_PageBreakBefore" ] = prot [ "asc_getPageBreakBefore" ] = prot . asc _getPageBreakBefore ; prot [ "put_PageBreakBefore" ] = prot [ "asc_putPageBreakBefore" ] = prot . asc _putPageBreakBefore ; prot [ "get_WidowControl" ] = prot [ "asc_getWidowControl" ] = prot . asc _getWidowControl ; prot [ "put_WidowControl" ] = prot [ "asc_putWidowControl" ] = prot . asc _putWidowControl ; prot [ "get_Spacing" ] = prot [ "asc_getSpacing" ] = prot . asc _getSpacing ;
prot [ "put_Spacing" ] = prot [ "asc_putSpacing" ] = prot . asc _putSpacing ; prot [ "get_Borders" ] = prot [ "asc_getBorders" ] = prot . asc _getBorders ; prot [ "put_Borders" ] = prot [ "asc_putBorders" ] = prot . asc _putBorders ; prot [ "get_Shade" ] = prot [ "asc_getShade" ] = prot . asc _getShade ; prot [ "put_Shade" ] = prot [ "asc_putShade" ] = prot . asc _putShade ; prot [ "get_Locked" ] = prot [ "asc_getLocked" ] = prot . asc _getLocked ; prot [ "get_CanAddTable" ] = prot [ "asc_getCanAddTable" ] = prot . asc _getCanAddTable ; prot [ "get_Subscript" ] = prot [ "asc_getSubscript" ] = prot . asc _getSubscript ;
prot [ "put_Subscript" ] = prot [ "asc_putSubscript" ] = prot . asc _putSubscript ; prot [ "get_Superscript" ] = prot [ "asc_getSuperscript" ] = prot . asc _getSuperscript ; prot [ "put_Superscript" ] = prot [ "asc_putSuperscript" ] = prot . asc _putSuperscript ; prot [ "get_SmallCaps" ] = prot [ "asc_getSmallCaps" ] = prot . asc _getSmallCaps ; prot [ "put_SmallCaps" ] = prot [ "asc_putSmallCaps" ] = prot . asc _putSmallCaps ; prot [ "get_AllCaps" ] = prot [ "asc_getAllCaps" ] = prot . asc _getAllCaps ; prot [ "put_AllCaps" ] = prot [ "asc_putAllCaps" ] = prot . asc _putAllCaps ; prot [ "get_Strikeout" ] =
prot [ "asc_getStrikeout" ] = prot . asc _getStrikeout ; prot [ "put_Strikeout" ] = prot [ "asc_putStrikeout" ] = prot . asc _putStrikeout ; prot [ "get_DStrikeout" ] = prot [ "asc_getDStrikeout" ] = prot . asc _getDStrikeout ; prot [ "put_DStrikeout" ] = prot [ "asc_putDStrikeout" ] = prot . asc _putDStrikeout ; prot [ "get_TextSpacing" ] = prot [ "asc_getTextSpacing" ] = prot . asc _getTextSpacing ; prot [ "put_TextSpacing" ] = prot [ "asc_putTextSpacing" ] = prot . asc _putTextSpacing ; prot [ "get_Position" ] = prot [ "asc_getPosition" ] = prot . asc _getPosition ; prot [ "put_Position" ] = prot [ "asc_putPosition" ] =
prot . asc _putPosition ; prot [ "get_Tabs" ] = prot [ "asc_getTabs" ] = prot . asc _getTabs ; prot [ "put_Tabs" ] = prot [ "asc_putTabs" ] = prot . asc _putTabs ; prot [ "get_DefaultTab" ] = prot [ "asc_getDefaultTab" ] = prot . asc _getDefaultTab ; prot [ "put_DefaultTab" ] = prot [ "asc_putDefaultTab" ] = prot . asc _putDefaultTab ; prot [ "get_FramePr" ] = prot [ "asc_getFramePr" ] = prot . asc _getFramePr ; prot [ "put_FramePr" ] = prot [ "asc_putFramePr" ] = prot . asc _putFramePr ; prot [ "get_CanAddDropCap" ] = prot [ "asc_getCanAddDropCap" ] = prot . asc _getCanAddDropCap ; prot [ "get_CanAddImage" ] =
prot [ "asc_getCanAddImage" ] = prot . asc _getCanAddImage ; prot [ "get_OutlineLvl" ] = prot [ "asc_getOutlineLvl" ] = prot . asc _getOutlineLvl ; prot [ "put_OutlineLvl" ] = prot [ "asc_putOutLineLvl" ] = prot . asc _putOutLineLvl ; prot [ "get_OutlineLvlStyle" ] = prot [ "asc_getOutlineLvlStyle" ] = prot . asc _getOutlineLvlStyle ; prot [ "get_SuppressLineNumbers" ] = prot [ "asc_getSuppressLineNumbers" ] = prot . asc _getSuppressLineNumbers ; prot [ "put_SuppressLineNumbers" ] = prot [ "asc_putSuppressLineNumbers" ] = prot . asc _putSuppressLineNumbers ; prot [ "put_Bullet" ] = prot [ "asc_putBullet" ] =
prot . asc _putBullet ; prot [ "get_Bullet" ] = prot [ "asc_getBullet" ] = prot . asc _getBullet ; prot [ "put_BulletSize" ] = prot [ "asc_putBulletSize" ] = prot . asc _putBulletSize ; prot [ "get_BulletSize" ] = prot [ "asc_getBulletSize" ] = prot . asc _getBulletSize ; prot [ "put_BulletColor" ] = prot [ "asc_putBulletColor" ] = prot . asc _putBulletColor ; prot [ "get_BulletColor" ] = prot [ "asc_getBulletColor" ] = prot . asc _getBulletColor ; prot [ "put_NumStartAt" ] = prot [ "asc_putNumStartAt" ] = prot . asc _putNumStartAt ; prot [ "get_NumStartAt" ] = prot [ "asc_getNumStartAt" ] = prot . asc _getNumStartAt ;
prot [ "get_BulletFont" ] = prot [ "asc_getBulletFont" ] = prot . asc _getBulletFont ; prot [ "put_BulletFont" ] = prot [ "asc_putBulletFont" ] = prot . asc _putBulletFont ; prot [ "get_BulletSymbol" ] = prot [ "asc_getBulletSymbol" ] = prot . asc _getBulletSymbol ; prot [ "put_BulletSymbol" ] = prot [ "asc_putBulletSymbol" ] = prot . asc _putBulletSymbol ; prot [ "can_DeleteBlockContentControl" ] = prot [ "asc_canDeleteBlockContentControl" ] = prot . asc _canDeleteBlockContentControl ; prot [ "can_EditBlockContentControl" ] = prot [ "asc_canEditBlockContentControl" ] = prot . asc _canEditBlockContentControl ;
prot [ "can_DeleteInlineContentControl" ] = prot [ "asc_canDeleteInlineContentControl" ] = prot . asc _canDeleteInlineContentControl ; prot [ "can_EditInlineContentControl" ] = prot [ "asc_canEditInlineContentControl" ] = prot . asc _canEditInlineContentControl ; window [ "AscCommon" ] . asc _CTexture = asc _CTexture ; prot = asc _CTexture . prototype ; prot [ "get_id" ] = prot [ "asc_getId" ] = prot . asc _getId ; prot [ "get_image" ] = prot [ "asc_getImage" ] = prot . asc _getImage ; window [ "AscCommon" ] . asc _CImageSize = asc _CImageSize ; prot = asc _CImageSize . prototype ; prot [ "get_ImageWidth" ] =
prot [ "asc_getImageWidth" ] = prot . asc _getImageWidth ; prot [ "get_ImageHeight" ] = prot [ "asc_getImageHeight" ] = prot . asc _getImageHeight ; prot [ "get_IsCorrect" ] = prot [ "asc_getIsCorrect" ] = prot . asc _getIsCorrect ; window [ "Asc" ] [ "asc_CPaddings" ] = window [ "Asc" ] . asc _CPaddings = asc _CPaddings ; prot = asc _CPaddings . prototype ; prot [ "get_Left" ] = prot [ "asc_getLeft" ] = prot . asc _getLeft ; prot [ "put_Left" ] = prot [ "asc_putLeft" ] = prot . asc _putLeft ; prot [ "get_Top" ] = prot [ "asc_getTop" ] = prot . asc _getTop ; prot [ "put_Top" ] = prot [ "asc_putTop" ] = prot . asc _putTop ;
prot [ "get_Bottom" ] = prot [ "asc_getBottom" ] = prot . asc _getBottom ; prot [ "put_Bottom" ] = prot [ "asc_putBottom" ] = prot . asc _putBottom ; prot [ "get_Right" ] = prot [ "asc_getRight" ] = prot . asc _getRight ; prot [ "put_Right" ] = prot [ "asc_putRight" ] = prot . asc _putRight ; window [ "Asc" ] [ "asc_CShapeProperty" ] = window [ "Asc" ] . asc _CShapeProperty = asc _CShapeProperty ; prot = asc _CShapeProperty . prototype ; prot [ "get_type" ] = prot [ "asc_getType" ] = prot . asc _getType ; prot [ "put_type" ] = prot [ "asc_putType" ] = prot . asc _putType ; prot [ "get_fill" ] = prot [ "asc_getFill" ] =
prot . asc _getFill ; prot [ "put_fill" ] = prot [ "asc_putFill" ] = prot . asc _putFill ; prot [ "get_stroke" ] = prot [ "asc_getStroke" ] = prot . asc _getStroke ; prot [ "put_stroke" ] = prot [ "asc_putStroke" ] = prot . asc _putStroke ; prot [ "get_paddings" ] = prot [ "asc_getPaddings" ] = prot . asc _getPaddings ; prot [ "put_paddings" ] = prot [ "asc_putPaddings" ] = prot . asc _putPaddings ; prot [ "get_CanFill" ] = prot [ "asc_getCanFill" ] = prot . asc _getCanFill ; prot [ "put_CanFill" ] = prot [ "asc_putCanFill" ] = prot . asc _putCanFill ; prot [ "get_CanChangeArrows" ] = prot [ "asc_getCanChangeArrows" ] =
prot . asc _getCanChangeArrows ; prot [ "set_CanChangeArrows" ] = prot [ "asc_setCanChangeArrows" ] = prot . asc _setCanChangeArrows ; prot [ "get_FromChart" ] = prot [ "asc_getFromChart" ] = prot . asc _getFromChart ; prot [ "set_FromChart" ] = prot [ "asc_setFromChart" ] = prot . asc _setFromChart ; prot [ "get_Locked" ] = prot [ "asc_getLocked" ] = prot . asc _getLocked ; prot [ "set_Locked" ] = prot [ "asc_setLocked" ] = prot . asc _setLocked ; prot [ "get_Width" ] = prot [ "asc_getWidth" ] = prot . asc _getWidth ; prot [ "put_Width" ] = prot [ "asc_putWidth" ] = prot . asc _putWidth ; prot [ "get_Height" ] =
prot [ "asc_getHeight" ] = prot . asc _getHeight ; prot [ "put_Height" ] = prot [ "asc_putHeight" ] = prot . asc _putHeight ; prot [ "get_VerticalTextAlign" ] = prot [ "asc_getVerticalTextAlign" ] = prot . asc _getVerticalTextAlign ; prot [ "put_VerticalTextAlign" ] = prot [ "asc_putVerticalTextAlign" ] = prot . asc _putVerticalTextAlign ; prot [ "get_Vert" ] = prot [ "asc_getVert" ] = prot . asc _getVert ; prot [ "put_Vert" ] = prot [ "asc_putVert" ] = prot . asc _putVert ; prot [ "get_TextArtProperties" ] = prot [ "asc_getTextArtProperties" ] = prot . asc _getTextArtProperties ; prot [ "put_TextArtProperties" ] =
prot [ "asc_putTextArtProperties" ] = prot . asc _putTextArtProperties ; prot [ "get_LockAspect" ] = prot [ "asc_getLockAspect" ] = prot . asc _getLockAspect ; prot [ "put_LockAspect" ] = prot [ "asc_putLockAspect" ] = prot . asc _putLockAspect ; prot [ "get_Title" ] = prot [ "asc_getTitle" ] = prot . asc _getTitle ; prot [ "put_Title" ] = prot [ "asc_putTitle" ] = prot . asc _putTitle ; prot [ "get_Description" ] = prot [ "asc_getDescription" ] = prot . asc _getDescription ; prot [ "put_Description" ] = prot [ "asc_putDescription" ] = prot . asc _putDescription ; prot [ "get_ColumnNumber" ] = prot [ "asc_getColumnNumber" ] =
prot . asc _getColumnNumber ; prot [ "put_ColumnNumber" ] = prot [ "asc_putColumnNumber" ] = prot . asc _putColumnNumber ; prot [ "get_ColumnSpace" ] = prot [ "asc_getColumnSpace" ] = prot . asc _getColumnSpace ; prot [ "get_TextFitType" ] = prot [ "asc_getTextFitType" ] = prot . asc _getTextFitType ; prot [ "get_VertOverflowType" ] = prot [ "asc_getVertOverflowType" ] = prot . asc _getVertOverflowType ; prot [ "put_ColumnSpace" ] = prot [ "asc_putColumnSpace" ] = prot . asc _putColumnSpace ; prot [ "put_TextFitType" ] = prot [ "asc_putTextFitType" ] = prot . asc _putTextFitType ; prot [ "put_VertOverflowType" ] =
prot [ "asc_putVertOverflowType" ] = prot . asc _putVertOverflowType ; prot [ "get_SignatureId" ] = prot [ "asc_getSignatureId" ] = prot . asc _getSignatureId ; prot [ "put_SignatureId" ] = prot [ "asc_putSignatureId" ] = prot . asc _putSignatureId ; prot [ "get_FromImage" ] = prot [ "asc_getFromImage" ] = prot . asc _getFromImage ; prot [ "put_FromImage" ] = prot [ "asc_putFromImage" ] = prot . asc _putFromImage ; prot [ "get_Rot" ] = prot [ "asc_getRot" ] = prot . asc _getRot ; prot [ "put_Rot" ] = prot [ "asc_putRot" ] = prot . asc _putRot ; prot [ "get_RotAdd" ] = prot [ "asc_getRotAdd" ] = prot . asc _getRotAdd ;
prot [ "put_RotAdd" ] = prot [ "asc_putRotAdd" ] = prot . asc _putRotAdd ; prot [ "get_FlipH" ] = prot [ "asc_getFlipH" ] = prot . asc _getFlipH ; prot [ "put_FlipH" ] = prot [ "asc_putFlipH" ] = prot . asc _putFlipH ; prot [ "get_FlipV" ] = prot [ "asc_getFlipV" ] = prot . asc _getFlipV ; prot [ "put_FlipV" ] = prot [ "asc_putFlipV" ] = prot . asc _putFlipV ; prot [ "get_FlipHInvert" ] = prot [ "asc_getFlipHInvert" ] = prot . asc _getFlipHInvert ; prot [ "put_FlipHInvert" ] = prot [ "asc_putFlipHInvert" ] = prot . asc _putFlipHInvert ; prot [ "get_FlipVInvert" ] = prot [ "asc_getFlipVInvert" ] = prot . asc _getFlipVInvert ;
prot [ "put_FlipVInvert" ] = prot [ "asc_putFlipVInvert" ] = prot . asc _putFlipVInvert ; prot [ "put_Shadow" ] = prot . put _Shadow = prot [ "put_shadow" ] = prot . put _shadow = prot [ "asc_putShadow" ] = prot . asc _putShadow ; prot [ "get_Shadow" ] = prot . get _Shadow = prot [ "get_shadow" ] = prot . get _shadow = prot [ "asc_getShadow" ] = prot . asc _getShadow ; prot [ "put_Anchor" ] = prot . put _Anchor = prot [ "asc_putAnchor" ] = prot . asc _putAnchor ; prot [ "get_Anchor" ] = prot . get _Anchor = prot [ "asc_getAnchor" ] = prot . asc _getAnchor ; window [ "Asc" ] [ "asc_TextArtProperties" ] = window [ "Asc" ] . asc _TextArtProperties =
asc _TextArtProperties ; prot = asc _TextArtProperties . prototype ; prot [ "asc_putFill" ] = prot . asc _putFill ; prot [ "asc_getFill" ] = prot . asc _getFill ; prot [ "asc_putLine" ] = prot . asc _putLine ; prot [ "asc_getLine" ] = prot . asc _getLine ; prot [ "asc_putForm" ] = prot . asc _putForm ; prot [ "asc_getForm" ] = prot . asc _getForm ; prot [ "asc_putStyle" ] = prot . asc _putStyle ; prot [ "asc_getStyle" ] = prot . asc _getStyle ; window [ "Asc" ] [ "CImagePositionH" ] = window [ "Asc" ] . CImagePositionH = CImagePositionH ; prot = CImagePositionH . prototype ; prot [ "get_RelativeFrom" ] = prot . get _RelativeFrom ;
prot [ "put_RelativeFrom" ] = prot . put _RelativeFrom ; prot [ "get_UseAlign" ] = prot . get _UseAlign ; prot [ "put_UseAlign" ] = prot . put _UseAlign ; prot [ "get_Align" ] = prot . get _Align ; prot [ "put_Align" ] = prot . put _Align ; prot [ "get_Value" ] = prot . get _Value ; prot [ "put_Value" ] = prot . put _Value ; prot [ "get_Percent" ] = prot . get _Percent ; prot [ "put_Percent" ] = prot . put _Percent ; window [ "Asc" ] [ "CImagePositionV" ] = window [ "Asc" ] . CImagePositionV = CImagePositionV ; prot = CImagePositionV . prototype ; prot [ "get_RelativeFrom" ] = prot . get _RelativeFrom ; prot [ "put_RelativeFrom" ] =
prot . put _RelativeFrom ; prot [ "get_UseAlign" ] = prot . get _UseAlign ; prot [ "put_UseAlign" ] = prot . put _UseAlign ; prot [ "get_Align" ] = prot . get _Align ; prot [ "put_Align" ] = prot . put _Align ; prot [ "get_Value" ] = prot . get _Value ; prot [ "put_Value" ] = prot . put _Value ; prot [ "get_Percent" ] = prot . get _Percent ; prot [ "put_Percent" ] = prot . put _Percent ; window [ "Asc" ] [ "CPosition" ] = window [ "Asc" ] . CPosition = CPosition ; prot = CPosition . prototype ; prot [ "get_X" ] = prot . get _X ; prot [ "put_X" ] = prot . put _X ; prot [ "get_Y" ] = prot . get _Y ; prot [ "put_Y" ] = prot . put _Y ; window [ "Asc" ] [ "asc_CImgProperty" ] =
window [ "Asc" ] . asc _CImgProperty = asc _CImgProperty ; prot = asc _CImgProperty . prototype ; prot [ "get_ChangeLevel" ] = prot [ "asc_getChangeLevel" ] = prot . asc _getChangeLevel ; prot [ "put_ChangeLevel" ] = prot [ "asc_putChangeLevel" ] = prot . asc _putChangeLevel ; prot [ "get_CanBeFlow" ] = prot [ "asc_getCanBeFlow" ] = prot . asc _getCanBeFlow ; prot [ "get_Width" ] = prot [ "asc_getWidth" ] = prot . asc _getWidth ; prot [ "put_Width" ] = prot [ "asc_putWidth" ] = prot . asc _putWidth ; prot [ "get_Height" ] = prot [ "asc_getHeight" ] = prot . asc _getHeight ; prot [ "put_Height" ] = prot [ "asc_putHeight" ] =
prot . asc _putHeight ; prot [ "get_WrappingStyle" ] = prot [ "asc_getWrappingStyle" ] = prot . asc _getWrappingStyle ; prot [ "put_WrappingStyle" ] = prot [ "asc_putWrappingStyle" ] = prot . asc _putWrappingStyle ; prot [ "get_Paddings" ] = prot [ "asc_getPaddings" ] = prot . asc _getPaddings ; prot [ "put_Paddings" ] = prot [ "asc_putPaddings" ] = prot . asc _putPaddings ; prot [ "get_AllowOverlap" ] = prot [ "asc_getAllowOverlap" ] = prot . asc _getAllowOverlap ; prot [ "put_AllowOverlap" ] = prot [ "asc_putAllowOverlap" ] = prot . asc _putAllowOverlap ; prot [ "get_Position" ] = prot [ "asc_getPosition" ] =
prot . asc _getPosition ; prot [ "put_Position" ] = prot [ "asc_putPosition" ] = prot . asc _putPosition ; prot [ "get_PositionH" ] = prot [ "asc_getPositionH" ] = prot . asc _getPositionH ; prot [ "put_PositionH" ] = prot [ "asc_putPositionH" ] = prot . asc _putPositionH ; prot [ "get_PositionV" ] = prot [ "asc_getPositionV" ] = prot . asc _getPositionV ; prot [ "put_PositionV" ] = prot [ "asc_putPositionV" ] = prot . asc _putPositionV ; prot [ "get_SizeRelH" ] = prot [ "asc_getSizeRelH" ] = prot . asc _getSizeRelH ; prot [ "put_SizeRelH" ] = prot [ "asc_putSizeRelH" ] = prot . asc _putSizeRelH ; prot [ "get_SizeRelV" ] =
prot [ "asc_getSizeRelV" ] = prot . asc _getSizeRelV ; prot [ "put_SizeRelV" ] = prot [ "asc_putSizeRelV" ] = prot . asc _putSizeRelV ; prot [ "get_Value_X" ] = prot [ "asc_getValue_X" ] = prot . asc _getValue _X ; prot [ "get_Value_Y" ] = prot [ "asc_getValue_Y" ] = prot . asc _getValue _Y ; prot [ "get_ImageUrl" ] = prot [ "asc_getImageUrl" ] = prot . asc _getImageUrl ; prot [ "put_ImageUrl" ] = prot [ "asc_putImageUrl" ] = prot . asc _putImageUrl ; prot [ "get_Group" ] = prot [ "asc_getGroup" ] = prot . asc _getGroup ; prot [ "put_Group" ] = prot [ "asc_putGroup" ] = prot . asc _putGroup ; prot [ "get_FromGroup" ] =
prot [ "asc_getFromGroup" ] = prot . asc _getFromGroup ; prot [ "put_FromGroup" ] = prot [ "asc_putFromGroup" ] = prot . asc _putFromGroup ; prot [ "get_isChartProps" ] = prot [ "asc_getisChartProps" ] = prot . asc _getisChartProps ; prot [ "put_isChartPross" ] = prot [ "asc_putisChartPross" ] = prot . asc _putisChartPross ; prot [ "get_SeveralCharts" ] = prot [ "asc_getSeveralCharts" ] = prot . asc _getSeveralCharts ; prot [ "put_SeveralCharts" ] = prot [ "asc_putSeveralCharts" ] = prot . asc _putSeveralCharts ; prot [ "get_SeveralChartTypes" ] = prot [ "asc_getSeveralChartTypes" ] = prot . asc _getSeveralChartTypes ;
prot [ "put_SeveralChartTypes" ] = prot [ "asc_putSeveralChartTypes" ] = prot . asc _putSeveralChartTypes ; prot [ "get_SeveralChartStyles" ] = prot [ "asc_getSeveralChartStyles" ] = prot . asc _getSeveralChartStyles ; prot [ "put_SeveralChartStyles" ] = prot [ "asc_putSeveralChartStyles" ] = prot . asc _putSeveralChartStyles ; prot [ "get_VerticalTextAlign" ] = prot [ "asc_getVerticalTextAlign" ] = prot . asc _getVerticalTextAlign ; prot [ "put_VerticalTextAlign" ] = prot [ "asc_putVerticalTextAlign" ] = prot . asc _putVerticalTextAlign ; prot [ "get_Vert" ] = prot [ "asc_getVert" ] =
prot . asc _getVert ; prot [ "put_Vert" ] = prot [ "asc_putVert" ] = prot . asc _putVert ; prot [ "get_Locked" ] = prot [ "asc_getLocked" ] = prot . asc _getLocked ; prot [ "getLockAspect" ] = prot [ "asc_getLockAspect" ] = prot . asc _getLockAspect ; prot [ "putLockAspect" ] = prot [ "asc_putLockAspect" ] = prot . asc _putLockAspect ; prot [ "get_ChartProperties" ] = prot [ "asc_getChartProperties" ] = prot . asc _getChartProperties ; prot [ "put_ChartProperties" ] = prot [ "asc_putChartProperties" ] = prot . asc _putChartProperties ; prot [ "get_ShapeProperties" ] = prot [ "asc_getShapeProperties" ] =
prot . asc _getShapeProperties ; prot [ "put_ShapeProperties" ] = prot [ "asc_putShapeProperties" ] = prot . asc _putShapeProperties ; prot [ "put_SlicerProperties" ] = prot [ "asc_putSlicerProperties" ] = prot . asc _putSlicerProperties ; prot [ "get_SlicerProperties" ] = prot [ "asc_getSlicerProperties" ] = prot . asc _getSlicerProperties ; prot [ "get_OriginSize" ] = prot [ "asc_getOriginSize" ] = prot . asc _getOriginSize ; prot [ "get_PluginGuid" ] = prot [ "asc_getPluginGuid" ] = prot . asc _getPluginGuid ; prot [ "put_PluginGuid" ] = prot [ "asc_putPluginGuid" ] = prot . asc _putPluginGuid ;
prot [ "get_PluginData" ] = prot [ "asc_getPluginData" ] = prot . asc _getPluginData ; prot [ "put_PluginData" ] = prot [ "asc_putPluginData" ] = prot . asc _putPluginData ; prot [ "get_Rot" ] = prot [ "asc_getRot" ] = prot . asc _getRot ; prot [ "put_Rot" ] = prot [ "asc_putRot" ] = prot . asc _putRot ; prot [ "get_RotAdd" ] = prot [ "asc_getRotAdd" ] = prot . asc _getRotAdd ; prot [ "put_RotAdd" ] = prot [ "asc_putRotAdd" ] = prot . asc _putRotAdd ; prot [ "get_FlipH" ] = prot [ "asc_getFlipH" ] = prot . asc _getFlipH ; prot [ "put_FlipH" ] = prot [ "asc_putFlipH" ] = prot . asc _putFlipH ; prot [ "get_FlipV" ] = prot [ "asc_getFlipV" ] =
prot . asc _getFlipV ; prot [ "put_FlipV" ] = prot [ "asc_putFlipV" ] = prot . asc _putFlipV ; prot [ "get_FlipHInvert" ] = prot [ "asc_getFlipHInvert" ] = prot . asc _getFlipHInvert ; prot [ "put_FlipHInvert" ] = prot [ "asc_putFlipHInvert" ] = prot . asc _putFlipHInvert ; prot [ "get_FlipVInvert" ] = prot [ "asc_getFlipVInvert" ] = prot . asc _getFlipVInvert ; prot [ "put_FlipVInvert" ] = prot [ "asc_putFlipVInvert" ] = prot . asc _putFlipVInvert ; prot [ "put_ResetCrop" ] = prot [ "asc_putResetCrop" ] = prot . asc _putResetCrop ; prot [ "get_Title" ] = prot [ "asc_getTitle" ] = prot . asc _getTitle ;
prot [ "put_Title" ] = prot [ "asc_putTitle" ] = prot . asc _putTitle ; prot [ "get_Description" ] = prot [ "asc_getDescription" ] = prot . asc _getDescription ; prot [ "put_Description" ] = prot [ "asc_putDescription" ] = prot . asc _putDescription ; prot [ "get_ColumnNumber" ] = prot [ "asc_getColumnNumber" ] = prot . asc _getColumnNumber ; prot [ "put_ColumnNumber" ] = prot [ "asc_putColumnNumber" ] = prot . asc _putColumnNumber ; prot [ "get_ColumnSpace" ] = prot [ "asc_getColumnSpace" ] = prot . asc _getColumnSpace ; prot [ "get_TextFitType" ] = prot [ "asc_getTextFitType" ] = prot . asc _getTextFitType ;
prot [ "get_VertOverflowType" ] = prot [ "asc_getVertOverflowType" ] = prot . asc _getVertOverflowType ; prot [ "put_ColumnSpace" ] = prot [ "asc_putColumnSpace" ] = prot . asc _putColumnSpace ; prot [ "put_TextFitType" ] = prot [ "asc_putTextFitType" ] = prot . asc _putTextFitType ; prot [ "put_VertOverflowType" ] = prot [ "asc_putVertOverflowType" ] = prot . asc _putVertOverflowType ; prot [ "asc_getSignatureId" ] = prot [ "asc_getSignatureId" ] = prot . asc _getSignatureId ; prot [ "put_Shadow" ] = prot . put _Shadow = prot [ "put_shadow" ] = prot . put _shadow = prot [ "asc_putShadow" ] = prot . asc _putShadow ;
prot [ "get_Shadow" ] = prot . get _Shadow = prot [ "get_shadow" ] = prot . get _shadow = prot [ "asc_getShadow" ] = prot . asc _getShadow ; prot [ "put_Anchor" ] = prot . put _Anchor = prot [ "asc_putAnchor" ] = prot . asc _putAnchor ; prot [ "get_Anchor" ] = prot . get _Anchor = prot [ "asc_getAnchor" ] = prot . asc _getAnchor ; window [ "AscCommon" ] . asc _CSelectedObject = asc _CSelectedObject ; prot = asc _CSelectedObject . prototype ; prot [ "get_ObjectType" ] = prot [ "asc_getObjectType" ] = prot . asc _getObjectType ; prot [ "get_ObjectValue" ] = prot [ "asc_getObjectValue" ] = prot . asc _getObjectValue ;
window [ "Asc" ] [ "asc_CShapeFill" ] = window [ "Asc" ] . asc _CShapeFill = asc _CShapeFill ; prot = asc _CShapeFill . prototype ; prot [ "get_type" ] = prot [ "asc_getType" ] = prot . asc _getType ; prot [ "put_type" ] = prot [ "asc_putType" ] = prot . asc _putType ; prot [ "get_fill" ] = prot [ "asc_getFill" ] = prot . asc _getFill ; prot [ "put_fill" ] = prot [ "asc_putFill" ] = prot . asc _putFill ; prot [ "get_transparent" ] = prot [ "asc_getTransparent" ] = prot . asc _getTransparent ; prot [ "put_transparent" ] = prot [ "asc_putTransparent" ] = prot . asc _putTransparent ; prot [ "asc_CheckForseSet" ] = prot [ "asc_CheckForseSet" ] =
prot . asc _CheckForseSet ; window [ "Asc" ] [ "asc_CFillBlip" ] = window [ "Asc" ] . asc _CFillBlip = asc _CFillBlip ; prot = asc _CFillBlip . prototype ; prot [ "get_type" ] = prot [ "asc_getType" ] = prot . asc _getType ; prot [ "put_type" ] = prot [ "asc_putType" ] = prot . asc _putType ; prot [ "get_url" ] = prot [ "asc_getUrl" ] = prot . asc _getUrl ; prot [ "put_url" ] = prot [ "asc_putUrl" ] = prot . asc _putUrl ; prot [ "get_texture_id" ] = prot [ "asc_getTextureId" ] = prot . asc _getTextureId ; prot [ "put_texture_id" ] = prot [ "asc_putTextureId" ] = prot . asc _putTextureId ; window [ "Asc" ] [ "asc_CFillHatch" ] =
window [ "Asc" ] . asc _CFillHatch = asc _CFillHatch ; prot = asc _CFillHatch . prototype ; prot [ "get_pattern_type" ] = prot [ "asc_getPatternType" ] = prot . asc _getPatternType ; prot [ "put_pattern_type" ] = prot [ "asc_putPatternType" ] = prot . asc _putPatternType ; prot [ "get_color_fg" ] = prot [ "asc_getColorFg" ] = prot . asc _getColorFg ; prot [ "put_color_fg" ] = prot [ "asc_putColorFg" ] = prot . asc _putColorFg ; prot [ "get_color_bg" ] = prot [ "asc_getColorBg" ] = prot . asc _getColorBg ; prot [ "put_color_bg" ] = prot [ "asc_putColorBg" ] = prot . asc _putColorBg ; window [ "Asc" ] [ "asc_CFillGrad" ] =
window [ "Asc" ] . asc _CFillGrad = asc _CFillGrad ; prot = asc _CFillGrad . prototype ; prot [ "get_colors" ] = prot [ "asc_getColors" ] = prot . asc _getColors ; prot [ "put_colors" ] = prot [ "asc_putColors" ] = prot . asc _putColors ; prot [ "get_positions" ] = prot [ "asc_getPositions" ] = prot . asc _getPositions ; prot [ "put_positions" ] = prot [ "asc_putPositions" ] = prot . asc _putPositions ; prot [ "get_grad_type" ] = prot [ "asc_getGradType" ] = prot . asc _getGradType ; prot [ "put_grad_type" ] = prot [ "asc_putGradType" ] = prot . asc _putGradType ; prot [ "get_linear_angle" ] = prot [ "asc_getLinearAngle" ] =
prot . asc _getLinearAngle ; prot [ "put_linear_angle" ] = prot [ "asc_putLinearAngle" ] = prot . asc _putLinearAngle ; prot [ "get_linear_scale" ] = prot [ "asc_getLinearScale" ] = prot . asc _getLinearScale ; prot [ "put_linear_scale" ] = prot [ "asc_putLinearScale" ] = prot . asc _putLinearScale ; prot [ "get_path_type" ] = prot [ "asc_getPathType" ] = prot . asc _getPathType ; prot [ "put_path_type" ] = prot [ "asc_putPathType" ] = prot . asc _putPathType ; window [ "Asc" ] [ "asc_CFillSolid" ] = window [ "Asc" ] . asc _CFillSolid = asc _CFillSolid ; prot = asc _CFillSolid . prototype ; prot [ "get_color" ] =
prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "put_color" ] = prot [ "asc_putColor" ] = prot . asc _putColor ; window [ "Asc" ] [ "asc_CStroke" ] = window [ "Asc" ] . asc _CStroke = asc _CStroke ; prot = asc _CStroke . prototype ; prot [ "get_type" ] = prot [ "asc_getType" ] = prot . asc _getType ; prot [ "put_type" ] = prot [ "asc_putType" ] = prot . asc _putType ; prot [ "get_width" ] = prot [ "asc_getWidth" ] = prot . asc _getWidth ; prot [ "put_width" ] = prot [ "asc_putWidth" ] = prot . asc _putWidth ; prot [ "get_color" ] = prot [ "asc_getColor" ] = prot . asc _getColor ; prot [ "put_color" ] = prot [ "asc_putColor" ] =
prot . asc _putColor ; prot [ "get_linejoin" ] = prot [ "asc_getLinejoin" ] = prot . asc _getLinejoin ; prot [ "put_linejoin" ] = prot [ "asc_putLinejoin" ] = prot . asc _putLinejoin ; prot [ "get_linecap" ] = prot [ "asc_getLinecap" ] = prot . asc _getLinecap ; prot [ "put_linecap" ] = prot [ "asc_putLinecap" ] = prot . asc _putLinecap ; prot [ "get_linebeginstyle" ] = prot [ "asc_getLinebeginstyle" ] = prot . asc _getLinebeginstyle ; prot [ "put_linebeginstyle" ] = prot [ "asc_putLinebeginstyle" ] = prot . asc _putLinebeginstyle ; prot [ "get_linebeginsize" ] = prot [ "asc_getLinebeginsize" ] = prot . asc _getLinebeginsize ;
prot [ "put_linebeginsize" ] = prot [ "asc_putLinebeginsize" ] = prot . asc _putLinebeginsize ; prot [ "get_lineendstyle" ] = prot [ "asc_getLineendstyle" ] = prot . asc _getLineendstyle ; prot [ "put_lineendstyle" ] = prot [ "asc_putLineendstyle" ] = prot . asc _putLineendstyle ; prot [ "get_lineendsize" ] = prot [ "asc_getLineendsize" ] = prot . asc _getLineendsize ; prot [ "put_lineendsize" ] = prot [ "asc_putLineendsize" ] = prot . asc _putLineendsize ; prot [ "get_canChangeArrows" ] = prot [ "asc_getCanChangeArrows" ] = prot . asc _getCanChangeArrows ; prot [ "put_prstDash" ] = prot [ "asc_putPrstDash" ] =
prot . asc _putPrstDash ; prot [ "get_prstDash" ] = prot [ "asc_getPrstDash" ] = prot . asc _getPrstDash ; window [ "AscCommon" ] . CAscColorScheme = CAscColorScheme ; prot = CAscColorScheme . prototype ; prot [ "get_colors" ] = prot . get _colors ; prot [ "get_name" ] = prot . get _name ; window [ "AscCommon" ] . CMouseMoveData = CMouseMoveData ; prot = CMouseMoveData . prototype ; prot [ "get_Type" ] = prot . get _Type ; prot [ "get_X" ] = prot . get _X ; prot [ "get_Y" ] = prot . get _Y ; prot [ "get_Hyperlink" ] = prot . get _Hyperlink ; prot [ "get_UserId" ] = prot . get _UserId ; prot [ "get_HaveChanges" ] = prot . get _HaveChanges ;
prot [ "get_LockedObjectType" ] = prot . get _LockedObjectType ; prot [ "get_FootnoteText" ] = prot . get _FootnoteText ; prot [ "get_FootnoteNumber" ] = prot . get _FootnoteNumber ; prot [ "get_FormHelpText" ] = prot . get _FormHelpText ; window [ "Asc" ] [ "asc_CUserInfo" ] = window [ "Asc" ] . asc _CUserInfo = asc _CUserInfo ; prot = asc _CUserInfo . prototype ; prot [ "asc_putId" ] = prot [ "put_Id" ] = prot . asc _putId ; prot [ "asc_getId" ] = prot [ "get_Id" ] = prot . asc _getId ; prot [ "asc_putFullName" ] = prot [ "put_FullName" ] = prot . asc _putFullName ; prot [ "asc_getFullName" ] = prot [ "get_FullName" ] =
prot . asc _getFullName ; prot [ "asc_putFirstName" ] = prot [ "put_FirstName" ] = prot . asc _putFirstName ; prot [ "asc_getFirstName" ] = prot [ "get_FirstName" ] = prot . asc _getFirstName ; prot [ "asc_putLastName" ] = prot [ "put_LastName" ] = prot . asc _putLastName ; prot [ "asc_getLastName" ] = prot [ "get_LastName" ] = prot . asc _getLastName ; window [ "Asc" ] [ "asc_CDocInfo" ] = window [ "Asc" ] . asc _CDocInfo = asc _CDocInfo ; prot = asc _CDocInfo . prototype ; prot [ "get_Id" ] = prot [ "asc_getId" ] = prot . asc _getId ; prot [ "put_Id" ] = prot [ "asc_putId" ] = prot . asc _putId ; prot [ "get_Url" ] =
prot [ "asc_getUrl" ] = prot . asc _getUrl ; prot [ "put_Url" ] = prot [ "asc_putUrl" ] = prot . asc _putUrl ; prot [ "get_Title" ] = prot [ "asc_getTitle" ] = prot . asc _getTitle ; prot [ "put_Title" ] = prot [ "asc_putTitle" ] = prot . asc _putTitle ; prot [ "get_Format" ] = prot [ "asc_getFormat" ] = prot . asc _getFormat ; prot [ "put_Format" ] = prot [ "asc_putFormat" ] = prot . asc _putFormat ; prot [ "get_VKey" ] = prot [ "asc_getVKey" ] = prot . asc _getVKey ; prot [ "put_VKey" ] = prot [ "asc_putVKey" ] = prot . asc _putVKey ; prot [ "get_UserId" ] = prot [ "asc_getUserId" ] = prot . asc _getUserId ; prot [ "get_UserName" ] =
prot [ "asc_getUserName" ] = prot . asc _getUserName ; prot [ "get_Options" ] = prot [ "asc_getOptions" ] = prot . asc _getOptions ; prot [ "put_Options" ] = prot [ "asc_putOptions" ] = prot . asc _putOptions ; prot [ "get_CallbackUrl" ] = prot [ "asc_getCallbackUrl" ] = prot . asc _getCallbackUrl ; prot [ "put_CallbackUrl" ] = prot [ "asc_putCallbackUrl" ] = prot . asc _putCallbackUrl ; prot [ "get_TemplateReplacement" ] = prot [ "asc_getTemplateReplacement" ] = prot . asc _getTemplateReplacement ; prot [ "put_TemplateReplacement" ] = prot [ "asc_putTemplateReplacement" ] = prot . asc _putTemplateReplacement ;
prot [ "get_UserInfo" ] = prot [ "asc_getUserInfo" ] = prot . asc _getUserInfo ; prot [ "put_UserInfo" ] = prot [ "asc_putUserInfo" ] = prot . asc _putUserInfo ; prot [ "get_Token" ] = prot [ "asc_getToken" ] = prot . asc _getToken ; prot [ "put_Token" ] = prot [ "asc_putToken" ] = prot . asc _putToken ; prot [ "get_Mode" ] = prot [ "asc_getMode" ] = prot . asc _getMode ; prot [ "put_Mode" ] = prot [ "asc_putMode" ] = prot . asc _putMode ; prot [ "get_Permissions" ] = prot [ "asc_getPermissions" ] = prot . asc _getPermissions ; prot [ "put_Permissions" ] = prot [ "asc_putPermissions" ] = prot . asc _putPermissions ;
prot [ "get_Lang" ] = prot [ "asc_getLang" ] = prot . asc _getLang ; prot [ "put_Lang" ] = prot [ "asc_putLang" ] = prot . asc _putLang ; prot [ "get_Encrypted" ] = prot [ "asc_getEncrypted" ] = prot . asc _getEncrypted ; prot [ "put_Encrypted" ] = prot [ "asc_putEncrypted" ] = prot . asc _putEncrypted ; prot [ "get_EncryptedInfo" ] = prot [ "asc_getEncryptedInfo" ] = prot . asc _getEncryptedInfo ; prot [ "put_EncryptedInfo" ] = prot [ "asc_putEncryptedInfo" ] = prot . asc _putEncryptedInfo ; prot [ "get_IsEnabledPlugins" ] = prot [ "asc_getIsEnabledPlugins" ] = prot . asc _getIsEnabledPlugins ; prot [ "put_IsEnabledPlugins" ] =
prot [ "asc_putIsEnabledPlugins" ] = prot . asc _putIsEnabledPlugins ; prot [ "get_IsEnabledMacroses" ] = prot [ "asc_getIsEnabledMacroses" ] = prot . asc _getIsEnabledMacroses ; prot [ "put_IsEnabledMacroses" ] = prot [ "asc_putIsEnabledMacroses" ] = prot . asc _putIsEnabledMacroses ; window [ "AscCommon" ] . COpenProgress = COpenProgress ; prot = COpenProgress . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getFontsCount" ] = prot . asc _getFontsCount ; prot [ "asc_getCurrentFont" ] = prot . asc _getCurrentFont ; prot [ "asc_getImagesCount" ] = prot . asc _getImagesCount ;
prot [ "asc_getCurrentImage" ] = prot . asc _getCurrentImage ; window [ "AscCommon" ] . CErrorData = CErrorData ; prot = CErrorData . prototype ; prot [ "put_Value" ] = prot . put _Value ; prot [ "get_Value" ] = prot . get _Value ; window [ "AscCommon" ] . CAscMathType = CAscMathType ; prot = CAscMathType . prototype ; prot [ "get_Id" ] = prot . get _Id ; prot [ "get_X" ] = prot . get _X ; prot [ "get_Y" ] = prot . get _Y ; window [ "AscCommon" ] . CAscMathCategory = CAscMathCategory ; prot = CAscMathCategory . prototype ; prot [ "get_Id" ] = prot . get _Id ; prot [ "get_Data" ] = prot . get _Data ; prot [ "get_W" ] = prot . get _W ;
prot [ "get_H" ] = prot . get _H ; window [ "AscCommon" ] . CStyleImage = CStyleImage ; prot = CStyleImage . prototype ; prot [ "asc_getId" ] = prot [ "asc_getName" ] = prot [ "get_Name" ] = prot . asc _getName ; prot [ "asc_getDisplayName" ] = prot . asc _getDisplayName ; prot [ "asc_getType" ] = prot [ "get_Type" ] = prot . asc _getType ; prot [ "asc_getImage" ] = prot . asc _getImage ; window [ "AscCommon" ] . asc _CSpellCheckProperty = asc _CSpellCheckProperty ; prot = asc _CSpellCheckProperty . prototype ; prot [ "get_Word" ] = prot . get _Word ; prot [ "get_Checked" ] = prot . get _Checked ; prot [ "get_Variants" ] =
prot . get _Variants ; window [ "AscCommon" ] . CWatermarkOnDraw = CWatermarkOnDraw ; window [ "AscCommon" ] . isFileBuild = isFileBuild ; window [ "Asc" ] [ "CPluginVariation" ] = window [ "Asc" ] . CPluginVariation = CPluginVariation ; window [ "Asc" ] [ "CPlugin" ] = window [ "Asc" ] . CPlugin = CPlugin } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function inherit ( proto ) { function F ( ) { } F . prototype = proto ; return new F } if ( ! Object . create || ! Object [ "create" ] ) Object [ "create" ] = Object . create = inherit ; var c _oSerConstants = { ErrorFormat : - 2 , ErrorUnknown : - 1 , ReadOk : 0 , ReadUnknown : 1 , ErrorStream : 85 } ; var c _oSerPropLenType = { Null : 0 , Byte : 1 , Short : 2 , Three : 3 , Long : 4 , Double : 5 , Variable : 6 , Double64 : 7 , Long64 : 8 } ; var c _oSer _ColorObjectType = { Rgb : 0 , Type : 1 , Theme : 2 , Tint : 3 } ; var c _oSer _ColorType = { Auto : 0 } ; var c _oSerBorderType = { Color : 0 , Space : 1 , Size : 2 , Value : 3 ,
ColorTheme : 4 , SpacePoint : 5 , Size8Point : 6 } ; var c _oSerBordersType = { left : 0 , top : 1 , right : 2 , bottom : 3 , insideV : 4 , insideH : 5 , start : 6 , end : 7 , tl2br : 8 , tr2bl : 9 , bar : 10 , between : 11 } ; var c _oSerPaddingType = { left : 0 , top : 1 , right : 2 , bottom : 3 , leftTwips : 4 , topTwips : 5 , rightTwips : 6 , bottomTwips : 7 } ; var c _oSerShdType = { Value : 0 , Color : 1 , ColorTheme : 2 } ; var c _oSer _ColorThemeType = { Auto : 0 , Color : 1 , Tint : 2 , Shade : 3 } ; var c _oSerBookmark = { Id : 0 , Name : 1 , DisplacedByCustomXml : 2 , ColFirst : 3 , ColLast : 4 } ; function BinaryCommonWriter ( memory ) { this . memory = memory }
BinaryCommonWriter . prototype . WriteItem = function ( type , fWrite ) { this . memory . WriteByte ( type ) ; this . WriteItemWithLength ( fWrite ) } ; BinaryCommonWriter . prototype . WriteItemStart = function ( type , fWrite ) { this . memory . WriteByte ( type ) ; return this . WriteItemWithLengthStart ( fWrite ) } ; BinaryCommonWriter . prototype . WriteItemEnd = function ( nStart ) { this . WriteItemWithLengthEnd ( nStart ) } ; BinaryCommonWriter . prototype . WriteItemWithLength = function ( fWrite ) { var nStart = this . WriteItemWithLengthStart ( ) ; fWrite ( ) ; this . WriteItemWithLengthEnd ( nStart ) } ;
BinaryCommonWriter . prototype . WriteItemWithLengthStart = function ( ) { var nStart = this . memory . GetCurPosition ( ) ; this . memory . Skip ( 4 ) ; return nStart } ; BinaryCommonWriter . prototype . WriteItemWithLengthEnd = function ( nStart ) { var nEnd = this . memory . GetCurPosition ( ) ; this . memory . Seek ( nStart ) ; this . memory . WriteLong ( nEnd - nStart - 4 ) ; this . memory . Seek ( nEnd ) } ; BinaryCommonWriter . prototype . WriteBorder = function ( border ) { var _this = this ; if ( null != border . Value ) { var color = null ; if ( null != border . Color ) color = border . Color ; else if ( null != border . Unifill ) { var doc =
window . editor . WordControl . m _oLogicDocument ; border . Unifill . check ( doc . Get _Theme ( ) , doc . Get _ColorMap ( ) ) ; var RGBA = border . Unifill . getRGBAColor ( ) ; color = new window [ "AscCommonWord" ] . CDocumentColor ( RGBA . R , RGBA . G , RGBA . B ) } if ( null != color && ! color . Auto ) this . WriteColor ( c _oSerBorderType . Color , color ) ; if ( null != border . Space ) { this . memory . WriteByte ( c _oSerBorderType . SpacePoint ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToPt ( border . Space ) } if ( null != border . Size ) { this . memory . WriteByte ( c _oSerBorderType . Size8Point ) ;
this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToPt ( 8 * border . Size ) } if ( null != border . Unifill || null != border . Color && border . Color . Auto ) { this . memory . WriteByte ( c _oSerBorderType . ColorTheme ) ; this . memory . WriteByte ( c _oSerPropLenType . Variable ) ; this . WriteItemWithLength ( function ( ) { _this . WriteColorTheme ( border . Unifill , border . Color ) } ) } this . memory . WriteByte ( c _oSerBorderType . Value ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( border . Value ) } } ; BinaryCommonWriter . prototype . WriteBorders =
function ( Borders ) { var oThis = this ; if ( null != Borders . Left ) this . WriteItem ( c _oSerBordersType . left , function ( ) { oThis . WriteBorder ( Borders . Left ) } ) ; if ( null != Borders . Top ) this . WriteItem ( c _oSerBordersType . top , function ( ) { oThis . WriteBorder ( Borders . Top ) } ) ; if ( null != Borders . Right ) this . WriteItem ( c _oSerBordersType . right , function ( ) { oThis . WriteBorder ( Borders . Right ) } ) ; if ( null != Borders . Bottom ) this . WriteItem ( c _oSerBordersType . bottom , function ( ) { oThis . WriteBorder ( Borders . Bottom ) } ) ; if ( null != Borders . InsideV ) this . WriteItem ( c _oSerBordersType . insideV ,
function ( ) { oThis . WriteBorder ( Borders . InsideV ) } ) ; if ( null != Borders . InsideH ) this . WriteItem ( c _oSerBordersType . insideH , function ( ) { oThis . WriteBorder ( Borders . InsideH ) } ) ; if ( null != Borders . Between ) this . WriteItem ( c _oSerBordersType . between , function ( ) { oThis . WriteBorder ( Borders . Between ) } ) } ; BinaryCommonWriter . prototype . WriteColor = function ( type , color ) { this . memory . WriteByte ( type ) ; this . memory . WriteByte ( c _oSerPropLenType . Three ) ; this . memory . WriteByte ( color . r ) ; this . memory . WriteByte ( color . g ) ; this . memory . WriteByte ( color . b ) } ;
BinaryCommonWriter . prototype . WriteShd = function ( Shd ) { var _this = this ; if ( null != Shd . Value ) { this . memory . WriteByte ( c _oSerShdType . Value ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( Shd . Value ) } var color = null ; if ( null != Shd . Color ) color = Shd . Color ; else if ( null != Shd . Unifill ) { var doc = editor . WordControl . m _oLogicDocument ; Shd . Unifill . check ( doc . Get _Theme ( ) , doc . Get _ColorMap ( ) ) ; var RGBA = Shd . Unifill . getRGBAColor ( ) ; color = new AscCommonWord . CDocumentColor ( RGBA . R , RGBA . G , RGBA . B ) } if ( null != color && ! color . Auto ) this . WriteColor ( c _oSerShdType . Color ,
color ) ; if ( null != Shd . Unifill || null != Shd . Color && Shd . Color . Auto ) { this . memory . WriteByte ( c _oSerShdType . ColorTheme ) ; this . memory . WriteByte ( c _oSerPropLenType . Variable ) ; this . WriteItemWithLength ( function ( ) { _this . WriteColorTheme ( Shd . Unifill , Shd . Color ) } ) } } ; BinaryCommonWriter . prototype . WritePaddings = function ( Paddings ) { if ( null != Paddings . L ) { this . memory . WriteByte ( c _oSerPaddingType . leftTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . L ) } if ( null != Paddings . T ) { this . memory . WriteByte ( c _oSerPaddingType . topTwips ) ;
this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . T ) } if ( null != Paddings . R ) { this . memory . WriteByte ( c _oSerPaddingType . rightTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . R ) } if ( null != Paddings . B ) { this . memory . WriteByte ( c _oSerPaddingType . bottomTwips ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . writeMmToTwips ( Paddings . B ) } } ; BinaryCommonWriter . prototype . WriteColorSpreadsheet = function ( color ) { if ( color instanceof AscCommonExcel . ThemeColor ) { if ( null !=
color . theme ) { this . memory . WriteByte ( c _oSer _ColorObjectType . Theme ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( color . theme ) } if ( null != color . tint ) { this . memory . WriteByte ( c _oSer _ColorObjectType . Tint ) ; this . memory . WriteByte ( c _oSerPropLenType . Double ) ; this . memory . WriteDouble2 ( color . tint ) } } else { this . memory . WriteByte ( c _oSer _ColorObjectType . Rgb ) ; this . memory . WriteByte ( c _oSerPropLenType . Long ) ; this . memory . WriteLong ( color . getRgb ( ) ) } } ; BinaryCommonWriter . prototype . WriteColorTheme = function ( unifill ,
color ) { if ( null != color && color . Auto ) { this . memory . WriteByte ( c _oSer _ColorThemeType . Auto ) ; this . memory . WriteByte ( c _oSerPropLenType . Null ) } if ( null != unifill && null != unifill . fill && null != unifill . fill . color && unifill . fill . color . color instanceof AscFormat . CSchemeColor ) { var uniColor = unifill . fill . color ; if ( null != uniColor . color ) { var EThemeColor = AscCommonWord . EThemeColor ; var nFormatId = EThemeColor . themecolorNone ; switch ( uniColor . color . id ) { case 0 : nFormatId = EThemeColor . themecolorAccent1 ; break ; case 1 : nFormatId = EThemeColor . themecolorAccent2 ;
break ; case 2 : nFormatId = EThemeColor . themecolorAccent3 ; break ; case 3 : nFormatId = EThemeColor . themecolorAccent4 ; break ; case 4 : nFormatId = EThemeColor . themecolorAccent5 ; break ; case 5 : nFormatId = EThemeColor . themecolorAccent6 ; break ; case 6 : nFormatId = EThemeColor . themecolorBackground1 ; break ; case 7 : nFormatId = EThemeColor . themecolorBackground2 ; break ; case 8 : nFormatId = EThemeColor . themecolorDark1 ; break ; case 9 : nFormatId = EThemeColor . themecolorDark2 ; break ; case 10 : nFormatId = EThemeColor . themecolorFollowedHyperlink ; break ; case 11 : nFormatId =
EThemeColor . themecolorHyperlink ; break ; case 12 : nFormatId = EThemeColor . themecolorLight1 ; break ; case 13 : nFormatId = EThemeColor . themecolorLight2 ; break ; case 14 : nFormatId = EThemeColor . themecolorNone ; break ; case 15 : nFormatId = EThemeColor . themecolorText1 ; break ; case 16 : nFormatId = EThemeColor . themecolorText2 ; break } this . memory . WriteByte ( c _oSer _ColorThemeType . Color ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( nFormatId ) } if ( null != uniColor . Mods ) for ( var i = 0 , length = uniColor . Mods . Mods . length ; i < length ; ++ i ) { var mod =
uniColor . Mods . Mods [ i ] ; if ( "wordTint" == mod . name ) { this . memory . WriteByte ( c _oSer _ColorThemeType . Tint ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( Math . round ( mod . val ) ) } else if ( "wordShade" == mod . name ) { this . memory . WriteByte ( c _oSer _ColorThemeType . Shade ) ; this . memory . WriteByte ( c _oSerPropLenType . Byte ) ; this . memory . WriteByte ( Math . round ( mod . val ) ) } } } } ; BinaryCommonWriter . prototype . WriteBookmark = function ( bookmark ) { var oThis = this ; if ( null !== bookmark . BookmarkId ) this . WriteItem ( c _oSerBookmark . Id ,
function ( ) { oThis . memory . WriteLong ( bookmark . BookmarkId ) } ) ; if ( bookmark . IsStart ( ) && null !== bookmark . BookmarkName ) { this . memory . WriteByte ( c _oSerBookmark . Name ) ; this . memory . WriteString2 ( bookmark . BookmarkName ) } } ; BinaryCommonWriter . prototype . mmToTwips = function ( val ) { return Math . round ( AscCommonWord . g _dKoef _mm _to _twips * val ) } ; BinaryCommonWriter . prototype . writeMmToTwips = function ( val ) { return this . memory . WriteLong ( this . mmToTwips ( val ) ) } ; BinaryCommonWriter . prototype . writeMmToPt = function ( val ) { return this . memory . WriteLong ( Math . round ( AscCommonWord . g _dKoef _mm _to _pt *
val ) ) } ; BinaryCommonWriter . prototype . writeMmToEmu = function ( val ) { return this . memory . WriteLong ( Math . round ( AscCommonWord . g _dKoef _mm _to _emu * val ) ) } ; BinaryCommonWriter . prototype . writeMmToUEmu = function ( val ) { return this . memory . WriteULong ( Math . round ( AscCommonWord . g _dKoef _mm _to _emu * val ) ) } ; function Binary _CommonReader ( stream ) { this . stream = stream } Binary _CommonReader . prototype . ReadTable = function ( fReadContent ) { var res = c _oSerConstants . ReadOk ; res = this . stream . EnterFrame ( 4 ) ; if ( c _oSerConstants . ReadOk != res ) return res ;
var stLen = this . stream . GetULongLE ( ) ; res = this . stream . EnterFrame ( stLen ) ; if ( c _oSerConstants . ReadOk != res ) return res ; return this . Read1 ( stLen , fReadContent ) } ; Binary _CommonReader . prototype . Read1 = function ( stLen , fRead ) { var res = c _oSerConstants . ReadOk ; var stCurPos = 0 ; while ( stCurPos < stLen ) { this . stream . bLast = false ; var type = this . stream . GetUChar ( ) ; var length = this . stream . GetULongLE ( ) ; if ( stCurPos + length + 5 >= stLen ) this . stream . bLast = true ; res = fRead ( type , length ) ; if ( res === c _oSerConstants . ReadUnknown ) { res = this . stream . Skip2 ( length ) ;
if ( c _oSerConstants . ReadOk != res ) return res } else if ( res !== c _oSerConstants . ReadOk ) return res ; stCurPos += length + 5 } return res } ; Binary _CommonReader . prototype . Read2 = function ( stLen , fRead ) { var res = c _oSerConstants . ReadOk ; var stCurPos = 0 ; while ( stCurPos < stLen ) { var type = this . stream . GetUChar ( ) ; var lenType = this . stream . GetUChar ( ) ; var nCurPosShift = 2 ; var nRealLen ; switch ( lenType ) { case c _oSerPropLenType . Null : nRealLen = 0 ; break ; case c _oSerPropLenType . Byte : nRealLen = 1 ; break ; case c _oSerPropLenType . Short : nRealLen = 2 ; break ; case c _oSerPropLenType . Three : nRealLen =
3 ; break ; case c _oSerPropLenType . Long : case c _oSerPropLenType . Double : nRealLen = 4 ; break ; case c _oSerPropLenType . Double64 : nRealLen = 8 ; break ; case c _oSerPropLenType . Long : nRealLen = 8 ; break ; case c _oSerPropLenType . Variable : nRealLen = this . stream . GetULongLE ( ) ; nCurPosShift += 4 ; break ; default : return c _oSerConstants . ErrorUnknown } res = fRead ( type , nRealLen ) ; if ( res === c _oSerConstants . ReadUnknown ) { res = this . stream . Skip2 ( nRealLen ) ; if ( c _oSerConstants . ReadOk != res ) return res } else if ( res !== c _oSerConstants . ReadOk ) return res ; stCurPos +=
nRealLen + nCurPosShift } return res } ; Binary _CommonReader . prototype . Read2Spreadsheet = function ( stLen , fRead ) { var res = c _oSerConstants . ReadOk ; var stCurPos = 0 ; while ( stCurPos < stLen ) { var type = this . stream . GetUChar ( ) ; var lenType = this . stream . GetUChar ( ) ; var nCurPosShift = 2 ; var nRealLen ; switch ( lenType ) { case c _oSerPropLenType . Null : nRealLen = 0 ; break ; case c _oSerPropLenType . Byte : nRealLen = 1 ; break ; case c _oSerPropLenType . Short : nRealLen = 2 ; break ; case c _oSerPropLenType . Three : nRealLen = 3 ; break ; case c _oSerPropLenType . Long : nRealLen =
4 ; break ; case c _oSerPropLenType . Double : nRealLen = 8 ; break ; case c _oSerPropLenType . Double64 : nRealLen = 8 ; break ; case c _oSerPropLenType . Long : nRealLen = 8 ; break ; case c _oSerPropLenType . Variable : nRealLen = this . stream . GetULongLE ( ) ; nCurPosShift += 4 ; break ; default : return c _oSerConstants . ErrorUnknown } res = fRead ( type , nRealLen ) ; if ( res === c _oSerConstants . ReadUnknown ) { res = this . stream . Skip2 ( nRealLen ) ; if ( c _oSerConstants . ReadOk != res ) return res } else if ( res !== c _oSerConstants . ReadOk ) return res ; stCurPos += nRealLen + nCurPosShift } return res } ;
Binary _CommonReader . prototype . ReadDouble = function ( ) { var dRes = 0 ; dRes |= this . stream . GetUChar ( ) ; dRes |= this . stream . GetUChar ( ) << 8 ; dRes |= this . stream . GetUChar ( ) << 16 ; dRes |= this . stream . GetUChar ( ) << 24 ; dRes /= 1E5 ; return dRes } ; Binary _CommonReader . prototype . ReadColor = function ( ) { var r = this . stream . GetUChar ( ) ; var g = this . stream . GetUChar ( ) ; var b = this . stream . GetUChar ( ) ; return new AscCommonWord . CDocumentColor ( r , g , b ) } ; Binary _CommonReader . prototype . ReadShd = function ( type , length , Shd , themeColor ) { var res = c _oSerConstants . ReadOk ;
var oThis = this ; switch ( type ) { case c _oSerShdType . Value : Shd . Value = this . stream . GetUChar ( ) ; break ; case c _oSerShdType . Color : Shd . Color = this . ReadColor ( ) ; break ; case c _oSerShdType . ColorTheme : res = this . Read2 ( length , function ( t , l ) { return oThis . ReadColorTheme ( t , l , themeColor ) } ) ; break ; default : res = c _oSerConstants . ReadUnknown ; break } return res } ; Binary _CommonReader . prototype . ReadColorSpreadsheet = function ( type , length , color ) { var res = c _oSerConstants . ReadOk ; if ( c _oSer _ColorObjectType . Type == type ) color . auto = c _oSer _ColorType . Auto ==
this . stream . GetUChar ( ) ; else if ( c _oSer _ColorObjectType . Rgb == type ) color . rgb = 16777215 & this . stream . GetULongLE ( ) ; else if ( c _oSer _ColorObjectType . Theme == type ) color . theme = this . stream . GetUChar ( ) ; else if ( c _oSer _ColorObjectType . Tint == type ) color . tint = this . stream . GetDoubleLE ( ) ; else res = c _oSerConstants . ReadUnknown ; return res } ; Binary _CommonReader . prototype . ReadColorTheme = function ( type , length , color ) { var res = c _oSerConstants . ReadOk ; if ( c _oSer _ColorThemeType . Auto == type ) color . Auto = true ; else if ( c _oSer _ColorThemeType . Color ==
type ) color . Color = this . stream . GetByte ( ) ; else if ( c _oSer _ColorThemeType . Tint == type ) color . Tint = this . stream . GetByte ( ) ; else if ( c _oSer _ColorThemeType . Shade == type ) color . Shade = this . stream . GetByte ( ) ; else res = c _oSerConstants . ReadUnknown ; return res } ; Binary _CommonReader . prototype . ReadBookmark = function ( type , length , bookmark ) { var res = c _oSerConstants . ReadOk ; if ( c _oSerBookmark . Id === type ) bookmark . BookmarkId = this . stream . GetULongLE ( ) ; else if ( c _oSerBookmark . Name === type ) bookmark . BookmarkName = this . stream . GetString2LE ( length ) ;
else res = c _oSerConstants . ReadUnknown ; return res } ; function FT _Stream2 ( data , size ) { this . obj = null ; this . data = data ; this . size = size ; this . pos = 0 ; this . cur = 0 ; this . bLast = false } FT _Stream2 . prototype . Seek = function ( _pos ) { if ( _pos > this . size ) return c _oSerConstants . ErrorStream ; this . pos = _pos ; return c _oSerConstants . ReadOk } ; FT _Stream2 . prototype . Seek2 = function ( _cur ) { if ( _cur > this . size ) return c _oSerConstants . ErrorStream ; this . cur = _cur ; return c _oSerConstants . ReadOk } ; FT _Stream2 . prototype . Skip = function ( _skip ) { if ( _skip < 0 ) return c _oSerConstants . ErrorStream ;
return this . Seek ( this . pos + _skip ) } ; FT _Stream2 . prototype . Skip2 = function ( _skip ) { if ( _skip < 0 ) return c _oSerConstants . ErrorStream ; return this . Seek2 ( this . cur + _skip ) } ; FT _Stream2 . prototype . GetUChar = function ( ) { if ( this . cur >= this . size ) return 0 ; return this . data [ this . cur ++ ] } ; FT _Stream2 . prototype . GetChar = function ( ) { if ( this . cur >= this . size ) return 0 ; var m = this . data [ this . cur ++ ] ; if ( m > 127 ) m -= 256 ; return m } ; FT _Stream2 . prototype . GetByte = function ( ) { return this . GetUChar ( ) } ; FT _Stream2 . prototype . GetBool = function ( ) { var Value =
this . GetUChar ( ) ; return Value == 0 ? false : true } ; FT _Stream2 . prototype . GetUShortLE = function ( ) { if ( this . cur + 1 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 } ; FT _Stream2 . prototype . GetShortLE = function ( ) { return AscFonts . FT _Common . UShort _To _Short ( this . GetUShortLE ( ) ) } ; FT _Stream2 . prototype . GetULongLE = function ( ) { if ( this . cur + 3 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 | this . data [ this . cur ++ ] << 16 | this . data [ this . cur ++ ] << 24 } ; FT _Stream2 . prototype . GetLongLE = function ( ) { return AscFonts . FT _Common . UintToInt ( this . GetULongLE ( ) ) } ;
FT _Stream2 . prototype . GetLong = function ( ) { return this . GetULongLE ( ) } ; FT _Stream2 . prototype . GetULong = function ( ) { return this . GetULongLE ( ) } ; var tempHelp = new ArrayBuffer ( 8 ) ; var tempHelpUnit = new Uint8Array ( tempHelp ) ; var tempHelpFloat = new Float64Array ( tempHelp ) ; FT _Stream2 . prototype . GetDoubleLE = function ( ) { if ( this . cur + 7 >= this . size ) return 0 ; tempHelpUnit [ 0 ] = this . GetUChar ( ) ; tempHelpUnit [ 1 ] = this . GetUChar ( ) ; tempHelpUnit [ 2 ] = this . GetUChar ( ) ; tempHelpUnit [ 3 ] = this . GetUChar ( ) ; tempHelpUnit [ 4 ] = this . GetUChar ( ) ; tempHelpUnit [ 5 ] =
this . GetUChar ( ) ; tempHelpUnit [ 6 ] = this . GetUChar ( ) ; tempHelpUnit [ 7 ] = this . GetUChar ( ) ; return tempHelpFloat [ 0 ] ; var arr = [ ] ; for ( var i = 0 ; i < 8 ; ++ i ) arr . push ( this . GetUChar ( ) ) ; return this . doubleDecodeLE754 ( arr ) } ; FT _Stream2 . prototype . doubleDecodeLE754 = function ( a ) { var s , e , m , i , d , nBits , mLen , eLen , eBias , eMax ; var el = { len : 8 , mLen : 52 , rt : 0 } ; mLen = el . mLen , eLen = el . len * 8 - el . mLen - 1 , eMax = ( 1 << eLen ) - 1 , eBias = eMax >> 1 ; i = el . len - 1 ; d = - 1 ; s = a [ i ] ; i += d ; nBits = - 7 ; for ( e = s & ( 1 << - nBits ) - 1 , s >>= - nBits , nBits += eLen ; nBits > 0 ; e = e * 256 + a [ i ] , i += d , nBits -= 8 ) ;
for ( m = e & ( 1 << - nBits ) - 1 , e >>= - nBits , nBits += mLen ; nBits > 0 ; m = m * 256 + a [ i ] , i += d , nBits -= 8 ) ; switch ( e ) { case 0 : e = 1 - eBias ; break ; case eMax : return m ? NaN : ( s ? - 1 : 1 ) * Infinity ; default : m = m + Math . pow ( 2 , mLen ) ; e = e - eBias ; break } return ( s ? - 1 : 1 ) * m * Math . pow ( 2 , e - mLen ) } ; FT _Stream2 . prototype . GetUOffsetLE = function ( ) { if ( this . cur + 2 >= this . size ) return c _oSerConstants . ReadOk ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 | this . data [ this . cur ++ ] << 16 } ; FT _Stream2 . prototype . GetString2 = function ( ) { var Len = this . GetLong ( ) ; return this . GetString2LE ( Len ) } ;
FT _Stream2 . prototype . GetString2LE = function ( len ) { if ( this . cur + len > this . size ) return "" ; var a = [ ] ; for ( var i = 0 ; i + 1 < len ; i += 2 ) a . push ( String . fromCharCode ( this . data [ this . cur + i ] | this . data [ this . cur + i + 1 ] << 8 ) ) ; this . cur += len ; return a . join ( "" ) } ; FT _Stream2 . prototype . GetString = function ( ) { var Len = this . GetLong ( ) ; if ( this . cur + 2 * Len > this . size ) return "" ; var t = "" ; for ( var i = 0 ; i + 1 < 2 * Len ; i += 2 ) { var uni = this . data [ this . cur + i ] ; uni |= this . data [ this . cur + i + 1 ] << 8 ; t += String . fromCharCode ( uni ) } this . cur += 2 * Len ; return t } ; FT _Stream2 . prototype . GetCurPos =
function ( ) { return this . cur } ; FT _Stream2 . prototype . GetSize = function ( ) { return this . size } ; FT _Stream2 . prototype . EnterFrame = function ( count ) { if ( this . size - this . pos < count ) return c _oSerConstants . ErrorStream ; this . cur = this . pos ; this . pos += count ; return c _oSerConstants . ReadOk } ; FT _Stream2 . prototype . GetDouble = function ( ) { var dRes = 0 ; dRes |= this . GetUChar ( ) ; dRes |= this . GetUChar ( ) << 8 ; dRes |= this . GetUChar ( ) << 16 ; dRes |= this . GetUChar ( ) << 24 ; dRes /= 1E5 ; return dRes } ; FT _Stream2 . prototype . GetBuffer = function ( length ) { var res = new Array ( length ) ;
for ( var i = 0 ; i < length ; ++ i ) res [ i ] = this . data [ this . cur ++ ] ; return res } ; FT _Stream2 . prototype . ToFileStream = function ( ) { var res = new AscCommon . FileStream ; this . ToFileStream2 ( res ) ; return res } ; FT _Stream2 . prototype . ToFileStream2 = function ( stream ) { stream . obj = this . obj ; stream . data = this . data ; stream . size = this . size ; stream . pos = this . pos ; stream . cur = this . cur } ; FT _Stream2 . prototype . FromFileStream = function ( stream ) { this . obj = stream . obj ; this . data = stream . data ; this . size = stream . size ; this . pos = stream . pos ; this . cur = stream . cur } ; FT _Stream2 . prototype . XlsbReadRecordType =
function ( ) { var nValue = this . GetUChar ( ) ; if ( 0 != ( nValue & 128 ) ) { var nPart = this . GetUChar ( ) ; nValue = nValue & 127 | ( nPart & 127 ) << 7 } return nValue } ; FT _Stream2 . prototype . XlsbSkipRecord = function ( ) { this . Skip2 ( this . XlsbReadRecordLength ( ) ) } ; FT _Stream2 . prototype . XlsbReadRecordLength = function ( ) { var nValue = 0 ; for ( var i = 0 ; i < 4 ; ++ i ) { var nPart = this . GetUChar ( ) ; nValue |= ( nPart & 127 ) << 7 * i ; if ( 0 == ( nPart & 128 ) ) break } return nValue } ; var gc _nMaxRow = 1048576 ; var gc _nMaxCol = 16384 ; var gc _nMaxRow0 = gc _nMaxRow - 1 ; var gc _nMaxCol0 = gc _nMaxCol - 1 ; function CellAddressUtils ( ) { this . _oCodeA =
"A" . charCodeAt ( 0 ) ; this . _aColnumToColstr = [ ] ; this . oCellAddressCache = { } ; this . colnumToColstrFromWsView = function ( col ) { var sResult = this . _aColnumToColstr [ col ] ; if ( null != sResult ) return sResult ; if ( col == 0 ) return "" ; var col0 = col - 1 ; var text = String . fromCharCode ( 65 + col0 % 26 ) ; return this . _aColnumToColstr [ col ] = col0 < 26 ? text : this . colnumToColstrFromWsView ( Math . floor ( col0 / 26 ) ) + text } ; this . colnumToColstr = function ( num ) { var sResult = this . _aColnumToColstr [ num ] ; if ( ! sResult ) { sResult = "" ; if ( num > 0 ) { var columnNumber = num ; var currentLetterNumber ;
while ( columnNumber > 0 ) { currentLetterNumber = ( columnNumber - 1 ) % 26 ; sResult = String . fromCharCode ( currentLetterNumber + 65 ) + sResult ; columnNumber = ( columnNumber - ( currentLetterNumber + 1 ) ) / 26 } } this . _aColnumToColstr [ num ] = sResult } return sResult } ; this . colstrToColnum = function ( col _str ) { var col _num = 0 ; for ( var i = 0 ; i < col _str . length ; ++ i ) col _num = 26 * col _num + ( col _str . charCodeAt ( i ) - this . _oCodeA + 1 ) ; return col _num } ; this . getCellId = function ( row , col ) { return g _oCellAddressUtils . colnumToColstr ( col + 1 ) + ( row + 1 ) } ; this . getCellAddress = function ( sId ) { var oRes =
this . oCellAddressCache [ sId ] ; if ( null == oRes ) { oRes = new CellAddress ( sId ) ; this . oCellAddressCache [ sId ] = oRes } return oRes } } var g _oCellAddressUtils = new CellAddressUtils ; function CellBase ( r , c ) { this . row = r ; this . col = c } CellBase . prototype . clean = function ( ) { this . row = 0 ; this . col = 0 } ; CellBase . prototype . clone = function ( ) { return new CellBase ( this . row , this . col ) } ; CellBase . prototype . isEqual = function ( cell ) { return this . row === cell . row && this . col === cell . col } ; CellBase . prototype . isEmpty = function ( ) { return 0 === this . row && 0 === this . col } ;
CellBase . prototype . getName = function ( ) { return g _oCellAddressUtils . colnumToColstr ( this . col + 1 ) + ( this . row + 1 ) } ; function CellAddress ( ) { var argc = arguments . length ; this . _valid = true ; this . _invalidId = false ; this . _invalidCoord = false ; this . id = null ; this . row = null ; this . col = null ; this . bRowAbs = false ; this . bColAbs = false ; this . bIsCol = false ; this . bIsRow = false ; this . colLetter = null ; if ( 1 == argc ) { this . id = arguments [ 0 ] . toUpperCase ( ) ; this . _invalidCoord = true ; this . _checkId ( ) } else if ( 2 == argc ) { this . row = arguments [ 0 ] ; this . col = arguments [ 1 ] ;
this . _checkCoord ( ) ; this . _invalidId = true } else if ( 3 == argc ) { this . row = arguments [ 0 ] + 1 ; this . col = arguments [ 1 ] + 1 ; this . _checkCoord ( ) ; this . _invalidId = true } } CellAddress . prototype = Object . create ( CellBase . prototype ) ; CellAddress . prototype . constructor = CellAddress ; CellAddress . prototype . _isDigit = function ( symbol ) { return "0" <= symbol && symbol <= "9" } ; CellAddress . prototype . _isAlpha = function ( symbol ) { return "A" <= symbol && symbol <= "Z" } ; CellAddress . prototype . _checkId = function ( ) { this . _invalidCoord = true ; this . _recalculate ( true , false ) ;
this . _checkCoord ( ) } ; CellAddress . prototype . _checkCoord = function ( ) { if ( ! ( this . row >= 1 && this . row <= gc _nMaxRow ) ) this . _valid = false ; else if ( ! ( this . col >= 1 && this . col <= gc _nMaxCol ) ) this . _valid = false ; else this . _valid = true } ; CellAddress . prototype . _recalculate = function ( bCoord , bId ) { if ( bCoord && this . _invalidCoord ) { this . _invalidCoord = false ; var sId = this . id ; this . row = this . col = 0 ; var indexes = { } , i = - 1 , indexesCount = 0 ; while ( ( i = sId . indexOf ( "$" , i + 1 ) ) != - 1 ) indexes [ i - indexesCount ++ ] = 1 ; if ( indexesCount <= 2 ) { if ( indexesCount > 0 ) sId = sId . replace ( /\$/g ,
"" ) ; var nIdLength = sId . length ; if ( nIdLength > 0 ) { var nIndex = 0 ; while ( this . _isAlpha ( sId . charAt ( nIndex ) ) && nIndex < nIdLength ) nIndex ++ ; if ( 0 == nIndex ) { this . bIsRow = true ; this . col = 1 ; this . colLetter = g _oCellAddressUtils . colnumToColstr ( this . col ) ; this . row = sId . substring ( nIndex ) - 0 ; if ( null != indexes [ 0 ] ) { this . bRowAbs = true ; indexesCount -- } } else if ( nIndex == nIdLength ) { this . bIsCol = true ; this . colLetter = sId ; this . col = g _oCellAddressUtils . colstrToColnum ( this . colLetter ) ; this . row = 1 ; if ( null != indexes [ 0 ] ) { this . bColAbs = true ; indexesCount -- } } else { this . colLetter =
sId . substring ( 0 , nIndex ) ; this . col = g _oCellAddressUtils . colstrToColnum ( this . colLetter ) ; this . row = sId . substring ( nIndex ) - 0 ; if ( null != indexes [ 0 ] ) { this . bColAbs = true ; indexesCount -- } if ( null != indexes [ nIndex ] ) { this . bRowAbs = true ; indexesCount -- } } if ( indexesCount > 0 ) this . row = this . col = 0 } } } else if ( bId && this . _invalidId ) { this . _invalidId = false ; this . colLetter = g _oCellAddressUtils . colnumToColstr ( this . col ) ; if ( this . bIsCol ) this . id = this . colLetter ; else if ( this . bIsRow ) this . id = this . row ; else this . id = this . colLetter + this . row } } ; CellAddress . prototype . isValid =
function ( ) { return this . _valid } ; CellAddress . prototype . getID = function ( ) { this . _recalculate ( false , true ) ; return this . id } ; CellAddress . prototype . getIDAbsolute = function ( ) { this . _recalculate ( true , false ) ; return "$" + this . getColLetter ( ) + "$" + this . getRow ( ) } ; CellAddress . prototype . getRow = function ( ) { this . _recalculate ( true , false ) ; return this . row } ; CellAddress . prototype . getRow0 = function ( ) { this . _recalculate ( true , false ) ; return this . row - 1 } ; CellAddress . prototype . getRowAbs = function ( ) { this . _recalculate ( true , false ) ; return this . bRowAbs } ;
CellAddress . prototype . getIsRow = function ( ) { this . _recalculate ( true , false ) ; return this . bIsRow } ; CellAddress . prototype . getCol = function ( ) { this . _recalculate ( true , false ) ; return this . col } ; CellAddress . prototype . getCol0 = function ( ) { this . _recalculate ( true , false ) ; return this . col - 1 } ; CellAddress . prototype . getColAbs = function ( ) { this . _recalculate ( true , false ) ; return this . bColAbs } ; CellAddress . prototype . getIsCol = function ( ) { this . _recalculate ( true , false ) ; return this . bIsCol } ; CellAddress . prototype . getColLetter = function ( ) { this . _recalculate ( false ,
true ) ; return this . colLetter } ; CellAddress . prototype . setRow = function ( val ) { if ( ! ( this . row >= 0 && this . row <= gc _nMaxRow ) ) this . _valid = false ; this . _invalidId = true ; this . row = val } ; CellAddress . prototype . setCol = function ( val ) { if ( ! ( val >= 0 && val <= gc _nMaxCol ) ) return ; this . _invalidId = true ; this . col = val } ; CellAddress . prototype . setId = function ( val ) { this . _invalidCoord = true ; this . id = val ; this . _checkId ( ) } ; CellAddress . prototype . moveRow = function ( diff ) { var val = this . row + diff ; if ( ! ( val >= 0 && val <= gc _nMaxRow ) ) return ; this . _invalidId = true ; this . row =
val } ; CellAddress . prototype . moveCol = function ( diff ) { var val = this . col + diff ; if ( ! ( val >= 0 && val <= gc _nMaxCol ) ) return ; this . _invalidId = true ; this . col = val } ; function isRealObject ( obj ) { return obj !== null && typeof obj === "object" } function FileStream ( data , size ) { this . obj = null ; this . data = data ; this . size = size ; this . pos = 0 ; this . cur = 0 ; this . Seek = function ( _pos ) { if ( _pos > this . size ) return 1 ; this . pos = _pos ; return 0 } ; this . Seek2 = function ( _cur ) { if ( _cur > this . size ) return 1 ; this . cur = _cur ; return 0 } ; this . Skip = function ( _skip ) { if ( _skip < 0 ) return 1 ;
return this . Seek ( this . pos + _skip ) } ; this . Skip2 = function ( _skip ) { if ( _skip < 0 ) return 1 ; return this . Seek2 ( this . cur + _skip ) } ; this . GetUChar = function ( ) { if ( this . cur >= this . size ) return 0 ; return this . data [ this . cur ++ ] } ; this . GetBool = function ( ) { if ( this . cur >= this . size ) return 0 ; return this . data [ this . cur ++ ] == 1 ? true : false } ; this . GetUShort = function ( ) { if ( this . cur + 1 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 } ; this . GetULong = function ( ) { if ( this . cur + 3 >= this . size ) return 0 ; var r = this . data [ this . cur ++ ] |
this . data [ this . cur ++ ] << 8 | this . data [ this . cur ++ ] << 16 | this . data [ this . cur ++ ] << 24 ; if ( r < 0 ) r += 4294967295 + 1 ; return r } ; this . GetLong = function ( ) { if ( this . cur + 3 >= this . size ) return 0 ; return this . data [ this . cur ++ ] | this . data [ this . cur ++ ] << 8 | this . data [ this . cur ++ ] << 16 | this . data [ this . cur ++ ] << 24 } ; this . GetDouble = function ( ) { if ( this . cur + 7 >= this . size ) return 0 ; tempHelpUnit [ 0 ] = this . GetUChar ( ) ; tempHelpUnit [ 1 ] = this . GetUChar ( ) ; tempHelpUnit [ 2 ] = this . GetUChar ( ) ; tempHelpUnit [ 3 ] = this . GetUChar ( ) ; tempHelpUnit [ 4 ] = this . GetUChar ( ) ; tempHelpUnit [ 5 ] =
this . GetUChar ( ) ; tempHelpUnit [ 6 ] = this . GetUChar ( ) ; tempHelpUnit [ 7 ] = this . GetUChar ( ) ; return tempHelpFloat [ 0 ] } ; this . GetString = function ( len ) { len *= 2 ; if ( this . cur + len > this . size ) return "" ; var t = "" ; for ( var i = 0 ; i < len ; i += 2 ) { var _c = this . data [ this . cur + i + 1 ] << 8 | this . data [ this . cur + i ] ; if ( _c == 0 ) break ; t += String . fromCharCode ( _c ) } this . cur += len ; return t } ; this . GetString1 = function ( len ) { if ( this . cur + len > this . size ) return "" ; var t = "" ; for ( var i = 0 ; i < len ; i ++ ) { var _c = this . data [ this . cur + i ] ; if ( _c == 0 ) break ; t += String . fromCharCode ( _c ) } this . cur +=
len ; return t } ; this . GetString2 = function ( ) { var len = this . GetULong ( ) ; return this . GetString ( len ) } ; this . GetString2A = function ( ) { var len = this . GetULong ( ) ; return this . GetString1 ( len ) } ; this . EnterFrame = function ( count ) { if ( this . pos >= this . size || this . size - this . pos < count ) return 1 ; this . cur = this . pos ; this . pos += count ; return 0 } ; this . SkipRecord = function ( ) { var _len = this . GetULong ( ) ; this . Skip2 ( _len ) } ; this . GetPercentage = function ( ) { var s = this . GetString2 ( ) ; var _len = s . length ; if ( _len == 0 ) return null ; var _ret = null ; if ( _len - 1 == s . indexOf ( "%" ) ) { s . substring ( 0 ,
_len - 1 ) ; _ret = parseFloat ( s ) ; if ( isNaN ( _ret ) ) _ret = null } else { _ret = parseFloat ( s ) ; if ( isNaN ( _ret ) ) _ret = null ; else _ret /= 1E3 } return _ret } } function GetUTF16 _fromUnicodeChar ( code ) { if ( code < 65536 ) return String . fromCharCode ( code ) ; else { code -= 65536 ; return String . fromCharCode ( 55296 | code >> 10 & 1023 ) + String . fromCharCode ( 56320 | code & 1023 ) } } function GetStringUtf8 ( reader , len ) { if ( reader . cur + len > reader . size ) return "" ; var _res = "" ; var end = reader . cur + len ; var val = 0 ; while ( reader . cur < end ) { var byteMain = reader . data [ reader . cur ] ; if ( 0 ==
( byteMain & 128 ) ) { _res += GetUTF16 _fromUnicodeChar ( byteMain ) ; ++ reader . cur } else if ( 0 == ( byteMain & 32 ) ) { val = ( byteMain & 31 ) << 6 | reader . data [ reader . cur + 1 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 2 } else if ( 0 == ( byteMain & 16 ) ) { val = ( byteMain & 15 ) << 12 | ( reader . data [ reader . cur + 1 ] & 63 ) << 6 | reader . data [ reader . cur + 2 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 3 } else if ( 0 == ( byteMain & 8 ) ) { val = ( byteMain & 7 ) << 18 | ( reader . data [ reader . cur + 1 ] & 63 ) << 12 | ( reader . data [ reader . cur + 2 ] & 63 ) << 6 | reader . data [ reader . cur + 3 ] & 63 ;
_res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 4 } else if ( 0 == ( byteMain & 4 ) ) { val = ( byteMain & 3 ) << 24 | ( reader . data [ reader . cur + 1 ] & 63 ) << 18 | ( reader . data [ reader . cur + 2 ] & 63 ) << 12 | ( reader . data [ reader . cur + 3 ] & 63 ) << 6 | reader . data [ reader . cur + 4 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ; reader . cur += 5 } else { val = ( byteMain & 1 ) << 30 | ( reader . data [ reader . cur + 1 ] & 63 ) << 24 | ( reader . data [ reader . cur + 2 ] & 63 ) << 18 | ( reader . data [ reader . cur + 3 ] & 63 ) << 12 | ( reader . data [ reader . cur + 4 ] & 63 ) << 6 | reader . data [ reader . cur + 5 ] & 63 ; _res += GetUTF16 _fromUnicodeChar ( val ) ;
reader . cur += 6 } } return _res } window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . c _oSerConstants = c _oSerConstants ; window [ "AscCommon" ] . c _oSerPropLenType = c _oSerPropLenType ; window [ "AscCommon" ] . c _oSer _ColorType = c _oSer _ColorType ; window [ "AscCommon" ] . c _oSerBorderType = c _oSerBorderType ; window [ "AscCommon" ] . c _oSerBordersType = c _oSerBordersType ; window [ "AscCommon" ] . c _oSerPaddingType = c _oSerPaddingType ; window [ "AscCommon" ] . BinaryCommonWriter = BinaryCommonWriter ; window [ "AscCommon" ] . Binary _CommonReader = Binary _CommonReader ;
window [ "AscCommon" ] . FT _Stream2 = FT _Stream2 ; window [ "AscCommon" ] . gc _nMaxRow = gc _nMaxRow ; window [ "AscCommon" ] . gc _nMaxCol = gc _nMaxCol ; window [ "AscCommon" ] . gc _nMaxRow0 = gc _nMaxRow0 ; window [ "AscCommon" ] . gc _nMaxCol0 = gc _nMaxCol0 ; window [ "AscCommon" ] . g _oCellAddressUtils = g _oCellAddressUtils ; window [ "AscCommon" ] . CellBase = CellBase ; window [ "AscCommon" ] . CellAddress = CellAddress ; window [ "AscCommon" ] . isRealObject = isRealObject ; window [ "AscCommon" ] . FileStream = FileStream ; window [ "AscCommon" ] . GetStringUtf8 = GetStringUtf8 ; window [ "AscCommon" ] . g _nodeAttributeStart =
250 ; window [ "AscCommon" ] . g _nodeAttributeEnd = 251 } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var AscBrowser = AscCommon . AscBrowser ; var locktype _None = AscCommon . locktype _None ; var locktype _Mine = AscCommon . locktype _Mine ; var locktype _Other = AscCommon . locktype _Other ; var locktype _Other2 = AscCommon . locktype _Other2 ; var locktype _Other3 = AscCommon . locktype _Other3 ; var contentchanges _Add = AscCommon . contentchanges _Add ; var CColor = AscCommon . CColor ; var g _oCellAddressUtils = AscCommon . g _oCellAddressUtils ; var c _oAscFileType = Asc . c _oAscFileType ; if ( typeof String . prototype . startsWith !== "function" ) { String . prototype . startsWith =
function ( str ) { return this . indexOf ( str ) === 0 } ; String . prototype [ "startsWith" ] = String . prototype . startsWith } if ( typeof String . prototype . endsWith !== "function" ) { String . prototype . endsWith = function ( suffix ) { return this . indexOf ( suffix , this . length - suffix . length ) !== - 1 } ; String . prototype [ "endsWith" ] = String . prototype . endsWith } if ( typeof String . prototype . repeat !== "function" ) { String . prototype . repeat = function ( count ) { if ( this == null ) throw new TypeError ( "can't convert " + this + " to object" ) ; var str = "" + this ; count = + count ; if ( count !=
count ) count = 0 ; if ( count < 0 ) throw new RangeError ( "repeat count must be non-negative" ) ; if ( count == Infinity ) throw new RangeError ( "repeat count must be less than infinity" ) ; count = Math . floor ( count ) ; if ( str . length == 0 || count == 0 ) return "" ; if ( str . length * count >= 1 << 28 ) throw new RangeError ( "repeat count must not overflow maximum string size" ) ; var rpt = "" ; for ( ; ; ) { if ( ( count & 1 ) == 1 ) rpt += str ; count >>>= 1 ; if ( count == 0 ) break ; str += str } return rpt } ; String . prototype [ "repeat" ] = String . prototype . repeat } if ( typeof String . prototype . padStart !==
"function" ) { String . prototype . padStart = function padStart ( targetLength , padString ) { targetLength = targetLength >> 0 ; padString = String ( padString || " " ) ; if ( this . length > targetLength ) return String ( this ) ; else { targetLength = targetLength - this . length ; if ( targetLength > padString . length ) padString += padString . repeat ( targetLength / padString . length ) ; return padString . slice ( 0 , targetLength ) + String ( this ) } } ; String . prototype [ "padStart" ] = String . prototype . padStart } Number . isInteger = Number . isInteger || function ( value ) { return typeof value ===
"number" && Number . isFinite ( value ) && ! ( value % 1 ) } ; Number . isFinite = Number . isFinite || function ( value ) { return typeof value === "number" && isFinite ( value ) } ; String . prototype . strongMatch = function ( regExp ) { if ( regExp && regExp instanceof RegExp ) { var arr = this . toString ( ) . match ( regExp ) ; return ! ! ( arr && arr . length > 0 && arr [ 0 ] . length == this . length ) } return false } ; if ( typeof require === "function" && ! window [ "XRegExp" ] ) window [ "XRegExp" ] = require ( "xregexp" ) ; var oZipImages = null ; var sDownloadServiceLocalUrl = "../../../../downloadas" ; var sUploadServiceLocalUrl =
"../../../../upload" ; var sUploadServiceLocalUrlOld = "../../../../uploadold" ; var sSaveFileLocalUrl = "../../../../savefile" ; var nMaxRequestLength = 5242880 ; function getSockJs ( ) { return window [ "SockJS" ] || require ( "sockjs" ) } function getJSZipUtils ( ) { return window [ "JSZipUtils" ] || require ( "jsziputils" ) } function getJSZip ( ) { return window [ "JSZip" ] || require ( "jszip" ) } function JSZipWrapper ( ) { this . files = { } } JSZipWrapper . prototype . loadAsync = function ( data , options ) { var t = this ; if ( window [ "native" ] ) return new Promise ( function ( resolve ,
reject ) { var retFiles = null ; if ( options && options [ "base64" ] === true ) retFiles = window [ "native" ] [ "ZipOpenBase64" ] ( data ) ; else retFiles = window [ "native" ] [ "ZipOpen" ] ( data ) ; if ( null != retFiles ) { for ( var id in retFiles ) t . files [ id ] = new JSZipObjectWrapper ( retFiles [ id ] ) ; resolve ( t ) } else reject ( new Error ( "Failed archive" ) ) } ) ; return AscCommon . getJSZip ( ) . loadAsync ( data , options ) . then ( function ( zip ) { for ( var id in zip . files ) t . files [ id ] = new JSZipObjectWrapper ( zip . files [ id ] ) ; return t } ) } ; JSZipWrapper . prototype . close = function ( ) { if ( window [ "native" ] ) window [ "native" ] [ "ZipClose" ] ( ) } ;
function JSZipObjectWrapper ( data ) { this . data = data } JSZipObjectWrapper . prototype . async = function ( type ) { if ( window [ "native" ] ) { var t = this ; return new Promise ( function ( resolve , reject ) { var ret = window [ "native" ] [ "ZipFileAsString" ] ( t . data ) ; if ( null != ret ) resolve ( ret ) ; else reject ( new Error ( "Failed file in archive" ) ) } ) } return this . data . async ( type ) } ; function getBaseUrl ( ) { var indexHtml = window [ "location" ] [ "href" ] ; var questInd = indexHtml . indexOf ( "?" ) ; if ( questInd > 0 ) indexHtml = indexHtml . substring ( 0 , questInd ) ; return indexHtml . substring ( 0 ,
indexHtml . lastIndexOf ( "/" ) + 1 ) } function getEncodingParams ( ) { var res = [ ] ; for ( var i = 0 ; i < AscCommon . c _oAscEncodings . length ; ++ i ) { var encoding = AscCommon . c _oAscEncodings [ i ] ; var newElem = { "codepage" : encoding [ 0 ] , "lcid" : encoding [ 1 ] , "name" : encoding [ 3 ] } ; res . push ( newElem ) } return res } function getEncodingByBOM ( data ) { var res = { encoding : AscCommon . c _oAscCodePageNone , size : 0 } ; if ( data . length >= 2 ) { res . size = 2 ; if ( 255 == data [ 0 ] && 254 == data [ 1 ] ) res . encoding = AscCommon . c _oAscCodePageUtf16 ; else if ( 254 == data [ 0 ] && 255 == data [ 1 ] ) res . encoding =
AscCommon . c _oAscCodePageUtf16BE ; else if ( data . length >= 3 ) { res . size = 3 ; if ( 239 == data [ 0 ] && 187 == data [ 1 ] && 191 == data [ 2 ] ) res . encoding = AscCommon . c _oAscCodePageUtf8 ; else if ( data . length >= 4 ) { res . size = 4 ; if ( 255 == data [ 0 ] && 254 == data [ 1 ] && 0 == data [ 2 ] && 0 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf32 ; else if ( 0 == data [ 0 ] && 0 == data [ 1 ] && 254 == data [ 2 ] && 255 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf32BE ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 56 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 ==
data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 57 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 43 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 ; else if ( 43 == data [ 0 ] && 47 == data [ 1 ] && 118 == data [ 2 ] && 47 == data [ 3 ] ) res . encoding = AscCommon . c _oAscCodePageUtf7 } } } return res } function DocumentUrls ( ) { this . urls = { } ; this . urlsReverse = { } ; this . documentUrl = "" ; this . imageCount = 0 } DocumentUrls . prototype = { mediaPrefix : "media/" , init : function ( urls ) { this . addUrls ( urls ) } , getUrls : function ( ) { return this . urls } ,
addUrls : function ( urls ) { for ( var i in urls ) { var url = urls [ i ] ; this . urls [ i ] = url ; this . urlsReverse [ url ] = i ; this . imageCount ++ } if ( window [ "IS_NATIVE_EDITOR" ] ) window [ "native" ] [ "setUrlsCount" ] ( this . imageCount ) } , addImageUrl : function ( strPath , url ) { var urls = { } ; urls [ this . mediaPrefix + strPath ] = url ; this . addUrls ( urls ) } , getImageUrl : function ( strPath ) { return this . getUrl ( this . mediaPrefix + strPath ) } , getImageLocal : function ( url ) { if ( url && 0 === url . indexOf ( "data:image" ) ) return null ; var imageLocal = this . getLocal ( url ) ; if ( imageLocal &&
this . mediaPrefix == imageLocal . substring ( 0 , this . mediaPrefix . length ) ) imageLocal = imageLocal . substring ( this . mediaPrefix . length ) ; return imageLocal } , imagePath2Local : function ( imageLocal ) { if ( imageLocal && this . mediaPrefix == imageLocal . substring ( 0 , this . mediaPrefix . length ) ) imageLocal = imageLocal . substring ( this . mediaPrefix . length ) ; return imageLocal } , getUrl : function ( strPath ) { if ( this . urls ) return this . urls [ strPath ] ; return null } , getLocal : function ( url ) { if ( this . urlsReverse ) { var res = this . urlsReverse [ url ] ; if ( ! res && typeof editor !==
"undefined" && editor . ThemeLoader && 0 == url . indexOf ( editor . ThemeLoader . ThemesUrlAbs ) ) res = url . substring ( editor . ThemeLoader . ThemesUrlAbs . length ) ; return res } return null } , getMaxIndex : function ( url ) { return this . imageCount } , getImageUrlsWithOtherExtention : function ( imageLocal ) { var res = [ ] ; var filename = GetFileName ( imageLocal ) ; for ( var i in this . urls ) if ( 0 == i . indexOf ( this . mediaPrefix + filename + "." ) && this . mediaPrefix + imageLocal !== i ) res . push ( this . urls [ i ] ) ; return res } } ; var g _oDocumentUrls = new DocumentUrls ; function CHTMLCursor ( ) { this . map =
{ } ; this . mapRetina = { } ; this . value = function ( param ) { var ret = this . map [ param ] ; if ( AscCommon . AscBrowser . isRetina && this . mapRetina [ param ] ) ret = this . mapRetina [ param ] ; return ret ? ret : param } ; this . register = function ( type , name , target , default _css _value ) { if ( AscBrowser . isIE || AscBrowser . isIeEdge ) { this . map [ type ] = "url(../../../../sdkjs/common/Images/cursors/" + name + ".cur), " + default _css _value ; this . mapRetina [ type ] = "url(../../../../sdkjs/common/Images/cursors/" + name + "_2x.cur), " + default _css _value } else if ( window . opera ) this . map [ type ] =
default _css _value ; else if ( ! AscCommon . AscBrowser . isChrome && ! AscCommon . AscBrowser . isSafari ) this . map [ type ] = "url('../../../../sdkjs/common/Images/cursors/" + name + ".svg') " + target + ", url('../../../../sdkjs/common/Images/cursors/" + name + ".png') " + target + ", " + default _css _value ; else this . map [ type ] = "-webkit-image-set(url(../../../../sdkjs/common/Images/cursors/" + name + ".png) 1x," + " url(../../../../sdkjs/common/Images/cursors/" + name + "_2x.png) 2x) " + target + ", " + default _css _value } } function OpenFileResult ( ) { this . bSerFormat =
false ; this . data = null ; this . url = null ; this . changes = null } function saveWithParts ( fSendCommand , fCallback , fCallbackRequest , oAdditionalData , dataContainer ) { var index = dataContainer . index ; if ( null == dataContainer . part && ( ! dataContainer . data || dataContainer . data . length <= nMaxRequestLength ) ) oAdditionalData [ "savetype" ] = AscCommon . c _oAscSaveTypes . CompleteAll ; else { if ( 0 == index ) { oAdditionalData [ "savetype" ] = AscCommon . c _oAscSaveTypes . PartStart ; dataContainer . count = Math . ceil ( dataContainer . data . length / nMaxRequestLength ) } else if ( index !=
dataContainer . count - 1 ) oAdditionalData [ "savetype" ] = AscCommon . c _oAscSaveTypes . Part ; else oAdditionalData [ "savetype" ] = AscCommon . c _oAscSaveTypes . Complete ; if ( typeof dataContainer . data === "string" ) dataContainer . part = dataContainer . data . substring ( index * nMaxRequestLength , ( index + 1 ) * nMaxRequestLength ) ; else dataContainer . part = dataContainer . data . subarray ( index * nMaxRequestLength , ( index + 1 ) * nMaxRequestLength ) } dataContainer . index ++ ; oAdditionalData [ "saveindex" ] = dataContainer . index ; fSendCommand ( function ( incomeObject ,
done , status ) { if ( null != incomeObject && "ok" == incomeObject [ "status" ] ) if ( dataContainer . index < dataContainer . count ) { oAdditionalData [ "savekey" ] = incomeObject [ "data" ] ; saveWithParts ( fSendCommand , fCallback , fCallbackRequest , oAdditionalData , dataContainer ) } else { if ( fCallbackRequest ) fCallbackRequest ( incomeObject , status ) } else fCallbackRequest ? fCallbackRequest ( incomeObject , status ) : fCallback ( incomeObject , status ) } , oAdditionalData , dataContainer ) } function loadFileContent ( url , callback , opt _responseType ) { asc _ajax ( { url : url ,
dataType : "text" , responseType : opt _responseType , success : callback , error : function ( ) { callback ( null ) } } ) } function getImageFromChanges ( name ) { var content ; var ext = GetFileExtension ( name ) ; if ( "svg" === ext ) ext += "+xml" ; if ( null !== ext && oZipImages && ( content = oZipImages [ name ] ) ) return "data:image/" + ext + ";base64," + AscCommon . Base64Encode ( content , content . length , 0 ) ; return null } function initStreamFromResponse ( httpRequest ) { var stream ; if ( typeof ArrayBuffer !== "undefined" ) stream = new Uint8Array ( httpRequest . response ) ; else if ( AscCommon . AscBrowser . isIE ) { var _response =
( new VBArray ( httpRequest [ "responseBody" ] ) ) . toArray ( ) ; var srcLen = _response . length ; var pointer = g _memory . Alloc ( srcLen ) ; var tempStream = new AscCommon . FT _Stream2 ( pointer . data , srcLen ) ; tempStream . obj = pointer . obj ; stream = tempStream . data ; var index = 0 ; while ( index < srcLen ) { stream [ index ] = _response [ index ] ; index ++ } } return stream } function checkStreamSignature ( stream , Signature ) { if ( stream . length > Signature . length ) { for ( var i = 0 ; i < Signature . length ; ++ i ) if ( stream [ i ] !== Signature . charCodeAt ( i ) ) return false ; return true } return false }
function openFileCommand ( binUrl , changesUrl , Signature , callback ) { var bError = false , oResult = new OpenFileResult , bEndLoadFile = false , bEndLoadChanges = false ; var onEndOpen = function ( ) { if ( bEndLoadFile && bEndLoadChanges ) if ( callback ) callback ( bError , oResult ) } ; var sFileUrl = binUrl ; sFileUrl = sFileUrl . replace ( /\\/g , "/" ) ; if ( ! window [ "IS_NATIVE_EDITOR" ] ) loadFileContent ( sFileUrl , function ( httpRequest ) { var url ; var nIndex = sFileUrl . lastIndexOf ( "/" ) ; url = - 1 !== nIndex ? sFileUrl . substring ( 0 , nIndex + 1 ) : sFileUrl ; if ( httpRequest ) { var stream =
initStreamFromResponse ( httpRequest ) ; if ( stream ) { oResult . bSerFormat = checkStreamSignature ( stream , Signature ) ; oResult . data = stream } else bError = true } else bError = true ; bEndLoadFile = true ; onEndOpen ( ) } , "arraybuffer" ) ; if ( changesUrl ) { oZipImages = { } ; getJSZipUtils ( ) . getBinaryContent ( changesUrl , function ( err , data ) { if ( err ) { bEndLoadChanges = true ; bError = true ; onEndOpen ( ) ; return } oResult . changes = [ ] ; getJSZip ( ) . loadAsync ( data ) . then ( function ( zipChanges ) { var relativePaths = [ ] ; var promises = [ ] ; zipChanges . forEach ( function ( relativePath ,
file ) { relativePaths . push ( relativePath ) ; promises . push ( file . async ( relativePath . endsWith ( ".json" ) ? "string" : "uint8array" ) ) } ) ; Promise . all ( promises ) . then ( function ( values ) { var relativePath ; for ( var i = 0 ; i < values . length ; ++ i ) if ( ( relativePath = relativePaths [ i ] ) . endsWith ( ".json" ) ) oResult . changes [ parseInt ( relativePath . slice ( "changes" . length ) ) ] = JSON . parse ( values [ i ] ) ; else oZipImages [ relativePath ] = values [ i ] ; bEndLoadChanges = true ; onEndOpen ( ) } ) } ) } ) } else { oZipImages = null ; bEndLoadChanges = true } if ( window [ "IS_NATIVE_EDITOR" ] ) { var stream =
window [ "native" ] [ "openFileCommand" ] ( sFileUrl , changesUrl , Signature ) ; var url ; var nIndex = sFileUrl . lastIndexOf ( "/" ) ; url = - 1 !== nIndex ? sFileUrl . substring ( 0 , nIndex + 1 ) : sFileUrl ; if ( stream ) { oResult . bSerFormat = checkStreamSignature ( stream , Signature ) ; oResult . data = stream } else bError = true ; bEndLoadFile = true ; onEndOpen ( ) } } function sendCommand ( editor , fCallback , rdata , dataContainer ) { var docConnectionId = editor . CoAuthoringApi . getDocId ( ) ; if ( docConnectionId && docConnectionId !== rdata [ "id" ] ) rdata [ "docconnectionid" ] = docConnectionId ;
if ( null == rdata [ "savetype" ] ) { editor . CoAuthoringApi . openDocument ( rdata ) ; return } rdata [ "userconnectionid" ] = editor . CoAuthoringApi . getUserConnectionId ( ) ; asc _ajax ( { type : "POST" , url : sDownloadServiceLocalUrl + "/" + rdata [ "id" ] + "?cmd=" + encodeURIComponent ( JSON . stringify ( rdata ) ) , data : dataContainer . part || dataContainer . data , contentType : "application/octet-stream" , error : function ( httpRequest , statusText , status ) { if ( fCallback ) fCallback ( null , true , status ) } , success : function ( httpRequest ) { if ( fCallback ) fCallback ( JSON . parse ( httpRequest . responseText ) ,
true ) } } ) } function sendSaveFile ( docId , userId , title , jwt , data , fError , fsuccess ) { var cmd = { "id" : docId , "userid" : userId , "tokenSession" : jwt , "outputpath" : title } ; asc _ajax ( { type : "POST" , url : sSaveFileLocalUrl + "/" + docId + "?cmd=" + encodeURIComponent ( JSON . stringify ( cmd ) ) , data : data , contentType : "application/octet-stream" , error : fError , success : fsuccess } ) } function mapAscServerErrorToAscError ( nServerError , nAction ) { var nRes = Asc . c _oAscError . ID . Unknown ; switch ( nServerError ) { case c _oAscServerError . NoError : nRes = Asc . c _oAscError . ID . No ;
break ; case c _oAscServerError . TaskQueue : case c _oAscServerError . TaskResult : nRes = Asc . c _oAscError . ID . Database ; break ; case c _oAscServerError . ConvertDownload : nRes = Asc . c _oAscError . ID . DownloadError ; break ; case c _oAscServerError . ConvertTimeout : case c _oAscServerError . ConvertDeadLetter : nRes = Asc . c _oAscError . ID . ConvertationTimeout ; break ; case c _oAscServerError . ConvertDRM : case c _oAscServerError . ConvertPASSWORD : nRes = Asc . c _oAscError . ID . ConvertationPassword ; break ; case c _oAscServerError . ConvertLIMITS : nRes = Asc . c _oAscError . ID . ConvertationOpenLimitError ;
break ; case c _oAscServerError . ConvertCONVERT _CORRUPTED : case c _oAscServerError . ConvertLIBREOFFICE : case c _oAscServerError . ConvertPARAMS : case c _oAscServerError . ConvertNEED _PARAMS : case c _oAscServerError . ConvertUnknownFormat : case c _oAscServerError . ConvertReadFile : case c _oAscServerError . Convert : nRes = AscCommon . c _oAscAdvancedOptionsAction . Save === nAction ? Asc . c _oAscError . ID . ConvertationSaveError : Asc . c _oAscError . ID . ConvertationOpenError ; break ; case c _oAscServerError . UploadContentLength : nRes = Asc . c _oAscError . ID . UplImageSize ;
break ; case c _oAscServerError . UploadExtension : nRes = Asc . c _oAscError . ID . UplImageExt ; break ; case c _oAscServerError . UploadCountFiles : nRes = Asc . c _oAscError . ID . UplImageFileCount ; break ; case c _oAscServerError . UploadURL : nRes = Asc . c _oAscError . ID . UplImageUrl ; break ; case c _oAscServerError . UploadDocumentContentLength : nRes = Asc . c _oAscError . ID . UplDocumentSize ; break ; case c _oAscServerError . UploadDocumentExtension : nRes = Asc . c _oAscError . ID . UplDocumentExt ; break ; case c _oAscServerError . UploadDocumentCountFiles : nRes = Asc . c _oAscError . ID . UplDocumentFileCount ;
break ; case c _oAscServerError . VKey : nRes = Asc . c _oAscError . ID . FileVKey ; break ; case c _oAscServerError . VKeyEncrypt : nRes = Asc . c _oAscError . ID . VKeyEncrypt ; break ; case c _oAscServerError . VKeyKeyExpire : nRes = Asc . c _oAscError . ID . KeyExpire ; break ; case c _oAscServerError . VKeyUserCountExceed : nRes = Asc . c _oAscError . ID . UserCountExceed ; break ; case c _oAscServerError . Storage : case c _oAscServerError . StorageFileNoFound : case c _oAscServerError . StorageRead : case c _oAscServerError . StorageWrite : case c _oAscServerError . StorageRemoveDir : case c _oAscServerError . StorageCreateDir : case c _oAscServerError . StorageGetInfo : case c _oAscServerError . Upload : case c _oAscServerError . ReadRequestStream : case c _oAscServerError . Unknown : nRes =
Asc . c _oAscError . ID . Unknown ; break } return nRes } function joinUrls ( base , relative ) { var stack = base . split ( "/" ) , parts = relative . split ( "/" ) ; stack . pop ( ) ; for ( var i = 0 ; i < parts . length ; i ++ ) { if ( parts [ i ] == "." ) continue ; if ( parts [ i ] == ".." ) stack . pop ( ) ; else stack . push ( parts [ i ] ) } return stack . join ( "/" ) } function getFullImageSrc2 ( src ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] ) return src ; var start = src . slice ( 0 , 6 ) ; if ( 0 === start . indexOf ( "theme" ) && editor . ThemeLoader ) return editor . ThemeLoader . ThemesUrlAbs + src ; if ( 0 !== start . indexOf ( "http:" ) &&
0 !== start . indexOf ( "data:" ) && 0 !== start . indexOf ( "https:" ) && 0 !== start . indexOf ( "file:" ) && 0 !== start . indexOf ( "ftp:" ) ) { var srcFull = g _oDocumentUrls . getImageUrl ( src ) ; if ( srcFull ) return srcFull } return src } function fSortAscending ( a , b ) { return a - b } function fSortDescending ( a , b ) { return b - a } function isLeadingSurrogateChar ( nCharCode ) { return nCharCode >= 55296 && nCharCode <= 57343 } function decodeSurrogateChar ( nLeadingChar , nTrailingChar ) { if ( nLeadingChar < 56320 && nTrailingChar >= 56320 && nTrailingChar <= 57343 ) return 65536 + ( ( nLeadingChar &
1023 ) << 10 ) | nTrailingChar & 1023 ; else return null } function encodeSurrogateChar ( nUnicode ) { if ( nUnicode < 65536 ) return String . fromCharCode ( nUnicode ) ; else { nUnicode = nUnicode - 65536 ; var nLeadingChar = 55296 | nUnicode >> 10 ; var nTrailingChar = 56320 | nUnicode & 1023 ; return String . fromCharCode ( nLeadingChar ) + String . fromCharCode ( nTrailingChar ) } } function convertUnicodeToUTF16 ( sUnicode ) { var sUTF16 = "" ; var nLength = sUnicode . length ; for ( var nPos = 0 ; nPos < nLength ; nPos ++ ) sUTF16 += encodeSurrogateChar ( sUnicode [ nPos ] ) ; return sUTF16 } function convertUTF16toUnicode ( sUTF16 ) { var sUnicode =
[ ] ; var nLength = sUTF16 . length ; for ( var nPos = 0 ; nPos < nLength ; nPos ++ ) { var nUnicode = null ; var nCharCode = sUTF16 . charCodeAt ( nPos ) ; if ( isLeadingSurrogateChar ( nCharCode ) ) { if ( nPos + 1 < nLength ) { nPos ++ ; var nTrailingChar = sUTF16 . charCodeAt ( nPos ) ; nUnicode = decodeSurrogateChar ( nCharCode , nTrailingChar ) } } else nUnicode = nCharCode ; if ( null !== nUnicode ) sUnicode . push ( nUnicode ) } return sUnicode } function CUnicodeStringEmulator ( array ) { this . arr = array ; this . len = this . arr . length ; this . pos = 0 } CUnicodeStringEmulator . prototype = { getUnicodeIterator : function ( ) { return this } ,
isOutside : function ( ) { return this . pos >= this . len } , isInside : function ( ) { return this . pos < this . len } , value : function ( ) { if ( this . pos >= this . len ) return 0 ; return this . arr [ this . pos ] } , next : function ( ) { this . pos ++ } , position : function ( ) { return this . pos } } ; CUnicodeStringEmulator . prototype . check = CUnicodeStringEmulator . prototype . isInside ; function CUnicodeIterator ( str ) { this . _position = 0 ; this . _index = 0 ; this . _str = str } CUnicodeIterator . prototype = { isOutside : function ( ) { return this . _index >= this . _str . length } , isInside : function ( ) { return this . _index <
this . _str . length } , value : function ( ) { if ( this . _index >= this . _str . length ) return 0 ; var nCharCode = this . _str . charCodeAt ( this . _index ) ; if ( ! AscCommon . isLeadingSurrogateChar ( nCharCode ) ) return nCharCode ; if ( this . _str . length - 1 == this . _index ) return nCharCode ; var nTrailingChar = this . _str . charCodeAt ( this . _index + 1 ) ; return AscCommon . decodeSurrogateChar ( nCharCode , nTrailingChar ) } , next : function ( ) { if ( this . _index >= this . _str . length ) return ; this . _position ++ ; if ( ! AscCommon . isLeadingSurrogateChar ( this . _str . charCodeAt ( this . _index ) ) ) { ++ this . _index ;
return } if ( this . _index == this . _str . length - 1 ) { ++ this . _index ; return } this . _index += 2 } , position : function ( ) { return this . _position } } ; CUnicodeIterator . prototype . check = CUnicodeIterator . prototype . isInside ; String . prototype . getUnicodeIterator = function ( ) { return new CUnicodeIterator ( this ) } ; function test _ws _name2 ( ) { var str _namedRanges = " [ A - Z _\u0080 - \u0081\u0083\u0085 - \u0087\u0089 - \u008a\u008c - \u0091\u0093 - \u0094\u0096 - \u0097\u0099 - \u009a\u009c - \u009f\u00a1 - \u00a5\u00a7 - \u00a8\u00aa\u00ad\u00af - \u00ba\u00bc - \u02b8\u02bb - \u02c1\u02c7\u02c9 - \u02cb\u02cd\u02d0 - \u02d1\u02d8 - \u02db\u02dd\u02e0 - \u02e4\u02ee\u0370 - \u0373\u0376 - \u0377\u037a - \u037d\u0386\u0388 - \u038a\u038c\u038e - \u03a1\u03a3 - \u03f5\u03f7 - \u0481\u048a - \u0523\u0531 - \u0556\u0559\u0561 - \u0587\u05d0 - \u05ea\u05f0 - \u05f2\u0621 - \u064a\u066e - \u066f\u0671 - \u06d3\u06d5\u06e5 - \u06e6\u06ee - \u06ef\u06fa - \u06fc\u06ff\u0710\u0712 - \u072f\u074d - \u07a5\u07b1\u07ca - \u07ea\u07f4 - \u07f5\u07fa\u0904 - \u0939\u093d\u0950\u0958 - \u0961\u0971 - \u0972\u097b - \u097f\u0985 - \u098c\u098f - \u0990\u0993 - \u09a8\u09aa - \u09b0\u09b2\u09b6 - \u09b9\u09bd\u09ce\u09dc - \u09dd\u09df - \u09e1\u09f0 - \u09f1\u0a05 - \u0a0a\u0a0f - \u0a10\u0a13 - \u0a28\u0a2a - \u0a30\u0a32 - \u0a33\u0a35 - \u0a36\u0a38 - \u0a39\u0a59 - \u0a5c\u0a5e\u0a72 - \u0a74\u0a85 - \u0a8d\u0a8f - \u0a91\u0a93 - \u0aa8\u0aaa - \u0ab0\u0ab2 - \u0ab3\u0ab5 - \u0ab9\u0abd\u0ad0\u0ae0 - \u0ae1\u0b05 - \u0b0c\u0b0f - \u0b10\u0b13 - \u0b28\u0b2a - \u0b30\u0b32 - \u0b33\u0b35 - \u0b39\u0b3d\u0b5c - \u0b5d\u0b5f - \u0b61\u0b71\u0b83\u0b85 - \u0b8a\u0b8e - \u0b90\u0b92 - \u0b95\u0b99 - \u0b9a\u0b9c\u0b9e - \u0b9f\u0ba3 - \u0ba4\u0ba8 - \u0baa\u0bae - \u0bb9\u0bd0\u0c05 - \u0c0c\u0c0e - \u0c10\u0c12 - \u0c28\u0c2a - \u0c33\u0c35 - \u0c39\u0c3d\u0c58 - \u0c59\u0c60 - \u0c61\u0c85 - \u0c8c\u0c8e - \u0c90\u0c92 - \u0ca8\u0caa - \u0cb3\u0cb5 - \u0cb9\u0cbd\u0cde\u0ce0 - \u0ce1\u0d05 - \u0d0c\u0d0e - \u0d10\u0d12 - \u0d28\u0d2a - \u0d39\u0d3d\u0d60 - \u0d61\u0d7a - \u0d7f\u0d85 - \u0d96\u0d9a - \u0db1\u0db3 - \u0dbb\u0dbd\u0dc0 - \u0dc6\u0e01 - \u0e3a\u0e40 - \u0e4e\u0e81 - \u0e82\u0e84\u0e87 - \u0e88\u0e8a\u0e8d\u0e94 - \u0e97\u0e99 - \u0e9f\u0ea1 - \u0ea3\u0ea5\u0ea7\u0eaa - \u0eab\u0ead - \u0eb0\u0eb2 - \u0eb3\u0ebd\u0ec0 - \u0ec4\u0ec6\u0edc - \u0edd\u0f00\u0f40 - \u0f47\u0f49 - \u0f6c\u0f88 - \u0f8b\u1000 - \u102a\u103f\u1050 - \u1055\u105a - \u105d\u1061\u1065 - \u1066\u106e - \u1070\u1075 - \u1081\u108e\u10a0 - \u10c5\u10d0 - \u10fa\u10fc\u1100 - \u1159\u115f - \u11a2\u11a8 - \u11f9\u1200 - \u1248\u124a - \u124d\u1250 - \u1256\u1258\u125a - \u125d\u1260 - \u1288\u128a - \u128d\u1290 - \u12b0\u12b2 - \u12b5\u12b8 - \u12be\u12c0\u12c2 - \u12c5\u12c8 - \u12d6\u12d8 - \u1310\u1312 - \u1315\u1318 - \u135a\u1380 - \u138f\u13a0 - \u13f4\u1401 - \u166c\u166f - \u1676\u1681 - \u169a\u16a0 - \u16ea\u16ee - \u16f0\u1700 - \u170c\u170e - \u1711\u1720 - \u1731\u1740 - \u1751\u1760 - \u176c\u176e - \u1770\u1780 - \u17b3\u17d7\u17dc\u1820 - \u1877\u1880 - \u18a8\u18aa\u1900 - \u191c\u1950 - \u196d\u1970 - \u1974\u1980 - \u19a9\u19c1 - \u19c7\u1a00 - \u1a16\u1b05 - \u1b33\u1b45 - \u1b4b\u1b83 - \u1ba0\u1bae - \u1baf\u1c00 - \u1c23\u1c4d - \u1c4f\u1c5a - \u1c7d\u1d00 - \u1dbf\u1e00 - \u1f15\u1f18 - \u1f1d\u1f20 - \u1f45\u1f48 - \u1f4d\u1f50 - \u1f57\u1f59\u1f5b\u1f5d\u1f5f - \u1f7d\u1f80 - \u1fb4\u1fb6 - \u1fbc\u1fbe\u1fc2 - \u1fc4\u1fc6 - \u1fcc\u1fd0 - \u1fd3\u1fd6 - \u1fdb\u1fe0 - \u1fec\u1ff2 - \u1ff4\u1ff6 - \u1ffc\u2010\u2013 - \u2016\u2018\u201c - \u201d\u2020 - \u2021\u2025 - \u2027\u2030\u2032 - \u2033\u2035\u203b\u2071\u2074\u207f\u2081 - \u2084\u2090 - \u2094\u2102 - \u2103\u2105\u2107\u2109 - \u2113\u2115 - \u2116\u2119 - \u211d\u2121 - \u2122\u2124\u2126\u2128\u212a - \u212d\u212f - \u2139\u213c - \u213f\u2145 - \u2149\u214e\u2153 - \u2154\u215b - \u215e\u2160 - \u2188\u2190 - \u2199\u21d2\u21d4\u2200\u2202 - \u2203\u2207 - \u2208\u220b\u220f\u2211\u2215\u221a\u221d - \u2220\u2223\u2225\u2227 - \u222c\u222e\u2234 - \u2237\u223c - \u223d\u2248\u224c\u2252\u2260 - \u2261\u2264 - \u2267\u226a - \u226b\u226e - \u226f\u2282 - \u2283\u2286 - \u2287\u2295\u2299\u22a5\u22bf\u2312\u2460 - \u24b5\u24d0 - \u24e9\u2500 - \u254b\u2550 - \u2574\u2581 - \u258f\u2592 - \u2595\u25a0 - \u25a1\u25a3 - \u25a9\u25b2 - \u25b3\u25b6 - \u25b7\u25bc - \u25bd\u25c0 - \u25c1\u25c6 - \u25c8\u25cb\u25ce - \u25d1\u25e2 - \u25e5\u25ef\u2605 - \u2606\u2609\u260e - \u260f\u261c\u261e\u2640\u2642\u2660 - \u2661\u2663 - \u2665\u2667 - \u266a\u266c - \u266d\u266f\u2c00 - \u2c2e\u2c30 - \u2c5e \
str _namedSheetsRange = " \u0001 - & ( - ) + -- ; - > @ ^ ` {- \u 007f \u 0082 \u 0084 \u 008b \u 0092 \u 0095 \u 0098 \u 009b \u 00a0 \u 00a6 \u 00a9 \u 00ab- \u 00ac \u 00ae \u 00bb \u 0378- \u 0379 \u 037e- \u 0383 \u 0387 \u 038b \u 038d \u 03a2 \u 0524- \u 0530 \u 0557- \u 0558 \u 055a- \u 0560 \u 0588- \u 0590 \u 05be \u 05c0 \u 05c3 \u 05c6 \u 05c8- \u 05cf \u 05eb- \u 05ef \u 05f3- \u 05ff \u 0604- \u 0605 \u 0609- \u 060a \u 060c- \u 060d \u 061b- \u 061e \u 0620 \u 065f \u 066a- \u 066d \u 06d4 \u 0700- \u 070e \u 074b- \u 074c \u 07b2- \u 07bf \u 07f7- \u 07f9 \u 07fb- \u 0900 \u 093a- \u 093b \u 094e- \u 094f \u 0955- \u 0957 \u 0964- \u 0965 \u 0970 \u 0973- \u 097a \u 0980 \u 0984 \u 098d- \u 098e \u 0991- \u 0992 \u 09a9 \u 09b1 \u 09b3- \u 09b5 \u 09ba- \u 09bb \u 09c5- \u 09c6 \u 09c9- \u 09ca \u 09cf- \u 09d6 \u 09d8- \u 09db \u 09de \u 09e4- \u 09e5 \u 09fb- \u 0a00 \u 0a04 \u 0a0b- \u 0a0e \u 0a11- \u 0a12 \u 0a29 \u 0a31 \u 0a34 \u 0a37 \u 0a3a- \u 0a3b \u 0a3d \u 0a43- \u 0a46 \u 0a49- \u 0a4a \u 0a4e- \u 0a50 \u 0a52- \u 0a58 \u 0a5d \u 0a5f- \u 0a65 \u 0a76- \u 0a80 \u 0a84 \u 0a8e \u 0a92 \u 0aa9 \u 0ab1 \u 0ab4 \u 0aba- \u 0abb \u 0ac6 \u 0aca \u 0ace- \u 0acf \u 0ad1- \u 0adf \u 0ae4- \u 0ae5 \u 0af0 \u 0af2- \u 0b00 \u 0b04 \u 0b0d- \u 0b0e \u 0b11- \u 0b12 \u 0b29 \u 0b31 \u 0b34 \u 0b3a- \u 0b3b \u 0b45- \u 0b46 \u 0b49- \u 0b4a \u 0b4e- \u 0b55 \u 0b58- \u 0b5b \u 0b5e \u 0b64- \u 0b65 \u 0b72- \u 0b81 \u 0b84 \u 0b8b- \u 0b8d \u 0b91 \u 0b96- \u 0b98 \u 0b9b \u 0b9d \u 0ba0- \u 0ba2 \u 0ba5- \u 0ba7 \u 0bab- \u 0bad \u 0bba- \u 0bbd \u 0bc3- \u 0bc5 \u 0bc9 \u 0bce- \u 0bcf \u 0bd1- \u 0bd6 \u 0bd8- \u 0be5 \u 0bfb- \u 0c00 \u 0c04 \u 0c0d \u 0c11 \u 0c29 \u 0c34 \u 0c3a- \u 0c3c \u 0c45 \u 0c49 \u 0c4e- \u 0c54 \u 0c57 \u 0c5a- \u 0c5f \u 0c64- \u 0c65 \u 0c70- \u 0c77 \u 0c80- \u 0c81 \u 0c84 \u 0c8d \u 0c91 \u 0ca9 \u 0cb4 \u 0cba- \u 0cbb \u 0cc5 \u 0cc9 \u 0cce- \u 0cd4 \u 0cd7- \u 0cdd \u 0cdf \u 0ce4- \u 0ce5 \u 0cf0 \u 0cf3- \u 0d01 \u 0d04 \u 0d0d \u 0d11 \u 0d29 \u 0d3a- \u 0d3c \u 0d45 \u 0d49 \u 0d4e- \u 0d56 \u 0d58- \u 0d5f \u 0d64- \u 0d65 \u 0d76- \u 0d78 \u 0d80- \u 0d81 \u 0d84 \u 0d97- \u 0d99 \u 0db2 \u 0dbc \u 0dbe- \u 0dbf \u 0dc7- \u 0dc9 \u 0dcb- \u 0dce \u 0dd5 \u 0dd7 \u 0de0- \u 0df1 \u 0df4- \u 0e00 \u 0e3b- \u 0e3e \u 0e4f \u 0e5a- \u 0e80 \u 0e83 \u 0e85- \u 0e86 \u 0e89 \u 0e8b- \u 0e8c \u 0e8e- \u 0e93 \u 0e98 \u 0ea0 \u 0ea4 \u 0ea6 \u 0ea8- \u 0ea9 \u 0eac \u 0eba \u 0ebe- \u 0ebf \u 0ec5 \u 0ec7 \u 0ece- \u 0ecf \u 0eda- \u 0edb \u 0ede- \u 0eff \u 0f04- \u 0f12 \u 0f3a- \u 0f3d \u 0f48 \u 0f6d- \u 0f70 \u 0f85 \u 0f8c- \u 0f8f \u 0f98 \u 0fbd \u 0fcd \u 0fd0- \u 0fff \u 104a- \u 104f \u 109a- \u 109d \u 10c6- \u 10cf \u 10fb \u 10fd- \u 10ff \u 115a- \u 115e \u 11a3- \u 11a7 \u 11fa- \u 11ff \u 1249 \u 124e- \u 124f \u 1257 \u 1259 \u 125e- \u 125f \u 1289 \u 128e- \u 128f \u 12b1 \u 12b6- \u 12b7 \u 12bf \u 12c1 \u 12c6- \u 12c7 \u 12d7 \u 1311 \u 1316- \u 1317 \u 135b- \u 135e \u 1361- \u 1368 \u 137d- \u 137f \u 139a- \u 139f \u 13f5- \u 1400 \u 166d- \u 166e \u 1677- \u 167f \u 169b- \u 169f \u 16eb- \u 16ed \u 16f1- \u 16ff \u 170d \u 1715- \u 171f \u 1735- \u 173f \u 1754- \u 175f \u 176d \u 1771 \u 1774- \u 177f \u 17d4- \u 17d6 \u 17d8- \u 17da \u 17de- \u 17df \u 17ea- \u 17ef \u 17fa- \u 180a \u 180f \u 181a- \u 181f \u 1878- \u 187f \u 18ab- \u 18ff \u 191d- \u 191f \u 192c- \u 192f \u 193c- \u 193f \u 1941- \u 1945 \u 196e- \u 196f \u 1975- \u 197f \u 19aa- \u 19af \u 19ca- \u 19cf \u 19da- \u 19df \u 1a1c- \u 1aff \u 1b4c- \u 1b4f \u 1b5a- \u 1b60 \u 1b7d- \u 1b7f \u 1bab- \u 1bad \u 1bba- \u 1bff \u 1c38- \u 1c3f \u 1c4a- \u 1c4c \u 1c7e- \u 1cff \u 1de7- \u 1dfd \u 1f16- \u 1f17 \u 1f1e- \u 1f1f \u 1f46- \u 1f47 \u 1f4e- \u 1f4f \u 1f58 \u 1f5a \u 1f5c \u 1f5e \u 1f7e- \u 1f7f \u 1fb5 \u 1fc5 \u 1fd4- \u 1fd5 \u 1fdc \u 1ff0- \u 1ff1 \u 1ff5 \u 1fff \u 2011- \u 2012 \u 2017 \u 2019- \u 201b \u 201e- \u 201f \u 2022- \u 2024 \u 2031 \u 2034 \u 2036- \u 203a \u 203c- \u 2043 \u 2045- \u 2051 \u 2053- \u 205e \u 2065- \u 2069 \u 2072- \u 2073 \u 207d- \u 207e \u 208d- \u 208f \u 2095- \u 209f \u 20b6- \u 20cf \u 20f1- \u 20ff \u 2150- \u 2152 \u 2189- \u 218f \u 2329- \u 232a \u 23e8- \u 23ff \u 2427- \u 243f \u 244b- \u 245f \u 269e- \u 269f \u 26bd- \u 26bf \u 26c4- \u 2700 \u 2705 \u 270a- \u 270b \u 2728 \u 274c \u 274e \u 2753- \u 2755 \u 2757 \u 275f- \u 2760 \u 2768- \u 2775 \u 2795- \u 2797 \u 27b0 \u 27bf \u 27c5- \u 27c6 \u 27cb \u 27cd- \u 27cf \u 27e6- \u 27ef \u 2983- \u 2998 \u 29d8- \u 29db \u 29fc- \u 29fd \u 2b4d- \u 2b4f \u 2b55- \u 2bff \u 2c2f \u 2c5f \u 2c70 \u 2c7e- \u 2c7f \u 2ceb- \u 2cfc \u 2cfe- \u 2cff \u 2d26- \u 2d2f \u 2d66- \u 2d6e \u 2d70- \u 2d7f \u 2d97- \u 2d9f \u 2da7 \u 2daf \u 2db7 \u 2dbf \u 2dc7 \u 2dcf \u 2dd7 \u 2ddf \u 2e00- \u 2e2e \u 2e30- \u 2e7f \u 2e9a \u 2ef4- \u 2eff \u 2fd6- \u 2fef \u 2ffc- \u 2fff \u 3018- \u 301c \u 3030 \u 303d \u 3040 \u 3097- \u 3098 \u 30a0 \u 3100- \u 3104 \u 312e- \u 3130 \u 318f \u 31b8- \u 31bf \u 31e4- \u 31ef \u 321f \u 3244- \u 324f \u 32ff \u 4db6- \u 4dbf \u 9fc4- \u 9fff \u a48d- \u a48f \u a4c7- \u a4ff \u a60d- \u a60f \u a62c- \u a63f \u a660- \u a661 \u a673- \u a67b \u a67e \u a698- \u a6ff \u a78d- \u a7fa \u a82c- \u a83f \u a874- \u a87f \u a8c5- \u a8cf \u a8da- \u a8ff \u a92f \u a954- \u a9ff \u aa37- \u aa3f \
str _operator = ",\\s-+/^&%<=>" , str _excludeCharts = "'*\\[\\]\\:/?" ; this . regExp _namedRanges = new RegExp ( str _namedRanges , "i" ) ; this . regExp _namedSheetsRange = new RegExp ( "[" + str _namedSheetsRange + "]" , "ig" ) ; this . regExp _strOperator = new RegExp ( "[" + str _operator + "]" , "ig" ) ; this . regExp _strExcludeCharts = new RegExp ( "[" + str _excludeCharts + "]" , "ig" ) ; this . test = function ( str ) { var ch1 = str . substr ( 0 , 1 ) ; this . regExp _strExcludeCharts . lastIndex = 0 ; this . regExp _namedRanges . lastIndex = 0 ; this . regExp _namedSheetsRange . lastIndex = 0 ; this . regExp _strOperator . lastIndex =
0 ; var validName = this . isValidName ( str ) ; if ( ! validName ) return validName ; if ( ! this . regExp _namedRanges . test ( ch1 ) ) return false ; else { if ( this . regExp _namedSheetsRange . test ( str ) || this . regExp _strOperator . test ( str ) ) return false ; var match = str . match ( rx _ref ) ; if ( match != null ) { var m1 = match [ 1 ] , m2 = match [ 2 ] ; if ( match . length >= 3 && g _oCellAddressUtils . colstrToColnum ( m1 . substr ( 0 , m1 . length - m2 . length ) ) <= AscCommon . gc _nMaxCol && parseInt ( m2 ) <= AscCommon . gc _nMaxRow ) return false } return true } } ; this . isValidName = function ( str ) { if ( str . length >=
32 || str . length === 0 ) return undefined ; for ( var i = 0 ; i < str . length ; i ++ ) if ( str [ i ] === "'" && ( i === 0 || i === str . length - 1 ) ) return undefined ; else if ( str [ i ] === "]" || str [ i ] === "[" || str [ i ] === ":" || str [ i ] === "?" || str [ i ] === "*" || str [ i ] === "\\" || str [ i ] === "/" ) return undefined ; return true } ; return this } function test _defName ( ) { var nameRangeRE = new RegExp ( "(^([" + str _namedRanges + "_])([" + str _namedRanges + "_0-9]*)$)" , "i" ) ; this . test = function ( str ) { var match , m1 , m2 ; if ( ! nameRangeRE . test ( str ) && "_xlnm.print_area" !== str ) return false ; match = str . match ( rx _ref ) ;
if ( match != null ) { m1 = match [ 1 ] ; m2 = match [ 2 ] ; if ( match . length >= 3 && g _oCellAddressUtils . colstrToColnum ( m1 . substr ( 0 , m1 . length - m2 . length ) ) <= AscCommon . gc _nMaxCol && parseInt ( m2 ) <= AscCommon . gc _nMaxRow ) return false } return true } ; return this } var cStrucTableReservedWords = { all : "#All" , data : "#Data" , headers : "#Headers" , totals : "#Totals" , thisrow : "#This Row" , at : "@" } ; var FormulaTablePartInfo = { all : 1 , data : 2 , headers : 3 , totals : 4 , thisRow : 5 , columns : 6 } ; var cStrucTableLocalColumns = null ; var cBoolOrigin = { "t" : "TRUE" , "f" : "FALSE" } ; var cBoolLocal =
{ } ; var cErrorOrigin = { "nil" : "#NULL!" , "div" : "#DIV/0!" , "value" : "#VALUE!" , "ref" : "#REF!" , "name" : "#NAME?" , "num" : "#NUM!" , "na" : "#N/A" , "getdata" : "#GETTING_DATA" , "uf" : "#UNSUPPORTED_FUNCTION!" } ; var cErrorLocal = { } ; function build _local _rx ( data ) { rx _table _local = build _rx _table ( data ? data [ "StructureTables" ] : null ) ; rx _bool _local = build _rx _bool ( data && data [ "CONST_TRUE_FALSE" ] || cBoolOrigin ) ; rx _error _local = build _rx _error ( data ? data [ "CONST_ERROR" ] : null ) } function build _rx _table ( local ) { cStrucTableLocalColumns = local ? local : { "h" : "Headers" ,
"d" : "Data" , "a" : "All" , "tr" : "This Row" , "t" : "Totals" } ; return build _rx _table _cur ( ) } function build _rx _table _cur ( ) { var loc _all = cStrucTableLocalColumns [ "a" ] , loc _headers = cStrucTableLocalColumns [ "h" ] , loc _data = cStrucTableLocalColumns [ "d" ] , loc _totals = cStrucTableLocalColumns [ "t" ] , loc _this _row = cStrucTableLocalColumns [ "tr" ] , structured _tables _headata = new XRegExp ( "(?:\\[\\#" + loc _headers + "\\]\\" + FormulaSeparators . functionArgumentSeparator + "\\[\\#" + loc _data + "\\])" ) , structured _tables _datals = new XRegExp ( "(?:\\[\\#" +
loc _data + "\\]\\" + FormulaSeparators . functionArgumentSeparator + "\\[\\#" + loc _totals + "\\])" ) , structured _tables _userColumn = new XRegExp ( "(?:'\\[|'\\]|[^[\\]])+" ) , structured _tables _reservedColumn = new XRegExp ( "\\#(?:" + loc _all + "|" + loc _headers + "|" + loc _totals + "|" + loc _data + "|" + loc _this _row + ")|@" ) ; return XRegExp . build ( "^(?<tableName>{{tableName}})\\[(?<columnName>{{columnName}})?\\]" , { "tableName" : new XRegExp ( "^(:?[" + str _namedRanges + "][" + str _namedRanges + "\\d.]*)" ) , "columnName" : XRegExp . build ( "(?<reservedColumn>{{reservedColumn}})|(?<oneColumn>{{userColumn}})|(?<columnRange>{{userColumnRange}})|(?<hdtcc>{{hdtcc}})" ,
{ "userColumn" : structured _tables _userColumn , "reservedColumn" : structured _tables _reservedColumn , "userColumnRange" : XRegExp . build ( "\\[(?<colStart>{{uc}})\\]\\:\\[(?<colEnd>{{uc}})\\]" , { "uc" : structured _tables _userColumn } ) , "hdtcc" : XRegExp . build ( "(?<hdt>\\[{{rc}}\\]|{{hd}}|{{dt}})(?:\\" + FormulaSeparators . functionArgumentSeparator + "(?:\\[(?<hdtcstart>{{uc}})\\])(?:\\:(?:\\[(?<hdtcend>{{uc}})\\]))?)?" , { "rc" : structured _tables _reservedColumn , "hd" : structured _tables _headata , "dt" : structured _tables _datals , "uc" : structured _tables _userColumn } ) } ) } ,
"i" ) } function build _rx _bool ( local ) { var t = cBoolLocal . t = local [ "t" ] . toUpperCase ( ) ; var f = cBoolLocal . f = local [ "f" ] . toUpperCase ( ) ; return new RegExp ( "^(" + t + "|" + f + ")([-+*\\/^&%<=>: ;),}]|$)" , "i" ) } function build _rx _error ( local ) { local = local ? local : { "nil" : "#NULL!" , "div" : "#DIV/0!" , "value" : "#VALUE!" , "ref" : "#REF!" , "name" : "#NAME\\?" , "num" : "#NUM!" , "na" : "#N/A" , "getdata" : "#GETTING_DATA" , "uf" : "#UNSUPPORTED_FUNCTION!" } ; cErrorLocal [ "nil" ] = local [ "nil" ] ; cErrorLocal [ "div" ] = local [ "div" ] ; cErrorLocal [ "value" ] = local [ "value" ] ;
cErrorLocal [ "ref" ] = local [ "ref" ] ; cErrorLocal [ "name" ] = local [ "name" ] ; cErrorLocal [ "num" ] = local [ "num" ] ; cErrorLocal [ "na" ] = local [ "na" ] ; cErrorLocal [ "getdata" ] = local [ "getdata" ] ; cErrorLocal [ "uf" ] = local [ "uf" ] ; return new RegExp ( "^(" + cErrorLocal [ "nil" ] + "|" + cErrorLocal [ "div" ] + "|" + cErrorLocal [ "value" ] + "|" + cErrorLocal [ "ref" ] + "|" + cErrorLocal [ "name" ] + "|" + cErrorLocal [ "num" ] + "|" + cErrorLocal [ "na" ] + "|" + cErrorLocal [ "getdata" ] + "|" + cErrorLocal [ "uf" ] + ")" , "i" ) } var PostMessageType = { UploadImage : 0 , ExtensionExist : 1 } ; var c _oAscServerError =
{ NoError : 0 , Unknown : - 1 , ReadRequestStream : - 3 , TaskQueue : - 20 , TaskResult : - 40 , Storage : - 60 , StorageFileNoFound : - 61 , StorageRead : - 62 , StorageWrite : - 63 , StorageRemoveDir : - 64 , StorageCreateDir : - 65 , StorageGetInfo : - 66 , Convert : - 80 , ConvertDownload : - 81 , ConvertUnknownFormat : - 82 , ConvertTimeout : - 83 , ConvertReadFile : - 84 , ConvertCONVERT _CORRUPTED : - 86 , ConvertLIBREOFFICE : - 87 , ConvertPARAMS : - 88 , ConvertNEED _PARAMS : - 89 , ConvertDRM : - 90 , ConvertPASSWORD : - 91 , ConvertICU : - 92 , ConvertLIMITS : - 93 , ConvertDeadLetter : - 99 , Upload : - 100 , UploadContentLength : - 101 ,
UploadExtension : - 102 , UploadCountFiles : - 103 , UploadURL : - 104 , UploadDocumentContentLength : - 105 , UploadDocumentExtension : - 106 , UploadDocumentCountFiles : - 107 , VKey : - 120 , VKeyEncrypt : - 121 , VKeyKeyExpire : - 122 , VKeyUserCountExceed : - 123 } ; var c _oAscImageUploadProp = { MaxFileSize : 25E6 , SupportedFormats : [ "jpg" , "jpeg" , "jpe" , "png" , "gif" , "bmp" ] } ; var c _oAscDocumentUploadProp = { MaxFileSize : 104857600 , SupportedFormats : [ "docx" , "doc" , "docm" , "dot" , "dotm" , "dotx" , "epub" , "fodt" , "odt" , "ott" , "rtf" , "wps" ] } ; function GetFileExtension ( sName ) { var nIndex =
sName ? sName . lastIndexOf ( "." ) : - 1 ; if ( - 1 != nIndex ) return sName . substring ( nIndex + 1 ) . toLowerCase ( ) ; return null } function GetFileName ( sName ) { var nIndex = sName ? sName . lastIndexOf ( "." ) : - 1 ; if ( - 1 != nIndex ) return sName . substring ( 0 , nIndex ) ; return null } function changeFileExtention ( sName , sNewExt , opt _lengthLimit ) { var sOldExt = GetFileExtension ( sName ) ; var nIndexEnd = sOldExt ? sName . length - sOldExt . length - 1 : sName . length ; if ( opt _lengthLimit && nIndexEnd + sNewExt . length + 1 > opt _lengthLimit ) nIndexEnd = opt _lengthLimit - sNewExt . length - 1 ;
if ( nIndexEnd < sName . length ) return sName . substring ( 0 , nIndexEnd ) + "." + sNewExt ; else return sName + "." + sNewExt } function getExtentionByFormat ( format ) { switch ( format ) { case c _oAscFileType . PDF : case c _oAscFileType . PDFA : return "pdf" ; break ; case c _oAscFileType . HTML : return "html" ; break ; case c _oAscFileType . DOCX : return "docx" ; break ; case c _oAscFileType . DOC : return "doc" ; break ; case c _oAscFileType . ODT : return "odt" ; break ; case c _oAscFileType . RTF : return "rtf" ; break ; case c _oAscFileType . TXT : return "txt" ; break ; case c _oAscFileType . MHT : return "mht" ;
break ; case c _oAscFileType . EPUB : return "epub" ; break ; case c _oAscFileType . FB2 : return "fb2" ; break ; case c _oAscFileType . MOBI : return "mobi" ; break ; case c _oAscFileType . DOCM : return "docm" ; break ; case c _oAscFileType . DOTX : return "dotx" ; break ; case c _oAscFileType . DOTM : return "dotm" ; break ; case c _oAscFileType . FODT : return "fodt" ; break ; case c _oAscFileType . OTT : return "ott" ; break ; case c _oAscFileType . DOCY : return "doct" ; break ; case c _oAscFileType . CANVAS _WORD : return "bin" ; break ; case c _oAscFileType . JSON : return "json" ; break ; case c _oAscFileType . XLSX : return "xlsx" ;
break ; case c _oAscFileType . XLS : return "xls" ; break ; case c _oAscFileType . ODS : return "ods" ; break ; case c _oAscFileType . CSV : return "csv" ; break ; case c _oAscFileType . XLSM : return "xlsm" ; break ; case c _oAscFileType . XLTX : return "xltx" ; break ; case c _oAscFileType . XLTM : return "xltm" ; break ; case c _oAscFileType . FODS : return "fods" ; break ; case c _oAscFileType . OTS : return "ots" ; break ; case c _oAscFileType . XLSY : return "xlst" ; break ; case c _oAscFileType . PPTX : return "pptx" ; break ; case c _oAscFileType . PPT : return "ppt" ; break ; case c _oAscFileType . ODP : return "odp" ;
break ; case c _oAscFileType . PPSX : return "ppsx" ; break ; case c _oAscFileType . PPTM : return "pptm" ; break ; case c _oAscFileType . PPSM : return "ppsm" ; break ; case c _oAscFileType . POTX : return "potx" ; break ; case c _oAscFileType . POTM : return "potm" ; break ; case c _oAscFileType . FODP : return "fodp" ; break ; case c _oAscFileType . OTP : return "otp" ; break } return "" } function InitOnMessage ( callback ) { if ( window . addEventListener ) window . addEventListener ( "message" , function ( event ) { if ( null != event && null != event . data ) try { var data = JSON . parse ( event . data ) ; if ( null !=
data && null != data [ "type" ] && PostMessageType . UploadImage == data [ "type" ] ) if ( c _oAscServerError . NoError == data [ "error" ] ) { var urls = data [ "urls" ] ; if ( urls ) { g _oDocumentUrls . addUrls ( urls ) ; var firstUrl ; for ( var i in urls ) if ( urls . hasOwnProperty ( i ) ) { firstUrl = urls [ i ] ; break } callback ( Asc . c _oAscError . ID . No , firstUrl ) } } else callback ( mapAscServerErrorToAscError ( data [ "error" ] ) ) ; else if ( data [ "type" ] === "onExternalPluginMessage" ) { if ( ! window . g _asc _plugins ) return ; if ( data [ "subType" ] == "internalCommand" ) switch ( data . data . type ) { case "onbeforedrop" : case "ondrop" : { window . g _asc _plugins . api . privateDropEvent ( data . data ) ;
return } default : break } window . g _asc _plugins . sendToAllPlugins ( event . data ) } else if ( data [ "type" ] === "onExternalPluginMessageCallback" ) { if ( ! window . g _asc _plugins ) return ; window . parent && window . parent . postMessage ( event . data , "*" ) } else if ( data [ "type" ] === "emulateUploadInFrame" ) if ( window [ "_private_emulate_upload" ] ) { window [ "_private_emulate_upload" ] ( data [ "name" ] , data [ "content" ] ) ; window [ "_private_emulate_upload" ] = undefined } } catch ( err ) { } } , false ) } function getAcceptByArray ( arr ) { var res = "." + arr [ 0 ] ; for ( var i = 1 ; i < arr . length ; ++ i ) res +=
",." + arr [ i ] ; return res } function _ShowFileDialog ( accept , allowEncryption , allowMultiple , fValidate , callback ) { if ( AscCommon . AscBrowser . isNeedEmulateUpload && window [ "emulateUpload" ] ) { window [ "emulateUpload" ] ( function ( name , content ) { if ( content === "" ) { callback ( Asc . c _oAscError . ID . Unknown ) ; return } var stream = AscFonts . CreateFontData2 ( content ) ; var blob = new Blob ( [ stream . data . slice ( 0 , stream . size ) ] ) ; blob . name = name ; blob . fileName = name ; var nError = fValidate ( [ blob ] ) ; callback ( mapAscServerErrorToAscError ( nError ) , [ blob ] ) } , ":<iframe><image>" ) ;
return } if ( allowEncryption && AscCommon . EncryptionWorker && AscCommon . EncryptionWorker . isCryptoImages ( ) ) { AscCommon . EncryptionWorker . addCryproImagesFromDialog ( callback ) ; return } if ( "undefined" != typeof FileReader ) { var fileName = GetUploadInput ( accept , allowMultiple , function ( e ) { if ( e && e . target && e . target . files ) { var nError = fValidate ( e . target . files ) ; callback ( mapAscServerErrorToAscError ( nError ) , e . target . files ) } else callback ( Asc . c _oAscError . ID . Unknown ) } ) ; fileName . click ( ) } else return false } function ShowImageFileDialog ( documentId ,
documentUserId , jwt , callback , callbackOld ) { if ( false === _ShowFileDialog ( "image/*" , true , true , ValidateUploadImage , callback ) ) { var frameWindow = GetUploadIFrame ( ) ; var url = sUploadServiceLocalUrlOld + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; if ( jwt ) url += "?token=" + encodeURIComponent ( jwt ) ; var content = '<html><head></head><body><form action="' + url + '" method="POST" enctype="multipart/form-data"><input id="apiiuFile" name="apiiuFile" type="file" accept="image/*" size="1"><input id="apiiuSubmit" name="apiiuSubmit" type="submit" style="display:none;"></form></body></html>' ;
frameWindow . document . open ( ) ; frameWindow . document . write ( content ) ; frameWindow . document . close ( ) ; var fileName = frameWindow . document . getElementById ( "apiiuFile" ) ; var fileSubmit = frameWindow . document . getElementById ( "apiiuSubmit" ) ; fileName . onchange = function ( e ) { if ( e && e . target && e . target . files ) { var nError = ValidateUploadImage ( e . target . files ) ; if ( c _oAscServerError . NoError != nError ) { callbackOld ( mapAscServerErrorToAscError ( nError ) ) ; return } } callbackOld ( Asc . c _oAscError . ID . No ) ; fileSubmit . click ( ) } ; fileName . click ( ) } } function ShowDocumentFileDialog ( callback ) { if ( false ===
_ShowFileDialog ( getAcceptByArray ( c _oAscDocumentUploadProp . SupportedFormats ) , false , false , ValidateUploadDocument , callback ) ) callback ( Asc . c _oAscError . ID . Unknown ) } function InitDragAndDrop ( oHtmlElement , callback ) { if ( "undefined" != typeof FileReader && null != oHtmlElement ) { oHtmlElement [ "ondragover" ] = function ( e ) { e . preventDefault ( ) ; e . dataTransfer . dropEffect = CanDropFiles ( e ) ? "copy" : "none" ; if ( e . dataTransfer . dropEffect == "copy" ) { var editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; editor . beginInlineDropTarget ( e ) } return false } ;
oHtmlElement [ "ondrop" ] = function ( e ) { e . preventDefault ( ) ; var files = e . dataTransfer . files ; var nError = ValidateUploadImage ( files ) ; var editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; editor . endInlineDropTarget ( e ) ; if ( nError == c _oAscServerError . UploadCountFiles ) { try { var htmlValue = e . dataTransfer . getData ( "text/html" ) ; if ( htmlValue && ! AscCommon . AscBrowser . isIE ) { var index = htmlValue . indexOf ( "StartHTML" ) ; var indexHtml = htmlValue . indexOf ( "<html" ) ; if ( - 1 == indexHtml ) indexHtml = htmlValue . indexOf ( "<HTML" ) ;
if ( index > 0 && indexHtml > 0 && index < indexHtml ) htmlValue = htmlValue . substr ( indexHtml ) ; editor [ "pluginMethod_PasteHtml" ] ( htmlValue ) ; return } } catch ( err ) { } try { var textValue = e . dataTransfer . getData ( "text/plain" ) ; if ( textValue ) { editor [ "pluginMethod_PasteText" ] ( textValue ) ; return } } catch ( err$11 ) { } try { var textValue = e . dataTransfer . getData ( "Text" ) ; if ( textValue ) { editor [ "pluginMethod_PasteText" ] ( textValue ) ; return } } catch ( err$12 ) { } } callback ( mapAscServerErrorToAscError ( nError ) , files ) } } } function UploadImageFiles ( files , documentId ,
documentUserId , jwt , callback ) { window . parent . APP . UploadImageFiles ( files , documentId , documentUserId , jwt , function ( err , urls ) { callback ( err || Asc . c _oAscError . ID . No , urls ) } ) ; return ; if ( files . length > 0 ) { var url = sUploadServiceLocalUrl + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; var aFiles = [ ] ; for ( var i = files . length - 1 ; i > - 1 ; -- i ) aFiles . push ( files [ i ] ) ; var file = aFiles . pop ( ) ; var aResultUrls = [ ] ; var fOnReadyChnageState = function ( ) { if ( 4 == this . readyState ) if ( this . status == 200 || this . status == 1223 ) { var urls =
JSON . parse ( this . responseText ) ; g _oDocumentUrls . addUrls ( urls ) ; for ( var i in urls ) if ( urls . hasOwnProperty ( i ) ) { aResultUrls . push ( urls [ i ] ) ; break } if ( aFiles . length === 0 ) callback ( Asc . c _oAscError . ID . No , aResultUrls ) ; else { file = aFiles . pop ( ) ; var xhr = new XMLHttpRequest ; url = sUploadServiceLocalUrl + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ; xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange =
fOnReadyChnageState ; xhr . send ( file ) } } else if ( this . status === 403 ) callback ( Asc . c _oAscError . ID . VKeyEncrypt ) ; else callback ( Asc . c _oAscError . ID . UplImageUrl ) } ; var xhr = new XMLHttpRequest ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ; xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange = fOnReadyChnageState ; xhr . send ( file ) } else callback ( Asc . c _oAscError . ID . UplImageFileCount ) } function UploadImageUrls ( files , documentId , documentUserId , jwt ,
callback ) { if ( files . length > 0 ) { var url = sUploadServiceLocalUrl + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; var aFiles = [ ] ; for ( var i = files . length - 1 ; i > - 1 ; -- i ) aFiles . push ( files [ i ] ) ; var file = aFiles . pop ( ) ; var aResultUrls = [ ] ; var fOnReadyChnageState = function ( ) { if ( 4 == this . readyState ) if ( this . status == 200 || this . status == 1223 ) { var urls = JSON . parse ( this . responseText ) ; g _oDocumentUrls . addUrls ( urls ) ; for ( var i in urls ) if ( urls . hasOwnProperty ( i ) ) { aResultUrls . push ( { path : i , url : urls [ i ] } ) ; break } if ( aFiles . length ===
0 ) callback ( aResultUrls ) ; else { file = aFiles . pop ( ) ; var xhr = new XMLHttpRequest ; url = sUploadServiceLocalUrl + "/" + documentId + "/" + documentUserId + "/" + g _oDocumentUrls . getMaxIndex ( ) ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ; xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange = fOnReadyChnageState ; xhr . send ( file ) } } else callback ( [ ] ) } ; var xhr = new XMLHttpRequest ; xhr . open ( "POST" , url , true ) ; xhr . setRequestHeader ( "Content-Type" , file . type || "application/octet-stream" ) ;
xhr . setRequestHeader ( "Authorization" , "Bearer " + jwt ) ; xhr . onreadystatechange = fOnReadyChnageState ; xhr . send ( file ) } else callback ( Asc . c _oAscError . ID . UplImageFileCount ) } function ValidateUpload ( files , eUploadExtension , eUploadContentLength , eUploadCountFiles , c _oAscUploadProp ) { var nRes = c _oAscServerError . NoError ; if ( files . length > 0 ) for ( var i = 0 , length = files . length ; i < length ; i ++ ) { var file = files [ i ] ; var sName = file . name ; if ( sName ) { var bSupported = false ; var ext = GetFileExtension ( sName ) ; if ( null !== ext ) for ( var j = 0 , length2 = c _oAscUploadProp . SupportedFormats . length ; j <
length2 ; j ++ ) if ( c _oAscUploadProp . SupportedFormats [ j ] == ext ) { bSupported = true ; break } if ( false == bSupported ) nRes = eUploadExtension } if ( Asc . c _oAscError . ID . No == nRes ) { var nSize = file . size ; if ( nSize && c _oAscUploadProp . MaxFileSize < nSize ) nRes = eUploadContentLength } if ( c _oAscServerError . NoError != nRes ) break } else nRes = eUploadCountFiles ; return nRes } function ValidateUploadImage ( files ) { return ValidateUpload ( files , c _oAscServerError . UploadExtension , c _oAscServerError . UploadContentLength , c _oAscServerError . UploadCountFiles , c _oAscImageUploadProp ) }
function ValidateUploadDocument ( files ) { return ValidateUpload ( files , c _oAscServerError . UploadDocumentExtension , c _oAscServerError . UploadDocumentContentLength , c _oAscServerError . UploadDocumentCountFiles , c _oAscDocumentUploadProp ) } function CanDropFiles ( event ) { var editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; if ( ! editor . isEnabledDropTarget ( ) ) return false ; var bRes = false ; if ( event . dataTransfer . types ) for ( var i = 0 , length = event . dataTransfer . types . length ; i < length ; ++ i ) { var type = event . dataTransfer . types [ i ] . toLowerCase ( ) ;
if ( type == "files" ) { if ( AscCommon . AscBrowser . isSafari ) return true ; if ( event . dataTransfer . items ) for ( var j = 0 , length2 = event . dataTransfer . items . length ; j < length2 ; j ++ ) { var item = event . dataTransfer . items [ j ] ; if ( item . type && item . kind && "file" == item . kind . toLowerCase ( ) ) { bRes = false ; for ( var k = 0 , length3 = c _oAscImageUploadProp . SupportedFormats . length ; k < length3 ; k ++ ) if ( - 1 != item . type . indexOf ( c _oAscImageUploadProp . SupportedFormats [ k ] ) ) { bRes = true ; break } if ( false == bRes ) break } } else bRes = true ; break } else if ( type == "text" || type == "text/plain" ||
type == "text/html" ) { bRes = true ; break } } return bRes } function GetUploadIFrame ( ) { var sIFrameName = "apiImageUpload" ; var oImageUploader = document . getElementById ( sIFrameName ) ; if ( ! oImageUploader ) { var frame = document . createElement ( "iframe" ) ; frame . name = sIFrameName ; frame . id = sIFrameName ; frame . setAttribute ( "style" , "position:absolute;left:-2px;top:-2px;width:1px;height:1px;z-index:-1000;" ) ; document . body . appendChild ( frame ) } return window . frames [ sIFrameName ] } function GetUploadInput ( accept , allowMultiple , onchange ) { var inputName =
"apiiuFile" ; var input = document . getElementById ( inputName ) ; if ( input ) document . body . removeChild ( input ) ; input = document . createElement ( "input" ) ; input . setAttribute ( "id" , inputName ) ; input . setAttribute ( "name" , inputName ) ; input . setAttribute ( "type" , "file" ) ; input . setAttribute ( "accept" , accept ) ; input . setAttribute ( "style" , "position:absolute;left:-2px;top:-2px;width:1px;height:1px;z-index:-1000;cursor:pointer;" ) ; if ( allowMultiple ) input . setAttribute ( "multiple" , true ) ; input . onchange = onchange ; document . body . appendChild ( input ) ;
return input } var FormulaSeparators = { arrayRowSeparatorDef : ";" , arrayColSeparatorDef : "," , digitSeparatorDef : "." , functionArgumentSeparatorDef : "," , arrayRowSeparator : ";" , arrayColSeparator : "," , digitSeparator : "." , functionArgumentSeparator : "," } ; var g _oCodeSpace = 32 ; var g _oCodeLineFeed = 10 ; var g _arrCodeOperators = [ 37 , 38 , 42 , 43 , 45 , 47 , 58 , 94 ] ; var g _oStartCodeOperatorsCompare = 60 ; var g _oEndCodeOperatorsCompare = 62 ; var g _oCodeLeftParentheses = 40 ; var g _oCodeRightParentheses = 41 ; var g _oCodeLeftBrace = 123 ; var g _oCodeRightBrace =
125 ; var str _namedRanges = " A - Za - z _\u0080 - \u0081\u0083\u0085 - \u0087\u0089 - \u008a\u008c - \u0091\u0093 - \u0094\u0096 - \u0097\u0099 - \u009a\u009c - \u009f\u00a1 - \u00a5\u00a7 - \u00a8\u00aa\u00ad\u00af - \u00ba\u00bc - \u02b8\u02bb - \u02c1\u02c7\u02c9 - \u02cb\u02cd\u02d0 - \u02d1\u02d8 - \u02db\u02dd\u02e0 - \u02e4\u02ee\u0370 - \u0373\u0376 - \u0377\u037a - \u037d\u0386\u0388 - \u038a\u038c\u038e - \u03a1\u03a3 - \u03f5\u03f7 - \u0481\u048a - \u0523\u0531 - \u0556\u0559\u0561 - \u0587\u05d0 - \u05ea\u05f0 - \u05f2\u0621 - \u064a\u066e - \u066f\u0671 - \u06d3\u06d5\u06e5 - \u06e6\u06ee - \u06ef\u06fa - \u06fc\u06ff\u0710\u0712 - \u072f\u074d - \u07a5\u07b1\u07ca - \u07ea\u07f4 - \u07f5\u07fa\u0904 - \u0939\u093d\u0950\u0958 - \u0961\u0971 - \u0972\u097b - \u097f\u0985 - \u098c\u098f - \u0990\u0993 - \u09a8\u09aa - \u09b0\u09b2\u09b6 - \u09b9\u09bd\u09ce\u09dc - \u09dd\u09df - \u09e1\u09f0 - \u09f1\u0a05 - \u0a0a\u0a0f - \u0a10\u0a13 - \u0a28\u0a2a - \u0a30\u0a32 - \u0a33\u0a35 - \u0a36\u0a38 - \u0a39\u0a59 - \u0a5c\u0a5e\u0a72 - \u0a74\u0a85 - \u0a8d\u0a8f - \u0a91\u0a93 - \u0aa8\u0aaa - \u0ab0\u0ab2 - \u0ab3\u0ab5 - \u0ab9\u0abd\u0ad0\u0ae0 - \u0ae1\u0b05 - \u0b0c\u0b0f - \u0b10\u0b13 - \u0b28\u0b2a - \u0b30\u0b32 - \u0b33\u0b35 - \u0b39\u0b3d\u0b5c - \u0b5d\u0b5f - \u0b61\u0b71\u0b83\u0b85 - \u0b8a\u0b8e - \u0b90\u0b92 - \u0b95\u0b99 - \u0b9a\u0b9c\u0b9e - \u0b9f\u0ba3 - \u0ba4\u0ba8 - \u0baa\u0bae - \u0bb9\u0bd0\u0c05 - \u0c0c\u0c0e - \u0c10\u0c12 - \u0c28\u0c2a - \u0c33\u0c35 - \u0c39\u0c3d\u0c58 - \u0c59\u0c60 - \u0c61\u0c85 - \u0c8c\u0c8e - \u0c90\u0c92 - \u0ca8\u0caa - \u0cb3\u0cb5 - \u0cb9\u0cbd\u0cde\u0ce0 - \u0ce1\u0d05 - \u0d0c\u0d0e - \u0d10\u0d12 - \u0d28\u0d2a - \u0d39\u0d3d\u0d60 - \u0d61\u0d7a - \u0d7f\u0d85 - \u0d96\u0d9a - \u0db1\u0db3 - \u0dbb\u0dbd\u0dc0 - \u0dc6\u0e01 - \u0e3a\u0e40 - \u0e4e\u0e81 - \u0e82\u0e84\u0e87 - \u0e88\u0e8a\u0e8d\u0e94 - \u0e97\u0e99 - \u0e9f\u0ea1 - \u0ea3\u0ea5\u0ea7\u0eaa - \u0eab\u0ead - \u0eb0\u0eb2 - \u0eb3\u0ebd\u0ec0 - \u0ec4\u0ec6\u0edc - \u0edd\u0f00\u0f40 - \u0f47\u0f49 - \u0f6c\u0f88 - \u0f8b\u1000 - \u102a\u103f\u1050 - \u1055\u105a - \u105d\u1061\u1065 - \u1066\u106e - \u1070\u1075 - \u1081\u108e\u10a0 - \u10c5\u10d0 - \u10fa\u10fc\u1100 - \u1159\u115f - \u11a2\u11a8 - \u11f9\u1200 - \u1248\u124a - \u124d\u1250 - \u1256\u1258\u125a - \u125d\u1260 - \u1288\u128a - \u128d\u1290 - \u12b0\u12b2 - \u12b5\u12b8 - \u12be\u12c0\u12c2 - \u12c5\u12c8 - \u12d6\u12d8 - \u1310\u1312 - \u1315\u1318 - \u135a\u1380 - \u138f\u13a0 - \u13f4\u1401 - \u166c\u166f - \u1676\u1681 - \u169a\u16a0 - \u16ea\u16ee - \u16f0\u1700 - \u170c\u170e - \u1711\u1720 - \u1731\u1740 - \u1751\u1760 - \u176c\u176e - \u1770\u1780 - \u17b3\u17d7\u17dc\u1820 - \u1877\u1880 - \u18a8\u18aa\u1900 - \u191c\u1950 - \u196d\u1970 - \u1974\u1980 - \u19a9\u19c1 - \u19c7\u1a00 - \u1a16\u1b05 - \u1b33\u1b45 - \u1b4b\u1b83 - \u1ba0\u1bae - \u1baf\u1c00 - \u1c23\u1c4d - \u1c4f\u1c5a - \u1c7d\u1d00 - \u1dbf\u1e00 - \u1f15\u1f18 - \u1f1d\u1f20 - \u1f45\u1f48 - \u1f4d\u1f50 - \u1f57\u1f59\u1f5b\u1f5d\u1f5f - \u1f7d\u1f80 - \u1fb4\u1fb6 - \u1fbc\u1fbe\u1fc2 - \u1fc4\u1fc6 - \u1fcc\u1fd0 - \u1fd3\u1fd6 - \u1fdb\u1fe0 - \u1fec\u1ff2 - \u1ff4\u1ff6 - \u1ffc\u200e\u2010\u2013 - \u2016\u2018\u201c - \u201d\u2020 - \u2021\u2025 - \u2027\u2030\u2032 - \u2033\u2035\u203b\u2071\u2074\u207f\u2081 - \u2084\u2090 - \u2094\u2102 - \u2103\u2105\u2107\u2109 - \u2113\u2115 - \u2116\u2119 - \u211d\u2121 - \u2122\u2124\u2126\u2128\u212a - \u212d\u212f - \u2139\u213c - \u213f\u2145 - \u2149\u214e\u2153 - \u2154\u215b - \u215e\u2160 - \u2188\u2190 - \u2199\u21d2\u21d4\u2200\u2202 - \u2203\u2207 - \u2208\u220b\u220f\u2211\u2215\u221a\u221d - \u2220\u2223\u2225\u2227 - \u222c\u222e\u2234 - \u2237\u223c - \u223d\u2248\u224c\u2252\u2260 - \u2261\u2264 - \u2267\u226a - \u226b\u226e - \u226f\u2282 - \u2283\u2286 - \u2287\u2295\u2299\u22a5\u22bf\u2312\u2460 - \u24b5\u24d0 - \u24e9\u2500 - \u254b\u2550 - \u2574\u2581 - \u258f\u2592 - \u2595\u25a0 - \u25a1\u25a3 - \u25a9\u25b2 - \u25b3\u25b6 - \u25b7\u25bc - \u25bd\u25c0 - \u25c1\u25c6 - \u25c8\u25cb\u25ce - \u25d1\u25e2 - \u25e5\u25ef\u2605 - \u2606\u2609\u260e - \u260f\u261c\u261e\u2640\u2642\u2660 - \u2661\u2663 - \u2665\u2667 - \u266a\u266c - \u266d\u266f\u2c00 - \u2c2e\u2c30 - \u2c5e\u2c60 - \u2c6f\u2c71 - \u2c7d\u2c80 - \u2ce4\u2d00 - \u2d25\u2d30 - \u2d65\u2d6f\u2d80 - \u2d96\u2da0 - \u2da6\u2da8 - \u2dae\u2db0 - \u2db6\u2db8 - \u2dbe\u2dc0 - \u2dc6\u2dc8 - \u2dce\u2dd0 - \u2dd6\u2dd8 - \u2dde\u3000 - \u3003\u3005 - \u3017\u301d - \u301f\u3021 - \u3029\u3031 - \u3035\u3038 - \u303c\u3041 - \u3096\u309b - \ u3
str _namedSheetsRange = " \u0001 - & ( - ) + -- ; - > @ ^ ` {- \u 007f \u 0082 \u 0084 \u 008b \u 0092 \u 0095 \u 0098 \u 009b \u 00a0 \u 00a6 \u 00a9 \u 00ab- \u 00ac \u 00ae \u 00bb \u 0378- \u 0379 \u 037e- \u 0383 \u 0387 \u 038b \u 038d \u 03a2 \u 0524- \u 0530 \u 0557- \u 0558 \u 055a- \u 0560 \u 0588- \u 0590 \u 05be \u 05c0 \u 05c3 \u 05c6 \u 05c8- \u 05cf \u 05eb- \u 05ef \u 05f3- \u 05ff \u 0604- \u 0605 \u 0609- \u 060a \u 060c- \u 060d \u 061b- \u 061e \u 0620 \u 065f \u 066a- \u 066d \u 06d4 \u 0700- \u 070e \u 074b- \u 074c \u 07b2- \u 07bf \u 07f7- \u 07f9 \u 07fb- \u 0900 \u 093a- \u 093b \u 094e- \u 094f \u 0955- \u 0957 \u 0964- \u 0965 \u 0970 \u 0973- \u 097a \u 0980 \u 0984 \u 098d- \u 098e \u 0991- \u 0992 \u 09a9 \u 09b1 \u 09b3- \u 09b5 \u 09ba- \u 09bb \u 09c5- \u 09c6 \u 09c9- \u 09ca \u 09cf- \u 09d6 \u 09d8- \u 09db \u 09de \u 09e4- \u 09e5 \u 09fb- \u 0a00 \u 0a04 \u 0a0b- \u 0a0e \u 0a11- \u 0a12 \u 0a29 \u 0a31 \u 0a34 \u 0a37 \u 0a3a- \u 0a3b \u 0a3d \u 0a43- \u 0a46 \u 0a49- \u 0a4a \u 0a4e- \u 0a50 \u 0a52- \u 0a58 \u 0a5d \u 0a5f- \u 0a65 \u 0a76- \u 0a80 \u 0a84 \u 0a8e \u 0a92 \u 0aa9 \u 0ab1 \u 0ab4 \u 0aba- \u 0abb \u 0ac6 \u 0aca \u 0ace- \u 0acf \u 0ad1- \u 0adf \u 0ae4- \u 0ae5 \u 0af0 \u 0af2- \u 0b00 \u 0b04 \u 0b0d- \u 0b0e \u 0b11- \u 0b12 \u 0b29 \u 0b31 \u 0b34 \u 0b3a- \u 0b3b \u 0b45- \u 0b46 \u 0b49- \u 0b4a \u 0b4e- \u 0b55 \u 0b58- \u 0b5b \u 0b5e \u 0b64- \u 0b65 \u 0b72- \u 0b81 \u 0b84 \u 0b8b- \u 0b8d \u 0b91 \u 0b96- \u 0b98 \u 0b9b \u 0b9d \u 0ba0- \u 0ba2 \u 0ba5- \u 0ba7 \u 0bab- \u 0bad \u 0bba- \u 0bbd \u 0bc3- \u 0bc5 \u 0bc9 \u 0bce- \u 0bcf \u 0bd1- \u 0bd6 \u 0bd8- \u 0be5 \u 0bfb- \u 0c00 \u 0c04 \u 0c0d \u 0c11 \u 0c29 \u 0c34 \u 0c3a- \u 0c3c \u 0c45 \u 0c49 \u 0c4e- \u 0c54 \u 0c57 \u 0c5a- \u 0c5f \u 0c64- \u 0c65 \u 0c70- \u 0c77 \u 0c80- \u 0c81 \u 0c84 \u 0c8d \u 0c91 \u 0ca9 \u 0cb4 \u 0cba- \u 0cbb \u 0cc5 \u 0cc9 \u 0cce- \u 0cd4 \u 0cd7- \u 0cdd \u 0cdf \u 0ce4- \u 0ce5 \u 0cf0 \u 0cf3- \u 0d01 \u 0d04 \u 0d0d \u 0d11 \u 0d29 \u 0d3a- \u 0d3c \u 0d45 \u 0d49 \u 0d4e- \u 0d56 \u 0d58- \u 0d5f \u 0d64- \u 0d65 \u 0d76- \u 0d78 \u 0d80- \u 0d81 \u 0d84 \u 0d97- \u 0d99 \u 0db2 \u 0dbc \u 0dbe- \u 0dbf \u 0dc7- \u 0dc9 \u 0dcb- \u 0dce \u 0dd5 \u 0dd7 \u 0de0- \u 0df1 \u 0df4- \u 0e00 \u 0e3b- \u 0e3e \u 0e4f \u 0e5a- \u 0e80 \u 0e83 \u 0e85- \u 0e86 \u 0e89 \u 0e8b- \u 0e8c \u 0e8e- \u 0e93 \u 0e98 \u 0ea0 \u 0ea4 \u 0ea6 \u 0ea8- \u 0ea9 \u 0eac \u 0eba \u 0ebe- \u 0ebf \u 0ec5 \u 0ec7 \u 0ece- \u 0ecf \u 0eda- \u 0edb \u 0ede- \u 0eff \u 0f04- \u 0f12 \u 0f3a- \u 0f3d \u 0f48 \u 0f6d- \u 0f70 \u 0f85 \u 0f8c- \u 0f8f \u 0f98 \u 0fbd \u 0fcd \u 0fd0- \u 0fff \u 104a- \u 104f \u 109a- \u 109d \u 10c6- \u 10cf \u 10fb \u 10fd- \u 10ff \u 115a- \u 115e \u 11a3- \u 11a7 \u 11fa- \u 11ff \u 1249 \u 124e- \u 124f \u 1257 \u 1259 \u 125e- \u 125f \u 1289 \u 128e- \u 128f \u 12b1 \u 12b6- \u 12b7 \u 12bf \u 12c1 \u 12c6- \u 12c7 \u 12d7 \u 1311 \u 1316- \u 1317 \u 135b- \u 135e \u 1361- \u 1368 \u 137d- \u 137f \u 139a- \u 139f \u 13f5- \u 1400 \u 166d- \u 166e \u 1677- \u 167f \u 169b- \u 169f \u 16eb- \u 16ed \u 16f1- \u 16ff \u 170d \u 1715- \u 171f \u 1735- \u 173f \u 1754- \u 175f \u 176d \u 1771 \u 1774- \u 177f \u 17d4- \u 17d6 \u 17d8- \u 17da \u 17de- \u 17df \u 17ea- \u 17ef \u 17fa- \u 180a \u 180f \u 181a- \u 181f \u 1878- \u 187f \u 18ab- \u 18ff \u 191d- \u 191f \u 192c- \u 192f \u 193c- \u 193f \u 1941- \u 1945 \u 196e- \u 196f \u 1975- \u 197f \u 19aa- \u 19af \u 19ca- \u 19cf \u 19da- \u 19df \u 1a1c- \u 1aff \u 1b4c- \u 1b4f \u 1b5a- \u 1b60 \u 1b7d- \u 1b7f \u 1bab- \u 1bad \u 1bba- \u 1bff \u 1c38- \u 1c3f \u 1c4a- \u 1c4c \u 1c7e- \u 1cff \u 1de7- \u 1dfd \u 1f16- \u 1f17 \u 1f1e- \u 1f1f \u 1f46- \u 1f47 \u 1f4e- \u 1f4f \u 1f58 \u 1f5a \u 1f5c \u 1f5e \u 1f7e- \u 1f7f \u 1fb5 \u 1fc5 \u 1fd4- \u 1fd5 \u 1fdc \u 1ff0- \u 1ff1 \u 1ff5 \u 1fff \u 200e \u 2011- \u 2012 \u 2017 \u 2019- \u 201b \u 201e- \u 201f \u 2022- \u 2024 \u 2031 \u 2034 \u 2036- \u 203a \u 203c- \u 2043 \u 2045- \u 2051 \u 2053- \u 205e \u 2065- \u 2069 \u 2072- \u 2073 \u 207d- \u 207e \u 208d- \u 208f \u 2095- \u 209f \u 20b6- \u 20cf \u 20f1- \u 20ff \u 2150- \u 2152 \u 2189- \u 218f \u 2329- \u 232a \u 23e8- \u 23ff \u 2427- \u 243f \u 244b- \u 245f \u 269e- \u 269f \u 26bd- \u 26bf \u 26c4- \u 2700 \u 2705 \u 270a- \u 270b \u 2728 \u 274c \u 274e \u 2753- \u 2755 \u 2757 \u 275f- \u 2760 \u 2768- \u 2775 \u 2795- \u 2797 \u 27b0 \u 27bf \u 27c5- \u 27c6 \u 27cb \u 27cd- \u 27cf \u 27e6- \u 27ef \u 2983- \u 2998 \u 29d8- \u 29db \u 29fc- \u 29fd \u 2b4d- \u 2b4f \u 2b55- \u 2bff \u 2c2f \u 2c5f \u 2c70 \u 2c7e- \u 2c7f \u 2ceb- \u 2cfc \u 2cfe- \u 2cff \u 2d26- \u 2d2f \u 2d66- \u 2d6e \u 2d70- \u 2d7f \u 2d97- \u 2d9f \u 2da7 \u 2daf \u 2db7 \u 2dbf \u 2dc7 \u 2dcf \u 2dd7 \u 2ddf \u 2e00- \u 2e2e \u 2e30- \u 2e7f \u 2e9a \u 2ef4- \u 2eff \u 2fd6- \u 2fef \u 2ffc- \u 2fff \u 3018- \u 301c \u 3030 \u 303d \u 3040 \u 3097- \u 3098 \u 30a0 \u 3100- \u 3104 \u 312e- \u 3130 \u 318f \u 31b8- \u 31bf \u 31e4- \u 31ef \u 321f \u 3244- \u 324f \u 32ff \u 4db6- \u 4dbf \u 9fc4- \u 9fff \u a48d- \u a48f \u a4c7- \u a4ff \u a60d- \u a60f \u a62c- \u a63f \u a660- \u a661 \u a673- \u a67b \u a67e \u a698- \u a6ff \u a78d- \u a7fa \u a82c- \u a83f \u a874- \u a87f \u a8c5- \u a8cf \u a8da- \u a8ff \u a92f \u a954- \u a9ff \u aa37- \
rx _operators = /^ *[-+*\/^&%<=>:] */ , rg = new XRegExp ( "^((?:_xlfn.)?[\\p{L}\\d._]+ *)[-+*/^&%<=>:;\\(\\)]" ) , rgRange = /^(\$?[A-Za-z]+\$?\d+:\$?[A-Za-z]+\$?\d+)(?:[-+*\/^&%<=>: ;),]|$)/ , rgRangeR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?):([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/ , rgCols = /^(\$?[A-Za-z]+:\$?[A-Za-z]+)(?:[-+*\/^&%<=>: ;),]|$)/ , rgColsR1C1 = /^(([Cc]{1}(\[)?(-?\d*)(\])?(:)?)([Cc]?(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/ , rgRows = /^(\$?\d+:\$?\d+)(?:[-+*\/^&%<=>: ;),]|$)/ ,
rgRowsR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?(:)?)([Rr]?(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/ , rx _ref = /^ *(\$?[A-Za-z]{1,3}\$?(\d{1,7}))([-+*\/^&%<=>: ;),]|$)/ , rx _refAll = /^(\$?[A-Za-z]+\$?(\d+))([-+*\/^&%<=>: ;),]|$)/ , rx _refR1C1 = /^(([Rr]{1}(\[)?(-?\d*)(\])?)([Cc]{1}(\[)?(-?\d*)(\])?))([-+*\/^&%<=>: ;),]|$)/ , rx _ref3D _non _quoted = new XRegExp ( "^(?<name_from>[" + str _namedRanges + "][" + str _namedRanges + "\\d.]*)(:(?<name_to>[" + str _namedRanges + "][" + str _namedRanges + "\\d.]*))?!" , "i" ) , rx _ref3D _quoted = new XRegExp ( "^'(?<name_from>(?:''|[^\\[\\]'\\/*?:])*)(?::(?<name_to>(?:''|[^\\[\\]'\\/*?:])*))?'!" ) ,
rx _ref3D _non _quoted _2 = new XRegExp ( "^(?<name_from>[" + str _namedRanges + "\\d][" + str _namedRanges + "\\d.]*)(:(?<name_to>[" + str _namedRanges + "\\d][" + str _namedRanges + "\\d.]*))?!" , "i" ) , rx _ref3D = new XRegExp ( "^(?<name_from>[^:]+)(:(?<name_to>[^:]+))?!" ) , rx _number = /^ *[+-]?\d*(\d|\.)\d*([eE][+-]?\d+)?/ , rx _RightParentheses = /^ *\)/ , rx _Comma = /^ *[,;] */ , rx _arraySeparators = /^ *[,;] */ , rx _error = build _rx _error ( null ) , rx _error _local = build _rx _error ( null ) , rx _bool = build _rx _bool ( cBoolOrigin ) , rx _bool _local = rx _bool , rx _string =
/^"((""|[^"])*)"/ , rx _test _ws _name = new test _ws _name2 , rx _space _g = /\s/g , rx _space = /\s/ , rx _intersect = /^ +/ , rg _str _allLang = / [ A - Z a - z \ x A A \ x B 5 \ x B A \ x C 0 - \ x D 6 \ x D 8 - \ x F 6 \ x F 8 - \ u 0 2 C 1 \ u 0 2 C 6 - \ u 0 2 D 1 \ u 0 2 E 0 - \ u 0 2 E 4 \ u 0 2 E C \ u 0 2 E E \ u 0 3 4 5 \ u 0 3 7 0 - \ u 0 3 7 4 \ u 0 3 7 6 \ u 0 3 7 7 \ u 0 3 7 A - \ u 0 3 7 D \ u 0 3 8 6 \ u 0 3 8 8 - \ u 0 3 8 A \ u 0 3 8 C \ u 0 3 8 E - \ u 0 3 A 1 \ u 0 3 A 3 - \ u 0 3 F 5 \ u 0 3 F 7 - \ u 0 4 8 1 \ u 0 4 8 A - \ u 0 5 2 7 \ u 0 5 3 1 - \ u 0 5 5 6 \ u 0 5 5 9 \ u 0 5 6 1 - \ u 0 5 8 7 \ u 0 5 B 0 - \ u 0 5 B D \ u 0 5 B F \ u 0 5 C 1 \ u 0 5 C 2 \ u 0 5 C 4 \ u 0 5 C 5 \ u 0 5 C 7 \ u 0 5 D 0 - \ u 0 5 E A \ u 0 5 F 0 - \ u 0 5 F 2 \ u 0 6 1 0 - \ u 0 6 1 A \ u 0 6 2 0 - \ u 0 6 5 7 \ u 0 6 5 9 - \ u 0 6 5 F \ u 0 6 6 E - \ u 0 6 D 3 \ u 0 6 D 5 - \ u 0 6 D C \ u 0 6 E 1 - \ u 0 6 E 8 \ u 0 6 E D - \ u 0 6 E F \ u 0 6 F A - \ u 0 6 F C \ u 0 6 F F \ u 0 7 1 0 - \ u 0 7 3 F \ u 0 7 4 D - \ u 0 7 B 1 \ u 0 7 C A - \ u 0 7 E A \ u 0 7 F 4 \ u 0 7 F 5 \ u 0 7 F A \ u 0 8 0 0 - \ u 0 8 1 7 \ u 0 8 1 A - \ u 0 8 2 C \ u 0 8 4 0 - \ u 0 8 5 8 \ u 0 8 A 0 \ u 0 8 A 2 - \ u 0 8 A C \ u 0 8 E 4 - \ u 0 8 E 9 \ u 0 8 F 0 - \ u 0 8 F E \ u 0 9 0 0 - \ u 0 9 3 B \ u 0 9 3 D - \ u 0 9 4 C \ u 0 9 4 E - \ u 0 9 5 0 \ u 0 9 5 5 - \ u 0 9 6 3 \ u 0 9 7 1 - \ u 0 9 7 7 \ u 0 9 7 9 - \ u 0 9 7 F \ u 0 9 8 1 - \ u 0 9 8 3 \ u 0 9 8 5 - \ u 0 9 8 C \ u 0 9 8 F \ u 0 9 9 0 \ u 0 9 9 3 - \ u 0 9 A 8 \ u 0 9 A A - \ u 0 9 B 0 \ u 0 9 B 2 \ u 0 9 B 6 - \ u 0 9 B 9 \ u 0 9 B D - \ u 0 9 C 4 \ u 0 9 C 7 \ u 0 9 C 8 \ u 0 9 C B \ u 0 9 C C \ u 0 9 C E \ u 0 9 D 7 \ u 0 9 D C \ u 0 9 D D \ u 0 9 D F - \ u 0 9 E 3 \ u 0 9 F 0 \ u 0 9 F 1 \ u 0 A 0 1 - \ u 0 A 0 3 \ u 0 A 0 5 - \ u 0 A 0 A \ u 0 A 0 F \ u 0 A 1 0 \ u 0 A 1 3 - \ u 0 A 2 8 \ u 0 A 2 A - \ u 0 A 3 0 \ u 0 A 3 2 \ u 0 A 3 3 \ u 0 A 3 5 \ u 0 A 3 6 \ u 0 A 3 8 \ u 0 A 3 9 \ u 0 A 3 E - \ u 0 A 4 2 \ u 0 A 4 7 \ u 0 A 4 8 \ u 0 A 4 B \ u 0 A 4 C \ u 0 A 5 1 \ u 0 A 5 9 - \ u 0 A 5 C \ u 0 A 5 E \ u 0 A 7 0 - \ u 0 A 7 5 \ u 0 A 8 1 - \ u 0 A 8 3 \ u 0 A 8 5 - \ u 0 A 8 D \ u 0 A 8 F - \ u 0 A 9 1 \ u 0 A 9 3 - \ u 0 A A 8 \ u 0 A A A - \ u 0 A B 0 \ u 0 A B 2 \ u 0 A B 3 \ u 0 A B 5 - \ u 0 A B 9 \ u 0 A B D - \ u 0 A C 5 \ u 0 A C 7 - \ u 0 A C 9 \ u 0 A C B \ u 0 A C C \ u 0 A D 0 \ u 0 A E 0 - \ u 0 A E 3 \ u 0 B 0 1 - \ u 0 B 0 3 \ u 0 B 0 5 - \ u 0 B 0 C \ u 0 B 0 F \ u 0 B 1 0 \ u 0 B 1 3 - \ u 0 B 2 8 \ u 0 B 2 A - \ u 0 B 3 0 \ u 0 B 3 2 \ u 0 B 3 3 \ u 0 B 3 5 - \ u 0 B 3 9 \ u 0 B 3 D - \ u 0 B 4 4 \ u 0 B 4 7 \ u 0 B 4 8 \ u 0 B 4 B \ u 0 B 4 C \ u 0 B 5 6 \ u 0 B 5 7 \ u 0 B 5 C \ u 0 B 5 D \ u 0 B 5 F - \ u 0 B 6 3 \ u 0 B 7 1 \ u 0 B 8 2 \ u 0 B 8 3 \ u 0 B 8 5 - \ u 0 B 8 A \ u 0 B 8 E - \ u 0 B 9 0 \ u 0 B 9 2 - \ u 0 B 9 5 \ u 0 B 9 9 \ u 0 B 9 A \ u 0 B 9 C \ u 0 B 9 E \ u 0 B 9 F \ u 0 B A 3 \ u 0 B A 4 \ u 0 B A 8 - \ u 0 B A A \ u 0 B A E - \ u 0 B B 9 \ u 0 B B E - \ u 0 B C 2 \ u 0 B C 6 - \ u 0 B C 8 \ u 0 B C A - \ u 0 B C C \ u 0 B D 0 \ u 0 B D 7 \ u 0 C 0 1 - \ u 0 C 0 3 \ u 0 C 0 5 - \ u 0 C 0 C \ u 0 C 0 E - \ u 0 C 1 0 \ u 0 C 1 2 - \ u 0 C 2 8 \ u 0 C 2 A - \ u 0 C 3 3 \ u 0 C 3 5 - \ u 0 C 3 9 \ u 0 C 3 D - \ u 0 C 4 4 \ u 0 C 4 6 - \ u 0 C 4 8 \ u 0 C 4 A - \ u 0 C 4 C \ u 0 C 5 5 \ u 0 C 5 6 \ u 0 C 5 8 \ u 0 C 5 9 \ u 0 C 6 0 - \ u 0 C 6 3 \ u 0 C 8 2 \ u 0 C 8 3 \ u 0 C 8 5 - \ u 0 C 8 C \ u 0 C 8 E - \ u 0 C 9 0 \ u 0 C 9 2 - \ u 0 C A 8 \ u 0 C A A - \ u 0 C B 3 \ u 0 C B 5 - \ u 0 C B 9 \ u 0 C B D - \ u 0 C C 4 \ u 0 C C 6 - \ u 0 C C 8 \ u 0 C C A - \ u 0 C C C \ u 0 C D 5 \ u 0 C D 6 \ u 0 C D E \ u 0 C E 0 - \ u 0 C E 3 \ u 0 C F 1 \ u 0 C F 2 \ u 0 D 0 2 \ u 0 D 0 3 \ u 0 D 0 5 - \ u 0 D 0 C \ u 0 D 0 E - \ u 0 D 1 0 \ u 0 D 1 2 - \ u 0 D 3 A \ u 0 D 3 D - \ u 0 D 4 4 \ u 0 D 4 6 - \ u 0 D 4 8 \ u 0 D 4 A - \ u 0 D 4 C \ u 0 D 4 E \ u 0 D 5 7 \ u 0 D 6 0 - \ u 0 D 6 3 \ u 0 D 7 A - \ u 0 D 7 F \ u 0 D 8 2 \ u 0 D 8 3 \ u 0 D 8 5 - \ u 0 D 9 6 \ u 0 D 9 A - \ u 0 D B 1 \ u 0 D B 3 - \ u 0 D B B \ u 0 D B D \ u 0 D C 0 - \ u 0 D C 6 \ u 0 D C F - \ u 0 D D 4 \ u 0 D D 6 \ u 0 D D 8 - \ u 0 D D F \ u 0 D F 2 \ u 0 D F 3 \ u 0 E 0 1 - \ u 0 E 3 A \ u 0 E 4 0 - \ u 0 E 4 6 \ u 0 E 4 D \ u 0 E 8 1 \ u 0 E 8 2 \ u 0 E 8 4 \ u 0 E 8 7 \ u 0 E 8 8 \ u 0 E 8 A \ u 0 E 8 D \ u 0 E 9 4 - \ u 0 E 9 7 \ u 0 E 9 9 - \ u 0 E 9 F \ u 0 E A 1 - \ u 0 E A 3 \ u 0 E A 5 \ u 0 E A 7 \ u 0 E A A \ u 0 E A B \ u 0 E A D - \ u 0 E B 9 \ u 0 E B B - \ u 0 E B D \ u 0 E C 0 - \ u 0 E C 4 \ u 0 E C 6 \ u 0 E C D \ u 0 E D C - \ u 0 E D F \ u 0 F 0 0 \ u 0 F 4 0 - \ u 0 F 4 7 \ u 0 F 4 9 - \ u 0 F 6 C \ u 0 F 7 1 - \ u 0 F 8 1 \ u 0 F 8 8 - \ u 0 F 9 7 \ u 0 F 9 9 - \ u 0 F B C \ u 1 0 0 0 - \ u 1 0 3 6 \ u 1 0 3 8 \ u 1 0 3 B - \ u 1 0 3 F \ u 1 0 5 0 - \ u 1 0 6 2 \ u 1 0 6 5 - \ u 1 0 6 8 \ u 1 0 6 E - \ u 1 0 8 6 \ u 1 0 8 E \ u 1 0 9 C \ u 1 0 9 D \ u 1 0 A 0 - \ u 1 0 C 5 \ u 1 0 C 7 \ u 1 0 C D \ u 1 0 D 0 - \ u 1 0 F A \ u 1 0 F C - \ u 1 2 4 8 \ u 1 2 4 A - \ u 1 2 4 D \ u 1 2 5 0 - \ u 1 2 5 6 \ u 1 2 5 8 \ u 1 2 5 A - \ u 1 2 5 D \ u 1 2 6 0 - \ u 1 2 8 8 \ u 1 2 8 A - \ u 1 2 8 D \ u 1 2 9 0 - \ u 1 2 B 0 \ u 1 2 B 2 - \ u 1 2 B 5 \ u 1 2 B 8 - \ u 1 2 B E \ u 1 2 C 0 \ u 1 2 C 2 - \ u 1 2 C 5 \ u 1 2 C 8 - \ u 1 2 D 6 \ u 1 2 D 8 - \ u 1 3 1 0 \ u 1 3 1 2 - \ u 1 3 1 5 \ u 1 3 1 8 - \ u 1 3 5 A \ u 1 3 5 F \ u 1 3 8 0 - \ u 1 3 8 F \ u 1 3 A 0 - \ u 1 3 F 4 \ u 1 4 0 1 - \ u 1 6 6 C \ u 1 6 6 F - \ u 1 6 7 F \ u 1 6 8 1 - \ u 1 6 9 A \ u 1 6 A 0 - \ u 1 6 E A \ u 1 6 E E - \ u 1 6 F 0 \ u 1 7 0 0 - \ u 1 7 0 C \ u 1 7 0 E - \ u 1 7 1 3 \ u 1 7 2 0 - \ u 1 7 3 3 \ u 1 7 4 0 - \ u 1 7 5 3 \ u 1 7 6 0 - \ u 1 7 6 C \ u 1 7 6 E - \ u 1 7 7 0 \ u 1 7 7 2 \ u 1 7 7 3 \ u 1 7 8 0 - \ u 1 7 B 3 \ u 1 7 B 6 - \ u 1 7 C 8 \ u 1 7 D 7 \ u 1 7 D C \ u 1 8 2 0 - \ u 1 8 7 7 \ u 1 8 8 0 - \ u 1 8 A A \ u 1 8 B 0 - \ u 1 8 F 5 \ u 1 9 0 0 - \ u 1 9 1 C \ u 1 9 2 0 - \ u 1 9 2 B \ u 1 9 3 0 - \ u 1 9 3 8 \ u 1 9 5 0 - \ u 1 9 6 D \ u 1 9 7 0 - \ u 1 9 7 4 \ u 1 9 8 0 - \ u 1 9 A B \ u 1 9 B 0 - \ u 1 9 C 9 \ u 1 A 0 0 - \ u 1 A 1 B \ u 1 A 2 0 - \ u 1 A 5 E \ u 1 A 6 1 - \ u 1 A 7 4 \ u 1 A A 7 \ u 1 B 0 0 - \ u 1 B 3 3 \ u 1 B 3 5 - \ u 1 B 4 3 \ u 1 B 4 5 - \ u 1 B 4 B \ u 1 B 8 0 - \ u 1 B A 9 \ u 1 B A C - \ u 1 B A F \ u 1 B B A - \ u 1 B E 5 \ u 1 B E 7 - \ u 1 B F 1 \ u 1 C 0 0 - \ u 1 C 3 5 \ u 1 C 4 D - \ u 1 C 4 F \ u 1 C 5 A - \ u 1 C 7 D \ u 1 C E 9 - \ u 1 C E C \ u 1 C E E - \ u 1 C F 3 \ u 1 C F 5 \ u 1 C F 6 \ u 1 D 0 0 - \ u 1 D B F \ u 1 E 0 0 - \ u 1 F 1 5 \ u 1 F 1 8 - \ u 1 F 1 D \ u 1 F 2 0 - \ u 1 F 4 5 \ u 1 F 4 8 - \ u 1 F 4 D \ u 1 F 5 0 - \ u 1 F 5 7 \ u 1 F 5 9 \ u 1 F 5 B \ u 1 F 5 D \ u 1 F 5 F - \ u 1 F 7 D \ u 1 F 8 0 - \ u 1 F B 4 \ u 1 F B 6 - \ u 1 F B C \ u 1 F B E \ u 1 F C 2 - \ u 1 F C 4 \ u 1 F C 6 - \ u 1 F C C \ u 1 F D 0 - \ u 1 F D 3 \ u 1 F D 6 - \ u 1 F D B \ u 1 F E 0 - \ u 1 F E C \ u 1 F F 2 - \ u 1 F F 4 \ u 1 F F 6 - \ u 1 F F C \ u 2 0 7 1 \ u 2 0 7 F \ u 2 0 9 0 - \ u 2 0 9 C \ u 2 1 0 2 \ u 2 1 0 7 \ u 2 1 0 A - \ u 2 1 1 3 \ u 2 1 1 5 \ u 2 1 1 9 - \ u 2 1 1 D \ u 2 1 2 4 \ u 2 1 2 6 \ u 2 1 2 8 \ u 2 1 2 A - \ u 2 1 2 D \ u 2 1 2 F - \ u 2 1 3 9 \ u 2 1 3 C - \ u 2 1 3 F \ u 2 1 4 5 - \ u 2 1 4 9 \ u 2 1 4 E \ u 2 1 6 0 - \ u 2 1 8 8 \ u 2 4 B 6 - \ u 2 4 E 9 \ u 2 C 0 0 - \ u 2 C 2 E \ u 2 C 3 0 - \ u 2 C 5 E \ u 2 C 6 0 - \ u 2 C E 4 \ u 2 C E B - \ u 2 C E E \ u 2 C F 2 \ u 2 C F 3 \ u 2 D 0 0 - \ u 2 D 2 5 \ u 2 D 2 7 \ u 2 D 2 D \ u 2 D 3 0 - \ u 2 D 6 7 \ u 2 D 6 F \ u 2 D 8 0 - \ u 2 D 9 6 \ u 2 D A 0 - \ u 2 D A 6 \ u 2 D A 8 - \ u 2 D A E \ u 2 D B 0 - \ u 2 D B 6 \ u 2 D B 8 - \ u 2 D B E \ u 2 D C 0 - \ u 2 D C 6 \ u 2 D C 8 - \ u 2 D C E \ u 2 D D 0 - \ u 2 D D 6 \ u 2 D D 8 - \ u 2 D D E \ u 2 D E 0 - \ u 2 D F F \ u 2 E 2 F \ u 3 0 0 5 - \ u 3 0 0 7 \ u 3 0 2 1 - \ u 3 0 2 9 \ u 3 0 3 1 - \ u 3 0 3 5 \ u 3 0 3 8 - \ u 3 0 3 C \ u 3 0 4 1 - \ u 3 0 9 6 \ u 3 0 9 D - \ u 3 0 9 F \ u 3 0 A 1 - \ u 3 0 F A \ u 3 0 F C - \ u 3 0 F F \ u 3 1 0 5 - \ u 3 1 2 D \ u 3 1 3 1 - \ u 3 1 8 E \ u 3 1 A 0 - \ u 3 1
rx _name = new XRegExp ( "^(?<name>" + "[" + str _namedRanges + "][" + str _namedRanges + "\\d.]*)([-+*\\/^&%<=>: ;/\n/),]|$)" ) , rx _defName = new test _defName , rx _arraySeparatorsDef = /^ *[,;] */ , rx _numberDef = /^ *[+-]?\d*(\d|\.)\d*([eE][+-]?\d+)?/ , rx _CommaDef = /^ *[,;] */ , rx _ControlSymbols = /^ *[\u0000-\u001F\u007F-\u009F] */ , emailRe = /^(mailto:)?([a-z0-9'\._-]+@[a-z0-9\.-]+\.[a-z0-9]{2,4})([a-\u044f\u04510-9\._%+-=\? :&]*)/i , ipRe = /^(((https?)|(ftps?)):\/\/)?([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(((1[0-9]{2}|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9])\.){3}(1[0-9]{2}|2[0-4][0-9]|25[0-5]|[1-9][0-9]|[0-9]))(:\d+)?(\/[%\-\w\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{2,})?)*)*\/?/i ,
hostnameRe = /^(((https?)|(ftps?)):\/\/)?([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(([\-\w\u0430-\u044f\u0451]+\.)+[\w\u0430-\u044f\u0451\-]{2,}(:\d+)?(\/[%\-\w\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{2,})?)*)*\/?)/i , localRe = /^(((https?)|(ftps?)):\/\/)([\-\w\u0430-\u044f\u0451]*:?[\-\w\u0430-\u044f\u0451]*@)?(([\-\w\u0430-\u044f\u0451]+)(:\d+)?(\/[%\-\w\u0430-\u044f\u0451]*(\.[\w\u0430-\u044f\u0451]{2,})?(([\w\u0430-\u044f\u0451\-\.\?\\\/+@&#;:`'~=%!,\(\)]*)(\.[\w\u0430-\u044f\u0451]{2,})?)*)*\/?)/i ,
rx _table = build _rx _table ( null ) , rx _table _local = build _rx _table ( null ) ; function getUrlType ( url ) { var checkvalue = url . replace ( new RegExp ( " " , "g" ) , "%20" ) ; var isEmail ; var isvalid = checkvalue . strongMatch ( hostnameRe ) ; ! isvalid && ( isvalid = checkvalue . strongMatch ( ipRe ) ) ; ! isvalid && ( isvalid = checkvalue . strongMatch ( localRe ) ) ; isEmail = checkvalue . strongMatch ( emailRe ) ; ! isvalid && ( isvalid = isEmail ) ; return isvalid ? isEmail ? AscCommon . c _oAscUrlType . Email : AscCommon . c _oAscUrlType . Http : AscCommon . c _oAscUrlType . Invalid } function prepareUrl ( url ,
type ) { if ( ! /(((^https?)|(^ftp)):\/\/)|(^mailto:)/i . test ( url ) ) url = ( AscCommon . c _oAscUrlType . Email == type ? "mailto:" : "http://" ) + url ; return url . replace ( new RegExp ( "%20" , "g" ) , " " ) } function parserHelper ( ) { this . operand _str = null ; this . pCurrPos = null } parserHelper . prototype . _reset = function ( ) { this . operand _str = null ; this . pCurrPos = null } ; parserHelper . prototype . isControlSymbols = function ( formula , start _pos , digitDelim ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( rx _ControlSymbols ) ;
if ( match != null ) { this . operand _str = match [ 0 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isOperator = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var code , find = false , length = formula . length ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( - 1 !== g _arrCodeOperators . indexOf ( code ) ) { this . operand _str = formula [ start _pos ] ; ++ start _pos ; find = true ; break } else if ( g _oStartCodeOperatorsCompare <= code && code <= g _oEndCodeOperatorsCompare ) { this . operand _str =
formula [ start _pos ] ; ++ start _pos ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( g _oStartCodeOperatorsCompare > code || code > g _oEndCodeOperatorsCompare ) break ; this . operand _str += formula [ start _pos ] ; ++ start _pos } find = true ; break } else if ( code === g _oCodeSpace || code === g _oCodeLineFeed ) ++ start _pos ; else break } if ( find ) { while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code !== g _oCodeSpace && code !== g _oCodeLineFeed ) break ; ++ start _pos } this . pCurrPos = start _pos ; return true } return false } ; parserHelper . prototype . isFunc =
function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var frml = formula . substring ( start _pos ) ; var match = frml . match ( rg ) ; if ( match != null ) if ( match . length == 2 ) { this . pCurrPos += match [ 1 ] . length ; this . operand _str = match [ 1 ] ; return true } return false } ; parserHelper . prototype . convertFromR1C1 = function ( r , c , isAbsRow , isAbsCol ) { var activeCell = AscCommonExcel . g _ActiveCell ; var colStr , rowStr , res = "" ; var getColStr = function ( ) { var col ; if ( c < 0 ) { var tempCol = ! isAbsCol && activeCell ? activeCell . c1 + 1 + c : c ; if ( tempCol <=
0 ) tempCol = AscCommon . gc _nMaxCol + tempCol ; col = g _oCellAddressUtils . colnumToColstrFromWsView ( tempCol ) } else col = g _oCellAddressUtils . colnumToColstrFromWsView ( ! isAbsCol && activeCell ? activeCell . c1 + 1 + c : c ) ; return col } ; var getRowStr = function ( ) { var row ; if ( r < 0 ) { var tempRow = ! isAbsRow && activeCell ? activeCell . r1 + 1 + r : r ; if ( tempRow <= 0 ) tempRow = AscCommon . gc _nMaxRow + tempRow ; row = tempRow + "" } else row = ! isAbsRow && activeCell ? activeCell . r1 + 1 + r + "" : r + "" ; return row } ; if ( r !== null && c !== null ) { if ( isNaN ( r ) ) { r = 0 ; isAbsRow = false } if ( isNaN ( c ) ) { c =
0 ; isAbsCol = false } colStr = getColStr ( ) ; rowStr = getRowStr ( ) ; if ( isAbsCol ) colStr = "$" + colStr ; if ( isAbsRow ) rowStr = "$" + rowStr ; res = colStr + rowStr } else if ( c !== null ) { if ( isNaN ( c ) ) { c = 0 ; isAbsCol = false } colStr = getColStr ( ) ; if ( isAbsCol ) colStr = "$" + colStr ; res = colStr } else if ( r !== null ) { if ( isNaN ( r ) ) { r = 0 ; isAbsRow = false } rowStr = getRowStr ( ) ; if ( isAbsRow ) rowStr = "$" + rowStr ; res = rowStr } return res } ; parserHelper . prototype . isArea = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var checkAbs = function ( val1 , val2 ) { var res =
null ; if ( val1 === val2 && val1 === undefined ) res = true ; else if ( val1 === "[" && val2 === "]" ) res = false ; return res } ; var checkMatchRowCol = function ( tempMatch ) { var res = true ; if ( tempMatch [ 9 ] !== "" && tempMatch [ 9 ] !== undefined && ! ( tempMatch [ 6 ] === ":" && tempMatch [ 7 ] !== "" && tempMatch [ 7 ] !== undefined ) ) res = false ; else if ( tempMatch [ 7 ] !== "" && tempMatch [ 7 ] !== undefined && tempMatch [ 6 ] !== ":" ) res = false ; else if ( ( tempMatch [ 7 ] === "" || tempMatch [ 7 ] === undefined ) && tempMatch [ 6 ] === ":" ) res = false ; return res } ; var R1C1Mode = AscCommonExcel . g _R1C1Mode ; var subSTR =
formula . substring ( start _pos ) ; var match ; if ( ! R1C1Mode ) { match = subSTR . match ( rgRange ) || subSTR . match ( rgCols ) || subSTR . match ( rgRows ) ; if ( match != null ) { var m0 = match [ 1 ] . split ( ":" ) ; if ( g _oCellAddressUtils . getCellAddress ( m0 [ 0 ] ) . isValid ( ) && g _oCellAddressUtils . getCellAddress ( m0 [ 1 ] ) . isValid ( ) ) { this . pCurrPos += match [ 1 ] . length ; this . operand _str = match [ 1 ] ; return true } } } else { var abs1Val , abs2Val , abs3Val , abs4Val , ref1 , ref2 ; if ( ( match = subSTR . match ( rgRangeR1C1 ) ) !== null ) { abs1Val = checkAbs ( match [ 3 ] , match [ 5 ] ) ; abs2Val = checkAbs ( match [ 7 ] ,
match [ 9 ] ) ; abs3Val = checkAbs ( match [ 11 ] , match [ 13 ] ) ; abs4Val = checkAbs ( match [ 15 ] , match [ 17 ] ) ; if ( abs1Val !== null && abs2Val !== null && abs3Val !== null && abs4Val !== null ) { ref1 = AscCommon . parserHelp . convertFromR1C1 ( parseInt ( match [ 4 ] ) , parseInt ( match [ 8 ] ) , abs1Val , abs2Val ) ; ref2 = AscCommon . parserHelp . convertFromR1C1 ( parseInt ( match [ 12 ] ) , parseInt ( match [ 16 ] ) , abs3Val , abs4Val ) ; if ( g _oCellAddressUtils . getCellAddress ( ref1 ) . isValid ( ) && g _oCellAddressUtils . getCellAddress ( ref2 ) . isValid ( ) ) { this . pCurrPos += match [ 1 ] . length ; this . operand _str =
match [ 1 ] ; this . real _str = ref1 + ":" + ref2 ; return true } } } else if ( null != ( match = subSTR . match ( rgColsR1C1 ) ) ) { if ( checkMatchRowCol ( match ) ) { abs1Val = checkAbs ( match [ 3 ] , match [ 5 ] ) ; abs2Val = checkAbs ( match [ 8 ] , match [ 10 ] ) ; if ( abs1Val !== null && abs2Val !== null ) { ref1 = AscCommon . parserHelp . convertFromR1C1 ( null , parseInt ( match [ 4 ] ) , null , abs1Val ) ; ref2 = "" !== match [ 7 ] ? AscCommon . parserHelp . convertFromR1C1 ( null , parseInt ( match [ 9 ] ) , null , abs2Val ) : ref1 ; if ( g _oCellAddressUtils . getCellAddress ( ref1 ) . isValid ( ) && g _oCellAddressUtils . getCellAddress ( ref2 ) . isValid ( ) ) { this . pCurrPos +=
match [ 1 ] . length ; this . operand _str = match [ 1 ] ; this . real _str = ref1 + ":" + ref2 ; return true } } } } else if ( null != ( match = subSTR . match ( rgRowsR1C1 ) ) ) if ( checkMatchRowCol ( match ) ) { abs1Val = checkAbs ( match [ 3 ] , match [ 5 ] ) ; abs2Val = checkAbs ( match [ 8 ] , match [ 10 ] ) ; if ( abs1Val !== null && abs2Val !== null ) { ref1 = AscCommon . parserHelp . convertFromR1C1 ( parseInt ( match [ 4 ] ) , null , abs1Val ) ; ref2 = "" !== match [ 7 ] ? AscCommon . parserHelp . convertFromR1C1 ( parseInt ( match [ 9 ] ) , null , abs2Val ) : ref1 ; if ( g _oCellAddressUtils . getCellAddress ( ref1 ) . isValid ( ) && g _oCellAddressUtils . getCellAddress ( ref2 ) . isValid ( ) ) { this . pCurrPos +=
match [ 1 ] . length ; this . operand _str = match [ 1 ] ; this . real _str = ref1 + ":" + ref2 ; return true } } } } return false } ; parserHelper . prototype . isRef = function ( formula , start _pos , allRef ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var R1C1Mode = AscCommonExcel . g _R1C1Mode ; var substr = formula . substring ( start _pos ) , match ; var m0 , m1 ; if ( ! R1C1Mode ) { match = substr . match ( rx _ref ) ; if ( match != null ) { m0 = match [ 0 ] ; m1 = match [ 1 ] ; if ( g _oCellAddressUtils . getCellAddress ( m1 ) . isValid ( ) ) { this . pCurrPos += m0 . indexOf ( " " ) > - 1 ? m0 . length - 1 : m1 . length ; this . operand _str =
m1 ; return true } else if ( allRef ) { match = substr . match ( rx _refAll ) ; if ( ( match != null || match != undefined ) && match . length >= 3 ) { m1 = match [ 1 ] ; this . pCurrPos += m1 . length ; this . operand _str = m1 ; return true } } } } else { match = substr . match ( rx _refR1C1 ) ; if ( match != null && ( match [ 3 ] === match [ 5 ] || match [ 3 ] === "[" && match [ 5 ] === "]" ) && ( match [ 7 ] === match [ 9 ] || match [ 7 ] === "[" && match [ 9 ] === "]" ) ) { m0 = match [ 0 ] ; m1 = match [ 1 ] ; var ref = AscCommon . parserHelp . convertFromR1C1 ( parseInt ( match [ 4 ] ) , parseInt ( match [ 8 ] ) , ! match [ 3 ] , ! match [ 7 ] ) ; if ( g _oCellAddressUtils . getCellAddress ( ref ) . isValid ( ) ) { this . pCurrPos +=
m0 . indexOf ( " " ) > - 1 ? m0 . length - 1 : m1 . length ; this . operand _str = m1 ; this . real _str = ref ; return true } } } return false } ; parserHelper . prototype . is3DRef = function ( formula , start _pos , support _digital _start ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var subSTR = formula . substring ( start _pos ) , match = XRegExp . exec ( subSTR , rx _ref3D _quoted ) || XRegExp . exec ( subSTR , rx _ref3D _non _quoted ) ; if ( ! match && support _digital _start ) match = XRegExp . exec ( subSTR , rx _ref3D _non _quoted _2 ) ; if ( match != null ) { this . pCurrPos += match [ 0 ] . length ; this . operand _str =
match [ 1 ] ; return [ true , match [ "name_from" ] ? match [ "name_from" ] . replace ( /''/g , "'" ) : null , match [ "name_to" ] ? match [ "name_to" ] . replace ( /''/g , "'" ) : null ] } return [ false , null , null ] } ; parserHelper . prototype . isNextPtg = function ( formula , start _pos , digitDelim ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var subSTR = formula . substring ( start _pos ) , match ; if ( subSTR . match ( rx _RightParentheses ) == null && subSTR . match ( digitDelim ? rx _Comma : rx _CommaDef ) == null && subSTR . match ( rx _operators ) == null && ( match = subSTR . match ( rx _intersect ) ) != null ) { this . pCurrPos +=
match [ 0 ] . length ; this . operand _str = match [ 0 ] [ 0 ] ; return true } return false } ; parserHelper . prototype . isNumber = function ( formula , start _pos , digitDelim ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( digitDelim ? rx _number : rx _numberDef ) ; if ( match != null ) { this . operand _str = match [ 0 ] . replace ( FormulaSeparators . digitSeparator , FormulaSeparators . digitSeparatorDef ) ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isLeftParentheses = function ( formula ,
start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var code , find = false , length = formula . length ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code === g _oCodeLeftParentheses ) { this . operand _str = formula [ start _pos ] ; ++ start _pos ; find = true ; break } else if ( code === g _oCodeSpace ) ++ start _pos ; else break } if ( find ) { while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code !== g _oCodeSpace ) break ; ++ start _pos } this . pCurrPos = start _pos ; return true } return false } ; parserHelper . prototype . isRightParentheses =
function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var code , find = false , length = formula . length ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code === g _oCodeRightParentheses ) { this . operand _str = formula [ start _pos ] ; ++ start _pos ; find = true ; break } else if ( code === g _oCodeSpace ) ++ start _pos ; else break } if ( find ) { while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code !== g _oCodeSpace ) break ; ++ start _pos } this . pCurrPos = start _pos ; return true } } ; parserHelper . prototype . isComma =
function ( formula , start _pos , digitDelim ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( digitDelim ? rx _Comma : rx _CommaDef ) ; if ( match != null ) { this . operand _str = match [ 0 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isArraySeparator = function ( formula , start _pos , digitDelim ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( digitDelim ? rx _arraySeparators : rx _arraySeparatorsDef ) ; if ( match != null ) { this . operand _str =
match [ 0 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isError = function ( formula , start _pos , local ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( local ? rx _error _local : rx _error ) ; if ( match != null ) { this . operand _str = match [ 0 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isBoolean = function ( formula , start _pos , local ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( local ?
rx _bool _local : rx _bool ) ; if ( match != null ) { this . operand _str = match [ 1 ] ; this . pCurrPos += match [ 1 ] . length ; return true } return false } ; parserHelper . prototype . isString = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var match = formula . substring ( start _pos ) . match ( rx _string ) ; if ( match != null ) { this . operand _str = match [ 1 ] ; this . pCurrPos += match [ 0 ] . length ; return true } return false } ; parserHelper . prototype . isName = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var subSTR = formula . substring ( start _pos ) ,
match = XRegExp . exec ( subSTR , rx _name ) ; if ( match != null ) { var name = match [ "name" ] ; if ( name && 0 !== name . length && name . toUpperCase ( ) !== cBoolLocal . t && name . toUpperCase ( ) !== cBoolLocal . f ) { this . pCurrPos += name . length ; this . operand _str = name ; return true } this . operand _str = name } return false } ; parserHelper . prototype . isName3D = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var _is3DRef = this . is3DRef ( formula , start _pos ) ; if ( _is3DRef && _is3DRef [ 0 ] && _is3DRef [ 1 ] && _is3DRef [ 1 ] . length ) { var _startPos = this . pCurrPos ;
var _isArea = this . isArea ( formula , _startPos ) ; var _isRef = ! _isArea && this . isRef ( formula , _startPos ) ; return ! _isRef && ! _isArea && this . isName ( formula , _startPos ) } return false } ; parserHelper . prototype . isLeftBrace = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var code , find = false , length = formula . length ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code === g _oCodeLeftBrace ) { this . operand _str = formula [ start _pos ] ; ++ start _pos ; find = true ; break } else if ( code === g _oCodeSpace ) ++ start _pos ;
else break } if ( find ) { while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code !== g _oCodeSpace ) break ; ++ start _pos } this . pCurrPos = start _pos ; return true } } ; parserHelper . prototype . isRightBrace = function ( formula , start _pos ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var code , find = false , length = formula . length ; while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code === g _oCodeRightBrace ) { this . operand _str = formula [ start _pos ] ; ++ start _pos ; find = true ; break } else if ( code === g _oCodeSpace ) ++ start _pos ;
else break } if ( find ) { while ( start _pos !== length ) { code = formula . charCodeAt ( start _pos ) ; if ( code !== g _oCodeSpace ) break ; ++ start _pos } this . pCurrPos = start _pos ; return true } } ; parserHelper . prototype . isTable = function ( formula , start _pos , local ) { if ( this instanceof parserHelper ) this . _reset ( ) ; var subSTR = formula . substring ( start _pos ) , match = XRegExp . exec ( subSTR , local ? rx _table _local : rx _table ) ; if ( match != null && match [ "tableName" ] ) { this . operand _str = match [ 0 ] ; this . pCurrPos += match [ 0 ] . length ; return match } return false } ; parserHelper . prototype . parse3DRef =
function ( formula ) { var is3DRefResult = this . is3DRef ( formula , 0 ) ; if ( is3DRefResult && true === is3DRefResult [ 0 ] ) { var sheetName = is3DRefResult [ 1 ] ; var indexStartRange = null !== this . pCurrPos ? this . pCurrPos : formula . indexOf ( "!" ) + 1 ; if ( this . isArea ( formula , indexStartRange ) || this . isRef ( formula , indexStartRange ) ) if ( this . operand _str . length == formula . substring ( indexStartRange ) . length ) return { sheet : sheetName , sheet2 : is3DRefResult [ 2 ] , range : this . operand _str } ; else return null } return null } ; parserHelper . prototype . get3DRef = function ( sheet ,
range ) { sheet = sheet . split ( ":" ) ; var wsFrom = sheet [ 0 ] , wsTo = sheet [ 1 ] === undefined ? wsFrom : sheet [ 1 ] ; if ( rx _test _ws _name . test ( wsFrom ) && rx _test _ws _name . test ( wsTo ) ) return ( wsFrom !== wsTo ? wsFrom + ":" + wsTo : wsFrom ) + "!" + range ; else { wsFrom = wsFrom . replace ( /'/g , "''" ) ; wsTo = wsTo . replace ( /'/g , "''" ) ; return "'" + ( wsFrom !== wsTo ? wsFrom + ":" + wsTo : wsFrom ) + "'!" + range } } ; parserHelper . prototype . getEscapeSheetName = function ( sheet ) { return rx _test _ws _name . test ( sheet ) ? sheet : "'" + sheet . replace ( /'/g , "''" ) + "'" } ; parserHelper . prototype . checkDataRange =
function ( model , wb , dialogType , dataRange , fullCheck , isRows , subType ) { var result , range , sheetModel , checkChangeRange ; if ( Asc . c _oAscSelectionDialogType . Chart === dialogType ) { if ( dataRange ) { var sData = dataRange ; if ( sData [ 0 ] === "=" ) sData = sData . slice ( 1 ) ; result = parserHelp . parse3DRef ( sData ) } if ( result ) { sheetModel = model . getWorksheetByName ( result . sheet ) ; if ( sheetModel ) range = AscCommonExcel . g _oRangeCache . getAscRange ( result . range ) } } else if ( Asc . c _oAscSelectionDialogType . PivotTableData === dialogType || Asc . c _oAscSelectionDialogType . PivotTableReport ===
dialogType ) { result = parserHelp . parse3DRef ( dataRange ) ; if ( result ) { sheetModel = model . getWorksheetByName ( result . sheet ) ; if ( sheetModel ) range = AscCommonExcel . g _oRangeCache . getAscRange ( result . range ) } else if ( Asc . c _oAscSelectionDialogType . PivotTableReport === dialogType ) range = AscCommonExcel . g _oRangeCache . getAscRange ( dataRange ) ; if ( ! range ) range = AscCommon . rx _defName . test ( dataRange ) ; if ( ! range ) range = parserHelp . isTable ( dataRange , 0 , true ) } else if ( Asc . c _oAscSelectionDialogType . PrintTitles === dialogType ) if ( dataRange === "" ) return Asc . c _oAscError . ID . No ;
else range = AscCommonExcel . g _oRangeCache . getAscRange ( dataRange ) ; else if ( Asc . c _oAscSelectionDialogType . DataValidation === dialogType ) if ( dataRange === null || dataRange === "" ) return Asc . c _oAscError . ID . DataValidateMustEnterValue ; else { if ( typeof dataRange === "string" ) { result = parserHelp . parse3DRef ( dataRange ) ; if ( result ) { sheetModel = model . getWorksheetByName ( result . sheet ) ; if ( sheetModel ) range = AscCommonExcel . g _oRangeCache . getAscRange ( result . range ) } } } else range = AscCommonExcel . g _oRangeCache . getAscRange ( dataRange ) ; if ( ! range &&
Asc . c _oAscSelectionDialogType . DataValidation !== dialogType ) return Asc . c _oAscError . ID . DataRangeError ; if ( fullCheck ) if ( Asc . c _oAscSelectionDialogType . Chart === dialogType ) { var maxSeries = AscFormat . MAX _SERIES _COUNT ; var minStockVal = 4 ; var maxValues = AscFormat . MAX _POINTS _COUNT ; var intervalValues , intervalSeries ; if ( isRows ) { intervalSeries = range . r2 - range . r1 + 1 ; intervalValues = range . c2 - range . c1 + 1 } else { intervalSeries = range . c2 - range . c1 + 1 ; intervalValues = range . r2 - range . r1 + 1 } if ( Asc . c _oAscChartTypeSettings . stock === subType ) { var chartSettings =
new Asc . asc _ChartSettings ; chartSettings . putType ( Asc . c _oAscChartTypeSettings . stock ) ; chartSettings . putRange ( dataRange ) ; chartSettings . putInColumns ( ! isRows ) ; var chartSeries = AscFormat . getChartSeries ( sheetModel , chartSettings ) . series ; if ( minStockVal !== chartSeries . length || ! chartSeries [ 0 ] . Val || ! chartSeries [ 0 ] . Val . NumCache || chartSeries [ 0 ] . Val . NumCache . length < minStockVal ) return Asc . c _oAscError . ID . StockChartError } else if ( intervalSeries > maxSeries ) return Asc . c _oAscError . ID . MaxDataSeriesError ; else if ( intervalValues >
maxValues ) return Asc . c _oAscError . ID . MaxDataPointsError } else if ( Asc . c _oAscSelectionDialogType . FormatTable === dialogType ) if ( true === wb . getWorksheet ( ) . model . autoFilters . isRangeIntersectionTableOrFilter ( range ) ) return Asc . c _oAscError . ID . AutoFilterDataRangeError ; else if ( wb . getWorksheet ( ) . intersectionFormulaArray ( range , true , true ) ) return Asc . c _oAscError . ID . MultiCellsInTablesFormulaArray ; else { if ( range && Asc . c _oAscSelectionType . RangeCells !== range . getType ( ) ) return Asc . c _oAscError . ID . LargeRangeWarning } else if ( Asc . c _oAscSelectionDialogType . FormatTableChangeRange ===
dialogType ) { checkChangeRange = wb . getWorksheet ( ) . af _checkChangeRange ( range ) ; if ( null !== checkChangeRange ) return checkChangeRange } else if ( Asc . c _oAscSelectionDialogType . CustomSort === dialogType ) { checkChangeRange = wb . getWorksheet ( ) . checkCustomSortRange ( range , isRows ) ; if ( null !== checkChangeRange ) return checkChangeRange } else if ( Asc . c _oAscSelectionDialogType . PivotTableData === dialogType ) { if ( ! Asc . CT _pivotTableDefinition . prototype . isValidDataRef ( dataRange ) ) return c _oAscError . ID . PivotLabledColumns } else if ( Asc . c _oAscSelectionDialogType . PivotTableReport ===
dialogType ) { var location = Asc . CT _pivotTableDefinition . prototype . parseDataRef ( dataRange ) ; if ( location ) { sheetModel = location . ws ; if ( ! sheetModel ) sheetModel = model . getActiveWs ( ) ; var newRange = new Asc . Range ( location . bbox . c1 , location . bbox . r1 , location . bbox . c1 + AscCommonExcel . NEW _PIVOT _LAST _COL _OFFSET , location . bbox . r1 + AscCommonExcel . NEW _PIVOT _LAST _ROW _OFFSET ) ; return sheetModel . checkPivotReportLocationForError ( [ newRange ] ) } else return Asc . c _oAscError . ID . DataRangeError } else if ( Asc . c _oAscSelectionDialogType . DataValidation ===
dialogType ) { var dataValidaionTest = AscCommonExcel . CDataValidation . prototype . isValidDataRef ( model . getActiveWs ( ) , dataRange , subType ) ; if ( null !== dataValidaionTest ) return dataValidaionTest } return Asc . c _oAscError . ID . No } ; parserHelper . prototype . setDigitSeparator = function ( sep ) { if ( sep != FormulaSeparators . digitSeparatorDef ) { FormulaSeparators . digitSeparator = sep ; FormulaSeparators . arrayRowSeparator = ";" ; FormulaSeparators . arrayColSeparator = "\\" ; FormulaSeparators . functionArgumentSeparator = ";" ; rx _number = new RegExp ( "^ *[+-]?\\d*(\\d|\\" +
FormulaSeparators . digitSeparator + ")\\d*([eE][+-]?\\d+)?" ) ; rx _Comma = new RegExp ( "^ *[" + FormulaSeparators . functionArgumentSeparator + "] *" ) ; rx _arraySeparators = new RegExp ( "^ *[" + FormulaSeparators . arrayRowSeparator + "\\" + FormulaSeparators . arrayColSeparator + "] *" ) } else { FormulaSeparators . arrayRowSeparator = FormulaSeparators . arrayRowSeparatorDef ; FormulaSeparators . arrayColSeparator = FormulaSeparators . arrayColSeparatorDef ; FormulaSeparators . digitSeparator = FormulaSeparators . digitSeparatorDef ; FormulaSeparators . functionArgumentSeparator =
FormulaSeparators . functionArgumentSeparatorDef ; rx _number = new RegExp ( "^ *[+-]?\\d*(\\d|\\" + FormulaSeparators . digitSeparatorDef + ")\\d*([eE][+-]?\\d+)?" ) ; rx _Comma = new RegExp ( "^ *[" + FormulaSeparators . functionArgumentSeparatorDef + "] *" ) ; rx _arraySeparators = new RegExp ( "^ *[" + FormulaSeparators . arrayRowSeparatorDef + "\\" + FormulaSeparators . arrayColSeparatorDef + "] *" ) } rx _table _local = build _rx _table _cur ( ) } ; parserHelper . prototype . getColumnTypeByName = function ( value ) { var res ; switch ( value . toLowerCase ( ) ) { case "#" + cStrucTableLocalColumns [ "a" ] . toLocaleLowerCase ( ) : case cStrucTableReservedWords . all . toLocaleLowerCase ( ) : res =
FormulaTablePartInfo . all ; break ; case "#" + cStrucTableLocalColumns [ "d" ] . toLocaleLowerCase ( ) : case cStrucTableReservedWords . data . toLocaleLowerCase ( ) : res = FormulaTablePartInfo . data ; break ; case "#" + cStrucTableLocalColumns [ "h" ] . toLocaleLowerCase ( ) : case cStrucTableReservedWords . headers . toLocaleLowerCase ( ) : res = FormulaTablePartInfo . headers ; break ; case "#" + cStrucTableLocalColumns [ "t" ] . toLocaleLowerCase ( ) : case cStrucTableReservedWords . totals . toLocaleLowerCase ( ) : res = FormulaTablePartInfo . totals ; break ; case "#" + cStrucTableLocalColumns [ "tr" ] . toLocaleLowerCase ( ) : case cStrucTableReservedWords . at . toLocaleLowerCase ( ) : case cStrucTableReservedWords . thisrow . toLocaleLowerCase ( ) : res =
FormulaTablePartInfo . thisRow ; break ; default : res = FormulaTablePartInfo . data ; break } return res } ; parserHelper . prototype . getColumnNameByType = function ( value , local ) { switch ( value ) { case FormulaTablePartInfo . all : { if ( local ) return "#" + cStrucTableLocalColumns [ "a" ] ; return cStrucTableReservedWords . all } case FormulaTablePartInfo . data : { if ( local ) return "#" + cStrucTableLocalColumns [ "d" ] ; return cStrucTableReservedWords . data } case FormulaTablePartInfo . headers : { if ( local ) return "#" + cStrucTableLocalColumns [ "h" ] ; return cStrucTableReservedWords . headers } case FormulaTablePartInfo . totals : { if ( local ) return "#" +
cStrucTableLocalColumns [ "t" ] ; return cStrucTableReservedWords . totals } case FormulaTablePartInfo . thisRow : { if ( local ) return "#" + cStrucTableLocalColumns [ "tr" ] ; return cStrucTableReservedWords . thisrow } } return null } ; var parserHelp = new parserHelper ; var g _oHtmlCursor = new CHTMLCursor ; var kCurFormatPainterWord = "de-formatpainter" ; g _oHtmlCursor . register ( kCurFormatPainterWord , "text_copy" , "2 11" , "pointer" ) ; function asc _ajax ( obj ) { var url = "" , type = "GET" , async = true , data = null , dataType , error = null , success = null , httpRequest =
null , contentType = "application/x-www-form-urlencoded" , responseType = "" , init = function ( obj ) { if ( typeof obj . url !== "undefined" ) url = obj . url ; if ( typeof obj . type !== "undefined" ) type = obj . type ; if ( typeof obj . async !== "undefined" ) async = obj . async ; if ( typeof obj . data !== "undefined" ) data = obj . data ; if ( typeof obj . dataType !== "undefined" ) dataType = obj . dataType ; if ( typeof obj . error !== "undefined" ) error = obj . error ; if ( typeof obj . success !== "undefined" ) success = obj . success ; if ( typeof obj . contentType !== "undefined" ) contentType = obj . contentType ;
if ( typeof obj . responseType !== "undefined" ) responseType = obj . responseType ; if ( window . XMLHttpRequest ) { httpRequest = new XMLHttpRequest ; if ( httpRequest . overrideMimeType && dataType ) httpRequest . overrideMimeType ( dataType ) } else if ( window . ActiveXObject ) try { httpRequest = new ActiveXObject ( "Msxml2.XMLHTTP" ) } catch ( e$13 ) { try { httpRequest = new ActiveXObject ( "Microsoft.XMLHTTP" ) } catch ( e ) { } } httpRequest . onreadystatechange = function ( ) { respons ( this ) } ; send ( ) } , send = function ( ) { httpRequest . open ( type , url , async ) ; if ( type === "POST" ) httpRequest . setRequestHeader ( "Content-Type" ,
contentType ) ; if ( responseType ) httpRequest . responseType = responseType ; httpRequest . send ( data ) } , respons = function ( httpRequest ) { switch ( httpRequest . readyState ) { case 0 : break ; case 1 : break ; case 2 : break ; case 3 : break ; case 4 : if ( httpRequest . status === 200 || httpRequest . status === 1223 ) { if ( typeof success === "function" ) success ( httpRequest ) } else if ( typeof error === "function" ) error ( httpRequest , httpRequest . statusText , httpRequest . status ) ; break } } ; init ( obj ) } function CIdCounter ( ) { this . m _sUserId = null ; this . m _bLoad = true ; this . m _bRead =
false ; this . m _nIdCounterLoad = 0 ; this . m _nIdCounterEdit = 0 } CIdCounter . prototype . Get _NewId = function ( ) { if ( true === this . m _bLoad || null === this . m _sUserId ) { this . m _nIdCounterLoad ++ ; return "" + this . m _nIdCounterLoad } else { this . m _nIdCounterEdit ++ ; return "" + this . m _sUserId + "_" + this . m _nIdCounterEdit } } ; CIdCounter . prototype . Set _UserId = function ( sUserId ) { this . m _sUserId = sUserId } ; CIdCounter . prototype . Set _Load = function ( bValue ) { this . m _bLoad = bValue } ; CIdCounter . prototype . Clear = function ( ) { this . m _sUserId = null ; this . m _bLoad = true ; this . m _nIdCounterLoad =
0 ; this . m _nIdCounterEdit = 0 } ; function CLock ( ) { this . Type = locktype _None ; this . UserId = null } CLock . prototype . Get _Type = function ( ) { return this . Type } ; CLock . prototype . Set _Type = function ( NewType , Redraw ) { if ( NewType === locktype _None ) this . UserId = null ; this . Type = NewType ; var oApi = editor ; var oLogicDocument = oApi . WordControl . m _oLogicDocument ; if ( false != Redraw && oLogicDocument ) { var oDrawingDocument = oLogicDocument . DrawingDocument ; oDrawingDocument . ClearCachePages ( ) ; oDrawingDocument . FirePaint ( ) ; if ( oApi . editorId === AscCommon . c _oEditorId . Presentation ) { var oCurSlide =
oLogicDocument . Slides [ oLogicDocument . CurPage ] ; if ( oCurSlide && oCurSlide . notesShape && oCurSlide . notesShape . Lock === this ) oDrawingDocument . Notes _OnRecalculate ( oLogicDocument . CurPage , oCurSlide . NotesWidth , oCurSlide . getNotesHeight ( ) ) } var oRevisionsStack = oApi . asc _GetRevisionsChangesStack ( ) ; var arrParagraphs = [ ] ; for ( var nIndex = 0 , nCount = oRevisionsStack . length ; nIndex < nCount ; ++ nIndex ) arrParagraphs . push ( oRevisionsStack [ nIndex ] . get _Paragraph ( ) ) ; var bNeedUpdate = false ; for ( var nIndex = 0 , nCount = arrParagraphs . length ; nIndex <
nCount ; ++ nIndex ) if ( arrParagraphs [ nIndex ] . GetLock ( ) === this ) { bNeedUpdate = true ; break } if ( bNeedUpdate ) { oLogicDocument . TrackRevisionsManager . Clear _VisibleChanges ( ) ; oLogicDocument . Document _UpdateInterfaceState ( false ) } } } ; CLock . prototype . Check = function ( Id ) { if ( this . Type === locktype _Mine ) AscCommon . CollaborativeEditing . Add _CheckLock ( false ) ; else if ( this . Type === locktype _Other || this . Type === locktype _Other2 || this . Type === locktype _Other3 ) AscCommon . CollaborativeEditing . Add _CheckLock ( true ) ; else AscCommon . CollaborativeEditing . Add _CheckLock ( Id ) } ;
CLock . prototype . Lock = function ( bMine ) { if ( locktype _None === this . Type ) if ( true === bMine ) this . Type = locktype _Mine ; else true . Type = locktype _Other } ; CLock . prototype . Is _Locked = function ( ) { if ( locktype _None != this . Type && locktype _Mine != this . Type ) return true ; return false } ; CLock . prototype . Set _UserId = function ( UserId ) { this . UserId = UserId } ; CLock . prototype . Get _UserId = function ( ) { return this . UserId } ; CLock . prototype . Have _Changes = function ( ) { if ( locktype _Other2 === this . Type || locktype _Other3 === this . Type ) return true ; return false } ;
function CContentChanges ( ) { this . m _aChanges = [ ] } CContentChanges . prototype . Add = function ( Changes ) { this . m _aChanges . push ( Changes ) } ; CContentChanges . prototype . RemoveByHistoryItem = function ( Item ) { for ( var nIndex = 0 , nCount = this . m _aChanges . length ; nIndex < nCount ; ++ nIndex ) if ( this . m _aChanges [ nIndex ] . m _pData === Item ) { this . m _aChanges . splice ( nIndex , 1 ) ; return } } ; CContentChanges . prototype . Clear = function ( ) { this . m _aChanges . length = 0 } ; CContentChanges . prototype . Check = function ( Type , Pos ) { var CurPos = Pos ; var Count = this . m _aChanges . length ;
for ( var Index = 0 ; Index < Count ; Index ++ ) { var NewPos = this . m _aChanges [ Index ] . Check _Changes ( Type , CurPos ) ; if ( false === NewPos ) return false ; CurPos = NewPos } return CurPos } ; CContentChanges . prototype . Refresh = function ( ) { var Count = this . m _aChanges . length ; for ( var Index = 0 ; Index < Count ; Index ++ ) this . m _aChanges [ Index ] . Refresh _BinaryData ( ) } ; function CContentChangesElement ( Type , Pos , Count , Data ) { this . m _nType = Type ; this . m _nCount = Count ; this . m _pData = Data ; this . m _aPositions = this . Make _ArrayOfSimpleActions ( Type , Pos , Count ) } CContentChangesElement . prototype . Refresh _BinaryData =
function ( ) { var Binary _Writer = AscCommon . History . BinaryWriter ; var Binary _Pos = Binary _Writer . GetCurPosition ( ) ; this . m _pData . Data . UseArray = true ; this . m _pData . Data . PosArray = this . m _aPositions ; Binary _Writer . WriteString2 ( this . m _pData . Class . Get _Id ( ) ) ; Binary _Writer . WriteLong ( this . m _pData . Data . Type ) ; this . m _pData . Data . WriteToBinary ( Binary _Writer ) ; var Binary _Len = Binary _Writer . GetCurPosition ( ) - Binary _Pos ; this . m _pData . Binary . Pos = Binary _Pos ; this . m _pData . Binary . Len = Binary _Len } ; CContentChangesElement . prototype . Check _Changes =
function ( Type , Pos ) { var CurPos = Pos ; if ( contentchanges _Add === Type ) for ( var Index = 0 ; Index < this . m _nCount ; Index ++ ) { if ( false !== this . m _aPositions [ Index ] ) if ( CurPos <= this . m _aPositions [ Index ] ) this . m _aPositions [ Index ] ++ ; else if ( contentchanges _Add === this . m _nType ) CurPos ++ ; else CurPos -- } else for ( var Index = 0 ; Index < this . m _nCount ; Index ++ ) if ( false !== this . m _aPositions [ Index ] ) if ( CurPos < this . m _aPositions [ Index ] ) this . m _aPositions [ Index ] -- ; else if ( CurPos > this . m _aPositions [ Index ] ) if ( contentchanges _Add === this . m _nType ) CurPos ++ ;
else CurPos -- ; else if ( AscCommon . contentchanges _Remove === this . m _nType ) { this . m _aPositions [ Index ] = false ; return false } else CurPos ++ ; return CurPos } ; CContentChangesElement . prototype . Make _ArrayOfSimpleActions = function ( Type , Pos , Count ) { var Positions = [ ] ; if ( contentchanges _Add === Type ) for ( var Index = 0 ; Index < Count ; Index ++ ) Positions [ Index ] = Pos + Index ; else for ( var Index = 0 ; Index < Count ; Index ++ ) Positions [ Index ] = Pos ; return Positions } ; function CorrectMMToTwips ( mm ) { return ( mm * 20 * 72 / 25.4 + . 5 | 0 ) * 25.4 / 20 / 72 } function TwipsToMM ( nTwips ) { return ( null !==
nTwips && undefined !== nTwips ? nTwips : 1 ) * 25.4 / 20 / 72 } function MMToTwips ( mm ) { return mm * 20 * 72 / 25.4 + . 5 | 0 } function RomanToInt ( sRoman ) { sRoman = sRoman . toUpperCase ( ) ; if ( sRoman < 1 ) return 0 ; else if ( ! /^M*(?:D?C{0,3}|C[MD])(?:L?X{0,3}|X[CL])(?:V?I{0,3}|I[XV])$/i . test ( sRoman ) ) return NaN ; var chars = { "M" : 1E3 , "CM" : 900 , "D" : 500 , "CD" : 400 , "C" : 100 , "XC" : 90 , "L" : 50 , "XL" : 40 , "X" : 10 , "IX" : 9 , "V" : 5 , "IV" : 4 , "I" : 1 } ; var arabic = 0 ; sRoman . replace ( /[MDLV]|C[MD]?|X[CL]?|I[XV]?/g , function ( i ) { arabic += chars [ i ] } ) ; return arabic } function LatinNumberingToInt ( sLetters ) { sLetters =
sLetters . toUpperCase ( ) ; if ( sLetters . length <= 0 ) return NaN ; var nLen = sLetters . length ; var nFirstCharCode = sLetters . charCodeAt ( 0 ) ; if ( 65 > nFirstCharCode || nFirstCharCode > 90 ) return NaN ; for ( var nPos = 1 ; nPos < nLen ; ++ nPos ) if ( sLetters . charCodeAt ( nPos ) !== nFirstCharCode ) return NaN ; return nFirstCharCode - 64 + 26 * ( nLen - 1 ) } function IntToNumberFormat ( nValue , nFormat ) { var sResult = "" ; switch ( nFormat ) { case Asc . c _oAscNumberingFormat . Bullet : { break } case Asc . c _oAscNumberingFormat . Decimal : { sResult = "" + nValue ; break } case Asc . c _oAscNumberingFormat . DecimalZero : { sResult =
"" + nValue ; if ( 1 === sResult . length ) sResult = "0" + sResult ; break } case Asc . c _oAscNumberingFormat . DecimalEnclosedCircle : { if ( nValue <= 20 ) sResult = String . fromCharCode ( 9312 + nValue - 1 ) ; else sResult = "" + nValue ; break } case Asc . c _oAscNumberingFormat . LowerLetter : case Asc . c _oAscNumberingFormat . UpperLetter : { var Num = nValue - 1 ; var Count = ( Num - Num % 26 ) / 26 ; var Ost = Num % 26 ; var Letter ; if ( Asc . c _oAscNumberingFormat . LowerLetter === nFormat ) Letter = String . fromCharCode ( Ost + 97 ) ; else Letter = String . fromCharCode ( Ost + 65 ) ; for ( var nIndex = 0 ; nIndex <
Count + 1 ; ++ nIndex ) sResult += Letter ; break } case Asc . c _oAscNumberingFormat . RussianLower : case Asc . c _oAscNumberingFormat . RussianUpper : { var Num = nValue - 1 ; var Count = ( Num - Num % 29 ) / 29 ; var Ost = Num % 29 ; if ( Ost > 25 ) Ost += 3 ; else if ( Ost > 24 ) Ost += 2 ; else if ( Ost > 8 ) Ost ++ ; var Letter ; if ( Asc . c _oAscNumberingFormat . RussianLower === nFormat ) Letter = String . fromCharCode ( Ost + 1072 ) ; else Letter = String . fromCharCode ( Ost + 1040 ) ; for ( var nIndex = 0 ; nIndex < Count + 1 ; ++ nIndex ) sResult += Letter ; break } case Asc . c _oAscNumberingFormat . LowerRoman : case Asc . c _oAscNumberingFormat . UpperRoman : { var Num =
nValue ; var Rims ; if ( Asc . c _oAscNumberingFormat . LowerRoman === nFormat ) Rims = [ "m" , "cm" , "d" , "cd" , "c" , "xc" , "l" , "xl" , "x" , "ix" , "v" , "iv" , "i" , " " ] ; else Rims = [ "M" , "CM" , "D" , "CD" , "C" , "XC" , "L" , "XL" , "X" , "IX" , "V" , "IV" , "I" , " " ] ; var Vals = [ 1E3 , 900 , 500 , 400 , 100 , 90 , 50 , 40 , 10 , 9 , 5 , 4 , 1 , 0 ] ; var nIndex = 0 ; while ( Num > 0 ) { while ( Vals [ nIndex ] <= Num ) { sResult += Rims [ nIndex ] ; Num -= Vals [ nIndex ] } nIndex ++ ; if ( nIndex >= Rims . length ) break } break } case Asc . c _oAscNumberingFormat . ChineseCounting : { var arrChinese = [ String . fromCharCode ( 9675 ) , String . fromCharCode ( 19968 ) ,
String . fromCharCode ( 20108 ) , String . fromCharCode ( 19977 ) , String . fromCharCode ( 22235 ) , String . fromCharCode ( 20116 ) , String . fromCharCode ( 20845 ) , String . fromCharCode ( 19971 ) , String . fromCharCode ( 20843 ) , String . fromCharCode ( 20061 ) , String . fromCharCode ( 21313 ) ] ; var nQuotient = nValue / 10 | 0 ; var nRemainder = nValue - nQuotient * 10 ; if ( nQuotient < 10 && nQuotient > 0 ) { if ( 0 !== nRemainder ) sResult = arrChinese [ nRemainder ] + sResult ; sResult = arrChinese [ 10 ] + sResult ; if ( 1 === nQuotient ) nQuotient = 0 } else sResult = arrChinese [ nRemainder ] + sResult ; var nRemValue =
nQuotient ; while ( nQuotient > 0 ) { nQuotient = nRemValue / 10 | 0 ; nRemainder = nRemValue - nQuotient * 10 ; sResult = arrChinese [ nRemainder ] + sResult ; nRemValue = nQuotient } break } case Asc . c _oAscNumberingFormat . ChineseCountingThousand : { var arrChinese = { 0 : String . fromCharCode ( 9675 ) , 1 : String . fromCharCode ( 19968 ) , 2 : String . fromCharCode ( 20108 ) , 3 : String . fromCharCode ( 19977 ) , 4 : String . fromCharCode ( 22235 ) , 5 : String . fromCharCode ( 20116 ) , 6 : String . fromCharCode ( 20845 ) , 7 : String . fromCharCode ( 19971 ) , 8 : String . fromCharCode ( 20843 ) , 9 : String . fromCharCode ( 20061 ) ,
10 : String . fromCharCode ( 21313 ) , 100 : String . fromCharCode ( 30334 ) , 1E3 : String . fromCharCode ( 21315 ) , 1E4 : String . fromCharCode ( 19975 ) } ; var nRemValue = nValue ; while ( true ) { var nTTQuotient = nRemValue / 1E4 | 0 ; var nTTRemainder = nRemValue - nTTQuotient * 1E4 ; nRemValue = nTTQuotient ; var sGroup = "" , isPrevZero = false ; if ( nTTQuotient > 0 ) sGroup += arrChinese [ 1E4 ] ; else isPrevZero = true ; if ( nTTRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } var nQuotient = nTTRemainder / 1E3 | 0 ; var nRemainder = nTTRemainder - nQuotient * 1E3 ; if ( 0 !==
nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 1E3 ] ; isPrevZero = false } else if ( nTTQuotient > 0 ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 100 | 0 ; nRemainder = nRemainder - nQuotient * 100 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 100 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder /
10 | 0 ; nRemainder = nRemainder - nQuotient * 10 ; if ( 0 !== nQuotient ) { if ( nValue < 20 ) sGroup += arrChinese [ 10 ] ; else sGroup += arrChinese [ nQuotient ] + arrChinese [ 10 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( 0 !== nRemainder ) sGroup += arrChinese [ nRemainder ] ; sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break } break } case Asc . c _oAscNumberingFormat . ChineseLegalSimplified : { var arrChinese = { 0 : String . fromCharCode ( 38646 ) , 1 : String . fromCharCode ( 22777 ) , 2 : String . fromCharCode ( 36144 ) , 3 : String . fromCharCode ( 21441 ) ,
4 : String . fromCharCode ( 32902 ) , 5 : String . fromCharCode ( 20237 ) , 6 : String . fromCharCode ( 38470 ) , 7 : String . fromCharCode ( 26578 ) , 8 : String . fromCharCode ( 25420 ) , 9 : String . fromCharCode ( 29590 ) , 10 : String . fromCharCode ( 25342 ) , 100 : String . fromCharCode ( 20336 ) , 1E3 : String . fromCharCode ( 20191 ) , 1E4 : String . fromCharCode ( 33836 ) } ; var nRemValue = nValue ; while ( true ) { var nTTQuotient = nRemValue / 1E4 | 0 ; var nTTRemainder = nRemValue - nTTQuotient * 1E4 ; nRemValue = nTTQuotient ; var sGroup = "" , isPrevZero = false ; if ( nTTQuotient > 0 ) sGroup += arrChinese [ 1E4 ] ; else isPrevZero =
true ; if ( nTTRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } var nQuotient = nTTRemainder / 1E3 | 0 ; var nRemainder = nTTRemainder - nQuotient * 1E3 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 1E3 ] ; isPrevZero = false } else if ( nTTQuotient > 0 ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 100 | 0 ; nRemainder = nRemainder - nQuotient * 100 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 100 ] ; isPrevZero =
false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( nRemainder <= 0 ) { sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break ; continue } nQuotient = nRemainder / 10 | 0 ; nRemainder = nRemainder - nQuotient * 10 ; if ( 0 !== nQuotient ) { sGroup += arrChinese [ nQuotient ] + arrChinese [ 10 ] ; isPrevZero = false } else if ( ! isPrevZero ) { sGroup += arrChinese [ 0 ] ; isPrevZero = true } if ( 0 !== nRemainder ) sGroup += arrChinese [ nRemainder ] ; sResult = sGroup + sResult ; if ( nRemValue <= 0 ) break } break } } return sResult } var c _oAscSpaces = [ ] ; c _oAscSpaces [ 10 ] = 1 ; c _oAscSpaces [ 32 ] =
1 ; c _oAscSpaces [ 8194 ] = 1 ; c _oAscSpaces [ 8195 ] = 1 ; c _oAscSpaces [ 8197 ] = 1 ; c _oAscSpaces [ 12288 ] = 1 ; function IsSpace ( nUnicode ) { return ! ! c _oAscSpaces [ nUnicode ] } function private _IsAbbreviation ( sWord ) { if ( sWord . toUpperCase ( ) === sWord ) { for ( var nPos = 0 , nLen = sWord . length ; nPos < nLen ; ++ nPos ) { var nCharCode = sWord . charCodeAt ( nPos ) ; if ( 44032 <= nCharCode && nCharCode <= 55203 || 4352 <= nCharCode && nCharCode <= 4607 || 12592 <= nCharCode && nCharCode <= 12687 || 43360 <= nCharCode && nCharCode <= 43391 || 55216 <= nCharCode && nCharCode <= 55295 || 19968 <= nCharCode &&
nCharCode <= 40959 || 13312 <= nCharCode && nCharCode <= 19903 || 131072 <= nCharCode && nCharCode <= 173791 || 173824 <= nCharCode && nCharCode <= 177983 || 177984 <= nCharCode && nCharCode <= 178207 || 178208 <= nCharCode && nCharCode <= 183983 || 63744 <= nCharCode && nCharCode <= 64255 || 194560 <= nCharCode && nCharCode <= 195103 ) return false } return true } return false } var g _oUserColorById = { } , g _oUserNextColorIndex = 0 ; function getUserColorById ( userId , userName , isDark , isNumericValue ) { if ( window . parent . APP && window . parent . APP . getUserColor ) try { var CPColor = window . parent . APP . getUserColor ( userId ) ;
if ( CPColor ) return true === isNumericValue ? CPColor . r << 16 & 16711680 | CPColor . g << 8 & 65280 | CPColor . b & 255 : new CColor ( CPColor . r , CPColor . g , CPColor . b , CPColor . a ) } catch ( e ) { } if ( ( ! userId || "" === userId ) && ( ! userName || "" === userName ) ) return new CColor ( 0 , 0 , 0 , 255 ) ; var res ; if ( g _oUserColorById . hasOwnProperty ( userId ) ) res = g _oUserColorById [ userId ] ; else if ( g _oUserColorById . hasOwnProperty ( userName ) ) res = g _oUserColorById [ userName ] ; else { var nColor = Asc . c _oAscArrUserColors [ g _oUserNextColorIndex % Asc . c _oAscArrUserColors . length ] ; ++ g _oUserNextColorIndex ;
res = g _oUserColorById [ userId || userName ] = new CUserCacheColor ( nColor ) } if ( ! res ) return new CColor ( 0 , 0 , 0 , 255 ) ; var oColor = true === isDark ? res . Dark : res . Light ; return true === isNumericValue ? oColor . r << 16 & 16711680 | oColor . g << 8 & 65280 | oColor . b & 255 : oColor } function isNullOrEmptyString ( str ) { return str == undefined || str == null || str == "" } function unleakString ( s ) { return ( " " + s ) . substr ( 1 ) } function readValAttr ( attr ) { if ( attr ( ) ) { var val = attr ( ) [ "val" ] ; return val ? val : null } return null } function getNumFromXml ( val ) { return val ? val - 0 : null }
function getColorFromXml ( attr ) { if ( attr ( ) ) { var vals = attr ( ) ; if ( null != vals [ "theme" ] ) return AscCommonExcel . g _oColorManager . getThemeColor ( getNumFromXml ( vals [ "theme" ] ) , getNumFromXml ( vals [ "tint" ] ) ) ; else if ( null != vals [ "rgb" ] ) return new AscCommonExcel . RgbColor ( 16777215 & getNumFromXml ( vals [ "rgb" ] ) ) } return null } function getBoolFromXml ( val ) { return "0" !== val && "false" !== val && "off" !== val } function CUserCacheColor ( nColor ) { this . Light = null ; this . Dark = null ; this . init ( nColor ) } CUserCacheColor . prototype . init = function ( nColor ) { var r =
nColor >> 16 & 255 ; var g = nColor >> 8 & 255 ; var b = nColor & 255 ; var Y = Math . max ( 0 , Math . min ( 255 , . 299 * r + . 587 * g + . 114 * b ) ) ; var Cb = Math . max ( 0 , Math . min ( 255 , 128 - . 168736 * r - . 331264 * g + . 5 * b ) ) ; var Cr = Math . max ( 0 , Math . min ( 255 , 128 + . 5 * r - . 418688 * g - . 081312 * b ) ) ; if ( Y > 63 ) Y = 63 ; var R = Math . max ( 0 , Math . min ( 255 , Y + 1.402 * ( Cr - 128 ) ) ) | 0 ; var G = Math . max ( 0 , Math . min ( 255 , Y - . 34414 * ( Cb - 128 ) - . 71414 * ( Cr - 128 ) ) ) | 0 ; var B = Math . max ( 0 , Math . min ( 255 , Y + 1.772 * ( Cb - 128 ) ) ) | 0 ; this . Light = new CColor ( r , g , b , 255 ) ; this . Dark = new CColor ( R , G , B , 255 ) } ; function loadScript ( url ,
onSuccess , onError ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] === true || window [ "Native" ] !== undefined ) { onSuccess ( ) ; return } if ( window [ "AscDesktopEditor" ] && window [ "local_load_add" ] ) { var _context = { "completeLoad" : function ( ) { return onSuccess ( ) } } ; window [ "local_load_add" ] ( _context , "sdk-all-from-min" , url ) ; var _ret _param = window [ "AscDesktopEditor" ] [ "LoadJS" ] ( url ) ; if ( 2 != _ret _param ) window [ "local_load_remove" ] ( url ) ; if ( _ret _param == 1 ) { setTimeout ( onSuccess , 1 ) ; return } else if ( _ret _param == 2 ) return } var backoff = new AscCommon . Backoff ( AscCommon . g _oBackoffDefaults ) ;
loadScriptWithBackoff ( backoff , url , onSuccess , onError ) } function loadScriptWithBackoff ( backoff , url , onSuccess , onError ) { var script = document . createElement ( "script" ) ; script . type = "text/javascript" ; script . src = url ; script . onload = onSuccess ; script . onerror = function ( ) { backoff . attempt ( onError , function ( ) { loadScriptWithBackoff ( backoff , url , onSuccess , onError ) } ) } ; document . head . appendChild ( script ) } function loadSdk ( sdkName , onSuccess , onError ) { if ( window [ "AscNotLoadAllScript" ] ) onSuccess ( ) ; else { var urlArgs = window . parent && window . parent . APP &&
window . parent . APP . urlArgs || "" ; loadScript ( "./../../../../sdkjs/" + sdkName + "/sdk-all.js?" + urlArgs , onSuccess , onError ) } } function getAltGr ( e ) { var ctrlKey = e . metaKey || e . ctrlKey ; var altKey = e . altKey ; return altKey && ( AscBrowser . isMacOs ? ! ctrlKey : ctrlKey ) } function getColorSchemeByName ( sName ) { for ( var i = 0 ; i < AscCommon . g _oUserColorScheme . length ; ++ i ) { var tmp = AscCommon . g _oUserColorScheme [ i ] ; if ( tmp && tmp . name === sName ) return getColorSchemeByIdx ( i ) } return null } function getColorSchemeByIdx ( idx ) { var tmp = AscCommon . g _oUserColorScheme [ idx ] ;
if ( tmp ) { var scheme = new AscFormat . ClrScheme , _c ; scheme . name = tmp . name ; _c = tmp . get _dk1 ( ) ; scheme . colors [ 8 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _lt1 ( ) ; scheme . colors [ 12 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _dk2 ( ) ; scheme . colors [ 9 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _lt2 ( ) ; scheme . colors [ 13 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent1 ( ) ; scheme . colors [ 0 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent2 ( ) ; scheme . colors [ 1 ] =
AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent3 ( ) ; scheme . colors [ 2 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent4 ( ) ; scheme . colors [ 3 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent5 ( ) ; scheme . colors [ 4 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _accent6 ( ) ; scheme . colors [ 5 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _hlink ( ) ; scheme . colors [ 11 ] = AscFormat . CreateUniColorRGB ( _c . r , _c . g , _c . b ) ; _c = tmp . get _folHlink ( ) ; scheme . colors [ 10 ] = AscFormat . CreateUniColorRGB ( _c . r ,
_c . g , _c . b ) ; return scheme } return null } function getAscColorScheme ( _scheme , theme ) { var elem , _c ; var _rgba = { R : 0 , G : 0 , B : 0 , A : 255 } ; elem = new AscCommon . CAscColorScheme ; elem . scheme = _scheme ; elem . name = _scheme . name ; _scheme . colors [ 8 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 8 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 12 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 12 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 9 ] . Calculate ( theme ,
null , null , null , _rgba ) ; _c = _scheme . colors [ 9 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 13 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 13 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 0 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 0 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 1 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 1 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ;
_scheme . colors [ 2 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 2 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 3 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 3 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 4 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 4 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 5 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 5 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R ,
_c . G , _c . B ) ) ; _scheme . colors [ 11 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 11 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; _scheme . colors [ 10 ] . Calculate ( theme , null , null , null , _rgba ) ; _c = _scheme . colors [ 10 ] . RGBA ; elem . putColor ( new AscCommon . CColor ( _c . R , _c . G , _c . B ) ) ; return elem } function getIndexColorSchemeInArray ( result , asc _color _scheme ) { for ( var j = 0 ; j < result . length ; ++ j ) if ( result [ j ] . isEqual ( asc _color _scheme ) ) return j ; return - 1 } function checkAddColorScheme ( result , asc _color _scheme , nStartIndex ) { var nIndex =
getIndexColorSchemeInArray ( result , asc _color _scheme ) ; if ( nIndex > - 1 ) return nIndex ; var nStartIndex _ = nStartIndex ; if ( nStartIndex === null ) nStartIndex _ = result . length ; result . splice ( nStartIndex _ , 0 , asc _color _scheme ) ; return nStartIndex _ } function isEastAsianScript ( value ) { return 12544 <= value && value <= 12591 || 12704 <= value && value <= 12735 || 19968 <= value && value <= 40938 || 13312 <= value && value <= 19893 || 131072 <= value && value <= 173782 || 173824 <= value && value <= 177972 || 177984 <= value && value <= 178205 || 178208 <= value && value <= 183969 || 183984 <=
value && value <= 191456 || 63744 <= value && value <= 64255 || 194560 <= value && value <= 195103 || 12032 <= value && value <= 12255 || 11904 <= value && value <= 12031 || 12736 <= value && value <= 12783 || 12272 <= value && value <= 12287 || 4352 <= value && value <= 4607 || 43360 <= value && value <= 43391 || 55216 <= value && value <= 55295 || 12592 <= value && value <= 12687 || 65280 <= value && value <= 65519 || 44032 <= value && value <= 55215 || 12352 <= value && value <= 12447 || 110848 <= value && value <= 110895 || 110592 <= value && value <= 110847 || 12688 <= value && value <= 12703 || 12448 <= value && value <= 12543 ||
12784 <= value && value <= 12799 || 42192 <= value && value <= 42239 || 93952 <= value && value <= 94111 || 110960 <= value && value <= 111359 || 94208 <= value && value <= 100332 || 100352 <= value && value <= 101119 || 40960 <= value && value <= 42127 || 42128 <= value && value <= 42191 } var g _oIdCounter = new CIdCounter ; window . Asc . g _signature _drawer = null ; function CSignatureDrawer ( id , api , w , h ) { window . Asc . g _signature _drawer = this ; this . Api = api ; this . CanvasParent = document . getElementById ( id ) ; this . Canvas = document . createElement ( "canvas" ) ; this . Canvas . style . position = "absolute" ;
this . Canvas . style . left = "0px" ; this . Canvas . style . top = "0px" ; var _width = parseInt ( this . CanvasParent . offsetWidth ) ; var _height = parseInt ( this . CanvasParent . offsetHeight ) ; if ( 0 == _width ) _width = 300 ; if ( 0 == _height ) _height = 80 ; this . Canvas . width = _width ; this . Canvas . height = _height ; this . CanvasParent . appendChild ( this . Canvas ) ; this . Image = "" ; this . ImageHtml = null ; this . Text = "" ; this . Font = "Arial" ; this . Size = 10 ; this . Italic = true ; this . Bold = false ; this . Width = w ; this . Height = h ; this . CanvasReturn = null ; this . IsAsync = false } CSignatureDrawer . prototype . getCanvas =
function ( ) { return this . CanvasReturn == null ? this . Canvas : this . CanvasReturn } ; CSignatureDrawer . prototype . getImages = function ( ) { if ( ! this . isValid ( ) ) return [ "" , "" ] ; this . CanvasReturn = document . createElement ( "canvas" ) ; this . CanvasReturn . width = this . Width * AscCommon . g _dKoef _mm _to _pix ; this . CanvasReturn . height = this . Height * AscCommon . g _dKoef _mm _to _pix ; if ( this . Text != "" ) this . drawText ( ) ; else this . drawImage ( ) ; var _ret = [ ] ; _ret . push ( this . CanvasReturn . toDataURL ( "image/png" ) ) ; var _ctx = this . CanvasReturn . getContext ( "2d" ) ; _ctx . strokeStyle =
"#FF0000" ; _ctx . lineWidth = 2 ; _ctx . moveTo ( 0 , 0 ) ; _ctx . lineTo ( this . CanvasReturn . width , this . CanvasReturn . height ) ; _ctx . moveTo ( 0 , this . CanvasReturn . height ) ; _ctx . lineTo ( this . CanvasReturn . width , 0 ) ; _ctx . stroke ( ) ; _ret . push ( this . CanvasReturn . toDataURL ( "image/png" ) ) ; this . CanvasReturn = null ; return _ret } ; CSignatureDrawer . prototype . setText = function ( text , font , size , isItalic , isBold ) { if ( this . IsAsync ) { this . Text = text ; return } this . Image = "" ; this . ImageHtml = null ; this . Text = text ; this . Font = font ; this . Size = size ; this . Italic = isItalic ;
this . Bold = isBold ; this . IsAsync = true ; AscFonts . FontPickerByCharacter . checkText ( this . Text , this , function ( ) { this . IsAsync = false ; var loader = AscCommon . g _font _loader ; var fontinfo = AscFonts . g _fontApplication . GetFontInfo ( font ) ; var isasync = loader . LoadFont ( fontinfo , function ( ) { window . Asc . g _signature _drawer . Api . sync _EndAction ( Asc . c _oAscAsyncActionType . Information , Asc . c _oAscAsyncAction . LoadFont ) ; window . Asc . g _signature _drawer . drawText ( ) } ) ; if ( false === isasync ) this . drawText ( ) } ) } ; CSignatureDrawer . prototype . drawText = function ( ) { var _oldTurn =
this . Api . isViewMode ; var _oldMarks = this . Api . ShowParaMarks ; this . Api . isViewMode = true ; this . Api . ShowParaMarks = false ; AscFormat . ExecuteNoHistory ( AscCommon . DrawTextByCenter , this , [ ] ) ; this . Api . isViewMode = _oldTurn ; this . Api . ShowParaMarks = _oldMarks } ; CSignatureDrawer . prototype . drawImage = function ( ) { var _canvas = this . getCanvas ( ) ; var w = _canvas . width ; var h = _canvas . height ; var _ctx = _canvas . getContext ( "2d" ) ; _ctx . clearRect ( 0 , 0 , w , h ) ; var im _w = this . ImageHtml . width ; var im _h = this . ImageHtml . height ; var _x = 0 ; var _y = 0 ; var _w = 0 ;
var _h = 0 ; var koef1 = w / h ; var koef2 = im _w / im _h ; if ( koef1 > koef2 ) { _h = h ; _w = koef2 * _h >> 0 ; _y = 0 ; _x = w - _w >> 1 } else { _w = w ; _h = _w / koef2 >> 0 ; _x = 0 ; _y = h - _h >> 1 } _ctx . drawImage ( this . ImageHtml , _x , _y , _w , _h ) } ; CSignatureDrawer . prototype . selectImage = CSignatureDrawer . prototype [ "selectImage" ] = function ( ) { this . Text = "" ; window [ "AscDesktopEditor" ] [ "OpenFilenameDialog" ] ( "images" , false , function ( _file ) { var file = _file ; if ( Array . isArray ( file ) ) file = file [ 0 ] ; if ( ! file ) return ; var _drawer = window . Asc . g _signature _drawer ; _drawer . Image = window [ "AscDesktopEditor" ] [ "GetImageBase64" ] ( file ) ;
_drawer . ImageHtml = new Image ; _drawer . ImageHtml . onload = function ( ) { window . Asc . g _signature _drawer . drawImage ( ) } ; _drawer . ImageHtml . src = _drawer . Image ; _drawer = null } ) } ; CSignatureDrawer . prototype . isValid = function ( ) { return this . Image != "" || this . Text != "" } ; CSignatureDrawer . prototype . destroy = function ( ) { window . Asc . g _signature _drawer . CanvasParent . removeChild ( this . Canvas ) ; delete window . Asc . g _signature _drawer } ; function CSignatureImage ( ) { this . ImageValidBase64 = "" ; this . ImageInvalidBase64 = "" ; this . ImageValid = null ; this . ImageInvalid =
null ; this . Valid = false ; this . Loading = 0 ; this . Remove = function ( ) { this . ImageValidBase64 = "" ; this . ImageInvalidBase64 = "" ; this . ImageValid = null ; this . ImageInvalid = null ; this . Valid = false ; this . Loading = 0 } ; this . Register = function ( _api , _guid ) { if ( _api . ImageLoader . map _image _index [ _guid ] ) return ; var _obj = { Image : this . Valid ? this . ImageValid : this . ImageInvalid , Status : AscFonts . ImageLoadStatus . Complete , src : _guid } ; _api . ImageLoader . map _image _index [ _guid ] = _obj } ; this . Unregister = function ( _api , _guid ) { if ( _api . ImageLoader . map _image _index [ _guid ] ) delete _api . ImageLoader . map _image _index [ _guid ] } }
function CShortcuts ( ) { this . List = { } ; this . CustomCounter = 0 ; this . CustomActions = { } } CShortcuts . prototype . Add = function ( nType , nCode , isCtrl , isShift , isAlt ) { this . List [ this . private _GetIndex ( nCode , isCtrl , isShift , isAlt ) ] = nType } ; CShortcuts . prototype . Get = function ( nCode , isCtrl , isShift , isAlt ) { var nType = this . List [ this . private _GetIndex ( nCode , isCtrl , isShift , isAlt ) ] ; return undefined !== nType ? nType : 0 } ; CShortcuts . prototype . private _GetIndex = function ( nCode , isCtrl , isShift , isAlt ) { return nCode << 8 | ( isCtrl ? 4 : 0 ) | ( isShift ? 2 : 0 ) | ( isAlt ?
1 : 0 ) } ; CShortcuts . prototype . CheckType = function ( nType ) { for ( var nIndex in this . List ) if ( this . List [ nIndex ] === nType ) return { KeyCode : nIndex >>> 8 , CtrlKey : ! ! ( nIndex & 4 ) , ShiftKey : ! ! ( nIndex & 2 ) , AltKey : ! ! ( nIndex & 1 ) } ; return null } ; CShortcuts . prototype . Remove = function ( nCode , isCtrl , isShift , isAlt ) { delete this . List [ this . private _GetIndex ( nCode , isCtrl , isShift , isAlt ) ] } ; CShortcuts . prototype . RemoveByType = function ( nType ) { for ( var nIndex in this . List ) if ( this . List [ nIndex ] === nType ) delete this . List [ nIndex ] } ; CShortcuts . prototype . GetNewCustomType =
function ( ) { return 16711680 | this . CustomCounter ++ } ; CShortcuts . prototype . IsCustomType = function ( nType ) { return nType >= 16711680 } ; CShortcuts . prototype . GetCustomAction = function ( nType ) { return this . CustomActions [ nType ] } ; CShortcuts . prototype . AddCustomActionSymbol = function ( nCharCode , sFont ) { var nType = this . GetNewCustomType ( ) ; this . CustomActions [ nType ] = new CCustomShortcutActionSymbol ( nCharCode , sFont ) ; return nType } ; function CCustomShortcutActionSymbol ( nCharCode , sFont ) { this . CharCode = nCharCode ; this . Font = sFont } CCustomShortcutActionSymbol . prototype . Type =
AscCommon . c _oAscCustomShortcutType . Symbol ; AscCommon . EncryptionMessageType = { Encrypt : 0 , Decrypt : 1 } ; function CEncryptionData ( ) { this . _init = false ; this . arrData = [ ] ; this . arrImages = [ ] ; this . handleChangesCallback = null ; this . isChangesHandled = false ; this . cryptoMode = 0 ; this . isChartEditor = false ; this . isExistDecryptedChanges = false ; this . cryptoPrefix = window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "GetEncryptedHeader" ] ? window [ "AscDesktopEditor" ] [ "GetEncryptedHeader" ] ( ) : "ENCRYPTED;" ; this . cryptoPrefixLen = this . cryptoPrefix . length ;
this . editorId = null ; this . nextChangesTimeoutId = - 1 ; this . isPasswordCryptoPresent = false ; this . init = function ( ) { this . _init = true } ; this . isInit = function ( ) { return this . _init } ; this . isNeedCrypt = function ( ) { if ( window . g _asc _plugins ) if ( ! window . g _asc _plugins . isRunnedEncryption ( ) ) return false ; if ( ! window [ "AscDesktopEditor" ] ) return false ; if ( this . isChartEditor ) return false ; if ( 2 == this . cryptoMode ) return true ; if ( 0 === window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) return false ; return true } ; this . isCryptoImages = function ( ) { return this . isNeedCrypt ( ) &&
this . isPasswordCryptoPresent } ; this . addCryproImagesFromDialog = function ( callback ) { var _this = this ; window [ "AscDesktopEditor" ] [ "OpenFilenameDialog" ] ( "images" , true , function ( files ) { if ( ! files ) return ; if ( ! Array . isArray ( files ) ) files = [ files ] ; if ( 0 === files . length ) return ; var _files = [ ] ; var _options = { isImageCrypt : true , callback : callback , ext : [ ] } ; for ( var i = 0 ; i < files . length ; i ++ ) { _files . push ( window [ "AscDesktopEditor" ] [ "GetImageBase64" ] ( files [ i ] , true ) ) ; _options . ext . push ( AscCommon . GetFileExtension ( files [ i ] ) ) } _this . sendChanges ( this ,
_files , AscCommon . EncryptionMessageType . Encrypt , _options ) } ) } ; this . addCryproImagesFromUrls = function ( urls , callback ) { var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; _editor . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . LoadImage ) ; var _this = this ; window [ "AscDesktopEditor" ] [ "DownloadFiles" ] ( urls , [ ] , function ( files ) { _editor . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . LoadImage ) ; _editor . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction ,
Asc . c _oAscAsyncAction . UploadImage ) ; var _files = [ ] ; var _options = { isImageCrypt : true , isUrls : true , callback : callback , ext : [ ] , api : _editor } ; for ( var elem in files ) { _files . push ( window [ "AscDesktopEditor" ] [ "GetImageBase64" ] ( files [ elem ] , true ) ) ; _options . ext . push ( window [ "AscDesktopEditor" ] [ "GetImageFormat" ] ( files [ elem ] ) ) ; window [ "AscDesktopEditor" ] [ "RemoveFile" ] ( files [ elem ] ) } _this . sendChanges ( this , _files , AscCommon . EncryptionMessageType . Encrypt , _options ) } ) } ; this . onDecodeError = function ( ) { var _editor = window [ "Asc" ] [ "editor" ] ?
window [ "Asc" ] [ "editor" ] : window . editor ; _editor . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . DataEncrypted , Asc . c _oAscError . Level . Critical ) } ; this . checkEditorId = function ( ) { if ( null == this . editorId ) { var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; this . editorId = _editor . editorId } } ; this . decryptImage = function ( src , img , data ) { this . sendChanges ( this , [ data ] , AscCommon . EncryptionMessageType . Decrypt , { isImageDecrypt : true , src : src , img : img } ) } ; this . nextChanges = function ( ) { this . nextChangesTimeoutId =
setTimeout ( function ( ) { AscCommon . EncryptionWorker . sendChanges ( undefined , undefined ) ; this . nextChangesTimeoutId = - 1 } , 10 ) } ; this . sendChanges = function ( sender , data , type , options ) { if ( ! this . isNeedCrypt ( ) ) { if ( AscCommon . EncryptionMessageType . Encrypt == type ) sender . _send ( data , true ) ; else if ( AscCommon . EncryptionMessageType . Decrypt == type ) { if ( this . isExistEncryptedChanges ( data [ "changes" ] ) ) { this . onDecodeError ( ) ; return } sender . _onSaveChanges ( data , true ) } return } if ( undefined !== type ) this . arrData . push ( { sender : sender , type : type ,
data : data , options : options } ) ; if ( this . arrData . length == 0 ) return ; if ( undefined !== type && ( 1 != this . arrData . length || ! this . isChangesHandled ) ) return ; if ( undefined !== type && - 1 != this . nextChangesTimeoutId ) { clearTimeout ( this . nextChangesTimeoutId ) ; this . nextChangesTimeoutId = - 1 } if ( AscCommon . EncryptionMessageType . Encrypt == this . arrData [ 0 ] . type ) if ( this . arrData [ 0 ] . options && this . arrData [ 0 ] . options . isImageCrypt ) window . g _asc _plugins . sendToEncryption ( { "type" : "encryptData" , "data" : this . arrData [ 0 ] . data } ) ; else window . g _asc _plugins . sendToEncryption ( { "type" : "encryptData" ,
"data" : JSON . parse ( this . arrData [ 0 ] . data [ "changes" ] ) } ) ; else if ( AscCommon . EncryptionMessageType . Decrypt == this . arrData [ 0 ] . type ) if ( this . arrData [ 0 ] . options && this . arrData [ 0 ] . options . isImageDecrypt ) window . g _asc _plugins . sendToEncryption ( { "type" : "decryptData" , "data" : this . arrData [ 0 ] . data } ) ; else window . g _asc _plugins . sendToEncryption ( { "type" : "decryptData" , "data" : this . arrData [ 0 ] . data [ "changes" ] } ) } ; this . receiveChanges = function ( obj ) { var data = obj [ "data" ] ; var check = obj [ "check" ] ; if ( ! check ) { this . onDecodeError ( ) ; return } if ( this . handleChangesCallback ) { this . isExistDecryptedChanges =
true ; this . checkEditorId ( ) ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) for ( var i = data . length - 1 ; i >= 0 ; i -- ) this . handleChangesCallback . changesBase [ i ] = data [ i ] ; else for ( var i = data . length - 1 ; i >= 0 ; i -- ) this . handleChangesCallback . changesBase [ i ] . m _pData = data [ i ] ; this . isChangesHandled = true ; this . handleChangesCallback . callback . call ( this . handleChangesCallback . sender ) ; this . handleChangesCallback = null ; this . nextChanges ( ) ; return } var obj = this . arrData [ 0 ] ; this . arrData . splice ( 0 , 1 ) ; if ( AscCommon . EncryptionMessageType . Encrypt ==
obj . type ) if ( obj . options && obj . options . isImageCrypt ) { for ( var i = 0 ; i < data . length ; i ++ ) if ( this . cryptoPrefix == data [ i ] . substr ( 0 , this . cryptoPrefixLen ) ) data [ i ] = this . cryptoPrefix + obj . options . ext [ i ] + ";" + data [ i ] . substr ( this . cryptoPrefixLen ) ; if ( ! obj . options . isUrls ) obj . options . callback ( Asc . c _oAscError . ID . No , data ) ; else AscCommon . UploadImageUrls ( data , obj . options . api . documentId , obj . options . api . documentUserId , obj . options . api . CoAuthoringApi . get _jwt ( ) , function ( urls ) { obj . options . api . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction ,
Asc . c _oAscAsyncAction . UploadImage ) ; obj . options . callback ( urls ) } ) } else { obj . data [ "changes" ] = JSON . stringify ( data ) ; obj . sender . _send ( obj . data , true ) } else if ( AscCommon . EncryptionMessageType . Decrypt == obj . type ) if ( obj . options && obj . options . isImageDecrypt ) { window [ "AscDesktopEditor" ] [ "ResaveFile" ] ( obj . options . src , data [ 0 ] ) ; obj . options . img [ "onload_crypto" ] ( obj . options . src ) } else { this . isExistDecryptedChanges = true ; obj . data [ "changes" ] = data ; obj . sender . _onSaveChanges ( obj . data , true ) } this . nextChanges ( ) } ; this . isExistEncryptedChanges =
function ( _array ) { if ( 0 == _array . length ) return false ; this . checkEditorId ( ) ; var isChangesMode = _array [ 0 ] [ "change" ] ? true : false ; var _prefix = "" ; var _checkPrefixLen = this . cryptoPrefixLen + 1 ; if ( isChangesMode ) { for ( var i = _array . length - 1 ; i >= 0 ; i -- ) if ( _array [ i ] [ "change" ] . length > _checkPrefixLen ) { _prefix = _array [ i ] [ "change" ] . substr ( 0 , _checkPrefixLen ) ; if ( - 1 != _prefix . indexOf ( this . cryptoPrefix ) ) { isCrypted = true ; break } } return isCrypted } var isCrypted = false ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) for ( var i = _array . length -
1 ; i >= 0 ; i -- ) { if ( _array [ i ] . length > _checkPrefixLen ) { _prefix = _array [ i ] . substr ( 0 , _checkPrefixLen ) ; if ( - 1 != _prefix . indexOf ( this . cryptoPrefix ) ) { isCrypted = true ; break } } } else for ( var i = _array . length - 1 ; i >= 0 ; i -- ) if ( _array [ i ] . m _pData . length > _checkPrefixLen ) { _prefix = _array [ i ] . m _pData . substr ( 0 , _checkPrefixLen ) ; if ( - 1 != _prefix . indexOf ( this . cryptoPrefix ) ) { isCrypted = true ; break } } return isCrypted } ; this . handleChanges = function ( _array , _sender , _callback ) { if ( 0 == _array . length || ! this . isNeedCrypt ( ) ) { if ( this . isExistEncryptedChanges ( _array ) ) { this . onDecodeError ( ) ;
return } this . isChangesHandled = true ; _callback . call ( _sender ) ; return } this . handleChangesCallback = { changesBase : _array , changes : [ ] , sender : _sender , callback : _callback } ; this . checkEditorId ( ) ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) for ( var i = _array . length - 1 ; i >= 0 ; i -- ) this . handleChangesCallback . changes [ i ] = _array [ i ] ; else for ( var i = _array . length - 1 ; i >= 0 ; i -- ) this . handleChangesCallback . changes [ i ] = _array [ i ] . m _pData ; window . g _asc _plugins . sendToEncryption ( { "type" : "decryptData" , "data" : this . handleChangesCallback . changes } ) } ;
this . asc _setAdvancedOptions = function ( api , idOption , option ) { if ( window . isNativeOpenPassword ) { window [ "AscDesktopEditor" ] [ "NativeViewerOpen" ] ( option . asc _getPassword ( ) ) ; return } if ( window . isCloudCryptoDownloadAs ) return false ; if ( ! this . isNeedCrypt ( ) ) return false ; window . checkPasswordFromPlugin = true ; if ( window [ "Asc" ] . c _oAscAdvancedOptionsID . TXT === idOption ) { var _param = "<m_nCsvTxtEncoding>" + option . asc _getCodePage ( ) + "</m_nCsvTxtEncoding>" ; window [ "AscDesktopEditor" ] [ "SetAdvancedOptions" ] ( _param ) } else if ( window [ "Asc" ] . c _oAscAdvancedOptionsID . CSV ===
idOption ) { var delimiter = option . asc _getDelimiter ( ) ; var delimiterChar = option . asc _getDelimiterChar ( ) ; var _param = "" ; _param += "<m_nCsvTxtEncoding>" + option . asc _getCodePage ( ) + "</m_nCsvTxtEncoding>" ; if ( null != delimiter ) _param += "<m_nCsvDelimiter>" + delimiter + "</m_nCsvDelimiter>" ; if ( null != delimiterChar ) _param += "<m_nCsvDelimiterChar>" + delimiterChar + "</m_nCsvDelimiterChar>" ; window [ "AscDesktopEditor" ] [ "SetAdvancedOptions" ] ( _param ) } else if ( window [ "Asc" ] . c _oAscAdvancedOptionsID . DRM === idOption ) { var _param = "<m_sPassword>" +
AscCommon . CopyPasteCorrectString ( option . asc _getPassword ( ) ) + "</m_sPassword>" ; api . currentPassword = option . asc _getPassword ( ) ; window [ "AscDesktopEditor" ] [ "SetAdvancedOptions" ] ( _param ) } return true } } AscCommon . EncryptionWorker = new CEncryptionData ; function CMouseSmoothWheelCorrector ( t , scrollFunction ) { this . _deltaX = 0 ; this . _deltaY = 0 ; this . _isBreakX = false ; this . _isBreakY = false ; this . _timeoutCorrector = - 1 ; this . _api = t ; this . _scrollFunction = scrollFunction ; this . _normalDelta = 120 ; this . _isNormalDeltaActive = false ; this . setNormalDeltaActive =
function ( value ) { this . _isNormalDeltaActive = true ; this . _normalDelta = value } ; this . isBreakX = function ( ) { return this . _isBreakX } ; this . isBreakY = function ( ) { return this . _isBreakY } ; this . get _DeltaX = function ( wheelDeltaX ) { this . _isBreakX = false ; if ( ! AscCommon . AscBrowser . isMacOs ) return wheelDeltaX ; this . _deltaX += wheelDeltaX ; if ( Math . abs ( this . _deltaX ) >= this . _normalDelta ) return this . _isNormalDeltaActive ? this . _deltaX > 0 ? this . _normalDelta : - this . _normalDelta : this . _deltaX ; this . _isBreakX = true ; return 0 } ; this . get _DeltaY = function ( wheelDeltaY ) { this . _isBreakY =
false ; if ( ! AscCommon . AscBrowser . isMacOs ) return wheelDeltaY ; this . _deltaY += wheelDeltaY ; if ( Math . abs ( this . _deltaY ) >= this . _normalDelta ) return this . _isNormalDeltaActive ? this . _deltaY > 0 ? this . _normalDelta : - this . _normalDelta : this . _deltaY ; this . _isBreakY = true ; return 0 } ; this . checkBreak = function ( ) { if ( - 1 != this . _timeoutCorrector ) { clearTimeout ( this . _timeoutCorrector ) ; this . _timeoutCorrector = - 1 } if ( ( this . _isBreakX || this . _isBreakY ) && this . _scrollFunction ) { var obj = { t : this , x : this . _isBreakX ? this . _deltaX : 0 , y : this . _isBreakY ?
this . _deltaY : 0 } ; this . _timeoutCorrector = setTimeout ( function ( ) { var t = obj . t ; t . _scrollFunction . call ( t . _api , obj . x , obj . y ) ; t . _timeoutCorrector = - 1 ; t . _deltaX = 0 ; t . _deltaY = 0 } , 100 ) } if ( ! this . _isBreakX ) this . _deltaX = 0 ; if ( ! this . _isBreakY ) this . _deltaY = 0 ; this . _isBreakX = false ; this . _isBreakY = false } } AscCommon . CMouseSmoothWheelCorrector = CMouseSmoothWheelCorrector ; function CTranslateManager ( ) { this . mapTranslate = { } } CTranslateManager . prototype . init = function ( map ) { this . mapTranslate = map || { } } ; CTranslateManager . prototype . getValue =
function ( key ) { return this . mapTranslate . hasOwnProperty ( key ) ? this . mapTranslate [ key ] : key } ; function CPolygonPoint2 ( X , Y ) { this . X = X ; this . Y = Y } function CPolygonVectors ( ) { this . Page = - 1 ; this . VX = [ ] ; this . VY = [ ] } function CPolygonPath ( precision ) { this . Page = - 1 ; this . Direction = 1 ; this . precision = precision ; this . Points = [ ] } CPolygonPath . prototype . PushPoint = function ( x , y ) { this . Points . push ( new CPolygonPoint2 ( x / this . precision , y / this . precision ) ) } ; CPolygonPath . prototype . CorrectExtremePoints = function ( ) { var Lng = this . Points . length ;
this . Points [ 0 ] . X = this . Points [ Lng - 1 ] . X ; this . Points [ Lng - 1 ] . Y = this . Points [ 0 ] . Y } ; function CPolygon ( ) { this . Vectors = [ ] ; this . precision = 1E3 } CPolygon . prototype . fill = function ( arrBounds ) { this . Vectors . length = 0 ; if ( arrBounds . length <= 0 ) return ; var nStartLineIndex = 0 , nStartIndex = 0 , CountLines = arrBounds . length , CountBounds ; while ( nStartLineIndex < arrBounds . length ) { CountBounds = arrBounds [ nStartLineIndex ] . length ; while ( nStartIndex < CountBounds ) if ( arrBounds [ nStartLineIndex ] [ nStartIndex ] . W < . 001 ) nStartIndex ++ ; else break ; if ( nStartIndex <
CountBounds ) break ; nStartLineIndex ++ ; nStartIndex = 0 } if ( nStartLineIndex >= arrBounds . length ) return ; var CurrentPage = arrBounds [ nStartLineIndex ] [ nStartIndex ] . Page , CurrentVectors = new CPolygonVectors , VectorsX = CurrentVectors . VX , VectorsY = CurrentVectors . VY ; CurrentVectors . Page = CurrentPage ; this . Vectors . push ( CurrentVectors ) ; for ( var LineIndex = nStartLineIndex ; LineIndex < CountLines ; nStartIndex = 0 , LineIndex ++ ) { if ( arrBounds [ LineIndex ] [ nStartIndex ] . Page !== CurrentPage ) { CurrentPage = arrBounds [ LineIndex ] [ nStartIndex ] . Page ; CurrentVectors =
new CPolygonVectors ; VectorsX = CurrentVectors . VX ; VectorsY = CurrentVectors . VY ; CurrentVectors . Page = CurrentPage ; this . Vectors . push ( CurrentVectors ) } for ( var Index = nStartIndex ; Index < arrBounds [ LineIndex ] . length ; Index ++ ) { var oBound = arrBounds [ LineIndex ] [ Index ] ; if ( oBound . W < . 001 ) continue ; var x1 = Math . round ( oBound . X * this . precision ) , x2 = Math . round ( ( oBound . X + oBound . W ) * this . precision ) , y1 = Math . round ( oBound . Y * this . precision ) , y2 = Math . round ( ( oBound . Y + oBound . H ) * this . precision ) ; if ( VectorsX [ y1 ] == undefined ) VectorsX [ y1 ] = { } ; this . IntersectionX ( VectorsX ,
x2 , x1 , y1 ) ; if ( VectorsY [ x1 ] == undefined ) VectorsY [ x1 ] = { } ; this . IntersectionY ( VectorsY , y1 , y2 , x1 ) ; if ( VectorsX [ y2 ] == undefined ) VectorsX [ y2 ] = { } ; this . IntersectionX ( VectorsX , x1 , x2 , y2 ) ; if ( VectorsY [ x2 ] == undefined ) VectorsY [ x2 ] = { } ; this . IntersectionY ( VectorsY , y2 , y1 , x2 ) } } } ; CPolygon . prototype . IntersectionX = function ( VectorsX , BeginX , EndX , Y ) { var CurrentVector = { } ; CurrentVector [ BeginX ] = EndX ; var VX = VectorsX [ Y ] ; if ( BeginX > EndX ) while ( true == this . IntersectVectorX ( CurrentVector , VX ) ) ; else while ( true == this . IntersectVectorX ( VX , CurrentVector ) ) ;
for ( var X in CurrentVector ) { var VBeginX = parseInt ( X ) ; var VEndX = CurrentVector [ VBeginX ] ; if ( VBeginX !== VEndX || VX [ VBeginX ] === undefined ) VX [ VBeginX ] = VEndX } } ; CPolygon . prototype . IntersectVectorX = function ( VectorOpp , VectorClW ) { for ( var X in VectorOpp ) { var VBeginX = parseInt ( X ) ; var VEndX = VectorOpp [ VBeginX ] ; if ( VEndX == VBeginX ) continue ; for ( var ClwX in VectorClW ) { var ClwBeginX = parseInt ( ClwX ) ; var ClwEndX = VectorClW [ ClwBeginX ] ; var bIntersection = false ; if ( ClwBeginX == ClwEndX ) continue ; if ( ClwBeginX <= VEndX && VBeginX <= ClwEndX ) { VectorOpp [ VBeginX ] =
VBeginX ; VectorClW [ ClwBeginX ] = VEndX ; VectorClW [ VBeginX ] = ClwEndX ; bIntersection = true } else if ( VEndX <= ClwBeginX && ClwEndX <= VBeginX ) { VectorClW [ ClwBeginX ] = ClwBeginX ; VectorOpp [ VBeginX ] = ClwEndX ; VectorOpp [ ClwBeginX ] = VEndX ; bIntersection = true } else if ( ClwBeginX < VEndX && VEndX < ClwEndX ) { VectorClW [ ClwBeginX ] = VEndX ; VectorOpp [ VBeginX ] = ClwEndX ; bIntersection = true } else if ( ClwBeginX < VBeginX && VBeginX < ClwEndX ) { VectorOpp [ ClwBeginX ] = VEndX ; VectorClW [ VBeginX ] = ClwEndX ; delete VectorOpp [ VBeginX ] ; delete VectorClW [ ClwBeginX ] ; bIntersection =
true } if ( bIntersection == true ) return true } } return false } ; CPolygon . prototype . IntersectionY = function ( VectorsY , BeginY , EndY , X ) { var bIntersect = false ; for ( var y in VectorsY [ X ] ) { var CurBeginY = parseInt ( y ) ; var CurEndY = VectorsY [ X ] [ CurBeginY ] ; var minY , maxY ; if ( CurBeginY < CurEndY ) { minY = CurBeginY ; maxY = CurEndY } else { minY = CurEndY ; maxY = CurBeginY } var bInterSection = ! ( maxY <= BeginY && maxY <= EndY || minY >= BeginY && minY >= EndY ) , bDirection = ( CurBeginY - CurEndY ) * ( BeginY - EndY ) < 0 ; if ( bInterSection && bDirection ) { VectorsY [ X ] [ CurBeginY ] = EndY ;
VectorsY [ X ] [ BeginY ] = CurEndY ; bIntersect = true } } if ( bIntersect == false ) VectorsY [ X ] [ BeginY ] = EndY } ; CPolygon . prototype . GetPaths = function ( shift ) { var Paths = [ ] ; shift *= this . precision ; for ( var PageIndex = 0 ; PageIndex < this . Vectors . length ; PageIndex ++ ) { var y , x1 , x2 , x , y1 , y2 ; var VectorsX = this . Vectors [ PageIndex ] . VX , VectorsY = this . Vectors [ PageIndex ] . VY , Page = this . Vectors [ PageIndex ] . Page ; for ( var LineIndex in VectorsX ) for ( var Index in VectorsX [ LineIndex ] ) { var Polygon = new CPolygonPath ( this . precision ) ; Polygon . Page = Page ; y = parseInt ( LineIndex ) ;
x1 = parseInt ( Index ) ; x2 = VectorsX [ y ] [ x1 ] ; VectorsX [ y ] [ x1 ] = - 1 ; var Direction = x1 > x2 ? 1 : - 1 ; var minY = y ; var SignRightLeft , SignDownUp ; var X , Y ; if ( x2 !== - 1 ) { SignRightLeft = x1 > x2 ? 1 : - 1 ; Y = y - SignRightLeft * shift ; Polygon . PushPoint ( x1 , Y ) ; while ( true ) { x = x2 ; y1 = y ; y2 = VectorsY [ x ] [ y1 ] ; if ( y2 == - 1 ) break ; else if ( y2 == undefined ) return [ ] ; VectorsY [ x ] [ y1 ] = - 1 ; SignDownUp = y1 > y2 ? 1 : - 1 ; X = x + SignDownUp * shift ; Polygon . PushPoint ( X , Y ) ; y = y2 ; x1 = x ; x2 = VectorsX [ y ] [ x1 ] ; if ( x2 == - 1 ) break ; else if ( x2 == undefined ) return [ ] ; VectorsX [ y ] [ x1 ] = - 1 ; SignRightLeft = x1 > x2 ?
1 : - 1 ; Y = y - SignRightLeft * shift ; Polygon . PushPoint ( X , Y ) ; if ( y < minY ) { minY = y ; Direction = x1 > x2 ? 1 : - 1 } } Polygon . PushPoint ( X , Y ) ; Polygon . CorrectExtremePoints ( ) ; Polygon . Direction = Direction ; Paths . push ( Polygon ) } } } return Paths } ; function CMathTrack ( ) { this . MathRect = { IsActive : false , Bounds : [ ] , ContentSelection : null } ; this . MathPolygons = [ ] ; this . MathSelectPolygons = [ ] } CMathTrack . prototype . Update = function ( IsActive , IsContentActive , oMath , PixelError ) { this . MathRect . IsActive = IsActive ; if ( true === IsActive && null !== oMath ) { var selectBounds =
true === IsContentActive ? oMath . Get _ContentSelection ( ) : null ; if ( selectBounds != null ) { var SelectPolygon = new CPolygon ; SelectPolygon . fill ( selectBounds ) ; this . MathSelectPolygons = SelectPolygon . GetPaths ( 0 ) } else this . MathSelectPolygons . length = 0 ; var arrBounds = oMath . Get _Bounds ( ) ; if ( arrBounds . length <= 0 ) return ; var MPolygon = new CPolygon ; MPolygon . fill ( arrBounds ) ; this . MathPolygons = MPolygon . GetPaths ( PixelError ) } } ; CMathTrack . prototype . Draw = function ( overlay , oPath , shift , color , dKoefX , dKoefY , left , top ) { var ctx = overlay . m _oContext ;
ctx . strokeStyle = color ; ctx . lineWidth = 1 ; ctx . beginPath ( ) ; var Points = oPath . Points ; var nCount = Points . length ; var PrevX = Points [ nCount - 2 ] . X , PrevY = Points [ nCount - 2 ] . Y ; var _x = left + dKoefX * Points [ nCount - 2 ] . X , _y = top + dKoefY * Points [ nCount - 2 ] . Y ; var StartX , StartY ; for ( var nIndex = 0 ; nIndex < nCount ; nIndex ++ ) { if ( PrevX > Points [ nIndex ] . X ) _y = top + dKoefY * Points [ nIndex ] . Y - shift ; else if ( PrevX < Points [ nIndex ] . X ) _y = top + dKoefY * Points [ nIndex ] . Y + shift ; if ( PrevY < Points [ nIndex ] . Y ) _x = left + dKoefX * Points [ nIndex ] . X - shift ; else if ( PrevY > Points [ nIndex ] . Y ) _x =
left + dKoefX * Points [ nIndex ] . X + shift ; PrevX = Points [ nIndex ] . X ; PrevY = Points [ nIndex ] . Y ; if ( nIndex > 0 ) { overlay . CheckPoint ( _x , _y ) ; if ( 1 == nIndex ) { StartX = _x ; StartY = _y ; overlay . m _oContext . moveTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) } else overlay . m _oContext . lineTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) } } overlay . m _oContext . lineTo ( ( StartX >> 0 ) + . 5 , ( StartY >> 0 ) + . 5 ) ; ctx . closePath ( ) ; ctx . stroke ( ) ; ctx . beginPath ( ) } ; CMathTrack . prototype . DrawWithMatrix = function ( overlay , oPath , ShiftX , ShiftY , color , dKoefX , dKoefY , left , top , m ) { var ctx = overlay . m _oContext ; ctx . strokeStyle =
color ; ctx . lineWidth = 1 ; ctx . beginPath ( ) ; var Points = oPath . Points ; var nCount = Points . length ; var x = Points [ nCount - 2 ] . X , y = Points [ nCount - 2 ] . Y ; var _x , _y ; var PrevX = Points [ nCount - 2 ] . X , PrevY = Points [ nCount - 2 ] . Y ; var StartX , StartY ; for ( var nIndex = 0 ; nIndex < nCount ; nIndex ++ ) { if ( PrevX > Points [ nIndex ] . X ) y = Points [ nIndex ] . Y - ShiftY ; else if ( PrevX < Points [ nIndex ] . X ) y = Points [ nIndex ] . Y + ShiftY ; if ( PrevY < Points [ nIndex ] . Y ) x = Points [ nIndex ] . X - ShiftX ; else if ( PrevY > Points [ nIndex ] . Y ) x = Points [ nIndex ] . X + ShiftX ; PrevX = Points [ nIndex ] . X ; PrevY =
Points [ nIndex ] . Y ; if ( nIndex > 0 ) { _x = left + dKoefX * m . TransformPointX ( x , y ) ; _y = top + dKoefY * m . TransformPointY ( x , y ) ; overlay . CheckPoint ( _x , _y ) ; if ( 1 == nIndex ) { StartX = _x ; StartY = _y ; overlay . m _oContext . moveTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) } else overlay . m _oContext . lineTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) } } overlay . m _oContext . lineTo ( ( StartX >> 0 ) + . 5 , ( StartY >> 0 ) + . 5 ) ; ctx . closePath ( ) ; ctx . stroke ( ) ; ctx . beginPath ( ) } ; CMathTrack . prototype . DrawSelectPolygon = function ( overlay , oPath , dKoefX , dKoefY , left , top , m ) { var ctx = overlay . m _oContext ; ctx . fillStyle =
"#375082" ; ctx . beginPath ( ) ; var Points = oPath . Points ; var nPointIndex ; var _x , _y , x , y , p ; for ( nPointIndex = 0 ; nPointIndex < Points . length - 1 ; nPointIndex ++ ) { p = Points [ nPointIndex ] ; if ( ! m ) { _x = left + dKoefX * p . X ; _y = top + dKoefY * p . Y } else { x = p . X ; y = p . Y ; _x = left + dKoefX * m . TransformPointX ( x , y ) ; _y = top + dKoefY * m . TransformPointY ( x , y ) } overlay . CheckPoint ( _x , _y ) ; if ( 0 == nPointIndex ) ctx . moveTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) ; else ctx . lineTo ( ( _x >> 0 ) + . 5 , ( _y >> 0 ) + . 5 ) } ctx . globalAlpha = . 2 ; ctx . fill ( ) ; ctx . globalAlpha = 1 } ; CMathTrack . prototype . IsActive = function ( ) { return this . MathRect . IsActive } ;
CMathTrack . prototype . GetPolygonsCount = function ( ) { return this . MathPolygons . length } ; CMathTrack . prototype . GetPolygon = function ( nIndex ) { return this . MathPolygons [ nIndex ] } ; CMathTrack . prototype . GetSelectPathsCount = function ( ) { return this . MathSelectPolygons . length } ; CMathTrack . prototype . GetSelectPath = function ( nIndex ) { return this . MathSelectPolygons [ nIndex ] } ; if ( ! Array . prototype . findIndex ) Object . defineProperty ( Array . prototype , "findIndex" , { value : function ( predicate ) { if ( this == null ) throw new TypeError ( "Array.prototype.findIndex called on null or undefined" ) ;
if ( typeof predicate !== "function" ) throw new TypeError ( "predicate must be a function" ) ; var list = Object ( this ) ; var length = list . length >>> 0 ; var thisArg = arguments [ 1 ] ; var value ; for ( var i = 0 ; i < length ; i ++ ) { value = list [ i ] ; if ( predicate . call ( thisArg , value , i , list ) ) return i } return - 1 } } ) ; if ( ! Array . prototype . fill ) Object . defineProperty ( Array . prototype , "fill" , { value : function ( value ) { if ( this == null ) throw new TypeError ( "this is null or not defined" ) ; var O = Object ( this ) ; var len = O . length >>> 0 ; var start = arguments [ 1 ] ; var relativeStart =
start >> 0 ; var k = relativeStart < 0 ? Math . max ( len + relativeStart , 0 ) : Math . min ( relativeStart , len ) ; var end = arguments [ 2 ] ; var relativeEnd = end === undefined ? len : end >> 0 ; var final = relativeEnd < 0 ? Math . max ( len + relativeEnd , 0 ) : Math . min ( relativeEnd , len ) ; while ( k < final ) { O [ k ] = value ; k ++ } return O } } ) ; if ( typeof Int8Array !== "undefined" && ! Int8Array . prototype . fill ) Int8Array . prototype . fill = Array . prototype . fill ; if ( typeof Uint8Array !== "undefined" && ! Uint8Array . prototype . fill ) Uint8Array . prototype . fill = Array . prototype . fill ; if ( typeof Uint8ClampedArray !==
"undefined" && ! Uint8ClampedArray . prototype . fill ) Uint8ClampedArray . prototype . fill = Array . prototype . fill ; if ( typeof Int16Array !== "undefined" && ! Int16Array . prototype . fill ) Int16Array . prototype . fill = Array . prototype . fill ; if ( typeof Uint16Array !== "undefined" && ! Uint16Array . prototype . fill ) Uint16Array . prototype . fill = Array . prototype . fill ; if ( typeof Int32Array !== "undefined" && ! Int32Array . prototype . fill ) Int32Array . prototype . fill = Array . prototype . fill ; if ( typeof Uint32Array !== "undefined" && ! Uint32Array . prototype . fill ) Uint32Array . prototype . fill =
Array . prototype . fill ; if ( typeof Float32Array !== "undefined" && ! Float32Array . prototype . fill ) Float32Array . prototype . fill = Array . prototype . fill ; if ( typeof Float64Array !== "undefined" && ! Float64Array . prototype . fill ) Float64Array . prototype . fill = Array . prototype . fill ; if ( typeof Uint8Array !== "undefined" && ! Uint8Array . prototype . slice ) Uint8Array . prototype . slice = Array . prototype . slice ; function parseText ( text , options , bTrimSpaces ) { var delimiterChar ; if ( options . asc _getDelimiterChar ( ) ) delimiterChar = options . asc _getDelimiterChar ( ) ;
else switch ( options . asc _getDelimiter ( ) ) { case AscCommon . c _oAscCsvDelimiter . None : delimiterChar = undefined ; break ; case AscCommon . c _oAscCsvDelimiter . Tab : delimiterChar = "\t" ; break ; case AscCommon . c _oAscCsvDelimiter . Semicolon : delimiterChar = ";" ; break ; case AscCommon . c _oAscCsvDelimiter . Colon : delimiterChar = ":" ; break ; case AscCommon . c _oAscCsvDelimiter . Comma : delimiterChar = "," ; break ; case AscCommon . c _oAscCsvDelimiter . Space : delimiterChar = " " ; break } var matrix = [ ] ; var rows = text . split ( /\r?\n/ ) ; for ( var i = 0 ; i < rows . length ; ++ i ) { var row =
rows [ i ] ; if ( " " === delimiterChar && bTrimSpaces ) { var addSpace = false ; if ( row [ 0 ] === delimiterChar ) addSpace = true ; row = addSpace ? delimiterChar + row . trim ( ) : row . trim ( ) } matrix . push ( row . split ( delimiterChar ) ) } return matrix } function getTimeISO8601 ( dateStr ) { if ( dateStr ) if ( dateStr . endsWith ( "Z" ) ) return Date . parse ( dateStr ) ; else return Date . parse ( dateStr + "Z" ) ; return NaN } function valueToMmType ( value ) { var oVal = parseFloat ( value ) ; var oType ; if ( ! isNaN ( oVal ) ) { if ( - 1 !== value . indexOf ( "%" ) ) { oType = "%" ; oVal /= 100 } else if ( - 1 !== value . indexOf ( "px" ) ) { oType =
"px" ; oVal *= AscCommon . g _dKoef _pix _to _mm } else if ( - 1 !== value . indexOf ( "in" ) ) { oType = "in" ; oVal *= AscCommonWord . g _dKoef _in _to _mm } else if ( - 1 !== value . indexOf ( "cm" ) ) { oType = "cm" ; oVal *= 10 } else if ( - 1 !== value . indexOf ( "mm" ) ) oType = "mm" ; else if ( - 1 !== value . indexOf ( "pt" ) ) { oType = "pt" ; oVal *= AscCommonWord . g _dKoef _pt _to _mm } else if ( - 1 !== value . indexOf ( "pc" ) ) { oType = "pc" ; oVal *= AscCommonWord . g _dKoef _pc _to _mm } else oType = "none" ; return { val : oVal , type : oType } } return null } function valueToMm ( value ) { var obj = valueToMmType ( value ) ; if ( obj &&
"%" !== obj . type && "none" !== obj . type ) return obj . val ; return null } function arrayMove ( array , from , to ) { array . splice ( to , 0 , array . splice ( from , 1 ) [ 0 ] ) } function getRangeArray ( start , stop ) { var res = new Array ( stop - start ) ; for ( var i = start ; i < stop ; ++ i ) res [ i - start ] = i ; return res } var g _oBackoffDefaults = { retries : 2 , factor : 2 , minTimeout : 100 , maxTimeout : 2E3 , randomize : true } ; function Backoff ( opts ) { this . attempts = 0 ; this . opts = opts } Backoff . prototype . attempt = function ( fError , fRetry ) { var timeout = this . nextTimeout ( ) ; if ( timeout > 0 ) setTimeout ( function ( ) { fRetry ( ) } ,
timeout ) ; else fError ( ) } ; Backoff . prototype . nextTimeout = function ( ) { var timeout = - 1 ; if ( this . attempts < this . opts . retries ) { timeout = this . createTimeout ( this . attempts , this . opts ) ; this . attempts ++ } return timeout } ; Backoff . prototype . createTimeout = function ( attempt , opts ) { var random = opts . randomize ? Math . random ( ) + 1 : 1 ; var timeout = Math . round ( random * opts . minTimeout * Math . pow ( opts . factor , attempt ) ) ; timeout = Math . min ( timeout , opts . maxTimeout ) ; return timeout } ; function backoffOnError ( obj , onError , onRetry ) { if ( ! onRetry ) return onError ;
var backoff = new Backoff ( g _oBackoffDefaults ) ; return function ( ) { var timeout = backoff . nextTimeout ( ) ; if ( timeout > 0 ) setTimeout ( function ( ) { onRetry . call ( obj , obj ) } , timeout ) ; else if ( onError ) onError . apply ( obj , arguments ) } } function backoffOnErrorImg ( img , onRetry ) { if ( ! onRetry ) onRetry = function ( img ) { img . setAttribute ( "src" , img . getAttribute ( "src" ) ) } ; img . onerror = backoffOnError ( img , img . onerror , onRetry ) } function isEmptyObject ( obj ) { for ( var name in obj ) return false ; return true } window [ "AscCommon" ] = window [ "AscCommon" ] || { } ;
window [ "AscCommon" ] . getSockJs = getSockJs ; window [ "AscCommon" ] . getJSZipUtils = getJSZipUtils ; window [ "AscCommon" ] . getJSZip = getJSZip ; window [ "AscCommon" ] . getBaseUrl = getBaseUrl ; window [ "AscCommon" ] . getEncodingParams = getEncodingParams ; window [ "AscCommon" ] . getEncodingByBOM = getEncodingByBOM ; window [ "AscCommon" ] . saveWithParts = saveWithParts ; window [ "AscCommon" ] . loadFileContent = loadFileContent ; window [ "AscCommon" ] . getImageFromChanges = getImageFromChanges ; window [ "AscCommon" ] . openFileCommand = openFileCommand ; window [ "AscCommon" ] . sendCommand =
sendCommand ; window [ "AscCommon" ] . sendSaveFile = sendSaveFile ; window [ "AscCommon" ] . mapAscServerErrorToAscError = mapAscServerErrorToAscError ; window [ "AscCommon" ] . joinUrls = joinUrls ; window [ "AscCommon" ] . getFullImageSrc2 = getFullImageSrc2 ; window [ "AscCommon" ] . fSortAscending = fSortAscending ; window [ "AscCommon" ] . fSortDescending = fSortDescending ; window [ "AscCommon" ] . isLeadingSurrogateChar = isLeadingSurrogateChar ; window [ "AscCommon" ] . decodeSurrogateChar = decodeSurrogateChar ; window [ "AscCommon" ] . encodeSurrogateChar = encodeSurrogateChar ;
window [ "AscCommon" ] . convertUnicodeToUTF16 = convertUnicodeToUTF16 ; window [ "AscCommon" ] . convertUTF16toUnicode = convertUTF16toUnicode ; window [ "AscCommon" ] . build _local _rx = build _local _rx ; window [ "AscCommon" ] . GetFileName = GetFileName ; window [ "AscCommon" ] . GetFileExtension = GetFileExtension ; window [ "AscCommon" ] . changeFileExtention = changeFileExtention ; window [ "AscCommon" ] . getExtentionByFormat = getExtentionByFormat ; window [ "AscCommon" ] . InitOnMessage = InitOnMessage ; window [ "AscCommon" ] . ShowImageFileDialog = ShowImageFileDialog ;
window [ "AscCommon" ] . ShowDocumentFileDialog = ShowDocumentFileDialog ; window [ "AscCommon" ] . InitDragAndDrop = InitDragAndDrop ; window [ "AscCommon" ] . UploadImageFiles = UploadImageFiles ; window [ "AscCommon" ] . UploadImageUrls = UploadImageUrls ; window [ "AscCommon" ] . CanDropFiles = CanDropFiles ; window [ "AscCommon" ] . getUrlType = getUrlType ; window [ "AscCommon" ] . prepareUrl = prepareUrl ; window [ "AscCommon" ] . getUserColorById = getUserColorById ; window [ "AscCommon" ] . isNullOrEmptyString = isNullOrEmptyString ; window [ "AscCommon" ] . unleakString =
unleakString ; window [ "AscCommon" ] . readValAttr = readValAttr ; window [ "AscCommon" ] . getNumFromXml = getNumFromXml ; window [ "AscCommon" ] . getColorFromXml = getColorFromXml ; window [ "AscCommon" ] . getBoolFromXml = getBoolFromXml ; window [ "AscCommon" ] . initStreamFromResponse = initStreamFromResponse ; window [ "AscCommon" ] . checkStreamSignature = checkStreamSignature ; window [ "AscCommon" ] . DocumentUrls = DocumentUrls ; window [ "AscCommon" ] . OpenFileResult = OpenFileResult ; window [ "AscCommon" ] . CLock = CLock ; window [ "AscCommon" ] . CContentChanges = CContentChanges ;
window [ "AscCommon" ] . CContentChangesElement = CContentChangesElement ; window [ "AscCommon" ] . CorrectMMToTwips = CorrectMMToTwips ; window [ "AscCommon" ] . TwipsToMM = TwipsToMM ; window [ "AscCommon" ] . MMToTwips = MMToTwips ; window [ "AscCommon" ] . RomanToInt = RomanToInt ; window [ "AscCommon" ] . LatinNumberingToInt = LatinNumberingToInt ; window [ "AscCommon" ] . IntToNumberFormat = IntToNumberFormat ; window [ "AscCommon" ] . IsSpace = IsSpace ; window [ "AscCommon" ] . loadSdk = loadSdk ; window [ "AscCommon" ] . loadScript = loadScript ; window [ "AscCommon" ] . getAltGr =
getAltGr ; window [ "AscCommon" ] . getColorSchemeByName = getColorSchemeByName ; window [ "AscCommon" ] . getColorSchemeByIdx = getColorSchemeByIdx ; window [ "AscCommon" ] . getAscColorScheme = getAscColorScheme ; window [ "AscCommon" ] . checkAddColorScheme = checkAddColorScheme ; window [ "AscCommon" ] . getIndexColorSchemeInArray = getIndexColorSchemeInArray ; window [ "AscCommon" ] . isEastAsianScript = isEastAsianScript ; window [ "AscCommon" ] . CMathTrack = CMathTrack ; window [ "AscCommon" ] . CPolygon = CPolygon ; window [ "AscCommon" ] . JSZipWrapper = JSZipWrapper ;
window [ "AscCommon" ] . g _oDocumentUrls = g _oDocumentUrls ; window [ "AscCommon" ] . FormulaTablePartInfo = FormulaTablePartInfo ; window [ "AscCommon" ] . cBoolLocal = cBoolLocal ; window [ "AscCommon" ] . cErrorOrigin = cErrorOrigin ; window [ "AscCommon" ] . cErrorLocal = cErrorLocal ; window [ "AscCommon" ] . FormulaSeparators = FormulaSeparators ; window [ "AscCommon" ] . rx _space _g = rx _space _g ; window [ "AscCommon" ] . rx _space = rx _space ; window [ "AscCommon" ] . rx _defName = rx _defName ; window [ "AscCommon" ] . kCurFormatPainterWord = kCurFormatPainterWord ; window [ "AscCommon" ] . parserHelp =
parserHelp ; window [ "AscCommon" ] . g _oIdCounter = g _oIdCounter ; window [ "AscCommon" ] . g _oHtmlCursor = g _oHtmlCursor ; window [ "AscCommon" ] . g _oBackoffDefaults = g _oBackoffDefaults ; window [ "AscCommon" ] . Backoff = Backoff ; window [ "AscCommon" ] . backoffOnErrorImg = backoffOnErrorImg ; window [ "AscCommon" ] . isEmptyObject = isEmptyObject ; window [ "AscCommon" ] . CSignatureDrawer = window [ "AscCommon" ] [ "CSignatureDrawer" ] = CSignatureDrawer ; var prot = CSignatureDrawer . prototype ; prot [ "getImages" ] = prot . getImages ; prot [ "setText" ] = prot . setText ; prot [ "selectImage" ] =
prot . selectImage ; prot [ "isValid" ] = prot . isValid ; prot [ "destroy" ] = prot . destroy ; window [ "AscCommon" ] . translateManager = new CTranslateManager ; window [ "AscCommon" ] . parseText = parseText ; window [ "AscCommon" ] . getTimeISO8601 = getTimeISO8601 ; window [ "AscCommon" ] . valueToMm = valueToMm ; window [ "AscCommon" ] . valueToMmType = valueToMmType ; window [ "AscCommon" ] . arrayMove = arrayMove ; window [ "AscCommon" ] . getRangeArray = getRangeArray ; window [ "AscCommon" ] . CUnicodeStringEmulator = CUnicodeStringEmulator ; window [ "AscCommon" ] . private _IsAbbreviation =
private _IsAbbreviation ; window [ "AscCommon" ] . rx _test _ws _name = rx _test _ws _name ; window [ "AscCommon" ] . CShortcuts = window [ "AscCommon" ] [ "CShortcuts" ] = CShortcuts ; prot = CShortcuts . prototype ; prot [ "Add" ] = prot . Add ; prot [ "Get" ] = prot . Get ; prot [ "CheckType" ] = prot . CheckType ; prot [ "Remove" ] = prot . Remove ; prot [ "RemoveByType" ] = prot . RemoveByType ; prot [ "GetNewCustomType" ] = prot . GetNewCustomType ; prot [ "IsCustomType" ] = prot . IsCustomType ; prot [ "GetCustomAction" ] = prot . GetCustomAction ; prot [ "AddCustomActionSymbol" ] = prot . AddCustomActionSymbol ;
window [ "AscCommon" ] . CCustomShortcutActionSymbol = window [ "AscCommon" ] [ "CCustomShortcutActionSymbol" ] = CCustomShortcutActionSymbol } ) ( window ) ;
window [ "asc_initAdvancedOptions" ] = function ( _code , _file _hash , _docInfo ) { if ( window . isNativeOpenPassword ) return window [ "NativeFileOpen_error" ] ( window . isNativeOpenPassword , _file _hash , _docInfo ) ; var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; if ( _code == 90 || _code == 91 ) { if ( window [ "AscDesktopEditor" ] && 0 !== window [ "AscDesktopEditor" ] [ "CryptoMode" ] && ! _editor . isLoadFullApi ) { _editor . asc _initAdvancedOptions _params = [ ] ; _editor . asc _initAdvancedOptions _params . push ( _code ) ; _editor . asc _initAdvancedOptions _params . push ( _file _hash ) ;
_editor . asc _initAdvancedOptions _params . push ( _docInfo ) ; return } if ( AscCommon . EncryptionWorker . isNeedCrypt ( ) && ! window . checkPasswordFromPlugin ) { window . checkPasswordFromPlugin = true ; window . g _asc _plugins . sendToEncryption ( { "type" : "getPasswordByFile" , "hash" : _file _hash , "docinfo" : _docInfo } ) ; return } } window . checkPasswordFromPlugin = false ; _editor . _onNeedParams ( undefined , _code == 90 || _code == 91 ? true : undefined ) } ;
window [ "asc_IsNeedBuildCryptedFile" ] = function ( ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) return false ; var _api = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; var _returnValue = false ; var _users = null ; if ( _api . CoAuthoringApi && _api . CoAuthoringApi . _CoAuthoringApi && _api . CoAuthoringApi . _CoAuthoringApi . _participants ) _users = _api . CoAuthoringApi . _CoAuthoringApi . _participants ; var _usersCount = 0 ; for ( var _user in _users ) _usersCount ++ ; var isOne = 1 >= _usersCount ? true : false ;
if ( ! isOne ) _returnValue = false ; else if ( null != AscCommon . History . SavedIndex && - 1 != AscCommon . History . SavedIndex ) _returnValue = true ; else if ( _api . editorId == AscCommon . c _oEditorId . Spreadsheet ) { if ( AscCommon . EncryptionWorker . isExistDecryptedChanges ) _returnValue = true } else if ( 0 != AscCommon . CollaborativeEditing . m _aAllChanges . length ) _returnValue = true ; window [ "AscDesktopEditor" ] [ "execCommand" ] ( "encrypt:isneedbuild" , "" + _returnValue ) ; return _returnValue } ;
window [ "UpdateSystemPlugins" ] = function ( ) { var _plugins = JSON . parse ( window [ "AscDesktopEditor" ] [ "GetInstallPlugins" ] ( ) ) ; _plugins [ 0 ] [ "url" ] = _plugins [ 0 ] [ "url" ] . replace ( " " , "%20" ) ; _plugins [ 1 ] [ "url" ] = _plugins [ 1 ] [ "url" ] . replace ( " " , "%20" ) ; for ( var k = 0 ; k < 2 ; k ++ ) { var _pluginsCur = _plugins [ k ] ; var _len = _pluginsCur [ "pluginsData" ] . length ; for ( var i = 0 ; i < _len ; i ++ ) { _pluginsCur [ "pluginsData" ] [ i ] [ "baseUrl" ] = _pluginsCur [ "url" ] + _pluginsCur [ "pluginsData" ] [ i ] [ "guid" ] . substring ( 4 ) + "/" ; if ( ! window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( ) ) _pluginsCur [ "pluginsData" ] [ i ] [ "baseUrl" ] =
"ascdesktop://plugin_content/" + _pluginsCur [ "pluginsData" ] [ i ] [ "baseUrl" ] } } var _array = [ ] ; for ( var k = 0 ; k < 2 ; k ++ ) { var _pluginsCur = _plugins [ k ] ; var _len = _pluginsCur [ "pluginsData" ] . length ; for ( var i = 0 ; i < _len ; i ++ ) { var _plugin = _pluginsCur [ "pluginsData" ] [ i ] ; for ( var j = 0 ; j < _plugin [ "variations" ] . length ; j ++ ) { var _variation = _plugin [ "variations" ] [ j ] ; if ( _variation [ "initDataType" ] == "desktop" ) { if ( _variation [ "initData" ] == "encryption" ) { var _mode = _variation [ "cryptoMode" ] ; if ( ! _mode ) _mode = "1" ; AscCommon . EncryptionWorker . cryptoMode =
parseInt ( _mode ) ; _array . push ( _plugin ) ; break } _array . push ( _plugin ) ; break } } } } var _arraySystem = [ ] ; for ( var i = 0 ; i < _array . length ; i ++ ) { var plugin = new Asc . CPlugin ; plugin [ "deserialize" ] ( _array [ i ] ) ; _arraySystem . push ( plugin ) } window . g _asc _plugins . registerSystem ( "" , _arraySystem ) ; window . g _asc _plugins . runAllSystem ( ) } ;
window [ "buildCryptoFile_Start" ] = function ( ) { var _editor = window . Asc . editor ? window . Asc . editor : window . editor ; _editor . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ; window . g _asc _plugins . sendToEncryption ( { "type" : "generatePassword" } ) } ;
window [ "buildCryptoFile_End" ] = function ( url , error , hash , password ) { var _editor = window . Asc . editor ? window . Asc . editor : window . editor ; _editor . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ; if ( 0 != error ) { _editor . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ConvertationSaveError , Asc . c _oAscError . Level . NoCritical ) ; return } _editor . _callbackPluginEndAction = function ( ) { this . _callbackPluginEndAction = null ; _editor . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ;
var xhr = new XMLHttpRequest ; xhr . open ( "GET" , "ascdesktop://fonts/" + url , true ) ; xhr . responseType = "arraybuffer" ; if ( xhr . overrideMimeType ) xhr . overrideMimeType ( "text/plain; charset=x-user-defined" ) ; else xhr . setRequestHeader ( "Accept-Charset" , "x-user-defined" ) ; xhr . onload = function ( ) { if ( this . status != 200 ) return ; var fileData = new Uint8Array ( this . response ) ; var ext = ".docx" ; switch ( _editor . editorId ) { case AscCommon . c _oEditorId . Presentation : ext = ".pptx" ; break ; case AscCommon . c _oEditorId . Spreadsheet : ext = ".xlsx" ; break ; default : break } AscCommon . sendSaveFile ( _editor . documentId ,
_editor . documentUserId , "output" + ext , _editor . asc _getSessionToken ( ) , fileData , function ( err ) { _editor . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ; _editor . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ConvertationSaveError , Asc . c _oAscError . Level . Critical ) ; window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( false ) } , function ( httpRequest ) { try { var data = { "accounts" : httpRequest . responseText ? JSON . parse ( httpRequest . responseText ) : undefined , "hash" : hash , "password" : password , "type" : "share" ,
"docinfo" : _editor . currentDocumentInfoNext } ; _editor . currentDocumentInfoNext = undefined ; window [ "AscDesktopEditor" ] [ "sendSystemMessage" ] ( data ) ; window [ "AscDesktopEditor" ] [ "CallInAllWindows" ] ( "function(){ if (window.DesktopUpdateFile) { window.DesktopUpdateFile(undefined); } }" ) ; _editor . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . Save ) ; setTimeout ( function ( ) { window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( true ) } , 1E3 ) } catch ( err ) { } } ) } ; xhr . send ( null ) } ; window . g _asc _plugins . sendToEncryption ( { "type" : "setPasswordByFile" ,
"hash" : hash , "password" : password } ) } ;
window [ "NativeFileOpen_error" ] = function ( error , _file _hash , _docInfo ) { var _api = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; if ( "password" == error ) { window . isNativeOpenPassword = error ; if ( window [ "AscDesktopEditor" ] && 0 !== window [ "AscDesktopEditor" ] [ "CryptoMode" ] && ! _api . isLoadFullApi ) { _api . asc _initAdvancedOptions _params = [ ] ; _api . asc _initAdvancedOptions _params . push ( 90 ) ; _api . asc _initAdvancedOptions _params . push ( _file _hash ) ; _api . asc _initAdvancedOptions _params . push ( _docInfo ) ; return } if ( AscCommon . EncryptionWorker . isNeedCrypt ( ) &&
! window . checkPasswordFromPlugin ) { window . checkPasswordFromPlugin = true ; window . g _asc _plugins . sendToEncryption ( { "type" : "getPasswordByFile" , "hash" : _file _hash , "docinfo" : _docInfo } ) ; return } window . checkPasswordFromPlugin = false ; _api . _onNeedParams ( undefined , true ) } else if ( "error" == error ) { _api . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; return } } ;
window [ "CryptoDownloadAsEnd" ] = function ( ) { var _editor = window . Asc . editor ? window . Asc . editor : window . editor ; _editor . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . DownloadAs ) ; window . isCloudCryptoDownloadAs = undefined } ; window [ "AscDesktopEditor_Save" ] = function ( ) { var _editor = window . Asc . editor ? window . Asc . editor : window . editor ; if ( ! _editor . asc _Save ( false ) ) window [ "AscDesktopEditor" ] [ "OnSave" ] ( ) } ; "use strict" ;
( function ( window , undefined ) { function GetHistoryPointStringDescription ( nDescription ) { var sString = "Unknown" ; switch ( nDescription ) { case AscDFH . historydescription _Cut : sString = "Cut" ; break ; case AscDFH . historydescription _PasteButtonIE : sString = "PasteButtonIE" ; break ; case AscDFH . historydescription _PasteButtonNotIE : sString = "PasteButtonNotIE" ; break ; case AscDFH . historydescription _ChartDrawingObjects : sString = "ChartDrawingObjects" ; break ; case AscDFH . historydescription _CommonControllerCheckChartText : sString = "CommonControllerCheckChartText" ;
break ; case AscDFH . historydescription _CommonControllerUnGroup : sString = "CommonControllerUnGroup" ; break ; case AscDFH . historydescription _CommonControllerCheckSelected : sString = "CommonControllerCheckSelected" ; break ; case AscDFH . historydescription _CommonControllerSetGraphicObject : sString = "CommonControllerSetGraphicObject" ; break ; case AscDFH . historydescription _CommonStatesAddNewShape : sString = "CommonStatesAddNewShape" ; break ; case AscDFH . historydescription _CommonStatesRotate : sString = "CommonStatesRotate" ; break ;
case AscDFH . historydescription _PasteNative : sString = "PasteNative" ; break ; case AscDFH . historydescription _Document _GroupUnGroup : sString = "Document_GroupUnGroup" ; break ; case AscDFH . historydescription _Document _SetDefaultLanguage : sString = "Document_SetDefaultLanguage" ; break ; case AscDFH . historydescription _Document _ChangeColorScheme : sString = "Document_ChangeColorScheme" ; break ; case AscDFH . historydescription _Document _AddChart : sString = "Document_AddChart" ; break ; case AscDFH . historydescription _Document _EditChart : sString =
"Document_EditChart" ; break ; case AscDFH . historydescription _Document _DragText : sString = "Document_DragText" ; break ; case AscDFH . historydescription _Document _DocumentContentExtendToPos : sString = "Document_DocumentContentExtendToPos" ; break ; case AscDFH . historydescription _Document _AddHeader : sString = "Document_AddHeader" ; break ; case AscDFH . historydescription _Document _AddFooter : sString = "Document_AddFooter" ; break ; case AscDFH . historydescription _Document _ParagraphExtendToPos : sString = "Document_ParagraphExtendToPos" ; break ;
case AscDFH . historydescription _Document _ParagraphChangeFrame : sString = "Document_ParagraphChangeFrame" ; break ; case AscDFH . historydescription _Document _ReplaceAll : sString = "Document_ReplaceAll" ; break ; case AscDFH . historydescription _Document _ReplaceSingle : sString = "Document_ReplaceSingle" ; break ; case AscDFH . historydescription _Document _TableAddNewRowByTab : sString = "Document_TableAddNewRowByTab" ; break ; case AscDFH . historydescription _Document _AddNewShape : sString = "Document_AddNewShape" ; break ; case AscDFH . historydescription _Document _EditWrapPolygon : sString =
"Document_EditWrapPolygon" ; break ; case AscDFH . historydescription _Document _MoveInlineObject : sString = "Document_MoveInlineObject" ; break ; case AscDFH . historydescription _Document _CopyAndMoveInlineObject : sString = "Document_CopyAndMoveInlineObject" ; break ; case AscDFH . historydescription _Document _RotateInlineDrawing : sString = "Document_RotateInlineDrawing" ; break ; case AscDFH . historydescription _Document _RotateFlowDrawingCtrl : sString = "Document_RotateFlowDrawingCtrl" ; break ; case AscDFH . historydescription _Document _RotateFlowDrawingNoCtrl : sString =
"Document_RotateFlowDrawingNoCtrl" ; break ; case AscDFH . historydescription _Document _MoveInGroup : sString = "Document_MoveInGroup" ; break ; case AscDFH . historydescription _Document _ChangeWrapContour : sString = "Document_ChangeWrapContour" ; break ; case AscDFH . historydescription _Document _ChangeWrapContourAddPoint : sString = "Document_ChangeWrapContourAddPoint" ; break ; case AscDFH . historydescription _Document _GrObjectsBringToFront : sString = "Document_GrObjectsBringToFront" ; break ; case AscDFH . historydescription _Document _GrObjectsBringForwardGroup : sString =
"Document_GrObjectsBringForwardGroup" ; break ; case AscDFH . historydescription _Document _GrObjectsBringForward : sString = "Document_GrObjectsBringForward" ; break ; case AscDFH . historydescription _Document _GrObjectsSendToBackGroup : sString = "Document_GrObjectsSendToBackGroup" ; break ; case AscDFH . historydescription _Document _GrObjectsSendToBack : sString = "Document_GrObjectsSendToBack" ; break ; case AscDFH . historydescription _Document _GrObjectsBringBackwardGroup : sString = "Document_GrObjectsBringBackwardGroup" ; break ; case AscDFH . historydescription _Document _GrObjectsBringBackward : sString =
"Document_GrObjectsBringBackward" ; break ; case AscDFH . historydescription _Document _GrObjectsChangeWrapPolygon : sString = "Document_GrObjectsChangeWrapPolygon" ; break ; case AscDFH . historydescription _Document _MathAutoCorrect : sString = "Document_MathAutoCorrect" ; break ; case AscDFH . historydescription _Document _SetFramePrWithFontFamily : sString = "Document_SetFramePrWithFontFamily" ; break ; case AscDFH . historydescription _Document _SetFramePr : sString = "Document_SetFramePr" ; break ; case AscDFH . historydescription _Document _SetFramePrWithFontFamilyLong : sString =
"Document_SetFramePrWithFontFamilyLong" ; break ; case AscDFH . historydescription _Document _SetTextFontName : sString = "Document_SetTextFontName" ; break ; case AscDFH . historydescription _Document _SetTextFontSize : sString = "Document_SetTextFontSize" ; break ; case AscDFH . historydescription _Document _SetTextBold : sString = "Document_SetTextBold" ; break ; case AscDFH . historydescription _Document _SetTextItalic : sString = "Document_SetTextItalic" ; break ; case AscDFH . historydescription _Document _SetTextUnderline : sString = "Document_SetTextUnderline" ;
break ; case AscDFH . historydescription _Document _SetTextStrikeout : sString = "Document_SetTextStrikeout" ; break ; case AscDFH . historydescription _Document _SetTextDStrikeout : sString = "Document_SetTextDStrikeout" ; break ; case AscDFH . historydescription _Document _SetTextSpacing : sString = "Document_SetTextSpacing" ; break ; case AscDFH . historydescription _Document _SetTextCaps : sString = "Document_SetTextCaps" ; break ; case AscDFH . historydescription _Document _SetTextSmallCaps : sString = "Document_SetTextSmallCaps" ; break ; case AscDFH . historydescription _Document _SetTextPosition : sString =
"Document_SetTextPosition" ; break ; case AscDFH . historydescription _Document _SetTextLang : sString = "Document_SetTextLang" ; break ; case AscDFH . historydescription _Document _SetParagraphLineSpacing : sString = "Document_SetParagraphLineSpacing" ; break ; case AscDFH . historydescription _Document _SetParagraphLineSpacingBeforeAfter : sString = "Document_SetParagraphLineSpacingBeforeAfter" ; break ; case AscDFH . historydescription _Document _IncFontSize : sString = "Document_IncFontSize" ; break ; case AscDFH . historydescription _Document _DecFontSize : sString =
"Document_DecFontSize" ; break ; case AscDFH . historydescription _Document _SetParagraphBorders : sString = "Document_SetParagraphBorders" ; break ; case AscDFH . historydescription _Document _SetParagraphPr : sString = "Document_SetParagraphPr" ; break ; case AscDFH . historydescription _Document _SetParagraphAlign : sString = "Document_SetParagraphAlign" ; break ; case AscDFH . historydescription _Document _SetTextVertAlign : sString = "Document_SetTextVertAlign" ; break ; case AscDFH . historydescription _Document _SetParagraphNumbering : sString = "Document_SetParagraphNumbering" ;
break ; case AscDFH . historydescription _Document _SetParagraphStyle : sString = "Document_SetParagraphStyle" ; break ; case AscDFH . historydescription _Document _SetParagraphPageBreakBefore : sString = "Document_SetParagraphPageBreakBefore" ; break ; case AscDFH . historydescription _Document _SetParagraphWidowControl : sString = "Document_SetParagraphWidowControl" ; break ; case AscDFH . historydescription _Document _SetParagraphKeepLines : sString = "Document_SetParagraphKeepLines" ; break ; case AscDFH . historydescription _Document _SetParagraphKeepNext : sString =
"Document_SetParagraphKeepNext" ; break ; case AscDFH . historydescription _Document _SetParagraphContextualSpacing : sString = "Document_SetParagraphContextualSpacing" ; break ; case AscDFH . historydescription _Document _SetTextHighlightNone : sString = "Document_SetTextHighlightNone" ; break ; case AscDFH . historydescription _Document _SetTextHighlightColor : sString = "Document_SetTextHighlightColor" ; break ; case AscDFH . historydescription _Document _SetTextColor : sString = "Document_SetTextColor" ; break ; case AscDFH . historydescription _Document _SetParagraphShd : sString =
"Document_SetParagraphShd" ; break ; case AscDFH . historydescription _Document _SetParagraphIndent : sString = "Document_SetParagraphIndent" ; break ; case AscDFH . historydescription _Document _IncParagraphIndent : sString = "Document_IncParagraphIndent" ; break ; case AscDFH . historydescription _Document _DecParagraphIndent : sString = "Document_DecParagraphIndent" ; break ; case AscDFH . historydescription _Document _SetParagraphIndentRight : sString = "Document_SetParagraphIndentRight" ; break ; case AscDFH . historydescription _Document _SetParagraphIndentFirstLine : sString =
"Document_SetParagraphIndentFirstLine" ; break ; case AscDFH . historydescription _Document _SetPageOrientation : sString = "Document_SetPageOrientation" ; break ; case AscDFH . historydescription _Document _SetPageSize : sString = "Document_SetPageSize" ; break ; case AscDFH . historydescription _Document _AddPageBreak : sString = "Document_AddPageBreak" ; break ; case AscDFH . historydescription _Document _AddPageNumToHdrFtr : sString = "Document_AddPageNumToHdrFtr" ; break ; case AscDFH . historydescription _Document _AddPageNumToCurrentPos : sString =
"Document_AddPageNumToCurrentPos" ; break ; case AscDFH . historydescription _Document _SetHdrFtrDistance : sString = "Document_SetHdrFtrDistance" ; break ; case AscDFH . historydescription _Document _SetHdrFtrFirstPage : sString = "Document_SetHdrFtrFirstPage" ; break ; case AscDFH . historydescription _Document _SetHdrFtrEvenAndOdd : sString = "Document_SetHdrFtrEvenAndOdd" ; break ; case AscDFH . historydescription _Document _SetHdrFtrLink : sString = "Document_SetHdrFtrLink" ; break ; case AscDFH . historydescription _Document _AddTable : sString = "Document_AddTable" ;
break ; case AscDFH . historydescription _Document _TableAddRowAbove : sString = "Document_TableAddRowAbove" ; break ; case AscDFH . historydescription _Document _TableAddRowBelow : sString = "Document_TableAddRowBelow" ; break ; case AscDFH . historydescription _Document _TableAddColumnLeft : sString = "Document_TableAddColumnLeft" ; break ; case AscDFH . historydescription _Document _TableAddColumnRight : sString = "Document_TableAddColumnRight" ; break ; case AscDFH . historydescription _Document _TableRemoveRow : sString = "Document_TableRemoveRow" ;
break ; case AscDFH . historydescription _Document _TableRemoveColumn : sString = "Document_TableRemoveColumn" ; break ; case AscDFH . historydescription _Document _RemoveTable : sString = "Document_RemoveTable" ; break ; case AscDFH . historydescription _Document _MergeTableCells : sString = "Document_MergeTableCells" ; break ; case AscDFH . historydescription _Document _SplitTableCells : sString = "Document_SplitTableCells" ; break ; case AscDFH . historydescription _Document _ApplyTablePr : sString = "Document_ApplyTablePr" ; break ; case AscDFH . historydescription _Document _AddImageUrl : sString =
"Document_AddImageUrl" ; break ; case AscDFH . historydescription _Document _AddImageUrlLong : sString = "Document_AddImageUrlLong" ; break ; case AscDFH . historydescription _Document _AddImageToPage : sString = "Document_AddImageToPage" ; break ; case AscDFH . historydescription _Document _ApplyImagePrWithUrl : sString = "Document_ApplyImagePrWithUrl" ; break ; case AscDFH . historydescription _Document _ApplyImagePrWithUrlLong : sString = "Document_ApplyImagePrWithUrlLong" ; break ; case AscDFH . historydescription _Document _ApplyImagePrWithFillUrl : sString =
"Document_ApplyImagePrWithFillUrl" ; break ; case AscDFH . historydescription _Document _ApplyImagePrWithFillUrlLong : sString = "Document_ApplyImagePrWithFillUrlLong" ; break ; case AscDFH . historydescription _Document _ApplyImagePr : sString = "Document_ApplyImagePr" ; break ; case AscDFH . historydescription _Document _AddHyperlink : sString = "Document_AddHyperlink" ; break ; case AscDFH . historydescription _Document _ChangeHyperlink : sString = "Document_ChangeHyperlink" ; break ; case AscDFH . historydescription _Document _RemoveHyperlink : sString =
"Document_RemoveHyperlink" ; break ; case AscDFH . historydescription _Document _ReplaceMisspelledWord : sString = "Document_ReplaceMisspelledWord" ; break ; case AscDFH . historydescription _Document _AddComment : sString = "Document_AddComment" ; break ; case AscDFH . historydescription _Document _RemoveComment : sString = "Document_RemoveComment" ; break ; case AscDFH . historydescription _Document _ChangeComment : sString = "Document_ChangeComment" ; break ; case AscDFH . historydescription _Document _SetTextFontNameLong : sString = "Document_SetTextFontNameLong" ;
break ; case AscDFH . historydescription _Document _AddImage : sString = "Document_AddImage" ; break ; case AscDFH . historydescription _Document _ClearFormatting : sString = "Document_ClearFormatting" ; break ; case AscDFH . historydescription _Document _AddSectionBreak : sString = "Document_AddSectionBreak" ; break ; case AscDFH . historydescription _Document _AddMath : sString = "Document_AddMath" ; break ; case AscDFH . historydescription _Document _SetParagraphTabs : sString = "Document_SetParagraphTabs" ; break ; case AscDFH . historydescription _Document _SetParagraphIndentFromRulers : sString =
"Document_SetParagraphIndentFromRulers" ; break ; case AscDFH . historydescription _Document _SetDocumentMargin _Hor : sString = "Document_SetDocumentMargin_Hor" ; break ; case AscDFH . historydescription _Document _SetTableMarkup _Hor : sString = "Document_SetTableMarkup_Hor" ; break ; case AscDFH . historydescription _Document _SetDocumentMargin _Ver : sString = "Document_SetDocumentMargin_Ver" ; break ; case AscDFH . historydescription _Document _SetHdrFtrBounds : sString = "Document_SetHdrFtrBounds" ; break ; case AscDFH . historydescription _Document _SetTableMarkup _Ver : sString =
"Document_SetTableMarkup_Ver" ; break ; case AscDFH . historydescription _Document _DocumentExtendToPos : sString = "Document_DocumentExtendToPos" ; break ; case AscDFH . historydescription _Document _AddDropCap : sString = "Document_AddDropCap" ; break ; case AscDFH . historydescription _Document _RemoveDropCap : sString = "Document_RemoveDropCap" ; break ; case AscDFH . historydescription _Document _SetTextHighlight : sString = "Document_SetTextHighlight" ; break ; case AscDFH . historydescription _Document _BackSpaceButton : sString = "Document_BackSpaceButton" ;
break ; case AscDFH . historydescription _Document _MoveParagraphByTab : sString = "Document_MoveParagraphByTab" ; break ; case AscDFH . historydescription _Document _AddTab : sString = "Document_AddTab" ; break ; case AscDFH . historydescription _Document _EnterButton : sString = "Document_EnterButton" ; break ; case AscDFH . historydescription _Document _SpaceButton : sString = "Document_SpaceButton" ; break ; case AscDFH . historydescription _Document _ShiftInsert : sString = "Document_ShiftInsert" ; break ; case AscDFH . historydescription _Document _ShiftInsertSafari : sString =
"Document_ShiftInsertSafari" ; break ; case AscDFH . historydescription _Document _DeleteButton : sString = "Document_DeleteButton" ; break ; case AscDFH . historydescription _Document _ShiftDeleteButton : sString = "Document_ShiftDeleteButton" ; break ; case AscDFH . historydescription _Document _Shortcut _SetStyleHeading1 : sString = "Document_Shortcut_SetStyleHeading1" ; break ; case AscDFH . historydescription _Document _Shortcut _SetStyleHeading2 : sString = "Document_Shortcut_SetStyleHeading2" ; break ; case AscDFH . historydescription _Document _Shortcut _SetStyleHeading3 : sString =
"Document_Shortcut_SetStyleHeading3" ; break ; case AscDFH . historydescription _Document _SetTextStrikeoutHotKey : sString = "Document_SetTextStrikeoutHotKey" ; break ; case AscDFH . historydescription _Document _SetTextBoldHotKey : sString = "Document_SetTextBoldHotKey" ; break ; case AscDFH . historydescription _Document _SetParagraphAlignHotKey : sString = "Document_SetParagraphAlignHotKey" ; break ; case AscDFH . historydescription _Document _AddEuroLetter : sString = "Document_AddEuroLetter" ; break ; case AscDFH . historydescription _Document _SetTextItalicHotKey : sString =
"Document_SetTextItalicHotKey" ; break ; case AscDFH . historydescription _Document _SetParagraphAlignHotKey2 : sString = "Document_SetParagraphAlignHotKey2" ; break ; case AscDFH . historydescription _Document _SetParagraphNumberingHotKey : sString = "Document_SetParagraphNumberingHotKey" ; break ; case AscDFH . historydescription _Document _SetParagraphAlignHotKey3 : sString = "Document_SetParagraphAlignHotKey3" ; break ; case AscDFH . historydescription _Document _AddPageNumHotKey : sString = "Document_AddPageNumHotKey" ; break ; case AscDFH . historydescription _Document _SetParagraphAlignHotKey4 : sString =
"Document_SetParagraphAlignHotKey4" ; break ; case AscDFH . historydescription _Document _SetTextUnderlineHotKey : sString = "Document_SetTextUnderlineHotKey" ; break ; case AscDFH . historydescription _Document _FormatPasteHotKey : sString = "Document_FormatPasteHotKey" ; break ; case AscDFH . historydescription _Document _PasteHotKey : sString = "Document_PasteHotKey" ; break ; case AscDFH . historydescription _Document _PasteSafariHotKey : sString = "Document_PasteSafariHotKey" ; break ; case AscDFH . historydescription _Document _CutHotKey : sString =
"Document_CutHotKey" ; break ; case AscDFH . historydescription _Document _SetTextVertAlignHotKey : sString = "Document_SetTextVertAlignHotKey" ; break ; case AscDFH . historydescription _Document _AddMathHotKey : sString = "Document_AddMathHotKey" ; break ; case AscDFH . historydescription _Document _SetTextVertAlignHotKey2 : sString = "Document_SetTextVertAlignHotKey2" ; break ; case AscDFH . historydescription _Document _MinusButton : sString = "Document_MinusButton" ; break ; case AscDFH . historydescription _Document _SetTextVertAlignHotKey3 : sString =
"Document_SetTextVertAlignHotKey3" ; break ; case AscDFH . historydescription _Document _AddLetter : sString = "Document_AddLetter" ; break ; case AscDFH . historydescription _Document _MoveTableBorder : sString = "Document_MoveTableBorder" ; break ; case AscDFH . historydescription _Document _FormatPasteHotKey2 : sString = "Document_FormatPasteHotKey2" ; break ; case AscDFH . historydescription _Document _SetTextHighlight2 : sString = "Document_SetTextHighlight2" ; break ; case AscDFH . historydescription _Document _AddTextFromTextBox : sString = "Document_AddTextFromTextBox" ;
break ; case AscDFH . historydescription _Document _AddMailMergeField : sString = "Document_AddMailMergeField" ; break ; case AscDFH . historydescription _Document _MoveInlineTable : sString = "Document_MoveInlineTable" ; break ; case AscDFH . historydescription _Document _MoveFlowTable : sString = "Document_MoveFlowTable" ; break ; case AscDFH . historydescription _Document _RestoreFieldTemplateText : sString = "Document_RestoreFieldTemplateText" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellFontName : sString = "Spreadsheet_SetCellFontName" ;
break ; case AscDFH . historydescription _Spreadsheet _SetCellFontSize : sString = "Spreadsheet_SetCellFontSize" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellBold : sString = "Spreadsheet_SetCellBold" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellItalic : sString = "Spreadsheet_SetCellItalic" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellUnderline : sString = "Spreadsheet_SetCellUnderline" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellStrikeout : sString = "Spreadsheet_SetCellStrikeout" ;
break ; case AscDFH . historydescription _Spreadsheet _SetCellSubscript : sString = "Spreadsheet_SetCellSubscript" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellSuperscript : sString = "Spreadsheet_SetCellSuperscript" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellAlign : sString = "Spreadsheet_SetCellAlign" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellVertAlign : sString = "Spreadsheet_SetCellVertAlign" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellTextColor : sString = "Spreadsheet_SetCellTextColor" ;
break ; case AscDFH . historydescription _Spreadsheet _SetCellBackgroundColor : sString = "Spreadsheet_SetCellBackgroundColor" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellIncreaseFontSize : sString = "Spreadsheet_SetCellIncreaseFontSize" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellDecreaseFontSize : sString = "Spreadsheet_SetCellDecreaseFontSize" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellHyperlinkAdd : sString = "Spreadsheet_SetCellHyperlinkAdd" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellHyperlinkModify : sString =
"Spreadsheet_SetCellHyperlinkModify" ; break ; case AscDFH . historydescription _Spreadsheet _SetCellHyperlinkRemove : sString = "Spreadsheet_SetCellHyperlinkRemove" ; break ; case AscDFH . historydescription _Spreadsheet _EditChart : sString = "Spreadsheet_EditChart" ; break ; case AscDFH . historydescription _Spreadsheet _Remove : sString = "Spreadsheet_Remove" ; break ; case AscDFH . historydescription _Spreadsheet _AddTab : sString = "Spreadsheet_AddTab" ; break ; case AscDFH . historydescription _Spreadsheet _AddNewParagraph : sString = "Spreadsheet_AddNewParagraph" ;
break ; case AscDFH . historydescription _Spreadsheet _AddSpace : sString = "Spreadsheet_AddSpace" ; break ; case AscDFH . historydescription _Spreadsheet _AddItem : sString = "Spreadsheet_AddItem" ; break ; case AscDFH . historydescription _Spreadsheet _PutPrLineSpacing : sString = "Spreadsheet_PutPrLineSpacing" ; break ; case AscDFH . historydescription _Spreadsheet _SetParagraphSpacing : sString = "Spreadsheet_SetParagraphSpacing" ; break ; case AscDFH . historydescription _Spreadsheet _SetGraphicObjectsProps : sString = "Spreadsheet_SetGraphicObjectsProps" ;
break ; case AscDFH . historydescription _Spreadsheet _ParaApply : sString = "Spreadsheet_ParaApply" ; break ; case AscDFH . historydescription _Spreadsheet _GraphicObjectLayer : sString = "Spreadsheet_GraphicObjectLayer" ; break ; case AscDFH . historydescription _Spreadsheet _ParagraphAdd : sString = "Spreadsheet_ParagraphAdd" ; break ; case AscDFH . historydescription _Spreadsheet _CreateGroup : sString = "Spreadsheet_CreateGroup" ; break ; case AscDFH . historydescription _CommonDrawings _ChangeAdj : sString = "CommonDrawings_ChangeAdj" ; break ; case AscDFH . historydescription _CommonDrawings _EndTrack : sString =
"CommonDrawings_EndTrack" ; break ; case AscDFH . historydescription _CommonDrawings _CopyCtrl : sString = "CommonDrawings_CopyCtrl" ; break ; case AscDFH . historydescription _Presentation _ParaApply : sString = "Presentation_ParaApply" ; break ; case AscDFH . historydescription _Presentation _ParaFormatPaste : sString = "Presentation_ParaFormatPaste" ; break ; case AscDFH . historydescription _Presentation _AddNewParagraph : sString = "Presentation_AddNewParagraph" ; break ; case AscDFH . historydescription _Presentation _CreateGroup : sString = "Presentation_CreateGroup" ;
break ; case AscDFH . historydescription _Presentation _UnGroup : sString = "Presentation_UnGroup" ; break ; case AscDFH . historydescription _Presentation _AddChart : sString = "Presentation_AddChart" ; break ; case AscDFH . historydescription _Presentation _EditChart : sString = "Presentation_EditChart" ; break ; case AscDFH . historydescription _Presentation _ParagraphAdd : sString = "Presentation_ParagraphAdd" ; break ; case AscDFH . historydescription _Presentation _ParagraphClearFormatting : sString = "Presentation_ParagraphClearFormatting" ; break ;
case AscDFH . historydescription _Presentation _SetParagraphAlign : sString = "Presentation_SetParagraphAlign" ; break ; case AscDFH . historydescription _Presentation _SetParagraphSpacing : sString = "Presentation_SetParagraphSpacing" ; break ; case AscDFH . historydescription _Presentation _SetParagraphTabs : sString = "Presentation_SetParagraphTabs" ; break ; case AscDFH . historydescription _Presentation _SetParagraphIndent : sString = "Presentation_SetParagraphIndent" ; break ; case AscDFH . historydescription _Presentation _SetParagraphNumbering : sString =
"Presentation_SetParagraphNumbering" ; break ; case AscDFH . historydescription _Presentation _ParagraphIncDecFontSize : sString = "Presentation_ParagraphIncDecFontSize" ; break ; case AscDFH . historydescription _Presentation _ParagraphIncDecIndent : sString = "Presentation_ParagraphIncDecIndent" ; break ; case AscDFH . historydescription _Presentation _SetImageProps : sString = "Presentation_SetImageProps" ; break ; case AscDFH . historydescription _Presentation _SetShapeProps : sString = "Presentation_SetShapeProps" ; break ; case AscDFH . historydescription _Presentation _ChartApply : sString =
"Presentation_ChartApply" ; break ; case AscDFH . historydescription _Presentation _ChangeShapeType : sString = "Presentation_ChangeShapeType" ; break ; case AscDFH . historydescription _Presentation _SetVerticalAlign : sString = "Presentation_SetVerticalAlign" ; break ; case AscDFH . historydescription _Presentation _HyperlinkAdd : sString = "Presentation_HyperlinkAdd" ; break ; case AscDFH . historydescription _Presentation _HyperlinkModify : sString = "Presentation_HyperlinkModify" ; break ; case AscDFH . historydescription _Presentation _HyperlinkRemove : sString =
"Presentation_HyperlinkRemove" ; break ; case AscDFH . historydescription _Presentation _DistHor : sString = "Presentation_DistHor" ; break ; case AscDFH . historydescription _Presentation _DistVer : sString = "Presentation_DistVer" ; break ; case AscDFH . historydescription _Presentation _BringToFront : sString = "Presentation_BringToFront" ; break ; case AscDFH . historydescription _Presentation _BringForward : sString = "Presentation_BringForward" ; break ; case AscDFH . historydescription _Presentation _SendToBack : sString = "Presentation_SendToBack" ;
break ; case AscDFH . historydescription _Presentation _BringBackward : sString = "Presentation_BringBackward" ; break ; case AscDFH . historydescription _Presentation _ApplyTiming : sString = "Presentation_ApplyTiming" ; break ; case AscDFH . historydescription _Presentation _MoveSlidesToEnd : sString = "Presentation_MoveSlidesToEnd" ; break ; case AscDFH . historydescription _Presentation _MoveSlidesNextPos : sString = "Presentation_MoveSlidesNextPos" ; break ; case AscDFH . historydescription _Presentation _MoveSlidesPrevPos : sString = "Presentation_MoveSlidesPrevPos" ;
break ; case AscDFH . historydescription _Presentation _MoveSlidesToStart : sString = "Presentation_MoveSlidesToStart" ; break ; case AscDFH . historydescription _Presentation _MoveComments : sString = "Presentation_MoveComments" ; break ; case AscDFH . historydescription _Presentation _TableBorder : sString = "Presentation_TableBorder" ; break ; case AscDFH . historydescription _Presentation _AddFlowImage : sString = "Presentation_AddFlowImage" ; break ; case AscDFH . historydescription _Presentation _AddFlowTable : sString = "Presentation_AddFlowTable" ;
break ; case AscDFH . historydescription _Presentation _ChangeBackground : sString = "Presentation_ChangeBackground" ; break ; case AscDFH . historydescription _Presentation _AddNextSlide : sString = "Presentation_AddNextSlide" ; break ; case AscDFH . historydescription _Presentation _ShiftSlides : sString = "Presentation_ShiftSlides" ; break ; case AscDFH . historydescription _Presentation _DeleteSlides : sString = "Presentation_DeleteSlides" ; break ; case AscDFH . historydescription _Presentation _ChangeLayout : sString = "Presentation_ChangeLayout" ;
break ; case AscDFH . historydescription _Presentation _ChangeSlideSize : sString = "Presentation_ChangeSlideSize" ; break ; case AscDFH . historydescription _Presentation _ChangeColorScheme : sString = "Presentation_ChangeColorScheme" ; break ; case AscDFH . historydescription _Presentation _AddComment : sString = "Presentation_AddComment" ; break ; case AscDFH . historydescription _Presentation _ChangeComment : sString = "Presentation_ChangeComment" ; break ; case AscDFH . historydescription _Presentation _PutTextPrFontName : sString = "Presentation_PutTextPrFontName" ;
break ; case AscDFH . historydescription _Presentation _PutTextPrFontSize : sString = "Presentation_PutTextPrFontSize" ; break ; case AscDFH . historydescription _Presentation _PutTextPrBold : sString = "Presentation_PutTextPrBold" ; break ; case AscDFH . historydescription _Presentation _PutTextPrItalic : sString = "Presentation_PutTextPrItalic" ; break ; case AscDFH . historydescription _Presentation _PutTextPrUnderline : sString = "Presentation_PutTextPrUnderline" ; break ; case AscDFH . historydescription _Presentation _PutTextPrStrikeout : sString =
"Presentation_PutTextPrStrikeout" ; break ; case AscDFH . historydescription _Presentation _PutTextPrLineSpacing : sString = "Presentation_PutTextPrLineSpacing" ; break ; case AscDFH . historydescription _Presentation _PutTextPrSpacingBeforeAfter : sString = "Presentation_PutTextPrSpacingBeforeAfter" ; break ; case AscDFH . historydescription _Presentation _PutTextPrIncreaseFontSize : sString = "Presentation_PutTextPrIncreaseFontSize" ; break ; case AscDFH . historydescription _Presentation _PutTextPrDecreaseFontSize : sString = "Presentation_PutTextPrDecreaseFontSize" ;
break ; case AscDFH . historydescription _Presentation _PutTextPrAlign : sString = "Presentation_PutTextPrAlign" ; break ; case AscDFH . historydescription _Presentation _PutTextPrBaseline : sString = "Presentation_PutTextPrBaseline" ; break ; case AscDFH . historydescription _Presentation _PutTextPrListType : sString = "Presentation_PutTextPrListType" ; break ; case AscDFH . historydescription _Presentation _PutTextColor : sString = "Presentation_PutTextColor" ; break ; case AscDFH . historydescription _Presentation _PutTextColor2 : sString = "Presentation_PutTextColor2" ;
break ; case AscDFH . historydescription _Presentation _PutPrIndent : sString = "Presentation_PutPrIndent" ; break ; case AscDFH . historydescription _Presentation _PutPrIndentRight : sString = "Presentation_PutPrIndentRight" ; break ; case AscDFH . historydescription _Presentation _PutPrFirstLineIndent : sString = "Presentation_PutPrFirstLineIndent" ; break ; case AscDFH . historydescription _Presentation _AddPageBreak : sString = "Presentation_AddPageBreak" ; break ; case AscDFH . historydescription _Presentation _AddRowAbove : sString = "Presentation_AddRowAbove" ;
break ; case AscDFH . historydescription _Presentation _AddRowBelow : sString = "Presentation_AddRowBelow" ; break ; case AscDFH . historydescription _Presentation _AddColLeft : sString = "Presentation_AddColLeft" ; break ; case AscDFH . historydescription _Presentation _AddColRight : sString = "Presentation_AddColRight" ; break ; case AscDFH . historydescription _Presentation _RemoveRow : sString = "Presentation_RemoveRow" ; break ; case AscDFH . historydescription _Presentation _RemoveCol : sString = "Presentation_RemoveCol" ; break ; case AscDFH . historydescription _Presentation _RemoveTable : sString =
"Presentation_RemoveTable" ; break ; case AscDFH . historydescription _Presentation _MergeCells : sString = "Presentation_MergeCells" ; break ; case AscDFH . historydescription _Presentation _SplitCells : sString = "Presentation_SplitCells" ; break ; case AscDFH . historydescription _Presentation _TblApply : sString = "Presentation_TblApply" ; break ; case AscDFH . historydescription _Presentation _RemoveComment : sString = "Presentation_RemoveComment" ; break ; case AscDFH . historydescription _Presentation _EndFontLoad : sString = "Presentation_EndFontLoad" ;
break ; case AscDFH . historydescription _Presentation _ChangeTheme : sString = "Presentation_ChangeTheme" ; break ; case AscDFH . historydescription _Presentation _TableMoveFromRulers : sString = "Presentation_TableMoveFromRulers" ; break ; case AscDFH . historydescription _Presentation _TableMoveFromRulersInline : sString = "Presentation_TableMoveFromRulersInline" ; break ; case AscDFH . historydescription _Presentation _PasteOnThumbnails : sString = "Presentation_PasteOnThumbnails" ; break ; case AscDFH . historydescription _Presentation _PasteOnThumbnailsSafari : sString =
"Presentation_PasteOnThumbnailsSafari" ; break ; case AscDFH . historydescription _Document _ConvertOldEquation : sString = "Document_ConvertOldEquation" ; break ; case AscDFH . historydescription _Document _AddNewStyle : sString = "Document_AddNewStyle" ; break ; case AscDFH . historydescription _Document _RemoveStyle : sString = "Document_RemoveStyle" ; break ; case AscDFH . historydescription _Document _AddTextArt : sString = "Document_AddTextArt" ; break ; case AscDFH . historydescription _Document _RemoveAllCustomStyles : sString = "Document_RemoveAllCustomStyles" ;
break ; case AscDFH . historydescription _Document _AcceptAllRevisionChanges : sString = "Document_AcceptAllRevisionChanges" ; break ; case AscDFH . historydescription _Document _RejectAllRevisionChanges : sString = "Document_RejectAllRevisionChanges" ; break ; case AscDFH . historydescription _Document _AcceptRevisionChange : sString = "Document_AcceptRevisionChange" ; break ; case AscDFH . historydescription _Document _RejectRevisionChange : sString = "Document_RejectRevisionChange" ; break ; case AscDFH . historydescription _Document _AcceptRevisionChangesBySelection : sString =
"Document_AcceptRevisionChangesBySelection" ; break ; case AscDFH . historydescription _Document _RejectRevisionChangesBySelection : sString = "Document_RejectRevisionChangesBySelection" ; break ; case AscDFH . historydescription _Document _AddLetterUnion : sString = "Document_AddLetterUnion" ; break ; case AscDFH . historydescription _Document _SetColumnsFromRuler : sString = "Document_SetColumnsFromRuler" ; break ; case AscDFH . historydescription _Document _SetColumnsProps : sString = "Document_SetColumnsProps" ; break ; case AscDFH . historydescription _Document _AddColumnBreak : sString =
"Document_AddColumnBreak" ; break ; case AscDFH . historydescription _Document _AddTabToMath : sString = "Document_AddTabToMath" ; break ; case AscDFH . historydescription _Document _ApplyPrToMath : sString = "Document_ApplyPrToMath" ; break ; case AscDFH . historydescription _Document _SetMathProps : sString = "Document_SetMathProps" ; break ; case AscDFH . historydescription _Document _SetSectionProps : sString = "Document_SetColumnsProps" ; break ; case AscDFH . historydescription _Document _ApiBuilder : sString = "Document_ApiBuilder" ; break ; case AscDFH . historydescription _Document _AddOleObject : sString =
"Document_AddOleObject" ; break ; case AscDFH . historydescription _Document _EditOleObject : sString = "Document_EditOleObject" ; break ; case AscDFH . historydescription _Document _CompositeInput : sString = "Document_CompositeInput" ; break ; case AscDFH . historydescription _Document _CompositeInputReplace : sString = "Document_CompositeInputReplace" ; break ; case AscDFH . historydescription _Document _AddPageCount : sString = "Document_AddPageCount" ; break ; case AscDFH . historydescription _Document _AddFootnote : sString = "Document_AddFootnote" ;
break ; case AscDFH . historydescription _Document _SetFootnotePr : sString = "Document_SetFootnotePr" ; break ; case AscDFH . historydescription _Document _RemoveAllFootnotes : sString = "Document_RemoveAllFootnotes" ; break ; case AscDFH . historydescription _Document _InsertDocumentsByUrls : sString = "Document_InsertDocumentsByUrls" ; break ; case AscDFH . historydescription _Document _AddBlockLevelContentControl : sString = "Document_AddBlockLevelContentControl" ; break ; case AscDFH . historydescription _Document _AddInlineLevelContentControl : sString =
"Document_AddInlineLevelContentControl" ; break ; case AscDFH . historydescription _Document _RemoveContentControl : sString = "Document_RemoveContentControl" ; break ; case AscDFH . historydescription _Document _RemoveContentControlWrapper : sString = "Document_RemoveContentControlWrapper" ; break ; case AscDFH . historydescription _Document _ChangeContentControlProperties : sString = "Document_ChangeContentControlProperties" ; break ; case AscDFH . historydescription _DocumentMacros _Data : sString = "DocumentMacros_Data" ; break ; case AscDFH . historydescription _Document _AddBookmark : sString =
"Document_AddBookmark" ; break ; case AscDFH . historydescription _Document _AddTableOfContents : sString = "Document_AddTableOfContents" ; break ; case AscDFH . historydescription _Document _ChangeOutlineLevel : sString = "Document_ChangeOutlineLevel" ; break ; case AscDFH . historydescription _Document _AddElementToOutline : sString = "Document_AddElementToOutline" ; break ; case AscDFH . historydescription _Document _ResizeTable : sString = "Document_ResizeTable" ; break ; case AscDFH . historydescription _Document _RemoveComplexField : sString = "Document_RemoveComplexField" ;
break ; case AscDFH . historydescription _Document _SetComplexFieldPr : sString = "Document_SetComplexFieldPr" ; break ; case AscDFH . historydescription _Document _UpdateTableOfContents : sString = "Document_UpdateTableOfContents" ; break ; case AscDFH . historydescription _Document _SectionStartPage : sString = "Document_SectionStartPage" ; break ; case AscDFH . historydescription _Document _DistributeTableCells : sString = "Document_DistributeTableCells" ; break ; case AscDFH . historydescription _Document _RemoveBookmark : sString = "Document_RemoveBookmark" ;
break ; case AscDFH . historydescription _Document _ContinueNumbering : sString = "Document_ContinueNumbering" ; break ; case AscDFH . historydescription _Document _RestartNumbering : sString = "Document_RestartNumbering" ; break ; case AscDFH . historydescription _Document _AutomaticListAsType : sString = "Document_AutomaticListAsType" ; break ; case AscDFH . historydescription _Document _CreateNum : sString = "Document_CreateNum" ; break ; case AscDFH . historydescription _Document _ChangeNumLvl : sString = "Document_ChangeNumLvl" ; break ; case AscDFH . historydescription _Document _AutoCorrectSmartQuotes : sString =
"Document_AutoCorrectSmartQuotes" ; break ; case AscDFH . historydescription _Document _AutoCorrectHyphensWithDash : sString = "Document_AutoCorrectHyphensWithDash" ; break ; case AscDFH . historydescription _Document _SetGlobalSdtHighlightColor : sString = "Document_SetGlobalSdtHighlightColor" ; break ; case AscDFH . historydescription _Document _SetGlobalSdtShowHighlight : sString = "Document_SetGlobalSdtShowHighlight" ; break ; case AscDFH . historydescription _Document _UpdateFields : sString = "Document_UpdateFields" ; break ; case AscDFH . historydescription _Document _AddBlankPage : sString =
"Document_AddBlankPage" ; break ; case AscDFH . historydescription _Document _AddTableFormula : sString = "Document_AddTableFormula" ; break ; case AscDFH . historydescription _Document _ChangeTableFormula : sString = "Document_ChangeTableFormula" ; break ; case AscDFH . historydescription _Document _SetParagraphOutlineLvl : sString = "Document_SetParagraphOutlineLvl" ; break ; case AscDFH . historydescription _Document _RemoveTableCells : sString = "Document_RemoveTableCells" ; break ; case AscDFH . historydescription _Document _AddContentControlCheckBox : sString =
"Document_AddContentControlCheckBox" ; break ; case AscDFH . historydescription _Document _SetContentControlCheckBoxPr : sString = "Document_SetContentControlCheckBoxPr" ; break ; case AscDFH . historydescription _Document _AddContentControlPicture : sString = "Document_AddContentControlPicture" ; break ; case AscDFH . historydescription _Document _SetContentControlPictureUrl : sString = "Document_SetContentControlPictureUrl" ; break ; case AscDFH . historydescription _Document _RemoveAllComments : sString = "Document_RemoveAllComments" ; break ;
case AscDFH . historydescription _Document _AddContentControlList : sString = "Document_AddContentControlList" ; break ; case AscDFH . historydescription _Document _SetContentControlListPr : sString = "Document_SetContentControlListPr" ; break ; case AscDFH . historydescription _Document _SelectContentControlListItem : sString = "Document_SelectContentControlListItem" ; break ; case AscDFH . historydescription _Document _AddContentControlDatePicker : sString = "Document_AddContentControlDatePicker" ; break ; case AscDFH . historydescription _Document _SetContentControlDatePickerPr : sString =
"Document_SetContentControlDatePickerPr" ; break ; case AscDFH . historydescription _Document _AddTextWithProperties : sString = "Document_AddTextWithProperties" ; break ; case AscDFH . historydescription _Document _AddCaption : sString = "Document_AddCaption" ; break ; case AscDFH . historydescription _Document _CompareDocuments : sString = "Document_CompareDocuments" ; break ; case AscDFH . historydescription _Document _DrawNewTable : sString = "Document_DrawNewTable" ; break ; case AscDFH . historydescription _Document _DrawTable : sString = "Document_DrawTable" ;
break ; case AscDFH . historydescription _Document _AddDateTimeField : sString = "Document_AddDateTimeField" ; break ; case AscDFH . historydescription _Document _SetContentControlTextPlaceholder : sString = "Document_SetContentControlTextPlaceholder" ; break ; case AscDFH . historydescription _Document _AddEndnote : sString = "Document_AddEndnote" ; break ; case AscDFH . historydescription _Document _AddContentControlTextForm : sString = "Document_AddContentControlTextForm" ; break ; case AscDFH . historydescription _Document _SetEndnotePr : sString =
"Document_SetEndnotePr" ; break ; case AscDFH . historydescription _Document _ConvertFootnoteType : sString = "Document_ConvertFootnoteType" ; break ; case AscDFH . historydescription _Document _AutoCorrectCommon : sString = "Document_AutoCorrectCommon" ; break ; case AscDFH . historydescription _Document _Shortcut _ClearFormatting : sString = "Document_Shortcut_ClearFormatting" ; break ; case AscDFH . historydescription _Document _Shortcut _AddNonBreakingSpace : sString = "Document_Shortcut_AddNonBreakingSpace" ; break ; case AscDFH . historydescription _Document _SetParagraphSuppressLineNumbers : sString =
"Document_SetParagraphSuppressLineNumbers" ; break ; case AscDFH . historydescription _Document _SetLineNumbersProps : sString = "Document_SetLineNumbersProps" ; break ; case AscDFH . historydescription _Document _AddCrossRef : sString = "Document_AddCrossRef" ; break ; case AscDFH . historydescription _Document _ClearAllSpecialForms : sString = "Document_ClearAllSpecialForms" ; break } return sString } function GetHistoryClassTypeByChangeType ( nChangeType ) { return nChangeType >> 16 & 65535 } window [ "AscDFH" ] = window [ "AscDFH" ] || { } ; window [ "AscDFH" ] . GetHistoryPointStringDescription =
GetHistoryPointStringDescription ; window [ "AscDFH" ] . GetHistoryClassTypeByChangeType = GetHistoryClassTypeByChangeType ; window [ "AscDFH" ] . historyitem _recalctype _Inline = 0 ; window [ "AscDFH" ] . historyitem _recalctype _Flow = 1 ; window [ "AscDFH" ] . historyitem _recalctype _HdrFtr = 2 ; window [ "AscDFH" ] . historyitem _recalctype _Drawing = 3 ; window [ "AscDFH" ] . historyitem _recalctype _NotesEnd = 4 ; window [ "AscDFH" ] . historyitem _type _Unknown = 0 << 16 ; window [ "AscDFH" ] . historyitem _type _TableId = 1 << 16 ; window [ "AscDFH" ] . historyitem _type _Document = 2 <<
16 ; window [ "AscDFH" ] . historyitem _type _Paragraph = 3 << 16 ; window [ "AscDFH" ] . historyitem _type _TextPr = 4 << 16 ; window [ "AscDFH" ] . historyitem _type _Drawing = 5 << 16 ; window [ "AscDFH" ] . historyitem _type _DrawingObjects = 6 << 16 ; window [ "AscDFH" ] . historyitem _type _FlowObjects = 7 << 16 ; window [ "AscDFH" ] . historyitem _type _FlowImage = 8 << 16 ; window [ "AscDFH" ] . historyitem _type _Table = 9 << 16 ; window [ "AscDFH" ] . historyitem _type _TableRow = 10 << 16 ; window [ "AscDFH" ] . historyitem _type _TableCell = 11 << 16 ; window [ "AscDFH" ] . historyitem _type _DocumentContent =
12 << 16 ; window [ "AscDFH" ] . historyitem _type _FlowTable = 13 << 16 ; window [ "AscDFH" ] . historyitem _type _HdrFtrController = 14 << 16 ; window [ "AscDFH" ] . historyitem _type _HdrFtr = 15 << 16 ; window [ "AscDFH" ] . historyitem _type _AbstractNum = 16 << 16 ; window [ "AscDFH" ] . historyitem _type _Comment = 17 << 16 ; window [ "AscDFH" ] . historyitem _type _Comments = 18 << 16 ; window [ "AscDFH" ] . historyitem _type _Image = 19 << 16 ; window [ "AscDFH" ] . historyitem _type _GrObjects = 20 << 16 ; window [ "AscDFH" ] . historyitem _type _Hyperlink = 21 << 16 ; window [ "AscDFH" ] . historyitem _type _Style =
23 << 16 ; window [ "AscDFH" ] . historyitem _type _Styles = 24 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartTitle = 25 << 16 ; window [ "AscDFH" ] . historyitem _type _Math = 26 << 16 ; window [ "AscDFH" ] . historyitem _type _CommentMark = 27 << 16 ; window [ "AscDFH" ] . historyitem _type _ParaRun = 28 << 16 ; window [ "AscDFH" ] . historyitem _type _MathContent = 29 << 16 ; window [ "AscDFH" ] . historyitem _type _Section = 30 << 16 ; window [ "AscDFH" ] . historyitem _type _acc = 31 << 16 ; window [ "AscDFH" ] . historyitem _type _bar = 32 << 16 ; window [ "AscDFH" ] . historyitem _type _borderBox = 33 << 16 ; window [ "AscDFH" ] . historyitem _type _box =
34 << 16 ; window [ "AscDFH" ] . historyitem _type _delimiter = 35 << 16 ; window [ "AscDFH" ] . historyitem _type _eqArr = 36 << 16 ; window [ "AscDFH" ] . historyitem _type _frac = 37 << 16 ; window [ "AscDFH" ] . historyitem _type _mathFunc = 38 << 16 ; window [ "AscDFH" ] . historyitem _type _groupChr = 39 << 16 ; window [ "AscDFH" ] . historyitem _type _lim = 40 << 16 ; window [ "AscDFH" ] . historyitem _type _matrix = 41 << 16 ; window [ "AscDFH" ] . historyitem _type _nary = 42 << 16 ; window [ "AscDFH" ] . historyitem _type _integral = 43 << 16 ; window [ "AscDFH" ] . historyitem _type _double _integral = 44 << 16 ; window [ "AscDFH" ] . historyitem _type _triple _integral =
45 << 16 ; window [ "AscDFH" ] . historyitem _type _contour _integral = 46 << 16 ; window [ "AscDFH" ] . historyitem _type _surface _integral = 47 << 16 ; window [ "AscDFH" ] . historyitem _type _volume _integral = 48 << 16 ; window [ "AscDFH" ] . historyitem _type _phant = 49 << 16 ; window [ "AscDFH" ] . historyitem _type _rad = 50 << 16 ; window [ "AscDFH" ] . historyitem _type _deg _subsup = 51 << 16 ; window [ "AscDFH" ] . historyitem _type _iterators = 52 << 16 ; window [ "AscDFH" ] . historyitem _type _deg = 53 << 16 ; window [ "AscDFH" ] . historyitem _type _ParaComment = 54 << 16 ; window [ "AscDFH" ] . historyitem _type _Field =
55 << 16 ; window [ "AscDFH" ] . historyitem _type _Footnotes = 56 << 16 ; window [ "AscDFH" ] . historyitem _type _FootEndNote = 57 << 16 ; window [ "AscDFH" ] . historyitem _type _Presentation = 58 << 16 ; window [ "AscDFH" ] . historyitem _type _BlockLevelSdt = 59 << 16 ; window [ "AscDFH" ] . historyitem _type _SdtPr = 60 << 16 ; window [ "AscDFH" ] . historyitem _type _InlineLevelSdt = 61 << 16 ; window [ "AscDFH" ] . historyitem _type _ParaBookmark = 62 << 16 ; window [ "AscDFH" ] . historyitem _type _Num = 63 << 16 ; window [ "AscDFH" ] . historyitem _type _PresentationField = 64 << 16 ; window [ "AscDFH" ] . historyitem _type _ParaRevisionMove =
65 << 16 ; window [ "AscDFH" ] . historyitem _type _RunRevisionMove = 66 << 16 ; window [ "AscDFH" ] . historyitem _type _GlossaryDocument = 67 << 16 ; window [ "AscDFH" ] . historyitem _type _DocPart = 68 << 16 ; window [ "AscDFH" ] . historyitem _type _Endnotes = 69 << 16 ; window [ "AscDFH" ] . historyitem _type _CommonShape = 1E3 << 16 ; window [ "AscDFH" ] . historyitem _type _ColorMod = 1001 << 16 ; window [ "AscDFH" ] . historyitem _type _ColorModifiers = 1002 << 16 ; window [ "AscDFH" ] . historyitem _type _SysColor = 1003 << 16 ; window [ "AscDFH" ] . historyitem _type _PrstColor = 1004 << 16 ; window [ "AscDFH" ] . historyitem _type _RGBColor =
1005 << 16 ; window [ "AscDFH" ] . historyitem _type _SchemeColor = 1006 << 16 ; window [ "AscDFH" ] . historyitem _type _UniColor = 1007 << 16 ; window [ "AscDFH" ] . historyitem _type _SrcRect = 1008 << 16 ; window [ "AscDFH" ] . historyitem _type _BlipFill = 1009 << 16 ; window [ "AscDFH" ] . historyitem _type _SolidFill = 1010 << 16 ; window [ "AscDFH" ] . historyitem _type _Gs = 1011 << 16 ; window [ "AscDFH" ] . historyitem _type _GradLin = 1012 << 16 ; window [ "AscDFH" ] . historyitem _type _GradPath = 1013 << 16 ; window [ "AscDFH" ] . historyitem _type _GradFill = 1014 << 16 ; window [ "AscDFH" ] . historyitem _type _PathFill =
1015 << 16 ; window [ "AscDFH" ] . historyitem _type _NoFill = 1016 << 16 ; window [ "AscDFH" ] . historyitem _type _UniFill = 1017 << 16 ; window [ "AscDFH" ] . historyitem _type _EndArrow = 1018 << 16 ; window [ "AscDFH" ] . historyitem _type _LineJoin = 1019 << 16 ; window [ "AscDFH" ] . historyitem _type _Ln = 1020 << 16 ; window [ "AscDFH" ] . historyitem _type _DefaultShapeDefinition = 1021 << 16 ; window [ "AscDFH" ] . historyitem _type _CNvPr = 1022 << 16 ; window [ "AscDFH" ] . historyitem _type _NvPr = 1023 << 16 ; window [ "AscDFH" ] . historyitem _type _Ph = 1024 << 16 ; window [ "AscDFH" ] . historyitem _type _UniNvPr =
1025 << 16 ; window [ "AscDFH" ] . historyitem _type _StyleRef = 1026 << 16 ; window [ "AscDFH" ] . historyitem _type _FontRef = 1027 << 16 ; window [ "AscDFH" ] . historyitem _type _Chart = 1028 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartSpace = 1029 << 16 ; window [ "AscDFH" ] . historyitem _type _Legend = 1030 << 16 ; window [ "AscDFH" ] . historyitem _type _Layout = 1031 << 16 ; window [ "AscDFH" ] . historyitem _type _LegendEntry = 1032 << 16 ; window [ "AscDFH" ] . historyitem _type _PivotFmt = 1033 << 16 ; window [ "AscDFH" ] . historyitem _type _DLbl = 1034 << 16 ; window [ "AscDFH" ] . historyitem _type _Marker =
1035 << 16 ; window [ "AscDFH" ] . historyitem _type _PlotArea = 1036 << 16 ; window [ "AscDFH" ] . historyitem _type _Axis = 1037 << 16 ; window [ "AscDFH" ] . historyitem _type _NumFmt = 1038 << 16 ; window [ "AscDFH" ] . historyitem _type _Scaling = 1039 << 16 ; window [ "AscDFH" ] . historyitem _type _DTable = 1040 << 16 ; window [ "AscDFH" ] . historyitem _type _LineChart = 1041 << 16 ; window [ "AscDFH" ] . historyitem _type _DLbls = 1042 << 16 ; window [ "AscDFH" ] . historyitem _type _UpDownBars = 1043 << 16 ; window [ "AscDFH" ] . historyitem _type _BarChart = 1044 << 16 ; window [ "AscDFH" ] . historyitem _type _BubbleChart =
1045 << 16 ; window [ "AscDFH" ] . historyitem _type _DoughnutChart = 1046 << 16 ; window [ "AscDFH" ] . historyitem _type _OfPieChart = 1047 << 16 ; window [ "AscDFH" ] . historyitem _type _PieChart = 1048 << 16 ; window [ "AscDFH" ] . historyitem _type _RadarChart = 1049 << 16 ; window [ "AscDFH" ] . historyitem _type _ScatterChart = 1050 << 16 ; window [ "AscDFH" ] . historyitem _type _StockChart = 1051 << 16 ; window [ "AscDFH" ] . historyitem _type _SurfaceChart = 1052 << 16 ; window [ "AscDFH" ] . historyitem _type _BandFmt = 1053 << 16 ; window [ "AscDFH" ] . historyitem _type _AreaChart = 1054 << 16 ; window [ "AscDFH" ] . historyitem _type _ScatterSer =
1055 << 16 ; window [ "AscDFH" ] . historyitem _type _DPt = 1056 << 16 ; window [ "AscDFH" ] . historyitem _type _ErrBars = 1057 << 16 ; window [ "AscDFH" ] . historyitem _type _MinusPlus = 1058 << 16 ; window [ "AscDFH" ] . historyitem _type _NumLit = 1059 << 16 ; window [ "AscDFH" ] . historyitem _type _NumericPoint = 1060 << 16 ; window [ "AscDFH" ] . historyitem _type _NumRef = 1061 << 16 ; window [ "AscDFH" ] . historyitem _type _TrendLine = 1062 << 16 ; window [ "AscDFH" ] . historyitem _type _Tx = 1063 << 16 ; window [ "AscDFH" ] . historyitem _type _StrRef = 1064 << 16 ; window [ "AscDFH" ] . historyitem _type _StrCache =
1065 << 16 ; window [ "AscDFH" ] . historyitem _type _StrPoint = 1066 << 16 ; window [ "AscDFH" ] . historyitem _type _XVal = 1067 << 16 ; window [ "AscDFH" ] . historyitem _type _MultiLvlStrRef = 1068 << 16 ; window [ "AscDFH" ] . historyitem _type _MultiLvlStrCache = 1069 << 16 ; window [ "AscDFH" ] . historyitem _type _StringLiteral = 1070 << 16 ; window [ "AscDFH" ] . historyitem _type _YVal = 1071 << 16 ; window [ "AscDFH" ] . historyitem _type _AreaSeries = 1072 << 16 ; window [ "AscDFH" ] . historyitem _type _Cat = 1073 << 16 ; window [ "AscDFH" ] . historyitem _type _PictureOptions = 1074 << 16 ; window [ "AscDFH" ] . historyitem _type _RadarSeries =
1075 << 16 ; window [ "AscDFH" ] . historyitem _type _BarSeries = 1076 << 16 ; window [ "AscDFH" ] . historyitem _type _LineSeries = 1077 << 16 ; window [ "AscDFH" ] . historyitem _type _PieSeries = 1078 << 16 ; window [ "AscDFH" ] . historyitem _type _SurfaceSeries = 1079 << 16 ; window [ "AscDFH" ] . historyitem _type _BubbleSeries = 1080 << 16 ; window [ "AscDFH" ] . historyitem _type _ExternalData = 1081 << 16 ; window [ "AscDFH" ] . historyitem _type _PivotSource = 1082 << 16 ; window [ "AscDFH" ] . historyitem _type _Protection = 1083 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartWall = 1084 << 16 ; window [ "AscDFH" ] . historyitem _type _View3d =
1085 << 16 ; window [ "AscDFH" ] . historyitem _type _ChartText = 1086 << 16 ; window [ "AscDFH" ] . historyitem _type _ShapeStyle = 1087 << 16 ; window [ "AscDFH" ] . historyitem _type _Xfrm = 1088 << 16 ; window [ "AscDFH" ] . historyitem _type _SpPr = 1089 << 16 ; window [ "AscDFH" ] . historyitem _type _ClrScheme = 1090 << 16 ; window [ "AscDFH" ] . historyitem _type _ClrMap = 1091 << 16 ; window [ "AscDFH" ] . historyitem _type _ExtraClrScheme = 1092 << 16 ; window [ "AscDFH" ] . historyitem _type _FontCollection = 1093 << 16 ; window [ "AscDFH" ] . historyitem _type _FontScheme = 1094 << 16 ; window [ "AscDFH" ] . historyitem _type _FormatScheme =
1095 << 16 ; window [ "AscDFH" ] . historyitem _type _ThemeElements = 1096 << 16 ; window [ "AscDFH" ] . historyitem _type _HF = 1097 << 16 ; window [ "AscDFH" ] . historyitem _type _BgPr = 1098 << 16 ; window [ "AscDFH" ] . historyitem _type _Bg = 1099 << 16 ; window [ "AscDFH" ] . historyitem _type _PrintSettings = 1100 << 16 ; window [ "AscDFH" ] . historyitem _type _HeaderFooterChart = 1101 << 16 ; window [ "AscDFH" ] . historyitem _type _PageMarginsChart = 1102 << 16 ; window [ "AscDFH" ] . historyitem _type _PageSetup = 1103 << 16 ; window [ "AscDFH" ] . historyitem _type _Shape = 1104 << 16 ; window [ "AscDFH" ] . historyitem _type _DispUnits =
1105 << 16 ; window [ "AscDFH" ] . historyitem _type _GroupShape = 1106 << 16 ; window [ "AscDFH" ] . historyitem _type _ImageShape = 1107 << 16 ; window [ "AscDFH" ] . historyitem _type _Geometry = 1108 << 16 ; window [ "AscDFH" ] . historyitem _type _Path = 1109 << 16 ; window [ "AscDFH" ] . historyitem _type _TextBody = 1110 << 16 ; window [ "AscDFH" ] . historyitem _type _CatAx = 1111 << 16 ; window [ "AscDFH" ] . historyitem _type _ValAx = 1112 << 16 ; window [ "AscDFH" ] . historyitem _type _WrapPolygon = 1113 << 16 ; window [ "AscDFH" ] . historyitem _type _DateAx = 1114 << 16 ; window [ "AscDFH" ] . historyitem _type _SerAx =
1115 << 16 ; window [ "AscDFH" ] . historyitem _type _Title = 1116 << 16 ; window [ "AscDFH" ] . historyitem _type _Slide = 1117 << 16 ; window [ "AscDFH" ] . historyitem _type _SlideLayout = 1118 << 16 ; window [ "AscDFH" ] . historyitem _type _SlideMaster = 1119 << 16 ; window [ "AscDFH" ] . historyitem _type _SlideComments = 1120 << 16 ; window [ "AscDFH" ] . historyitem _type _PropLocker = 1121 << 16 ; window [ "AscDFH" ] . historyitem _type _Theme = 1122 << 16 ; window [ "AscDFH" ] . historyitem _type _GraphicFrame = 1123 << 16 ; window [ "AscDFH" ] . historyitem _type _GrpFill = 1124 << 16 ; window [ "AscDFH" ] . historyitem _type _OleObject =
1125 << 16 ; window [ "AscDFH" ] . historyitem _type _DrawingContent = 1126 << 16 ; window [ "AscDFH" ] . historyitem _type _Sparkline = 1127 << 16 ; window [ "AscDFH" ] . historyitem _type _NotesMaster = 1128 << 16 ; window [ "AscDFH" ] . historyitem _type _Notes = 1129 << 16 ; window [ "AscDFH" ] . historyitem _type _Cnx = 1130 << 16 ; window [ "AscDFH" ] . historyitem _type _PresentationSection = 1131 << 16 ; window [ "AscDFH" ] . historyitem _type _PivotTableDefinition = 1132 << 16 ; window [ "AscDFH" ] . historyitem _type _LockedCanvas = 1133 << 16 ; window [ "AscDFH" ] . historyitem _type _RelSizeAnchor =
1134 << 16 ; window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor = 1135 << 16 ; window [ "AscDFH" ] . historyitem _type _Core = 1136 << 16 ; window [ "AscDFH" ] . historyitem _type _SlicerView = 1137 << 16 ; window [ "AscDFH" ] . historyitem _type _PivotWorksheetSource = 1138 << 16 ; window [ "AscDFH" ] . historyitem _type _NamedSheetView = 1139 << 16 ; window [ "AscDFH" ] . historyitem _type _DataValidation = 1140 << 16 ; window [ "AscDFH" ] . historyitem _type _DocumentMacros = 2E3 << 16 ; window [ "AscDFH" ] . historyitem _Unknown _Unknown = window [ "AscDFH" ] . historyitem _type _Unknown | 0 ; window [ "AscDFH" ] . historyitem _TableId _Add =
window [ "AscDFH" ] . historyitem _type _TableId | 1 ; window [ "AscDFH" ] . historyitem _TableId _Description = window [ "AscDFH" ] . historyitem _type _TableId | 65535 ; window [ "AscDFH" ] . historyitem _Document _AddItem = window [ "AscDFH" ] . historyitem _type _Document | 1 ; window [ "AscDFH" ] . historyitem _Document _RemoveItem = window [ "AscDFH" ] . historyitem _type _Document | 2 ; window [ "AscDFH" ] . historyitem _Document _DefaultTab = window [ "AscDFH" ] . historyitem _type _Document | 3 ; window [ "AscDFH" ] . historyitem _Document _EvenAndOddHeaders = window [ "AscDFH" ] . historyitem _type _Document |
4 ; window [ "AscDFH" ] . historyitem _Document _DefaultLanguage = window [ "AscDFH" ] . historyitem _type _Document | 5 ; window [ "AscDFH" ] . historyitem _Document _MathSettings = window [ "AscDFH" ] . historyitem _type _Document | 6 ; window [ "AscDFH" ] . historyitem _Document _SdtGlobalSettings = window [ "AscDFH" ] . historyitem _type _Document | 7 ; window [ "AscDFH" ] . historyitem _Document _Settings _GutterAtTop = window [ "AscDFH" ] . historyitem _type _Document | 8 ; window [ "AscDFH" ] . historyitem _Document _Settings _MirrorMargins = window [ "AscDFH" ] . historyitem _type _Document |
9 ; window [ "AscDFH" ] . historyitem _Document _SpecialFormsGlobalSettings = window [ "AscDFH" ] . historyitem _type _Document | 10 ; window [ "AscDFH" ] . historyitem _Paragraph _AddItem = window [ "AscDFH" ] . historyitem _type _Paragraph | 1 ; window [ "AscDFH" ] . historyitem _Paragraph _RemoveItem = window [ "AscDFH" ] . historyitem _type _Paragraph | 2 ; window [ "AscDFH" ] . historyitem _Paragraph _Numbering = window [ "AscDFH" ] . historyitem _type _Paragraph | 3 ; window [ "AscDFH" ] . historyitem _Paragraph _Align = window [ "AscDFH" ] . historyitem _type _Paragraph | 4 ; window [ "AscDFH" ] . historyitem _Paragraph _Ind _First =
window [ "AscDFH" ] . historyitem _type _Paragraph | 5 ; window [ "AscDFH" ] . historyitem _Paragraph _Ind _Right = window [ "AscDFH" ] . historyitem _type _Paragraph | 6 ; window [ "AscDFH" ] . historyitem _Paragraph _Ind _Left = window [ "AscDFH" ] . historyitem _type _Paragraph | 7 ; window [ "AscDFH" ] . historyitem _Paragraph _ContextualSpacing = window [ "AscDFH" ] . historyitem _type _Paragraph | 8 ; window [ "AscDFH" ] . historyitem _Paragraph _KeepLines = window [ "AscDFH" ] . historyitem _type _Paragraph | 9 ; window [ "AscDFH" ] . historyitem _Paragraph _KeepNext = window [ "AscDFH" ] . historyitem _type _Paragraph |
10 ; window [ "AscDFH" ] . historyitem _Paragraph _PageBreakBefore = window [ "AscDFH" ] . historyitem _type _Paragraph | 11 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _Line = window [ "AscDFH" ] . historyitem _type _Paragraph | 12 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _LineRule = window [ "AscDFH" ] . historyitem _type _Paragraph | 13 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _Before = window [ "AscDFH" ] . historyitem _type _Paragraph | 14 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _After = window [ "AscDFH" ] . historyitem _type _Paragraph |
15 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _AfterAutoSpacing = window [ "AscDFH" ] . historyitem _type _Paragraph | 16 ; window [ "AscDFH" ] . historyitem _Paragraph _Spacing _BeforeAutoSpacing = window [ "AscDFH" ] . historyitem _type _Paragraph | 17 ; window [ "AscDFH" ] . historyitem _Paragraph _Shd _Value = window [ "AscDFH" ] . historyitem _type _Paragraph | 18 ; window [ "AscDFH" ] . historyitem _Paragraph _Shd _Color = window [ "AscDFH" ] . historyitem _type _Paragraph | 19 ; window [ "AscDFH" ] . historyitem _Paragraph _Shd _Unifill = window [ "AscDFH" ] . historyitem _type _Paragraph |
20 ; window [ "AscDFH" ] . historyitem _Paragraph _Shd = window [ "AscDFH" ] . historyitem _type _Paragraph | 21 ; window [ "AscDFH" ] . historyitem _Paragraph _WidowControl = window [ "AscDFH" ] . historyitem _type _Paragraph | 22 ; window [ "AscDFH" ] . historyitem _Paragraph _Tabs = window [ "AscDFH" ] . historyitem _type _Paragraph | 23 ; window [ "AscDFH" ] . historyitem _Paragraph _PStyle = window [ "AscDFH" ] . historyitem _type _Paragraph | 24 ; window [ "AscDFH" ] . historyitem _Paragraph _Borders _Between = window [ "AscDFH" ] . historyitem _type _Paragraph | 25 ; window [ "AscDFH" ] . historyitem _Paragraph _Borders _Bottom =
window [ "AscDFH" ] . historyitem _type _Paragraph | 26 ; window [ "AscDFH" ] . historyitem _Paragraph _Borders _Left = window [ "AscDFH" ] . historyitem _type _Paragraph | 27 ; window [ "AscDFH" ] . historyitem _Paragraph _Borders _Right = window [ "AscDFH" ] . historyitem _type _Paragraph | 28 ; window [ "AscDFH" ] . historyitem _Paragraph _Borders _Top = window [ "AscDFH" ] . historyitem _type _Paragraph | 29 ; window [ "AscDFH" ] . historyitem _Paragraph _Pr = window [ "AscDFH" ] . historyitem _type _Paragraph | 30 ; window [ "AscDFH" ] . historyitem _Paragraph _PresentationPr _Bullet = window [ "AscDFH" ] . historyitem _type _Paragraph |
31 ; window [ "AscDFH" ] . historyitem _Paragraph _PresentationPr _Level = window [ "AscDFH" ] . historyitem _type _Paragraph | 32 ; window [ "AscDFH" ] . historyitem _Paragraph _FramePr = window [ "AscDFH" ] . historyitem _type _Paragraph | 33 ; window [ "AscDFH" ] . historyitem _Paragraph _SectionPr = window [ "AscDFH" ] . historyitem _type _Paragraph | 34 ; window [ "AscDFH" ] . historyitem _Paragraph _PrChange = window [ "AscDFH" ] . historyitem _type _Paragraph | 35 ; window [ "AscDFH" ] . historyitem _Paragraph _PrReviewInfo = window [ "AscDFH" ] . historyitem _type _Paragraph | 36 ; window [ "AscDFH" ] . historyitem _Paragraph _OutlineLvl =
window [ "AscDFH" ] . historyitem _type _Paragraph | 37 ; window [ "AscDFH" ] . historyitem _Paragraph _DefaultTabSize = window [ "AscDFH" ] . historyitem _type _Paragraph | 38 ; window [ "AscDFH" ] . historyitem _Paragraph _SuppressLineNumbers = window [ "AscDFH" ] . historyitem _type _Paragraph | 39 ; window [ "AscDFH" ] . historyitem _TextPr _Bold = window [ "AscDFH" ] . historyitem _type _TextPr | 1 ; window [ "AscDFH" ] . historyitem _TextPr _Italic = window [ "AscDFH" ] . historyitem _type _TextPr | 2 ; window [ "AscDFH" ] . historyitem _TextPr _Strikeout = window [ "AscDFH" ] . historyitem _type _TextPr |
3 ; window [ "AscDFH" ] . historyitem _TextPr _Underline = window [ "AscDFH" ] . historyitem _type _TextPr | 4 ; window [ "AscDFH" ] . historyitem _TextPr _FontSize = window [ "AscDFH" ] . historyitem _type _TextPr | 5 ; window [ "AscDFH" ] . historyitem _TextPr _Color = window [ "AscDFH" ] . historyitem _type _TextPr | 6 ; window [ "AscDFH" ] . historyitem _TextPr _VertAlign = window [ "AscDFH" ] . historyitem _type _TextPr | 7 ; window [ "AscDFH" ] . historyitem _TextPr _HighLight = window [ "AscDFH" ] . historyitem _type _TextPr | 8 ; window [ "AscDFH" ] . historyitem _TextPr _RStyle = window [ "AscDFH" ] . historyitem _type _TextPr |
9 ; window [ "AscDFH" ] . historyitem _TextPr _Spacing = window [ "AscDFH" ] . historyitem _type _TextPr | 10 ; window [ "AscDFH" ] . historyitem _TextPr _DStrikeout = window [ "AscDFH" ] . historyitem _type _TextPr | 11 ; window [ "AscDFH" ] . historyitem _TextPr _Caps = window [ "AscDFH" ] . historyitem _type _TextPr | 12 ; window [ "AscDFH" ] . historyitem _TextPr _SmallCaps = window [ "AscDFH" ] . historyitem _type _TextPr | 13 ; window [ "AscDFH" ] . historyitem _TextPr _Position = window [ "AscDFH" ] . historyitem _type _TextPr | 14 ; window [ "AscDFH" ] . historyitem _TextPr _Value = window [ "AscDFH" ] . historyitem _type _TextPr |
15 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts = window [ "AscDFH" ] . historyitem _type _TextPr | 16 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts _Ascii = window [ "AscDFH" ] . historyitem _type _TextPr | 17 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts _HAnsi = window [ "AscDFH" ] . historyitem _type _TextPr | 18 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts _CS = window [ "AscDFH" ] . historyitem _type _TextPr | 19 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts _EastAsia = window [ "AscDFH" ] . historyitem _type _TextPr | 20 ; window [ "AscDFH" ] . historyitem _TextPr _RFonts _Hint =
window [ "AscDFH" ] . historyitem _type _TextPr | 21 ; window [ "AscDFH" ] . historyitem _TextPr _Lang = window [ "AscDFH" ] . historyitem _type _TextPr | 22 ; window [ "AscDFH" ] . historyitem _TextPr _Lang _Bidi = window [ "AscDFH" ] . historyitem _type _TextPr | 23 ; window [ "AscDFH" ] . historyitem _TextPr _Lang _EastAsia = window [ "AscDFH" ] . historyitem _type _TextPr | 24 ; window [ "AscDFH" ] . historyitem _TextPr _Lang _Val = window [ "AscDFH" ] . historyitem _type _TextPr | 25 ; window [ "AscDFH" ] . historyitem _TextPr _Unifill = window [ "AscDFH" ] . historyitem _type _TextPr | 26 ; window [ "AscDFH" ] . historyitem _TextPr _FontSizeCS =
window [ "AscDFH" ] . historyitem _type _TextPr | 27 ; window [ "AscDFH" ] . historyitem _TextPr _Outline = window [ "AscDFH" ] . historyitem _type _TextPr | 28 ; window [ "AscDFH" ] . historyitem _TextPr _Fill = window [ "AscDFH" ] . historyitem _type _TextPr | 29 ; window [ "AscDFH" ] . historyitem _Drawing _DrawingType = window [ "AscDFH" ] . historyitem _type _Drawing | 1 ; window [ "AscDFH" ] . historyitem _Drawing _WrappingType = window [ "AscDFH" ] . historyitem _type _Drawing | 2 ; window [ "AscDFH" ] . historyitem _Drawing _Distance = window [ "AscDFH" ] . historyitem _type _Drawing | 3 ; window [ "AscDFH" ] . historyitem _Drawing _AllowOverlap =
window [ "AscDFH" ] . historyitem _type _Drawing | 4 ; window [ "AscDFH" ] . historyitem _Drawing _PositionH = window [ "AscDFH" ] . historyitem _type _Drawing | 5 ; window [ "AscDFH" ] . historyitem _Drawing _PositionV = window [ "AscDFH" ] . historyitem _type _Drawing | 6 ; window [ "AscDFH" ] . historyitem _Drawing _BehindDoc = window [ "AscDFH" ] . historyitem _type _Drawing | 7 ; window [ "AscDFH" ] . historyitem _Drawing _SetGraphicObject = window [ "AscDFH" ] . historyitem _type _Drawing | 8 ; window [ "AscDFH" ] . historyitem _Drawing _SetSimplePos = window [ "AscDFH" ] . historyitem _type _Drawing |
9 ; window [ "AscDFH" ] . historyitem _Drawing _SetExtent = window [ "AscDFH" ] . historyitem _type _Drawing | 10 ; window [ "AscDFH" ] . historyitem _Drawing _SetWrapPolygon = window [ "AscDFH" ] . historyitem _type _Drawing | 11 ; window [ "AscDFH" ] . historyitem _Drawing _SetLocked = window [ "AscDFH" ] . historyitem _type _Drawing | 12 ; window [ "AscDFH" ] . historyitem _Drawing _SetRelativeHeight = window [ "AscDFH" ] . historyitem _type _Drawing | 13 ; window [ "AscDFH" ] . historyitem _Drawing _SetEffectExtent = window [ "AscDFH" ] . historyitem _type _Drawing | 14 ; window [ "AscDFH" ] . historyitem _Drawing _SetParent =
window [ "AscDFH" ] . historyitem _type _Drawing | 15 ; window [ "AscDFH" ] . historyitem _Drawing _SetParaMath = window [ "AscDFH" ] . historyitem _type _Drawing | 16 ; window [ "AscDFH" ] . historyitem _Drawing _LayoutInCell = window [ "AscDFH" ] . historyitem _type _Drawing | 17 ; window [ "AscDFH" ] . historyitem _Drawing _SetSizeRelH = window [ "AscDFH" ] . historyitem _type _Drawing | 18 ; window [ "AscDFH" ] . historyitem _Drawing _SetSizeRelV = window [ "AscDFH" ] . historyitem _type _Drawing | 19 ; window [ "AscDFH" ] . historyitem _Table _TableW = window [ "AscDFH" ] . historyitem _type _Table |
1 ; window [ "AscDFH" ] . historyitem _Table _TableCellMar = window [ "AscDFH" ] . historyitem _type _Table | 2 ; window [ "AscDFH" ] . historyitem _Table _TableAlign = window [ "AscDFH" ] . historyitem _type _Table | 3 ; window [ "AscDFH" ] . historyitem _Table _TableInd = window [ "AscDFH" ] . historyitem _type _Table | 4 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _Left = window [ "AscDFH" ] . historyitem _type _Table | 5 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _Top = window [ "AscDFH" ] . historyitem _type _Table | 6 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _Right =
window [ "AscDFH" ] . historyitem _type _Table | 7 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _Bottom = window [ "AscDFH" ] . historyitem _type _Table | 8 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _InsideH = window [ "AscDFH" ] . historyitem _type _Table | 9 ; window [ "AscDFH" ] . historyitem _Table _TableBorder _InsideV = window [ "AscDFH" ] . historyitem _type _Table | 10 ; window [ "AscDFH" ] . historyitem _Table _TableShd = window [ "AscDFH" ] . historyitem _type _Table | 11 ; window [ "AscDFH" ] . historyitem _Table _Inline = window [ "AscDFH" ] . historyitem _type _Table |
12 ; window [ "AscDFH" ] . historyitem _Table _AddRow = window [ "AscDFH" ] . historyitem _type _Table | 13 ; window [ "AscDFH" ] . historyitem _Table _RemoveRow = window [ "AscDFH" ] . historyitem _type _Table | 14 ; window [ "AscDFH" ] . historyitem _Table _TableGrid = window [ "AscDFH" ] . historyitem _type _Table | 15 ; window [ "AscDFH" ] . historyitem _Table _TableLook = window [ "AscDFH" ] . historyitem _type _Table | 16 ; window [ "AscDFH" ] . historyitem _Table _TableStyleRowBandSize = window [ "AscDFH" ] . historyitem _type _Table | 17 ; window [ "AscDFH" ] . historyitem _Table _TableStyleColBandSize =
window [ "AscDFH" ] . historyitem _type _Table | 18 ; window [ "AscDFH" ] . historyitem _Table _TableStyle = window [ "AscDFH" ] . historyitem _type _Table | 19 ; window [ "AscDFH" ] . historyitem _Table _AllowOverlap = window [ "AscDFH" ] . historyitem _type _Table | 20 ; window [ "AscDFH" ] . historyitem _Table _PositionH = window [ "AscDFH" ] . historyitem _type _Table | 21 ; window [ "AscDFH" ] . historyitem _Table _PositionV = window [ "AscDFH" ] . historyitem _type _Table | 22 ; window [ "AscDFH" ] . historyitem _Table _Distance = window [ "AscDFH" ] . historyitem _type _Table | 23 ; window [ "AscDFH" ] . historyitem _Table _Pr =
window [ "AscDFH" ] . historyitem _type _Table | 24 ; window [ "AscDFH" ] . historyitem _Table _TableLayout = window [ "AscDFH" ] . historyitem _type _Table | 25 ; window [ "AscDFH" ] . historyitem _Table _TableDescription = window [ "AscDFH" ] . historyitem _type _Table | 26 ; window [ "AscDFH" ] . historyitem _Table _TableCaption = window [ "AscDFH" ] . historyitem _type _Table | 27 ; window [ "AscDFH" ] . historyitem _Table _TableGridChange = window [ "AscDFH" ] . historyitem _type _Table | 28 ; window [ "AscDFH" ] . historyitem _Table _PrChange = window [ "AscDFH" ] . historyitem _type _Table | 29 ; window [ "AscDFH" ] . historyitem _TableRow _Before =
window [ "AscDFH" ] . historyitem _type _TableRow | 1 ; window [ "AscDFH" ] . historyitem _TableRow _After = window [ "AscDFH" ] . historyitem _type _TableRow | 2 ; window [ "AscDFH" ] . historyitem _TableRow _CellSpacing = window [ "AscDFH" ] . historyitem _type _TableRow | 3 ; window [ "AscDFH" ] . historyitem _TableRow _Height = window [ "AscDFH" ] . historyitem _type _TableRow | 4 ; window [ "AscDFH" ] . historyitem _TableRow _AddCell = window [ "AscDFH" ] . historyitem _type _TableRow | 5 ; window [ "AscDFH" ] . historyitem _TableRow _RemoveCell = window [ "AscDFH" ] . historyitem _type _TableRow |
6 ; window [ "AscDFH" ] . historyitem _TableRow _TableHeader = window [ "AscDFH" ] . historyitem _type _TableRow | 7 ; window [ "AscDFH" ] . historyitem _TableRow _Pr = window [ "AscDFH" ] . historyitem _type _TableRow | 8 ; window [ "AscDFH" ] . historyitem _TableRow _PrChange = window [ "AscDFH" ] . historyitem _type _TableRow | 9 ; window [ "AscDFH" ] . historyitem _TableRow _ReviewType = window [ "AscDFH" ] . historyitem _type _TableRow | 10 ; window [ "AscDFH" ] . historyitem _TableCell _GridSpan = window [ "AscDFH" ] . historyitem _type _TableCell | 1 ; window [ "AscDFH" ] . historyitem _TableCell _Margins =
window [ "AscDFH" ] . historyitem _type _TableCell | 2 ; window [ "AscDFH" ] . historyitem _TableCell _Shd = window [ "AscDFH" ] . historyitem _type _TableCell | 3 ; window [ "AscDFH" ] . historyitem _TableCell _VMerge = window [ "AscDFH" ] . historyitem _type _TableCell | 4 ; window [ "AscDFH" ] . historyitem _TableCell _Border _Left = window [ "AscDFH" ] . historyitem _type _TableCell | 5 ; window [ "AscDFH" ] . historyitem _TableCell _Border _Right = window [ "AscDFH" ] . historyitem _type _TableCell | 6 ; window [ "AscDFH" ] . historyitem _TableCell _Border _Top = window [ "AscDFH" ] . historyitem _type _TableCell |
7 ; window [ "AscDFH" ] . historyitem _TableCell _Border _Bottom = window [ "AscDFH" ] . historyitem _type _TableCell | 8 ; window [ "AscDFH" ] . historyitem _TableCell _VAlign = window [ "AscDFH" ] . historyitem _type _TableCell | 9 ; window [ "AscDFH" ] . historyitem _TableCell _W = window [ "AscDFH" ] . historyitem _type _TableCell | 10 ; window [ "AscDFH" ] . historyitem _TableCell _Pr = window [ "AscDFH" ] . historyitem _type _TableCell | 11 ; window [ "AscDFH" ] . historyitem _TableCell _TextDirection = window [ "AscDFH" ] . historyitem _type _TableCell | 12 ; window [ "AscDFH" ] . historyitem _TableCell _NoWrap =
window [ "AscDFH" ] . historyitem _type _TableCell | 13 ; window [ "AscDFH" ] . historyitem _TableCell _HMerge = window [ "AscDFH" ] . historyitem _type _TableCell | 14 ; window [ "AscDFH" ] . historyitem _TableCell _PrChange = window [ "AscDFH" ] . historyitem _type _TableCell | 15 ; window [ "AscDFH" ] . historyitem _DocumentContent _AddItem = window [ "AscDFH" ] . historyitem _type _DocumentContent | 1 ; window [ "AscDFH" ] . historyitem _DocumentContent _RemoveItem = window [ "AscDFH" ] . historyitem _type _DocumentContent | 2 ; window [ "AscDFH" ] . historyitem _AbstractNum _LvlChange = window [ "AscDFH" ] . historyitem _type _AbstractNum |
1 ; window [ "AscDFH" ] . historyitem _AbstractNum _TextPrChange = window [ "AscDFH" ] . historyitem _type _AbstractNum | 2 ; window [ "AscDFH" ] . historyitem _AbstractNum _ParaPrChange = window [ "AscDFH" ] . historyitem _type _AbstractNum | 3 ; window [ "AscDFH" ] . historyitem _AbstractNum _StyleLink = window [ "AscDFH" ] . historyitem _type _AbstractNum | 4 ; window [ "AscDFH" ] . historyitem _AbstractNum _NumStyleLink = window [ "AscDFH" ] . historyitem _type _AbstractNum | 5 ; window [ "AscDFH" ] . historyitem _Num _LvlOverrideChange = window [ "AscDFH" ] . historyitem _type _Num | 1 ; window [ "AscDFH" ] . historyitem _Num _AbstractNum =
window [ "AscDFH" ] . historyitem _type _Num | 2 ; window [ "AscDFH" ] . historyitem _PresentationField _Guid = window [ "AscDFH" ] . historyitem _type _PresentationField | 1 ; window [ "AscDFH" ] . historyitem _PresentationField _FieldType = window [ "AscDFH" ] . historyitem _type _PresentationField | 2 ; window [ "AscDFH" ] . historyitem _PresentationField _PPr = window [ "AscDFH" ] . historyitem _type _PresentationField | 3 ; window [ "AscDFH" ] . historyitem _Comment _Change = window [ "AscDFH" ] . historyitem _type _Comment | 1 ; window [ "AscDFH" ] . historyitem _Comment _TypeInfo = window [ "AscDFH" ] . historyitem _type _Comment |
2 ; window [ "AscDFH" ] . historyitem _Comment _Position = window [ "AscDFH" ] . historyitem _type _Comment | 3 ; window [ "AscDFH" ] . historyitem _Comments _Add = window [ "AscDFH" ] . historyitem _type _Comments | 1 ; window [ "AscDFH" ] . historyitem _Comments _Remove = window [ "AscDFH" ] . historyitem _type _Comments | 2 ; window [ "AscDFH" ] . historyitem _Hyperlink _Value = window [ "AscDFH" ] . historyitem _type _Hyperlink | 1 ; window [ "AscDFH" ] . historyitem _Hyperlink _ToolTip = window [ "AscDFH" ] . historyitem _type _Hyperlink | 2 ; window [ "AscDFH" ] . historyitem _Hyperlink _AddItem = window [ "AscDFH" ] . historyitem _type _Hyperlink |
3 ; window [ "AscDFH" ] . historyitem _Hyperlink _RemoveItem = window [ "AscDFH" ] . historyitem _type _Hyperlink | 4 ; window [ "AscDFH" ] . historyitem _Hyperlink _Anchor = window [ "AscDFH" ] . historyitem _type _Hyperlink | 5 ; window [ "AscDFH" ] . historyitem _Style _TextPr = window [ "AscDFH" ] . historyitem _type _Style | 1 ; window [ "AscDFH" ] . historyitem _Style _ParaPr = window [ "AscDFH" ] . historyitem _type _Style | 2 ; window [ "AscDFH" ] . historyitem _Style _TablePr = window [ "AscDFH" ] . historyitem _type _Style | 3 ; window [ "AscDFH" ] . historyitem _Style _TableRowPr = window [ "AscDFH" ] . historyitem _type _Style |
4 ; window [ "AscDFH" ] . historyitem _Style _TableCellPr = window [ "AscDFH" ] . historyitem _type _Style | 5 ; window [ "AscDFH" ] . historyitem _Style _TableBand1Horz = window [ "AscDFH" ] . historyitem _type _Style | 6 ; window [ "AscDFH" ] . historyitem _Style _TableBand1Vert = window [ "AscDFH" ] . historyitem _type _Style | 7 ; window [ "AscDFH" ] . historyitem _Style _TableBand2Horz = window [ "AscDFH" ] . historyitem _type _Style | 8 ; window [ "AscDFH" ] . historyitem _Style _TableBand2Vert = window [ "AscDFH" ] . historyitem _type _Style | 9 ; window [ "AscDFH" ] . historyitem _Style _TableFirstCol =
window [ "AscDFH" ] . historyitem _type _Style | 10 ; window [ "AscDFH" ] . historyitem _Style _TableFirstRow = window [ "AscDFH" ] . historyitem _type _Style | 11 ; window [ "AscDFH" ] . historyitem _Style _TableLastCol = window [ "AscDFH" ] . historyitem _type _Style | 12 ; window [ "AscDFH" ] . historyitem _Style _TableLastRow = window [ "AscDFH" ] . historyitem _type _Style | 13 ; window [ "AscDFH" ] . historyitem _Style _TableTLCell = window [ "AscDFH" ] . historyitem _type _Style | 14 ; window [ "AscDFH" ] . historyitem _Style _TableTRCell = window [ "AscDFH" ] . historyitem _type _Style | 15 ; window [ "AscDFH" ] . historyitem _Style _TableBLCell =
window [ "AscDFH" ] . historyitem _type _Style | 16 ; window [ "AscDFH" ] . historyitem _Style _TableBRCell = window [ "AscDFH" ] . historyitem _type _Style | 17 ; window [ "AscDFH" ] . historyitem _Style _TableWholeTable = window [ "AscDFH" ] . historyitem _type _Style | 18 ; window [ "AscDFH" ] . historyitem _Style _Name = window [ "AscDFH" ] . historyitem _type _Style | 101 ; window [ "AscDFH" ] . historyitem _Style _BasedOn = window [ "AscDFH" ] . historyitem _type _Style | 102 ; window [ "AscDFH" ] . historyitem _Style _Next = window [ "AscDFH" ] . historyitem _type _Style | 103 ; window [ "AscDFH" ] . historyitem _Style _Type =
window [ "AscDFH" ] . historyitem _type _Style | 104 ; window [ "AscDFH" ] . historyitem _Style _QFormat = window [ "AscDFH" ] . historyitem _type _Style | 105 ; window [ "AscDFH" ] . historyitem _Style _UiPriority = window [ "AscDFH" ] . historyitem _type _Style | 106 ; window [ "AscDFH" ] . historyitem _Style _Hidden = window [ "AscDFH" ] . historyitem _type _Style | 107 ; window [ "AscDFH" ] . historyitem _Style _SemiHidden = window [ "AscDFH" ] . historyitem _type _Style | 108 ; window [ "AscDFH" ] . historyitem _Style _UnhideWhenUsed = window [ "AscDFH" ] . historyitem _type _Style | 109 ; window [ "AscDFH" ] . historyitem _Style _Link =
window [ "AscDFH" ] . historyitem _type _Style | 110 ; window [ "AscDFH" ] . historyitem _Style _Custom = window [ "AscDFH" ] . historyitem _type _Style | 111 ; window [ "AscDFH" ] . historyitem _Styles _Add = window [ "AscDFH" ] . historyitem _type _Styles | 1 ; window [ "AscDFH" ] . historyitem _Styles _Remove = window [ "AscDFH" ] . historyitem _type _Styles | 2 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultTextPr = window [ "AscDFH" ] . historyitem _type _Styles | 3 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultParaPr = window [ "AscDFH" ] . historyitem _type _Styles | 4 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultParagraphId =
window [ "AscDFH" ] . historyitem _type _Styles | 5 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultCharacterId = window [ "AscDFH" ] . historyitem _type _Styles | 6 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultNumberingId = window [ "AscDFH" ] . historyitem _type _Styles | 7 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultTableId = window [ "AscDFH" ] . historyitem _type _Styles | 8 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultTableGridId = window [ "AscDFH" ] . historyitem _type _Styles | 9 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultHeadingsId =
window [ "AscDFH" ] . historyitem _type _Styles | 10 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultParaListId = window [ "AscDFH" ] . historyitem _type _Styles | 11 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultHeaderId = window [ "AscDFH" ] . historyitem _type _Styles | 12 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultFooterId = window [ "AscDFH" ] . historyitem _type _Styles | 13 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultHyperlinkId = window [ "AscDFH" ] . historyitem _type _Styles | 14 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultFootnoteTextId =
window [ "AscDFH" ] . historyitem _type _Styles | 15 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultFootnoteTextCharId = window [ "AscDFH" ] . historyitem _type _Styles | 16 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultFootnoteReferenceId = window [ "AscDFH" ] . historyitem _type _Styles | 17 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultNoSpacingId = window [ "AscDFH" ] . historyitem _type _Styles | 18 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultTitleId = window [ "AscDFH" ] . historyitem _type _Styles | 19 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultSubtitleId =
window [ "AscDFH" ] . historyitem _type _Styles | 20 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultQuoteId = window [ "AscDFH" ] . historyitem _type _Styles | 21 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultIntenseQuoteId = window [ "AscDFH" ] . historyitem _type _Styles | 22 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultCaption = window [ "AscDFH" ] . historyitem _type _Styles | 23 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteTextId = window [ "AscDFH" ] . historyitem _type _Styles | 24 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteTextCharId =
window [ "AscDFH" ] . historyitem _type _Styles | 25 ; window [ "AscDFH" ] . historyitem _Styles _ChangeDefaultEndnoteReferenceId = window [ "AscDFH" ] . historyitem _type _Styles | 26 ; window [ "AscDFH" ] . historyitem _MathContent _AddItem = window [ "AscDFH" ] . historyitem _type _Math | 101 ; window [ "AscDFH" ] . historyitem _MathContent _RemoveItem = window [ "AscDFH" ] . historyitem _type _Math | 102 ; window [ "AscDFH" ] . historyitem _MathContent _ArgSize = window [ "AscDFH" ] . historyitem _type _Math | 103 ; window [ "AscDFH" ] . historyitem _MathPara _Jc = window [ "AscDFH" ] . historyitem _type _Math |
201 ; window [ "AscDFH" ] . historyitem _MathBase _AddItems = window [ "AscDFH" ] . historyitem _type _Math | 301 ; window [ "AscDFH" ] . historyitem _MathBase _RemoveItems = window [ "AscDFH" ] . historyitem _type _Math | 302 ; window [ "AscDFH" ] . historyitem _MathBase _FontSize = window [ "AscDFH" ] . historyitem _type _Math | 303 ; window [ "AscDFH" ] . historyitem _MathBase _Shd = window [ "AscDFH" ] . historyitem _type _Math | 304 ; window [ "AscDFH" ] . historyitem _MathBase _Color = window [ "AscDFH" ] . historyitem _type _Math | 305 ; window [ "AscDFH" ] . historyitem _MathBase _Unifill = window [ "AscDFH" ] . historyitem _type _Math |
306 ; window [ "AscDFH" ] . historyitem _MathBase _Underline = window [ "AscDFH" ] . historyitem _type _Math | 307 ; window [ "AscDFH" ] . historyitem _MathBase _Strikeout = window [ "AscDFH" ] . historyitem _type _Math | 308 ; window [ "AscDFH" ] . historyitem _MathBase _DoubleStrikeout = window [ "AscDFH" ] . historyitem _type _Math | 309 ; window [ "AscDFH" ] . historyitem _MathBase _Italic = window [ "AscDFH" ] . historyitem _type _Math | 310 ; window [ "AscDFH" ] . historyitem _MathBase _Bold = window [ "AscDFH" ] . historyitem _type _Math | 311 ; window [ "AscDFH" ] . historyitem _MathBase _RFontsAscii =
window [ "AscDFH" ] . historyitem _type _Math | 312 ; window [ "AscDFH" ] . historyitem _MathBase _RFontsHAnsi = window [ "AscDFH" ] . historyitem _type _Math | 313 ; window [ "AscDFH" ] . historyitem _MathBase _RFontsCS = window [ "AscDFH" ] . historyitem _type _Math | 314 ; window [ "AscDFH" ] . historyitem _MathBase _RFontsEastAsia = window [ "AscDFH" ] . historyitem _type _Math | 315 ; window [ "AscDFH" ] . historyitem _MathBase _RFontsHint = window [ "AscDFH" ] . historyitem _type _Math | 316 ; window [ "AscDFH" ] . historyitem _MathBase _HighLight = window [ "AscDFH" ] . historyitem _type _Math |
317 ; window [ "AscDFH" ] . historyitem _MathBase _ReviewType = window [ "AscDFH" ] . historyitem _type _Math | 318 ; window [ "AscDFH" ] . historyitem _MathBase _TextFill = window [ "AscDFH" ] . historyitem _type _Math | 319 ; window [ "AscDFH" ] . historyitem _MathBase _TextOutline = window [ "AscDFH" ] . historyitem _type _Math | 320 ; window [ "AscDFH" ] . historyitem _MathBox _AlnAt = window [ "AscDFH" ] . historyitem _type _Math | 401 ; window [ "AscDFH" ] . historyitem _MathBox _ForcedBreak = window [ "AscDFH" ] . historyitem _type _Math | 402 ; window [ "AscDFH" ] . historyitem _MathFraction _Type =
window [ "AscDFH" ] . historyitem _type _Math | 501 ; window [ "AscDFH" ] . historyitem _MathRadical _HideDegree = window [ "AscDFH" ] . historyitem _type _Math | 601 ; window [ "AscDFH" ] . historyitem _MathNary _LimLoc = window [ "AscDFH" ] . historyitem _type _Math | 701 ; window [ "AscDFH" ] . historyitem _MathNary _UpperLimit = window [ "AscDFH" ] . historyitem _type _Math | 702 ; window [ "AscDFH" ] . historyitem _MathNary _LowerLimit = window [ "AscDFH" ] . historyitem _type _Math | 703 ; window [ "AscDFH" ] . historyitem _MathDelimiter _BegOper = window [ "AscDFH" ] . historyitem _type _Math | 801 ;
window [ "AscDFH" ] . historyitem _MathDelimiter _EndOper = window [ "AscDFH" ] . historyitem _type _Math | 802 ; window [ "AscDFH" ] . historyitem _MathDelimiter _Grow = window [ "AscDFH" ] . historyitem _type _Math | 803 ; window [ "AscDFH" ] . historyitem _MathDelimiter _Shape = window [ "AscDFH" ] . historyitem _type _Math | 804 ; window [ "AscDFH" ] . historyitem _MathDelimiter _SetColumn = window [ "AscDFH" ] . historyitem _type _Math | 805 ; window [ "AscDFH" ] . historyitem _MathGroupChar _Pr = window [ "AscDFH" ] . historyitem _type _Math | 901 ; window [ "AscDFH" ] . historyitem _MathLimit _Type =
window [ "AscDFH" ] . historyitem _type _Math | 1001 ; window [ "AscDFH" ] . historyitem _MathBorderBox _Top = window [ "AscDFH" ] . historyitem _type _Math | 1101 ; window [ "AscDFH" ] . historyitem _MathBorderBox _Bot = window [ "AscDFH" ] . historyitem _type _Math | 1102 ; window [ "AscDFH" ] . historyitem _MathBorderBox _Left = window [ "AscDFH" ] . historyitem _type _Math | 1103 ; window [ "AscDFH" ] . historyitem _MathBorderBox _Right = window [ "AscDFH" ] . historyitem _type _Math | 1104 ; window [ "AscDFH" ] . historyitem _MathBorderBox _Hor = window [ "AscDFH" ] . historyitem _type _Math | 1105 ;
window [ "AscDFH" ] . historyitem _MathBorderBox _Ver = window [ "AscDFH" ] . historyitem _type _Math | 1106 ; window [ "AscDFH" ] . historyitem _MathBorderBox _TopLTR = window [ "AscDFH" ] . historyitem _type _Math | 1107 ; window [ "AscDFH" ] . historyitem _MathBorderBox _TopRTL = window [ "AscDFH" ] . historyitem _type _Math | 1108 ; window [ "AscDFH" ] . historyitem _MathBar _LinePos = window [ "AscDFH" ] . historyitem _type _Math | 1201 ; window [ "AscDFH" ] . historyitem _MathMatrix _AddRow = window [ "AscDFH" ] . historyitem _type _Math | 1301 ; window [ "AscDFH" ] . historyitem _MathMatrix _RemoveRow =
window [ "AscDFH" ] . historyitem _type _Math | 1302 ; window [ "AscDFH" ] . historyitem _MathMatrix _AddColumn = window [ "AscDFH" ] . historyitem _type _Math | 1303 ; window [ "AscDFH" ] . historyitem _MathMatrix _RemoveColumn = window [ "AscDFH" ] . historyitem _type _Math | 1304 ; window [ "AscDFH" ] . historyitem _MathMatrix _BaseJc = window [ "AscDFH" ] . historyitem _type _Math | 1305 ; window [ "AscDFH" ] . historyitem _MathMatrix _ColumnJc = window [ "AscDFH" ] . historyitem _type _Math | 1306 ; window [ "AscDFH" ] . historyitem _MathMatrix _Interval = window [ "AscDFH" ] . historyitem _type _Math |
1307 ; window [ "AscDFH" ] . historyitem _MathMatrix _Plh = window [ "AscDFH" ] . historyitem _type _Math | 1308 ; window [ "AscDFH" ] . historyitem _MathDegree _SubSupType = window [ "AscDFH" ] . historyitem _type _Math | 1401 ; window [ "AscDFH" ] . historyitem _ParaRun _AddItem = window [ "AscDFH" ] . historyitem _type _ParaRun | 1 ; window [ "AscDFH" ] . historyitem _ParaRun _RemoveItem = window [ "AscDFH" ] . historyitem _type _ParaRun | 2 ; window [ "AscDFH" ] . historyitem _ParaRun _Bold = window [ "AscDFH" ] . historyitem _type _ParaRun | 3 ; window [ "AscDFH" ] . historyitem _ParaRun _Italic = window [ "AscDFH" ] . historyitem _type _ParaRun |
4 ; window [ "AscDFH" ] . historyitem _ParaRun _Strikeout = window [ "AscDFH" ] . historyitem _type _ParaRun | 5 ; window [ "AscDFH" ] . historyitem _ParaRun _Underline = window [ "AscDFH" ] . historyitem _type _ParaRun | 6 ; window [ "AscDFH" ] . historyitem _ParaRun _FontFamily = window [ "AscDFH" ] . historyitem _type _ParaRun | 7 ; window [ "AscDFH" ] . historyitem _ParaRun _FontSize = window [ "AscDFH" ] . historyitem _type _ParaRun | 8 ; window [ "AscDFH" ] . historyitem _ParaRun _Color = window [ "AscDFH" ] . historyitem _type _ParaRun | 9 ; window [ "AscDFH" ] . historyitem _ParaRun _VertAlign = window [ "AscDFH" ] . historyitem _type _ParaRun |
10 ; window [ "AscDFH" ] . historyitem _ParaRun _HighLight = window [ "AscDFH" ] . historyitem _type _ParaRun | 11 ; window [ "AscDFH" ] . historyitem _ParaRun _RStyle = window [ "AscDFH" ] . historyitem _type _ParaRun | 12 ; window [ "AscDFH" ] . historyitem _ParaRun _Spacing = window [ "AscDFH" ] . historyitem _type _ParaRun | 13 ; window [ "AscDFH" ] . historyitem _ParaRun _DStrikeout = window [ "AscDFH" ] . historyitem _type _ParaRun | 14 ; window [ "AscDFH" ] . historyitem _ParaRun _Caps = window [ "AscDFH" ] . historyitem _type _ParaRun | 15 ; window [ "AscDFH" ] . historyitem _ParaRun _SmallCaps =
window [ "AscDFH" ] . historyitem _type _ParaRun | 16 ; window [ "AscDFH" ] . historyitem _ParaRun _Position = window [ "AscDFH" ] . historyitem _type _ParaRun | 17 ; window [ "AscDFH" ] . historyitem _ParaRun _Value = window [ "AscDFH" ] . historyitem _type _ParaRun | 18 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts = window [ "AscDFH" ] . historyitem _type _ParaRun | 19 ; window [ "AscDFH" ] . historyitem _ParaRun _Lang = window [ "AscDFH" ] . historyitem _type _ParaRun | 20 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts _Ascii = window [ "AscDFH" ] . historyitem _type _ParaRun | 21 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts _HAnsi =
window [ "AscDFH" ] . historyitem _type _ParaRun | 22 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts _CS = window [ "AscDFH" ] . historyitem _type _ParaRun | 23 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts _EastAsia = window [ "AscDFH" ] . historyitem _type _ParaRun | 24 ; window [ "AscDFH" ] . historyitem _ParaRun _RFonts _Hint = window [ "AscDFH" ] . historyitem _type _ParaRun | 25 ; window [ "AscDFH" ] . historyitem _ParaRun _Lang _Bidi = window [ "AscDFH" ] . historyitem _type _ParaRun | 26 ; window [ "AscDFH" ] . historyitem _ParaRun _Lang _EastAsia = window [ "AscDFH" ] . historyitem _type _ParaRun |
27 ; window [ "AscDFH" ] . historyitem _ParaRun _Lang _Val = window [ "AscDFH" ] . historyitem _type _ParaRun | 28 ; window [ "AscDFH" ] . historyitem _ParaRun _TextPr = window [ "AscDFH" ] . historyitem _type _ParaRun | 29 ; window [ "AscDFH" ] . historyitem _ParaRun _Unifill = window [ "AscDFH" ] . historyitem _type _ParaRun | 30 ; window [ "AscDFH" ] . historyitem _ParaRun _Shd = window [ "AscDFH" ] . historyitem _type _ParaRun | 31 ; window [ "AscDFH" ] . historyitem _ParaRun _MathStyle = window [ "AscDFH" ] . historyitem _type _ParaRun | 32 ; window [ "AscDFH" ] . historyitem _ParaRun _MathPrp = window [ "AscDFH" ] . historyitem _type _ParaRun |
33 ; window [ "AscDFH" ] . historyitem _ParaRun _ReviewType = window [ "AscDFH" ] . historyitem _type _ParaRun | 34 ; window [ "AscDFH" ] . historyitem _ParaRun _PrChange = window [ "AscDFH" ] . historyitem _type _ParaRun | 35 ; window [ "AscDFH" ] . historyitem _ParaRun _TextFill = window [ "AscDFH" ] . historyitem _type _ParaRun | 36 ; window [ "AscDFH" ] . historyitem _ParaRun _TextOutline = window [ "AscDFH" ] . historyitem _type _ParaRun | 37 ; window [ "AscDFH" ] . historyitem _ParaRun _PrReviewInfo = window [ "AscDFH" ] . historyitem _type _ParaRun | 38 ; window [ "AscDFH" ] . historyitem _ParaRun _ContentReviewInfo =
window [ "AscDFH" ] . historyitem _type _ParaRun | 39 ; window [ "AscDFH" ] . historyitem _ParaRun _OnStartSplit = window [ "AscDFH" ] . historyitem _type _ParaRun | 40 ; window [ "AscDFH" ] . historyitem _ParaRun _OnEndSplit = window [ "AscDFH" ] . historyitem _type _ParaRun | 41 ; window [ "AscDFH" ] . historyitem _ParaRun _MathAlnAt = window [ "AscDFH" ] . historyitem _type _ParaRun | 42 ; window [ "AscDFH" ] . historyitem _ParaRun _MathForcedBreak = window [ "AscDFH" ] . historyitem _type _ParaRun | 43 ; window [ "AscDFH" ] . historyitem _Section _PageSize _Orient = window [ "AscDFH" ] . historyitem _type _Section |
1 ; window [ "AscDFH" ] . historyitem _Section _PageSize _Size = window [ "AscDFH" ] . historyitem _type _Section | 2 ; window [ "AscDFH" ] . historyitem _Section _PageMargins = window [ "AscDFH" ] . historyitem _type _Section | 3 ; window [ "AscDFH" ] . historyitem _Section _Type = window [ "AscDFH" ] . historyitem _type _Section | 4 ; window [ "AscDFH" ] . historyitem _Section _Borders _Left = window [ "AscDFH" ] . historyitem _type _Section | 5 ; window [ "AscDFH" ] . historyitem _Section _Borders _Top = window [ "AscDFH" ] . historyitem _type _Section | 6 ; window [ "AscDFH" ] . historyitem _Section _Borders _Right =
window [ "AscDFH" ] . historyitem _type _Section | 7 ; window [ "AscDFH" ] . historyitem _Section _Borders _Bottom = window [ "AscDFH" ] . historyitem _type _Section | 8 ; window [ "AscDFH" ] . historyitem _Section _Borders _Display = window [ "AscDFH" ] . historyitem _type _Section | 9 ; window [ "AscDFH" ] . historyitem _Section _Borders _OffsetFrom = window [ "AscDFH" ] . historyitem _type _Section | 10 ; window [ "AscDFH" ] . historyitem _Section _Borders _ZOrder = window [ "AscDFH" ] . historyitem _type _Section | 11 ; window [ "AscDFH" ] . historyitem _Section _Header _First = window [ "AscDFH" ] . historyitem _type _Section |
12 ; window [ "AscDFH" ] . historyitem _Section _Header _Even = window [ "AscDFH" ] . historyitem _type _Section | 13 ; window [ "AscDFH" ] . historyitem _Section _Header _Default = window [ "AscDFH" ] . historyitem _type _Section | 14 ; window [ "AscDFH" ] . historyitem _Section _Footer _First = window [ "AscDFH" ] . historyitem _type _Section | 15 ; window [ "AscDFH" ] . historyitem _Section _Footer _Even = window [ "AscDFH" ] . historyitem _type _Section | 16 ; window [ "AscDFH" ] . historyitem _Section _Footer _Default = window [ "AscDFH" ] . historyitem _type _Section | 17 ; window [ "AscDFH" ] . historyitem _Section _TitlePage =
window [ "AscDFH" ] . historyitem _type _Section | 18 ; window [ "AscDFH" ] . historyitem _Section _PageMargins _Header = window [ "AscDFH" ] . historyitem _type _Section | 19 ; window [ "AscDFH" ] . historyitem _Section _PageMargins _Footer = window [ "AscDFH" ] . historyitem _type _Section | 20 ; window [ "AscDFH" ] . historyitem _Section _PageNumType _Start = window [ "AscDFH" ] . historyitem _type _Section | 21 ; window [ "AscDFH" ] . historyitem _Section _Columns _EqualWidth = window [ "AscDFH" ] . historyitem _type _Section | 22 ; window [ "AscDFH" ] . historyitem _Section _Columns _Space = window [ "AscDFH" ] . historyitem _type _Section |
23 ; window [ "AscDFH" ] . historyitem _Section _Columns _Num = window [ "AscDFH" ] . historyitem _type _Section | 24 ; window [ "AscDFH" ] . historyitem _Section _Columns _Sep = window [ "AscDFH" ] . historyitem _type _Section | 25 ; window [ "AscDFH" ] . historyitem _Section _Columns _Col = window [ "AscDFH" ] . historyitem _type _Section | 26 ; window [ "AscDFH" ] . historyitem _Section _Columns _SetCols = window [ "AscDFH" ] . historyitem _type _Section | 27 ; window [ "AscDFH" ] . historyitem _Section _Footnote _Pos = window [ "AscDFH" ] . historyitem _type _Section | 28 ; window [ "AscDFH" ] . historyitem _Section _Footnote _NumStart =
window [ "AscDFH" ] . historyitem _type _Section | 29 ; window [ "AscDFH" ] . historyitem _Section _Footnote _NumRestart = window [ "AscDFH" ] . historyitem _type _Section | 30 ; window [ "AscDFH" ] . historyitem _Section _Footnote _NumFormat = window [ "AscDFH" ] . historyitem _type _Section | 31 ; window [ "AscDFH" ] . historyitem _Section _PageMargins _Gutter = window [ "AscDFH" ] . historyitem _type _Section | 32 ; window [ "AscDFH" ] . historyitem _Section _Gutter _RTL = window [ "AscDFH" ] . historyitem _type _Section | 33 ; window [ "AscDFH" ] . historyitem _Section _Endnote _Pos = window [ "AscDFH" ] . historyitem _type _Section |
34 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumStart = window [ "AscDFH" ] . historyitem _type _Section | 35 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumRestart = window [ "AscDFH" ] . historyitem _type _Section | 36 ; window [ "AscDFH" ] . historyitem _Section _Endnote _NumFormat = window [ "AscDFH" ] . historyitem _type _Section | 37 ; window [ "AscDFH" ] . historyitem _Section _LnNumType = window [ "AscDFH" ] . historyitem _type _Section | 38 ; window [ "AscDFH" ] . historyitem _ParaComment _CommentId = window [ "AscDFH" ] . historyitem _type _ParaComment | 1 ; window [ "AscDFH" ] . historyitem _Field _AddItem =
window [ "AscDFH" ] . historyitem _type _Field | 1 ; window [ "AscDFH" ] . historyitem _Field _RemoveItem = window [ "AscDFH" ] . historyitem _type _Field | 2 ; window [ "AscDFH" ] . historyitem _Field _FormFieldName = window [ "AscDFH" ] . historyitem _type _Field | 3 ; window [ "AscDFH" ] . historyitem _Field _FormFieldDefaultText = window [ "AscDFH" ] . historyitem _type _Field | 4 ; window [ "AscDFH" ] . historyitem _Footnotes _AddFootnote = window [ "AscDFH" ] . historyitem _type _Footnotes | 1 ; window [ "AscDFH" ] . historyitem _Footnotes _SetSeparator = window [ "AscDFH" ] . historyitem _type _Footnotes |
2 ; window [ "AscDFH" ] . historyitem _Footnotes _SetContinuationSeparator = window [ "AscDFH" ] . historyitem _type _Footnotes | 3 ; window [ "AscDFH" ] . historyitem _Footnotes _SetContinuationNotice = window [ "AscDFH" ] . historyitem _type _Footnotes | 4 ; window [ "AscDFH" ] . historyitem _Footnotes _RemoveFootnote = window [ "AscDFH" ] . historyitem _type _Footnotes | 5 ; window [ "AscDFH" ] . historyitem _GlossaryDocument _AddDocPart = window [ "AscDFH" ] . historyitem _type _GlossaryDocument | 1 ; window [ "AscDFH" ] . historyitem _DocPart _Name = window [ "AscDFH" ] . historyitem _type _DocPart |
1 ; window [ "AscDFH" ] . historyitem _DocPart _Style = window [ "AscDFH" ] . historyitem _type _DocPart | 2 ; window [ "AscDFH" ] . historyitem _DocPart _Types = window [ "AscDFH" ] . historyitem _type _DocPart | 3 ; window [ "AscDFH" ] . historyitem _DocPart _Description = window [ "AscDFH" ] . historyitem _type _DocPart | 4 ; window [ "AscDFH" ] . historyitem _DocPart _GUID = window [ "AscDFH" ] . historyitem _type _DocPart | 5 ; window [ "AscDFH" ] . historyitem _DocPart _Category = window [ "AscDFH" ] . historyitem _type _DocPart | 6 ; window [ "AscDFH" ] . historyitem _DocPart _Behavior = window [ "AscDFH" ] . historyitem _type _DocPart |
7 ; window [ "AscDFH" ] . historyitem _SdtPr _Alias = window [ "AscDFH" ] . historyitem _type _SdtPr | 1 ; window [ "AscDFH" ] . historyitem _SdtPr _Id = window [ "AscDFH" ] . historyitem _type _SdtPr | 2 ; window [ "AscDFH" ] . historyitem _SdtPr _Tag = window [ "AscDFH" ] . historyitem _type _SdtPr | 3 ; window [ "AscDFH" ] . historyitem _SdtPr _Label = window [ "AscDFH" ] . historyitem _type _SdtPr | 4 ; window [ "AscDFH" ] . historyitem _SdtPr _Lock = window [ "AscDFH" ] . historyitem _type _SdtPr | 5 ; window [ "AscDFH" ] . historyitem _SdtPr _DocPartObj = window [ "AscDFH" ] . historyitem _type _SdtPr | 6 ; window [ "AscDFH" ] . historyitem _SdtPr _Appearance =
window [ "AscDFH" ] . historyitem _type _SdtPr | 7 ; window [ "AscDFH" ] . historyitem _SdtPr _Color = window [ "AscDFH" ] . historyitem _type _SdtPr | 8 ; window [ "AscDFH" ] . historyitem _SdtPr _CheckBox = window [ "AscDFH" ] . historyitem _type _SdtPr | 9 ; window [ "AscDFH" ] . historyitem _SdtPr _CheckBox _Checked = window [ "AscDFH" ] . historyitem _type _SdtPr | 10 ; window [ "AscDFH" ] . historyitem _SdtPr _Picture = window [ "AscDFH" ] . historyitem _type _SdtPr | 11 ; window [ "AscDFH" ] . historyitem _SdtPr _ComboBox = window [ "AscDFH" ] . historyitem _type _SdtPr | 12 ; window [ "AscDFH" ] . historyitem _SdtPr _DropDownList =
window [ "AscDFH" ] . historyitem _type _SdtPr | 13 ; window [ "AscDFH" ] . historyitem _SdtPr _DatePicker = window [ "AscDFH" ] . historyitem _type _SdtPr | 14 ; window [ "AscDFH" ] . historyitem _SdtPr _TextPr = window [ "AscDFH" ] . historyitem _type _SdtPr | 15 ; window [ "AscDFH" ] . historyitem _SdtPr _Placeholder = window [ "AscDFH" ] . historyitem _type _SdtPr | 16 ; window [ "AscDFH" ] . historyitem _SdtPr _ShowingPlcHdr = window [ "AscDFH" ] . historyitem _type _SdtPr | 17 ; window [ "AscDFH" ] . historyitem _SdtPr _Equation = window [ "AscDFH" ] . historyitem _type _SdtPr | 18 ; window [ "AscDFH" ] . historyitem _SdtPr _Text =
window [ "AscDFH" ] . historyitem _type _SdtPr | 19 ; window [ "AscDFH" ] . historyitem _SdtPr _Temporary = window [ "AscDFH" ] . historyitem _type _SdtPr | 20 ; window [ "AscDFH" ] . historyitem _SdtPr _TextForm = window [ "AscDFH" ] . historyitem _type _SdtPr | 21 ; window [ "AscDFH" ] . historyitem _SdtPr _FormPr = window [ "AscDFH" ] . historyitem _type _SdtPr | 22 ; window [ "AscDFH" ] . historyitem _Endnotes _AddEndnote = window [ "AscDFH" ] . historyitem _type _Endnotes | 1 ; window [ "AscDFH" ] . historyitem _Endnotes _RemoveEndnote = window [ "AscDFH" ] . historyitem _type _Endnotes | 2 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetDrawingBaseCoors =
window [ "AscDFH" ] . historyitem _type _CommonShape | 101 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetWorksheet = window [ "AscDFH" ] . historyitem _type _CommonShape | 102 ; window [ "AscDFH" ] . historyitem _AutoShapes _AddToDrawingObjects = window [ "AscDFH" ] . historyitem _type _CommonShape | 103 ; window [ "AscDFH" ] . historyitem _AutoShapes _RemoveFromDrawingObjects = window [ "AscDFH" ] . historyitem _type _CommonShape | 104 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetBFromSerialize = window [ "AscDFH" ] . historyitem _type _CommonShape | 105 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetLocks =
window [ "AscDFH" ] . historyitem _type _CommonShape | 106 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetDrawingBaseType = window [ "AscDFH" ] . historyitem _type _CommonShape | 107 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetDrawingBaseExt = window [ "AscDFH" ] . historyitem _type _CommonShape | 108 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetDrawingBasePos = window [ "AscDFH" ] . historyitem _type _CommonShape | 109 ; window [ "AscDFH" ] . historyitem _AutoShapes _SetDrawingBaseEditAs = window [ "AscDFH" ] . historyitem _type _CommonShape | 110 ; window [ "AscDFH" ] . historyitem _ChartFormatSetChart =
window [ "AscDFH" ] . historyitem _type _CommonShape | 201 ; window [ "AscDFH" ] . historyitem _CommonChart _RemoveSeries = window [ "AscDFH" ] . historyitem _type _CommonShape | 301 ; window [ "AscDFH" ] . historyitem _CommonSeries _RemoveDPt = window [ "AscDFH" ] . historyitem _type _CommonShape | 302 ; window [ "AscDFH" ] . historyitem _CommonLit _RemoveDPt = window [ "AscDFH" ] . historyitem _type _CommonShape | 303 ; window [ "AscDFH" ] . historyitem _CommonChartFormat _SetParent = window [ "AscDFH" ] . historyitem _type _CommonShape | 304 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetIdx =
window [ "AscDFH" ] . historyitem _type _CommonShape | 305 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _CommonShape | 306 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetTx = window [ "AscDFH" ] . historyitem _type _CommonShape | 307 ; window [ "AscDFH" ] . historyitem _CommonSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _CommonShape | 308 ; window [ "AscDFH" ] . historyitem _CommonChart _AddSeries = window [ "AscDFH" ] . historyitem _type _CommonShape | 309 ; window [ "AscDFH" ] . historyitem _CommonChart _SetDlbls = window [ "AscDFH" ] . historyitem _type _CommonShape |
310 ; window [ "AscDFH" ] . historyitem _CommonChart _AddAxId = window [ "AscDFH" ] . historyitem _type _CommonShape | 311 ; window [ "AscDFH" ] . historyitem _CommonChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _CommonShape | 312 ; window [ "AscDFH" ] . historyitem _CommonChart _AddFilteredSeries = window [ "AscDFH" ] . historyitem _type _CommonShape | 313 ; window [ "AscDFH" ] . historyitem _CommonChart _RemoveFilteredSeries = window [ "AscDFH" ] . historyitem _type _CommonShape | 314 ; window [ "AscDFH" ] . historyitem _Common _AddWatermark = window [ "AscDFH" ] . historyitem _type _CommonShape |
401 ; window [ "AscDFH" ] . historyitem _Presentation _AddSlide = window [ "AscDFH" ] . historyitem _type _Presentation | 1 ; window [ "AscDFH" ] . historyitem _Presentation _RemoveSlide = window [ "AscDFH" ] . historyitem _type _Presentation | 2 ; window [ "AscDFH" ] . historyitem _Presentation _SlideSize = window [ "AscDFH" ] . historyitem _type _Presentation | 3 ; window [ "AscDFH" ] . historyitem _Presentation _AddSlideMaster = window [ "AscDFH" ] . historyitem _type _Presentation | 4 ; window [ "AscDFH" ] . historyitem _Presentation _ChangeTheme = window [ "AscDFH" ] . historyitem _type _Presentation |
5 ; window [ "AscDFH" ] . historyitem _Presentation _ChangeColorScheme = window [ "AscDFH" ] . historyitem _type _Presentation | 6 ; window [ "AscDFH" ] . historyitem _Presentation _SetShowPr = window [ "AscDFH" ] . historyitem _type _Presentation | 7 ; window [ "AscDFH" ] . historyitem _Presentation _SetDefaultTextStyle = window [ "AscDFH" ] . historyitem _type _Presentation | 8 ; window [ "AscDFH" ] . historyitem _Presentation _AddSection = window [ "AscDFH" ] . historyitem _type _Presentation | 9 ; window [ "AscDFH" ] . historyitem _Presentation _RemoveSection = window [ "AscDFH" ] . historyitem _type _Presentation |
10 ; window [ "AscDFH" ] . historyitem _Presentation _SetFirstSlideNum = window [ "AscDFH" ] . historyitem _type _Presentation | 11 ; window [ "AscDFH" ] . historyitem _Presentation _SetShowSpecialPlsOnTitleSld = window [ "AscDFH" ] . historyitem _type _Presentation | 12 ; window [ "AscDFH" ] . historyitem _ColorMod _SetName = window [ "AscDFH" ] . historyitem _type _ColorMod | 1 ; window [ "AscDFH" ] . historyitem _ColorMod _SetVal = window [ "AscDFH" ] . historyitem _type _ColorMod | 2 ; window [ "AscDFH" ] . historyitem _ColorModifiers _AddColorMod = window [ "AscDFH" ] . historyitem _type _ColorModifiers |
1 ; window [ "AscDFH" ] . historyitem _ColorModifiers _RemoveColorMod = window [ "AscDFH" ] . historyitem _type _ColorModifiers | 2 ; window [ "AscDFH" ] . historyitem _SysColor _SetId = window [ "AscDFH" ] . historyitem _type _SysColor | 1 ; window [ "AscDFH" ] . historyitem _SysColor _SetR = window [ "AscDFH" ] . historyitem _type _SysColor | 2 ; window [ "AscDFH" ] . historyitem _SysColor _SetG = window [ "AscDFH" ] . historyitem _type _SysColor | 3 ; window [ "AscDFH" ] . historyitem _SysColor _SetB = window [ "AscDFH" ] . historyitem _type _SysColor | 4 ; window [ "AscDFH" ] . historyitem _PrstColor _SetId =
window [ "AscDFH" ] . historyitem _type _PrstColor | 1 ; window [ "AscDFH" ] . historyitem _RGBColor _SetColor = window [ "AscDFH" ] . historyitem _type _RGBColor | 1 ; window [ "AscDFH" ] . historyitem _SchemeColor _SetId = window [ "AscDFH" ] . historyitem _type _SchemeColor | 1 ; window [ "AscDFH" ] . historyitem _UniColor _SetColor = window [ "AscDFH" ] . historyitem _type _UniColor | 1 ; window [ "AscDFH" ] . historyitem _UniColor _SetMods = window [ "AscDFH" ] . historyitem _type _UniColor | 2 ; window [ "AscDFH" ] . historyitem _SrcRect _SetLTRB = window [ "AscDFH" ] . historyitem _type _SrcRect |
1 ; window [ "AscDFH" ] . historyitem _BlipFill _SetRasterImageId = window [ "AscDFH" ] . historyitem _type _BlipFill | 1 ; window [ "AscDFH" ] . historyitem _BlipFill _SetVectorImageBin = window [ "AscDFH" ] . historyitem _type _BlipFill | 2 ; window [ "AscDFH" ] . historyitem _BlipFill _SetSrcRect = window [ "AscDFH" ] . historyitem _type _BlipFill | 3 ; window [ "AscDFH" ] . historyitem _BlipFill _SetStretch = window [ "AscDFH" ] . historyitem _type _BlipFill | 4 ; window [ "AscDFH" ] . historyitem _BlipFill _SetTile = window [ "AscDFH" ] . historyitem _type _BlipFill | 5 ; window [ "AscDFH" ] . historyitem _BlipFill _SetRotWithShape =
window [ "AscDFH" ] . historyitem _type _BlipFill | 6 ; window [ "AscDFH" ] . historyitem _SolidFill _SetColor = window [ "AscDFH" ] . historyitem _type _SolidFill | 1 ; window [ "AscDFH" ] . historyitem _Gs _SetColor = window [ "AscDFH" ] . historyitem _type _Gs | 1 ; window [ "AscDFH" ] . historyitem _Gs _SetPos = window [ "AscDFH" ] . historyitem _type _Gs | 2 ; window [ "AscDFH" ] . historyitem _GradLin _SetAngle = window [ "AscDFH" ] . historyitem _type _GradLin | 1 ; window [ "AscDFH" ] . historyitem _GradLin _SetScale = window [ "AscDFH" ] . historyitem _type _GradLin | 2 ; window [ "AscDFH" ] . historyitem _GradPath _SetPath =
window [ "AscDFH" ] . historyitem _type _GradPath | 1 ; window [ "AscDFH" ] . historyitem _GradPath _SetRect = window [ "AscDFH" ] . historyitem _type _GradPath | 2 ; window [ "AscDFH" ] . historyitem _GradFill _AddColor = window [ "AscDFH" ] . historyitem _type _GradFill | 1 ; window [ "AscDFH" ] . historyitem _GradFill _SetLin = window [ "AscDFH" ] . historyitem _type _GradFill | 2 ; window [ "AscDFH" ] . historyitem _GradFill _SetPath = window [ "AscDFH" ] . historyitem _type _GradFill | 3 ; window [ "AscDFH" ] . historyitem _PathFill _SetFType = window [ "AscDFH" ] . historyitem _type _PathFill | 1 ;
window [ "AscDFH" ] . historyitem _PathFill _SetFgClr = window [ "AscDFH" ] . historyitem _type _PathFill | 2 ; window [ "AscDFH" ] . historyitem _PathFill _SetBgClr = window [ "AscDFH" ] . historyitem _type _PathFill | 3 ; window [ "AscDFH" ] . historyitem _UniFill _SetFill = window [ "AscDFH" ] . historyitem _type _UniFill | 1 ; window [ "AscDFH" ] . historyitem _UniFill _SetTransparent = window [ "AscDFH" ] . historyitem _type _UniFill | 2 ; window [ "AscDFH" ] . historyitem _EndArrow _SetType = window [ "AscDFH" ] . historyitem _type _EndArrow | 1 ; window [ "AscDFH" ] . historyitem _EndArrow _SetLen =
window [ "AscDFH" ] . historyitem _type _EndArrow | 2 ; window [ "AscDFH" ] . historyitem _EndArrow _SetW = window [ "AscDFH" ] . historyitem _type _EndArrow | 3 ; window [ "AscDFH" ] . historyitem _LineJoin _SetType = window [ "AscDFH" ] . historyitem _type _LineJoin | 1 ; window [ "AscDFH" ] . historyitem _LineJoin _SetLimit = window [ "AscDFH" ] . historyitem _type _LineJoin | 2 ; window [ "AscDFH" ] . historyitem _Ln _SetFill = window [ "AscDFH" ] . historyitem _type _Ln | 1 ; window [ "AscDFH" ] . historyitem _Ln _SetPrstDash = window [ "AscDFH" ] . historyitem _type _Ln | 2 ; window [ "AscDFH" ] . historyitem _Ln _SetJoin =
window [ "AscDFH" ] . historyitem _type _Ln | 3 ; window [ "AscDFH" ] . historyitem _Ln _SetHeadEnd = window [ "AscDFH" ] . historyitem _type _Ln | 4 ; window [ "AscDFH" ] . historyitem _Ln _SetTailEnd = window [ "AscDFH" ] . historyitem _type _Ln | 5 ; window [ "AscDFH" ] . historyitem _Ln _SetAlgn = window [ "AscDFH" ] . historyitem _type _Ln | 6 ; window [ "AscDFH" ] . historyitem _Ln _SetCap = window [ "AscDFH" ] . historyitem _type _Ln | 7 ; window [ "AscDFH" ] . historyitem _Ln _SetCmpd = window [ "AscDFH" ] . historyitem _type _Ln | 8 ; window [ "AscDFH" ] . historyitem _Ln _SetW = window [ "AscDFH" ] . historyitem _type _Ln |
9 ; window [ "AscDFH" ] . historyitem _DefaultShapeDefinition _SetSpPr = window [ "AscDFH" ] . historyitem _type _DefaultShapeDefinition | 1 ; window [ "AscDFH" ] . historyitem _DefaultShapeDefinition _SetBodyPr = window [ "AscDFH" ] . historyitem _type _DefaultShapeDefinition | 2 ; window [ "AscDFH" ] . historyitem _DefaultShapeDefinition _SetLstStyle = window [ "AscDFH" ] . historyitem _type _DefaultShapeDefinition | 3 ; window [ "AscDFH" ] . historyitem _DefaultShapeDefinition _SetStyle = window [ "AscDFH" ] . historyitem _type _DefaultShapeDefinition | 4 ; window [ "AscDFH" ] . historyitem _CNvPr _SetId =
window [ "AscDFH" ] . historyitem _type _CNvPr | 1 ; window [ "AscDFH" ] . historyitem _CNvPr _SetName = window [ "AscDFH" ] . historyitem _type _CNvPr | 2 ; window [ "AscDFH" ] . historyitem _CNvPr _SetIsHidden = window [ "AscDFH" ] . historyitem _type _CNvPr | 3 ; window [ "AscDFH" ] . historyitem _CNvPr _SetDescr = window [ "AscDFH" ] . historyitem _type _CNvPr | 4 ; window [ "AscDFH" ] . historyitem _CNvPr _SetTitle = window [ "AscDFH" ] . historyitem _type _CNvPr | 5 ; window [ "AscDFH" ] . historyitem _CNvPr _SetHlinkClick = window [ "AscDFH" ] . historyitem _type _CNvPr | 6 ; window [ "AscDFH" ] . historyitem _CNvPr _SetHlinkHover =
window [ "AscDFH" ] . historyitem _type _CNvPr | 7 ; window [ "AscDFH" ] . historyitem _NvPr _SetIsPhoto = window [ "AscDFH" ] . historyitem _type _NvPr | 1 ; window [ "AscDFH" ] . historyitem _NvPr _SetUserDrawn = window [ "AscDFH" ] . historyitem _type _NvPr | 2 ; window [ "AscDFH" ] . historyitem _NvPr _SetPh = window [ "AscDFH" ] . historyitem _type _NvPr | 3 ; window [ "AscDFH" ] . historyitem _NvPr _SetUniMedia = window [ "AscDFH" ] . historyitem _type _NvPr | 4 ; window [ "AscDFH" ] . historyitem _Ph _SetHasCustomPrompt = window [ "AscDFH" ] . historyitem _type _Ph | 1 ; window [ "AscDFH" ] . historyitem _Ph _SetIdx =
window [ "AscDFH" ] . historyitem _type _Ph | 2 ; window [ "AscDFH" ] . historyitem _Ph _SetOrient = window [ "AscDFH" ] . historyitem _type _Ph | 3 ; window [ "AscDFH" ] . historyitem _Ph _SetSz = window [ "AscDFH" ] . historyitem _type _Ph | 4 ; window [ "AscDFH" ] . historyitem _Ph _SetType = window [ "AscDFH" ] . historyitem _type _Ph | 5 ; window [ "AscDFH" ] . historyitem _UniNvPr _SetCNvPr = window [ "AscDFH" ] . historyitem _type _UniNvPr | 1 ; window [ "AscDFH" ] . historyitem _UniNvPr _SetUniPr = window [ "AscDFH" ] . historyitem _type _UniNvPr | 2 ; window [ "AscDFH" ] . historyitem _UniNvPr _SetNvPr =
window [ "AscDFH" ] . historyitem _type _UniNvPr | 3 ; window [ "AscDFH" ] . historyitem _UniNvPr _SetUniSpPr = window [ "AscDFH" ] . historyitem _type _UniNvPr | 4 ; window [ "AscDFH" ] . historyitem _StyleRef _SetIdx = window [ "AscDFH" ] . historyitem _type _StyleRef | 1 ; window [ "AscDFH" ] . historyitem _StyleRef _SetColor = window [ "AscDFH" ] . historyitem _type _StyleRef | 2 ; window [ "AscDFH" ] . historyitem _FontRef _SetIdx = window [ "AscDFH" ] . historyitem _type _FontRef | 1 ; window [ "AscDFH" ] . historyitem _FontRef _SetColor = window [ "AscDFH" ] . historyitem _type _FontRef | 2 ; window [ "AscDFH" ] . historyitem _Chart _SetAutoTitleDeleted =
window [ "AscDFH" ] . historyitem _type _Chart | 1 ; window [ "AscDFH" ] . historyitem _Chart _SetBackWall = window [ "AscDFH" ] . historyitem _type _Chart | 2 ; window [ "AscDFH" ] . historyitem _Chart _SetDispBlanksAs = window [ "AscDFH" ] . historyitem _type _Chart | 3 ; window [ "AscDFH" ] . historyitem _Chart _SetFloor = window [ "AscDFH" ] . historyitem _type _Chart | 4 ; window [ "AscDFH" ] . historyitem _Chart _SetLegend = window [ "AscDFH" ] . historyitem _type _Chart | 5 ; window [ "AscDFH" ] . historyitem _Chart _AddPivotFmt = window [ "AscDFH" ] . historyitem _type _Chart | 6 ; window [ "AscDFH" ] . historyitem _Chart _SetPlotArea =
window [ "AscDFH" ] . historyitem _type _Chart | 7 ; window [ "AscDFH" ] . historyitem _Chart _SetPlotVisOnly = window [ "AscDFH" ] . historyitem _type _Chart | 8 ; window [ "AscDFH" ] . historyitem _Chart _SetShowDLblsOverMax = window [ "AscDFH" ] . historyitem _type _Chart | 9 ; window [ "AscDFH" ] . historyitem _Chart _SetSideWall = window [ "AscDFH" ] . historyitem _type _Chart | 10 ; window [ "AscDFH" ] . historyitem _Chart _SetTitle = window [ "AscDFH" ] . historyitem _type _Chart | 11 ; window [ "AscDFH" ] . historyitem _Chart _SetView3D = window [ "AscDFH" ] . historyitem _type _Chart | 12 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetChart =
window [ "AscDFH" ] . historyitem _type _ChartSpace | 1 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetClrMapOvr = window [ "AscDFH" ] . historyitem _type _ChartSpace | 2 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetDate1904 = window [ "AscDFH" ] . historyitem _type _ChartSpace | 3 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetExternalData = window [ "AscDFH" ] . historyitem _type _ChartSpace | 4 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetLang = window [ "AscDFH" ] . historyitem _type _ChartSpace | 5 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetPivotSource = window [ "AscDFH" ] . historyitem _type _ChartSpace |
6 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetPrintSettings = window [ "AscDFH" ] . historyitem _type _ChartSpace | 7 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetProtection = window [ "AscDFH" ] . historyitem _type _ChartSpace | 8 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetRoundedCorners = window [ "AscDFH" ] . historyitem _type _ChartSpace | 9 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetSpPr = window [ "AscDFH" ] . historyitem _type _ChartSpace | 10 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetStyle = window [ "AscDFH" ] . historyitem _type _ChartSpace |
11 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetTxPr = window [ "AscDFH" ] . historyitem _type _ChartSpace | 12 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetUserShapes = window [ "AscDFH" ] . historyitem _type _ChartSpace | 13 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetThemeOverride = window [ "AscDFH" ] . historyitem _type _ChartSpace | 14 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetGroup = window [ "AscDFH" ] . historyitem _type _ChartSpace | 15 ; window [ "AscDFH" ] . historyitem _ChartSpace _SetParent = window [ "AscDFH" ] . historyitem _type _ChartSpace | 16 ;
window [ "AscDFH" ] . historyitem _ChartSpace _SetNvGrFrProps = window [ "AscDFH" ] . historyitem _type _ChartSpace | 17 ; window [ "AscDFH" ] . historyitem _ChartSpace _AddUserShape = window [ "AscDFH" ] . historyitem _type _ChartSpace | 18 ; window [ "AscDFH" ] . historyitem _ChartSpace _RemoveUserShape = window [ "AscDFH" ] . historyitem _type _ChartSpace | 19 ; window [ "AscDFH" ] . historyitem _Legend _SetLayout = window [ "AscDFH" ] . historyitem _type _Legend | 1 ; window [ "AscDFH" ] . historyitem _Legend _AddLegendEntry = window [ "AscDFH" ] . historyitem _type _Legend | 2 ; window [ "AscDFH" ] . historyitem _Legend _SetLegendPos =
window [ "AscDFH" ] . historyitem _type _Legend | 3 ; window [ "AscDFH" ] . historyitem _Legend _SetOverlay = window [ "AscDFH" ] . historyitem _type _Legend | 4 ; window [ "AscDFH" ] . historyitem _Legend _SetSpPr = window [ "AscDFH" ] . historyitem _type _Legend | 5 ; window [ "AscDFH" ] . historyitem _Legend _SetTxPr = window [ "AscDFH" ] . historyitem _type _Legend | 6 ; window [ "AscDFH" ] . historyitem _Layout _SetH = window [ "AscDFH" ] . historyitem _type _Layout | 1 ; window [ "AscDFH" ] . historyitem _Layout _SetHMode = window [ "AscDFH" ] . historyitem _type _Layout | 2 ; window [ "AscDFH" ] . historyitem _Layout _SetLayoutTarget =
window [ "AscDFH" ] . historyitem _type _Layout | 3 ; window [ "AscDFH" ] . historyitem _Layout _SetW = window [ "AscDFH" ] . historyitem _type _Layout | 4 ; window [ "AscDFH" ] . historyitem _Layout _SetWMode = window [ "AscDFH" ] . historyitem _type _Layout | 5 ; window [ "AscDFH" ] . historyitem _Layout _SetX = window [ "AscDFH" ] . historyitem _type _Layout | 6 ; window [ "AscDFH" ] . historyitem _Layout _SetXMode = window [ "AscDFH" ] . historyitem _type _Layout | 7 ; window [ "AscDFH" ] . historyitem _Layout _SetY = window [ "AscDFH" ] . historyitem _type _Layout | 8 ; window [ "AscDFH" ] . historyitem _Layout _SetYMode =
window [ "AscDFH" ] . historyitem _type _Layout | 9 ; window [ "AscDFH" ] . historyitem _Layout _SetParent = window [ "AscDFH" ] . historyitem _type _Layout | 10 ; window [ "AscDFH" ] . historyitem _LegendEntry _SetDelete = window [ "AscDFH" ] . historyitem _type _LegendEntry | 1 ; window [ "AscDFH" ] . historyitem _LegendEntry _SetIdx = window [ "AscDFH" ] . historyitem _type _LegendEntry | 2 ; window [ "AscDFH" ] . historyitem _LegendEntry _SetTxPr = window [ "AscDFH" ] . historyitem _type _LegendEntry | 3 ; window [ "AscDFH" ] . historyitem _PivotFmt _SetDLbl = window [ "AscDFH" ] . historyitem _type _PivotFmt |
1 ; window [ "AscDFH" ] . historyitem _PivotFmt _SetIdx = window [ "AscDFH" ] . historyitem _type _PivotFmt | 2 ; window [ "AscDFH" ] . historyitem _PivotFmt _SetMarker = window [ "AscDFH" ] . historyitem _type _PivotFmt | 3 ; window [ "AscDFH" ] . historyitem _PivotFmt _SetSpPr = window [ "AscDFH" ] . historyitem _type _PivotFmt | 4 ; window [ "AscDFH" ] . historyitem _PivotFmt _SetTxPr = window [ "AscDFH" ] . historyitem _type _PivotFmt | 5 ; window [ "AscDFH" ] . historyitem _DLbl _SetDelete = window [ "AscDFH" ] . historyitem _type _DLbl | 1 ; window [ "AscDFH" ] . historyitem _DLbl _SetDLblPos = window [ "AscDFH" ] . historyitem _type _DLbl |
2 ; window [ "AscDFH" ] . historyitem _DLbl _SetIdx = window [ "AscDFH" ] . historyitem _type _DLbl | 3 ; window [ "AscDFH" ] . historyitem _DLbl _SetLayout = window [ "AscDFH" ] . historyitem _type _DLbl | 4 ; window [ "AscDFH" ] . historyitem _DLbl _SetNumFmt = window [ "AscDFH" ] . historyitem _type _DLbl | 5 ; window [ "AscDFH" ] . historyitem _DLbl _SetSeparator = window [ "AscDFH" ] . historyitem _type _DLbl | 6 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowBubbleSize = window [ "AscDFH" ] . historyitem _type _DLbl | 7 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowCatName = window [ "AscDFH" ] . historyitem _type _DLbl |
8 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowLegendKey = window [ "AscDFH" ] . historyitem _type _DLbl | 9 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowPercent = window [ "AscDFH" ] . historyitem _type _DLbl | 10 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowSerName = window [ "AscDFH" ] . historyitem _type _DLbl | 11 ; window [ "AscDFH" ] . historyitem _DLbl _SetShowVal = window [ "AscDFH" ] . historyitem _type _DLbl | 12 ; window [ "AscDFH" ] . historyitem _DLbl _SetSpPr = window [ "AscDFH" ] . historyitem _type _DLbl | 13 ; window [ "AscDFH" ] . historyitem _DLbl _SetTx = window [ "AscDFH" ] . historyitem _type _DLbl |
14 ; window [ "AscDFH" ] . historyitem _DLbl _SetTxPr = window [ "AscDFH" ] . historyitem _type _DLbl | 15 ; window [ "AscDFH" ] . historyitem _DLbl _SetParent = window [ "AscDFH" ] . historyitem _type _DLbl | 16 ; window [ "AscDFH" ] . historyitem _Marker _SetSize = window [ "AscDFH" ] . historyitem _type _Marker | 1 ; window [ "AscDFH" ] . historyitem _Marker _SetSpPr = window [ "AscDFH" ] . historyitem _type _Marker | 2 ; window [ "AscDFH" ] . historyitem _Marker _SetSymbol = window [ "AscDFH" ] . historyitem _type _Marker | 3 ; window [ "AscDFH" ] . historyitem _PlotArea _AddChart = window [ "AscDFH" ] . historyitem _type _PlotArea |
1 ; window [ "AscDFH" ] . historyitem _PlotArea _SetCatAx = window [ "AscDFH" ] . historyitem _type _PlotArea | 2 ; window [ "AscDFH" ] . historyitem _PlotArea _SetDateAx = window [ "AscDFH" ] . historyitem _type _PlotArea | 3 ; window [ "AscDFH" ] . historyitem _PlotArea _SetDTable = window [ "AscDFH" ] . historyitem _type _PlotArea | 4 ; window [ "AscDFH" ] . historyitem _PlotArea _SetLayout = window [ "AscDFH" ] . historyitem _type _PlotArea | 5 ; window [ "AscDFH" ] . historyitem _PlotArea _SetSerAx = window [ "AscDFH" ] . historyitem _type _PlotArea | 6 ; window [ "AscDFH" ] . historyitem _PlotArea _SetSpPr =
window [ "AscDFH" ] . historyitem _type _PlotArea | 7 ; window [ "AscDFH" ] . historyitem _PlotArea _SetValAx = window [ "AscDFH" ] . historyitem _type _PlotArea | 8 ; window [ "AscDFH" ] . historyitem _PlotArea _AddAxis = window [ "AscDFH" ] . historyitem _type _PlotArea | 9 ; window [ "AscDFH" ] . historyitem _PlotArea _RemoveChart = window [ "AscDFH" ] . historyitem _type _PlotArea | 10 ; window [ "AscDFH" ] . historyitem _PlotArea _RemoveAxis = window [ "AscDFH" ] . historyitem _type _PlotArea | 11 ; window [ "AscDFH" ] . historyitem _NumFmt _SetFormatCode = window [ "AscDFH" ] . historyitem _type _NumFmt |
1 ; window [ "AscDFH" ] . historyitem _NumFmt _SetSourceLinked = window [ "AscDFH" ] . historyitem _type _NumFmt | 2 ; window [ "AscDFH" ] . historyitem _Scaling _SetLogBase = window [ "AscDFH" ] . historyitem _type _Scaling | 1 ; window [ "AscDFH" ] . historyitem _Scaling _SetMax = window [ "AscDFH" ] . historyitem _type _Scaling | 2 ; window [ "AscDFH" ] . historyitem _Scaling _SetMin = window [ "AscDFH" ] . historyitem _type _Scaling | 3 ; window [ "AscDFH" ] . historyitem _Scaling _SetOrientation = window [ "AscDFH" ] . historyitem _type _Scaling | 4 ; window [ "AscDFH" ] . historyitem _Scaling _SetParent =
window [ "AscDFH" ] . historyitem _type _Scaling | 5 ; window [ "AscDFH" ] . historyitem _DTable _SetShowHorzBorder = window [ "AscDFH" ] . historyitem _type _DTable | 1 ; window [ "AscDFH" ] . historyitem _DTable _SetShowKeys = window [ "AscDFH" ] . historyitem _type _DTable | 2 ; window [ "AscDFH" ] . historyitem _DTable _SetShowOutline = window [ "AscDFH" ] . historyitem _type _DTable | 3 ; window [ "AscDFH" ] . historyitem _DTable _SetShowVertBorder = window [ "AscDFH" ] . historyitem _type _DTable | 4 ; window [ "AscDFH" ] . historyitem _DTable _SetSpPr = window [ "AscDFH" ] . historyitem _type _DTable |
5 ; window [ "AscDFH" ] . historyitem _DTable _SetTxPr = window [ "AscDFH" ] . historyitem _type _DTable | 6 ; window [ "AscDFH" ] . historyitem _LineChart _AddAxId = window [ "AscDFH" ] . historyitem _type _LineChart | 1 ; window [ "AscDFH" ] . historyitem _LineChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _LineChart | 2 ; window [ "AscDFH" ] . historyitem _LineChart _SetDropLines = window [ "AscDFH" ] . historyitem _type _LineChart | 3 ; window [ "AscDFH" ] . historyitem _LineChart _SetGrouping = window [ "AscDFH" ] . historyitem _type _LineChart | 4 ; window [ "AscDFH" ] . historyitem _LineChart _SetHiLowLines =
window [ "AscDFH" ] . historyitem _type _LineChart | 5 ; window [ "AscDFH" ] . historyitem _LineChart _SetMarker = window [ "AscDFH" ] . historyitem _type _LineChart | 6 ; window [ "AscDFH" ] . historyitem _LineChart _AddSer = window [ "AscDFH" ] . historyitem _type _LineChart | 7 ; window [ "AscDFH" ] . historyitem _LineChart _SetSmooth = window [ "AscDFH" ] . historyitem _type _LineChart | 8 ; window [ "AscDFH" ] . historyitem _LineChart _SetUpDownBars = window [ "AscDFH" ] . historyitem _type _LineChart | 9 ; window [ "AscDFH" ] . historyitem _LineChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _LineChart |
10 ; window [ "AscDFH" ] . historyitem _DLbls _SetDelete = window [ "AscDFH" ] . historyitem _type _DLbls | 1 ; window [ "AscDFH" ] . historyitem _DLbls _SetDLbl = window [ "AscDFH" ] . historyitem _type _DLbls | 2 ; window [ "AscDFH" ] . historyitem _DLbls _SetDLblPos = window [ "AscDFH" ] . historyitem _type _DLbls | 3 ; window [ "AscDFH" ] . historyitem _DLbls _SetLeaderLines = window [ "AscDFH" ] . historyitem _type _DLbls | 4 ; window [ "AscDFH" ] . historyitem _DLbls _SetNumFmt = window [ "AscDFH" ] . historyitem _type _DLbls | 5 ; window [ "AscDFH" ] . historyitem _DLbls _SetSeparator = window [ "AscDFH" ] . historyitem _type _DLbls |
6 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowBubbleSize = window [ "AscDFH" ] . historyitem _type _DLbls | 7 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowCatName = window [ "AscDFH" ] . historyitem _type _DLbls | 8 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowLeaderLines = window [ "AscDFH" ] . historyitem _type _DLbls | 9 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowLegendKey = window [ "AscDFH" ] . historyitem _type _DLbls | 10 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowPercent = window [ "AscDFH" ] . historyitem _type _DLbls | 11 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowSerName =
window [ "AscDFH" ] . historyitem _type _DLbls | 12 ; window [ "AscDFH" ] . historyitem _DLbls _SetShowVal = window [ "AscDFH" ] . historyitem _type _DLbls | 13 ; window [ "AscDFH" ] . historyitem _DLbls _SetSpPr = window [ "AscDFH" ] . historyitem _type _DLbls | 14 ; window [ "AscDFH" ] . historyitem _DLbls _SetTxPr = window [ "AscDFH" ] . historyitem _type _DLbls | 15 ; window [ "AscDFH" ] . historyitem _UpDownBars _SetDownBars = window [ "AscDFH" ] . historyitem _type _UpDownBars | 1 ; window [ "AscDFH" ] . historyitem _UpDownBars _SetGapWidth = window [ "AscDFH" ] . historyitem _type _UpDownBars | 2 ;
window [ "AscDFH" ] . historyitem _UpDownBars _SetUpBars = window [ "AscDFH" ] . historyitem _type _UpDownBars | 3 ; window [ "AscDFH" ] . historyitem _BarChart _AddAxId = window [ "AscDFH" ] . historyitem _type _BarChart | 1 ; window [ "AscDFH" ] . historyitem _BarChart _SetBarDir = window [ "AscDFH" ] . historyitem _type _BarChart | 2 ; window [ "AscDFH" ] . historyitem _BarChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _BarChart | 3 ; window [ "AscDFH" ] . historyitem _BarChart _SetGapWidth = window [ "AscDFH" ] . historyitem _type _BarChart | 4 ; window [ "AscDFH" ] . historyitem _BarChart _SetGrouping =
window [ "AscDFH" ] . historyitem _type _BarChart | 5 ; window [ "AscDFH" ] . historyitem _BarChart _SetOverlap = window [ "AscDFH" ] . historyitem _type _BarChart | 6 ; window [ "AscDFH" ] . historyitem _BarChart _AddSer = window [ "AscDFH" ] . historyitem _type _BarChart | 7 ; window [ "AscDFH" ] . historyitem _BarChart _SetSerLines = window [ "AscDFH" ] . historyitem _type _BarChart | 8 ; window [ "AscDFH" ] . historyitem _BarChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _BarChart | 9 ; window [ "AscDFH" ] . historyitem _BarChart _Set3D = window [ "AscDFH" ] . historyitem _type _BarChart |
10 ; window [ "AscDFH" ] . historyitem _BarChart _SetGapDepth = window [ "AscDFH" ] . historyitem _type _BarChart | 11 ; window [ "AscDFH" ] . historyitem _BarChart _SetShape = window [ "AscDFH" ] . historyitem _type _BarChart | 12 ; window [ "AscDFH" ] . historyitem _BubbleChart _AddAxId = window [ "AscDFH" ] . historyitem _type _BubbleChart | 1 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetBubble3D = window [ "AscDFH" ] . historyitem _type _BubbleChart | 2 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetBubbleScale = window [ "AscDFH" ] . historyitem _type _BubbleChart | 3 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetDLbls =
window [ "AscDFH" ] . historyitem _type _BubbleChart | 4 ; window [ "AscDFH" ] . historyitem _BubbleChart _AddSerie = window [ "AscDFH" ] . historyitem _type _BubbleChart | 5 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetShowNegBubbles = window [ "AscDFH" ] . historyitem _type _BubbleChart | 6 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetSizeRepresents = window [ "AscDFH" ] . historyitem _type _BubbleChart | 7 ; window [ "AscDFH" ] . historyitem _BubbleChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _BubbleChart | 8 ; window [ "AscDFH" ] . historyitem _DoughnutChart _SetDLbls =
window [ "AscDFH" ] . historyitem _type _DoughnutChart | 1 ; window [ "AscDFH" ] . historyitem _DoughnutChart _SetFirstSliceAng = window [ "AscDFH" ] . historyitem _type _DoughnutChart | 2 ; window [ "AscDFH" ] . historyitem _DoughnutChart _SetHoleSize = window [ "AscDFH" ] . historyitem _type _DoughnutChart | 3 ; window [ "AscDFH" ] . historyitem _DoughnutChart _AddSer = window [ "AscDFH" ] . historyitem _type _DoughnutChart | 4 ; window [ "AscDFH" ] . historyitem _DoughnutChart _SetVaryColor = window [ "AscDFH" ] . historyitem _type _DoughnutChart | 5 ; window [ "AscDFH" ] . historyitem _OfPieChart _AddCustSplit =
window [ "AscDFH" ] . historyitem _type _OfPieChart | 1 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _OfPieChart | 2 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetGapWidth = window [ "AscDFH" ] . historyitem _type _OfPieChart | 3 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetOfPieType = window [ "AscDFH" ] . historyitem _type _OfPieChart | 4 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSecondPieSize = window [ "AscDFH" ] . historyitem _type _OfPieChart | 5 ; window [ "AscDFH" ] . historyitem _OfPieChart _AddSer = window [ "AscDFH" ] . historyitem _type _OfPieChart |
6 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSerLines = window [ "AscDFH" ] . historyitem _type _OfPieChart | 7 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSplitPos = window [ "AscDFH" ] . historyitem _type _OfPieChart | 8 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetSplitType = window [ "AscDFH" ] . historyitem _type _OfPieChart | 9 ; window [ "AscDFH" ] . historyitem _OfPieChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _OfPieChart | 10 ; window [ "AscDFH" ] . historyitem _PieChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _PieChart | 1 ; window [ "AscDFH" ] . historyitem _PieChart _SetFirstSliceAng =
window [ "AscDFH" ] . historyitem _type _PieChart | 2 ; window [ "AscDFH" ] . historyitem _PieChart _AddSer = window [ "AscDFH" ] . historyitem _type _PieChart | 3 ; window [ "AscDFH" ] . historyitem _PieChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _PieChart | 4 ; window [ "AscDFH" ] . historyitem _PieChart _3D = window [ "AscDFH" ] . historyitem _type _PieChart | 5 ; window [ "AscDFH" ] . historyitem _RadarChart _AddAxId = window [ "AscDFH" ] . historyitem _type _RadarChart | 1 ; window [ "AscDFH" ] . historyitem _RadarChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _RadarChart |
2 ; window [ "AscDFH" ] . historyitem _RadarChart _SetRadarStyle = window [ "AscDFH" ] . historyitem _type _RadarChart | 3 ; window [ "AscDFH" ] . historyitem _RadarChart _AddSer = window [ "AscDFH" ] . historyitem _type _RadarChart | 4 ; window [ "AscDFH" ] . historyitem _RadarChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _RadarChart | 5 ; window [ "AscDFH" ] . historyitem _ScatterChart _AddAxId = window [ "AscDFH" ] . historyitem _type _ScatterChart | 1 ; window [ "AscDFH" ] . historyitem _ScatterChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _ScatterChart | 2 ; window [ "AscDFH" ] . historyitem _ScatterChart _SetScatterStyle =
window [ "AscDFH" ] . historyitem _type _ScatterChart | 3 ; window [ "AscDFH" ] . historyitem _ScatterChart _AddSer = window [ "AscDFH" ] . historyitem _type _ScatterChart | 4 ; window [ "AscDFH" ] . historyitem _ScatterChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _ScatterChart | 5 ; window [ "AscDFH" ] . historyitem _StockChart _AddAxId = window [ "AscDFH" ] . historyitem _type _StockChart | 1 ; window [ "AscDFH" ] . historyitem _StockChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _StockChart | 2 ; window [ "AscDFH" ] . historyitem _StockChart _SetDropLines = window [ "AscDFH" ] . historyitem _type _StockChart |
3 ; window [ "AscDFH" ] . historyitem _StockChart _SetHiLowLines = window [ "AscDFH" ] . historyitem _type _StockChart | 4 ; window [ "AscDFH" ] . historyitem _StockChart _AddSer = window [ "AscDFH" ] . historyitem _type _StockChart | 5 ; window [ "AscDFH" ] . historyitem _StockChart _SetUpDownBars = window [ "AscDFH" ] . historyitem _type _StockChart | 6 ; window [ "AscDFH" ] . historyitem _SurfaceChart _AddAxId = window [ "AscDFH" ] . historyitem _type _SurfaceChart | 1 ; window [ "AscDFH" ] . historyitem _SurfaceChart _AddBandFmt = window [ "AscDFH" ] . historyitem _type _SurfaceChart | 2 ; window [ "AscDFH" ] . historyitem _SurfaceChart _AddSer =
window [ "AscDFH" ] . historyitem _type _SurfaceChart | 3 ; window [ "AscDFH" ] . historyitem _SurfaceChart _SetWireframe = window [ "AscDFH" ] . historyitem _type _SurfaceChart | 4 ; window [ "AscDFH" ] . historyitem _BandFmt _SetIdx = window [ "AscDFH" ] . historyitem _type _BandFmt | 1 ; window [ "AscDFH" ] . historyitem _BandFmt _SetSpPr = window [ "AscDFH" ] . historyitem _type _BandFmt | 2 ; window [ "AscDFH" ] . historyitem _AreaChart _AddAxId = window [ "AscDFH" ] . historyitem _type _AreaChart | 1 ; window [ "AscDFH" ] . historyitem _AreaChart _SetDLbls = window [ "AscDFH" ] . historyitem _type _AreaChart |
2 ; window [ "AscDFH" ] . historyitem _AreaChart _SetDropLines = window [ "AscDFH" ] . historyitem _type _AreaChart | 3 ; window [ "AscDFH" ] . historyitem _AreaChart _SetGrouping = window [ "AscDFH" ] . historyitem _type _AreaChart | 4 ; window [ "AscDFH" ] . historyitem _AreaChart _AddSer = window [ "AscDFH" ] . historyitem _type _AreaChart | 5 ; window [ "AscDFH" ] . historyitem _AreaChart _SetVaryColors = window [ "AscDFH" ] . historyitem _type _AreaChart | 6 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetDLbls = window [ "AscDFH" ] . historyitem _type _ScatterSer | 1 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetDPt =
window [ "AscDFH" ] . historyitem _type _ScatterSer | 2 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetErrBars = window [ "AscDFH" ] . historyitem _type _ScatterSer | 3 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetIdx = window [ "AscDFH" ] . historyitem _type _ScatterSer | 4 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetMarker = window [ "AscDFH" ] . historyitem _type _ScatterSer | 5 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetOrder = window [ "AscDFH" ] . historyitem _type _ScatterSer | 6 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetSmooth = window [ "AscDFH" ] . historyitem _type _ScatterSer |
7 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetSpPr = window [ "AscDFH" ] . historyitem _type _ScatterSer | 8 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetTrendline = window [ "AscDFH" ] . historyitem _type _ScatterSer | 9 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetTx = window [ "AscDFH" ] . historyitem _type _ScatterSer | 10 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetXVal = window [ "AscDFH" ] . historyitem _type _ScatterSer | 11 ; window [ "AscDFH" ] . historyitem _ScatterSer _SetYVal = window [ "AscDFH" ] . historyitem _type _ScatterSer | 12 ; window [ "AscDFH" ] . historyitem _DPt _SetBubble3D =
window [ "AscDFH" ] . historyitem _type _DPt | 1 ; window [ "AscDFH" ] . historyitem _DPt _SetExplosion = window [ "AscDFH" ] . historyitem _type _DPt | 2 ; window [ "AscDFH" ] . historyitem _DPt _SetIdx = window [ "AscDFH" ] . historyitem _type _DPt | 3 ; window [ "AscDFH" ] . historyitem _DPt _SetInvertIfNegative = window [ "AscDFH" ] . historyitem _type _DPt | 4 ; window [ "AscDFH" ] . historyitem _DPt _SetMarker = window [ "AscDFH" ] . historyitem _type _DPt | 5 ; window [ "AscDFH" ] . historyitem _DPt _SetPictureOptions = window [ "AscDFH" ] . historyitem _type _DPt | 6 ; window [ "AscDFH" ] . historyitem _DPt _SetSpPr =
window [ "AscDFH" ] . historyitem _type _DPt | 7 ; window [ "AscDFH" ] . historyitem _ErrBars _SetErrBarType = window [ "AscDFH" ] . historyitem _type _ErrBars | 1 ; window [ "AscDFH" ] . historyitem _ErrBars _SetErrDir = window [ "AscDFH" ] . historyitem _type _ErrBars | 2 ; window [ "AscDFH" ] . historyitem _ErrBars _SetErrValType = window [ "AscDFH" ] . historyitem _type _ErrBars | 3 ; window [ "AscDFH" ] . historyitem _ErrBars _SetMinus = window [ "AscDFH" ] . historyitem _type _ErrBars | 4 ; window [ "AscDFH" ] . historyitem _ErrBars _SetNoEndCap = window [ "AscDFH" ] . historyitem _type _ErrBars |
5 ; window [ "AscDFH" ] . historyitem _ErrBars _SetPlus = window [ "AscDFH" ] . historyitem _type _ErrBars | 6 ; window [ "AscDFH" ] . historyitem _ErrBars _SetSpPr = window [ "AscDFH" ] . historyitem _type _ErrBars | 7 ; window [ "AscDFH" ] . historyitem _ErrBars _SetVal = window [ "AscDFH" ] . historyitem _type _ErrBars | 8 ; window [ "AscDFH" ] . historyitem _MinusPlus _SetnNumLit = window [ "AscDFH" ] . historyitem _type _MinusPlus | 1 ; window [ "AscDFH" ] . historyitem _MinusPlus _SetnNumRef = window [ "AscDFH" ] . historyitem _type _MinusPlus | 2 ; window [ "AscDFH" ] . historyitem _NumLit _SetFormatCode =
window [ "AscDFH" ] . historyitem _type _NumLit | 1 ; window [ "AscDFH" ] . historyitem _NumLit _AddPt = window [ "AscDFH" ] . historyitem _type _NumLit | 2 ; window [ "AscDFH" ] . historyitem _NumLit _SetPtCount = window [ "AscDFH" ] . historyitem _type _NumLit | 3 ; window [ "AscDFH" ] . historyitem _NumericPoint _SetFormatCode = window [ "AscDFH" ] . historyitem _type _NumericPoint | 1 ; window [ "AscDFH" ] . historyitem _NumericPoint _SetIdx = window [ "AscDFH" ] . historyitem _type _NumericPoint | 2 ; window [ "AscDFH" ] . historyitem _NumericPoint _SetVal = window [ "AscDFH" ] . historyitem _type _NumericPoint |
3 ; window [ "AscDFH" ] . historyitem _NumRef _SetF = window [ "AscDFH" ] . historyitem _type _NumRef | 1 ; window [ "AscDFH" ] . historyitem _NumRef _SetNumCache = window [ "AscDFH" ] . historyitem _type _NumRef | 2 ; window [ "AscDFH" ] . historyitem _Trendline _SetBackward = window [ "AscDFH" ] . historyitem _type _TrendLine | 1 ; window [ "AscDFH" ] . historyitem _Trendline _SetDispEq = window [ "AscDFH" ] . historyitem _type _TrendLine | 2 ; window [ "AscDFH" ] . historyitem _Trendline _SetDispRSqr = window [ "AscDFH" ] . historyitem _type _TrendLine | 3 ; window [ "AscDFH" ] . historyitem _Trendline _SetForward =
window [ "AscDFH" ] . historyitem _type _TrendLine | 4 ; window [ "AscDFH" ] . historyitem _Trendline _SetIntercept = window [ "AscDFH" ] . historyitem _type _TrendLine | 5 ; window [ "AscDFH" ] . historyitem _Trendline _SetName = window [ "AscDFH" ] . historyitem _type _TrendLine | 6 ; window [ "AscDFH" ] . historyitem _Trendline _SetOrder = window [ "AscDFH" ] . historyitem _type _TrendLine | 7 ; window [ "AscDFH" ] . historyitem _Trendline _SetPeriod = window [ "AscDFH" ] . historyitem _type _TrendLine | 8 ; window [ "AscDFH" ] . historyitem _Trendline _SetSpPr = window [ "AscDFH" ] . historyitem _type _TrendLine |
9 ; window [ "AscDFH" ] . historyitem _Trendline _SetTrendlineLbl = window [ "AscDFH" ] . historyitem _type _TrendLine | 10 ; window [ "AscDFH" ] . historyitem _Trendline _SetTrendlineType = window [ "AscDFH" ] . historyitem _type _TrendLine | 11 ; window [ "AscDFH" ] . historyitem _Tx _SetStrRef = window [ "AscDFH" ] . historyitem _type _Tx | 1 ; window [ "AscDFH" ] . historyitem _Tx _SetVal = window [ "AscDFH" ] . historyitem _type _Tx | 2 ; window [ "AscDFH" ] . historyitem _StrRef _SetF = window [ "AscDFH" ] . historyitem _type _StrRef | 1 ; window [ "AscDFH" ] . historyitem _StrRef _SetStrCache = window [ "AscDFH" ] . historyitem _type _StrRef |
2 ; window [ "AscDFH" ] . historyitem _StrCache _AddPt = window [ "AscDFH" ] . historyitem _type _StrCache | 1 ; window [ "AscDFH" ] . historyitem _StrCache _SetPtCount = window [ "AscDFH" ] . historyitem _type _StrCache | 2 ; window [ "AscDFH" ] . historyitem _StrPoint _SetIdx = window [ "AscDFH" ] . historyitem _type _StrPoint | 1 ; window [ "AscDFH" ] . historyitem _StrPoint _SetVal = window [ "AscDFH" ] . historyitem _type _StrPoint | 2 ; window [ "AscDFH" ] . historyitem _XVal _SetMultiLvlStrRef = window [ "AscDFH" ] . historyitem _type _XVal | 1 ; window [ "AscDFH" ] . historyitem _XVal _SetNumLit =
window [ "AscDFH" ] . historyitem _type _XVal | 2 ; window [ "AscDFH" ] . historyitem _XVal _SetNumRef = window [ "AscDFH" ] . historyitem _type _XVal | 3 ; window [ "AscDFH" ] . historyitem _XVal _SetStrLit = window [ "AscDFH" ] . historyitem _type _XVal | 4 ; window [ "AscDFH" ] . historyitem _XVal _SetStrRef = window [ "AscDFH" ] . historyitem _type _XVal | 5 ; window [ "AscDFH" ] . historyitem _MultiLvlStrRef _SetF = window [ "AscDFH" ] . historyitem _type _MultiLvlStrRef | 1 ; window [ "AscDFH" ] . historyitem _MultiLvlStrRef _SetMultiLvlStrCache = window [ "AscDFH" ] . historyitem _type _MultiLvlStrRef |
2 ; window [ "AscDFH" ] . historyitem _MultiLvlStrCache _SetLvl = window [ "AscDFH" ] . historyitem _type _MultiLvlStrCache | 1 ; window [ "AscDFH" ] . historyitem _MultiLvlStrCache _SetPtCount = window [ "AscDFH" ] . historyitem _type _MultiLvlStrCache | 2 ; window [ "AscDFH" ] . historyitem _StringLiteral _SetPt = window [ "AscDFH" ] . historyitem _type _StringLiteral | 1 ; window [ "AscDFH" ] . historyitem _StringLiteral _SetPtCount = window [ "AscDFH" ] . historyitem _type _StringLiteral | 2 ; window [ "AscDFH" ] . historyitem _YVal _SetNumLit = window [ "AscDFH" ] . historyitem _type _YVal |
1 ; window [ "AscDFH" ] . historyitem _YVal _SetNumRef = window [ "AscDFH" ] . historyitem _type _YVal | 2 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetCat = window [ "AscDFH" ] . historyitem _type _AreaSeries | 1 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetDLbls = window [ "AscDFH" ] . historyitem _type _AreaSeries | 2 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _AreaSeries | 3 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetErrBars = window [ "AscDFH" ] . historyitem _type _AreaSeries | 4 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetIdx =
window [ "AscDFH" ] . historyitem _type _AreaSeries | 5 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _AreaSeries | 6 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetPictureOptions = window [ "AscDFH" ] . historyitem _type _AreaSeries | 7 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _AreaSeries | 8 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetTrendline = window [ "AscDFH" ] . historyitem _type _AreaSeries | 9 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetTx = window [ "AscDFH" ] . historyitem _type _AreaSeries |
10 ; window [ "AscDFH" ] . historyitem _AreaSeries _SetVal = window [ "AscDFH" ] . historyitem _type _AreaSeries | 11 ; window [ "AscDFH" ] . historyitem _Cat _SetMultiLvlStrRef = window [ "AscDFH" ] . historyitem _type _Cat | 1 ; window [ "AscDFH" ] . historyitem _Cat _SetNumLit = window [ "AscDFH" ] . historyitem _type _Cat | 2 ; window [ "AscDFH" ] . historyitem _Cat _SetNumRef = window [ "AscDFH" ] . historyitem _type _Cat | 3 ; window [ "AscDFH" ] . historyitem _Cat _SetStrLit = window [ "AscDFH" ] . historyitem _type _Cat | 4 ; window [ "AscDFH" ] . historyitem _Cat _SetStrRef = window [ "AscDFH" ] . historyitem _type _Cat |
5 ; window [ "AscDFH" ] . historyitem _PictureOptions _SetApplyToEnd = window [ "AscDFH" ] . historyitem _type _PictureOptions | 1 ; window [ "AscDFH" ] . historyitem _PictureOptions _SetApplyToFront = window [ "AscDFH" ] . historyitem _type _PictureOptions | 2 ; window [ "AscDFH" ] . historyitem _PictureOptions _SetApplyToSides = window [ "AscDFH" ] . historyitem _type _PictureOptions | 3 ; window [ "AscDFH" ] . historyitem _PictureOptions _SetPictureFormat = window [ "AscDFH" ] . historyitem _type _PictureOptions | 4 ; window [ "AscDFH" ] . historyitem _PictureOptions _SetPictureStackUnit =
window [ "AscDFH" ] . historyitem _type _PictureOptions | 5 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetCat = window [ "AscDFH" ] . historyitem _type _RadarSeries | 1 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetDLbls = window [ "AscDFH" ] . historyitem _type _RadarSeries | 2 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _RadarSeries | 3 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _RadarSeries | 4 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetMarker = window [ "AscDFH" ] . historyitem _type _RadarSeries |
5 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _RadarSeries | 6 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _RadarSeries | 7 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetTx = window [ "AscDFH" ] . historyitem _type _RadarSeries | 8 ; window [ "AscDFH" ] . historyitem _RadarSeries _SetVal = window [ "AscDFH" ] . historyitem _type _RadarSeries | 9 ; window [ "AscDFH" ] . historyitem _BarSeries _SetCat = window [ "AscDFH" ] . historyitem _type _BarSeries | 1 ; window [ "AscDFH" ] . historyitem _BarSeries _SetDLbls =
window [ "AscDFH" ] . historyitem _type _BarSeries | 2 ; window [ "AscDFH" ] . historyitem _BarSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _BarSeries | 3 ; window [ "AscDFH" ] . historyitem _BarSeries _SetErrBars = window [ "AscDFH" ] . historyitem _type _BarSeries | 4 ; window [ "AscDFH" ] . historyitem _BarSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _BarSeries | 5 ; window [ "AscDFH" ] . historyitem _BarSeries _SetInvertIfNegative = window [ "AscDFH" ] . historyitem _type _BarSeries | 6 ; window [ "AscDFH" ] . historyitem _BarSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _BarSeries |
7 ; window [ "AscDFH" ] . historyitem _BarSeries _SetPictureOptions = window [ "AscDFH" ] . historyitem _type _BarSeries | 8 ; window [ "AscDFH" ] . historyitem _BarSeries _SetShape = window [ "AscDFH" ] . historyitem _type _BarSeries | 9 ; window [ "AscDFH" ] . historyitem _BarSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _BarSeries | 10 ; window [ "AscDFH" ] . historyitem _BarSeries _SetTrendline = window [ "AscDFH" ] . historyitem _type _BarSeries | 11 ; window [ "AscDFH" ] . historyitem _BarSeries _SetTx = window [ "AscDFH" ] . historyitem _type _BarSeries | 12 ; window [ "AscDFH" ] . historyitem _BarSeries _SetVal =
window [ "AscDFH" ] . historyitem _type _BarSeries | 13 ; window [ "AscDFH" ] . historyitem _LineSeries _SetCat = window [ "AscDFH" ] . historyitem _type _LineSeries | 1 ; window [ "AscDFH" ] . historyitem _LineSeries _SetDLbls = window [ "AscDFH" ] . historyitem _type _LineSeries | 2 ; window [ "AscDFH" ] . historyitem _LineSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _LineSeries | 3 ; window [ "AscDFH" ] . historyitem _LineSeries _SetErrBars = window [ "AscDFH" ] . historyitem _type _LineSeries | 4 ; window [ "AscDFH" ] . historyitem _LineSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _LineSeries |
5 ; window [ "AscDFH" ] . historyitem _LineSeries _SetMarker = window [ "AscDFH" ] . historyitem _type _LineSeries | 6 ; window [ "AscDFH" ] . historyitem _LineSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _LineSeries | 7 ; window [ "AscDFH" ] . historyitem _LineSeries _SetSmooth = window [ "AscDFH" ] . historyitem _type _LineSeries | 8 ; window [ "AscDFH" ] . historyitem _LineSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _LineSeries | 9 ; window [ "AscDFH" ] . historyitem _LineSeries _SetTrendline = window [ "AscDFH" ] . historyitem _type _LineSeries | 10 ; window [ "AscDFH" ] . historyitem _LineSeries _SetTx =
window [ "AscDFH" ] . historyitem _type _LineSeries | 11 ; window [ "AscDFH" ] . historyitem _LineSeries _SetVal = window [ "AscDFH" ] . historyitem _type _LineSeries | 12 ; window [ "AscDFH" ] . historyitem _PieSeries _SetCat = window [ "AscDFH" ] . historyitem _type _PieSeries | 1 ; window [ "AscDFH" ] . historyitem _PieSeries _SetDLbls = window [ "AscDFH" ] . historyitem _type _PieSeries | 2 ; window [ "AscDFH" ] . historyitem _PieSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _PieSeries | 3 ; window [ "AscDFH" ] . historyitem _PieSeries _SetExplosion = window [ "AscDFH" ] . historyitem _type _PieSeries |
4 ; window [ "AscDFH" ] . historyitem _PieSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _PieSeries | 5 ; window [ "AscDFH" ] . historyitem _PieSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _PieSeries | 6 ; window [ "AscDFH" ] . historyitem _PieSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _PieSeries | 7 ; window [ "AscDFH" ] . historyitem _PieSeries _SetTx = window [ "AscDFH" ] . historyitem _type _PieSeries | 8 ; window [ "AscDFH" ] . historyitem _PieSeries _SetVal = window [ "AscDFH" ] . historyitem _type _PieSeries | 9 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetCat =
window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 1 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 2 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 3 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 4 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetTx = window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 5 ; window [ "AscDFH" ] . historyitem _SurfaceSeries _SetVal =
window [ "AscDFH" ] . historyitem _type _SurfaceSeries | 6 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetBubble3D = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 1 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetBubbleSize = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 2 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetDLbls = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 3 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetDPt = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 4 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetErrBars =
window [ "AscDFH" ] . historyitem _type _BubbleSeries | 5 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetIdx = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 6 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetInvertIfNegative = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 7 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetOrder = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 8 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetSpPr = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 9 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetTrendline =
window [ "AscDFH" ] . historyitem _type _BubbleSeries | 10 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetTx = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 11 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetXVal = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 12 ; window [ "AscDFH" ] . historyitem _BubbleSeries _SetYVal = window [ "AscDFH" ] . historyitem _type _BubbleSeries | 13 ; window [ "AscDFH" ] . historyitem _ExternalData _SetAutoUpdate = window [ "AscDFH" ] . historyitem _type _ExternalData | 1 ; window [ "AscDFH" ] . historyitem _ExternalData _SetId =
window [ "AscDFH" ] . historyitem _type _ExternalData | 2 ; window [ "AscDFH" ] . historyitem _PivotSource _SetFmtId = window [ "AscDFH" ] . historyitem _type _PivotSource | 1 ; window [ "AscDFH" ] . historyitem _PivotSource _SetName = window [ "AscDFH" ] . historyitem _type _PivotSource | 2 ; window [ "AscDFH" ] . historyitem _Protection _SetChartObject = window [ "AscDFH" ] . historyitem _type _Protection | 1 ; window [ "AscDFH" ] . historyitem _Protection _SetData = window [ "AscDFH" ] . historyitem _type _Protection | 2 ; window [ "AscDFH" ] . historyitem _Protection _SetFormatting = window [ "AscDFH" ] . historyitem _type _Protection |
3 ; window [ "AscDFH" ] . historyitem _Protection _SetSelection = window [ "AscDFH" ] . historyitem _type _Protection | 4 ; window [ "AscDFH" ] . historyitem _Protection _SetUserInterface = window [ "AscDFH" ] . historyitem _type _Protection | 5 ; window [ "AscDFH" ] . historyitem _ChartWall _SetPictureOptions = window [ "AscDFH" ] . historyitem _type _ChartWall | 1 ; window [ "AscDFH" ] . historyitem _ChartWall _SetSpPr = window [ "AscDFH" ] . historyitem _type _ChartWall | 2 ; window [ "AscDFH" ] . historyitem _ChartWall _SetThickness = window [ "AscDFH" ] . historyitem _type _ChartWall | 3 ; window [ "AscDFH" ] . historyitem _View3d _SetDepthPercent =
window [ "AscDFH" ] . historyitem _type _View3d | 1 ; window [ "AscDFH" ] . historyitem _View3d _SetHPercent = window [ "AscDFH" ] . historyitem _type _View3d | 2 ; window [ "AscDFH" ] . historyitem _View3d _SetPerspective = window [ "AscDFH" ] . historyitem _type _View3d | 3 ; window [ "AscDFH" ] . historyitem _View3d _SetRAngAx = window [ "AscDFH" ] . historyitem _type _View3d | 4 ; window [ "AscDFH" ] . historyitem _View3d _SetRotX = window [ "AscDFH" ] . historyitem _type _View3d | 5 ; window [ "AscDFH" ] . historyitem _View3d _SetRotY = window [ "AscDFH" ] . historyitem _type _View3d | 6 ; window [ "AscDFH" ] . historyitem _ChartText _SetRich =
window [ "AscDFH" ] . historyitem _type _ChartText | 1 ; window [ "AscDFH" ] . historyitem _ChartText _SetStrRef = window [ "AscDFH" ] . historyitem _type _ChartText | 2 ; window [ "AscDFH" ] . historyitem _ShapeStyle _SetLnRef = window [ "AscDFH" ] . historyitem _type _ShapeStyle | 1 ; window [ "AscDFH" ] . historyitem _ShapeStyle _SetFillRef = window [ "AscDFH" ] . historyitem _type _ShapeStyle | 2 ; window [ "AscDFH" ] . historyitem _ShapeStyle _SetFontRef = window [ "AscDFH" ] . historyitem _type _ShapeStyle | 3 ; window [ "AscDFH" ] . historyitem _ShapeStyle _SetEffectRef = window [ "AscDFH" ] . historyitem _type _ShapeStyle |
4 ; window [ "AscDFH" ] . historyitem _Xfrm _SetOffX = window [ "AscDFH" ] . historyitem _type _Xfrm | 1 ; window [ "AscDFH" ] . historyitem _Xfrm _SetOffY = window [ "AscDFH" ] . historyitem _type _Xfrm | 2 ; window [ "AscDFH" ] . historyitem _Xfrm _SetExtX = window [ "AscDFH" ] . historyitem _type _Xfrm | 3 ; window [ "AscDFH" ] . historyitem _Xfrm _SetExtY = window [ "AscDFH" ] . historyitem _type _Xfrm | 4 ; window [ "AscDFH" ] . historyitem _Xfrm _SetChOffX = window [ "AscDFH" ] . historyitem _type _Xfrm | 5 ; window [ "AscDFH" ] . historyitem _Xfrm _SetChOffY = window [ "AscDFH" ] . historyitem _type _Xfrm |
6 ; window [ "AscDFH" ] . historyitem _Xfrm _SetChExtX = window [ "AscDFH" ] . historyitem _type _Xfrm | 7 ; window [ "AscDFH" ] . historyitem _Xfrm _SetChExtY = window [ "AscDFH" ] . historyitem _type _Xfrm | 8 ; window [ "AscDFH" ] . historyitem _Xfrm _SetFlipH = window [ "AscDFH" ] . historyitem _type _Xfrm | 9 ; window [ "AscDFH" ] . historyitem _Xfrm _SetFlipV = window [ "AscDFH" ] . historyitem _type _Xfrm | 10 ; window [ "AscDFH" ] . historyitem _Xfrm _SetRot = window [ "AscDFH" ] . historyitem _type _Xfrm | 11 ; window [ "AscDFH" ] . historyitem _Xfrm _SetParent = window [ "AscDFH" ] . historyitem _type _Xfrm |
12 ; window [ "AscDFH" ] . historyitem _SpPr _SetBwMode = window [ "AscDFH" ] . historyitem _type _SpPr | 1 ; window [ "AscDFH" ] . historyitem _SpPr _SetXfrm = window [ "AscDFH" ] . historyitem _type _SpPr | 2 ; window [ "AscDFH" ] . historyitem _SpPr _SetGeometry = window [ "AscDFH" ] . historyitem _type _SpPr | 3 ; window [ "AscDFH" ] . historyitem _SpPr _SetFill = window [ "AscDFH" ] . historyitem _type _SpPr | 4 ; window [ "AscDFH" ] . historyitem _SpPr _SetLn = window [ "AscDFH" ] . historyitem _type _SpPr | 5 ; window [ "AscDFH" ] . historyitem _SpPr _SetParent = window [ "AscDFH" ] . historyitem _type _SpPr |
6 ; window [ "AscDFH" ] . historyitem _SpPr _SetEffectPr = window [ "AscDFH" ] . historyitem _type _SpPr | 7 ; window [ "AscDFH" ] . historyitem _ClrScheme _AddClr = window [ "AscDFH" ] . historyitem _type _ClrScheme | 1 ; window [ "AscDFH" ] . historyitem _ClrScheme _SetName = window [ "AscDFH" ] . historyitem _type _ClrScheme | 2 ; window [ "AscDFH" ] . historyitem _ClrMap _SetClr = window [ "AscDFH" ] . historyitem _type _ClrMap | 1 ; window [ "AscDFH" ] . historyitem _ExtraClrScheme _SetClrScheme = window [ "AscDFH" ] . historyitem _type _ExtraClrScheme | 1 ; window [ "AscDFH" ] . historyitem _ExtraClrScheme _SetClrMap =
window [ "AscDFH" ] . historyitem _type _ExtraClrScheme | 2 ; window [ "AscDFH" ] . historyitem _FontCollection _SetFontScheme = window [ "AscDFH" ] . historyitem _type _FontCollection | 1 ; window [ "AscDFH" ] . historyitem _FontCollection _SetLatin = window [ "AscDFH" ] . historyitem _type _FontCollection | 2 ; window [ "AscDFH" ] . historyitem _FontCollection _SetEA = window [ "AscDFH" ] . historyitem _type _FontCollection | 3 ; window [ "AscDFH" ] . historyitem _FontCollection _SetCS = window [ "AscDFH" ] . historyitem _type _FontCollection | 4 ; window [ "AscDFH" ] . historyitem _FontScheme _SetName =
window [ "AscDFH" ] . historyitem _type _FontScheme | 1 ; window [ "AscDFH" ] . historyitem _FontScheme _SetMajorFont = window [ "AscDFH" ] . historyitem _type _FontScheme | 2 ; window [ "AscDFH" ] . historyitem _FontScheme _SetMinorFont = window [ "AscDFH" ] . historyitem _type _FontScheme | 3 ; window [ "AscDFH" ] . historyitem _FormatScheme _SetName = window [ "AscDFH" ] . historyitem _type _FormatScheme | 1 ; window [ "AscDFH" ] . historyitem _FormatScheme _AddFillToStyleLst = window [ "AscDFH" ] . historyitem _type _FormatScheme | 2 ; window [ "AscDFH" ] . historyitem _FormatScheme _AddLnToStyleLst =
window [ "AscDFH" ] . historyitem _type _FormatScheme | 3 ; window [ "AscDFH" ] . historyitem _FormatScheme _AddEffectToStyleLst = window [ "AscDFH" ] . historyitem _type _FormatScheme | 4 ; window [ "AscDFH" ] . historyitem _FormatScheme _AddBgFillToStyleLst = window [ "AscDFH" ] . historyitem _type _FormatScheme | 5 ; window [ "AscDFH" ] . historyitem _ThemeElements _SetClrScheme = window [ "AscDFH" ] . historyitem _type _ThemeElements | 1 ; window [ "AscDFH" ] . historyitem _ThemeElements _SetFontScheme = window [ "AscDFH" ] . historyitem _type _ThemeElements | 2 ; window [ "AscDFH" ] . historyitem _ThemeElements _SetFmtScheme =
window [ "AscDFH" ] . historyitem _type _ThemeElements | 3 ; window [ "AscDFH" ] . historyitem _HF _SetDt = window [ "AscDFH" ] . historyitem _type _HF | 1 ; window [ "AscDFH" ] . historyitem _HF _SetFtr = window [ "AscDFH" ] . historyitem _type _HF | 2 ; window [ "AscDFH" ] . historyitem _HF _SetHdr = window [ "AscDFH" ] . historyitem _type _HF | 3 ; window [ "AscDFH" ] . historyitem _HF _SetSldNum = window [ "AscDFH" ] . historyitem _type _HF | 4 ; window [ "AscDFH" ] . historyitem _BgPr _SetFill = window [ "AscDFH" ] . historyitem _type _BgPr | 1 ; window [ "AscDFH" ] . historyitem _BgPr _SetShadeToTitle = window [ "AscDFH" ] . historyitem _type _BgPr |
2 ; window [ "AscDFH" ] . historyitem _BgSetBwMode = window [ "AscDFH" ] . historyitem _type _Bg | 1 ; window [ "AscDFH" ] . historyitem _BgSetBgPr = window [ "AscDFH" ] . historyitem _type _Bg | 2 ; window [ "AscDFH" ] . historyitem _BgSetBgRef = window [ "AscDFH" ] . historyitem _type _Bg | 3 ; window [ "AscDFH" ] . historyitem _PrintSettingsSetHeaderFooter = window [ "AscDFH" ] . historyitem _type _PrintSettings | 1 ; window [ "AscDFH" ] . historyitem _PrintSettingsSetPageMargins = window [ "AscDFH" ] . historyitem _type _PrintSettings | 2 ; window [ "AscDFH" ] . historyitem _PrintSettingsSetPageSetup =
window [ "AscDFH" ] . historyitem _type _PrintSettings | 3 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetAlignWithMargins = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 1 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetDifferentFirst = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 2 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetDifferentOddEven = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 3 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetEvenFooter = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart |
4 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetEvenHeader = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 5 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetFirstFooter = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 6 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetFirstHeader = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 7 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetOddFooter = window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 8 ; window [ "AscDFH" ] . historyitem _HeaderFooterChartSetOddHeader =
window [ "AscDFH" ] . historyitem _type _HeaderFooterChart | 9 ; window [ "AscDFH" ] . historyitem _PageMarginsSetB = window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 1 ; window [ "AscDFH" ] . historyitem _PageMarginsSetFooter = window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 2 ; window [ "AscDFH" ] . historyitem _PageMarginsSetHeader = window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 3 ; window [ "AscDFH" ] . historyitem _PageMarginsSetL = window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 4 ; window [ "AscDFH" ] . historyitem _PageMarginsSetR =
window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 5 ; window [ "AscDFH" ] . historyitem _PageMarginsSetT = window [ "AscDFH" ] . historyitem _type _PageMarginsChart | 6 ; window [ "AscDFH" ] . historyitem _PageSetupSetBlackAndWhite = window [ "AscDFH" ] . historyitem _type _PageSetup | 1 ; window [ "AscDFH" ] . historyitem _PageSetupSetCopies = window [ "AscDFH" ] . historyitem _type _PageSetup | 2 ; window [ "AscDFH" ] . historyitem _PageSetupSetDraft = window [ "AscDFH" ] . historyitem _type _PageSetup | 3 ; window [ "AscDFH" ] . historyitem _PageSetupSetFirstPageNumber = window [ "AscDFH" ] . historyitem _type _PageSetup |
4 ; window [ "AscDFH" ] . historyitem _PageSetupSetHorizontalDpi = window [ "AscDFH" ] . historyitem _type _PageSetup | 5 ; window [ "AscDFH" ] . historyitem _PageSetupSetOrientation = window [ "AscDFH" ] . historyitem _type _PageSetup | 6 ; window [ "AscDFH" ] . historyitem _PageSetupSetPaperHeight = window [ "AscDFH" ] . historyitem _type _PageSetup | 7 ; window [ "AscDFH" ] . historyitem _PageSetupSetPaperSize = window [ "AscDFH" ] . historyitem _type _PageSetup | 8 ; window [ "AscDFH" ] . historyitem _PageSetupSetPaperWidth = window [ "AscDFH" ] . historyitem _type _PageSetup | 9 ; window [ "AscDFH" ] . historyitem _PageSetupSetUseFirstPageNumb =
window [ "AscDFH" ] . historyitem _type _PageSetup | 10 ; window [ "AscDFH" ] . historyitem _PageSetupSetVerticalDpi = window [ "AscDFH" ] . historyitem _type _PageSetup | 11 ; window [ "AscDFH" ] . historyitem _ShapeSetBDeleted = window [ "AscDFH" ] . historyitem _type _Shape | 1 ; window [ "AscDFH" ] . historyitem _ShapeSetNvSpPr = window [ "AscDFH" ] . historyitem _type _Shape | 2 ; window [ "AscDFH" ] . historyitem _ShapeSetSpPr = window [ "AscDFH" ] . historyitem _type _Shape | 3 ; window [ "AscDFH" ] . historyitem _ShapeSetStyle = window [ "AscDFH" ] . historyitem _type _Shape | 4 ; window [ "AscDFH" ] . historyitem _ShapeSetTxBody =
window [ "AscDFH" ] . historyitem _type _Shape | 5 ; window [ "AscDFH" ] . historyitem _ShapeSetTextBoxContent = window [ "AscDFH" ] . historyitem _type _Shape | 6 ; window [ "AscDFH" ] . historyitem _ShapeSetParent = window [ "AscDFH" ] . historyitem _type _Shape | 7 ; window [ "AscDFH" ] . historyitem _ShapeSetGroup = window [ "AscDFH" ] . historyitem _type _Shape | 8 ; window [ "AscDFH" ] . historyitem _ShapeSetBodyPr = window [ "AscDFH" ] . historyitem _type _Shape | 9 ; window [ "AscDFH" ] . historyitem _ShapeSetWordShape = window [ "AscDFH" ] . historyitem _type _Shape | 10 ; window [ "AscDFH" ] . historyitem _ShapeSetSignature =
window [ "AscDFH" ] . historyitem _type _Shape | 11 ; window [ "AscDFH" ] . historyitem _DispUnitsSetBuiltInUnit = window [ "AscDFH" ] . historyitem _type _DispUnits | 1 ; window [ "AscDFH" ] . historyitem _DispUnitsSetCustUnit = window [ "AscDFH" ] . historyitem _type _DispUnits | 2 ; window [ "AscDFH" ] . historyitem _DispUnitsSetDispUnitsLbl = window [ "AscDFH" ] . historyitem _type _DispUnits | 3 ; window [ "AscDFH" ] . historyitem _DispUnitsSetParent = window [ "AscDFH" ] . historyitem _type _DispUnits | 4 ; window [ "AscDFH" ] . historyitem _GroupShapeSetNvGrpSpPr = window [ "AscDFH" ] . historyitem _type _GroupShape |
1 ; window [ "AscDFH" ] . historyitem _GroupShapeSetSpPr = window [ "AscDFH" ] . historyitem _type _GroupShape | 2 ; window [ "AscDFH" ] . historyitem _GroupShapeAddToSpTree = window [ "AscDFH" ] . historyitem _type _GroupShape | 3 ; window [ "AscDFH" ] . historyitem _GroupShapeSetParent = window [ "AscDFH" ] . historyitem _type _GroupShape | 4 ; window [ "AscDFH" ] . historyitem _GroupShapeSetGroup = window [ "AscDFH" ] . historyitem _type _GroupShape | 5 ; window [ "AscDFH" ] . historyitem _GroupShapeRemoveFromSpTree = window [ "AscDFH" ] . historyitem _type _GroupShape | 6 ; window [ "AscDFH" ] . historyitem _ImageShapeSetNvPicPr =
window [ "AscDFH" ] . historyitem _type _ImageShape | 1 ; window [ "AscDFH" ] . historyitem _ImageShapeSetSpPr = window [ "AscDFH" ] . historyitem _type _ImageShape | 2 ; window [ "AscDFH" ] . historyitem _ImageShapeSetBlipFill = window [ "AscDFH" ] . historyitem _type _ImageShape | 3 ; window [ "AscDFH" ] . historyitem _ImageShapeSetParent = window [ "AscDFH" ] . historyitem _type _ImageShape | 4 ; window [ "AscDFH" ] . historyitem _ImageShapeSetGroup = window [ "AscDFH" ] . historyitem _type _ImageShape | 5 ; window [ "AscDFH" ] . historyitem _ImageShapeSetStyle = window [ "AscDFH" ] . historyitem _type _ImageShape |
6 ; window [ "AscDFH" ] . historyitem _ImageShapeSetData = window [ "AscDFH" ] . historyitem _type _ImageShape | 7 ; window [ "AscDFH" ] . historyitem _ImageShapeSetApplicationId = window [ "AscDFH" ] . historyitem _type _ImageShape | 8 ; window [ "AscDFH" ] . historyitem _ImageShapeSetPixSizes = window [ "AscDFH" ] . historyitem _type _ImageShape | 9 ; window [ "AscDFH" ] . historyitem _ImageShapeSetObjectFile = window [ "AscDFH" ] . historyitem _type _ImageShape | 10 ; window [ "AscDFH" ] . historyitem _ImageShapeSetOleType = window [ "AscDFH" ] . historyitem _type _ImageShape | 11 ; window [ "AscDFH" ] . historyitem _ImageShapeSetBinaryData =
window [ "AscDFH" ] . historyitem _type _ImageShape | 12 ; window [ "AscDFH" ] . historyitem _GeometrySetParent = window [ "AscDFH" ] . historyitem _type _Geometry | 1 ; window [ "AscDFH" ] . historyitem _GeometryAddAdj = window [ "AscDFH" ] . historyitem _type _Geometry | 2 ; window [ "AscDFH" ] . historyitem _GeometryAddGuide = window [ "AscDFH" ] . historyitem _type _Geometry | 3 ; window [ "AscDFH" ] . historyitem _GeometryAddCnx = window [ "AscDFH" ] . historyitem _type _Geometry | 4 ; window [ "AscDFH" ] . historyitem _GeometryAddHandleXY = window [ "AscDFH" ] . historyitem _type _Geometry |
5 ; window [ "AscDFH" ] . historyitem _GeometryAddHandlePolar = window [ "AscDFH" ] . historyitem _type _Geometry | 6 ; window [ "AscDFH" ] . historyitem _GeometryAddPath = window [ "AscDFH" ] . historyitem _type _Geometry | 7 ; window [ "AscDFH" ] . historyitem _GeometryAddRect = window [ "AscDFH" ] . historyitem _type _Geometry | 8 ; window [ "AscDFH" ] . historyitem _GeometrySetPreset = window [ "AscDFH" ] . historyitem _type _Geometry | 9 ; window [ "AscDFH" ] . historyitem _PathSetStroke = window [ "AscDFH" ] . historyitem _type _Path | 1 ; window [ "AscDFH" ] . historyitem _PathSetExtrusionOk =
window [ "AscDFH" ] . historyitem _type _Path | 2 ; window [ "AscDFH" ] . historyitem _PathSetFill = window [ "AscDFH" ] . historyitem _type _Path | 3 ; window [ "AscDFH" ] . historyitem _PathSetPathH = window [ "AscDFH" ] . historyitem _type _Path | 4 ; window [ "AscDFH" ] . historyitem _PathSetPathW = window [ "AscDFH" ] . historyitem _type _Path | 5 ; window [ "AscDFH" ] . historyitem _PathAddPathCommand = window [ "AscDFH" ] . historyitem _type _Path | 6 ; window [ "AscDFH" ] . historyitem _TextBodySetBodyPr = window [ "AscDFH" ] . historyitem _type _TextBody | 1 ; window [ "AscDFH" ] . historyitem _TextBodySetLstStyle =
window [ "AscDFH" ] . historyitem _type _TextBody | 2 ; window [ "AscDFH" ] . historyitem _TextBodySetContent = window [ "AscDFH" ] . historyitem _type _TextBody | 3 ; window [ "AscDFH" ] . historyitem _TextBodySetParent = window [ "AscDFH" ] . historyitem _type _TextBody | 4 ; window [ "AscDFH" ] . historyitem _CatAxSetAuto = window [ "AscDFH" ] . historyitem _type _CatAx | 1 ; window [ "AscDFH" ] . historyitem _CatAxSetAxId = window [ "AscDFH" ] . historyitem _type _CatAx | 2 ; window [ "AscDFH" ] . historyitem _CatAxSetAxPos = window [ "AscDFH" ] . historyitem _type _CatAx | 3 ; window [ "AscDFH" ] . historyitem _CatAxSetCrossAx =
window [ "AscDFH" ] . historyitem _type _CatAx | 4 ; window [ "AscDFH" ] . historyitem _CatAxSetCrosses = window [ "AscDFH" ] . historyitem _type _CatAx | 5 ; window [ "AscDFH" ] . historyitem _CatAxSetCrossesAt = window [ "AscDFH" ] . historyitem _type _CatAx | 6 ; window [ "AscDFH" ] . historyitem _CatAxSetDelete = window [ "AscDFH" ] . historyitem _type _CatAx | 7 ; window [ "AscDFH" ] . historyitem _CatAxSetLblAlgn = window [ "AscDFH" ] . historyitem _type _CatAx | 8 ; window [ "AscDFH" ] . historyitem _CatAxSetLblOffset = window [ "AscDFH" ] . historyitem _type _CatAx | 9 ; window [ "AscDFH" ] . historyitem _CatAxSetMajorGridlines =
window [ "AscDFH" ] . historyitem _type _CatAx | 10 ; window [ "AscDFH" ] . historyitem _CatAxSetMajorTickMark = window [ "AscDFH" ] . historyitem _type _CatAx | 11 ; window [ "AscDFH" ] . historyitem _CatAxSetMinorGridlines = window [ "AscDFH" ] . historyitem _type _CatAx | 12 ; window [ "AscDFH" ] . historyitem _CatAxSetMinorTickMark = window [ "AscDFH" ] . historyitem _type _CatAx | 13 ; window [ "AscDFH" ] . historyitem _CatAxSetNoMultiLvlLbl = window [ "AscDFH" ] . historyitem _type _CatAx | 14 ; window [ "AscDFH" ] . historyitem _CatAxSetNumFmt = window [ "AscDFH" ] . historyitem _type _CatAx |
15 ; window [ "AscDFH" ] . historyitem _CatAxSetScaling = window [ "AscDFH" ] . historyitem _type _CatAx | 16 ; window [ "AscDFH" ] . historyitem _CatAxSetSpPr = window [ "AscDFH" ] . historyitem _type _CatAx | 17 ; window [ "AscDFH" ] . historyitem _CatAxSetTickLblPos = window [ "AscDFH" ] . historyitem _type _CatAx | 18 ; window [ "AscDFH" ] . historyitem _CatAxSetTickLblSkip = window [ "AscDFH" ] . historyitem _type _CatAx | 19 ; window [ "AscDFH" ] . historyitem _CatAxSetTickMarkSkip = window [ "AscDFH" ] . historyitem _type _CatAx | 20 ; window [ "AscDFH" ] . historyitem _CatAxSetTitle = window [ "AscDFH" ] . historyitem _type _CatAx |
21 ; window [ "AscDFH" ] . historyitem _CatAxSetTxPr = window [ "AscDFH" ] . historyitem _type _CatAx | 22 ; window [ "AscDFH" ] . historyitem _ValAxSetAxId = window [ "AscDFH" ] . historyitem _type _ValAx | 1 ; window [ "AscDFH" ] . historyitem _ValAxSetAxPos = window [ "AscDFH" ] . historyitem _type _ValAx | 2 ; window [ "AscDFH" ] . historyitem _ValAxSetCrossAx = window [ "AscDFH" ] . historyitem _type _ValAx | 3 ; window [ "AscDFH" ] . historyitem _ValAxSetCrossBetween = window [ "AscDFH" ] . historyitem _type _ValAx | 4 ; window [ "AscDFH" ] . historyitem _ValAxSetCrosses = window [ "AscDFH" ] . historyitem _type _ValAx |
5 ; window [ "AscDFH" ] . historyitem _ValAxSetCrossesAt = window [ "AscDFH" ] . historyitem _type _ValAx | 6 ; window [ "AscDFH" ] . historyitem _ValAxSetDelete = window [ "AscDFH" ] . historyitem _type _ValAx | 7 ; window [ "AscDFH" ] . historyitem _ValAxSetDispUnits = window [ "AscDFH" ] . historyitem _type _ValAx | 8 ; window [ "AscDFH" ] . historyitem _ValAxSetMajorGridlines = window [ "AscDFH" ] . historyitem _type _ValAx | 9 ; window [ "AscDFH" ] . historyitem _ValAxSetMajorTickMark = window [ "AscDFH" ] . historyitem _type _ValAx | 10 ; window [ "AscDFH" ] . historyitem _ValAxSetMajorUnit =
window [ "AscDFH" ] . historyitem _type _ValAx | 11 ; window [ "AscDFH" ] . historyitem _ValAxSetMinorGridlines = window [ "AscDFH" ] . historyitem _type _ValAx | 12 ; window [ "AscDFH" ] . historyitem _ValAxSetMinorTickMark = window [ "AscDFH" ] . historyitem _type _ValAx | 13 ; window [ "AscDFH" ] . historyitem _ValAxSetMinorUnit = window [ "AscDFH" ] . historyitem _type _ValAx | 14 ; window [ "AscDFH" ] . historyitem _ValAxSetNumFmt = window [ "AscDFH" ] . historyitem _type _ValAx | 15 ; window [ "AscDFH" ] . historyitem _ValAxSetScaling = window [ "AscDFH" ] . historyitem _type _ValAx | 16 ; window [ "AscDFH" ] . historyitem _ValAxSetSpPr =
window [ "AscDFH" ] . historyitem _type _ValAx | 17 ; window [ "AscDFH" ] . historyitem _ValAxSetTickLblPos = window [ "AscDFH" ] . historyitem _type _ValAx | 18 ; window [ "AscDFH" ] . historyitem _ValAxSetTitle = window [ "AscDFH" ] . historyitem _type _ValAx | 19 ; window [ "AscDFH" ] . historyitem _ValAxSetTxPr = window [ "AscDFH" ] . historyitem _type _ValAx | 20 ; window [ "AscDFH" ] . historyitem _WrapPolygonSetEdited = window [ "AscDFH" ] . historyitem _type _WrapPolygon | 1 ; window [ "AscDFH" ] . historyitem _WrapPolygonSetRelPoints = window [ "AscDFH" ] . historyitem _type _WrapPolygon |
2 ; window [ "AscDFH" ] . historyitem _WrapPolygonSetWrapSide = window [ "AscDFH" ] . historyitem _type _WrapPolygon | 3 ; window [ "AscDFH" ] . historyitem _DateAxAuto = window [ "AscDFH" ] . historyitem _type _DateAx | 1 ; window [ "AscDFH" ] . historyitem _DateAxAxId = window [ "AscDFH" ] . historyitem _type _DateAx | 2 ; window [ "AscDFH" ] . historyitem _DateAxAxPos = window [ "AscDFH" ] . historyitem _type _DateAx | 3 ; window [ "AscDFH" ] . historyitem _DateAxBaseTimeUnit = window [ "AscDFH" ] . historyitem _type _DateAx | 4 ; window [ "AscDFH" ] . historyitem _DateAxCrossAx = window [ "AscDFH" ] . historyitem _type _DateAx |
5 ; window [ "AscDFH" ] . historyitem _DateAxCrosses = window [ "AscDFH" ] . historyitem _type _DateAx | 6 ; window [ "AscDFH" ] . historyitem _DateAxCrossesAt = window [ "AscDFH" ] . historyitem _type _DateAx | 7 ; window [ "AscDFH" ] . historyitem _DateAxDelete = window [ "AscDFH" ] . historyitem _type _DateAx | 8 ; window [ "AscDFH" ] . historyitem _DateAxLblOffset = window [ "AscDFH" ] . historyitem _type _DateAx | 9 ; window [ "AscDFH" ] . historyitem _DateAxMajorGridlines = window [ "AscDFH" ] . historyitem _type _DateAx | 10 ; window [ "AscDFH" ] . historyitem _DateAxMajorTickMark = window [ "AscDFH" ] . historyitem _type _DateAx |
11 ; window [ "AscDFH" ] . historyitem _DateAxMajorTimeUnit = window [ "AscDFH" ] . historyitem _type _DateAx | 12 ; window [ "AscDFH" ] . historyitem _DateAxMajorUnit = window [ "AscDFH" ] . historyitem _type _DateAx | 13 ; window [ "AscDFH" ] . historyitem _DateAxMinorGridlines = window [ "AscDFH" ] . historyitem _type _DateAx | 14 ; window [ "AscDFH" ] . historyitem _DateAxMinorTickMark = window [ "AscDFH" ] . historyitem _type _DateAx | 15 ; window [ "AscDFH" ] . historyitem _DateAxMinorTimeUnit = window [ "AscDFH" ] . historyitem _type _DateAx | 16 ; window [ "AscDFH" ] . historyitem _DateAxMinorUnit =
window [ "AscDFH" ] . historyitem _type _DateAx | 17 ; window [ "AscDFH" ] . historyitem _DateAxNumFmt = window [ "AscDFH" ] . historyitem _type _DateAx | 18 ; window [ "AscDFH" ] . historyitem _DateAxScaling = window [ "AscDFH" ] . historyitem _type _DateAx | 19 ; window [ "AscDFH" ] . historyitem _DateAxSpPr = window [ "AscDFH" ] . historyitem _type _DateAx | 20 ; window [ "AscDFH" ] . historyitem _DateAxTickLblPos = window [ "AscDFH" ] . historyitem _type _DateAx | 21 ; window [ "AscDFH" ] . historyitem _DateAxTitle = window [ "AscDFH" ] . historyitem _type _DateAx | 22 ; window [ "AscDFH" ] . historyitem _DateAxTxPr =
window [ "AscDFH" ] . historyitem _type _DateAx | 23 ; window [ "AscDFH" ] . historyitem _SerAxSetAxId = window [ "AscDFH" ] . historyitem _type _SerAx | 1 ; window [ "AscDFH" ] . historyitem _SerAxSetAxPos = window [ "AscDFH" ] . historyitem _type _SerAx | 2 ; window [ "AscDFH" ] . historyitem _SerAxSetCrossAx = window [ "AscDFH" ] . historyitem _type _SerAx | 3 ; window [ "AscDFH" ] . historyitem _SerAxSetCrosses = window [ "AscDFH" ] . historyitem _type _SerAx | 4 ; window [ "AscDFH" ] . historyitem _SerAxSetCrossesAt = window [ "AscDFH" ] . historyitem _type _SerAx | 5 ; window [ "AscDFH" ] . historyitem _SerAxSetDelete =
window [ "AscDFH" ] . historyitem _type _SerAx | 6 ; window [ "AscDFH" ] . historyitem _SerAxSetMajorGridlines = window [ "AscDFH" ] . historyitem _type _SerAx | 7 ; window [ "AscDFH" ] . historyitem _SerAxSetMajorTickMark = window [ "AscDFH" ] . historyitem _type _SerAx | 8 ; window [ "AscDFH" ] . historyitem _SerAxSetMinorGridlines = window [ "AscDFH" ] . historyitem _type _SerAx | 9 ; window [ "AscDFH" ] . historyitem _SerAxSetMinorTickMark = window [ "AscDFH" ] . historyitem _type _SerAx | 10 ; window [ "AscDFH" ] . historyitem _SerAxSetNumFmt = window [ "AscDFH" ] . historyitem _type _SerAx |
11 ; window [ "AscDFH" ] . historyitem _SerAxSetScaling = window [ "AscDFH" ] . historyitem _type _SerAx | 12 ; window [ "AscDFH" ] . historyitem _SerAxSetSpPr = window [ "AscDFH" ] . historyitem _type _SerAx | 13 ; window [ "AscDFH" ] . historyitem _SerAxSetTickLblPos = window [ "AscDFH" ] . historyitem _type _SerAx | 14 ; window [ "AscDFH" ] . historyitem _SerAxSetTickLblSkip = window [ "AscDFH" ] . historyitem _type _SerAx | 15 ; window [ "AscDFH" ] . historyitem _SerAxSetTickMarkSkip = window [ "AscDFH" ] . historyitem _type _SerAx | 16 ; window [ "AscDFH" ] . historyitem _SerAxSetTitle = window [ "AscDFH" ] . historyitem _type _SerAx |
17 ; window [ "AscDFH" ] . historyitem _SerAxSetTxPr = window [ "AscDFH" ] . historyitem _type _SerAx | 18 ; window [ "AscDFH" ] . historyitem _Title _SetLayout = window [ "AscDFH" ] . historyitem _type _Title | 1 ; window [ "AscDFH" ] . historyitem _Title _SetOverlay = window [ "AscDFH" ] . historyitem _type _Title | 2 ; window [ "AscDFH" ] . historyitem _Title _SetSpPr = window [ "AscDFH" ] . historyitem _type _Title | 3 ; window [ "AscDFH" ] . historyitem _Title _SetTx = window [ "AscDFH" ] . historyitem _type _Title | 4 ; window [ "AscDFH" ] . historyitem _Title _SetTxPr = window [ "AscDFH" ] . historyitem _type _Title |
5 ; window [ "AscDFH" ] . historyitem _SlideSetComments = window [ "AscDFH" ] . historyitem _type _Slide | 1 ; window [ "AscDFH" ] . historyitem _SlideSetShow = window [ "AscDFH" ] . historyitem _type _Slide | 2 ; window [ "AscDFH" ] . historyitem _SlideSetShowPhAnim = window [ "AscDFH" ] . historyitem _type _Slide | 3 ; window [ "AscDFH" ] . historyitem _SlideSetShowMasterSp = window [ "AscDFH" ] . historyitem _type _Slide | 4 ; window [ "AscDFH" ] . historyitem _SlideSetLayout = window [ "AscDFH" ] . historyitem _type _Slide | 5 ; window [ "AscDFH" ] . historyitem _SlideSetNum = window [ "AscDFH" ] . historyitem _type _Slide |
6 ; window [ "AscDFH" ] . historyitem _SlideSetTiming = window [ "AscDFH" ] . historyitem _type _Slide | 7 ; window [ "AscDFH" ] . historyitem _SlideSetSize = window [ "AscDFH" ] . historyitem _type _Slide | 8 ; window [ "AscDFH" ] . historyitem _SlideSetBg = window [ "AscDFH" ] . historyitem _type _Slide | 9 ; window [ "AscDFH" ] . historyitem _SlideSetLocks = window [ "AscDFH" ] . historyitem _type _Slide | 10 ; window [ "AscDFH" ] . historyitem _SlideRemoveFromSpTree = window [ "AscDFH" ] . historyitem _type _Slide | 11 ; window [ "AscDFH" ] . historyitem _SlideAddToSpTree = window [ "AscDFH" ] . historyitem _type _Slide |
12 ; window [ "AscDFH" ] . historyitem _SlideSetCSldName = window [ "AscDFH" ] . historyitem _type _Slide | 13 ; window [ "AscDFH" ] . historyitem _SlideSetClrMapOverride = window [ "AscDFH" ] . historyitem _type _Slide | 14 ; window [ "AscDFH" ] . historyitem _SlideSetNotes = window [ "AscDFH" ] . historyitem _type _Slide | 15 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetMaster = window [ "AscDFH" ] . historyitem _type _SlideLayout | 1 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetMatchingName = window [ "AscDFH" ] . historyitem _type _SlideLayout | 2 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetType =
window [ "AscDFH" ] . historyitem _type _SlideLayout | 3 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetBg = window [ "AscDFH" ] . historyitem _type _SlideLayout | 4 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetCSldName = window [ "AscDFH" ] . historyitem _type _SlideLayout | 5 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetShow = window [ "AscDFH" ] . historyitem _type _SlideLayout | 6 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetShowPhAnim = window [ "AscDFH" ] . historyitem _type _SlideLayout | 7 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetShowMasterSp = window [ "AscDFH" ] . historyitem _type _SlideLayout |
8 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetClrMapOverride = window [ "AscDFH" ] . historyitem _type _SlideLayout | 9 ; window [ "AscDFH" ] . historyitem _SlideLayoutAddToSpTree = window [ "AscDFH" ] . historyitem _type _SlideLayout | 10 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetSize = window [ "AscDFH" ] . historyitem _type _SlideLayout | 11 ; window [ "AscDFH" ] . historyitem _SlideLayoutSetHF = window [ "AscDFH" ] . historyitem _type _SlideLayout | 12 ; window [ "AscDFH" ] . historyitem _SlideMasterAddToSpTree = window [ "AscDFH" ] . historyitem _type _SlideMaster | 1 ;
window [ "AscDFH" ] . historyitem _SlideMasterSetTheme = window [ "AscDFH" ] . historyitem _type _SlideMaster | 2 ; window [ "AscDFH" ] . historyitem _SlideMasterSetBg = window [ "AscDFH" ] . historyitem _type _SlideMaster | 3 ; window [ "AscDFH" ] . historyitem _SlideMasterSetTxStyles = window [ "AscDFH" ] . historyitem _type _SlideMaster | 4 ; window [ "AscDFH" ] . historyitem _SlideMasterSetCSldName = window [ "AscDFH" ] . historyitem _type _SlideMaster | 5 ; window [ "AscDFH" ] . historyitem _SlideMasterSetClrMapOverride = window [ "AscDFH" ] . historyitem _type _SlideMaster | 6 ; window [ "AscDFH" ] . historyitem _SlideMasterAddLayout =
window [ "AscDFH" ] . historyitem _type _SlideMaster | 7 ; window [ "AscDFH" ] . historyitem _SlideMasterSetThemeIndex = window [ "AscDFH" ] . historyitem _type _SlideMaster | 8 ; window [ "AscDFH" ] . historyitem _SlideMasterSetSize = window [ "AscDFH" ] . historyitem _type _SlideMaster | 9 ; window [ "AscDFH" ] . historyitem _SlideMasterSetHF = window [ "AscDFH" ] . historyitem _type _SlideMaster | 10 ; window [ "AscDFH" ] . historyitem _SlideCommentsAddComment = window [ "AscDFH" ] . historyitem _type _SlideComments | 1 ; window [ "AscDFH" ] . historyitem _SlideCommentsRemoveComment = window [ "AscDFH" ] . historyitem _type _SlideComments |
2 ; window [ "AscDFH" ] . historyitem _PropLockerSetId = window [ "AscDFH" ] . historyitem _type _PropLocker | 1 ; window [ "AscDFH" ] . historyitem _ThemeSetColorScheme = window [ "AscDFH" ] . historyitem _type _Theme | 1 ; window [ "AscDFH" ] . historyitem _ThemeSetFontScheme = window [ "AscDFH" ] . historyitem _type _Theme | 2 ; window [ "AscDFH" ] . historyitem _ThemeSetFmtScheme = window [ "AscDFH" ] . historyitem _type _Theme | 3 ; window [ "AscDFH" ] . historyitem _ThemeSetName = window [ "AscDFH" ] . historyitem _type _Theme | 4 ; window [ "AscDFH" ] . historyitem _ThemeSetIsThemeOverride =
window [ "AscDFH" ] . historyitem _type _Theme | 5 ; window [ "AscDFH" ] . historyitem _ThemeSetSpDef = window [ "AscDFH" ] . historyitem _type _Theme | 6 ; window [ "AscDFH" ] . historyitem _ThemeSetLnDef = window [ "AscDFH" ] . historyitem _type _Theme | 7 ; window [ "AscDFH" ] . historyitem _ThemeSetTxDef = window [ "AscDFH" ] . historyitem _type _Theme | 8 ; window [ "AscDFH" ] . historyitem _ThemeAddExtraClrScheme = window [ "AscDFH" ] . historyitem _type _Theme | 9 ; window [ "AscDFH" ] . historyitem _ThemeRemoveExtraClrScheme = window [ "AscDFH" ] . historyitem _type _Theme | 10 ; window [ "AscDFH" ] . historyitem _GraphicFrameSetSpPr =
window [ "AscDFH" ] . historyitem _type _GraphicFrame | 1 ; window [ "AscDFH" ] . historyitem _GraphicFrameSetGraphicObject = window [ "AscDFH" ] . historyitem _type _GraphicFrame | 2 ; window [ "AscDFH" ] . historyitem _GraphicFrameSetSetNvSpPr = window [ "AscDFH" ] . historyitem _type _GraphicFrame | 3 ; window [ "AscDFH" ] . historyitem _GraphicFrameSetSetParent = window [ "AscDFH" ] . historyitem _type _GraphicFrame | 4 ; window [ "AscDFH" ] . historyitem _GraphicFrameSetSetGroup = window [ "AscDFH" ] . historyitem _type _GraphicFrame | 5 ; window [ "AscDFH" ] . historyitem _Sparkline _Type =
window [ "AscDFH" ] . historyitem _type _Sparkline | 1 ; window [ "AscDFH" ] . historyitem _Sparkline _LineWeight = window [ "AscDFH" ] . historyitem _type _Sparkline | 2 ; window [ "AscDFH" ] . historyitem _Sparkline _DisplayEmptyCellsAs = window [ "AscDFH" ] . historyitem _type _Sparkline | 3 ; window [ "AscDFH" ] . historyitem _Sparkline _Markers = window [ "AscDFH" ] . historyitem _type _Sparkline | 4 ; window [ "AscDFH" ] . historyitem _Sparkline _High = window [ "AscDFH" ] . historyitem _type _Sparkline | 5 ; window [ "AscDFH" ] . historyitem _Sparkline _Low = window [ "AscDFH" ] . historyitem _type _Sparkline |
6 ; window [ "AscDFH" ] . historyitem _Sparkline _First = window [ "AscDFH" ] . historyitem _type _Sparkline | 7 ; window [ "AscDFH" ] . historyitem _Sparkline _Last = window [ "AscDFH" ] . historyitem _type _Sparkline | 8 ; window [ "AscDFH" ] . historyitem _Sparkline _Negative = window [ "AscDFH" ] . historyitem _type _Sparkline | 9 ; window [ "AscDFH" ] . historyitem _Sparkline _DisplayXAxis = window [ "AscDFH" ] . historyitem _type _Sparkline | 10 ; window [ "AscDFH" ] . historyitem _Sparkline _DisplayHidden = window [ "AscDFH" ] . historyitem _type _Sparkline | 11 ; window [ "AscDFH" ] . historyitem _Sparkline _MinAxisType =
window [ "AscDFH" ] . historyitem _type _Sparkline | 12 ; window [ "AscDFH" ] . historyitem _Sparkline _MaxAxisType = window [ "AscDFH" ] . historyitem _type _Sparkline | 13 ; window [ "AscDFH" ] . historyitem _Sparkline _RightToLeft = window [ "AscDFH" ] . historyitem _type _Sparkline | 14 ; window [ "AscDFH" ] . historyitem _Sparkline _ManualMax = window [ "AscDFH" ] . historyitem _type _Sparkline | 15 ; window [ "AscDFH" ] . historyitem _Sparkline _ManualMin = window [ "AscDFH" ] . historyitem _type _Sparkline | 16 ; window [ "AscDFH" ] . historyitem _Sparkline _DateAxis = window [ "AscDFH" ] . historyitem _type _Sparkline |
17 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorSeries = window [ "AscDFH" ] . historyitem _type _Sparkline | 18 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorNegative = window [ "AscDFH" ] . historyitem _type _Sparkline | 19 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorAxis = window [ "AscDFH" ] . historyitem _type _Sparkline | 20 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorMarkers = window [ "AscDFH" ] . historyitem _type _Sparkline | 21 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorFirst = window [ "AscDFH" ] . historyitem _type _Sparkline | 22 ; window [ "AscDFH" ] . historyitem _Sparkline _colorLast =
window [ "AscDFH" ] . historyitem _type _Sparkline | 23 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorHigh = window [ "AscDFH" ] . historyitem _type _Sparkline | 24 ; window [ "AscDFH" ] . historyitem _Sparkline _ColorLow = window [ "AscDFH" ] . historyitem _type _Sparkline | 25 ; window [ "AscDFH" ] . historyitem _Sparkline _F = window [ "AscDFH" ] . historyitem _type _Sparkline | 26 ; window [ "AscDFH" ] . historyitem _Sparkline _ChangeData = window [ "AscDFH" ] . historyitem _type _Sparkline | 27 ; window [ "AscDFH" ] . historyitem _Sparkline _RemoveData = window [ "AscDFH" ] . historyitem _type _Sparkline |
28 ; window [ "AscDFH" ] . historyitem _Sparkline _RemoveSparkline = window [ "AscDFH" ] . historyitem _type _Sparkline | 29 ; window [ "AscDFH" ] . historyitem _NotesMasterSetHF = window [ "AscDFH" ] . historyitem _type _NotesMaster | 1 ; window [ "AscDFH" ] . historyitem _NotesMasterSetNotesStyle = window [ "AscDFH" ] . historyitem _type _NotesMaster | 2 ; window [ "AscDFH" ] . historyitem _NotesMasterSetNotesTheme = window [ "AscDFH" ] . historyitem _type _NotesMaster | 3 ; window [ "AscDFH" ] . historyitem _NotesMasterAddToSpTree = window [ "AscDFH" ] . historyitem _type _NotesMaster |
4 ; window [ "AscDFH" ] . historyitem _NotesMasterRemoveFromTree = window [ "AscDFH" ] . historyitem _type _NotesMaster | 5 ; window [ "AscDFH" ] . historyitem _NotesMasterSetBg = window [ "AscDFH" ] . historyitem _type _NotesMaster | 6 ; window [ "AscDFH" ] . historyitem _NotesMasterAddToNotesLst = window [ "AscDFH" ] . historyitem _type _NotesMaster | 7 ; window [ "AscDFH" ] . historyitem _NotesMasterSetName = window [ "AscDFH" ] . historyitem _type _NotesMaster | 8 ; window [ "AscDFH" ] . historyitem _NotesSetClrMap = window [ "AscDFH" ] . historyitem _type _Notes | 1 ; window [ "AscDFH" ] . historyitem _NotesSetShowMasterPhAnim =
window [ "AscDFH" ] . historyitem _type _Notes | 2 ; window [ "AscDFH" ] . historyitem _NotesSetShowMasterSp = window [ "AscDFH" ] . historyitem _type _Notes | 3 ; window [ "AscDFH" ] . historyitem _NotesAddToSpTree = window [ "AscDFH" ] . historyitem _type _Notes | 4 ; window [ "AscDFH" ] . historyitem _NotesRemoveFromTree = window [ "AscDFH" ] . historyitem _type _Notes | 5 ; window [ "AscDFH" ] . historyitem _NotesSetBg = window [ "AscDFH" ] . historyitem _type _Notes | 6 ; window [ "AscDFH" ] . historyitem _NotesSetName = window [ "AscDFH" ] . historyitem _type _Notes | 7 ; window [ "AscDFH" ] . historyitem _NotesSetSlide =
window [ "AscDFH" ] . historyitem _type _Notes | 8 ; window [ "AscDFH" ] . historyitem _NotesSetNotesMaster = window [ "AscDFH" ] . historyitem _type _Notes | 9 ; window [ "AscDFH" ] . historyitem _PresentationSectionSetName = window [ "AscDFH" ] . historyitem _type _PresentationSection | 1 ; window [ "AscDFH" ] . historyitem _PresentationSectionSetGuid = window [ "AscDFH" ] . historyitem _type _PresentationSection | 2 ; window [ "AscDFH" ] . historyitem _PresentationSectionSetStartIndex = window [ "AscDFH" ] . historyitem _type _PresentationSection | 3 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorFromX =
window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 1 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorFromY = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 2 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorToX = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 3 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorToY = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 4 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorObject = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor | 5 ; window [ "AscDFH" ] . historyitem _RelSizeAnchorParent = window [ "AscDFH" ] . historyitem _type _RelSizeAnchor |
6 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorFromX = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 1 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorFromY = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 2 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorExtX = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 3 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorExtY = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 4 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorObject = window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 5 ; window [ "AscDFH" ] . historyitem _AbsSizeAnchorParent =
window [ "AscDFH" ] . historyitem _type _AbsSizeAnchor | 6 ; window [ "AscDFH" ] . historyitem _DocumentMacros _Data = window [ "Asc" ] . historyitem _type _DocumentMacros | 1 ; window [ "AscDFH" ] . historyitem _CoreProperties = window [ "AscDFH" ] . historyitem _type _Core | 1 ; window [ "AscDFH" ] . historyitem _SlicerViewName = window [ "AscDFH" ] . historyitem _type _SlicerView | 1 ; window [ "AscDFH" ] . historydescription _Cut = 1 ; window [ "AscDFH" ] . historydescription _PasteButtonIE = 2 ; window [ "AscDFH" ] . historydescription _PasteButtonNotIE = 3 ; window [ "AscDFH" ] . historydescription _ChartDrawingObjects =
4 ; window [ "AscDFH" ] . historydescription _CommonControllerCheckChartText = 5 ; window [ "AscDFH" ] . historydescription _CommonControllerUnGroup = 6 ; window [ "AscDFH" ] . historydescription _CommonControllerCheckSelected = 7 ; window [ "AscDFH" ] . historydescription _CommonControllerSetGraphicObject = 8 ; window [ "AscDFH" ] . historydescription _CommonStatesAddNewShape = 9 ; window [ "AscDFH" ] . historydescription _CommonStatesRotate = 10 ; window [ "AscDFH" ] . historydescription _PasteNative = 11 ; window [ "AscDFH" ] . historydescription _Document _GroupUnGroup =
12 ; window [ "AscDFH" ] . historydescription _Document _SetDefaultLanguage = 13 ; window [ "AscDFH" ] . historydescription _Document _ChangeColorScheme = 14 ; window [ "AscDFH" ] . historydescription _Document _AddChart = 15 ; window [ "AscDFH" ] . historydescription _Document _EditChart = 16 ; window [ "AscDFH" ] . historydescription _Document _DragText = 17 ; window [ "AscDFH" ] . historydescription _Document _DocumentContentExtendToPos = 18 ; window [ "AscDFH" ] . historydescription _Document _AddHeader = 19 ; window [ "AscDFH" ] . historydescription _Document _AddFooter = 20 ; window [ "AscDFH" ] . historydescription _Document _ParagraphExtendToPos =
21 ; window [ "AscDFH" ] . historydescription _Document _ParagraphChangeFrame = 22 ; window [ "AscDFH" ] . historydescription _Document _ReplaceAll = 23 ; window [ "AscDFH" ] . historydescription _Document _ReplaceSingle = 24 ; window [ "AscDFH" ] . historydescription _Document _TableAddNewRowByTab = 25 ; window [ "AscDFH" ] . historydescription _Document _AddNewShape = 26 ; window [ "AscDFH" ] . historydescription _Document _EditWrapPolygon = 27 ; window [ "AscDFH" ] . historydescription _Document _MoveInlineObject = 28 ; window [ "AscDFH" ] . historydescription _Document _CopyAndMoveInlineObject =
29 ; window [ "AscDFH" ] . historydescription _Document _RotateInlineDrawing = 30 ; window [ "AscDFH" ] . historydescription _Document _RotateFlowDrawingCtrl = 31 ; window [ "AscDFH" ] . historydescription _Document _RotateFlowDrawingNoCtrl = 32 ; window [ "AscDFH" ] . historydescription _Document _MoveInGroup = 33 ; window [ "AscDFH" ] . historydescription _Document _ChangeWrapContour = 34 ; window [ "AscDFH" ] . historydescription _Document _ChangeWrapContourAddPoint = 35 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringToFront = 36 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringForwardGroup =
37 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringForward = 38 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsSendToBackGroup = 39 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsSendToBack = 40 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringBackwardGroup = 41 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsBringBackward = 42 ; window [ "AscDFH" ] . historydescription _Document _GrObjectsChangeWrapPolygon = 43 ; window [ "AscDFH" ] . historydescription _Document _MathAutoCorrect = 44 ; window [ "AscDFH" ] . historydescription _Document _SetFramePrWithFontFamily =
45 ; window [ "AscDFH" ] . historydescription _Document _SetFramePr = 46 ; window [ "AscDFH" ] . historydescription _Document _SetFramePrWithFontFamilyLong = 47 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontName = 48 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontSize = 49 ; window [ "AscDFH" ] . historydescription _Document _SetTextBold = 50 ; window [ "AscDFH" ] . historydescription _Document _SetTextItalic = 51 ; window [ "AscDFH" ] . historydescription _Document _SetTextUnderline = 52 ; window [ "AscDFH" ] . historydescription _Document _SetTextStrikeout =
53 ; window [ "AscDFH" ] . historydescription _Document _SetTextDStrikeout = 54 ; window [ "AscDFH" ] . historydescription _Document _SetTextSpacing = 55 ; window [ "AscDFH" ] . historydescription _Document _SetTextCaps = 56 ; window [ "AscDFH" ] . historydescription _Document _SetTextSmallCaps = 57 ; window [ "AscDFH" ] . historydescription _Document _SetTextPosition = 58 ; window [ "AscDFH" ] . historydescription _Document _SetTextLang = 59 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphLineSpacing = 60 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphLineSpacingBeforeAfter =
61 ; window [ "AscDFH" ] . historydescription _Document _IncFontSize = 62 ; window [ "AscDFH" ] . historydescription _Document _DecFontSize = 63 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphBorders = 64 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphPr = 65 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlign = 66 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlign = 67 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphNumbering = 68 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphStyle =
69 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphPageBreakBefore = 70 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphWidowControl = 71 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphKeepLines = 72 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphKeepNext = 73 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphContextualSpacing = 74 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlightNone = 75 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlightColor =
76 ; window [ "AscDFH" ] . historydescription _Document _SetTextColor = 77 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphShd = 78 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndent = 79 ; window [ "AscDFH" ] . historydescription _Document _IncParagraphIndent = 80 ; window [ "AscDFH" ] . historydescription _Document _DecParagraphIndent = 81 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentRight = 82 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentFirstLine = 83 ; window [ "AscDFH" ] . historydescription _Document _SetPageOrientation =
84 ; window [ "AscDFH" ] . historydescription _Document _SetPageSize = 85 ; window [ "AscDFH" ] . historydescription _Document _AddPageBreak = 86 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumToHdrFtr = 87 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumToCurrentPos = 88 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrDistance = 89 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrFirstPage = 90 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrEvenAndOdd = 91 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrLink =
92 ; window [ "AscDFH" ] . historydescription _Document _AddTable = 93 ; window [ "AscDFH" ] . historydescription _Document _TableAddRowAbove = 94 ; window [ "AscDFH" ] . historydescription _Document _TableAddRowBelow = 95 ; window [ "AscDFH" ] . historydescription _Document _TableAddColumnLeft = 96 ; window [ "AscDFH" ] . historydescription _Document _TableAddColumnRight = 97 ; window [ "AscDFH" ] . historydescription _Document _TableRemoveRow = 98 ; window [ "AscDFH" ] . historydescription _Document _TableRemoveColumn = 99 ; window [ "AscDFH" ] . historydescription _Document _RemoveTable =
100 ; window [ "AscDFH" ] . historydescription _Document _MergeTableCells = 101 ; window [ "AscDFH" ] . historydescription _Document _SplitTableCells = 102 ; window [ "AscDFH" ] . historydescription _Document _ApplyTablePr = 103 ; window [ "AscDFH" ] . historydescription _Document _AddImageUrl = 104 ; window [ "AscDFH" ] . historydescription _Document _AddImageUrlLong = 105 ; window [ "AscDFH" ] . historydescription _Document _AddImageToPage = 106 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithUrl = 107 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithUrlLong =
108 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithFillUrl = 109 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePrWithFillUrlLong = 110 ; window [ "AscDFH" ] . historydescription _Document _ApplyImagePr = 111 ; window [ "AscDFH" ] . historydescription _Document _AddHyperlink = 112 ; window [ "AscDFH" ] . historydescription _Document _ChangeHyperlink = 113 ; window [ "AscDFH" ] . historydescription _Document _RemoveHyperlink = 114 ; window [ "AscDFH" ] . historydescription _Document _ReplaceMisspelledWord = 115 ; window [ "AscDFH" ] . historydescription _Document _AddComment =
116 ; window [ "AscDFH" ] . historydescription _Document _RemoveComment = 117 ; window [ "AscDFH" ] . historydescription _Document _ChangeComment = 118 ; window [ "AscDFH" ] . historydescription _Document _SetTextFontNameLong = 119 ; window [ "AscDFH" ] . historydescription _Document _AddImage = 120 ; window [ "AscDFH" ] . historydescription _Document _ClearFormatting = 121 ; window [ "AscDFH" ] . historydescription _Document _AddSectionBreak = 122 ; window [ "AscDFH" ] . historydescription _Document _AddMath = 123 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphTabs =
124 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphIndentFromRulers = 125 ; window [ "AscDFH" ] . historydescription _Document _SetDocumentMargin _Hor = 126 ; window [ "AscDFH" ] . historydescription _Document _SetTableMarkup _Hor = 127 ; window [ "AscDFH" ] . historydescription _Document _SetDocumentMargin _Ver = 128 ; window [ "AscDFH" ] . historydescription _Document _SetHdrFtrBounds = 129 ; window [ "AscDFH" ] . historydescription _Document _SetTableMarkup _Ver = 130 ; window [ "AscDFH" ] . historydescription _Document _DocumentExtendToPos = 131 ; window [ "AscDFH" ] . historydescription _Document _AddDropCap =
132 ; window [ "AscDFH" ] . historydescription _Document _RemoveDropCap = 133 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlight = 134 ; window [ "AscDFH" ] . historydescription _Document _BackSpaceButton = 135 ; window [ "AscDFH" ] . historydescription _Document _MoveParagraphByTab = 136 ; window [ "AscDFH" ] . historydescription _Document _AddTab = 137 ; window [ "AscDFH" ] . historydescription _Document _EnterButton = 138 ; window [ "AscDFH" ] . historydescription _Document _SpaceButton = 139 ; window [ "AscDFH" ] . historydescription _Document _ShiftInsert =
140 ; window [ "AscDFH" ] . historydescription _Document _ShiftInsertSafari = 141 ; window [ "AscDFH" ] . historydescription _Document _DeleteButton = 142 ; window [ "AscDFH" ] . historydescription _Document _ShiftDeleteButton = 143 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading1 = 144 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading2 = 145 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _SetStyleHeading3 = 146 ; window [ "AscDFH" ] . historydescription _Document _SetTextStrikeoutHotKey = 147 ; window [ "AscDFH" ] . historydescription _Document _SetTextBoldHotKey =
148 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey = 149 ; window [ "AscDFH" ] . historydescription _Document _AddEuroLetter = 150 ; window [ "AscDFH" ] . historydescription _Document _SetTextItalicHotKey = 151 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey2 = 152 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphNumberingHotKey = 153 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey3 = 154 ; window [ "AscDFH" ] . historydescription _Document _AddPageNumHotKey = 155 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphAlignHotKey4 =
156 ; window [ "AscDFH" ] . historydescription _Document _SetTextUnderlineHotKey = 157 ; window [ "AscDFH" ] . historydescription _Document _FormatPasteHotKey = 158 ; window [ "AscDFH" ] . historydescription _Document _PasteHotKey = 159 ; window [ "AscDFH" ] . historydescription _Document _PasteSafariHotKey = 160 ; window [ "AscDFH" ] . historydescription _Document _CutHotKey = 161 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey = 162 ; window [ "AscDFH" ] . historydescription _Document _AddMathHotKey = 163 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey2 =
164 ; window [ "AscDFH" ] . historydescription _Document _MinusButton = 165 ; window [ "AscDFH" ] . historydescription _Document _SetTextVertAlignHotKey3 = 166 ; window [ "AscDFH" ] . historydescription _Document _AddLetter = 167 ; window [ "AscDFH" ] . historydescription _Document _MoveTableBorder = 168 ; window [ "AscDFH" ] . historydescription _Document _FormatPasteHotKey2 = 169 ; window [ "AscDFH" ] . historydescription _Document _SetTextHighlight2 = 170 ; window [ "AscDFH" ] . historydescription _Document _AddTextFromTextBox = 171 ; window [ "AscDFH" ] . historydescription _Document _AddMailMergeField =
172 ; window [ "AscDFH" ] . historydescription _Document _MoveInlineTable = 173 ; window [ "AscDFH" ] . historydescription _Document _MoveFlowTable = 174 ; window [ "AscDFH" ] . historydescription _Document _RestoreFieldTemplateText = 175 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellFontName = 176 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellFontSize = 177 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellBold = 178 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellItalic = 179 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellUnderline =
180 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellStrikeout = 181 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellSubscript = 182 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellSuperscript = 183 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellAlign = 184 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellVertAlign = 185 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellTextColor = 186 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellBackgroundColor = 187 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellIncreaseFontSize =
188 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellDecreaseFontSize = 189 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkAdd = 190 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkModify = 191 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetCellHyperlinkRemove = 192 ; window [ "AscDFH" ] . historydescription _Spreadsheet _EditChart = 193 ; window [ "AscDFH" ] . historydescription _Spreadsheet _Remove = 194 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddTab = 195 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddNewParagraph =
196 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddSpace = 197 ; window [ "AscDFH" ] . historydescription _Spreadsheet _AddItem = 198 ; window [ "AscDFH" ] . historydescription _Spreadsheet _PutPrLineSpacing = 199 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetParagraphSpacing = 200 ; window [ "AscDFH" ] . historydescription _Spreadsheet _SetGraphicObjectsProps = 201 ; window [ "AscDFH" ] . historydescription _Spreadsheet _ParaApply = 202 ; window [ "AscDFH" ] . historydescription _Spreadsheet _GraphicObjectLayer = 203 ; window [ "AscDFH" ] . historydescription _Spreadsheet _ParagraphAdd =
204 ; window [ "AscDFH" ] . historydescription _Spreadsheet _CreateGroup = 205 ; window [ "AscDFH" ] . historydescription _CommonDrawings _ChangeAdj = 206 ; window [ "AscDFH" ] . historydescription _CommonDrawings _EndTrack = 207 ; window [ "AscDFH" ] . historydescription _CommonDrawings _CopyCtrl = 208 ; window [ "AscDFH" ] . historydescription _Presentation _ParaApply = 209 ; window [ "AscDFH" ] . historydescription _Presentation _ParaFormatPaste = 210 ; window [ "AscDFH" ] . historydescription _Presentation _AddNewParagraph = 211 ; window [ "AscDFH" ] . historydescription _Presentation _CreateGroup =
212 ; window [ "AscDFH" ] . historydescription _Presentation _UnGroup = 213 ; window [ "AscDFH" ] . historydescription _Presentation _AddChart = 214 ; window [ "AscDFH" ] . historydescription _Presentation _EditChart = 215 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphAdd = 216 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphClearFormatting = 217 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphAlign = 218 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphSpacing = 219 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphTabs =
220 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphIndent = 221 ; window [ "AscDFH" ] . historydescription _Presentation _SetParagraphNumbering = 222 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphIncDecFontSize = 223 ; window [ "AscDFH" ] . historydescription _Presentation _ParagraphIncDecIndent = 224 ; window [ "AscDFH" ] . historydescription _Presentation _SetImageProps = 225 ; window [ "AscDFH" ] . historydescription _Presentation _SetShapeProps = 226 ; window [ "AscDFH" ] . historydescription _Presentation _ChartApply = 227 ;
window [ "AscDFH" ] . historydescription _Presentation _ChangeShapeType = 228 ; window [ "AscDFH" ] . historydescription _Presentation _SetVerticalAlign = 229 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkAdd = 230 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkModify = 231 ; window [ "AscDFH" ] . historydescription _Presentation _HyperlinkRemove = 232 ; window [ "AscDFH" ] . historydescription _Presentation _DistHor = 233 ; window [ "AscDFH" ] . historydescription _Presentation _DistVer = 234 ; window [ "AscDFH" ] . historydescription _Presentation _BringToFront =
235 ; window [ "AscDFH" ] . historydescription _Presentation _BringForward = 236 ; window [ "AscDFH" ] . historydescription _Presentation _SendToBack = 237 ; window [ "AscDFH" ] . historydescription _Presentation _BringBackward = 239 ; window [ "AscDFH" ] . historydescription _Presentation _ApplyTiming = 240 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesToEnd = 241 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesNextPos = 242 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesPrevPos = 243 ; window [ "AscDFH" ] . historydescription _Presentation _MoveSlidesToStart =
244 ; window [ "AscDFH" ] . historydescription _Presentation _MoveComments = 245 ; window [ "AscDFH" ] . historydescription _Presentation _TableBorder = 246 ; window [ "AscDFH" ] . historydescription _Presentation _AddFlowImage = 247 ; window [ "AscDFH" ] . historydescription _Presentation _AddFlowTable = 248 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeBackground = 249 ; window [ "AscDFH" ] . historydescription _Presentation _AddNextSlide = 250 ; window [ "AscDFH" ] . historydescription _Presentation _ShiftSlides = 251 ; window [ "AscDFH" ] . historydescription _Presentation _DeleteSlides =
252 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeLayout = 253 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeSlideSize = 254 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeColorScheme = 255 ; window [ "AscDFH" ] . historydescription _Presentation _AddComment = 256 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeComment = 257 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrFontName = 258 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrFontSize = 259 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrBold =
260 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrItalic = 261 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrUnderline = 262 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrStrikeout = 263 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrLineSpacing = 264 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrSpacingBeforeAfter = 265 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrIncreaseFontSize = 266 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrDecreaseFontSize =
267 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrAlign = 268 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrBaseline = 269 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextPrListType = 270 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextColor = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutTextColor2 = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrIndent = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrIndentRight = 271 ; window [ "AscDFH" ] . historydescription _Presentation _PutPrFirstLineIndent =
271 ; window [ "AscDFH" ] . historydescription _Presentation _AddPageBreak = 271 ; window [ "AscDFH" ] . historydescription _Presentation _AddRowAbove = 272 ; window [ "AscDFH" ] . historydescription _Presentation _AddRowBelow = 273 ; window [ "AscDFH" ] . historydescription _Presentation _AddColLeft = 274 ; window [ "AscDFH" ] . historydescription _Presentation _AddColRight = 275 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveRow = 276 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveCol = 277 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveTable =
278 ; window [ "AscDFH" ] . historydescription _Presentation _MergeCells = 279 ; window [ "AscDFH" ] . historydescription _Presentation _SplitCells = 280 ; window [ "AscDFH" ] . historydescription _Presentation _TblApply = 281 ; window [ "AscDFH" ] . historydescription _Presentation _RemoveComment = 282 ; window [ "AscDFH" ] . historydescription _Presentation _EndFontLoad = 283 ; window [ "AscDFH" ] . historydescription _Presentation _ChangeTheme = 284 ; window [ "AscDFH" ] . historydescription _Presentation _TableMoveFromRulers = 285 ; window [ "AscDFH" ] . historydescription _Presentation _TableMoveFromRulersInline =
286 ; window [ "AscDFH" ] . historydescription _Presentation _PasteOnThumbnails = 287 ; window [ "AscDFH" ] . historydescription _Presentation _PasteOnThumbnailsSafari = 288 ; window [ "AscDFH" ] . historydescription _Document _ConvertOldEquation = 289 ; window [ "AscDFH" ] . historydescription _Presentation _SetVert = 290 ; window [ "AscDFH" ] . historydescription _Document _AddNewStyle = 291 ; window [ "AscDFH" ] . historydescription _Document _RemoveStyle = 292 ; window [ "AscDFH" ] . historydescription _Document _AddTextArt = 293 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllCustomStyles =
294 ; window [ "AscDFH" ] . historydescription _Document _AcceptAllRevisionChanges = 295 ; window [ "AscDFH" ] . historydescription _Document _RejectAllRevisionChanges = 296 ; window [ "AscDFH" ] . historydescription _Document _AcceptRevisionChange = 297 ; window [ "AscDFH" ] . historydescription _Document _RejectRevisionChange = 298 ; window [ "AscDFH" ] . historydescription _Document _AcceptRevisionChangesBySelection = 299 ; window [ "AscDFH" ] . historydescription _Document _RejectRevisionChangesBySelection = 300 ; window [ "AscDFH" ] . historydescription _Document _AddLetterUnion =
301 ; window [ "AscDFH" ] . historydescription _Presentation _ApplyTimingToAll = 302 ; window [ "AscDFH" ] . historydescription _Document _SetColumnsFromRuler = 303 ; window [ "AscDFH" ] . historydescription _Document _SetColumnsProps = 304 ; window [ "AscDFH" ] . historydescription _Document _AddColumnBreak = 305 ; window [ "AscDFH" ] . historydescription _Document _SetSectionProps = 306 ; window [ "AscDFH" ] . historydescription _Document _AddTabToMath = 307 ; window [ "AscDFH" ] . historydescription _Document _SetMathProps = 308 ; window [ "AscDFH" ] . historydescription _Document _ApplyPrToMath =
309 ; window [ "AscDFH" ] . historydescription _Document _ApiBuilder = 310 ; window [ "AscDFH" ] . historydescription _Document _AddOleObject = 311 ; window [ "AscDFH" ] . historydescription _Document _EditOleObject = 312 ; window [ "AscDFH" ] . historydescription _Document _CompositeInput = 313 ; window [ "AscDFH" ] . historydescription _Document _CompositeInputReplace = 314 ; window [ "AscDFH" ] . historydescription _Document _AddPageCount = 315 ; window [ "AscDFH" ] . historydescription _Document _AddFootnote = 316 ; window [ "AscDFH" ] . historydescription _Document _SetFootnotePr =
317 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllFootnotes = 318 ; window [ "AscDFH" ] . historydescription _Document _InsertDocumentsByUrls = 319 ; window [ "AscDFH" ] . historydescription _Document _InsertSignatureLine = 320 ; window [ "AscDFH" ] . historydescription _Document _AddBlockLevelContentControl = 321 ; window [ "AscDFH" ] . historydescription _Document _AddInlineLevelContentControl = 322 ; window [ "AscDFH" ] . historydescription _Document _RemoveContentControl = 323 ; window [ "AscDFH" ] . historydescription _Document _RemoveContentControlWrapper =
324 ; window [ "AscDFH" ] . historydescription _Document _ChangeContentControlProperties = 325 ; window [ "AscDFH" ] . historydescription _Presentation _HideSlides = 326 ; window [ "AscDFH" ] . historydescription _DocumentMacros _Data = 327 ; window [ "AscDFH" ] . historydescription _Document _AddBookmark = 328 ; window [ "AscDFH" ] . historydescription _Document _AddTableOfContents = 329 ; window [ "AscDFH" ] . historydescription _Document _ChangeOutlineLevel = 330 ; window [ "AscDFH" ] . historydescription _Document _AddElementToOutline = 331 ; window [ "AscDFH" ] . historydescription _Document _ResizeTable =
332 ; window [ "AscDFH" ] . historydescription _Document _RemoveComplexField = 333 ; window [ "AscDFH" ] . historydescription _Document _SetComplexFieldPr = 334 ; window [ "AscDFH" ] . historydescription _Document _UpdateTableOfContents = 335 ; window [ "AscDFH" ] . historydescription _Document _SectionStartPage = 336 ; window [ "AscDFH" ] . historydescription _Document _DistributeTableCells = 337 ; window [ "AscDFH" ] . historydescription _Document _RemoveBookmark = 338 ; window [ "AscDFH" ] . historydescription _Document _ContinueNumbering = 339 ; window [ "AscDFH" ] . historydescription _Document _RestartNumbering =
340 ; window [ "AscDFH" ] . historydescription _Document _AutomaticListAsType = 341 ; window [ "AscDFH" ] . historydescription _Document _CreateNum = 342 ; window [ "AscDFH" ] . historydescription _Document _ChangeNumLvl = 343 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectSmartQuotes = 344 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectHyphensWithDash = 345 ; window [ "AscDFH" ] . historydescription _Document _SetGlobalSdtHighlightColor = 346 ; window [ "AscDFH" ] . historydescription _Document _SetGlobalSdtShowHighlight = 347 ; window [ "AscDFH" ] . historydescription _Document _UpdateFields =
348 ; window [ "AscDFH" ] . historydescription _Document _AddBlankPage = 349 ; window [ "AscDFH" ] . historydescription _Document _AddTableFormula = 350 ; window [ "AscDFH" ] . historydescription _Document _ChangeTableFormula = 350 ; window [ "AscDFH" ] . historydescription _SetCoreproperties = 351 ; window [ "AscDFH" ] . historydescription _Document _AddWatermark = 352 ; window [ "AscDFH" ] . historydescription _Presentation _SetHF = 353 ; window [ "AscDFH" ] . historydescription _Presentation _AddSlideNumber = 354 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphOutlineLvl =
355 ; window [ "AscDFH" ] . historydescription _Document _RemoveTableCells = 356 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlCheckBox = 357 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlCheckBoxPr = 358 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlPicture = 359 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlPictureUrl = 360 ; window [ "AscDFH" ] . historydescription _Document _RemoveAllComments = 361 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlList =
362 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlListPr = 363 ; window [ "AscDFH" ] . historydescription _Document _SelectContentControlListItem = 364 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlDatePicker = 365 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlDatePickerPr = 366 ; window [ "AscDFH" ] . historydescription _Presentation _AddToLayout = 367 ; window [ "AscDFH" ] . historydescription _Presentation _FitImagesToSlide = 368 ; window [ "AscDFH" ] . historydescription _Document _AddTextWithProperties =
369 ; window [ "AscDFH" ] . historydescription _Document _AddCaption = 370 ; window [ "AscDFH" ] . historydescription _Document _CompareDocuments = 371 ; window [ "AscDFH" ] . historydescription _Document _DrawNewTable = 372 ; window [ "AscDFH" ] . historydescription _Document _DrawTable = 373 ; window [ "AscDFH" ] . historydescription _Document _AddDateTimeField = 374 ; window [ "AscDFH" ] . historydescription _Document _SetContentControlTextPlaceholder = 375 ; window [ "AscDFH" ] . historydescription _Document _AddEndnote = 376 ; window [ "AscDFH" ] . historydescription _Document _AddContentControlTextForm =
377 ; window [ "AscDFH" ] . historydescription _Document _SetEndnotePr = 378 ; window [ "AscDFH" ] . historydescription _Document _ConvertFootnoteType = 379 ; window [ "AscDFH" ] . historydescription _Document _AutoCorrectCommon = 380 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _ClearFormatting = 381 ; window [ "AscDFH" ] . historydescription _Document _Shortcut _AddNonBreakingSpace = 382 ; window [ "AscDFH" ] . historydescription _Document _SetParagraphSuppressLineNumbers = 383 ; window [ "AscDFH" ] . historydescription _Document _SetLineNumbersProps = 384 ;
window [ "AscDFH" ] . historydescription _Document _AddCrossRef = 385 ; window [ "AscDFH" ] . historydescription _Document _ClearAllSpecialForms = 386 ; window [ "AscDFH" ] . changesFactory = { } ; window [ "AscDFH" ] . changesFactory [ window [ "AscDFH" ] . historyitem _Unknown _Unknown ] = CChangesBase ; window [ "AscDFH" ] . changesRelationMap = { } ; function CChangesBase ( Class ) { this . Class = Class ; this . Reverted = false } CChangesBase . prototype . Type = window [ "AscDFH" ] . historyitem _Unknown _Unknown ; CChangesBase . prototype . Undo = function ( ) { if ( this . Class && this . Class . Undo ) this . Class . Undo ( this ) } ;
CChangesBase . prototype . Redo = function ( ) { if ( this . Class && this . Class . Redo ) this . Class . Redo ( this ) } ; CChangesBase . prototype . WriteToBinary = function ( Writer ) { if ( this . Class && this . Class . Save _Changes ) this . Class . Save _Changes ( this , Writer ) } ; CChangesBase . prototype . ReadFromBinary = function ( Reader ) { } ; CChangesBase . prototype . Load = function ( ) { this . Redo ( ) } ; CChangesBase . prototype . GetClass = function ( ) { return this . Class } ; CChangesBase . prototype . RefreshRecalcData = function ( ) { if ( this . Class && this . Class . Refresh _RecalcData ) this . Class . Refresh _RecalcData ( this ) } ;
CChangesBase . prototype . IsContentChange = function ( ) { return false } ; CChangesBase . prototype . CreateReverseChange = function ( ) { return null } ; CChangesBase . prototype . Merge = function ( oChange ) { return true } ; CChangesBase . prototype . IsPosExtChange = function ( oChange ) { return false } ; CChangesBase . prototype . IsReverted = function ( ) { return this . Reverted } ; CChangesBase . prototype . SetReverted = function ( isReverted ) { this . Reverted = isReverted } ; CChangesBase . prototype . IsParagraphSimpleChanges = function ( ) { return false } ; CChangesBase . prototype . IsNeedRecalculate =
function ( ) { return true } ; CChangesBase . prototype . IsNeedRecalculateLineNumbers = function ( ) { return false } ; window [ "AscDFH" ] . CChangesBase = CChangesBase ; function CChangesBaseContentChange ( Class , Pos , Items , isAdd ) { CChangesBase . call ( this , Class ) ; this . Pos = Pos ; this . Items = Items ; this . UseArray = false ; this . PosArray = [ ] ; this . Add = isAdd ; this . Reverted = false } CChangesBaseContentChange . prototype = Object . create ( CChangesBase . prototype ) ; CChangesBaseContentChange . prototype . constructor = CChangesBaseContentChange ; CChangesBaseContentChange . prototype . IsContentChange =
function ( ) { return true } ; CChangesBaseContentChange . prototype . IsAdd = function ( ) { return this . Add } ; CChangesBaseContentChange . prototype . Copy = function ( ) { var oChanges = new this . constructor ( this . Class , this . Pos , this . Items , this . Add ) ; oChanges . UseArray = this . UseArray ; for ( var nIndex = 0 , nCount = this . PosArray . length ; nIndex < nCount ; ++ nIndex ) oChanges . PosArray [ nIndex ] = this . PosArray [ nIndex ] ; return oChanges } ; CChangesBaseContentChange . prototype . GetItemsCount = function ( ) { return this . Items . length } ; CChangesBaseContentChange . prototype . WriteToBinary =
function ( Writer ) { var bArray = this . UseArray ; var nCount = this . Items . length ; var nStartPos = Writer . GetCurPosition ( ) ; Writer . Skip ( 4 ) ; var nRealCount = nCount ; for ( var nIndex = 0 ; nIndex < nCount ; ++ nIndex ) if ( true === bArray ) if ( false === this . PosArray [ nIndex ] ) nRealCount -- ; else { Writer . WriteLong ( this . PosArray [ nIndex ] ) ; this . private _WriteItem ( Writer , this . Items [ nIndex ] ) } else { Writer . WriteLong ( this . Pos ) ; this . private _WriteItem ( Writer , this . Items [ nIndex ] ) } var nEndPos = Writer . GetCurPosition ( ) ; Writer . Seek ( nStartPos ) ; Writer . WriteLong ( nRealCount ) ;
Writer . Seek ( nEndPos ) ; var nColor = 0 ; if ( undefined !== this . Color ) { nColor |= 1 ; if ( true === this . Color ) nColor |= 2 } Writer . WriteLong ( nColor ) } ; CChangesBaseContentChange . prototype . ReadFromBinary = function ( Reader ) { this . UseArray = true ; this . Items = [ ] ; this . PosArray = [ ] ; var nCount = Reader . GetLong ( ) ; for ( var nIndex = 0 ; nIndex < nCount ; ++ nIndex ) { this . PosArray [ nIndex ] = Reader . GetLong ( ) ; this . Items [ nIndex ] = this . private _ReadItem ( Reader ) } var nColor = Reader . GetLong ( ) ; if ( nColor & 1 ) this . Color = nColor & 2 ? true : false } ; CChangesBaseContentChange . prototype . private _WriteItem =
function ( Writer , Item ) { } ; CChangesBaseContentChange . prototype . private _ReadItem = function ( Reader ) { return null } ; CChangesBaseContentChange . prototype . ConvertToSimpleActions = function ( ) { var arrActions = [ ] ; if ( this . UseArray ) for ( var nIndex = 0 , nCount = this . Items . length ; nIndex < nCount ; ++ nIndex ) arrActions . push ( { Item : this . Items [ nIndex ] , Pos : this . PosArray [ nIndex ] , Add : this . Add } ) ; else { var Pos = this . Pos ; for ( var nIndex = 0 , nCount = this . Items . length ; nIndex < nCount ; ++ nIndex ) arrActions . push ( { Item : this . Items [ nIndex ] , Pos : Pos + nIndex ,
Add : this . Add } ) } return arrActions } ; CChangesBaseContentChange . prototype . ConvertFromSimpleActions = function ( arrActions ) { this . UseArray = true ; this . Pos = 0 ; this . Items = [ ] ; this . PosArray = [ ] ; for ( var nIndex = 0 , nCount = arrActions . length ; nIndex < nCount ; ++ nIndex ) { this . PosArray [ nIndex ] = arrActions [ nIndex ] . Pos ; this . Items [ nIndex ] = arrActions [ nIndex ] . Item } } ; CChangesBaseContentChange . prototype . IsRelated = function ( oChanges ) { if ( this . Class !== oChanges . GetClass ( ) || this . Type !== oChanges . Type ) return false ; return true } ; CChangesBaseContentChange . prototype . private _CreateReverseChange =
function ( fConstructor ) { var oChange = new fConstructor ; oChange . Class = this . Class ; oChange . Pos = this . Pos ; oChange . Items = this . Items ; oChange . Add = ! this . Add ; oChange . UseArray = this . UseArray ; oChange . PosArray = [ ] ; for ( var nIndex = 0 , nCount = this . PosArray . length ; nIndex < nCount ; ++ nIndex ) oChange . PosArray [ nIndex ] = this . PosArray [ nIndex ] ; return oChange } ; CChangesBaseContentChange . prototype . Merge = function ( oChange ) { return true } ; CChangesBaseContentChange . prototype . GetMinPos = function ( ) { var nPos = null ; if ( this . UseArray ) { for ( var nIndex =
0 , nCount = this . PosArray . length ; nIndex < nCount ; ++ nIndex ) if ( null === nPos || nPos > this . PosArray [ nIndex ] ) nPos = this . PosArray [ nIndex ] ; if ( null === nPos ) nPos = 0 } else nPos = this . Pos ; return nPos } ; window [ "AscDFH" ] . CChangesBaseContentChange = CChangesBaseContentChange ; function CChangesBaseProperty ( Class , Old , New , Color ) { CChangesBase . call ( this , Class ) ; this . Color = true === Color ? true : false ; this . Old = Old ; this . New = New } CChangesBaseProperty . prototype = Object . create ( CChangesBase . prototype ) ; CChangesBaseProperty . prototype . constructor = CChangesBaseProperty ;
CChangesBaseProperty . prototype . Undo = function ( ) { this . private _SetValue ( this . Old ) } ; CChangesBaseProperty . prototype . Redo = function ( ) { this . private _SetValue ( this . New ) } ; CChangesBaseProperty . prototype . private _SetValue = function ( Value ) { } ; CChangesBaseProperty . prototype . CreateReverseChange = function ( ) { return new this . constructor ( this . Class , this . New , this . Old , this . Color ) } ; CChangesBaseProperty . prototype . Merge = function ( oChange ) { if ( oChange . Class === this . Class && oChange . Type === this . Type ) { this . New = oChange . New ; return false } return true } ;
window [ "AscDFH" ] . CChangesBaseProperty = CChangesBaseProperty ; function CChangesBaseBoolProperty ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseBoolProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseBoolProperty . prototype . constructor = CChangesBaseBoolProperty ; CChangesBaseBoolProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |= 1 ; if ( undefined === this . New ) nFlags |= 2 ; else if ( true === this . New ) nFlags |= 4 ; if ( undefined ===
this . Old ) nFlags |= 8 ; else if ( true === this . Old ) nFlags |= 16 ; Writer . WriteLong ( nFlags ) } ; CChangesBaseBoolProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags = Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) this . New = undefined ; else if ( nFlags & 4 ) this . New = true ; else this . New = false ; if ( nFlags & 8 ) this . Old = undefined ; else if ( nFlags & 16 ) this . Old = true ; else this . Old = false } ; window [ "AscDFH" ] . CChangesBaseBoolProperty = CChangesBaseBoolProperty ; function CChangesBaseDoubleProperty ( Class , Old ,
New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseDoubleProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseDoubleProperty . prototype . constructor = CChangesBaseDoubleProperty ; CChangesBaseDoubleProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |= 1 ; if ( undefined === this . New ) nFlags |= 2 ; if ( undefined === this . Old ) nFlags |= 4 ; Writer . WriteLong ( nFlags ) ; if ( undefined !== this . New ) Writer . WriteDouble ( this . New ) ; if ( undefined !== this . Old ) Writer . WriteDouble ( this . Old ) } ;
CChangesBaseDoubleProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags = Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) this . New = undefined ; else this . New = Reader . GetDouble ( ) ; if ( nFlags & 4 ) this . Old = undefined ; else this . Old = Reader . GetDouble ( ) } ; window [ "AscDFH" ] . CChangesBaseDoubleProperty = CChangesBaseDoubleProperty ; function CChangesBaseObjectProperty ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseObjectProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ;
CChangesBaseObjectProperty . prototype . constructor = CChangesBaseObjectProperty ; CChangesBaseObjectProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |= 1 ; if ( undefined === this . New ) nFlags |= 2 ; if ( undefined === this . Old ) nFlags |= 4 ; Writer . WriteLong ( nFlags ) ; if ( undefined !== this . New && this . New . Write _ToBinary ) this . New . Write _ToBinary ( Writer ) ; if ( undefined !== this . Old && this . Old . Write _ToBinary ) this . Old . Write _ToBinary ( Writer ) } ; CChangesBaseObjectProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags =
Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) if ( true === this . private _IsCreateEmptyObject ( ) ) this . New = this . private _CreateObject ( ) ; else this . New = undefined ; else { this . New = this . private _CreateObject ( ) ; if ( this . New && this . New . Read _FromBinary ) this . New . Read _FromBinary ( Reader ) } if ( nFlags & 4 ) if ( true === this . private _IsCreateEmptyObject ( ) ) this . Old = this . private _CreateObject ( ) ; else this . Old = undefined ; else { this . Old = this . private _CreateObject ( ) ; if ( this . Old && this . Old . Read _FromBinary ) this . Old . Read _FromBinary ( Reader ) } } ;
CChangesBaseObjectProperty . prototype . private _CreateObject = function ( ) { return null } ; CChangesBaseObjectProperty . prototype . private _IsCreateEmptyObject = function ( ) { return false } ; window [ "AscDFH" ] . CChangesBaseObjectProperty = CChangesBaseObjectProperty ; function CChangesBaseLongProperty ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseLongProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseLongProperty . prototype . constructor = CChangesBaseLongProperty ;
CChangesBaseLongProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |= 1 ; if ( undefined === this . New ) nFlags |= 2 ; if ( undefined === this . Old ) nFlags |= 4 ; Writer . WriteLong ( nFlags ) ; if ( undefined !== this . New ) Writer . WriteLong ( this . New ) ; if ( undefined !== this . Old ) Writer . WriteLong ( this . Old ) } ; CChangesBaseLongProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags = Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) this . New = undefined ; else this . New = Reader . GetLong ( ) ;
if ( nFlags & 4 ) this . Old = undefined ; else this . Old = Reader . GetLong ( ) } ; window [ "AscDFH" ] . CChangesBaseLongProperty = CChangesBaseLongProperty ; function CChangesBaseStringProperty ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseStringProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseStringProperty . prototype . constructor = CChangesBaseStringProperty ; CChangesBaseStringProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |=
1 ; if ( undefined === this . New ) nFlags |= 2 ; if ( undefined === this . Old ) nFlags |= 4 ; Writer . WriteLong ( nFlags ) ; if ( undefined !== this . New ) Writer . WriteString2 ( this . New ) ; if ( undefined !== this . Old ) Writer . WriteString2 ( this . Old ) } ; CChangesBaseStringProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags = Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) this . New = undefined ; else this . New = Reader . GetString2 ( ) ; if ( nFlags & 4 ) this . Old = undefined ; else this . Old = Reader . GetString2 ( ) } ; window [ "AscDFH" ] . CChangesBaseStringProperty =
CChangesBaseStringProperty ; function CChangesBaseByteProperty ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseByteProperty . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseByteProperty . prototype . constructor = CChangesBaseByteProperty ; CChangesBaseByteProperty . prototype . WriteToBinary = function ( Writer ) { var nFlags = 0 ; if ( false !== this . Color ) nFlags |= 1 ; if ( undefined === this . New ) nFlags |= 2 ; if ( undefined === this . Old ) nFlags |= 4 ; Writer . WriteLong ( nFlags ) ; if ( undefined !==
this . New ) Writer . WriteByte ( this . New ) ; if ( undefined !== this . Old ) Writer . WriteByte ( this . Old ) } ; CChangesBaseByteProperty . prototype . ReadFromBinary = function ( Reader ) { var nFlags = Reader . GetLong ( ) ; if ( nFlags & 1 ) this . Color = true ; else this . Color = false ; if ( nFlags & 2 ) this . New = undefined ; else this . New = Reader . GetByte ( ) ; if ( nFlags & 4 ) this . Old = undefined ; else this . Old = Reader . GetByte ( ) } ; window [ "AscDFH" ] . CChangesBaseByteProperty = CChangesBaseByteProperty ; function CChangesBaseLongValue ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this ,
Class , Old , New , Color ) } CChangesBaseLongValue . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseLongValue . prototype . constructor = CChangesBaseLongValue ; CChangesBaseLongValue . prototype . WriteToBinary = function ( Writer ) { Writer . WriteLong ( this . New ) ; Writer . WriteLong ( this . Old ) } ; CChangesBaseLongValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetLong ( ) ; this . Old = Reader . GetLong ( ) } ; window [ "AscDFH" ] . CChangesBaseLongValue = CChangesBaseLongValue ; function CChangesBaseBoolValue ( Class , Old ,
New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseBoolValue . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseBoolValue . prototype . constructor = CChangesBaseBoolValue ; CChangesBaseBoolValue . prototype . WriteToBinary = function ( Writer ) { Writer . WriteBool ( this . New ) ; Writer . WriteBool ( this . Old ) } ; CChangesBaseBoolValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetBool ( ) ; this . Old = Reader . GetBool ( ) } ; window [ "AscDFH" ] . CChangesBaseBoolValue = CChangesBaseBoolValue ;
function CChangesBaseObjectValue ( Class , Old , New , Color ) { CChangesBaseObjectProperty . call ( this , Class , Old , New , Color ) } CChangesBaseObjectValue . prototype = Object . create ( CChangesBaseObjectProperty . prototype ) ; CChangesBaseObjectValue . prototype . constructor = CChangesBaseObjectValue ; CChangesBaseObjectValue . prototype . private _IsCreateEmptyObject = function ( ) { return true } ; window [ "AscDFH" ] . CChangesBaseObjectValue = CChangesBaseObjectValue ; function CChangesBaseStringValue ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this ,
Class , Old , New , Color ) } CChangesBaseStringValue . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseStringValue . prototype . constructor = CChangesBaseStringValue ; CChangesBaseStringValue . prototype . WriteToBinary = function ( Writer ) { Writer . WriteString2 ( this . New ) ; Writer . WriteString2 ( this . Old ) } ; CChangesBaseStringValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetString2 ( ) ; this . Old = Reader . GetString2 ( ) } ; window [ "AscDFH" ] . CChangesBaseStringValue = CChangesBaseStringValue ; function CChangesBaseByteValue ( Class ,
Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseByteValue . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseByteValue . prototype . constructor = CChangesBaseByteValue ; CChangesBaseByteValue . prototype . WriteToBinary = function ( Writer ) { Writer . WriteByte ( this . New ) ; Writer . WriteByte ( this . Old ) } ; CChangesBaseByteValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetByte ( ) ; this . Old = Reader . GetByte ( ) } ; window [ "AscDFH" ] . CChangesBaseByteValue = CChangesBaseByteValue ;
function CChangesBaseDoubleValue ( Class , Old , New , Color ) { CChangesBaseProperty . call ( this , Class , Old , New , Color ) } CChangesBaseDoubleValue . prototype = Object . create ( CChangesBaseProperty . prototype ) ; CChangesBaseDoubleValue . prototype . constructor = CChangesBaseDoubleValue ; CChangesBaseDoubleValue . prototype . WriteToBinary = function ( Writer ) { Writer . WriteDouble ( this . New ) ; Writer . WriteDouble ( this . Old ) } ; CChangesBaseDoubleValue . prototype . ReadFromBinary = function ( Reader ) { this . New = Reader . GetDouble ( ) ; this . Old = Reader . GetDouble ( ) } ;
window [ "AscDFH" ] . CChangesBaseDoubleValue = CChangesBaseDoubleValue } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CTableId ( ) { this . m _aPairs = null ; this . m _bTurnOff = false ; this . m _oFactoryClass = { } ; this . Id = null ; this . isInit = false } CTableId . prototype . checkInit = function ( ) { return this . isInit } ; CTableId . prototype . init = function ( ) { this . m _aPairs = { } ; this . m _bTurnOff = false ; this . m _oFactoryClass = { } ; this . Id = AscCommon . g _oIdCounter . Get _NewId ( ) ; this . Add ( this , this . Id ) ; this . private _InitFactoryClass ( ) ; this . isInit = true } ; CTableId . prototype . Add = function ( Class , Id ) { if ( false === this . m _bTurnOff ) { Class . Id = Id ; this . m _aPairs [ Id ] =
Class ; AscCommon . History . Add ( new AscCommon . CChangesTableIdAdd ( this , Id , Class ) ) } } ; CTableId . prototype . TurnOff = function ( ) { this . m _bTurnOff = true } ; CTableId . prototype . TurnOn = function ( ) { this . m _bTurnOff = false } ; CTableId . prototype . IsOn = function ( ) { return ! this . m _bTurnOff } ; CTableId . prototype . Get _ById = function ( Id ) { if ( "" === Id ) return null ; if ( this . m _aPairs [ Id ] ) return this . m _aPairs [ Id ] ; return null } ; CTableId . prototype . Get _ByClass = function ( Class ) { if ( Class . Get _Id ) return Class . Get _Id ( ) ; if ( Class . GetId ( ) ) return Class . GetId ( ) ;
return null } ; CTableId . prototype . Get _Id = function ( ) { return this . Id } ; CTableId . prototype . Clear = function ( ) { this . m _aPairs = { } ; this . m _bTurnOff = false ; this . Id = AscCommon . g _oIdCounter . Get _NewId ( ) ; this . Add ( this , this . Id ) } ; CTableId . prototype . private _InitFactoryClass = function ( ) { this . m _oFactoryClass [ AscDFH . historyitem _type _Paragraph ] = AscCommonWord . Paragraph ; this . m _oFactoryClass [ AscDFH . historyitem _type _TextPr ] = AscCommonWord . ParaTextPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _Hyperlink ] = AscCommonWord . ParaHyperlink ;
this . m _oFactoryClass [ AscDFH . historyitem _type _Drawing ] = AscCommonWord . ParaDrawing ; this . m _oFactoryClass [ AscDFH . historyitem _type _Table ] = AscCommonWord . CTable ; this . m _oFactoryClass [ AscDFH . historyitem _type _TableRow ] = AscCommonWord . CTableRow ; this . m _oFactoryClass [ AscDFH . historyitem _type _TableCell ] = AscCommonWord . CTableCell ; this . m _oFactoryClass [ AscDFH . historyitem _type _DocumentContent ] = AscCommonWord . CDocumentContent ; this . m _oFactoryClass [ AscDFH . historyitem _type _HdrFtr ] = AscCommonWord . CHeaderFooter ; this . m _oFactoryClass [ AscDFH . historyitem _type _AbstractNum ] =
AscCommonWord . CAbstractNum ; this . m _oFactoryClass [ AscDFH . historyitem _type _Comment ] = AscCommon . CComment ; this . m _oFactoryClass [ AscDFH . historyitem _type _Style ] = AscCommonWord . CStyle ; this . m _oFactoryClass [ AscDFH . historyitem _type _CommentMark ] = AscCommon . ParaComment ; this . m _oFactoryClass [ AscDFH . historyitem _type _ParaRun ] = AscCommonWord . ParaRun ; this . m _oFactoryClass [ AscDFH . historyitem _type _Section ] = AscCommonWord . CSectionPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _Field ] = AscCommonWord . ParaField ; this . m _oFactoryClass [ AscDFH . historyitem _type _FootEndNote ] =
AscCommonWord . CFootEndnote ; this . m _oFactoryClass [ AscDFH . historyitem _type _DefaultShapeDefinition ] = AscFormat . DefaultShapeDefinition ; this . m _oFactoryClass [ AscDFH . historyitem _type _CNvPr ] = AscFormat . CNvPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _NvPr ] = AscFormat . NvPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _Ph ] = AscFormat . Ph ; this . m _oFactoryClass [ AscDFH . historyitem _type _UniNvPr ] = AscFormat . UniNvPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _StyleRef ] = AscFormat . StyleRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _FontRef ] =
AscFormat . FontRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _Chart ] = AscFormat . CChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChartSpace ] = AscFormat . CChartSpace ; this . m _oFactoryClass [ AscDFH . historyitem _type _Legend ] = AscFormat . CLegend ; this . m _oFactoryClass [ AscDFH . historyitem _type _Layout ] = AscFormat . CLayout ; this . m _oFactoryClass [ AscDFH . historyitem _type _LegendEntry ] = AscFormat . CLegendEntry ; this . m _oFactoryClass [ AscDFH . historyitem _type _PivotFmt ] = AscFormat . CPivotFmt ; this . m _oFactoryClass [ AscDFH . historyitem _type _DLbl ] =
AscFormat . CDLbl ; this . m _oFactoryClass [ AscDFH . historyitem _type _Marker ] = AscFormat . CMarker ; this . m _oFactoryClass [ AscDFH . historyitem _type _PlotArea ] = AscFormat . CPlotArea ; this . m _oFactoryClass [ AscDFH . historyitem _type _NumFmt ] = AscFormat . CNumFmt ; this . m _oFactoryClass [ AscDFH . historyitem _type _Scaling ] = AscFormat . CScaling ; this . m _oFactoryClass [ AscDFH . historyitem _type _DTable ] = AscFormat . CDTable ; this . m _oFactoryClass [ AscDFH . historyitem _type _LineChart ] = AscFormat . CLineChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _DLbls ] =
AscFormat . CDLbls ; this . m _oFactoryClass [ AscDFH . historyitem _type _UpDownBars ] = AscFormat . CUpDownBars ; this . m _oFactoryClass [ AscDFH . historyitem _type _BarChart ] = AscFormat . CBarChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _BubbleChart ] = AscFormat . CBubbleChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _DoughnutChart ] = AscFormat . CDoughnutChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _OfPieChart ] = AscFormat . COfPieChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _PieChart ] = AscFormat . CPieChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _RadarChart ] =
AscFormat . CRadarChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _ScatterChart ] = AscFormat . CScatterChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _StockChart ] = AscFormat . CStockChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _SurfaceChart ] = AscFormat . CSurfaceChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _BandFmt ] = AscFormat . CBandFmt ; this . m _oFactoryClass [ AscDFH . historyitem _type _AreaChart ] = AscFormat . CAreaChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _ScatterSer ] = AscFormat . CScatterSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _DPt ] =
AscFormat . CDPt ; this . m _oFactoryClass [ AscDFH . historyitem _type _ErrBars ] = AscFormat . CErrBars ; this . m _oFactoryClass [ AscDFH . historyitem _type _MinusPlus ] = AscFormat . CMinusPlus ; this . m _oFactoryClass [ AscDFH . historyitem _type _NumLit ] = AscFormat . CNumLit ; this . m _oFactoryClass [ AscDFH . historyitem _type _NumericPoint ] = AscFormat . CNumericPoint ; this . m _oFactoryClass [ AscDFH . historyitem _type _NumRef ] = AscFormat . CNumRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _TrendLine ] = AscFormat . CTrendLine ; this . m _oFactoryClass [ AscDFH . historyitem _type _Tx ] =
AscFormat . CTx ; this . m _oFactoryClass [ AscDFH . historyitem _type _StrRef ] = AscFormat . CStrRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _StrCache ] = AscFormat . CStrCache ; this . m _oFactoryClass [ AscDFH . historyitem _type _StrPoint ] = AscFormat . CStringPoint ; this . m _oFactoryClass [ AscDFH . historyitem _type _MultiLvlStrRef ] = AscFormat . CMultiLvlStrRef ; this . m _oFactoryClass [ AscDFH . historyitem _type _MultiLvlStrCache ] = AscFormat . CMultiLvlStrCache ; this . m _oFactoryClass [ AscDFH . historyitem _type _YVal ] = AscFormat . CYVal ; this . m _oFactoryClass [ AscDFH . historyitem _type _AreaSeries ] =
AscFormat . CAreaSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _Cat ] = AscFormat . CCat ; this . m _oFactoryClass [ AscDFH . historyitem _type _PictureOptions ] = AscFormat . CPictureOptions ; this . m _oFactoryClass [ AscDFH . historyitem _type _RadarSeries ] = AscFormat . CRadarSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _BarSeries ] = AscFormat . CBarSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _LineSeries ] = AscFormat . CLineSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _PieSeries ] = AscFormat . CPieSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _SurfaceSeries ] =
AscFormat . CSurfaceSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _BubbleSeries ] = AscFormat . CBubbleSeries ; this . m _oFactoryClass [ AscDFH . historyitem _type _ExternalData ] = AscFormat . CExternalData ; this . m _oFactoryClass [ AscDFH . historyitem _type _PivotSource ] = AscFormat . CPivotSource ; this . m _oFactoryClass [ AscDFH . historyitem _type _Protection ] = AscFormat . CProtection ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChartWall ] = AscFormat . CChartWall ; this . m _oFactoryClass [ AscDFH . historyitem _type _View3d ] = AscFormat . CView3d ; this . m _oFactoryClass [ AscDFH . historyitem _type _ChartText ] =
AscFormat . CChartText ; this . m _oFactoryClass [ AscDFH . historyitem _type _ShapeStyle ] = AscFormat . CShapeStyle ; this . m _oFactoryClass [ AscDFH . historyitem _type _Xfrm ] = AscFormat . CXfrm ; this . m _oFactoryClass [ AscDFH . historyitem _type _SpPr ] = AscFormat . CSpPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _ClrScheme ] = AscFormat . ClrScheme ; this . m _oFactoryClass [ AscDFH . historyitem _type _ClrMap ] = AscFormat . ClrMap ; this . m _oFactoryClass [ AscDFH . historyitem _type _ExtraClrScheme ] = AscFormat . ExtraClrScheme ; this . m _oFactoryClass [ AscDFH . historyitem _type _FontCollection ] =
AscFormat . FontCollection ; this . m _oFactoryClass [ AscDFH . historyitem _type _FontScheme ] = AscFormat . FontScheme ; this . m _oFactoryClass [ AscDFH . historyitem _type _FormatScheme ] = AscFormat . FmtScheme ; this . m _oFactoryClass [ AscDFH . historyitem _type _ThemeElements ] = AscFormat . ThemeElements ; this . m _oFactoryClass [ AscDFH . historyitem _type _HF ] = AscFormat . HF ; this . m _oFactoryClass [ AscDFH . historyitem _type _BgPr ] = AscFormat . CBgPr ; this . m _oFactoryClass [ AscDFH . historyitem _type _Bg ] = AscFormat . CBg ; this . m _oFactoryClass [ AscDFH . historyitem _type _PrintSettings ] =
AscFormat . CPrintSettings ; this . m _oFactoryClass [ AscDFH . historyitem _type _HeaderFooterChart ] = AscFormat . CHeaderFooterChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _PageMarginsChart ] = AscFormat . CPageMarginsChart ; this . m _oFactoryClass [ AscDFH . historyitem _type _PageSetup ] = AscFormat . CPageSetup ; this . m _oFactoryClass [ AscDFH . historyitem _type _Shape ] = AscFormat . CShape ; this . m _oFactoryClass [ AscDFH . historyitem _type _DispUnits ] = AscFormat . CDispUnits ; this . m _oFactoryClass [ AscDFH . historyitem _type _GroupShape ] = AscFormat . CGroupShape ;
this . m _oFactoryClass [ AscDFH . historyitem _type _ImageShape ] = AscFormat . CImageShape ; this . m _oFactoryClass [ AscDFH . historyitem _type _Geometry ] = AscFormat . Geometry ; this . m _oFactoryClass [ AscDFH . historyitem _type _Path ] = AscFormat . Path ; this . m _oFactoryClass [ AscDFH . historyitem _type _TextBody ] = AscFormat . CTextBody ; this . m _oFactoryClass [ AscDFH . historyitem _type _CatAx ] = AscFormat . CCatAx ; this . m _oFactoryClass [ AscDFH . historyitem _type _ValAx ] = AscFormat . CValAx ; this . m _oFactoryClass [ AscDFH . historyitem _type _WrapPolygon ] = AscCommonWord . CWrapPolygon ;
this . m _oFactoryClass [ AscDFH . historyitem _type _DateAx ] = AscFormat . CDateAx ; this . m _oFactoryClass [ AscDFH . historyitem _type _SerAx ] = AscFormat . CSerAx ; this . m _oFactoryClass [ AscDFH . historyitem _type _Title ] = AscFormat . CTitle ; this . m _oFactoryClass [ AscDFH . historyitem _type _OleObject ] = AscFormat . COleObject ; this . m _oFactoryClass [ AscDFH . historyitem _type _Cnx ] = AscFormat . CConnectionShape ; this . m _oFactoryClass [ AscDFH . historyitem _type _DrawingContent ] = AscFormat . CDrawingDocContent ; this . m _oFactoryClass [ AscDFH . historyitem _type _Math ] =
AscCommonWord . ParaMath ; this . m _oFactoryClass [ AscDFH . historyitem _type _MathContent ] = AscCommonWord . CMathContent ; this . m _oFactoryClass [ AscDFH . historyitem _type _acc ] = AscCommonWord . CAccent ; this . m _oFactoryClass [ AscDFH . historyitem _type _bar ] = AscCommonWord . CBar ; this . m _oFactoryClass [ AscDFH . historyitem _type _box ] = AscCommonWord . CBox ; this . m _oFactoryClass [ AscDFH . historyitem _type _borderBox ] = AscCommonWord . CBorderBox ; this . m _oFactoryClass [ AscDFH . historyitem _type _delimiter ] = AscCommonWord . CDelimiter ; this . m _oFactoryClass [ AscDFH . historyitem _type _eqArr ] =
AscCommonWord . CEqArray ; this . m _oFactoryClass [ AscDFH . historyitem _type _frac ] = AscCommonWord . CFraction ; this . m _oFactoryClass [ AscDFH . historyitem _type _mathFunc ] = AscCommonWord . CMathFunc ; this . m _oFactoryClass [ AscDFH . historyitem _type _groupChr ] = AscCommonWord . CGroupCharacter ; this . m _oFactoryClass [ AscDFH . historyitem _type _lim ] = AscCommonWord . CLimit ; this . m _oFactoryClass [ AscDFH . historyitem _type _matrix ] = AscCommonWord . CMathMatrix ; this . m _oFactoryClass [ AscDFH . historyitem _type _nary ] = AscCommonWord . CNary ; this . m _oFactoryClass [ AscDFH . historyitem _type _phant ] =
AscCommonWord . CPhantom ; this . m _oFactoryClass [ AscDFH . historyitem _type _rad ] = AscCommonWord . CRadical ; this . m _oFactoryClass [ AscDFH . historyitem _type _deg _subsup ] = AscCommonWord . CDegreeSubSup ; this . m _oFactoryClass [ AscDFH . historyitem _type _deg ] = AscCommonWord . CDegree ; this . m _oFactoryClass [ AscDFH . historyitem _type _BlockLevelSdt ] = AscCommonWord . CBlockLevelSdt ; this . m _oFactoryClass [ AscDFH . historyitem _type _InlineLevelSdt ] = AscCommonWord . CInlineLevelSdt ; this . m _oFactoryClass [ AscDFH . historyitem _type _ParaBookmark ] = AscCommonWord . CParagraphBookmark ;
this . m _oFactoryClass [ AscDFH . historyitem _type _Num ] = AscCommonWord . CNum ; this . m _oFactoryClass [ AscDFH . historyitem _type _PresentationField ] = AscCommonWord . CPresentationField ; this . m _oFactoryClass [ AscDFH . historyitem _type _RelSizeAnchor ] = AscFormat . CRelSizeAnchor ; this . m _oFactoryClass [ AscDFH . historyitem _type _AbsSizeAnchor ] = AscFormat . CAbsSizeAnchor ; this . m _oFactoryClass [ AscDFH . historyitem _type _ParaRevisionMove ] = AscCommon . CParaRevisionMove ; this . m _oFactoryClass [ AscDFH . historyitem _type _RunRevisionMove ] = AscCommon . CRunRevisionMove ;
this . m _oFactoryClass [ AscDFH . historyitem _type _DocPart ] = AscCommon . CDocPart ; this . m _oFactoryClass [ AscDFH . historyitem _type _SlicerView ] = AscFormat . CSlicer ; if ( window [ "AscCommonSlide" ] ) { this . m _oFactoryClass [ AscDFH . historyitem _type _Slide ] = AscCommonSlide . Slide ; this . m _oFactoryClass [ AscDFH . historyitem _type _SlideLayout ] = AscCommonSlide . SlideLayout ; this . m _oFactoryClass [ AscDFH . historyitem _type _SlideMaster ] = AscCommonSlide . MasterSlide ; this . m _oFactoryClass [ AscDFH . historyitem _type _SlideComments ] = AscCommonSlide . SlideComments ;
this . m _oFactoryClass [ AscDFH . historyitem _type _PropLocker ] = AscCommonSlide . PropLocker ; this . m _oFactoryClass [ AscDFH . historyitem _type _NotesMaster ] = AscCommonSlide . CNotesMaster ; this . m _oFactoryClass [ AscDFH . historyitem _type _Notes ] = AscCommonSlide . CNotes ; this . m _oFactoryClass [ AscDFH . historyitem _type _PresentationSection ] = AscCommonSlide . CPrSection } this . m _oFactoryClass [ AscDFH . historyitem _type _Theme ] = AscFormat . CTheme ; this . m _oFactoryClass [ AscDFH . historyitem _type _GraphicFrame ] = AscFormat . CGraphicFrame ; if ( window [ "AscCommonExcel" ] ) { this . m _oFactoryClass [ AscDFH . historyitem _type _Sparkline ] =
AscCommonExcel . sparklineGroup ; this . m _oFactoryClass [ AscDFH . historyitem _type _PivotTableDefinition ] = Asc . CT _pivotTableDefinition ; this . m _oFactoryClass [ AscDFH . historyitem _type _PivotWorksheetSource ] = Asc . CT _WorksheetSource ; this . m _oFactoryClass [ AscDFH . historyitem _type _NamedSheetView ] = Asc . CT _NamedSheetView ; this . m _oFactoryClass [ AscDFH . historyitem _type _DataValidation ] = AscCommonExcel . CDataValidation } this . m _oFactoryClass [ AscDFH . historyitem _type _DocumentMacros ] = AscCommon . CDocumentMacros } ; CTableId . prototype . GetClassFromFactory =
function ( nType ) { if ( this . m _oFactoryClass [ nType ] ) return new this . m _oFactoryClass [ nType ] ; return null } ; CTableId . prototype . Refresh _RecalcData = function ( Data ) { } ; CTableId . prototype . Unlock = function ( Data ) { } ; window [ "AscCommon" ] . g _oTableId = new CTableId ; window [ "AscCommon" ] . CTableId = CTableId } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CChangesTableIdAdd ( Class , Id , NewClass ) { AscDFH . CChangesBase . call ( this , Class ) ; this . Id = Id ; this . NewClass = NewClass } CChangesTableIdAdd . prototype = Object . create ( AscDFH . CChangesBase . prototype ) ; CChangesTableIdAdd . prototype . constructor = CChangesTableIdAdd ; CChangesTableIdAdd . prototype . Type = AscDFH . historyitem _TableId _Add ; CChangesTableIdAdd . prototype . Undo = function ( ) { } ; CChangesTableIdAdd . prototype . Redo = function ( ) { } ; CChangesTableIdAdd . prototype . WriteToBinary = function ( Writer ) { Writer . WriteString2 ( this . Id ) ;
this . NewClass . Write _ToBinary2 ( Writer ) } ; CChangesTableIdAdd . prototype . ReadFromBinary = function ( Reader ) { this . Id = Reader . GetString2 ( ) ; this . NewClass = this . private _ReadClassFromBinary ( Reader ) } ; CChangesTableIdAdd . prototype . Load = function ( Color ) { this . Class . m _aPairs [ this . Id ] = this . NewClass } ; CChangesTableIdAdd . prototype . RefreshRecalcData = function ( ) { } ; CChangesTableIdAdd . prototype . private _ReadClassFromBinary = function ( Reader ) { var oTableId = this . Class ; var ElementType = Reader . GetLong ( ) ; oTableId . TurnOff ( ) ; var Element = oTableId . GetClassFromFactory ( ElementType ) ;
if ( null !== Element ) Element . Read _FromBinary2 ( Reader ) ; oTableId . TurnOn ( ) ; return Element } ; CChangesTableIdAdd . prototype . CreateReverseChange = function ( ) { return null } ; window [ "AscCommon" ] . CChangesTableIdAdd = CChangesTableIdAdd ; function CChangesTableIdDescription ( Class , FileCheckSum , FileSize , Description , ItemsCount , PointIndex , StartPoint , LastPoint , SumIndex , DeletedIndex ) { AscDFH . CChangesBase . call ( this , Class ) ; this . FileCheckSum = FileCheckSum ; this . FileSize = FileSize ; this . Description = Description ; this . ItemsCount = ItemsCount ;
this . PointIndex = PointIndex ; this . StartPoint = StartPoint ; this . LastPoint = LastPoint ; this . SumIndex = SumIndex ; this . DeletedIndex = DeletedIndex ; this . VersionString = "0.0.0.0.@@Rev" } CChangesTableIdDescription . prototype = Object . create ( AscDFH . CChangesBase . prototype ) ; CChangesTableIdDescription . prototype . constructor = CChangesTableIdDescription ; CChangesTableIdDescription . prototype . Type = AscDFH . historyitem _TableId _Description ; CChangesTableIdDescription . prototype . Undo = function ( ) { } ; CChangesTableIdDescription . prototype . Redo =
function ( ) { } ; CChangesTableIdDescription . prototype . WriteToBinary = function ( Writer ) { Writer . WriteLong ( this . FileCheckSum ) ; Writer . WriteLong ( this . FileSize ) ; Writer . WriteLong ( this . Description ) ; Writer . WriteLong ( this . ItemsCount ) ; Writer . WriteLong ( this . PointIndex ) ; Writer . WriteLong ( this . StartPoint ) ; Writer . WriteLong ( this . LastPoint ) ; Writer . WriteLong ( this . SumIndex ) ; Writer . WriteLong ( null === this . DeletedIndex ? - 10 : this . DeletedIndex ) ; Writer . WriteString2 ( this . VersionString ) } ; CChangesTableIdDescription . prototype . ReadFromBinary =
function ( Reader ) { this . FileCheckSum = Reader . GetLong ( ) ; this . FileSize = Reader . GetLong ( ) ; this . Description = Reader . GetLong ( ) ; this . ItemsCount = Reader . GetLong ( ) ; this . PointIndex = Reader . GetLong ( ) ; this . StartPoint = Reader . GetLong ( ) ; this . LastPoint = Reader . GetLong ( ) ; this . SumIndex = Reader . GetLong ( ) ; this . DeletedIndex = Reader . GetLong ( ) ; this . VersionString = Reader . GetString2 ( ) } ; CChangesTableIdDescription . prototype . Load = function ( Color ) { } ; CChangesTableIdDescription . prototype . RefreshRecalcData = function ( ) { } ; CChangesTableIdDescription . prototype . CreateReverseChange =
function ( ) { return null } ; window [ "AscCommon" ] . CChangesTableIdDescription = CChangesTableIdDescription ; function CChangesCommonAddWaterMark ( Class , Url ) { AscDFH . CChangesBase . call ( this , Class ) ; this . Url = Url ? Url : "" } CChangesCommonAddWaterMark . prototype = Object . create ( AscDFH . CChangesBase . prototype ) ; CChangesCommonAddWaterMark . prototype . constructor = CChangesCommonAddWaterMark ; CChangesCommonAddWaterMark . prototype . Type = AscDFH . historyitem _Common _AddWatermark ; CChangesCommonAddWaterMark . prototype . Undo = function ( ) { } ; CChangesCommonAddWaterMark . prototype . Redo =
function ( ) { } ; CChangesCommonAddWaterMark . prototype . WriteToBinary = function ( Writer ) { Writer . WriteString2 ( this . Url ) } ; CChangesCommonAddWaterMark . prototype . ReadFromBinary = function ( Reader ) { this . Url = Reader . GetString2 ( ) } ; CChangesCommonAddWaterMark . prototype . Load = function ( Color ) { var sUrl = this . Url ; if ( editor && editor . WordControl && editor . WordControl . m _oLogicDocument ) { var oLogicDocument = editor . WordControl . m _oLogicDocument ; if ( oLogicDocument instanceof AscCommonWord . CDocument ) { var oParaDrawing = oLogicDocument . DrawingObjects . getTrialImage ( sUrl ) ;
var oFirstParagraph = oLogicDocument . Get _FirstParagraph ( ) ; AscFormat . ExecuteNoHistory ( function ( ) { var oRun = new AscCommonWord . ParaRun ; oRun . Content . splice ( 0 , 0 , oParaDrawing ) ; oFirstParagraph . Content . splice ( 0 , 0 , oRun ) ; oLogicDocument . DrawingObjects . addGraphicObject ( oParaDrawing ) } , this , [ ] ) } else if ( oLogicDocument instanceof AscCommonSlide . CPresentation ) if ( oLogicDocument . Slides [ 0 ] ) { var oDrawing = oLogicDocument . Slides [ 0 ] . graphicObjects . createWatermarkImage ( sUrl ) ; oDrawing . spPr . xfrm . offX = ( oLogicDocument . Width - oDrawing . spPr . xfrm . extX ) /
2 ; oDrawing . spPr . xfrm . offY = ( oLogicDocument . Height - oDrawing . spPr . xfrm . extY ) / 2 ; oDrawing . parent = oLogicDocument . Slides [ 0 ] ; oLogicDocument . Slides [ 0 ] . cSld . spTree . push ( oDrawing ) } } else { var oWsModel = window [ "Asc" ] [ "editor" ] . wbModel . aWorksheets [ 0 ] ; if ( oWsModel ) { var objectRender = new AscFormat . DrawingObjects ; var oNewDrawing = objectRender . createDrawingObject ( AscCommon . c _oAscCellAnchorType . cellanchorAbsolute ) ; var oImage = AscFormat . DrawingObjectsController . prototype . createWatermarkImage ( sUrl ) ; oNewDrawing . ext . cx = oImage . spPr . xfrm . extX ;
oNewDrawing . ext . cy = oImage . spPr . xfrm . extY ; oNewDrawing . graphicObject = oImage ; oWsModel . Drawings . push ( oNewDrawing ) } } } ; CChangesCommonAddWaterMark . prototype . RefreshRecalcData = function ( ) { } ; CChangesCommonAddWaterMark . prototype . CreateReverseChange = function ( ) { return null } ; window [ "AscCommon" ] . CChangesCommonAddWaterMark = CChangesCommonAddWaterMark } ) ( window ) ; AscDFH . changesFactory [ AscDFH . historyitem _TableId _Add ] = AscCommon . CChangesTableIdAdd ; AscDFH . changesFactory [ AscDFH . historyitem _TableId _Description ] = AscCommon . CChangesTableIdDescription ;
AscDFH . changesFactory [ AscDFH . historyitem _Common _AddWatermark ] = AscCommon . CChangesCommonAddWaterMark ; AscDFH . changesRelationMap [ AscDFH . historyitem _TableId _Add ] = [ AscDFH . historyitem _TableId _Add ] ; AscDFH . changesRelationMap [ AscDFH . historyitem _TableId _Reset ] = [ AscDFH . historyitem _TableId _Reset ] ; AscDFH . changesRelationMap [ AscDFH . historyitem _TableId _Description ] = [ AscDFH . historyitem _TableId _Description ] ; AscDFH . changesRelationMap [ AscDFH . historyitem _Common _AddWatermark ] = [ AscDFH . historyitem _Common _AddWatermark ] ; "use strict" ;
( function ( window , undefined ) { function asc _CDownloadOptions ( fileType , isDownloadEvent ) { this . fileType = fileType ; this . isDownloadEvent = ! ! isDownloadEvent ; this . advancedOptions = null ; this . compatible = false ; this . isNaturalDownload = false ; this . errorDirect = null ; this . oDocumentMailMerge = null ; this . oMailMergeSendData = null ; this . callback = null } asc _CDownloadOptions . prototype . asc _setFileType = function ( fileType ) { this . fileType = fileType } ; asc _CDownloadOptions . prototype . asc _setIsDownloadEvent = function ( isDownloadEvent ) { this . isDownloadEvent =
isDownloadEvent } ; asc _CDownloadOptions . prototype . asc _setAdvancedOptions = function ( advancedOptions ) { this . advancedOptions = advancedOptions } ; asc _CDownloadOptions . prototype . asc _setCompatible = function ( compatible ) { this . compatible = compatible } ; function asc _CAdvancedOptions ( opt ) { this . codePages = function ( ) { var arr = [ ] , c , encodings = opt [ "encodings" ] ; for ( var i = 0 ; i < encodings . length ; i ++ ) { c = new asc _CCodePage ; c . init ( encodings [ i ] ) ; arr . push ( c ) } return arr } ( ) ; this . recommendedSettings = new asc _CTextOptions ( opt [ "codepage" ] , opt [ "delimiter" ] ) ;
this . data = opt [ "data" ] } asc _CAdvancedOptions . prototype . asc _getCodePages = function ( ) { return this . codePages } ; asc _CAdvancedOptions . prototype . asc _getRecommendedSettings = function ( ) { return this . recommendedSettings } ; asc _CAdvancedOptions . prototype . asc _getData = function ( ) { return this . data } ; function asc _CTextOptions ( codepage , delimiter , delimiterChar ) { this . codePage = codepage ; this . delimiter = delimiter ; this . delimiterChar = delimiterChar ; this . numberDecimalSeparator = null ; this . numberGroupSeparator = null } asc _CTextOptions . prototype . asc _getDelimiter =
function ( ) { return this . delimiter } ; asc _CTextOptions . prototype . asc _setDelimiter = function ( v ) { this . delimiter = v } ; asc _CTextOptions . prototype . asc _getDelimiterChar = function ( ) { return this . delimiterChar } ; asc _CTextOptions . prototype . asc _setDelimiterChar = function ( v ) { this . delimiterChar = v } ; asc _CTextOptions . prototype . asc _getCodePage = function ( ) { return this . codePage } ; asc _CTextOptions . prototype . asc _setCodePage = function ( v ) { this . codePage = v } ; asc _CTextOptions . prototype . asc _getNumberDecimalSeparator = function ( ) { return this . numberDecimalSeparator !==
null ? this . numberDecimalSeparator : AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator } ; asc _CTextOptions . prototype . asc _getNumberGroupSeparator = function ( ) { return this . numberGroupSeparator !== null ? this . numberGroupSeparator : AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator } ; asc _CTextOptions . prototype . asc _setNumberDecimalSeparator = function ( v ) { this . numberDecimalSeparator = v } ; asc _CTextOptions . prototype . asc _setNumberGroupSeparator = function ( v ) { this . numberGroupSeparator = v } ; asc _CTextOptions . prototype . asc _getNumberDecimalSeparatorsArr =
function ( ) { var arr = [ "," , "." ] ; if ( arr . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ) arr . push ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; return arr } ; asc _CTextOptions . prototype . asc _getNumberGroupSeparatorsArr = function ( ) { var arr = [ "," , "." , "'" ] ; if ( arr . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator ) ) arr . push ( AscCommon . g _oDefaultCultureInfo . NumberGroupSeparator ) ; return arr } ; function asc _CDRMAdvancedOptions ( password ) { this . password = password } asc _CDRMAdvancedOptions . prototype . asc _getPassword =
function ( ) { return this . password } ; asc _CDRMAdvancedOptions . prototype . asc _setPassword = function ( v ) { this . password = v } ; function asc _CCodePage ( ) { this . codePageName = null ; this . codePage = null ; this . text = null ; this . lcid = null } asc _CCodePage . prototype . init = function ( encoding ) { this . codePageName = encoding [ "name" ] ; this . codePage = encoding [ "codepage" ] ; this . text = encoding [ "text" ] ; this . lcid = encoding [ "lcid" ] } ; asc _CCodePage . prototype . asc _getCodePageName = function ( ) { return this . codePageName } ; asc _CCodePage . prototype . asc _setCodePageName =
function ( v ) { this . codePageName = v } ; asc _CCodePage . prototype . asc _getCodePage = function ( ) { return this . codePage } ; asc _CCodePage . prototype . asc _setCodePage = function ( v ) { this . codePage = v } ; asc _CCodePage . prototype . asc _getText = function ( ) { return this . text } ; asc _CCodePage . prototype . asc _setText = function ( v ) { this . text = v } ; asc _CCodePage . prototype . asc _getLcid = function ( ) { return this . lcid } ; asc _CCodePage . prototype . asc _setLcid = function ( v ) { this . lcid = v } ; function asc _CDelimiter ( delimiter ) { this . delimiterName = delimiter } asc _CDelimiter . prototype . asc _getDelimiterName =
function ( ) { return this . delimiterName } ; asc _CDelimiter . prototype . asc _setDelimiterName = function ( v ) { this . delimiterName = v } ; function asc _CFormulaGroup ( name ) { this . groupName = name ; this . formulasArray = [ ] } asc _CFormulaGroup . prototype . asc _getGroupName = function ( ) { return this . groupName } ; asc _CFormulaGroup . prototype . asc _getFormulasArray = function ( ) { return this . formulasArray } ; asc _CFormulaGroup . prototype . asc _addFormulaElement = function ( o ) { return this . formulasArray . push ( o ) } ; function asc _CFormula ( o ) { this . name = o . name } asc _CFormula . prototype . asc _getName =
function ( ) { return this . name } ; asc _CFormula . prototype . asc _getLocaleName = function ( ) { return AscCommonExcel . cFormulaFunctionToLocale ? AscCommonExcel . cFormulaFunctionToLocale [ this . name ] : this . name } ; var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "Asc" ] . asc _CDownloadOptions = window [ "Asc" ] [ "asc_CDownloadOptions" ] = asc _CDownloadOptions ; prot = asc _CDownloadOptions . prototype ; prot [ "asc_setFileType" ] = prot . asc _setFileType ; prot [ "asc_setIsDownloadEvent" ] = prot . asc _setIsDownloadEvent ;
prot [ "asc_setAdvancedOptions" ] = prot . asc _setAdvancedOptions ; prot [ "asc_setCompatible" ] = prot . asc _setCompatible ; window [ "AscCommon" ] . asc _CAdvancedOptions = asc _CAdvancedOptions ; prot = asc _CAdvancedOptions . prototype ; prot [ "asc_getCodePages" ] = prot . asc _getCodePages ; prot [ "asc_getRecommendedSettings" ] = prot . asc _getRecommendedSettings ; prot [ "asc_getData" ] = prot . asc _getData ; window [ "Asc" ] . asc _CTextOptions = window [ "Asc" ] [ "asc_CTextOptions" ] = asc _CTextOptions ; prot = asc _CTextOptions . prototype ; prot [ "asc_getDelimiter" ] = prot . asc _getDelimiter ;
prot [ "asc_setDelimiter" ] = prot . asc _setDelimiter ; prot [ "asc_getDelimiterChar" ] = prot . asc _getDelimiterChar ; prot [ "asc_setDelimiterChar" ] = prot . asc _setDelimiterChar ; prot [ "asc_getCodePage" ] = prot . asc _getCodePage ; prot [ "asc_setCodePage" ] = prot . asc _setCodePage ; prot [ "asc_setNumberDecimalSeparator" ] = prot . asc _setNumberDecimalSeparator ; prot [ "asc_setNumberGroupSeparator" ] = prot . asc _setNumberGroupSeparator ; window [ "Asc" ] . asc _CDRMAdvancedOptions = window [ "Asc" ] [ "asc_CDRMAdvancedOptions" ] = asc _CDRMAdvancedOptions ; prot = asc _CDRMAdvancedOptions . prototype ;
prot [ "asc_getPassword" ] = prot . asc _getPassword ; prot [ "asc_setPassword" ] = prot . asc _setPassword ; prot = asc _CCodePage . prototype ; prot [ "asc_getCodePageName" ] = prot . asc _getCodePageName ; prot [ "asc_setCodePageName" ] = prot . asc _setCodePageName ; prot [ "asc_getCodePage" ] = prot . asc _getCodePage ; prot [ "asc_setCodePage" ] = prot . asc _setCodePage ; prot [ "asc_getText" ] = prot . asc _getText ; prot [ "asc_setText" ] = prot . asc _setText ; prot [ "asc_getLcid" ] = prot . asc _getLcid ; prot [ "asc_setLcid" ] = prot . asc _setLcid ; prot = asc _CDelimiter . prototype ; prot [ "asc_getDelimiterName" ] =
prot . asc _getDelimiterName ; prot [ "asc_setDelimiterName" ] = prot . asc _setDelimiterName ; window [ "AscCommon" ] . asc _CFormulaGroup = asc _CFormulaGroup ; prot = asc _CFormulaGroup . prototype ; prot [ "asc_getGroupName" ] = prot . asc _getGroupName ; prot [ "asc_getFormulasArray" ] = prot . asc _getFormulasArray ; prot [ "asc_addFormulaElement" ] = prot . asc _addFormulaElement ; window [ "AscCommon" ] . asc _CFormula = asc _CFormula ; prot = asc _CFormula . prototype ; prot [ "asc_getName" ] = prot . asc _getName ; prot [ "asc_getLocaleName" ] = prot . asc _getLocaleName } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { window [ "AscFonts" ] = window [ "AscFonts" ] || { } ; window [ "AscFonts" ] . isEngineReady = false ; window [ "AscFonts" ] . api = null ; window [ "AscFonts" ] . onSuccess = null ; window [ "AscFonts" ] . onError = null ; window [ "AscFonts" ] . maxLoadingIndex = 5 ; window [ "AscFonts" ] . curLoadingIndex = 0 ; window [ "AscFonts" ] . allocate = function ( size ) { if ( typeof Uint8Array != "undefined" && ! window . opera ) return new Uint8Array ( size ) ; var arr = new Array ( size ) ; for ( var i = 0 ; i < size ; i ++ ) arr [ i ] = 0 ; return arr } ; window [ "AscFonts" ] . allocateData = function ( size ) { return { data : window [ "AscFonts" ] . allocate ( size ) } } ;
window [ "AscFonts" ] . onLoadModule = function ( ) { if ( window [ "AscFonts" ] . isEngineReady ) return ; ++ window [ "AscFonts" ] . curLoadingIndex ; if ( window [ "AscFonts" ] . curLoadingIndex == window [ "AscFonts" ] . maxLoadingIndex ) { if ( window [ "AscFonts" ] . api ) { window [ "AscFonts" ] . isEngineReady = true ; window [ "AscFonts" ] . onSuccess . call ( window [ "AscFonts" ] . api ) } delete window [ "AscFonts" ] . curLoadingIndex ; delete window [ "AscFonts" ] . maxLoadingIndex ; delete window [ "AscFonts" ] . api ; delete window [ "AscFonts" ] . onSuccess ; delete window [ "AscFonts" ] . onError } } ;
window [ "AscFonts" ] . load = function ( api , onSuccess , onError ) { window [ "AscFonts" ] . api = api ; window [ "AscFonts" ] . onSuccess = onSuccess ; window [ "AscFonts" ] . onError = onError ; if ( window [ "NATIVE_EDITOR_ENJINE" ] === true || window [ "IS_NATIVE_EDITOR" ] === true || window [ "Native" ] !== undefined ) { window [ "AscFonts" ] . isEngineReady = true ; window [ "AscFonts" ] . onSuccess . call ( window [ "AscFonts" ] . api ) ; delete window [ "AscFonts" ] . curLoadingIndex ; delete window [ "AscFonts" ] . maxLoadingIndex ; delete window [ "AscFonts" ] . api ; delete window [ "AscFonts" ] . onSuccess ;
delete window [ "AscFonts" ] . onError ; return } var url = "../../../../sdkjs/common/libfont" ; var useWasm = false ; var webAsmObj = window [ "WebAssembly" ] ; if ( typeof webAsmObj === "object" ) if ( typeof webAsmObj [ "Memory" ] === "function" ) if ( typeof webAsmObj [ "instantiateStreaming" ] === "function" || typeof webAsmObj [ "instantiate" ] === "function" ) useWasm = true ; useWasm ? url += "/wasm" : url += "/js" ; if ( ! useWasm ) window [ "AscFonts" ] . onLoadModule ( ) ; var _onSuccess = function ( ) { } ; var _onError = function ( ) { window [ "AscFonts" ] . onError ( ) } ; if ( window [ "AscNotLoadAllScript" ] ) { AscCommon . loadScript ( url +
"/engine.js" , _onSuccess , _onError ) ; AscCommon . loadScript ( url + "/file.js" , _onSuccess , _onError ) ; AscCommon . loadScript ( url + "/manager.js" , _onSuccess , _onError ) } else AscCommon . loadScript ( url + "/fonts.js?" + window . CP _urlArgs , _onSuccess , _onError ) } ; function FontStream ( data , size ) { this . data = data ; this . size = size } window [ "AscFonts" ] . FontStream = FontStream ; window [ "AscFonts" ] . FT _Common = { UintToInt : function ( v ) { return v > 2147483647 ? v - 4294967296 : v } , UShort _To _Short : function ( v ) { return v > 32767 ? v - 65536 : v } , IntToUInt : function ( v ) { return v <
0 ? v + 4294967296 : v } , Short _To _UShort : function ( v ) { return v < 0 ? v + 65536 : v } , memset : function ( d , v , s ) { for ( var i = 0 ; i < s ; i ++ ) d [ i ] = v } } ; function CPointer ( ) { this . obj = null ; this . data = null ; this . pos = 0 } function FT _Memory ( ) { this . canvas = document . createElement ( "canvas" ) ; this . canvas . width = 1 ; this . canvas . height = 1 ; this . ctx = this . canvas . getContext ( "2d" ) ; this . Alloc = function ( size ) { var p = new CPointer ; p . obj = this . ctx . createImageData ( 1 , parseInt ( ( size + 3 ) / 4 ) ) ; p . data = p . obj . data ; p . pos = 0 ; return p } ; this . AllocHeap = function ( ) { } ; this . CreateStream =
function ( size ) { var _size = parseInt ( ( size + 3 ) / 4 ) ; var obj = this . ctx . createImageData ( 1 , _size ) ; return new FontStream ( obj . data , _size ) } } window [ "AscFonts" ] . FT _Memory = FT _Memory ; window [ "AscFonts" ] . g _memory = new FT _Memory ; function CRasterMemory ( ) { this . width = 0 ; this . height = 0 ; this . pitch = 0 ; this . m _oBuffer = null ; this . CheckSize = function ( w , h ) { if ( this . width < w + 1 || this . height < h + 1 ) { this . width = Math . max ( this . width , w + 1 ) ; this . pitch = 4 * this . width ; this . height = Math . max ( this . height , h + 1 ) ; this . m _oBuffer = null ; this . m _oBuffer = window [ "AscFonts" ] . g _memory . ctx . createImageData ( this . width ,
this . height ) } } } window [ "AscFonts" ] . raster _memory = new CRasterMemory ; window [ "AscFonts" ] . registeredFontManagers = [ ] ; window [ "AscFonts" ] . getDefaultBlitting = function ( ) { return AscCommon . AscBrowser . isIE && ! AscCommon . AscBrowser . isArm ? true : false } ; window [ "AscFonts" ] . setDefaultBlitting = function ( value ) { var defaultValue = window [ "AscFonts" ] . getDefaultBlitting ( ) ; var newValue = value ? defaultValue : ! defaultValue ; if ( window [ "AscFonts" ] . use _map _blitting === newValue ) return ; window [ "AscFonts" ] . use _map _blitting = newValue ; var arrManagers =
window [ "AscFonts" ] . registeredFontManagers ; for ( var i = 0 , count = arrManagers . length ; i < count ; i ++ ) { arrManagers [ i ] . ClearFontsRasterCache ( ) ; arrManagers [ i ] . InitializeRasterMemory ( ) } } ; window [ "AscFonts" ] . use _map _blitting = window [ "AscFonts" ] . getDefaultBlitting ( ) } ) ( window , undefined ) ; "use strict" ;
( function ( window , undefined ) { var CColor = AscCommon . CColor ; var c _oAscConfirm = { ConfirmReplaceRange : 0 , ConfirmPutMergeRange : 1 } ; var c _oAscMergeOptions = { Disabled : - 1 , None : 0 , Merge : 1 , MergeCenter : 2 , MergeAcross : 3 } ; var c _oAscSortOptions = { Ascending : 1 , Descending : 2 , ByColorFill : 3 , ByColorFont : 4 , ByIcon : 5 , ByValue : 6 } ; var c _oAscBorderOptions = { Top : 0 , Right : 1 , Bottom : 2 , Left : 3 , DiagD : 4 , DiagU : 5 , InnerV : 6 , InnerH : 7 } ; var c _oAscCleanOptions = { All : 0 , Text : 1 , Format : 2 , Formula : 4 , Comments : 5 , Hyperlinks : 6 , Sparklines : 7 , SparklineGroups : 8 } ; var c _oAscCalculateType =
{ WorkbookOnlyChanged : 1 , ActiveSheet : 2 , Workbook : 3 , All : 4 } ; var c _oAscDrawDepOptions = { Master : 0 , Slave : 1 , Clear : 2 } ; var c _oAscSelectionDialogType = { None : 0 , FormatTable : 1 , Chart : 2 , FormatTableChangeRange : 4 , CustomSort : 5 , PivotTableData : 6 , PivotTableReport : 7 , PrintTitles : 8 , Function : 9 , DataValidation : 10 } ; var c _oAscScrollType = { ScrollVertical : 1 , ScrollHorizontal : 2 } ; var c _oAscHyperlinkType = { WebLink : 1 , RangeLink : 2 } ; var c _oAscMouseMoveType = { None : 0 , Hyperlink : 1 , Comment : 2 , LockedObject : 3 , ResizeColumn : 4 , ResizeRow : 5 , Filter : 6 , Tooltip : 7 } ;
var c _oAscMouseMoveLockedObjectType = { None : - 1 , Range : 0 , TableProperties : 1 , Sheet : 2 } ; var c _oAscLockTypeElem = { Range : 1 , Object : 2 , Sheet : 3 } ; var c _oAscLockTypeElemSubType = { DeleteColumns : 1 , InsertColumns : 2 , DeleteRows : 3 , InsertRows : 4 , ChangeProperties : 5 , DefinedNames : 6 , NamedSheetView : 7 } ; var c _oAscRecalcIndexTypes = { RecalcIndexAdd : 1 , RecalcIndexRemove : 2 } ; var c _oAscCustomAutoFilter = { equals : 1 , isGreaterThan : 2 , isGreaterThanOrEqualTo : 3 , isLessThan : 4 , isLessThanOrEqualTo : 5 , doesNotEqual : 6 , beginsWith : 7 , doesNotBeginWith : 8 , endsWith : 9 ,
doesNotEndWith : 10 , contains : 11 , doesNotContain : 12 } ; var c _oAscDynamicAutoFilter = { aboveAverage : 1 , belowAverage : 2 , lastMonth : 3 , lastQuarter : 4 , lastWeek : 5 , lastYear : 6 , m1 : 7 , m10 : 8 , m11 : 9 , m12 : 10 , m2 : 11 , m3 : 12 , m4 : 13 , m5 : 14 , m6 : 15 , m7 : 16 , m8 : 17 , m9 : 18 , nextMonth : 19 , nextQuarter : 20 , nextWeek : 21 , nextYear : 22 , nullType : 23 , q1 : 24 , q2 : 25 , q3 : 26 , q4 : 27 , thisMonth : 28 , thisQuarter : 29 , thisWeek : 30 , thisYear : 31 , today : 32 , tomorrow : 33 , yearToDate : 34 , yesterday : 35 } ; var c _oAscTop10AutoFilter = { max : 1 , min : 2 } ; var c _oAscChangeFilterOptions = { filter : 1 , style : 2 } ;
var c _oAscChangeSelectionFormatTable = { all : 1 , data : 2 , row : 3 , column : 4 , dataColumn : 5 } ; var c _oAscChangeTableStyleInfo = { columnFirst : 1 , columnLast : 2 , columnBanded : 3 , rowHeader : 4 , rowTotal : 5 , rowBanded : 6 , filterButton : 7 , advancedSettings : 8 } ; var c _oAscCellEditorState = { editEnd : 0 , editStart : 1 , editEmptyCell : 2 , editText : 3 , editFormula : 4 , editInFormulaBar : 5 , editInCell : 6 } ; var c _oAscCellEditorSelectState = { no : 0 , char : 1 , word : 2 } ; var c _oAscCanChangeColWidth = { none : 0 , numbers : 1 , all : 2 } ; var c _oAscMergeType = { none : 0 , cols : 1 , rows : 2 } ; var c _oAscPaneState =
{ Frozen : "frozen" , FrozenSplit : "frozenSplit" , Split : "split" } ; var c _oAscFindLookIn = { Formulas : 1 , Value : 2 , Annotations : 3 } ; var c _oTargetType = { None : 0 , ColumnResize : 1 , RowResize : 2 , FillHandle : 3 , MoveRange : 4 , MoveResizeRange : 5 , FilterObject : 6 , ColumnHeader : 7 , RowHeader : 8 , Corner : 9 , Hyperlink : 10 , Cells : 11 , Shape : 12 , FrozenAnchorH : 14 , FrozenAnchorV : 15 , GroupRow : 16 , GroupCol : 17 , TableSelectionChange : 18 } ; var c _oAscAutoFilterTypes = { ColorFilter : 0 , CustomFilters : 1 , DynamicFilter : 2 , Top10 : 3 , Filters : 4 , None : 5 } ; var c _oAscCoAuthoringMeBorderColor =
new CColor ( 22 , 156 , 0 ) ; var c _oAscCoAuthoringOtherBorderColor = new CColor ( 238 , 53 , 37 ) ; var c _oAscCoAuthoringLockTablePropertiesBorderColor = new CColor ( 255 , 144 , 0 ) ; var c _oAscCoAuthoringDottedWidth = 4 ; var c _oAscCoAuthoringDottedDistance = 2 ; var c _oAscFormulaRangeBorderColor = [ new CColor ( 95 , 140 , 237 ) , new CColor ( 235 , 94 , 96 ) , new CColor ( 141 , 97 , 194 ) , new CColor ( 45 , 150 , 57 ) , new CColor ( 191 , 76 , 145 ) , new CColor ( 227 , 130 , 34 ) , new CColor ( 55 , 127 , 158 ) ] ; var selectionLineType = { None : 0 , Selection : 1 , ActiveCell : 2 , Resize : 4 , Promote : 8 , Dash : 16 ,
DashThick : 32 } ; var c _oAscLockNameFrozenPane = "frozenPane" ; var c _oAscLockNameTabColor = "tabColor" ; var c _oAscLockAddSheet = "addSheet" ; var c _oAscLockLayoutOptions = "layoutOptions" ; var c _oAscHeaderFooterEdit = "headerFooterEdit" ; var c _oAscLockPrintScaleOptions = "printScaleOptions" ; var c _oAscGetDefinedNamesList = { Worksheet : 0 , WorksheetWorkbook : 1 , All : 2 } ; var c _oAscDefinedNameReason = { WrongName : - 1 , IsLocked : - 2 , Existed : - 3 , LockDefNameManager : - 4 , NameReserved : - 5 , OK : 0 } ; var c _oAscPopUpSelectorType = { None : 0 , Func : 1 , Range : 2 , Table : 3 ,
Slicer : 4 , TotalRowFunc : 5 } ; var c _oSerFormat = { Version : 2 , Signature : "XLSY" } ; var c _oAscSparklineType = { Line : 0 , Column : 1 , Stacked : 2 } ; var c _oAscEDispBlanksAs = { Span : 0 , Gap : 1 , Zero : 2 } ; var c _oAscSparklineAxisMinMax = { Individual : 0 , Group : 1 , Custom : 2 } ; var c _oAscAutoCorrectOptions = { UndoTableAutoExpansion : 0 , RedoTableAutoExpansion : 1 } ; var c _oAscChangePrintAreaType = { set : 0 , clear : 1 , add : 2 } ; var c _oAscHeaderFooterField = { pageNumber : 0 , pageCount : 1 , sheetName : 2 , fileName : 3 , filePath : 4 , date : 5 , time : 6 , lineBreak : 7 } ; var c _oAscPageHFType = { firstHeader : 0 ,
oddHeader : 1 , evenHeader : 2 , firstFooter : 3 , oddFooter : 4 , evenFooter : 5 } ; var c _oAscHeaderFooterType = { first : 0 , odd : 1 , even : 2 } ; var c _oAscHeaderFooterPresets = { none : 0 , page : 1 , pageOfQuestion : 2 , sheet : 3 , confidential : 4 , bookName : 5 , sheetPage : 6 , sheetConfidentialPage : 7 , bookNamePage : 8 , pageSheet : 9 , pageBook : 10 , pageBookName : 11 , userPageDate : 12 , preparedUserDatePage : 13 , custom : 14 } ; var c _oAscPrintTitlesRangeType = { first : 0 , frozen : 1 , current : 2 } ; var c _oAscFormulaArgumentType = { number : 0 , text : 1 , reference : 2 , any : 3 , logical : 4 } ; var c _oAscSelectionForCFType =
{ selection : 1 , worksheet : 2 , table : 3 , pivot : 4 } ; var c _kMaxPrintPages = 1500 ; var c _oAscFrozenPaneBorderType = { shadow : 1 , line : 2 } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . c _oAscDrawDepOptions = c _oAscDrawDepOptions ; window [ "AscCommonExcel" ] . c _oAscScrollType = c _oAscScrollType ; window [ "AscCommonExcel" ] . c _oAscLockTypeElem = c _oAscLockTypeElem ; window [ "AscCommonExcel" ] . c _oAscLockTypeElemSubType = c _oAscLockTypeElemSubType ; window [ "AscCommonExcel" ] . c _oAscRecalcIndexTypes = c _oAscRecalcIndexTypes ;
window [ "AscCommonExcel" ] . c _oAscCellEditorSelectState = c _oAscCellEditorSelectState ; window [ "AscCommonExcel" ] . c _oAscCanChangeColWidth = c _oAscCanChangeColWidth ; window [ "AscCommonExcel" ] . c _oAscMergeType = c _oAscMergeType ; window [ "AscCommonExcel" ] . c _oAscPaneState = c _oAscPaneState ; window [ "AscCommonExcel" ] . c _oTargetType = c _oTargetType ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringMeBorderColor = c _oAscCoAuthoringMeBorderColor ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringOtherBorderColor = c _oAscCoAuthoringOtherBorderColor ;
window [ "AscCommonExcel" ] . c _oAscCoAuthoringLockTablePropertiesBorderColor = c _oAscCoAuthoringLockTablePropertiesBorderColor ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringDottedWidth = c _oAscCoAuthoringDottedWidth ; window [ "AscCommonExcel" ] . c _oAscCoAuthoringDottedDistance = c _oAscCoAuthoringDottedDistance ; window [ "AscCommonExcel" ] . c _oAscFormulaRangeBorderColor = c _oAscFormulaRangeBorderColor ; window [ "AscCommonExcel" ] . selectionLineType = selectionLineType ; window [ "AscCommonExcel" ] . c _oAscLockNameFrozenPane = c _oAscLockNameFrozenPane ;
window [ "AscCommonExcel" ] . c _oAscLockNameTabColor = c _oAscLockNameTabColor ; window [ "AscCommonExcel" ] . c _oAscLockAddSheet = c _oAscLockAddSheet ; window [ "AscCommonExcel" ] . c _oAscLockLayoutOptions = c _oAscLockLayoutOptions ; window [ "AscCommonExcel" ] . c _oAscHeaderFooterEdit = c _oAscHeaderFooterEdit ; window [ "AscCommonExcel" ] . c _oAscLockPrintScaleOptions = c _oAscLockPrintScaleOptions ; window [ "AscCommonExcel" ] . c _kMaxPrintPages = c _kMaxPrintPages ; window [ "AscCommonExcel" ] . filteringMode = true ; window [ "AscCommon" ] = window [ "AscCommon" ] ||
{ } ; window [ "AscCommon" ] . c _oSerFormat = c _oSerFormat ; window [ "AscCommon" ] . CurFileVersion = c _oSerFormat . Version ; var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "Asc" ] [ "c_oAscSortOptions" ] = window [ "Asc" ] . c _oAscSortOptions = c _oAscSortOptions ; prot = c _oAscSortOptions ; prot [ "Ascending" ] = prot . Ascending ; prot [ "Descending" ] = prot . Descending ; prot [ "ByColorFill" ] = prot . ByColorFill ; prot [ "ByColorFont" ] = prot . ByColorFont ; prot [ "ByIcon" ] = prot . ByIcon ; prot [ "ByValue" ] = prot . ByValue ; window [ "Asc" ] [ "c_oAscConfirm" ] = window [ "Asc" ] . c _oAscConfirm =
c _oAscConfirm ; prot = c _oAscConfirm ; prot [ "ConfirmReplaceRange" ] = prot . ConfirmReplaceRange ; prot [ "ConfirmPutMergeRange" ] = prot . ConfirmPutMergeRange ; window [ "Asc" ] [ "c_oAscMergeOptions" ] = window [ "Asc" ] . c _oAscMergeOptions = c _oAscMergeOptions ; prot = c _oAscMergeOptions ; prot [ "Disabled" ] = prot . Disabled ; prot [ "None" ] = prot . None ; prot [ "Merge" ] = prot . Merge ; prot [ "MergeCenter" ] = prot . MergeCenter ; prot [ "MergeAcross" ] = prot . MergeAcross ; window [ "Asc" ] [ "c_oAscBorderOptions" ] = window [ "Asc" ] . c _oAscBorderOptions = c _oAscBorderOptions ; prot =
c _oAscBorderOptions ; prot [ "Top" ] = prot . Top ; prot [ "Right" ] = prot . Right ; prot [ "Bottom" ] = prot . Bottom ; prot [ "Left" ] = prot . Left ; prot [ "DiagD" ] = prot . DiagD ; prot [ "DiagU" ] = prot . DiagU ; prot [ "InnerV" ] = prot . InnerV ; prot [ "InnerH" ] = prot . InnerH ; window [ "Asc" ] [ "c_oAscCleanOptions" ] = window [ "Asc" ] . c _oAscCleanOptions = c _oAscCleanOptions ; prot = c _oAscCleanOptions ; prot [ "All" ] = prot . All ; prot [ "Text" ] = prot . Text ; prot [ "Format" ] = prot . Format ; prot [ "Formula" ] = prot . Formula ; prot [ "Comments" ] = prot . Comments ; prot [ "Hyperlinks" ] = prot . Hyperlinks ; prot [ "Sparklines" ] =
prot . Sparklines ; prot [ "SparklineGroups" ] = prot . SparklineGroups ; window [ "Asc" ] [ "c_oAscCalculateType" ] = window [ "Asc" ] . c _oAscCalculateType = c _oAscCalculateType ; prot = c _oAscCalculateType ; prot [ "WorkbookOnlyChanged" ] = prot . WorkbookOnlyChanged ; prot [ "ActiveSheet" ] = prot . ActiveSheet ; prot [ "Workbook" ] = prot . Workbook ; prot [ "All" ] = prot . All ; window [ "Asc" ] [ "c_oAscSelectionDialogType" ] = window [ "Asc" ] . c _oAscSelectionDialogType = c _oAscSelectionDialogType ; prot = c _oAscSelectionDialogType ; prot [ "None" ] = prot . None ; prot [ "FormatTable" ] =
prot . FormatTable ; prot [ "Chart" ] = prot . Chart ; prot [ "FormatTableChangeRange" ] = prot . FormatTableChangeRange ; prot [ "CustomSort" ] = prot . CustomSort ; prot [ "PivotTableData" ] = prot . PivotTableData ; prot [ "PivotTableReport" ] = prot . PivotTableReport ; prot [ "PrintTitles" ] = prot . PrintTitles ; prot [ "Function" ] = prot . Function ; prot [ "DataValidation" ] = prot . DataValidation ; window [ "Asc" ] [ "c_oAscHyperlinkType" ] = window [ "Asc" ] . c _oAscHyperlinkType = c _oAscHyperlinkType ; prot = c _oAscHyperlinkType ; prot [ "WebLink" ] = prot . WebLink ; prot [ "RangeLink" ] = prot . RangeLink ;
window [ "Asc" ] [ "c_oAscMouseMoveType" ] = window [ "Asc" ] . c _oAscMouseMoveType = c _oAscMouseMoveType ; prot = c _oAscMouseMoveType ; prot [ "None" ] = prot . None ; prot [ "Hyperlink" ] = prot . Hyperlink ; prot [ "Comment" ] = prot . Comment ; prot [ "LockedObject" ] = prot . LockedObject ; prot [ "ResizeColumn" ] = prot . ResizeColumn ; prot [ "ResizeRow" ] = prot . ResizeRow ; prot [ "Filter" ] = prot . Filter ; prot [ "Tooltip" ] = prot . Tooltip ; window [ "Asc" ] [ "c_oAscMouseMoveLockedObjectType" ] = window [ "Asc" ] . c _oAscMouseMoveLockedObjectType = c _oAscMouseMoveLockedObjectType ; prot = c _oAscMouseMoveLockedObjectType ;
prot [ "None" ] = prot . None ; prot [ "Range" ] = prot . Range ; prot [ "TableProperties" ] = prot . TableProperties ; prot [ "Sheet" ] = prot . Sheet ; window [ "Asc" ] [ "c_oAscCustomAutoFilter" ] = window [ "Asc" ] . c _oAscCustomAutoFilter = c _oAscCustomAutoFilter ; prot = c _oAscCustomAutoFilter ; prot [ "equals" ] = prot . equals ; prot [ "isGreaterThan" ] = prot . isGreaterThan ; prot [ "isGreaterThanOrEqualTo" ] = prot . isGreaterThanOrEqualTo ; prot [ "isLessThan" ] = prot . isLessThan ; prot [ "isLessThanOrEqualTo" ] = prot . isLessThanOrEqualTo ; prot [ "doesNotEqual" ] = prot . doesNotEqual ; prot [ "beginsWith" ] =
prot . beginsWith ; prot [ "doesNotBeginWith" ] = prot . doesNotBeginWith ; prot [ "endsWith" ] = prot . endsWith ; prot [ "doesNotEndWith" ] = prot . doesNotEndWith ; prot [ "contains" ] = prot . contains ; prot [ "doesNotContain" ] = prot . doesNotContain ; window [ "Asc" ] [ "c_oAscDynamicAutoFilter" ] = window [ "Asc" ] . c _oAscDynamicAutoFilter = c _oAscDynamicAutoFilter ; prot = c _oAscDynamicAutoFilter ; prot [ "aboveAverage" ] = prot . aboveAverage ; prot [ "belowAverage" ] = prot . belowAverage ; window [ "Asc" ] [ "c_oAscTop10AutoFilter" ] = window [ "Asc" ] . c _oAscTop10AutoFilter = c _oAscTop10AutoFilter ;
prot = c _oAscTop10AutoFilter ; prot [ "max" ] = prot . max ; prot [ "min" ] = prot . min ; window [ "Asc" ] [ "c_oAscChangeFilterOptions" ] = window [ "Asc" ] . c _oAscChangeFilterOptions = c _oAscChangeFilterOptions ; prot = c _oAscChangeFilterOptions ; prot [ "filter" ] = prot . filter ; prot [ "style" ] = prot . style ; window [ "Asc" ] [ "c_oAscCellEditorState" ] = window [ "Asc" ] . c _oAscCellEditorState = c _oAscCellEditorState ; prot = c _oAscCellEditorState ; prot [ "editEnd" ] = prot . editEnd ; prot [ "editStart" ] = prot . editStart ; prot [ "editEmptyCell" ] = prot . editEmptyCell ; prot [ "editText" ] =
prot . editText ; prot [ "editFormula" ] = prot . editFormula ; prot [ "editInFormulaBar" ] = prot . editInFormulaBar ; prot [ "editInCell" ] = prot . editInCell ; window [ "Asc" ] [ "c_oAscChangeSelectionFormatTable" ] = window [ "Asc" ] . c _oAscChangeSelectionFormatTable = c _oAscChangeSelectionFormatTable ; prot = c _oAscChangeSelectionFormatTable ; prot [ "all" ] = prot . all ; prot [ "data" ] = prot . data ; prot [ "row" ] = prot . row ; prot [ "column" ] = prot . column ; prot [ "dataColumn" ] = prot . dataColumn ; window [ "Asc" ] [ "c_oAscChangeTableStyleInfo" ] = window [ "Asc" ] . c _oAscChangeTableStyleInfo =
c _oAscChangeTableStyleInfo ; prot = c _oAscChangeTableStyleInfo ; prot [ "columnFirst" ] = prot . columnFirst ; prot [ "columnLast" ] = prot . columnLast ; prot [ "columnBanded" ] = prot . columnBanded ; prot [ "rowHeader" ] = prot . rowHeader ; prot [ "rowTotal" ] = prot . rowTotal ; prot [ "rowBanded" ] = prot . rowBanded ; prot [ "filterButton" ] = prot . filterButton ; prot [ "advancedSettings" ] = prot . advancedSettings ; window [ "Asc" ] [ "c_oAscAutoFilterTypes" ] = window [ "Asc" ] . c _oAscAutoFilterTypes = c _oAscAutoFilterTypes ; prot = c _oAscAutoFilterTypes ; prot [ "ColorFilter" ] = prot . ColorFilter ;
prot [ "CustomFilters" ] = prot . CustomFilters ; prot [ "DynamicFilter" ] = prot . DynamicFilter ; prot [ "Top10" ] = prot . Top10 ; prot [ "Filters" ] = prot . Filters ; prot [ "None" ] = prot . None ; window [ "Asc" ] [ "c_oAscFindLookIn" ] = window [ "Asc" ] . c _oAscFindLookIn = c _oAscFindLookIn ; prot = c _oAscFindLookIn ; prot [ "Formulas" ] = prot . Formulas ; prot [ "Value" ] = prot . Value ; prot [ "Annotations" ] = prot . Annotations ; window [ "Asc" ] [ "c_oAscGetDefinedNamesList" ] = window [ "Asc" ] . c _oAscGetDefinedNamesList = c _oAscGetDefinedNamesList ; prot = c _oAscGetDefinedNamesList ; prot [ "Worksheet" ] =
prot . Worksheet ; prot [ "WorksheetWorkbook" ] = prot . WorksheetWorkbook ; prot [ "All" ] = prot . All ; window [ "Asc" ] [ "c_oAscDefinedNameReason" ] = window [ "Asc" ] . c _oAscDefinedNameReason = c _oAscDefinedNameReason ; prot = c _oAscDefinedNameReason ; prot [ "WrongName" ] = prot . WrongName ; prot [ "IsLocked" ] = prot . IsLocked ; prot [ "Existed" ] = prot . Existed ; prot [ "LockDefNameManager" ] = prot . LockDefNameManager ; prot [ "NameReserved" ] = prot . NameReserved ; prot [ "OK" ] = prot . OK ; window [ "Asc" ] [ "c_oAscPopUpSelectorType" ] = window [ "Asc" ] . c _oAscPopUpSelectorType = c _oAscPopUpSelectorType ;
prot = c _oAscPopUpSelectorType ; prot [ "None" ] = prot . None ; prot [ "Func" ] = prot . Func ; prot [ "Range" ] = prot . Range ; prot [ "Table" ] = prot . Table ; prot [ "Slicer" ] = prot . Slicer ; prot [ "TotalRowFunc" ] = prot . TotalRowFunc ; window [ "Asc" ] [ "c_oAscSparklineType" ] = window [ "Asc" ] . c _oAscSparklineType = c _oAscSparklineType ; prot = c _oAscSparklineType ; prot [ "Line" ] = prot . Line ; prot [ "Column" ] = prot . Column ; prot [ "Stacked" ] = prot . Stacked ; window [ "Asc" ] [ "c_oAscEDispBlanksAs" ] = window [ "Asc" ] . c _oAscEDispBlanksAs = c _oAscEDispBlanksAs ; prot = c _oAscEDispBlanksAs ;
prot [ "Span" ] = prot . Span ; prot [ "Gap" ] = prot . Gap ; prot [ "Zero" ] = prot . Zero ; window [ "Asc" ] [ "c_oAscSparklineAxisMinMax" ] = window [ "Asc" ] . c _oAscSparklineAxisMinMax = c _oAscSparklineAxisMinMax ; prot = c _oAscSparklineAxisMinMax ; prot [ "Individual" ] = prot . Individual ; prot [ "Group" ] = prot . Group ; prot [ "Custom" ] = prot . Custom ; window [ "Asc" ] [ "c_oAscAutoCorrectOptions" ] = window [ "Asc" ] . c _oAscAutoCorrectOptions = c _oAscAutoCorrectOptions ; prot = c _oAscAutoCorrectOptions ; prot [ "UndoTableAutoExpansion" ] = prot . UndoTableAutoExpansion ; prot [ "RedoTableAutoExpansion" ] =
prot . RedoTableAutoExpansion ; window [ "Asc" ] [ "c_oAscChangePrintAreaType" ] = window [ "Asc" ] . c _oAscChangePrintAreaType = c _oAscChangePrintAreaType ; prot = c _oAscChangePrintAreaType ; prot [ "set" ] = prot . set ; prot [ "clear" ] = prot . clear ; prot [ "add" ] = prot . add ; window [ "Asc" ] [ "c_oAscHeaderFooterField" ] = window [ "Asc" ] . c _oAscHeaderFooterField = c _oAscHeaderFooterField ; prot = c _oAscHeaderFooterField ; prot [ "pageNumber" ] = prot . pageNumber ; prot [ "pageCount" ] = prot . pageCount ; prot [ "sheetName" ] = prot . sheetName ; prot [ "fileName" ] = prot . fileName ; prot [ "filePath" ] =
prot . filePath ; prot [ "date" ] = prot . date ; prot [ "time" ] = prot . time ; prot [ "lineBreak" ] = prot . lineBreak ; window [ "Asc" ] [ "c_oAscPageHFType" ] = window [ "Asc" ] . c _oAscPageHFType = c _oAscPageHFType ; prot = c _oAscHeaderFooterField ; prot [ "firstHeader" ] = prot . firstHeader ; prot [ "oddHeader" ] = prot . oddHeader ; prot [ "evenHeader" ] = prot . evenHeader ; prot [ "firstFooter" ] = prot . firstFooter ; prot [ "oddFooter" ] = prot . oddFooter ; prot [ "evenFooter" ] = prot . evenFooter ; window [ "Asc" ] [ "c_oAscHeaderFooterType" ] = window [ "Asc" ] . c _oAscHeaderFooterType = c _oAscHeaderFooterType ;
prot = c _oAscHeaderFooterType ; prot [ "first" ] = prot . first ; prot [ "odd" ] = prot . odd ; prot [ "even" ] = prot . even ; window [ "Asc" ] [ "c_oAscHeaderFooterPresets" ] = window [ "Asc" ] . c _oAscHeaderFooterPresets = c _oAscHeaderFooterPresets ; prot = c _oAscHeaderFooterPresets ; prot [ "none" ] = prot . none ; prot [ "page" ] = prot . page ; prot [ "pageOfQuestion" ] = prot . pageOfQuestion ; prot [ "sheet" ] = prot . sheet ; prot [ "confidential" ] = prot . confidential ; prot [ "bookName" ] = prot . bookName ; prot [ "sheetPage" ] = prot . sheetPage ; prot [ "sheetConfidentialPage" ] = prot . sheetConfidentialPage ;
prot [ "bookNamePage" ] = prot . bookNamePage ; prot [ "pageSheet" ] = prot . pageSheet ; prot [ "pageBook" ] = prot . pageBook ; prot [ "pageBookName" ] = prot . pageBookName ; prot [ "userPageDate" ] = prot . userPageDate ; prot [ "preparedUserDatePage" ] = prot . preparedUserDatePage ; prot [ "custom" ] = prot . custom ; window [ "Asc" ] [ "c_oAscPrintTitlesRangeType" ] = window [ "Asc" ] . c _oAscPrintTitlesRangeType = c _oAscPrintTitlesRangeType ; prot = c _oAscPrintTitlesRangeType ; prot [ "first" ] = prot . first ; prot [ "frozen" ] = prot . frozen ; prot [ "current" ] = prot . current ; window [ "Asc" ] [ "c_oAscFormulaArgumentType" ] =
window [ "Asc" ] . c _oAscFormulaArgumentType = c _oAscFormulaArgumentType ; prot = c _oAscPrintTitlesRangeType ; prot [ "number" ] = prot . number ; prot [ "text" ] = prot . text ; prot [ "reference" ] = prot . reference ; prot [ "any" ] = prot . any ; prot [ "logical" ] = prot . logical ; window [ "Asc" ] [ "c_oAscSelectionForCFType" ] = window [ "Asc" ] . c _oAscSelectionForCFType = c _oAscSelectionForCFType ; prot = c _oAscSelectionForCFType ; prot [ "selection" ] = prot . selection ; prot [ "worksheet" ] = prot . worksheet ; prot [ "table" ] = prot . table ; prot [ "pivot" ] = prot . pivot ; window [ "Asc" ] [ "c_oAscFrozenPaneBorderType" ] =
window [ "Asc" ] . c _oAscFrozenPaneBorderType = c _oAscFrozenPaneBorderType ; prot = c _oAscFrozenPaneBorderType ; prot [ "shadow" ] = prot . shadow ; prot [ "line" ] = prot . line } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var gc _nMaxRow0 = AscCommon . gc _nMaxRow0 ; var gc _nMaxCol0 = AscCommon . gc _nMaxCol0 ; var g _oCellAddressUtils = AscCommon . g _oCellAddressUtils ; var AscBrowser = AscCommon . AscBrowser ; var c _oAscSelectionType = Asc . c _oAscSelectionType ; var kLeftLim1 = . 999999999999999 ; var MAX _EXCEL _INT = 1E308 ; var MIN _EXCEL _INT = - MAX _EXCEL _INT ; var c _sPerDay = 86400 ; var c _msPerDay = c _sPerDay * 1E3 ; var kUndefinedL = "undefined" ; var kNullL = "null" ; var kObjectL = "object" ; var kFunctionL = "function" ; var kNumberL = "number" ; var kArrayL =
"array" ; var recalcType = { recalc : 0 , full : 1 , newLines : 2 } ; var sizePxinPt = 72 / 96 ; function applyFunction ( callback ) { if ( kFunctionL === typeof callback ) callback . apply ( null , Array . prototype . slice . call ( arguments , 1 ) ) } function typeOf ( obj ) { if ( obj === undefined ) return kUndefinedL ; if ( obj === null ) return kNullL ; return Object . prototype . toString . call ( obj ) . slice ( 8 , - 1 ) . toLowerCase ( ) } function lastIndexOf ( s , regExp , fromIndex ) { var end = fromIndex >= 0 && fromIndex <= s . length ? fromIndex : s . length ; for ( var i = end - 1 ; i >= 0 ; -- i ) { var j = s . slice ( i , end ) . search ( regExp ) ;
if ( j >= 0 ) return i + j } return - 1 } function search ( arr , fn ) { for ( var i = 0 ; i < arr . length ; ++ i ) if ( fn ( arr [ i ] ) ) return i ; return - 1 } function getUniqueRangeColor ( arrRanges , curElem , tmpColors ) { var colorIndex , j , range = arrRanges [ curElem ] ; for ( j = 0 ; j < curElem ; ++ j ) if ( range . isEqual ( arrRanges [ j ] ) ) { colorIndex = tmpColors [ j ] ; break } return colorIndex } function getMinValueOrNull ( val1 , val2 ) { return null === val2 ? val1 : null === val1 ? val2 : Math . min ( val1 , val2 ) } function round ( x ) { var y = x + ( x >= 0 ? . 5 : - . 5 ) ; return y | y } function floor ( x ) { var y = x | x ; y -= x < 0 &&
y > x ? 1 : 0 ; return y + ( x - y > kLeftLim1 ? 1 : 0 ) } function ceil ( x ) { var y = x | x ; y += x > 0 && y < x ? 1 : 0 ; return y - ( y - x > kLeftLim1 ? 1 : 0 ) } function incDecFonSize ( bIncrease , oValue ) { var aSizes = [ 8 , 9 , 10 , 11 , 12 , 14 , 16 , 18 , 20 , 22 , 24 , 26 , 28 , 36 , 48 , 72 ] ; var nLength = aSizes . length ; var i ; if ( true === bIncrease ) { if ( oValue >= aSizes [ nLength - 1 ] ) return null ; for ( i = 0 ; i < nLength ; ++ i ) if ( aSizes [ i ] > oValue ) break } else { if ( oValue <= aSizes [ 0 ] ) return null ; for ( i = nLength - 1 ; i >= 0 ; -- i ) if ( aSizes [ i ] < oValue ) break } return aSizes [ i ] } function calcDecades ( num ) { return Math . abs ( num ) <
10 ? 1 : 1 + calcDecades ( floor ( num * . 1 ) ) } function convertPtToPx ( value ) { value = value / sizePxinPt ; if ( AscBrowser . isRetina ) value = value * AscBrowser . retinaPixelRatio ; value = value | value ; return value } function convertPxToPt ( value ) { value = value * sizePxinPt ; if ( AscBrowser . isRetina ) value = Asc . ceil ( value / AscBrowser . retinaPixelRatio * 10 ) / 10 ; return value } function profileTime ( fn ) { var start , end , arg = [ ] , i ; if ( arguments . length ) { if ( arguments . length > 1 ) { for ( i = 1 ; i < arguments . length ; ++ i ) arg . push ( arguments [ i ] ) ; start = new Date ; fn . apply ( window ,
arg ) ; end = new Date } else { start = new Date ; fn ( ) ; end = new Date } return end . getTime ( ) - start . getTime ( ) } return undefined } function getMatchingBorder ( border1 , border2 ) { if ( ! border1 ) return border2 ; if ( ! border2 ) return border1 ; if ( border1 . w > border2 . w ) return border1 ; else if ( border1 . w < border2 . w ) return border2 ; var r1 = border1 . c . getR ( ) , g1 = border1 . c . getG ( ) , b1 = border1 . c . getB ( ) ; var r2 = border2 . c . getR ( ) , g2 = border2 . c . getG ( ) , b2 = border2 . c . getB ( ) ; var Brightness _1 _1 = r1 + b1 + 2 * g1 ; var Brightness _1 _2 = r2 + b2 + 2 * g2 ; if ( Brightness _1 _1 < Brightness _1 _2 ) return border1 ;
else if ( Brightness _1 _1 > Brightness _1 _2 ) return border2 ; var Brightness _2 _1 = Brightness _1 _1 - r1 ; var Brightness _2 _2 = Brightness _1 _2 - r2 ; if ( Brightness _2 _1 < Brightness _2 _2 ) return border1 ; else if ( Brightness _2 _1 > Brightness _2 _2 ) return border2 ; var Brightness _3 _1 = g1 ; var Brightness _3 _2 = g2 ; if ( Brightness _3 _1 < Brightness _3 _2 ) return border1 ; else if ( Brightness _3 _1 > Brightness _3 _2 ) return border2 ; return border1 } function WordSplitting ( str ) { var trueLetter = false ; var index = 0 ; var wordsArray = [ ] ; var wordsIndexArray = [ ] ; for ( var i = 0 ; i <
str . length ; i ++ ) { var nCharCode = str . charCodeAt ( i ) ; if ( AscCommon . g _aPunctuation [ nCharCode ] !== undefined || nCharCode === 32 || nCharCode === 10 ) { if ( trueLetter ) { trueLetter = false ; index ++ } } else { if ( trueLetter === false ) wordsIndexArray . push ( i ) ; trueLetter = true ; wordsArray [ index ] = wordsArray [ index ] || "" ; wordsArray [ index ] = wordsArray [ index ] + str [ i ] } } return { wordsArray : wordsArray , wordsIndex : wordsIndexArray } } function replaceSpellCheckWords ( cellValue , options ) { if ( 1 === options . indexInArray && options . replaceWith ) cellValue = options . replaceWith ;
else for ( var i = 0 ; i < options . replaceWords . length ; ++ i ) cellValue = cellValue . replace ( options . replaceWords [ i ] [ 0 ] , function ( ) { return options . replaceWords [ i ] [ 1 ] } ) ; return cellValue } function getFindRegExp ( value , options ) { var findFlags = "g" ; if ( true !== options . isMatchCase ) findFlags += "i" ; value = value . replace ( /(\\)/g , "\\\\" ) . replace ( /(\^)/g , "\\^" ) . replace ( /(\()/g , "\\(" ) . replace ( /(\))/g , "\\)" ) . replace ( /(\+)/g , "\\+" ) . replace ( /(\[)/g , "\\[" ) . replace ( /(\])/g , "\\]" ) . replace ( /(\{)/g , "\\{" ) . replace ( /(\})/g , "\\}" ) . replace ( /(\$)/g ,
"\\$" ) . replace ( /(\.)/g , "\\." ) . replace ( /(~)?\*/g , function ( $0 , $1 ) { return $1 ? $0 : "(.*)" } ) . replace ( /(~)?\?/g , function ( $0 , $1 ) { return $1 ? $0 : "." } ) . replace ( /(~\*)/g , "\\*" ) . replace ( /(~\?)/g , "\\?" ) ; if ( options . isWholeWord ) value = "\\b" + value + "\\b" ; return new RegExp ( value , findFlags ) } function convertFillToUnifill ( fill ) { var oUniFill = null ; if ( ! fill ) return AscFormat . CreateNoFillUniFill ( ) ; var oSF = fill . getSolidFill ( ) ; if ( oSF ) oUniFill = new AscFormat . CreateSolidFillRGBA ( oSF . getR ( ) , oSF . getG ( ) , oSF . getB ( ) , Math . min ( 255 , 255 * oSF . getA ( ) +
. 5 >> 0 ) ) ; else if ( fill . patternFill ) { oUniFill = new AscFormat . CUniFill ; oUniFill . fill = new AscFormat . CPattFill ; oUniFill . fill . ftype = fill . patternFill . getHatchOffset ( ) ; oUniFill . fill . fgClr = AscFormat . CreateUniColorRGB2 ( fill . patternFill . fgColor || AscCommonExcel . createRgbColor ( 0 , 0 , 0 ) ) ; oUniFill . fill . bgClr = AscFormat . CreateUniColorRGB2 ( fill . patternFill . bgColor || AscCommonExcel . createRgbColor ( 255 , 255 , 255 ) ) } else if ( fill . gradientFill ) { oUniFill = new AscFormat . CUniFill ; oUniFill . fill = new AscFormat . CGradFill ; if ( fill . gradientFill . type ===
Asc . c _oAscFillGradType . GRAD _LINEAR ) { oUniFill . fill . lin = new AscFormat . GradLin ; oUniFill . fill . lin . angle = fill . gradientFill . degree * 6E4 } else oUniFill . fill . path = new AscFormat . GradPath ; for ( var i = 0 ; i < fill . gradientFill . stop . length ; ++ i ) { var oGradStop = new AscFormat . CGs ; oGradStop . pos = fill . gradientFill . stop [ i ] . position * 1E5 ; oGradStop . color = AscFormat . CreateUniColorRGB2 ( fill . gradientFill . stop [ i ] . color || AscCommonExcel . createRgbColor ( 255 , 255 , 255 ) ) ; oUniFill . fill . addColor ( oGradStop ) } } return oUniFill } var referenceType =
{ A : 0 , ARRC : 1 , RRAC : 2 , R : 3 } ; function Range ( c1 , r1 , c2 , r2 , normalize ) { if ( ! ( this instanceof Range ) ) return new Range ( c1 , r1 , c2 , r2 , normalize ) ; this . c1 = c1 ; this . r1 = r1 ; this . c2 = c2 ; this . r2 = r2 ; this . refType1 = referenceType . R ; this . refType2 = referenceType . R ; return normalize ? this . normalize ( ) : this } Range . prototype . compareCell = function ( c1 , r1 , c2 , r2 ) { var dif = r1 - r2 ; return 0 !== dif ? dif : c1 - c2 } ; Range . prototype . compareByLeftTop = function ( a , b ) { return Range . prototype . compareCell ( a . c1 , a . r1 , b . c1 , b . r1 ) } ; Range . prototype . compareByRightBottom =
function ( a , b ) { return Range . prototype . compareCell ( a . c2 , a . r2 , b . c2 , b . r2 ) } ; Range . prototype . assign = function ( c1 , r1 , c2 , r2 , normalize ) { this . c1 = c1 ; this . r1 = r1 ; this . c2 = c2 ; this . r2 = r2 ; return normalize ? this . normalize ( ) : this } ; Range . prototype . assign2 = function ( range ) { this . refType1 = range . refType1 ; this . refType2 = range . refType2 ; return this . assign ( range . c1 , range . r1 , range . c2 , range . r2 ) } ; Range . prototype . clone = function ( normalize ) { var oRes = new Range ( this . c1 , this . r1 , this . c2 , this . r2 , normalize ) ; oRes . refType1 = this . refType1 ; oRes . refType2 =
this . refType2 ; return oRes } ; Range . prototype . normalize = function ( ) { var tmp ; if ( this . c1 > this . c2 ) { tmp = this . c1 ; this . c1 = this . c2 ; this . c2 = tmp } if ( this . r1 > this . r2 ) { tmp = this . r1 ; this . r1 = this . r2 ; this . r2 = tmp } return this } ; Range . prototype . isEqual = function ( range ) { return range && this . c1 === range . c1 && this . r1 === range . r1 && this . c2 === range . c2 && this . r2 === range . r2 } ; Range . prototype . isEqualAll = function ( range ) { return this . isEqual ( range ) && this . refType1 === range . refType1 && this . refType2 === range . refType2 } ; Range . prototype . isEqualWithOffsetRow =
function ( range , offsetRow ) { return this . c1 === range . c1 && this . c2 === range . c2 && this . isAbsC1 ( ) === range . isAbsC1 ( ) && this . isAbsC2 ( ) === range . isAbsC2 ( ) && this . isAbsR1 ( ) === range . isAbsR1 ( ) && this . isAbsR2 ( ) === range . isAbsR2 ( ) && ( ( this . isAbsR1 ( ) ? this . r1 === range . r1 : this . r1 + offsetRow === range . r1 ) && ( this . isAbsR2 ( ) ? this . r2 === range . r2 : this . r2 + offsetRow === range . r2 ) || this . r1 === 0 && this . r2 === gc _nMaxRow0 && this . r1 === range . r1 && this . r2 === range . r2 ) } ; Range . prototype . contains = function ( c , r ) { return this . c1 <= c && c <= this . c2 && this . r1 <= r &&
r <= this . r2 } ; Range . prototype . contains2 = function ( cell ) { return this . contains ( cell . col , cell . row ) } ; Range . prototype . containsCol = function ( c ) { return this . c1 <= c && c <= this . c2 } ; Range . prototype . containsRow = function ( r ) { return this . r1 <= r && r <= this . r2 } ; Range . prototype . containsRange = function ( range ) { return this . contains ( range . c1 , range . r1 ) && this . contains ( range . c2 , range . r2 ) } ; Range . prototype . containsFirstLineRange = function ( range ) { return this . contains ( range . c1 , range . r1 ) && this . contains ( range . c2 , range . r1 ) } ; Range . prototype . intersection =
function ( range ) { var s1 = this . clone ( true ) , s2 = range instanceof Range ? range . clone ( true ) : new Range ( range . c1 , range . r1 , range . c2 , range . r2 , true ) ; if ( s2 . c1 > s1 . c2 || s2 . c2 < s1 . c1 || s2 . r1 > s1 . r2 || s2 . r2 < s1 . r1 ) return null ; return new Range ( s2 . c1 >= s1 . c1 && s2 . c1 <= s1 . c2 ? s2 . c1 : s1 . c1 , s2 . r1 >= s1 . r1 && s2 . r1 <= s1 . r2 ? s2 . r1 : s1 . r1 , Math . min ( s1 . c2 , s2 . c2 ) , Math . min ( s1 . r2 , s2 . r2 ) ) } ; Range . prototype . intersectionSimple = function ( range ) { var oRes = null ; var r1 = Math . max ( this . r1 , range . r1 ) ; var c1 = Math . max ( this . c1 , range . c1 ) ; var r2 = Math . min ( this . r2 , range . r2 ) ;
var c2 = Math . min ( this . c2 , range . c2 ) ; if ( r1 <= r2 && c1 <= c2 ) oRes = new Range ( c1 , r1 , c2 , r2 ) ; return oRes } ; Range . prototype . isIntersect = function ( range ) { var bRes = true ; if ( range . r2 < this . r1 || this . r2 < range . r1 ) bRes = false ; else if ( range . c2 < this . c1 || this . c2 < range . c1 ) bRes = false ; return bRes } ; Range . prototype . isIntersectForShift = function ( range , offset ) { var isHor = offset && offset . col ; var isDelete = offset && ( offset . col < 0 || offset . row < 0 ) ; if ( isHor ) if ( this . r1 <= range . r1 && range . r2 <= this . r2 && this . c1 <= range . c2 ) return true ; else { if ( isDelete &&
this . c1 <= range . c1 && range . c2 <= this . c2 ) { var topIn = this . r1 <= range . r1 && range . r1 <= this . r2 ; var bottomIn = this . r1 <= range . r2 && range . r2 <= this . r2 ; return topIn || bottomIn } } else if ( this . c1 <= range . c1 && range . c2 <= this . c2 && this . r1 <= range . r2 ) return true ; else if ( isDelete && this . r1 <= range . r1 && range . r2 <= this . r2 ) { var leftIn = this . c1 <= range . c1 && range . c1 <= this . c2 ; var rightIn = this . c1 <= range . c2 && range . c2 <= this . c2 ; return leftIn || rightIn } return false } ; Range . prototype . difference = function ( range ) { var res = [ ] ; var intersect ; if ( this . r1 >
0 ) { intersect = ( new Range ( 0 , 0 , gc _nMaxCol0 , this . r1 - 1 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . c1 > 0 ) { intersect = ( new Range ( 0 , this . r1 , this . c1 - 1 , this . r2 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . c2 < gc _nMaxCol0 ) { intersect = ( new Range ( this . c2 + 1 , this . r1 , gc _nMaxCol0 , this . r2 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } if ( this . r2 < gc _nMaxRow0 ) { intersect = ( new Range ( 0 , this . r2 + 1 , gc _nMaxCol0 , gc _nMaxRow0 ) ) . intersectionSimple ( range ) ; if ( intersect ) res . push ( intersect ) } return res } ;
Range . prototype . isIntersectForShiftCell = function ( col , row , offset ) { var isHor = offset && 0 != offset . col ; if ( isHor ) return this . r1 <= row && row <= this . r2 && this . c1 <= col ; else return this . c1 <= col && col <= this . c2 && this . r1 <= row } ; Range . prototype . forShift = function ( bbox , offset , bUndo ) { var isNoDelete = true ; var isHor = 0 != offset . col ; var toDelete = offset . col < 0 || offset . row < 0 ; var isLastRow = this . r2 === gc _nMaxRow0 ; var isLastCol = this . c2 === gc _nMaxCol0 ; if ( isHor ) if ( toDelete ) if ( this . c1 < bbox . c1 ) if ( this . c2 <= bbox . c2 ) this . setOffsetLast ( new AscCommon . CellBase ( 0 ,
- ( this . c2 - bbox . c1 + 1 ) ) ) ; else this . setOffsetLast ( offset ) ; else if ( this . c1 <= bbox . c2 ) if ( this . c2 <= bbox . c2 ) { if ( ! bUndo ) { var topIn = bbox . r1 <= this . r1 && this . r1 <= bbox . r2 ; var bottomIn = bbox . r1 <= this . r2 && this . r2 <= bbox . r2 ; if ( topIn && bottomIn ) isNoDelete = false ; else if ( topIn ) this . setOffsetFirst ( new AscCommon . CellBase ( bbox . r2 - this . r1 + 1 , 0 ) ) ; else if ( bottomIn ) this . setOffsetLast ( new AscCommon . CellBase ( bbox . r1 - this . r2 - 1 , 0 ) ) } } else { this . setOffsetFirst ( new AscCommon . CellBase ( 0 , bbox . c1 - this . c1 ) ) ; this . setOffsetLast ( offset ) } else this . setOffset ( offset ) ;
else if ( this . c1 < bbox . c1 ) this . setOffsetLast ( offset ) ; else if ( this . c1 + offset . col <= gc _nMaxCol0 ) this . setOffset ( offset ) ; else isNoDelete = false ; else if ( toDelete ) if ( this . r1 < bbox . r1 ) if ( this . r2 <= bbox . r2 ) this . setOffsetLast ( new AscCommon . CellBase ( - ( this . r2 - bbox . r1 + 1 ) , 0 ) ) ; else this . setOffsetLast ( offset ) ; else if ( this . r1 <= bbox . r2 ) if ( this . r2 <= bbox . r2 ) { if ( ! bUndo ) { var leftIn = bbox . c1 <= this . c1 && this . c1 <= bbox . c2 ; var rightIn = bbox . c1 <= this . c2 && this . c2 <= bbox . c2 ; if ( leftIn && rightIn ) isNoDelete = false ; else if ( leftIn ) this . setOffsetFirst ( new AscCommon . CellBase ( 0 ,
bbox . c2 - this . c1 + 1 ) ) ; else if ( rightIn ) this . setOffsetLast ( new AscCommon . CellBase ( 0 , bbox . c1 - this . c2 - 1 ) ) } } else { this . setOffsetFirst ( new AscCommon . CellBase ( bbox . r1 - this . r1 , 0 ) ) ; this . setOffsetLast ( offset ) } else this . setOffset ( offset ) ; else if ( this . r1 < bbox . r1 ) this . setOffsetLast ( offset ) ; else if ( this . r1 + offset . row <= gc _nMaxRow0 ) this . setOffset ( offset ) ; else isNoDelete = false ; if ( isLastRow ) this . r2 = gc _nMaxRow0 ; if ( isLastCol ) this . c2 = gc _nMaxCol0 ; return isNoDelete } ; Range . prototype . isOneCell = function ( ) { return this . r1 === this . r2 &&
this . c1 === this . c2 } ; Range . prototype . isOnTheEdge = function ( c , r ) { return this . r1 === r || this . r2 === r || this . c1 === c || this . c2 === c } ; Range . prototype . union = function ( range ) { var s1 = this . clone ( true ) , s2 = range instanceof Range ? range . clone ( true ) : new Range ( range . c1 , range . r1 , range . c2 , range . r2 , true ) ; return new Range ( Math . min ( s1 . c1 , s2 . c1 ) , Math . min ( s1 . r1 , s2 . r1 ) , Math . max ( s1 . c2 , s2 . c2 ) , Math . max ( s1 . r2 , s2 . r2 ) ) } ; Range . prototype . union2 = function ( range ) { this . c1 = Math . min ( this . c1 , range . c1 ) ; this . c2 = Math . max ( this . c2 , range . c2 ) ; this . r1 =
Math . min ( this . r1 , range . r1 ) ; this . r2 = Math . max ( this . r2 , range . r2 ) } ; Range . prototype . union3 = function ( c , r ) { this . c1 = Math . min ( this . c1 , c ) ; this . c2 = Math . max ( this . c2 , c ) ; this . r1 = Math . min ( this . r1 , r ) ; this . r2 = Math . max ( this . r2 , r ) } ; Range . prototype . setOffsetWithAbs = function ( offset , opt _canResize , opt _circle ) { var temp ; var row = offset . row ; var col = offset . col ; if ( 0 === this . r1 && gc _nMaxRow0 === this . r2 ) row = 0 ; else if ( 0 === this . c1 && gc _nMaxCol0 === this . c2 ) col = 0 ; var isAbsRow1 = this . isAbsRow ( this . refType1 ) ; var isAbsCol1 = this . isAbsCol ( this . refType1 ) ;
var isAbsRow2 = this . isAbsRow ( this . refType2 ) ; var isAbsCol2 = this . isAbsCol ( this . refType2 ) ; if ( ! isAbsRow1 ) { this . r1 += row ; if ( this . r1 < 0 ) if ( opt _circle ) this . r1 += gc _nMaxRow0 + 1 ; else { this . r1 = 0 ; if ( ! opt _canResize ) return false } if ( this . r1 > gc _nMaxRow0 ) if ( opt _circle ) this . r1 -= gc _nMaxRow0 + 1 ; else { this . r1 = gc _nMaxRow0 ; return false } } if ( ! isAbsCol1 ) { this . c1 += col ; if ( this . c1 < 0 ) if ( opt _circle ) this . c1 += gc _nMaxCol0 + 1 ; else { this . c1 = 0 ; if ( ! opt _canResize ) return false } if ( this . c1 > gc _nMaxCol0 ) if ( opt _circle ) this . c1 -= gc _nMaxCol0 + 1 ; else { this . c1 =
gc _nMaxCol0 ; return false } } if ( ! isAbsRow2 ) { this . r2 += row ; if ( this . r2 < 0 ) if ( opt _circle ) this . r2 += gc _nMaxRow0 + 1 ; else { this . r2 = 0 ; return false } if ( this . r2 > gc _nMaxRow0 ) if ( opt _circle ) this . r2 -= gc _nMaxRow0 + 1 ; else { this . r2 = gc _nMaxRow0 ; if ( ! opt _canResize ) return false } } if ( ! isAbsCol2 ) { this . c2 += col ; if ( this . c2 < 0 ) if ( opt _circle ) this . c2 += gc _nMaxCol0 + 1 ; else { this . c2 = 0 ; return false } if ( this . c2 > gc _nMaxCol0 ) if ( opt _circle ) this . c2 -= gc _nMaxCol0 + 1 ; else { this . c2 = gc _nMaxCol0 ; if ( ! opt _canResize ) return false } } if ( this . r1 > this . r2 ) { temp = this . r1 ;
this . r1 = this . r2 ; this . r2 = temp ; if ( ! isAbsRow1 && isAbsRow2 ) { isAbsRow1 = ! isAbsRow1 ; isAbsRow2 = ! isAbsRow2 ; this . setAbs ( isAbsRow1 , isAbsCol1 , isAbsRow2 , isAbsCol2 ) } } if ( this . c1 > this . c2 ) { temp = this . c1 ; this . c1 = this . c2 ; this . c2 = temp ; if ( ! isAbsCol1 && isAbsCol2 ) { isAbsCol1 = ! isAbsCol1 ; isAbsCol2 = ! isAbsCol2 ; this . setAbs ( isAbsRow1 , isAbsCol1 , isAbsRow2 , isAbsCol2 ) } } return true } ; Range . prototype . setOffset = function ( offset ) { if ( this . r1 == 0 && this . r2 == gc _nMaxRow0 && offset . row != 0 || this . c1 == 0 && this . c2 == gc _nMaxCol0 && offset . col != 0 ) return ; this . setOffsetFirst ( offset ) ;
this . setOffsetLast ( offset ) } ; Range . prototype . setOffsetFirst = function ( offset ) { this . c1 += offset . col ; if ( this . c1 < 0 ) this . c1 = 0 ; if ( this . c1 > gc _nMaxCol0 ) this . c1 = gc _nMaxCol0 ; this . r1 += offset . row ; if ( this . r1 < 0 ) this . r1 = 0 ; if ( this . r1 > gc _nMaxRow0 ) this . r1 = gc _nMaxRow0 } ; Range . prototype . setOffsetLast = function ( offset ) { this . c2 += offset . col ; if ( this . c2 < 0 ) this . c2 = 0 ; if ( this . c2 > gc _nMaxCol0 ) this . c2 = gc _nMaxCol0 ; this . r2 += offset . row ; if ( this . r2 < 0 ) this . r2 = 0 ; if ( this . r2 > gc _nMaxRow0 ) this . r2 = gc _nMaxRow0 } ; Range . prototype . _getName = function ( val ,
isCol , abs ) { var isR1C1Mode = AscCommonExcel . g _R1C1Mode ; val += 1 ; if ( isCol && ! isR1C1Mode ) val = g _oCellAddressUtils . colnumToColstr ( val ) ; return ( isR1C1Mode ? isCol ? "C" : "R" : "" ) + ( abs ? isR1C1Mode ? val : "$" + val : isR1C1Mode ? 0 !== ( val = val - ( isCol ? AscCommonExcel . g _ActiveCell . c1 : AscCommonExcel . g _ActiveCell . r1 ) - 1 ) ? "[" + val + "]" : "" : val ) } ; Range . prototype . getName = function ( refType ) { var isR1C1Mode = AscCommonExcel . g _R1C1Mode ; var c , r , type = this . getType ( ) ; var sRes = "" ; var c1Abs , c2Abs , r1Abs , r2Abs ; if ( referenceType . A === refType ) c1Abs = c2Abs = r1Abs =
r2Abs = true ; else if ( referenceType . R === refType ) c1Abs = c2Abs = r1Abs = r2Abs = false ; else { c1Abs = this . isAbsCol ( this . refType1 ) ; c2Abs = this . isAbsCol ( this . refType2 ) ; r1Abs = this . isAbsRow ( this . refType1 ) ; r2Abs = this . isAbsRow ( this . refType2 ) } if ( ( c _oAscSelectionType . RangeMax === type || c _oAscSelectionType . RangeRow === type ) && c1Abs === c2Abs ) { sRes = this . _getName ( this . r1 , false , r1Abs ) ; if ( this . r1 !== this . r2 || r1Abs !== r2Abs || ! isR1C1Mode ) sRes += ":" + this . _getName ( this . r2 , false , r2Abs ) } else if ( ( c _oAscSelectionType . RangeMax === type || c _oAscSelectionType . RangeCol ===
type ) && r1Abs === r2Abs ) { sRes = this . _getName ( this . c1 , true , c1Abs ) ; if ( this . c1 !== this . c2 || c1Abs !== c2Abs || ! isR1C1Mode ) sRes += ":" + this . _getName ( this . c2 , true , c2Abs ) } else { r = this . _getName ( this . r1 , false , r1Abs ) ; c = this . _getName ( this . c1 , true , c1Abs ) ; sRes = isR1C1Mode ? r + c : c + r ; if ( ! this . isOneCell ( ) || r1Abs !== r2Abs || c1Abs !== c2Abs ) { r = this . _getName ( this . r2 , false , r2Abs ) ; c = this . _getName ( this . c2 , true , c2Abs ) ; sRes += ":" + ( isR1C1Mode ? r + c : c + r ) } } return sRes } ; Range . prototype . getAbsName = function ( ) { return this . getName ( referenceType . A ) } ;
Range . prototype . getType = function ( ) { var bRow = 0 === this . c1 && gc _nMaxCol0 === this . c2 ; var bCol = 0 === this . r1 && gc _nMaxRow0 === this . r2 ; var res ; if ( bCol && bRow ) res = c _oAscSelectionType . RangeMax ; else if ( bCol ) res = c _oAscSelectionType . RangeCol ; else if ( bRow ) res = c _oAscSelectionType . RangeRow ; else res = c _oAscSelectionType . RangeCells ; return res } ; Range . prototype . getSharedRange = function ( sharedRef , c , r ) { var isAbsR1 = this . isAbsR1 ( ) ; var isAbsC1 = this . isAbsC1 ( ) ; var isAbsR2 = this . isAbsR2 ( ) ; var isAbsC2 = this . isAbsC2 ( ) ; if ( this . r1 === 0 &&
this . r2 === gc _nMaxRow0 ) isAbsR1 = isAbsR2 = true ; if ( this . c1 === 0 && this . c2 === gc _nMaxCol0 ) isAbsC1 = isAbsC2 = true ; var r1 = isAbsR2 ? sharedRef . r1 : Math . max ( sharedRef . r2 + ( r - this . r2 ) , sharedRef . r1 ) ; var c1 = isAbsC2 ? sharedRef . c1 : Math . max ( sharedRef . c2 + ( c - this . c2 ) , sharedRef . c1 ) ; var r2 = isAbsR1 ? sharedRef . r2 : Math . min ( sharedRef . r1 + ( r - this . r1 ) , sharedRef . r2 ) ; var c2 = isAbsC1 ? sharedRef . c2 : Math . min ( sharedRef . c1 + ( c - this . c1 ) , sharedRef . c2 ) ; return new Range ( c1 , r1 , c2 , r2 ) } ; Range . prototype . getSharedRangeBbox = function ( ref , base ) { var res = this . clone ( ) ;
var shiftBase ; var offset = new AscCommon . CellBase ( ref . r1 - base . nRow , ref . c1 - base . nCol ) ; if ( ! offset . isEmpty ( ) ) { shiftBase = this . clone ( ) ; shiftBase . setOffsetWithAbs ( offset , false , false ) } offset . row = ref . r2 - base . nRow ; offset . col = ref . c2 - base . nCol ; res . setOffsetWithAbs ( offset , false , false ) ; res . union2 ( shiftBase ? shiftBase : this ) ; return res } ; Range . prototype . getSharedIntersect = function ( sharedRef , bbox ) { var leftTop = this . getSharedRange ( sharedRef , bbox . c1 , bbox . r1 ) ; var rightBottom = this . getSharedRange ( sharedRef , bbox . c2 , bbox . r2 ) ;
return leftTop . union ( rightBottom ) } ; Range . prototype . setAbs = function ( absRow1 , absCol1 , absRow2 , absCol2 ) { this . refType1 = ( absRow1 ? 0 : 2 ) + ( absCol1 ? 0 : 1 ) ; this . refType2 = ( absRow2 ? 0 : 2 ) + ( absCol2 ? 0 : 1 ) } ; Range . prototype . isAbsCol = function ( refType ) { return refType === referenceType . A || refType === referenceType . RRAC } ; Range . prototype . isAbsRow = function ( refType ) { return refType === referenceType . A || refType === referenceType . ARRC } ; Range . prototype . isAbsR1 = function ( ) { return this . isAbsRow ( this . refType1 ) } ; Range . prototype . isAbsC1 = function ( ) { return this . isAbsCol ( this . refType1 ) } ;
Range . prototype . isAbsR2 = function ( ) { return this . isAbsRow ( this . refType2 ) } ; Range . prototype . isAbsC2 = function ( ) { return this . isAbsCol ( this . refType2 ) } ; Range . prototype . isAbsAll = function ( ) { return this . isAbsR1 ( ) && this . isAbsC1 ( ) && this . isAbsR2 ( ) && this . isAbsC2 ( ) } ; Range . prototype . switchReference = function ( ) { this . refType1 = ( this . refType1 + 1 ) % 4 ; this . refType2 = ( this . refType2 + 1 ) % 4 } ; Range . prototype . getWidth = function ( ) { return this . c2 - this . c1 + 1 } ; Range . prototype . getHeight = function ( ) { return this . r2 - this . r1 + 1 } ; function Range3D ( ) { this . sheet =
"" ; this . sheet2 = "" ; if ( 3 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) ; this . refType1 = range . refType1 ; this . refType2 = range . refType2 ; this . sheet = arguments [ 1 ] ; this . sheet2 = arguments [ 2 ] } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) } Range3D . prototype = Object . create ( Range . prototype ) ; Range3D . prototype . constructor = Range3D ; Range3D . prototype . isIntersect = function ( ) { var oRes = true ; if ( 2 == arguments . length ) oRes = this . sheet === arguments [ 1 ] ;
return oRes && Range . prototype . isIntersect . apply ( this , arguments ) } ; Range3D . prototype . clone = function ( ) { return new Range3D ( Range . prototype . clone . apply ( this , arguments ) , this . sheet , this . sheet2 ) } ; Range3D . prototype . setSheet = function ( sheet , sheet2 ) { this . sheet = sheet ; this . sheet2 = sheet2 ? sheet2 : sheet } ; Range3D . prototype . getName = function ( ) { return AscCommon . parserHelp . get3DRef ( this . sheet , Range . prototype . getName . apply ( this ) ) } ; function SelectionRange ( ws ) { this . ranges = [ new Range ( 0 , 0 , 0 , 0 ) ] ; this . activeCell = new AscCommon . CellBase ( 0 ,
0 ) ; this . activeCellId = 0 ; this . worksheet = ws } SelectionRange . prototype . clean = function ( ) { this . ranges = [ new Range ( 0 , 0 , 0 , 0 ) ] ; this . activeCellId = 0 ; this . activeCell . clean ( ) } ; SelectionRange . prototype . contains = function ( c , r ) { return this . ranges . some ( function ( item ) { return item . contains ( c , r ) } ) } ; SelectionRange . prototype . contains2 = function ( cell ) { return this . contains ( cell . col , cell . row ) } ; SelectionRange . prototype . containsCol = function ( c ) { return this . ranges . some ( function ( item ) { return item . containsCol ( c ) } ) } ; SelectionRange . prototype . containsRow =
function ( r ) { return this . ranges . some ( function ( item ) { return item . containsRow ( r ) } ) } ; SelectionRange . prototype . inContains = function ( ranges ) { return this . ranges . every ( function ( item1 ) { return ranges . some ( function ( item2 ) { return item2 . containsRange ( item1 ) } ) } ) } ; SelectionRange . prototype . containsRange = function ( range ) { return this . ranges . some ( function ( item ) { return item . containsRange ( range ) } ) } ; SelectionRange . prototype . clone = function ( worksheet ) { var res = new SelectionRange ; res . ranges = this . ranges . map ( function ( range ) { return range . clone ( ) } ) ;
res . activeCell = this . activeCell . clone ( ) ; res . activeCellId = this . activeCellId ; res . worksheet = worksheet || this . worksheet ; return res } ; SelectionRange . prototype . isEqual = function ( range ) { if ( this . activeCellId !== range . activeCellId || ! this . activeCell . isEqual ( range . activeCell ) || this . ranges . length !== range . ranges . length ) return false ; for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( ! this . ranges [ i ] . isEqual ( range . ranges [ i ] ) ) return false ; return true } ; SelectionRange . prototype . addRange = function ( ) { this . activeCellId = this . ranges . push ( new Range ( 0 ,
0 , 0 , 0 ) ) - 1 ; this . activeCell . clean ( ) } ; SelectionRange . prototype . assign2 = function ( range ) { this . clean ( ) ; this . getLast ( ) . assign2 ( range ) ; this . update ( ) } ; SelectionRange . prototype . union = function ( range ) { var res = this . ranges . some ( function ( item ) { var success = false ; if ( item . c1 === range . c1 && item . c2 === range . c2 ) if ( range . r1 === item . r2 + 1 ) { item . r2 = range . r2 ; success = true } else { if ( range . r2 === item . r1 - 1 ) { item . r1 = range . r1 ; success = true } } else if ( item . r1 === range . r1 && item . r2 === range . r2 ) if ( range . c1 === item . c2 + 1 ) { item . c2 = range . c2 ; success =
true } else if ( range . c2 === item . c1 - 1 ) { item . c1 = range . c1 ; success = true } return success } ) ; if ( ! res ) { this . addRange ( ) ; this . getLast ( ) . assign2 ( range ) } } ; SelectionRange . prototype . getUnion = function ( ) { var result = new SelectionRange ( this . worksheet ) ; var unionRanges = function ( ranges , res ) { for ( var i = 0 ; i < ranges . length ; ++ i ) if ( 0 === i ) res . assign2 ( ranges [ i ] ) ; else res . union ( ranges [ i ] ) } ; unionRanges ( this . ranges , result ) ; var isUnion = true , resultTmp ; while ( isUnion && ! result . isSingleRange ( ) ) { resultTmp = new SelectionRange ( this . worksheet ) ;
unionRanges ( result . ranges , resultTmp ) ; isUnion = result . ranges . length !== resultTmp . ranges . length ; result = resultTmp } return result } ; SelectionRange . prototype . offsetCell = function ( dr , dc , changeRange , fCheckSize ) { var done , curRange , mc , incompleate ; if ( 1 === this . ranges . length ) { curRange = this . ranges [ this . activeCellId ] ; if ( curRange . isOneCell ( ) ) return 0 ; else { mc = this . worksheet . getMergedByCell ( this . activeCell . row , this . activeCell . col ) ; if ( mc && curRange . isEqual ( mc ) ) return 0 } } var lastRow = this . activeCell . row ; var lastCol = this . activeCell . col ;
this . activeCell . row += dr ; this . activeCell . col += dc ; while ( ! done ) { done = true ; curRange = this . ranges [ this . activeCellId ] ; if ( ! curRange . contains2 ( this . activeCell ) ) { if ( dr ) if ( 0 < dr ) { this . activeCell . row = curRange . r1 ; this . activeCell . col += 1 } else { this . activeCell . row = curRange . r2 ; this . activeCell . col -= 1 } else if ( 0 < dc ) { this . activeCell . row += 1 ; this . activeCell . col = curRange . c1 } else { this . activeCell . row -= 1 ; this . activeCell . col = curRange . c2 } if ( ! curRange . contains2 ( this . activeCell ) ) { if ( ! changeRange ) { this . activeCell . row = lastRow ; this . activeCell . col =
lastCol ; return - 1 } if ( 0 < dc || 0 < dr ) { this . activeCellId += 1 ; this . activeCellId = this . ranges . length > this . activeCellId ? this . activeCellId : 0 ; curRange = this . ranges [ this . activeCellId ] ; this . activeCell . row = curRange . r1 ; this . activeCell . col = curRange . c1 } else { this . activeCellId -= 1 ; this . activeCellId = 0 <= this . activeCellId ? this . activeCellId : this . ranges . length - 1 ; curRange = this . ranges [ this . activeCellId ] ; this . activeCell . row = curRange . r2 ; this . activeCell . col = curRange . c2 } } } mc = this . worksheet . getMergedByCell ( this . activeCell . row , this . activeCell . col ) ;
if ( mc ) { incompleate = ! curRange . containsRange ( mc ) ; if ( dc > 0 && ( incompleate || this . activeCell . col > mc . c1 || this . activeCell . row !== mc . r1 ) ) { this . activeCell . col = mc . c2 + 1 ; done = false } else if ( dc < 0 && ( incompleate || this . activeCell . col < mc . c2 || this . activeCell . row !== mc . r1 ) ) { this . activeCell . col = mc . c1 - 1 ; done = false } if ( dr > 0 && ( incompleate || this . activeCell . row > mc . r1 || this . activeCell . col !== mc . c1 ) ) { this . activeCell . row = mc . r2 + 1 ; done = false } else if ( dr < 0 && ( incompleate || this . activeCell . row < mc . r2 || this . activeCell . col !== mc . c1 ) ) { this . activeCell . row =
mc . r1 - 1 ; done = false } } if ( ! done ) continue ; while ( this . activeCell . col >= curRange . c1 && this . activeCell . col <= curRange . c2 && fCheckSize ( - 1 , this . activeCell . col ) ) { this . activeCell . col += dc || ( dr > 0 ? + 1 : - 1 ) ; done = false } if ( ! done ) continue ; while ( this . activeCell . row >= curRange . r1 && this . activeCell . row <= curRange . r2 && fCheckSize ( this . activeCell . row , - 1 ) ) { this . activeCell . row += dr || ( dc > 0 ? + 1 : - 1 ) ; done = false } if ( ! done ) continue ; break } return lastRow !== this . activeCell . row || lastCol !== this . activeCell . col ? 1 : - 1 } ; SelectionRange . prototype . setActiveCell =
function ( r , c ) { this . activeCell . row = r ; this . activeCell . col = c ; this . update ( ) } ; SelectionRange . prototype . validActiveCell = function ( ) { var res = true ; var mc = this . worksheet . getMergedByCell ( this . activeCell . row , this . activeCell . col ) ; if ( mc ) { var curRange = this . ranges [ this . activeCellId ] ; if ( ! curRange . containsRange ( mc ) ) if ( - 1 === this . offsetCell ( 1 , 0 , false , function ( ) { return false } ) ) { res = false ; this . activeCell . row = mc . r1 ; this . activeCell . col = mc . c1 } } return res } ; SelectionRange . prototype . getLast = function ( ) { return this . ranges [ this . ranges . length -
1 ] } ; SelectionRange . prototype . isSingleRange = function ( ) { return 1 === this . ranges . length } ; SelectionRange . prototype . update = function ( ) { var range = this . ranges [ this . activeCellId ] ; if ( ! range || ! range . contains ( this . activeCell . col , this . activeCell . row ) ) { range = this . getLast ( ) ; this . activeCell . col = range . c1 ; this . activeCell . row = range . r1 ; this . activeCellId = this . ranges . length - 1 } } ; SelectionRange . prototype . WriteToBinary = function ( w ) { w . WriteLong ( this . ranges . length ) ; for ( var i = 0 ; i < this . ranges . length ; ++ i ) { var range = this . ranges [ i ] ;
w . WriteLong ( range . c1 ) ; w . WriteLong ( range . r1 ) ; w . WriteLong ( range . c2 ) ; w . WriteLong ( range . r2 ) } w . WriteLong ( this . activeCell . row ) ; w . WriteLong ( this . activeCell . col ) ; w . WriteLong ( this . activeCellId ) } ; SelectionRange . prototype . ReadFromBinary = function ( r ) { this . clean ( ) ; var count = r . GetLong ( ) ; var rangesNew = [ ] ; for ( var i = 0 ; i < count ; ++ i ) { var range = new Asc . Range ( r . GetLong ( ) , r . GetLong ( ) , r . GetLong ( ) , r . GetLong ( ) ) ; rangesNew . push ( range ) } if ( rangesNew . length > 0 ) this . ranges = rangesNew ; this . activeCell . row = r . GetLong ( ) ; this . activeCell . col =
r . GetLong ( ) ; this . activeCellId = r . GetLong ( ) ; this . update ( ) } ; SelectionRange . prototype . Select = function ( ) { this . worksheet . selectionRange = this . clone ( ) ; this . worksheet . workbook . handlers . trigger ( "updateSelection" ) } ; function ActiveRange ( ) { if ( 1 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) ; this . refType1 = range . refType1 ; this . refType2 = range . refType2 } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) ; this . startCol = 0 ; this . startRow = 0 ;
this . _updateAdditionalData ( ) } ActiveRange . prototype = Object . create ( Range . prototype ) ; ActiveRange . prototype . constructor = ActiveRange ; ActiveRange . prototype . assign = function ( ) { Range . prototype . assign . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . assign2 = function ( ) { Range . prototype . assign2 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . clone = function ( ) { var oRes = new ActiveRange ( Range . prototype . clone . apply ( this , arguments ) ) ; oRes . startCol =
this . startCol ; oRes . startRow = this . startRow ; return oRes } ; ActiveRange . prototype . normalize = function ( ) { Range . prototype . normalize . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . isEqualAll = function ( ) { var bRes = Range . prototype . isEqual . apply ( this , arguments ) ; if ( bRes && arguments . length > 0 ) { var range = arguments [ 0 ] ; bRes = this . startCol == range . startCol && this . startRow == range . startRow } return bRes } ; ActiveRange . prototype . contains = function ( ) { return Range . prototype . contains . apply ( this ,
arguments ) } ; ActiveRange . prototype . containsRange = function ( ) { return Range . prototype . containsRange . apply ( this , arguments ) } ; ActiveRange . prototype . containsFirstLineRange = function ( ) { return Range . prototype . containsFirstLineRange . apply ( this , arguments ) } ; ActiveRange . prototype . intersection = function ( ) { var oRes = Range . prototype . intersection . apply ( this , arguments ) ; if ( null != oRes ) { oRes = new ActiveRange ( oRes ) ; oRes . _updateAdditionalData ( ) } return oRes } ; ActiveRange . prototype . intersectionSimple = function ( ) { var oRes = Range . prototype . intersectionSimple . apply ( this ,
arguments ) ; if ( null != oRes ) { oRes = new ActiveRange ( oRes ) ; oRes . _updateAdditionalData ( ) } return oRes } ; ActiveRange . prototype . union = function ( ) { var oRes = new ActiveRange ( Range . prototype . union . apply ( this , arguments ) ) ; oRes . _updateAdditionalData ( ) ; return oRes } ; ActiveRange . prototype . union2 = function ( ) { Range . prototype . union2 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . union3 = function ( ) { Range . prototype . union3 . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . setOffset =
function ( offset ) { this . setOffsetFirst ( offset ) ; this . setOffsetLast ( offset ) } ; ActiveRange . prototype . setOffsetFirst = function ( offset ) { Range . prototype . setOffsetFirst . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . setOffsetLast = function ( offset ) { Range . prototype . setOffsetLast . apply ( this , arguments ) ; this . _updateAdditionalData ( ) ; return this } ; ActiveRange . prototype . _updateAdditionalData = function ( ) { if ( ! this . contains ( this . startCol , this . startRow ) ) { this . startCol = this . c1 ; this . startRow =
this . r1 } } ; function FormulaRange ( ) { if ( 1 == arguments . length ) { var range = arguments [ 0 ] ; Range . call ( this , range . c1 , range . r1 , range . c2 , range . r2 ) } else if ( arguments . length > 1 ) Range . apply ( this , arguments ) ; else Range . call ( this , 0 , 0 , 0 , 0 ) ; this . refType1 = referenceType . R ; this . refType2 = referenceType . R } FormulaRange . prototype = Object . create ( Range . prototype ) ; FormulaRange . prototype . constructor = FormulaRange ; FormulaRange . prototype . clone = function ( ) { var oRes = new FormulaRange ( Range . prototype . clone . apply ( this , arguments ) ) ; oRes . refType1 =
this . refType1 ; oRes . refType2 = this . refType2 ; return oRes } ; FormulaRange . prototype . intersection = function ( ) { var oRes = Range . prototype . intersection . apply ( this , arguments ) ; if ( null != oRes ) oRes = new FormulaRange ( oRes ) ; return oRes } ; FormulaRange . prototype . intersectionSimple = function ( ) { var oRes = Range . prototype . intersectionSimple . apply ( this , arguments ) ; if ( null != oRes ) oRes = new FormulaRange ( oRes ) ; return oRes } ; FormulaRange . prototype . union = function ( ) { return new FormulaRange ( Range . prototype . union . apply ( this , arguments ) ) } ;
FormulaRange . prototype . getName = function ( ) { var sRes = "" ; var c1Abs = this . isAbsCol ( this . refType1 ) , c2Abs = this . isAbsCol ( this . refType2 ) ; var r1Abs = this . isAbsRow ( this . refType1 ) , r2Abs = this . isAbsRow ( this . refType2 ) ; if ( 0 == this . c1 && gc _nMaxCol0 == this . c2 ) { if ( r1Abs ) sRes += "$" ; sRes += this . r1 + 1 + ":" ; if ( r2Abs ) sRes += "$" ; sRes += this . r2 + 1 } else if ( 0 == this . r1 && gc _nMaxRow0 == this . r2 ) { if ( c1Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c1 + 1 ) + ":" ; if ( c2Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c2 + 1 ) } else { if ( c1Abs ) sRes +=
"$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c1 + 1 ) ; if ( r1Abs ) sRes += "$" ; sRes += this . r1 + 1 ; if ( ! this . isOneCell ( ) ) { sRes += ":" ; if ( c2Abs ) sRes += "$" ; sRes += g _oCellAddressUtils . colnumToColstr ( this . c2 + 1 ) ; if ( r2Abs ) sRes += "$" ; sRes += this . r2 + 1 } } return sRes } ; function MultiplyRange ( ranges ) { this . ranges = ranges } MultiplyRange . prototype . clone = function ( ) { return new MultiplyRange ( this . ranges . slice ( ) ) } ; MultiplyRange . prototype . union2 = function ( multiplyRange ) { this . ranges = this . ranges . concat ( multiplyRange . ranges ) } ; MultiplyRange . prototype . isIntersect =
function ( range ) { for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( range . isIntersect ( this . ranges [ i ] ) ) return true ; return false } ; MultiplyRange . prototype . contains = function ( c , r ) { for ( var i = 0 ; i < this . ranges . length ; ++ i ) if ( this . ranges [ i ] . contains ( c , r ) ) return true ; return false } ; MultiplyRange . prototype . getUnionRange = function ( ) { if ( 0 === this . ranges . length ) return null ; var res = this . ranges [ 0 ] . clone ( ) ; for ( var i = 1 ; i < this . ranges . length ; ++ i ) res . union2 ( this . ranges [ i ] ) ; return res } ; function VisibleRange ( visibleRange , offsetX , offsetY ) { this . visibleRange =
visibleRange ; this . offsetX = offsetX ; this . offsetY = offsetY } function RangeCache ( ) { this . oCache = { } } RangeCache . prototype . getAscRange = function ( sRange ) { return this . _getRange ( sRange , 1 ) } ; RangeCache . prototype . getRange3D = function ( sRange ) { var res = AscCommon . parserHelp . parse3DRef ( sRange ) ; if ( ! res ) return null ; var range = this . _getRange ( res . range . toUpperCase ( ) , 1 ) ; return range ? new Range3D ( range , res . sheet , res . sheet2 ) : null } ; RangeCache . prototype . getActiveRange = function ( sRange ) { return this . _getRange ( sRange , 2 ) } ; RangeCache . prototype . getRangesFromSqRef =
function ( sqRef ) { var res = [ ] ; var refs = sqRef . split ( " " ) ; for ( var i = 0 ; i < refs . length ; ++ i ) { var ref = AscCommonExcel . g _oRangeCache . getAscRange ( refs [ i ] ) ; if ( ref ) res . push ( ref . clone ( ) ) } return res } ; RangeCache . prototype . getFormulaRange = function ( sRange ) { return this . _getRange ( sRange , 3 ) } ; RangeCache . prototype . _getRange = function ( sRange , type ) { if ( AscCommonExcel . g _R1C1Mode ) { var o = { Formula : sRange , pCurrPos : 0 } ; if ( AscCommon . parserHelp . isArea . call ( o , o . Formula , o . pCurrPos ) ) sRange = o . real _str ; else if ( AscCommon . parserHelp . isRef . call ( o ,
o . Formula , o . pCurrPos ) ) sRange = o . real _str } var oRes = null ; var oCacheVal = this . oCache [ sRange ] ; if ( null == oCacheVal ) { var oFirstAddr , oLastAddr ; var bIsSingle = true ; var nIndex = sRange . indexOf ( ":" ) ; if ( - 1 != nIndex ) { bIsSingle = false ; oFirstAddr = g _oCellAddressUtils . getCellAddress ( sRange . substring ( 0 , nIndex ) ) ; oLastAddr = g _oCellAddressUtils . getCellAddress ( sRange . substring ( nIndex + 1 ) ) } else oFirstAddr = oLastAddr = g _oCellAddressUtils . getCellAddress ( sRange ) ; oCacheVal = { first : null , last : null , ascRange : null , formulaRange : null , activeRange : null } ;
if ( oFirstAddr . isValid ( ) && oLastAddr . isValid ( ) && ( ! bIsSingle || ! oFirstAddr . getIsRow ( ) && ! oFirstAddr . getIsCol ( ) ) ) { oCacheVal . first = oFirstAddr ; oCacheVal . last = oLastAddr } this . oCache [ sRange ] = oCacheVal } if ( 1 == type ) oRes = oCacheVal . ascRange ; else if ( 2 == type ) oRes = oCacheVal . activeRange ; else oRes = oCacheVal . formulaRange ; if ( null == oRes && null != oCacheVal . first && null != oCacheVal . last ) { var r1 = oCacheVal . first . getRow0 ( ) , r2 = oCacheVal . last . getRow0 ( ) , c1 = oCacheVal . first . getCol0 ( ) , c2 = oCacheVal . last . getCol0 ( ) ; var r1Abs = oCacheVal . first . getRowAbs ( ) ,
r2Abs = oCacheVal . last . getRowAbs ( ) , c1Abs = oCacheVal . first . getColAbs ( ) , c2Abs = oCacheVal . last . getColAbs ( ) ; if ( oCacheVal . first . getIsRow ( ) && oCacheVal . last . getIsRow ( ) ) { c1 = 0 ; c2 = gc _nMaxCol0 } if ( oCacheVal . first . getIsCol ( ) && oCacheVal . last . getIsCol ( ) ) { r1 = 0 ; r2 = gc _nMaxRow0 } if ( r1 > r2 ) { var temp = r1 ; r1 = r2 ; r2 = temp ; temp = r1Abs ; r1Abs = r2Abs ; r2Abs = temp } if ( c1 > c2 ) { var temp = c1 ; c1 = c2 ; c2 = temp ; temp = c1Abs ; c1Abs = c2Abs ; c2Abs = temp } if ( 1 == type ) { if ( null == oCacheVal . ascRange ) { var oAscRange = new Range ( c1 , r1 , c2 , r2 ) ; oAscRange . setAbs ( r1Abs , c1Abs ,
r2Abs , c2Abs ) ; oCacheVal . ascRange = oAscRange } oRes = oCacheVal . ascRange } else if ( 2 == type ) { if ( null == oCacheVal . activeRange ) { var oActiveRange = new ActiveRange ( c1 , r1 , c2 , r2 ) ; oActiveRange . setAbs ( r1Abs , c1Abs , r2Abs , c2Abs ) ; oActiveRange . startCol = oActiveRange . c1 ; oActiveRange . startRow = oActiveRange . r1 ; oCacheVal . activeRange = oActiveRange } oRes = oCacheVal . activeRange } else { if ( null == oCacheVal . formulaRange ) { var oFormulaRange = new FormulaRange ( c1 , r1 , c2 , r2 ) ; oFormulaRange . setAbs ( r1Abs , c1Abs , r2Abs , c2Abs ) ; oCacheVal . formulaRange = oFormulaRange } oRes =
oCacheVal . formulaRange } } return oRes } ; var g _oRangeCache = new RangeCache ; function HandlersList ( handlers ) { if ( ! ( this instanceof HandlersList ) ) return new HandlersList ( handlers ) ; this . handlers = handlers || { } ; return this } HandlersList . prototype = { constructor : HandlersList , trigger : function ( eventName ) { var h = this . handlers [ eventName ] , t = typeOf ( h ) , a = Array . prototype . slice . call ( arguments , 1 ) , i ; if ( t === kFunctionL ) return h . apply ( this , a ) ; if ( t === kArrayL ) { for ( i = 0 ; i < h . length ; i += 1 ) if ( typeOf ( h [ i ] ) === kFunctionL ) h [ i ] . apply ( this , a ) ;
return true } return false } , add : function ( eventName , eventHandler , replaceOldHandler ) { var th = this . handlers , h , old , t ; if ( replaceOldHandler || ! th . hasOwnProperty ( eventName ) ) th [ eventName ] = eventHandler ; else { old = h = th [ eventName ] ; t = typeOf ( old ) ; if ( t !== kArrayL ) { h = th [ eventName ] = [ ] ; if ( t === kFunctionL ) h . push ( old ) } h . push ( eventHandler ) } } , remove : function ( eventName , eventHandler ) { var th = this . handlers , h = th [ eventName ] , i ; if ( th . hasOwnProperty ( eventName ) ) { if ( typeOf ( h ) !== kArrayL || typeOf ( eventHandler ) !== kFunctionL ) { delete th [ eventName ] ;
return true } for ( i = h . length - 1 ; i >= 0 ; i -= 1 ) if ( h [ i ] === eventHandler ) { delete h [ i ] ; return true } } return false } } ; function outputDebugStr ( channel ) { var c = window . console ; if ( Asc . g _debug _mode && c && c [ channel ] && c [ channel ] . apply ) c [ channel ] . apply ( this , Array . prototype . slice . call ( arguments , 1 ) ) } function trim ( val ) { if ( ! String . prototype . trim ) return val . trim ( ) ; else return val . replace ( /^\s+|\s+$/g , "" ) } function isNumberInfinity ( val ) { var valTrim = trim ( val ) ; var valInt = valTrim - 0 ; return valInt == valTrim && valTrim . length > 0 && MIN _EXCEL _INT <
valInt && valInt < MAX _EXCEL _INT } function arrayToLowerCase ( array ) { var result = [ ] ; for ( var i = 0 , length = array . length ; i < length ; ++ i ) result . push ( array [ i ] . toLowerCase ( ) ) ; return result } function isFixedWidthCell ( frag ) { for ( var i = 0 ; i < frag . length ; ++ i ) { var f = frag [ i ] . format ; if ( f && f . getRepeat ( ) ) return true } return false } function dropDecimalAutofit ( f ) { var s = getFragmentsText ( f ) ; if ( s . search ( /E/i ) >= 0 ) return f ; var pos = s . indexOf ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; if ( - 1 !== pos ) { f = [ f [ 0 ] . clone ( ) ] ; f [ 0 ] . text =
s . slice ( 0 , pos ) } return f } function getFragmentsText ( f ) { return f . reduce ( function ( pv , cv ) { return pv + cv . text } , "" ) } function getFragmentsLength ( f ) { return f . length > 0 ? f . reduce ( function ( pv , cv ) { return pv + cv . text . length } , 0 ) : 0 } function executeInR1C1Mode ( mode , runFunction ) { var oldMode = AscCommonExcel . g _R1C1Mode ; AscCommonExcel . g _R1C1Mode = mode ; runFunction ( ) ; AscCommonExcel . g _R1C1Mode = oldMode } function checkFilteringMode ( f , oThis , args ) { if ( ! window [ "AscCommonExcel" ] . filteringMode ) AscCommon . History . LocalChange = true ; var ret =
f . apply ( oThis , args ) ; if ( ! window [ "AscCommonExcel" ] . filteringMode ) AscCommon . History . LocalChange = false ; return ret } function getEndValueRange ( dx , start , v1 , v2 ) { var x1 , x2 ; if ( 0 !== dx ) if ( start === v1 ) { x1 = v1 ; x2 = v2 } else if ( start === v2 ) { x1 = v2 ; x2 = v1 } else if ( 0 > dx ) { x1 = v2 ; x2 = v1 } else { x1 = v1 ; x2 = v2 } else { x1 = v1 ; x2 = v2 } return { x1 : x1 , x2 : x2 } } function checkStylesNames ( cellStyles ) { var oStyle , i ; for ( i = 0 ; i < cellStyles . DefaultStyles . length ; ++ i ) { oStyle = cellStyles . DefaultStyles [ i ] ; AscFonts . FontPickerByCharacter . getFontsByString ( oStyle . Name ) ;
AscFonts . FontPickerByCharacter . getFontsByString ( AscCommon . translateManager . getValue ( oStyle . Name ) ) } for ( i = 0 ; i < cellStyles . CustomStyles . length ; ++ i ) { oStyle = cellStyles . CustomStyles [ i ] ; AscFonts . FontPickerByCharacter . getFontsByString ( oStyle . Name ) } } function getContext ( w , h , wb ) { var oCanvas = document . createElement ( "canvas" ) ; oCanvas . width = w ; oCanvas . height = h ; return new Asc . DrawingContext ( { canvas : oCanvas , units : 0 , fmgrGraphics : wb . fmgrGraphics , font : wb . m _oFont } ) } function getGraphics ( ctx ) { var graphics = new AscCommon . CGraphics ;
graphics . init ( ctx . ctx , ctx . getWidth ( 0 ) , ctx . getHeight ( 0 ) , ctx . getWidth ( 3 ) , ctx . getHeight ( 3 ) ) ; graphics . m _oFontManager = AscCommon . g _fontManager ; return graphics } function generateCellStyles ( w , h , wb ) { var result = [ ] ; if ( AscCommon . AscBrowser . isRetina ) { w = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; h = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) } var ctx = getContext ( w , h , wb ) ; var oCanvas = ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; function addStyles ( styles , type ) { var oStyle , name , displayName ; for ( var i = 0 ; i < styles . length &&
i < 1E3 ; ++ i ) { oStyle = styles [ i ] ; if ( oStyle . Hidden ) continue ; name = displayName = oStyle . Name ; if ( type === AscCommon . c _oAscStyleImage . Default ) { oStyle = cellStyles . getCustomStyleByBuiltinId ( oStyle . BuiltinId ) || oStyle ; displayName = AscCommon . translateManager . getValue ( name ) } else if ( null !== oStyle . BuiltinId ) continue ; if ( window [ "IS_NATIVE_EDITOR" ] ) window [ "native" ] [ "BeginDrawStyle" ] ( type , name ) ; drawStyle ( ctx , graphics , wb . stringRender , oStyle , displayName , w , h ) ; if ( window [ "IS_NATIVE_EDITOR" ] ) window [ "native" ] [ "EndDrawStyle" ] ( ) ; else result . push ( new AscCommon . CStyleImage ( name ,
type , oCanvas . toDataURL ( "image/png" ) ) ) } } var cellStyles = wb . model . CellStyles ; addStyles ( cellStyles . CustomStyles , AscCommon . c _oAscStyleImage . Document ) ; addStyles ( cellStyles . DefaultStyles , AscCommon . c _oAscStyleImage . Default ) ; return result } function drawStyle ( ctx , graphics , sr , oStyle , sStyleName , width , height ) { var bc = null , bs = AscCommon . c _oAscBorderStyles . None , isNotFirst = false ; ctx . clear ( ) ; if ( oStyle . ApplyFill ) { var fill = oStyle . getFill ( ) ; if ( null !== fill ) AscCommonExcel . drawFillCell ( ctx , graphics , fill , new AscCommon . asc _CRect ( 0 ,
0 , width , height ) ) } function drawBorder ( type , b , x1 , y1 , x2 , y2 ) { if ( b && b . w > 0 ) { var isStroke = false ; var isNewColor = ! AscCommonExcel . g _oColorManager . isEqual ( bc , b . c ) ; var isNewStyle = bs !== b . s ; if ( isNotFirst && ( isNewColor || isNewStyle ) ) { ctx . stroke ( ) ; isStroke = true } if ( isNewColor ) { bc = b . c ; ctx . setStrokeStyle ( bc ) } if ( isNewStyle ) { bs = b . s ; ctx . setLineWidth ( b . w ) ; ctx . setLineDash ( b . getDashSegments ( ) ) } if ( isStroke || false === isNotFirst ) { isNotFirst = true ; ctx . beginPath ( ) } switch ( type ) { case AscCommon . c _oAscBorderType . Hor : ctx . lineHor ( x1 , y1 ,
x2 ) ; break ; case AscCommon . c _oAscBorderType . Ver : ctx . lineVer ( x1 , y1 , y2 ) ; break ; case AscCommon . c _oAscBorderType . Diag : ctx . lineDiag ( x1 , y1 , x2 , y2 ) ; break } } } if ( oStyle . ApplyBorder ) { var oBorders = oStyle . getBorder ( ) ; drawBorder ( AscCommon . c _oAscBorderType . Ver , oBorders . l , 0 , 0 , 0 , height ) ; drawBorder ( AscCommon . c _oAscBorderType . Hor , oBorders . b , 0 , height - 1 , width , height - 1 ) ; drawBorder ( AscCommon . c _oAscBorderType . Ver , oBorders . r , width - 1 , height , width - 1 , 0 ) ; drawBorder ( AscCommon . c _oAscBorderType . Hor , oBorders . t , width , 0 , 0 , 0 ) ; if ( isNotFirst ) ctx . stroke ( ) } var format =
oStyle . getFont ( ) . clone ( ) ; var nSize = format . getSize ( ) ; if ( 16 < format . getSize ( ) ) nSize = 16 ; if ( window [ "IS_NATIVE_EDITOR" ] ) nSize *= AscCommon . AscBrowser . retinaPixelRatio ; format . setSize ( nSize ) ; var width _padding = 4 ; var tm = sr . measureString ( sStyleName ) ; var textY = Asc . round ( . 5 * ( height - tm . height ) ) ; ctx . setFont ( format ) ; ctx . setFillStyle ( oStyle . getFontColor ( ) || new AscCommon . CColor ( 0 , 0 , 0 ) ) ; ctx . fillText ( sStyleName , width _padding , textY + tm . baseline ) } function drawFillCell ( ctx , graphics , fill , rect ) { if ( ! fill . hasFill ( ) ) return ; var solid =
fill . getSolidFill ( ) ; if ( solid ) { ctx . setFillStyle ( solid ) . fillRect ( rect . _x , rect . _y , rect . _width , rect . _height ) ; return } var dScale = Asc . getCvtRatio ( 0 , 3 , ctx . getPPIX ( ) ) ; rect . _x *= dScale ; rect . _y *= dScale ; rect . _width *= dScale ; rect . _height *= dScale ; AscFormat . ExecuteNoHistory ( function ( ) { var geometry = new AscFormat . CreateGeometry ( "rect" ) ; geometry . Recalculate ( rect . _width , rect . _height , true ) ; var oUniFill = AscCommonExcel . convertFillToUnifill ( fill ) ; if ( ctx instanceof AscCommonExcel . CPdfPrinter ) { graphics . SaveGrState ( ) ; var _baseTransform ;
if ( ! ctx . Transform ) _baseTransform = new AscCommon . CMatrix ; else _baseTransform = ctx . Transform ; graphics . SetBaseTransform ( _baseTransform ) } graphics . save ( ) ; var oMatrix = new AscCommon . CMatrix ; oMatrix . tx = rect . _x ; oMatrix . ty = rect . _y ; graphics . transform3 ( oMatrix ) ; var shapeDrawer = new AscCommon . CShapeDrawer ; shapeDrawer . Graphics = graphics ; shapeDrawer . fromShape2 ( new AscFormat . CColorObj ( null , oUniFill , geometry ) , graphics , geometry ) ; shapeDrawer . draw ( geometry ) ; graphics . restore ( ) ; if ( ctx instanceof AscCommonExcel . CPdfPrinter ) { graphics . SetBaseTransform ( null ) ;
graphics . RestoreGrState ( ) } } , this , [ ] ) } function generateSlicerStyles ( w , h , wb ) { var result = [ ] ; if ( AscCommon . AscBrowser . isRetina ) { w = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; h = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) } var ctx = getContext ( w , h , wb ) ; var oCanvas = ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; function addStyles ( styles , type ) { for ( var sStyleName in styles ) if ( styles . hasOwnProperty ( sStyleName ) ) { var oSlicerStyle = styles [ sStyleName ] ; var oTableStyle = oAllTableStyles [ sStyleName ] ; if ( oSlicerStyle &&
oTableStyle ) { drawSlicerStyle ( ctx , graphics , oSlicerStyle , oTableStyle , w , h ) ; result . push ( new AscCommon . CStyleImage ( sStyleName , type , oCanvas . toDataURL ( "image/png" ) ) ) } } } var oAllTableStyles = wb . model . TableStyles . AllStyles ; addStyles ( wb . model . SlicerStyles . CustomStyles , AscCommon . c _oAscStyleImage . Document ) ; addStyles ( wb . model . SlicerStyles . DefaultStyles , AscCommon . c _oAscStyleImage . Default ) ; return result } function drawSlicerStyle ( ctx , graphics , oSlicerStyle , oTableStyle , width , height ) { ctx . clear ( ) ; var dxf , dxfWhole ; var nIns =
2 ; var nBH = 8 ; if ( AscCommon . AscBrowser . isRetina ) { nIns = AscCommon . AscBrowser . convertToRetinaValue ( nIns , true ) ; nBH = AscCommon . AscBrowser . convertToRetinaValue ( nBH , true ) } dxfWhole = oTableStyle . wholeTable && oTableStyle . wholeTable . dxf ; drawSlicerPreviewElement ( dxfWhole , null , ctx , graphics , 0 , 0 , width , height ) ; dxfWhole = dxfWhole || true ; dxf = oTableStyle . headerRow && oTableStyle . headerRow . dxf ; drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , 0 , 0 , width , nBH ) ; var nPos = nBH + nIns ; var aBT = [ Asc . ST _slicerStyleType . selectedItemWithData ,
Asc . ST _slicerStyleType . unselectedItemWithData , Asc . ST _slicerStyleType . selectedItemWithNoData , Asc . ST _slicerStyleType . unselectedItemWithNoData ] ; for ( var nType = 0 ; nType < aBT . length ; ++ nType ) { dxf = oSlicerStyle [ aBT [ nType ] ] ; drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , nIns , nPos , width - nIns , nPos + nBH ) ; nPos += nBH + nIns } } function drawSlicerPreviewElement ( dxf , dxfWhole , ctx , graphics , x0 , y0 , x1 , y1 ) { var oFill = dxf && dxf . getFill ( ) ; if ( oFill ) AscCommonExcel . drawFillCell ( ctx , graphics , oFill , new AscCommon . asc _CRect ( x0 , y0 , x1 -
x0 , y1 - y0 ) ) ; var oBorder = dxf && dxf . getBorder ( ) ; if ( oBorder ) { var oS = oBorder . l ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None && oS . c ) { ctx . setStrokeStyle ( oS . c ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineVer ( x0 , y0 , y1 ) ; ctx . stroke ( ) } oS = oBorder . t ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None && oS . c ) { ctx . setStrokeStyle ( oS . c ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineHor ( x0 + 1 , y0 , x1 - 1 ) ; ctx . stroke ( ) } oS = oBorder . r ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None &&
oS . c ) { ctx . setStrokeStyle ( oS . c ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineVer ( x1 - 1 , y0 , y1 ) ; ctx . stroke ( ) } oS = oBorder . b ; if ( oS && oS . s !== AscCommon . c _oAscBorderStyles . None && oS . c ) { ctx . setStrokeStyle ( oS . c ) . setLineWidth ( 1 ) . setLineDash ( oS . getDashSegments ( ) ) . beginPath ( ) ; ctx . lineHor ( x0 + 1 , y1 - 1 , x1 - 1 ) ; ctx . stroke ( ) } } if ( dxfWhole ) { var nTIns = 5 ; var nTW = 8 ; if ( AscCommon . AscBrowser . isRetina ) { nTIns = AscCommon . AscBrowser . convertToRetinaValue ( nTIns , true ) ; nTW = AscCommon . AscBrowser . convertToRetinaValue ( nTW ,
true ) } var oFont = dxf && dxf . getFont ( ) || dxfWhole && dxfWhole . getFont && dxfWhole . getFont ( ) ; var oColor = oFont ? oFont . getColor ( ) : new AscCommon . CColor ( 0 , 0 , 0 ) ; ctx . setStrokeStyle ( oColor ) ; ctx . setLineWidth ( 1 ) ; ctx . setLineDash ( [ ] ) ; ctx . beginPath ( ) ; ctx . lineHor ( nTIns , y0 + ( y1 - y0 ) / 2 , nTIns + nTW ) ; ctx . stroke ( ) } } function generateXfsStyle ( w , h , wb , xfs , text ) { if ( AscCommon . AscBrowser . isRetina ) { w = AscCommon . AscBrowser . convertToRetinaValue ( w , true ) ; h = AscCommon . AscBrowser . convertToRetinaValue ( h , true ) } var ctx = getContext ( w , h , wb ) ; var oCanvas =
ctx . getCanvas ( ) ; var graphics = getGraphics ( ctx ) ; var style = new AscCommonExcel . CCellStyle ; style . xfs = xfs ; drawStyle ( ctx , graphics , wb . stringRender , oStyle , text , w , h ) ; return new AscCommon . CStyleImage ( text , null , oCanvas . toDataURL ( "image/png" ) ) } function asc _CMouseMoveData ( obj ) { if ( ! ( this instanceof asc _CMouseMoveData ) ) return new asc _CMouseMoveData ( obj ) ; if ( obj ) { this . type = obj . type ; this . x = obj . x ; this . reverseX = obj . reverseX ; this . y = obj . y ; this . hyperlink = obj . hyperlink ; this . aCommentIndexes = obj . aCommentIndexes ; this . userId =
obj . userId ; this . lockedObjectType = obj . lockedObjectType ; this . sizeCCOrPt = obj . sizeCCOrPt ; this . sizePx = obj . sizePx ; this . filter = obj . filter ; this . tooltip = obj . tooltip } return this } asc _CMouseMoveData . prototype = { constructor : asc _CMouseMoveData , asc _getType : function ( ) { return this . type } , asc _getX : function ( ) { return this . x } , asc _getReverseX : function ( ) { return this . reverseX } , asc _getY : function ( ) { return this . y } , asc _getHyperlink : function ( ) { return this . hyperlink } , asc _getCommentIndexes : function ( ) { return this . aCommentIndexes } ,
asc _getUserId : function ( ) { return this . userId } , asc _getLockedObjectType : function ( ) { return this . lockedObjectType } , asc _getSizeCCOrPt : function ( ) { return this . sizeCCOrPt } , asc _getSizePx : function ( ) { return this . sizePx } , asc _getFilter : function ( ) { return this . filter } , asc _getTooltip : function ( ) { return this . tooltip } } ; function asc _CHyperlink ( obj ) { this . hyperlinkModel = null != obj ? obj : new AscCommonExcel . Hyperlink ; this . text = null ; return this } asc _CHyperlink . prototype . asc _getType = function ( ) { return this . hyperlinkModel . getHyperlinkType ( ) } ;
asc _CHyperlink . prototype . asc _getHyperlinkUrl = function ( ) { return this . hyperlinkModel . Hyperlink } ; asc _CHyperlink . prototype . asc _getTooltip = function ( ) { return this . hyperlinkModel . Tooltip } ; asc _CHyperlink . prototype . asc _getLocation = function ( ) { return this . hyperlinkModel . getLocation ( ) } ; asc _CHyperlink . prototype . asc _getSheet = function ( ) { return this . hyperlinkModel . LocationSheet } ; asc _CHyperlink . prototype . asc _getRange = function ( ) { return this . hyperlinkModel . getLocationRange ( ) } ; asc _CHyperlink . prototype . asc _getText = function ( ) { return this . text } ;
asc _CHyperlink . prototype . asc _setType = function ( val ) { switch ( val ) { case Asc . c _oAscHyperlinkType . WebLink : this . hyperlinkModel . setLocation ( null ) ; break ; case Asc . c _oAscHyperlinkType . RangeLink : this . hyperlinkModel . Hyperlink = null ; break } } ; asc _CHyperlink . prototype . asc _setHyperlinkUrl = function ( val ) { this . hyperlinkModel . Hyperlink = val } ; asc _CHyperlink . prototype . asc _setTooltip = function ( val ) { this . hyperlinkModel . Tooltip = val ? val . slice ( 0 , Asc . c _oAscMaxTooltipLength ) : val } ; asc _CHyperlink . prototype . asc _setLocation = function ( val ) { this . hyperlinkModel . setLocation ( val ) } ;
asc _CHyperlink . prototype . asc _setSheet = function ( val ) { this . hyperlinkModel . setLocationSheet ( val ) } ; asc _CHyperlink . prototype . asc _setRange = function ( val ) { this . hyperlinkModel . setLocationRange ( val ) } ; asc _CHyperlink . prototype . asc _setText = function ( val ) { this . text = val } ; function CPagePrint ( ) { this . pageWidth = 0 ; this . pageHeight = 0 ; this . pageClipRectLeft = 0 ; this . pageClipRectTop = 0 ; this . pageClipRectWidth = 0 ; this . pageClipRectHeight = 0 ; this . pageRange = null ; this . leftFieldInPx = 0 ; this . topFieldInPx = 0 ; this . pageGridLines = false ; this . pageHeadings =
false ; this . indexWorksheet = - 1 ; this . startOffset = 0 ; this . startOffsetPx = 0 ; this . scale = null ; this . titleRowRange = null ; this . titleColRange = null ; this . titleWidth = 0 ; this . titleHeight = 0 ; return this } function CPrintPagesData ( ) { this . arrPages = [ ] ; this . currentIndex = 0 ; return this } function asc _CAdjustPrint ( ) { this . printType = Asc . c _oAscPrintType . ActiveSheets ; this . pageOptionsMap = null ; this . ignorePrintArea = null ; this . isOnlyFirstPage = null ; return this } asc _CAdjustPrint . prototype . asc _getPrintType = function ( ) { return this . printType } ;
asc _CAdjustPrint . prototype . asc _setPrintType = function ( val ) { this . printType = val } ; asc _CAdjustPrint . prototype . asc _getPageOptionsMap = function ( ) { return this . pageOptionsMap } ; asc _CAdjustPrint . prototype . asc _setPageOptionsMap = function ( val ) { this . pageOptionsMap = val } ; asc _CAdjustPrint . prototype . asc _getIgnorePrintArea = function ( ) { return this . ignorePrintArea } ; asc _CAdjustPrint . prototype . asc _setIgnorePrintArea = function ( val ) { this . ignorePrintArea = val } ; function asc _CLockInfo ( ) { this [ "sheetId" ] = null ; this [ "type" ] = null ; this [ "subType" ] =
null ; this [ "guid" ] = null ; this [ "rangeOrObjectId" ] = null } function asc _CCollaborativeRange ( c1 , r1 , c2 , r2 ) { this [ "c1" ] = c1 ; this [ "r1" ] = r1 ; this [ "c2" ] = c2 ; this [ "r2" ] = r2 } function asc _CSheetViewSettings ( ) { this . showGridLines = null ; this . showRowColHeaders = null ; this . pane = null ; this . zoomScale = 100 ; return this } asc _CSheetViewSettings . prototype = { constructor : asc _CSheetViewSettings , clone : function ( ) { var result = new asc _CSheetViewSettings ; result . showGridLines = this . showGridLines ; result . showRowColHeaders = this . showRowColHeaders ; result . zoom =
this . zoom ; if ( this . pane ) result . pane = this . pane . clone ( ) ; return result } , isEqual : function ( settings ) { return this . asc _getShowGridLines ( ) === settings . asc _getShowGridLines ( ) && this . asc _getShowRowColHeaders ( ) === settings . asc _getShowRowColHeaders ( ) } , asc _getShowGridLines : function ( ) { return false !== this . showGridLines } , asc _getShowRowColHeaders : function ( ) { return false !== this . showRowColHeaders } , asc _getZoomScale : function ( ) { return this . zoomScale } , asc _getIsFreezePane : function ( ) { return null !== this . pane && this . pane . isInit ( ) } ,
asc _setShowGridLines : function ( val ) { this . showGridLines = val } , asc _setShowRowColHeaders : function ( val ) { this . showRowColHeaders = val } , asc _setZoomScale : function ( val ) { this . zoomScale = val } } ; function asc _CPane ( ) { this . state = null ; this . topLeftCell = null ; this . xSplit = 0 ; this . ySplit = 0 ; this . topLeftFrozenCell = null ; return this } asc _CPane . prototype . isInit = function ( ) { return null !== this . topLeftFrozenCell } ; asc _CPane . prototype . clone = function ( ) { var res = new asc _CPane ; res . state = this . state ; res . topLeftCell = this . topLeftCell ; res . xSplit =
this . xSplit ; res . ySplit = this . ySplit ; res . topLeftFrozenCell = this . topLeftFrozenCell ? new AscCommon . CellAddress ( this . topLeftFrozenCell . row , this . topLeftFrozenCell . col ) : null ; return res } ; asc _CPane . prototype . init = function ( ) { if ( ( AscCommonExcel . c _oAscPaneState . Frozen === this . state || AscCommonExcel . c _oAscPaneState . FrozenSplit === this . state ) && ( 0 < this . xSplit || 0 < this . ySplit ) ) { this . topLeftFrozenCell = new AscCommon . CellAddress ( this . ySplit , this . xSplit , 0 ) ; if ( ! this . topLeftFrozenCell . isValid ( ) ) this . topLeftFrozenCell = null } } ;
function RedoObjectParam ( ) { this . bIsOn = false ; this . oChangeWorksheetUpdate = { } ; this . bUpdateWorksheetByModel = false ; this . bOnSheetsChanged = false ; this . oOnUpdateTabColor = { } ; this . oOnUpdateSheetViewSettings = { } ; this . bAddRemoveRowCol = false ; this . bChangeColorScheme = false ; this . bChangeActive = false ; this . activeSheet = null } function asc _CSheetPr ( ) { if ( ! ( this instanceof asc _CSheetPr ) ) return new asc _CSheetPr ; this . CodeName = null ; this . EnableFormatConditionsCalculation = null ; this . FilterMode = null ; this . Published = null ; this . SyncHorizontal =
null ; this . SyncRef = null ; this . SyncVertical = null ; this . TransitionEntry = null ; this . TransitionEvaluation = null ; this . TabColor = null ; this . AutoPageBreaks = true ; this . FitToPage = false ; this . ApplyStyles = false ; this . ShowOutlineSymbols = true ; this . SummaryBelow = true ; this . SummaryRight = true ; return this } asc _CSheetPr . prototype . clone = function ( ) { var res = new asc _CSheetPr ; res . CodeName = this . CodeName ; res . EnableFormatConditionsCalculation = this . EnableFormatConditionsCalculation ; res . FilterMode = this . FilterMode ; res . Published = this . Published ;
res . SyncHorizontal = this . SyncHorizontal ; res . SyncRef = this . SyncRef ; res . SyncVertical = this . SyncVertical ; res . TransitionEntry = this . TransitionEntry ; res . TransitionEvaluation = this . TransitionEvaluation ; if ( this . TabColor ) res . TabColor = this . TabColor . clone ( ) ; res . FitToPage = this . FitToPage ; res . SummaryBelow = this . SummaryBelow ; res . SummaryRight = this . SummaryRight ; return res } ; function asc _CSelectionMathInfo ( ) { this . count = 0 ; this . countNumbers = 0 ; this . sum = null ; this . average = null ; this . min = null ; this . max = null } asc _CSelectionMathInfo . prototype =
{ constructor : asc _CSelectionMathInfo , asc _getCount : function ( ) { return this . count } , asc _getCountNumbers : function ( ) { return this . countNumbers } , asc _getSum : function ( ) { return this . sum } , asc _getAverage : function ( ) { return this . average } , asc _getMin : function ( ) { return this . min } , asc _getMax : function ( ) { return this . max } } ; function asc _CFindOptions ( ) { this . findWhat = "" ; this . wordsIndex = 0 ; this . scanByRows = true ; this . scanForward = true ; this . isMatchCase = false ; this . isWholeCell = false ; this . isWholeWord = false ; this . isSpellCheck = false ; this . scanOnOnlySheet =
true ; this . lookIn = Asc . c _oAscFindLookIn . Formulas ; this . findRegExp = null ; this . replaceWith = "" ; this . isReplaceAll = false ; this . findInSelection = false ; this . selectionRange = null ; this . findRange = null ; this . findResults = null ; this . indexInArray = 0 ; this . countFind = 0 ; this . countReplace = 0 ; this . countFindAll = 0 ; this . countReplaceAll = 0 ; this . sheetIndex = - 1 ; this . error = false } asc _CFindOptions . prototype . clone = function ( ) { var result = new asc _CFindOptions ; result . wordsIndex = this . wordsIndex ; result . findWhat = this . findWhat ; result . scanByRows = this . scanByRows ;
result . scanForward = this . scanForward ; result . isMatchCase = this . isMatchCase ; result . isWholeCell = this . isWholeCell ; result . isWholeWord = this . isWholeWord ; result . isSpellCheck = this . isSpellCheck ; result . scanOnOnlySheet = this . scanOnOnlySheet ; result . lookIn = this . lookIn ; result . replaceWith = this . replaceWith ; result . isReplaceAll = this . isReplaceAll ; result . findInSelection = this . findInSelection ; result . selectionRange = this . selectionRange ? this . selectionRange . clone ( ) : null ; result . findRange = this . findRange ? this . findRange . clone ( ) : null ;
result . indexInArray = this . indexInArray ; result . countFind = this . countFind ; result . countReplace = this . countReplace ; result . countFindAll = this . countFindAll ; result . countReplaceAll = this . countReplaceAll ; result . sheetIndex = this . sheetIndex ; result . error = this . error ; return result } ; asc _CFindOptions . prototype . isEqual = function ( obj ) { return obj && this . isEqual2 ( obj ) && this . scanForward === obj . scanForward && this . scanOnOnlySheet === obj . scanOnOnlySheet } ; asc _CFindOptions . prototype . isEqual2 = function ( obj ) { return obj && this . findWhat ===
obj . findWhat && this . scanByRows === obj . scanByRows && this . isMatchCase === obj . isMatchCase && this . isWholeCell === obj . isWholeCell && this . lookIn === obj . lookIn } ; asc _CFindOptions . prototype . clearFindAll = function ( ) { this . countFindAll = 0 ; this . countReplaceAll = 0 ; this . error = false } ; asc _CFindOptions . prototype . updateFindAll = function ( ) { this . countFindAll += this . countFind ; this . countReplaceAll += this . countReplace } ; asc _CFindOptions . prototype . asc _setFindWhat = function ( val ) { this . findWhat = val } ; asc _CFindOptions . prototype . asc _setScanByRows =
function ( val ) { this . scanByRows = val } ; asc _CFindOptions . prototype . asc _setScanForward = function ( val ) { this . scanForward = val } ; asc _CFindOptions . prototype . asc _setIsMatchCase = function ( val ) { this . isMatchCase = val } ; asc _CFindOptions . prototype . asc _setIsWholeCell = function ( val ) { this . isWholeCell = val } ; asc _CFindOptions . prototype . asc _setIsWholeWord = function ( val ) { this . isWholeWord = val } ; asc _CFindOptions . prototype . asc _changeSingleWord = function ( val ) { this . isChangeSingleWord = val } ; asc _CFindOptions . prototype . asc _setScanOnOnlySheet =
function ( val ) { this . scanOnOnlySheet = val } ; asc _CFindOptions . prototype . asc _setLookIn = function ( val ) { this . lookIn = val } ; asc _CFindOptions . prototype . asc _setReplaceWith = function ( val ) { this . replaceWith = val } ; asc _CFindOptions . prototype . asc _setIsReplaceAll = function ( val ) { this . isReplaceAll = val } ; function findResults ( ) { this . values = { } ; this . currentKey1 = - 1 ; this . currentKey2 = - 1 ; this . currentKeys1 = null ; this . currentKeys2 = null } findResults . prototype . isNotEmpty = function ( ) { return 0 !== Object . keys ( this . values ) . length } ; findResults . prototype . contains =
function ( key1 , key2 ) { return this . values [ key1 ] && this . values [ key1 ] [ key2 ] } ; findResults . prototype . add = function ( key1 , key2 , cell ) { if ( ! this . values [ key1 ] ) this . values [ key1 ] = { } ; this . values [ key1 ] [ key2 ] = cell } ; findResults . prototype . _init = function ( key1 , key2 ) { this . currentKey1 = key1 ; this . currentKey2 = key2 ; this . currentKeyIndex1 = - 1 ; this . currentKeyIndex2 = - 1 ; this . currentKeys2 = null ; this . currentKeys1 = Object . keys ( this . values ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex1 = this . _findKey ( this . currentKey1 , this . currentKeys1 ) ;
if ( 0 === this . currentKeys1 [ this . currentKeyIndex1 ] - this . currentKey1 ) { this . currentKeys2 = Object . keys ( this . values [ this . currentKey1 ] ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex2 = this . _findKey ( this . currentKey2 , this . currentKeys2 ) } } ; findResults . prototype . find = function ( key1 , key2 , forward ) { this . forward = forward ; if ( this . currentKey1 !== key1 || this . currentKey2 !== key2 ) this . _init ( key1 , key2 ) ; if ( 0 === this . currentKeys1 . length ) return false ; var step = this . forward ? + 1 : - 1 ; this . currentKeyIndex2 += step ; if ( ! this . currentKeys2 ||
! this . currentKeys2 [ this . currentKeyIndex2 ] ) { this . currentKeyIndex1 += step ; if ( ! this . currentKeys1 [ this . currentKeyIndex1 ] ) this . currentKeyIndex1 = this . forward ? 0 : this . currentKeys1 . length - 1 ; this . currentKey1 = this . currentKeys1 [ this . currentKeyIndex1 ] >> 0 ; this . currentKeys2 = Object . keys ( this . values [ this . currentKey1 ] ) . sort ( AscCommon . fSortAscending ) ; this . currentKeyIndex2 = this . forward ? 0 : this . currentKeys2 . length - 1 } this . currentKey2 = this . currentKeys2 [ this . currentKeyIndex2 ] >> 0 ; return true } ; findResults . prototype . _findKey =
function ( key , arrayKeys ) { var i = this . forward ? 0 : arrayKeys . length - 1 ; var step = this . forward ? + 1 : - 1 ; var _key ; while ( _key = arrayKeys [ i ] ) { _key = step * ( ( _key >> 0 ) - key ) ; if ( _key >= 0 ) return 0 === _key ? i : i - step ; i += step } return - 2 } ; function CSpellcheckState ( ) { this . lastSpellInfo = null ; this . lastIndex = 0 ; this . lockSpell = false ; this . startCell = null ; this . currentCell = null ; this . iteration = false ; this . ignoreWords = { } ; this . changeWords = { } ; this . cellsChange = [ ] ; this . newWord = null ; this . cellText = null ; this . newCellText = null ; this . isStart = false ; this . afterReplace =
false ; this . isIgnoreUppercase = false ; this . isIgnoreNumbers = false } CSpellcheckState . prototype . clean = function ( ) { this . isStart = false ; this . lastSpellInfo = null ; this . lastIndex = 0 ; this . lockSpell = false ; this . startCell = null ; this . currentCell = null ; this . iteration = false ; this . ignoreWords = { } ; this . changeWords = { } ; this . cellsChange = [ ] ; this . newWord = null ; this . cellText = null ; this . newCellText = null ; this . afterReplace = false } ; CSpellcheckState . prototype . nextRow = function ( ) { this . lastSpellInfo = null ; this . lastIndex = 0 ; this . currentCell . row +=
1 ; this . currentCell . col = 0 } ; function asc _CCompleteMenu ( name , type ) { this . name = name ; this . type = type } asc _CCompleteMenu . prototype . asc _getName = function ( ) { return this . name } ; asc _CCompleteMenu . prototype . asc _getType = function ( ) { return this . type } ; function CCacheMeasureEmpty2 ( ) { this . cache = { } } CCacheMeasureEmpty2 . prototype . getKey = function ( elem ) { return elem . getName ( ) + ( elem . getBold ( ) ? "B" : "N" ) + ( elem . getItalic ( ) ? "I" : "N" ) } ; CCacheMeasureEmpty2 . prototype . add = function ( elem , val ) { this . cache [ this . getKey ( elem ) ] = val } ; CCacheMeasureEmpty2 . prototype . get =
function ( elem ) { return this . cache [ this . getKey ( elem ) ] } ; var g _oCacheMeasureEmpty2 = new CCacheMeasureEmpty2 ; function CCacheMeasureEmpty ( ) { this . cache = { } } CCacheMeasureEmpty . prototype . add = function ( elem , val ) { var fn = elem . getName ( ) ; var font = this . cache [ fn ] || ( this . cache [ fn ] = { } ) ; font [ elem . getSize ( ) ] = val } ; CCacheMeasureEmpty . prototype . get = function ( elem ) { var font = this . cache [ elem . getName ( ) ] ; return font ? font [ elem . getSize ( ) ] : null } ; var g _oCacheMeasureEmpty = new CCacheMeasureEmpty ; function asc _CFormatCellsInfo ( ) { this . type =
Asc . c _oAscNumFormatType . General ; this . decimalPlaces = 2 ; this . separator = false ; this . symbol = null } asc _CFormatCellsInfo . prototype . asc _setType = function ( val ) { this . type = val } ; asc _CFormatCellsInfo . prototype . asc _setDecimalPlaces = function ( val ) { this . decimalPlaces = val } ; asc _CFormatCellsInfo . prototype . asc _setSeparator = function ( val ) { this . separator = val } ; asc _CFormatCellsInfo . prototype . asc _setSymbol = function ( val ) { this . symbol = val } ; asc _CFormatCellsInfo . prototype . asc _getType = function ( ) { return this . type } ; asc _CFormatCellsInfo . prototype . asc _getDecimalPlaces =
function ( ) { return this . decimalPlaces } ; asc _CFormatCellsInfo . prototype . asc _getSeparator = function ( ) { return this . separator } ; asc _CFormatCellsInfo . prototype . asc _getSymbol = function ( ) { return this . symbol } ; function asc _CAutoCorrectOptions ( ) { this . type = null ; this . options = [ ] ; this . cellCoord = null } asc _CAutoCorrectOptions . prototype . asc _setType = function ( val ) { this . type = val } ; asc _CAutoCorrectOptions . prototype . asc _setOptions = function ( val ) { this . options = val } ; asc _CAutoCorrectOptions . prototype . asc _setCellCoord = function ( val ) { this . cellCoord =
val } ; asc _CAutoCorrectOptions . prototype . asc _getType = function ( ) { return this . type } ; asc _CAutoCorrectOptions . prototype . asc _getOptions = function ( ) { return this . options } ; asc _CAutoCorrectOptions . prototype . asc _getCellCoord = function ( ) { return this . cellCoord } ; function CEditorEnterOptions ( ) { this . cursorPos = null ; this . eventPos = null ; this . focus = false ; this . newText = null ; this . hideCursor = false ; this . quickInput = false } function cDate ( ) { var bind = Function . bind ; var unbind = bind . bind ( bind ) ; var date = new ( unbind ( Date , null ) . apply ( null ,
arguments ) ) ; date . _ _proto _ _ = cDate . prototype ; return date } cDate . prototype = Object . create ( Date . prototype ) ; cDate . prototype . constructor = cDate ; cDate . prototype . excelNullDate1900 = Date . UTC ( 1899 , 11 , 30 , 0 , 0 , 0 ) ; cDate . prototype . excelNullDate1904 = Date . UTC ( 1904 , 0 , 1 , 0 , 0 , 0 ) ; cDate . prototype . getExcelNullDate = function ( ) { return AscCommon . bDate1904 ? cDate . prototype . excelNullDate1904 : cDate . prototype . excelNullDate1900 } ; cDate . prototype . isLeapYear = function ( ) { var y = this . getUTCFullYear ( ) ; return y % 4 === 0 && y % 100 !== 0 || y % 400 === 0 } ; cDate . prototype . getDaysInMonth =
function ( ) { return this . isLeapYear ( ) ? this . getDaysInMonth . L [ this . getUTCMonth ( ) ] : this . getDaysInMonth . R [ this . getUTCMonth ( ) ] } ; cDate . prototype . getDaysInMonth . R = [ 31 , 28 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ] ; cDate . prototype . getDaysInMonth . L = [ 31 , 29 , 31 , 30 , 31 , 30 , 31 , 31 , 30 , 31 , 30 , 31 ] ; cDate . prototype . truncate = function ( ) { this . setUTCHours ( 0 , 0 , 0 , 0 ) ; return this } ; cDate . prototype . getExcelDate = function ( ) { return Math . floor ( this . getExcelDateWithTime ( ) ) } ; cDate . prototype . getExcelDateWithTime = function ( ) { var year = this . getUTCFullYear ( ) ,
month = this . getUTCMonth ( ) , date = this . getUTCDate ( ) , res ; if ( 1900 === year && 0 === month && 0 === date ) res = 0 ; else if ( 1900 < year || 1900 == year && 1 < month ) res = ( Date . UTC ( year , month , date , this . getUTCHours ( ) , this . getUTCMinutes ( ) , this . getUTCSeconds ( ) ) - this . getExcelNullDate ( ) ) / c _msPerDay ; else if ( 1900 == year && 1 == month && 29 == date ) res = 60 ; else res = ( Date . UTC ( year , month , date , this . getUTCHours ( ) , this . getUTCMinutes ( ) , this . getUTCSeconds ( ) ) - this . getExcelNullDate ( ) ) / c _msPerDay - 1 ; return res } ; cDate . prototype . getDateFromExcel = function ( val ) { val =
Math . floor ( val ) ; return this . getDateFromExcelWithTime ( val ) } ; cDate . prototype . getDateFromExcelWithTime = function ( val ) { if ( AscCommon . bDate1904 ) return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) ; else if ( val < 60 ) return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) ; else if ( val === 60 ) return new cDate ( Date . UTC ( 1900 , 1 , 29 ) ) ; else return new cDate ( val * c _msPerDay + this . getExcelNullDate ( ) ) } ; cDate . prototype . addYears = function ( counts ) { this . setUTCFullYear ( this . getUTCFullYear ( ) + Math . floor ( counts ) ) } ; cDate . prototype . addMonths =
function ( counts ) { if ( this . lastDayOfMonth ( ) ) { this . setUTCDate ( 1 ) ; this . setUTCMonth ( this . getUTCMonth ( ) + Math . floor ( counts ) ) ; this . setUTCDate ( this . getDaysInMonth ( ) ) } else this . setUTCMonth ( this . getUTCMonth ( ) + Math . floor ( counts ) ) } ; cDate . prototype . addDays = function ( counts ) { this . setUTCDate ( this . getUTCDate ( ) + Math . floor ( counts ) ) } ; cDate . prototype . lastDayOfMonth = function ( ) { return this . getDaysInMonth ( ) == this . getUTCDate ( ) } ; cDate . prototype . getUTCDate = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ; var month =
Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && 31 == date ) return 0 ; else return date } ; cDate . prototype . getUTCMonth = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ; var month = Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && ( 30 === date || 31 === date ) ) return 0 ; else return month } ; cDate . prototype . getUTCFullYear = function ( ) { var year = Date . prototype . getUTCFullYear . call ( this ) ; var month =
Date . prototype . getUTCMonth . call ( this ) ; var date = Date . prototype . getUTCDate . call ( this ) ; if ( 1899 == year && 11 == month && ( 30 === date || 31 === date ) ) return 1900 ; else return year } ; cDate . prototype . getDateString = function ( api ) { return api . asc _getLocaleExample ( AscCommon . getShortDateFormat ( ) , this . getExcelDate ( ) ) } ; cDate . prototype . getTimeString = function ( api ) { return api . asc _getLocaleExample ( AscCommon . getShortTimeFormat ( ) , this . getExcelDateWithTime ( true ) - this . getTimezoneOffset ( ) / ( 60 * 24 ) ) } ; function getIconsForLoad ( ) { return AscCommonExcel . getCFIconsForLoad ( ) . concat ( AscCommonExcel . getSlicerIconsForLoad ( ) ) }
var prot ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . g _ActiveCell = null ; window [ "AscCommonExcel" ] . g _R1C1Mode = false ; window [ "AscCommonExcel" ] . kCurCells = "se-cells" ; window [ "AscCommonExcel" ] . recalcType = recalcType ; window [ "AscCommonExcel" ] . sizePxinPt = sizePxinPt ; window [ "AscCommonExcel" ] . c _sPerDay = c _sPerDay ; window [ "AscCommonExcel" ] . c _msPerDay = c _msPerDay ; window [ "AscCommonExcel" ] . applyFunction = applyFunction ; window [ "AscCommonExcel" ] . g _IncludeNewRowColInTable =
true ; window [ "Asc" ] [ "cDate" ] = window [ "Asc" ] . cDate = window [ "AscCommonExcel" ] . cDate = cDate ; prot = cDate . prototype ; prot [ "getExcelDateWithTime" ] = prot . getExcelDateWithTime ; window [ "Asc" ] . typeOf = typeOf ; window [ "Asc" ] . lastIndexOf = lastIndexOf ; window [ "Asc" ] . search = search ; window [ "Asc" ] . getUniqueRangeColor = getUniqueRangeColor ; window [ "Asc" ] . getMinValueOrNull = getMinValueOrNull ; window [ "Asc" ] . round = round ; window [ "Asc" ] . floor = floor ; window [ "Asc" ] . ceil = ceil ; window [ "Asc" ] . incDecFonSize = incDecFonSize ; window [ "AscCommonExcel" ] . calcDecades =
calcDecades ; window [ "AscCommonExcel" ] . convertPtToPx = convertPtToPx ; window [ "AscCommonExcel" ] . convertPxToPt = convertPxToPt ; window [ "Asc" ] . profileTime = profileTime ; window [ "AscCommonExcel" ] . getMatchingBorder = getMatchingBorder ; window [ "AscCommonExcel" ] . WordSplitting = WordSplitting ; window [ "AscCommonExcel" ] . getFindRegExp = getFindRegExp ; window [ "AscCommonExcel" ] . convertFillToUnifill = convertFillToUnifill ; window [ "AscCommonExcel" ] . replaceSpellCheckWords = replaceSpellCheckWords ; window [ "Asc" ] . outputDebugStr = outputDebugStr ;
window [ "Asc" ] . isNumberInfinity = isNumberInfinity ; window [ "Asc" ] . trim = trim ; window [ "Asc" ] . arrayToLowerCase = arrayToLowerCase ; window [ "Asc" ] . isFixedWidthCell = isFixedWidthCell ; window [ "AscCommonExcel" ] . dropDecimalAutofit = dropDecimalAutofit ; window [ "AscCommonExcel" ] . getFragmentsText = getFragmentsText ; window [ "AscCommonExcel" ] . getFragmentsLength = getFragmentsLength ; window [ "AscCommonExcel" ] . executeInR1C1Mode = executeInR1C1Mode ; window [ "AscCommonExcel" ] . checkFilteringMode = checkFilteringMode ; window [ "Asc" ] . getEndValueRange =
getEndValueRange ; window [ "AscCommonExcel" ] . checkStylesNames = checkStylesNames ; window [ "AscCommonExcel" ] . generateCellStyles = generateCellStyles ; window [ "AscCommonExcel" ] . generateSlicerStyles = generateSlicerStyles ; window [ "AscCommonExcel" ] . generateXfsStyle = generateXfsStyle ; window [ "AscCommonExcel" ] . getIconsForLoad = getIconsForLoad ; window [ "AscCommonExcel" ] . referenceType = referenceType ; window [ "Asc" ] . Range = Range ; window [ "AscCommonExcel" ] . Range3D = Range3D ; window [ "AscCommonExcel" ] . SelectionRange = SelectionRange ; window [ "AscCommonExcel" ] . ActiveRange =
ActiveRange ; window [ "AscCommonExcel" ] . FormulaRange = FormulaRange ; window [ "AscCommonExcel" ] . MultiplyRange = MultiplyRange ; window [ "AscCommonExcel" ] . VisibleRange = VisibleRange ; window [ "AscCommonExcel" ] . g _oRangeCache = g _oRangeCache ; window [ "AscCommonExcel" ] . HandlersList = HandlersList ; window [ "AscCommonExcel" ] . RedoObjectParam = RedoObjectParam ; window [ "AscCommonExcel" ] . asc _CMouseMoveData = asc _CMouseMoveData ; prot = asc _CMouseMoveData . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getX" ] = prot . asc _getX ; prot [ "asc_getReverseX" ] =
prot . asc _getReverseX ; prot [ "asc_getY" ] = prot . asc _getY ; prot [ "asc_getHyperlink" ] = prot . asc _getHyperlink ; prot [ "asc_getCommentIndexes" ] = prot . asc _getCommentIndexes ; prot [ "asc_getUserId" ] = prot . asc _getUserId ; prot [ "asc_getLockedObjectType" ] = prot . asc _getLockedObjectType ; prot [ "asc_getSizeCCOrPt" ] = prot . asc _getSizeCCOrPt ; prot [ "asc_getSizePx" ] = prot . asc _getSizePx ; prot [ "asc_getFilter" ] = prot . asc _getFilter ; prot [ "asc_getTooltip" ] = prot . asc _getTooltip ; window [ "Asc" ] [ "asc_CHyperlink" ] = window [ "Asc" ] . asc _CHyperlink = asc _CHyperlink ;
prot = asc _CHyperlink . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getHyperlinkUrl" ] = prot . asc _getHyperlinkUrl ; prot [ "asc_getTooltip" ] = prot . asc _getTooltip ; prot [ "asc_getLocation" ] = prot . asc _getLocation ; prot [ "asc_getSheet" ] = prot . asc _getSheet ; prot [ "asc_getRange" ] = prot . asc _getRange ; prot [ "asc_getText" ] = prot . asc _getText ; prot [ "asc_setType" ] = prot . asc _setType ; prot [ "asc_setHyperlinkUrl" ] = prot . asc _setHyperlinkUrl ; prot [ "asc_setTooltip" ] = prot . asc _setTooltip ; prot [ "asc_setLocation" ] = prot . asc _setLocation ;
prot [ "asc_setSheet" ] = prot . asc _setSheet ; prot [ "asc_setRange" ] = prot . asc _setRange ; prot [ "asc_setText" ] = prot . asc _setText ; window [ "AscCommonExcel" ] . CPagePrint = CPagePrint ; window [ "AscCommonExcel" ] . CPrintPagesData = CPrintPagesData ; window [ "Asc" ] [ "asc_CAdjustPrint" ] = window [ "Asc" ] . asc _CAdjustPrint = asc _CAdjustPrint ; prot = asc _CAdjustPrint . prototype ; prot [ "asc_getPrintType" ] = prot . asc _getPrintType ; prot [ "asc_setPrintType" ] = prot . asc _setPrintType ; prot [ "asc_getPageOptionsMap" ] = prot . asc _getPageOptionsMap ; prot [ "asc_setPageOptionsMap" ] =
prot . asc _setPageOptionsMap ; prot [ "asc_getIgnorePrintArea" ] = prot . asc _getIgnorePrintArea ; prot [ "asc_setIgnorePrintArea" ] = prot . asc _setIgnorePrintArea ; window [ "AscCommonExcel" ] . asc _CLockInfo = asc _CLockInfo ; window [ "AscCommonExcel" ] . asc _CCollaborativeRange = asc _CCollaborativeRange ; window [ "AscCommonExcel" ] . asc _CSheetViewSettings = asc _CSheetViewSettings ; prot = asc _CSheetViewSettings . prototype ; prot [ "asc_getShowGridLines" ] = prot . asc _getShowGridLines ; prot [ "asc_getShowRowColHeaders" ] = prot . asc _getShowRowColHeaders ; prot [ "asc_getIsFreezePane" ] =
prot . asc _getIsFreezePane ; prot [ "asc_setShowGridLines" ] = prot . asc _setShowGridLines ; prot [ "asc_setShowRowColHeaders" ] = prot . asc _setShowRowColHeaders ; window [ "AscCommonExcel" ] . asc _CPane = asc _CPane ; window [ "AscCommonExcel" ] . asc _CSheetPr = asc _CSheetPr ; window [ "AscCommonExcel" ] . asc _CSelectionMathInfo = asc _CSelectionMathInfo ; prot = asc _CSelectionMathInfo . prototype ; prot [ "asc_getCount" ] = prot . asc _getCount ; prot [ "asc_getCountNumbers" ] = prot . asc _getCountNumbers ; prot [ "asc_getSum" ] = prot . asc _getSum ; prot [ "asc_getAverage" ] = prot . asc _getAverage ;
prot [ "asc_getMin" ] = prot . asc _getMin ; prot [ "asc_getMax" ] = prot . asc _getMax ; window [ "Asc" ] [ "asc_CFindOptions" ] = window [ "Asc" ] . asc _CFindOptions = asc _CFindOptions ; prot = asc _CFindOptions . prototype ; prot [ "asc_setFindWhat" ] = prot . asc _setFindWhat ; prot [ "asc_setScanByRows" ] = prot . asc _setScanByRows ; prot [ "asc_setScanForward" ] = prot . asc _setScanForward ; prot [ "asc_setIsMatchCase" ] = prot . asc _setIsMatchCase ; prot [ "asc_setIsWholeCell" ] = prot . asc _setIsWholeCell ; prot [ "asc_setScanOnOnlySheet" ] = prot . asc _setScanOnOnlySheet ; prot [ "asc_setLookIn" ] =
prot . asc _setLookIn ; prot [ "asc_setReplaceWith" ] = prot . asc _setReplaceWith ; prot [ "asc_setIsReplaceAll" ] = prot . asc _setIsReplaceAll ; window [ "AscCommonExcel" ] . findResults = findResults ; window [ "AscCommonExcel" ] . CSpellcheckState = CSpellcheckState ; window [ "AscCommonExcel" ] . asc _CCompleteMenu = asc _CCompleteMenu ; prot = asc _CCompleteMenu . prototype ; prot [ "asc_getName" ] = prot . asc _getName ; prot [ "asc_getType" ] = prot . asc _getType ; window [ "AscCommonExcel" ] . g _oCacheMeasureEmpty = g _oCacheMeasureEmpty ; window [ "AscCommonExcel" ] . g _oCacheMeasureEmpty2 =
g _oCacheMeasureEmpty2 ; window [ "Asc" ] [ "asc_CFormatCellsInfo" ] = window [ "Asc" ] . asc _CFormatCellsInfo = asc _CFormatCellsInfo ; prot = asc _CFormatCellsInfo . prototype ; prot [ "asc_setType" ] = prot . asc _setType ; prot [ "asc_setDecimalPlaces" ] = prot . asc _setDecimalPlaces ; prot [ "asc_setSeparator" ] = prot . asc _setSeparator ; prot [ "asc_setSymbol" ] = prot . asc _setSymbol ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getDecimalPlaces" ] = prot . asc _getDecimalPlaces ; prot [ "asc_getSeparator" ] = prot . asc _getSeparator ; prot [ "asc_getSymbol" ] = prot . asc _getSymbol ;
window [ "Asc" ] [ "asc_CAutoCorrectOptions" ] = window [ "Asc" ] . asc _CAutoCorrectOptions = asc _CAutoCorrectOptions ; prot = asc _CAutoCorrectOptions . prototype ; prot [ "asc_getType" ] = prot . asc _getType ; prot [ "asc_getOptions" ] = prot . asc _getOptions ; prot [ "asc_getCellCoord" ] = prot . asc _getCellCoord ; window [ "AscCommonExcel" ] . CEditorEnterOptions = CEditorEnterOptions ; window [ "AscCommonExcel" ] . drawFillCell = drawFillCell } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var asc = window [ "Asc" ] , asc _typeOf = asc . typeOf ; function asc _CHandlersList ( handlers ) { this . handlers = handlers || { } ; return this } asc _CHandlersList . prototype . hasTrigger = function ( eventName ) { return null != this . handlers [ eventName ] } ; asc _CHandlersList . prototype . trigger = function ( eventName ) { var h = this . handlers [ eventName ] , t = asc _typeOf ( h ) , a = Array . prototype . slice . call ( arguments , 1 ) , i ; if ( t === "function" ) return h . apply ( this , a ) ; if ( t === "array" ) { for ( i = 0 ; i < h . length ; i += 1 ) if ( asc _typeOf ( h [ i ] ) === "function" ) h [ i ] . apply ( this ,
a ) ; return true } return false } ; asc _CHandlersList . prototype . add = function ( eventName , eventHandler , replaceOldHandler ) { var th = this . handlers , h , old , t ; if ( replaceOldHandler || ! th . hasOwnProperty ( eventName ) ) th [ eventName ] = eventHandler ; else { old = h = th [ eventName ] ; t = asc _typeOf ( old ) ; if ( t !== "array" ) { h = th [ eventName ] = [ ] ; if ( t === "function" ) h . push ( old ) } h . push ( eventHandler ) } } ; asc _CHandlersList . prototype . remove = function ( eventName , eventHandler ) { var th = this . handlers , h = th [ eventName ] , i ; if ( th . hasOwnProperty ( eventName ) ) { if ( asc _typeOf ( h ) !==
"array" || asc _typeOf ( eventHandler ) !== "function" ) { delete th [ eventName ] ; return true } for ( i = h . length - 1 ; i >= 0 ; i -= 1 ) if ( h [ i ] === eventHandler ) { delete h [ i ] ; return true } } return false } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; AscCommonExcel . asc _CHandlersList = asc _CHandlersList } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var asc _applyFunction = AscCommonExcel . applyFunction ; var c _oAscLockTypes = AscCommon . c _oAscLockTypes ; var c _oAscRecalcIndexTypes = AscCommonExcel . c _oAscRecalcIndexTypes ; var c _oAscLockTypeElemSubType = AscCommonExcel . c _oAscLockTypeElemSubType ; var c _oAscLockTypeElem = AscCommonExcel . c _oAscLockTypeElem ; function CCollaborativeEditing ( handlers , isViewerMode ) { if ( ! ( this instanceof CCollaborativeEditing ) ) return new CCollaborativeEditing ; this . m _nUseType = 1 ; this . handlers = new AscCommonExcel . asc _CHandlersList ( handlers ) ;
this . m _bIsViewerMode = ! ! isViewerMode ; this . m _bGlobalLock = false ; this . m _bGlobalLockEditCell = false ; this . m _arrCheckLocks = [ ] ; this . m _arrNeedUnlock = [ ] ; this . m _arrNeedUnlock2 = [ ] ; this . m _arrChanges = [ ] ; this . m _oRecalcIndexColumns = { } ; this . m _oRecalcIndexRows = { } ; this . m _oInsertColumns = { } ; this . m _oInsertRows = { } ; this . m _bFast = false ; this . init ( ) ; return this } CCollaborativeEditing . prototype . init = function ( ) { } ; CCollaborativeEditing . prototype . clearRecalcIndex = function ( ) { this . m _oRecalcIndexColumns = { } ; this . m _oRecalcIndexRows = { } } ;
CCollaborativeEditing . prototype . startCollaborationEditing = function ( ) { this . m _nUseType = - 1 } ; CCollaborativeEditing . prototype . endCollaborationEditing = function ( ) { if ( this . m _nUseType <= 0 ) this . m _nUseType = 0 } ; CCollaborativeEditing . prototype . setViewerMode = function ( isViewerMode ) { this . m _bIsViewerMode = isViewerMode } ; CCollaborativeEditing . prototype . setFast = function ( bFast ) { return this . m _bFast = bFast } ; CCollaborativeEditing . prototype . getFast = function ( ) { return this . m _bFast } ; CCollaborativeEditing . prototype . Is _SingleUser =
function ( ) { return ! this . getCollaborativeEditing ( ) } ; CCollaborativeEditing . prototype . getCollaborativeEditing = function ( ) { if ( this . m _bIsViewerMode ) return false ; return 1 !== this . m _nUseType } ; CCollaborativeEditing . prototype . haveOtherChanges = function ( ) { return 0 < this . m _arrChanges . length } ; CCollaborativeEditing . prototype . getOwnLocksLength = function ( ) { return this . m _arrNeedUnlock2 . length } ; CCollaborativeEditing . prototype . getGlobalLock = function ( ) { return this . m _bGlobalLock } ; CCollaborativeEditing . prototype . getGlobalLockEditCell =
function ( ) { return this . m _bGlobalLockEditCell } ; CCollaborativeEditing . prototype . onStartEditCell = function ( ) { if ( this . getCollaborativeEditing ( ) ) this . m _bGlobalLockEditCell = true } ; CCollaborativeEditing . prototype . onStopEditCell = function ( ) { this . m _bGlobalLockEditCell = false } ; CCollaborativeEditing . prototype . lock = function ( arrLocks , callback ) { var type ; callback = this . _checkCollaborative ( callback ) ; this . onStartCheckLock ( ) ; for ( var i = 0 ; i < arrLocks . length ; ++ i ) { type = this . _addCheckLock ( arrLocks [ i ] , callback ) ; if ( c _oAscLockTypes . kLockTypeNone !==
type ) { this . m _bGlobalLockEditCell = false ; return c _oAscLockTypes . kLockTypeMine === type } } this . onEndCheckLock ( callback ) ; return true } ; CCollaborativeEditing . prototype . _checkCollaborative = function ( callback ) { if ( false === this . getCollaborativeEditing ( ) ) { AscCommonExcel . applyFunction ( callback , true ) ; callback = undefined } return callback } ; CCollaborativeEditing . prototype . _addCheckLock = function ( lockInfo , callback ) { if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeMine , false ) ) { AscCommonExcel . applyFunction ( callback ,
true ) ; return c _oAscLockTypes . kLockTypeMine } else if ( false !== this . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) ) { AscCommonExcel . applyFunction ( callback , false ) ; return c _oAscLockTypes . kLockTypeOther } this . m _arrCheckLocks . push ( lockInfo ) ; return c _oAscLockTypes . kLockTypeNone } ; CCollaborativeEditing . prototype . onStartCheckLock = function ( ) { this . m _arrCheckLocks . length = 0 } ; CCollaborativeEditing . prototype . addCheckLock = function ( oItem ) { this . m _arrCheckLocks . push ( oItem ) } ; CCollaborativeEditing . prototype . onEndCheckLock =
function ( callback ) { var t = this ; if ( this . m _arrCheckLocks . length > 0 ) { this . handlers . trigger ( "askLock" , this . m _arrCheckLocks , function ( result ) { t . onCallbackAskLock ( result , callback ) } ) ; if ( undefined !== callback ) this . m _bGlobalLock = true } else { asc _applyFunction ( callback , true ) ; this . m _bGlobalLockEditCell = false } } ; CCollaborativeEditing . prototype . onCallbackAskLock = function ( result , callback ) { this . m _bGlobalLock = false ; this . m _bGlobalLockEditCell = false ; if ( result [ "lock" ] ) { var count = this . m _arrCheckLocks . length ; for ( var i = 0 ; i < count ; ++ i ) { var oItem =
this . m _arrCheckLocks [ i ] ; if ( true !== oItem && false !== oItem ) { var oNewLock = new CLock ( oItem ) ; oNewLock . setType ( c _oAscLockTypes . kLockTypeMine ) ; this . addUnlock2 ( oNewLock ) } } asc _applyFunction ( callback , true ) } else if ( result [ "error" ] ) asc _applyFunction ( callback , false ) } ; CCollaborativeEditing . prototype . addUnlock = function ( LockClass ) { this . m _arrNeedUnlock . push ( LockClass ) } ; CCollaborativeEditing . prototype . addUnlock2 = function ( Lock ) { this . m _arrNeedUnlock2 . push ( Lock ) ; this . handlers . trigger ( "updateDocumentCanSave" ) } ; CCollaborativeEditing . prototype . removeUnlock =
function ( Lock ) { for ( var i = 0 ; i < this . m _arrNeedUnlock . length ; ++ i ) if ( Lock . Element [ "guid" ] === this . m _arrNeedUnlock [ i ] . Element [ "guid" ] ) { this . m _arrNeedUnlock . splice ( i , 1 ) ; return true } return false } ; CCollaborativeEditing . prototype . addChanges = function ( oChanges ) { this . m _arrChanges . push ( oChanges ) } ; CCollaborativeEditing . prototype . applyChanges = function ( ) { var t = this ; var length = this . m _arrChanges . length ; if ( 0 < length ) { var changes = t . m _arrChanges . splice ( 0 , length ) ; this . handlers . trigger ( "applyChanges" , changes , function ( ) { t . handlers . trigger ( "updateAfterApplyChanges" ) } ) ;
return false } return true } ; CCollaborativeEditing . prototype . sendChanges = function ( IsUserSave , isAfterAskSave ) { var bIsCollaborative = this . getCollaborativeEditing ( ) ; var bCheckRedraw = false , bRedrawGraphicObjects = false , bUnlockDefName = false ; var oLock = null ; if ( bIsCollaborative ) { if ( 0 < this . m _arrNeedUnlock . length || 0 < this . m _arrNeedUnlock2 . length ) { bCheckRedraw = true ; this . handlers . trigger ( "cleanSelection" ) } while ( 0 < this . m _arrNeedUnlock2 . length ) { oLock = this . m _arrNeedUnlock2 . shift ( ) ; oLock . setType ( c _oAscLockTypes . kLockTypeNone ,
false ) ; var drawing = AscCommon . g _oTableId . Get _ById ( oLock . Element [ "rangeOrObjectId" ] ) ; if ( drawing && drawing . lockType !== c _oAscLockTypes . kLockTypeNone ) { var bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; bRedrawGraphicObjects = true ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) Asc . editor && Asc . editor . sendEvent ( "asc_onLockCore" , false ) } if ( ! bUnlockDefName ) bUnlockDefName = this . handlers . trigger ( "checkDefNameLock" ,
oLock ) ; this . handlers . trigger ( "releaseLocks" , oLock . Element [ "guid" ] ) } var nIndex = 0 ; var nCount = this . m _arrNeedUnlock . length ; for ( ; nIndex < nCount ; ++ nIndex ) { oLock = this . m _arrNeedUnlock [ nIndex ] ; if ( c _oAscLockTypes . kLockTypeOther2 === oLock . getType ( ) ) { if ( ! this . handlers . trigger ( "checkCommentRemoveLock" , oLock . Element ) ) { drawing = AscCommon . g _oTableId . Get _ById ( oLock . Element [ "rangeOrObjectId" ] ) ; if ( drawing && drawing . lockType !== c _oAscLockTypes . kLockTypeNone ) { var bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !==
c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; bRedrawGraphicObjects = true ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) Asc . editor && Asc . editor . sendEvent ( "asc_onLockCore" , false ) } if ( ! bUnlockDefName ) bUnlockDefName = this . handlers . trigger ( "checkDefNameLock" , oLock ) } this . m _arrNeedUnlock . splice ( nIndex , 1 ) ; -- nIndex ; -- nCount } } } this . handlers . trigger ( "sendChanges" , this . getRecalcIndexSave ( this . m _oRecalcIndexColumns ) , this . getRecalcIndexSave ( this . m _oRecalcIndexRows ) , isAfterAskSave ) ;
if ( bIsCollaborative ) { this . _recalcLockArrayOthers ( ) ; delete this . m _oInsertColumns ; delete this . m _oInsertRows ; this . m _oInsertColumns = { } ; this . m _oInsertRows = { } ; this . clearRecalcIndex ( ) ; AscCommon . History . Clear ( ) ; if ( bCheckRedraw ) { this . handlers . trigger ( "drawSelection" ) ; this . handlers . trigger ( "drawFrozenPaneLines" ) ; this . handlers . trigger ( "updateAllSheetsLock" ) ; this . handlers . trigger ( "showComments" ) } if ( bCheckRedraw || bRedrawGraphicObjects ) this . handlers . trigger ( "showDrawingObjects" ) ; this . handlers . trigger ( "unlockDefName" ) ;
this . handlers . trigger ( "updateAllLayoutsLock" ) ; this . handlers . trigger ( "asc_onLockPrintArea" ) ; this . handlers . trigger ( "updateAllHeaderFooterLock" ) ; this . handlers . trigger ( "onUpdateAllPrintScaleLock" ) ; this . handlers . trigger ( "updateAllSheetViewLock" ) ; if ( 0 === this . m _nUseType ) this . m _nUseType = 1 } else AscCommon . History . Reset _SavedIndex ( IsUserSave ) } ; CCollaborativeEditing . prototype . getRecalcIndexSave = function ( oRecalcIndex ) { var bHasIndex = false ; var result = { } ; var element = null ; for ( var sheetId in oRecalcIndex ) { if ( ! oRecalcIndex . hasOwnProperty ( sheetId ) ) continue ;
result [ sheetId ] = { "_arrElements" : [ ] } ; for ( var i = 0 , length = oRecalcIndex [ sheetId ] . _arrElements . length ; i < length ; ++ i ) { bHasIndex = true ; element = oRecalcIndex [ sheetId ] . _arrElements [ i ] ; result [ sheetId ] [ "_arrElements" ] . push ( { "_recalcType" : element . _recalcType , "_position" : element . _position , "_count" : element . _count , "m_bIsSaveIndex" : element . m _bIsSaveIndex } ) } } return bHasIndex ? result : null } ; CCollaborativeEditing . prototype . S4 = function ( ) { return ( ( 1 + Math . random ( ) ) * 65536 | 0 ) . toString ( 16 ) . substring ( 1 ) } ; CCollaborativeEditing . prototype . createGUID =
function ( ) { return this . S4 ( ) + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + "-" + this . S4 ( ) + this . S4 ( ) + this . S4 ( ) } ; CCollaborativeEditing . prototype . getLockInfo = function ( typeElem , subType , sheetId , info ) { var oLockInfo = new AscCommonExcel . asc _CLockInfo ; oLockInfo [ "sheetId" ] = sheetId ; oLockInfo [ "type" ] = typeElem ; oLockInfo [ "subType" ] = subType ; oLockInfo [ "guid" ] = this . createGUID ( ) ; oLockInfo [ "rangeOrObjectId" ] = info ; return oLockInfo } ; CCollaborativeEditing . prototype . getLockByElem = function ( element , type ) { var arrayElements =
c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; for ( var i = 0 ; i < arrayElements . length ; ++ i ) if ( element [ "guid" ] === arrayElements [ i ] . Element [ "guid" ] ) return arrayElements [ i ] ; return null } ; CCollaborativeEditing . prototype . getLockIntersection = function ( element , type , bCheckOnlyLockAll ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var oUnlockElement = null , rangeTmp1 , rangeTmp2 ; for ( var i = 0 ; i < arrayElements . length ; ++ i ) { oUnlockElement = arrayElements [ i ] . Element ;
if ( c _oAscLockTypeElem . Sheet === element [ "type" ] && element [ "type" ] === oUnlockElement [ "type" ] ) if ( c _oAscLockTypes . kLockTypeMine !== type && false === bCheckOnlyLockAll || element [ "sheetId" ] === oUnlockElement [ "sheetId" ] ) return arrayElements [ i ] ; if ( element [ "sheetId" ] !== oUnlockElement [ "sheetId" ] ) continue ; if ( null !== element [ "subType" ] && null !== oUnlockElement [ "subType" ] ) return arrayElements [ i ] ; if ( true === bCheckOnlyLockAll || c _oAscLockTypeElemSubType . ChangeProperties === oUnlockElement [ "subType" ] && c _oAscLockTypeElem . Sheet !==
element [ "type" ] ) continue ; if ( element [ "type" ] === oUnlockElement [ "type" ] ) if ( element [ "type" ] === c _oAscLockTypeElem . Object ) { if ( element [ "rangeOrObjectId" ] === oUnlockElement [ "rangeOrObjectId" ] ) return arrayElements [ i ] } else { if ( element [ "type" ] === c _oAscLockTypeElem . Range ) { if ( c _oAscLockTypes . kLockTypeMine === type || c _oAscLockTypeElemSubType . InsertRows === oUnlockElement [ "subType" ] || c _oAscLockTypeElemSubType . InsertColumns === oUnlockElement [ "subType" ] ) continue ; rangeTmp1 = oUnlockElement [ "rangeOrObjectId" ] ; rangeTmp2 = element [ "rangeOrObjectId" ] ;
if ( rangeTmp2 [ "c1" ] > rangeTmp1 [ "c2" ] || rangeTmp2 [ "c2" ] < rangeTmp1 [ "c1" ] || rangeTmp2 [ "r1" ] > rangeTmp1 [ "r2" ] || rangeTmp2 [ "r2" ] < rangeTmp1 [ "r1" ] ) continue ; return arrayElements [ i ] } } else if ( oUnlockElement [ "type" ] === c _oAscLockTypeElem . Sheet || element [ "type" ] === c _oAscLockTypeElem . Sheet && c _oAscLockTypes . kLockTypeMine !== type ) return arrayElements [ i ] } return false } ; CCollaborativeEditing . prototype . getLockElem = function ( typeElem , type , sheetId ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === type ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ;
var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var result = [ ] ; var c1 , c2 , r1 , r2 ; if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ; if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] = new CRecalcIndex ; for ( var i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( element [ "sheetId" ] !== sheetId || element [ "type" ] !== typeElem ) continue ; if ( c _oAscLockTypes . kLockTypeMine === type && c _oAscLockTypeElem . Range ===
typeElem && ( c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows === element [ "subType" ] ) ) continue ; if ( c _oAscLockTypeElem . Range === typeElem && ( c _oAscLockTypeElemSubType . InsertColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] ) ) continue ; if ( c _oAscLockTypeElemSubType . ChangeProperties === element [ "subType" ] ) continue ; oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( c _oAscLockTypeElem . Range === typeElem ) { if ( c _oAscLockTypes . kLockTypeMine !==
type && c _oAscLockTypeElem . Range === typeElem && ( c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows === element [ "subType" ] ) ) { c1 = oRangeOrObjectId [ "c1" ] ; c2 = oRangeOrObjectId [ "c2" ] ; r1 = oRangeOrObjectId [ "r1" ] ; r2 = oRangeOrObjectId [ "r2" ] } else { c1 = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c1" ] , type ) ; c2 = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c2" ] , type ) ; r1 = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r1" ] ,
type ) ; r2 = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r2" ] , type ) } if ( null === c1 || null === c2 || null === r1 || null === r2 ) continue ; oRangeOrObjectId = new Asc . Range ( c1 , r1 , c2 , r2 ) } result . push ( oRangeOrObjectId ) } return result } ; CCollaborativeEditing . prototype . getLockCellsMe = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Range , c _oAscLockTypes . kLockTypeMine , sheetId ) } ; CCollaborativeEditing . prototype . getLockCellsOther = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Range , c _oAscLockTypes . kLockTypeOther ,
sheetId ) } ; CCollaborativeEditing . prototype . getLockObjectsMe = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Object , c _oAscLockTypes . kLockTypeMine , sheetId ) } ; CCollaborativeEditing . prototype . getLockObjectsOther = function ( sheetId ) { return this . getLockElem ( c _oAscLockTypeElem . Object , c _oAscLockTypes . kLockTypeOther , sheetId ) } ; CCollaborativeEditing . prototype . isLockAllOther = function ( sheetId ) { var arrayElements = this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null ; var oLockedObjectType =
Asc . c _oAscMouseMoveLockedObjectType . None ; for ( var i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( element [ "sheetId" ] === sheetId ) if ( element [ "type" ] === c _oAscLockTypeElem . Sheet ) { oLockedObjectType = Asc . c _oAscMouseMoveLockedObjectType . Sheet ; break } else if ( element [ "type" ] === c _oAscLockTypeElem . Range && null !== element [ "subType" ] ) oLockedObjectType = Asc . c _oAscMouseMoveLockedObjectType . TableProperties } return oLockedObjectType } ; CCollaborativeEditing . prototype . _recalcLockArray = function ( typeLock , oRecalcIndexColumns ,
oRecalcIndexRows ) { var arrayElements = c _oAscLockTypes . kLockTypeMine === typeLock ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var i ; var sheetId = - 1 ; for ( i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( c _oAscLockTypeElem . Range !== element [ "type" ] || c _oAscLockTypeElemSubType . InsertColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteColumns === element [ "subType" ] || c _oAscLockTypeElemSubType . DeleteRows ===
element [ "subType" ] ) continue ; sheetId = element [ "sheetId" ] ; oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( oRecalcIndexColumns && oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "c1" ] = oRecalcIndexColumns [ sheetId ] . getLockMe ( oRangeOrObjectId [ "c1" ] ) ; oRangeOrObjectId [ "c2" ] = oRecalcIndexColumns [ sheetId ] . getLockMe ( oRangeOrObjectId [ "c2" ] ) } if ( oRecalcIndexRows && oRecalcIndexRows . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "r1" ] = oRecalcIndexRows [ sheetId ] . getLockMe ( oRangeOrObjectId [ "r1" ] ) ; oRangeOrObjectId [ "r2" ] =
oRecalcIndexRows [ sheetId ] . getLockMe ( oRangeOrObjectId [ "r2" ] ) } } } ; CCollaborativeEditing . prototype . _recalcLockArrayOthers = function ( ) { var typeLock = c _oAscLockTypes . kLockTypeOther ; var arrayElements = c _oAscLockTypes . kLockTypeMine === typeLock ? this . m _arrNeedUnlock2 : this . m _arrNeedUnlock ; var count = arrayElements . length ; var element = null , oRangeOrObjectId = null ; var i ; var sheetId = - 1 ; for ( i = 0 ; i < count ; ++ i ) { element = arrayElements [ i ] . Element ; if ( c _oAscLockTypeElem . Range !== element [ "type" ] || c _oAscLockTypeElemSubType . InsertColumns ===
element [ "subType" ] || c _oAscLockTypeElemSubType . InsertRows === element [ "subType" ] ) continue ; sheetId = element [ "sheetId" ] ; oRangeOrObjectId = element [ "rangeOrObjectId" ] ; if ( this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "c1" ] = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c1" ] ) ; oRangeOrObjectId [ "c2" ] = this . m _oRecalcIndexColumns [ sheetId ] . getLockOther ( oRangeOrObjectId [ "c2" ] ) } if ( this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) { oRangeOrObjectId [ "r1" ] = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r1" ] ) ;
oRangeOrObjectId [ "r2" ] = this . m _oRecalcIndexRows [ sheetId ] . getLockOther ( oRangeOrObjectId [ "r2" ] ) } } } ; CCollaborativeEditing . prototype . addRecalcIndex = function ( type , oRecalcIndex ) { if ( null == oRecalcIndex ) return null ; var nIndex = 0 ; var nRecalcType = c _oAscRecalcIndexTypes . RecalcIndexAdd ; var oRecalcIndexElement = null ; var oRecalcIndexResult = { } ; var oRecalcIndexTmp = "0" === type ? this . m _oRecalcIndexColumns : this . m _oRecalcIndexRows ; for ( var sheetId in oRecalcIndex ) if ( oRecalcIndex . hasOwnProperty ( sheetId ) ) { if ( ! oRecalcIndexTmp . hasOwnProperty ( sheetId ) ) oRecalcIndexTmp [ sheetId ] =
new CRecalcIndex ; if ( ! oRecalcIndexResult . hasOwnProperty ( sheetId ) ) oRecalcIndexResult [ sheetId ] = new CRecalcIndex ; for ( ; nIndex < oRecalcIndex [ sheetId ] [ "_arrElements" ] . length ; ++ nIndex ) { oRecalcIndexElement = oRecalcIndex [ sheetId ] [ "_arrElements" ] [ nIndex ] ; if ( true === oRecalcIndexElement [ "m_bIsSaveIndex" ] ) continue ; nRecalcType = c _oAscRecalcIndexTypes . RecalcIndexAdd === oRecalcIndexElement [ "_recalcType" ] ? c _oAscRecalcIndexTypes . RecalcIndexRemove : c _oAscRecalcIndexTypes . RecalcIndexAdd ; oRecalcIndexTmp [ sheetId ] . add ( nRecalcType ,
oRecalcIndexElement [ "_position" ] , oRecalcIndexElement [ "_count" ] , true ) ; oRecalcIndexResult [ sheetId ] . add ( nRecalcType , oRecalcIndexElement [ "_position" ] , oRecalcIndexElement [ "_count" ] , true ) } } return oRecalcIndexResult } ; CCollaborativeEditing . prototype . undoCols = function ( sheetId , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return ; this . m _oRecalcIndexColumns [ sheetId ] . remove ( count ) } ; CCollaborativeEditing . prototype . undoRows = function ( sheetId , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return ;
this . m _oRecalcIndexRows [ sheetId ] . remove ( count ) } ; CCollaborativeEditing . prototype . removeCols = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ; this . m _oRecalcIndexColumns [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexRemove , position , count , false ) } ; CCollaborativeEditing . prototype . addCols = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexColumns [ sheetId ] = new CRecalcIndex ;
this . m _oRecalcIndexColumns [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexAdd , position , count , false ) } ; CCollaborativeEditing . prototype . removeRows = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] = new CRecalcIndex ; this . m _oRecalcIndexRows [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexRemove , position , count , false ) } ; CCollaborativeEditing . prototype . addRows = function ( sheetId , position , count ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) this . m _oRecalcIndexRows [ sheetId ] =
new CRecalcIndex ; this . m _oRecalcIndexRows [ sheetId ] . add ( c _oAscRecalcIndexTypes . RecalcIndexAdd , position , count , false ) } ; CCollaborativeEditing . prototype . addColsRange = function ( sheetId , range ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) this . m _oInsertColumns [ sheetId ] = [ ] ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; var countCols = range . c2 - range . c1 + 1 ; var isAddNewRange = true ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 > range . c1 ) { arrInsertColumns [ i ] . c1 += countCols ; arrInsertColumns [ i ] . c2 +=
countCols } else if ( arrInsertColumns [ i ] . c1 <= range . c1 && arrInsertColumns [ i ] . c2 >= range . c1 ) { arrInsertColumns [ i ] . c2 += countCols ; isAddNewRange = false } if ( isAddNewRange ) arrInsertColumns . push ( range ) } ; CCollaborativeEditing . prototype . addRowsRange = function ( sheetId , range ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) this . m _oInsertRows [ sheetId ] = [ ] ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; var countRows = range . r2 - range . r1 + 1 ; var isAddNewRange = true ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 > range . r1 ) { arrInsertRows [ i ] . r1 +=
countRows ; arrInsertRows [ i ] . r2 += countRows } else if ( arrInsertRows [ i ] . r1 <= range . r1 && arrInsertRows [ i ] . r2 >= range . r1 ) { arrInsertRows [ i ] . r2 += countRows ; isAddNewRange = false } if ( isAddNewRange ) arrInsertRows . push ( range ) } ; CCollaborativeEditing . prototype . removeColsRange = function ( sheetId , range ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; var countCols = range . c2 - range . c1 + 1 ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 > range . c2 ) { arrInsertColumns [ i ] . c1 -=
countCols ; arrInsertColumns [ i ] . c2 -= countCols } else if ( arrInsertColumns [ i ] . c1 >= range . c1 && arrInsertColumns [ i ] . c2 <= range . c2 ) { arrInsertColumns . splice ( i , 1 ) ; i -= 1 } else if ( arrInsertColumns [ i ] . c1 >= range . c1 && arrInsertColumns [ i ] . c1 <= range . c2 && arrInsertColumns [ i ] . c2 > range . c2 ) { arrInsertColumns [ i ] . c1 = range . c2 + 1 ; arrInsertColumns [ i ] . c1 -= countCols ; arrInsertColumns [ i ] . c2 -= countCols } else if ( arrInsertColumns [ i ] . c1 < range . c1 && arrInsertColumns [ i ] . c2 >= range . c1 && arrInsertColumns [ i ] . c2 <= range . c2 ) arrInsertColumns [ i ] . c2 = range . c1 -
1 ; else if ( arrInsertColumns [ i ] . c1 < range . c1 && arrInsertColumns [ i ] . c2 > range . c2 ) arrInsertColumns [ i ] . c2 -= countCols } ; CCollaborativeEditing . prototype . removeRowsRange = function ( sheetId , range ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; var countRows = range . r2 - range . r1 + 1 ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 > range . r2 ) { arrInsertRows [ i ] . r1 -= countRows ; arrInsertRows [ i ] . r2 -= countRows } else if ( arrInsertRows [ i ] . r1 >= range . r1 && arrInsertRows [ i ] . r2 <=
range . r2 ) { arrInsertRows . splice ( i , 1 ) ; i -= 1 } else if ( arrInsertRows [ i ] . r1 >= range . r1 && arrInsertRows [ i ] . r1 <= range . r2 && arrInsertRows [ i ] . r2 > range . r2 ) { arrInsertRows [ i ] . r1 = range . r2 + 1 ; arrInsertRows [ i ] . r1 -= countRows ; arrInsertRows [ i ] . r2 -= countRows } else if ( arrInsertRows [ i ] . r1 < range . r1 && arrInsertRows [ i ] . r2 >= range . r1 && arrInsertRows [ i ] . r2 <= range . r2 ) arrInsertRows [ i ] . r2 = range . r1 - 1 ; else if ( arrInsertRows [ i ] . r1 < range . r1 && arrInsertRows [ i ] . r2 > range . r2 ) arrInsertRows [ i ] . r2 -= countRows } ; CCollaborativeEditing . prototype . isIntersectionInCols =
function ( sheetId , col ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return false ; var arrInsertColumns = this . m _oInsertColumns [ sheetId ] ; for ( var i = 0 ; i < arrInsertColumns . length ; ++ i ) if ( arrInsertColumns [ i ] . c1 <= col && col <= arrInsertColumns [ i ] . c2 ) return true ; return false } ; CCollaborativeEditing . prototype . isIntersectionInRows = function ( sheetId , row ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return false ; var arrInsertRows = this . m _oInsertRows [ sheetId ] ; for ( var i = 0 ; i < arrInsertRows . length ; ++ i ) if ( arrInsertRows [ i ] . r1 <=
row && row <= arrInsertRows [ i ] . r2 ) return true ; return false } ; CCollaborativeEditing . prototype . getArrayInsertColumnsBySheetId = function ( sheetId ) { if ( ! this . m _oInsertColumns . hasOwnProperty ( sheetId ) ) return [ ] ; return this . m _oInsertColumns [ sheetId ] } ; CCollaborativeEditing . prototype . getArrayInsertRowsBySheetId = function ( sheetId ) { if ( ! this . m _oInsertRows . hasOwnProperty ( sheetId ) ) return [ ] ; return this . m _oInsertRows [ sheetId ] } ; CCollaborativeEditing . prototype . getLockMeColumn = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ;
return this . m _oRecalcIndexColumns [ sheetId ] . getLockMe ( col ) } ; CCollaborativeEditing . prototype . getLockMeRow = function ( sheetId , row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockMe ( row ) } ; CCollaborativeEditing . prototype . getLockMeColumn2 = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ; return this . m _oRecalcIndexColumns [ sheetId ] . getLockMe2 ( col ) } ; CCollaborativeEditing . prototype . getLockMeRow2 = function ( sheetId ,
row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockMe2 ( row ) } ; CCollaborativeEditing . prototype . getLockOtherColumn2 = function ( sheetId , col ) { if ( ! this . m _oRecalcIndexColumns . hasOwnProperty ( sheetId ) ) return col ; return this . m _oRecalcIndexColumns [ sheetId ] . getLockSaveOther ( col ) } ; CCollaborativeEditing . prototype . getLockOtherRow2 = function ( sheetId , row ) { if ( ! this . m _oRecalcIndexRows . hasOwnProperty ( sheetId ) ) return row ; return this . m _oRecalcIndexRows [ sheetId ] . getLockSaveOther ( row ) } ;
function CLock ( element ) { this . Type = c _oAscLockTypes . kLockTypeNone ; this . UserId = null ; this . Element = element ; this . init ( ) ; return this } CLock . prototype . init = function ( ) { } ; CLock . prototype . getType = function ( ) { return this . Type } ; CLock . prototype . setType = function ( newType ) { if ( newType === c _oAscLockTypes . kLockTypeNone ) this . UserId = null ; this . Type = newType } ; CLock . prototype . Lock = function ( bMine ) { if ( c _oAscLockTypes . kLockTypeNone === this . Type ) if ( true === bMine ) this . Type = c _oAscLockTypes . kLockTypeMine ; else this . Type = c _oAscLockTypes . kLockTypeOther } ;
CLock . prototype . setUserId = function ( UserId ) { this . UserId = UserId } ; function CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) { if ( ! ( this instanceof CRecalcIndexElement ) ) return new CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) ; this . _recalcType = recalcType ; this . _position = position ; this . _count = 1 ; this . m _bIsSaveIndex = ! ! bIsSaveIndex ; return this } CRecalcIndexElement . prototype . getLockOther = function ( position , type ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd === this . _recalcType ? + 1 : - 1 ; if ( position === this . _position &&
c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && true === this . m _bIsSaveIndex ) return null ; else if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && c _oAscLockTypes . kLockTypeMine === type && false === this . m _bIsSaveIndex ) return null ; else if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockSaveOther = function ( position , type ) { if ( this . m _bIsSaveIndex ) return position ; var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd ===
this . _recalcType ? + 1 : - 1 ; if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && true === this . m _bIsSaveIndex ) return null ; else if ( position === this . _position && c _oAscRecalcIndexTypes . RecalcIndexRemove === this . _recalcType && c _oAscLockTypes . kLockTypeMine === type && false === this . m _bIsSaveIndex ) return null ; else if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockMe = function ( position ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd ===
this . _recalcType ? - 1 : + 1 ; if ( position < this . _position ) return position ; else return position + inc } ; CRecalcIndexElement . prototype . getLockMe2 = function ( position ) { var inc = c _oAscRecalcIndexTypes . RecalcIndexAdd === this . _recalcType ? - 1 : + 1 ; if ( true !== this . m _bIsSaveIndex || position < this . _position ) return position ; else return position + inc } ; function CRecalcIndex ( ) { if ( ! ( this instanceof CRecalcIndex ) ) return new CRecalcIndex ; this . _arrElements = [ ] ; return this } CRecalcIndex . prototype . add = function ( recalcType , position , count , bIsSaveIndex ) { for ( var i =
0 ; i < count ; ++ i ) this . _arrElements . push ( new CRecalcIndexElement ( recalcType , position , bIsSaveIndex ) ) } ; CRecalcIndex . prototype . remove = function ( count ) { for ( var i = 0 ; i < count ; ++ i ) this . _arrElements . pop ( ) } ; CRecalcIndex . prototype . clear = function ( ) { this . _arrElements . length = 0 } ; CRecalcIndex . prototype . getLockOther = function ( position , type ) { var newPosition = position ; var count = this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = ! this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition =
this . _arrElements [ i ] . getLockOther ( newPosition , type ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockOther ( newPosition , type ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockSaveOther = function ( position , type ) { var newPosition = position ; var count = this . _arrElements . length ; for ( var i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockSaveOther ( newPosition , type ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockMe =
function ( position ) { var newPosition = position ; var count = this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockMe ( newPosition ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockMe ( newPosition ) ; if ( null === newPosition ) break } return newPosition } ; CRecalcIndex . prototype . getLockMe2 = function ( position ) { var newPosition = position ; var count =
this . _arrElements . length ; if ( 0 >= count ) return newPosition ; var bIsDirect = this . _arrElements [ 0 ] . m _bIsSaveIndex ; var i ; if ( bIsDirect ) for ( i = 0 ; i < count ; ++ i ) { newPosition = this . _arrElements [ i ] . getLockMe2 ( newPosition ) ; if ( null === newPosition ) break } else for ( i = count - 1 ; i >= 0 ; -- i ) { newPosition = this . _arrElements [ i ] . getLockMe2 ( newPosition ) ; if ( null === newPosition ) break } return newPosition } ; window [ "Asc" ] = window [ "Asc" ] || { } ; window [ "AscCommonExcel" ] = window [ "AscCommonExcel" ] || { } ; window [ "AscCommonExcel" ] . CLock = CLock ; window [ "AscCommonExcel" ] . CCollaborativeEditing =
CCollaborativeEditing ; window [ "Asc" ] . CRecalcIndexElement = CRecalcIndexElement ; window [ "Asc" ] . CRecalcIndex = CRecalcIndex } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CDocumentMacros ( ) { this . Id = "_macrosGlobalId" ; this . Lock = new AscCommon . CLock ; this . Data = "" ; AscCommon . g _oTableId . Add ( this , this . Id ) } CDocumentMacros . prototype . SetData = function ( sData ) { AscCommon . History . Add ( new CChangesDocumentMacrosData ( this , this . Data , sData ) ) ; this . Data = sData } ; CDocumentMacros . prototype . GetData = function ( ) { return this . Data } ; CDocumentMacros . prototype . Get _Id = function ( ) { return this . Id } ; CDocumentMacros . prototype . CheckLock = function ( ) { this . Lock . Check ( this . Id ) } ;
CDocumentMacros . prototype . Write _ToBinary2 = function ( Writer ) { Writer . WriteLong ( AscDFH . historyitem _type _DocumentMacros ) ; Writer . WriteString2 ( "" + this . Id ) ; Writer . WriteString2 ( this . Data ) } ; CDocumentMacros . prototype . Read _FromBinary2 = function ( Reader ) { this . Id = Reader . GetString2 ( ) ; this . Data = Reader . GetString2 ( ) } ; CDocumentMacros . prototype . Refresh _RecalcData = function ( ) { } ; CDocumentMacros . prototype . runAuto = function ( ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) { if ( true !==
obj [ "macrosArray" ] [ i ] [ "autostart" ] ) continue ; var script = "(function(){ var Api = window.g_asc_plugins.api;\n" + obj [ "macrosArray" ] [ i ] [ "value" ] + "\n})();" ; eval ( script ) } } catch ( err ) { } } ; CDocumentMacros . prototype . isExistAuto = function ( ) { try { var obj = JSON . parse ( this . Data ) ; if ( ! obj [ "macrosArray" ] ) return ; for ( var i = 0 ; i < obj [ "macrosArray" ] . length ; i ++ ) if ( true === obj [ "macrosArray" ] [ i ] [ "autostart" ] ) return true } catch ( err ) { } return false } ; AscDFH . changesFactory [ AscDFH . historyitem _DocumentMacros _Data ] = CChangesDocumentMacrosData ;
AscDFH . changesRelationMap [ AscDFH . historyitem _DocumentMacros _Data ] = [ AscDFH . historyitem _DocumentMacros _Data ] ; function CChangesDocumentMacrosData ( Class , Old , New ) { AscDFH . CChangesBaseStringProperty . call ( this , Class , Old , New ) } CChangesDocumentMacrosData . prototype = Object . create ( AscDFH . CChangesBaseStringProperty . prototype ) ; CChangesDocumentMacrosData . prototype . constructor = CChangesDocumentMacrosData ; CChangesDocumentMacrosData . prototype . Type = AscDFH . historyitem _DocumentMacros _Data ; CChangesDocumentMacrosData . prototype . private _SetValue =
function ( Value ) { this . Class . Data = Value } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . CDocumentMacros = CDocumentMacros } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var prot ; var c _oEditorId = AscCommon . c _oEditorId ; var c _oCloseCode = AscCommon . c _oCloseCode ; var DownloadType = AscCommon . DownloadType ; var c _oAscError = Asc . c _oAscError ; var c _oAscAsyncAction = Asc . c _oAscAsyncAction ; var c _oAscAsyncActionType = Asc . c _oAscAsyncActionType ; function baseEditorsApi ( config , editorId ) { this . editorId = editorId ; this . isLoadFullApi = false ; this . isLoadFonts = false ; this . openResult = null ; this . HtmlElementName = config [ "id-view" ] || "" ; this . HtmlElement = null ; this . isMobileVersion =
config [ "mobile" ] === true ; this . isEmbedVersion = config [ "embedded" ] === true ; this . isViewMode = false ; this . restrictions = Asc . c _oAscRestrictionType . None ; this . FontLoader = null ; this . ImageLoader = null ; this . LoadedObject = null ; this . DocumentType = 0 ; this . DocInfo = null ; this . documentId = undefined ; this . documentUserId = undefined ; this . documentUrl = "null" ; this . documentUrlChanges = null ; this . documentCallbackUrl = undefined ; this . documentFormat = "null" ; this . documentTitle = "null" ; this . documentFormatSave = Asc . c _oAscFileType . UNKNOWN ; this . documentOpenOptions =
undefined ; this . advancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction . None ; this . OpenDocumentProgress = new AscCommon . COpenProgress ; var sProtocol = window . location . protocol ; this . documentOrigin = ( sProtocol && "" !== sProtocol ? sProtocol + "//" : "" ) + window . location . host ; this . documentPathname = window . location . pathname ; this . ServerIdWaitComplete = false ; this . IsLongActionCurrent = 0 ; this . LongActionCallbacks = [ ] ; this . LongActionCallbacksParams = [ ] ; this . autoSaveGap = 0 ; this . lastSaveTime = null ; this . autoSaveGapFast = 2E3 ; this . autoSaveGapSlow =
10 * 60 * 1E3 ; this . intervalWaitAutoSave = 1E3 ; this . canUnlockDocument = false ; this . canUnlockDocument2 = false ; this . canStartCoAuthoring = false ; this . isDocumentCanSave = false ; this . translateManager = AscCommon . translateManager . init ( config [ "translate" ] ) ; this . chartPreviewManager = null ; this . textArtPreviewManager = null ; this . shapeElementId = null ; this . isChartEditor = false ; this . isOpenedChartFrame = false ; this . MathMenuLoad = false ; this . User = undefined ; this . CoAuthoringApi = new AscCommon . CDocsCoApi ; this . isCoAuthoringEnable = true ; this . arrPreOpenLocksObjects =
[ ] ; this . SpellCheckUrl = "" ; this . licenseResult = null ; this . isOnLoadLicense = false ; this . isDocumentLoadComplete = false ; this . isPreOpenLocks = true ; this . isApplyChangesOnOpenEnabled = true ; this . canSave = true ; this . IsUserSave = false ; this . isForceSaveOnUserSave = false ; this . forceSaveButtonTimeout = null ; this . forceSaveButtonContinue = false ; this . forceSaveTimeoutTimeout = null ; this . disconnectOnSave = null ; this . forceSaveUndoRequest = false ; this . VersionHistory = null ; this . noCreatePoint = false ; this . exucuteHistory = false ; this . exucuteHistoryEnd =
false ; this . selectSearchingResults = false ; this . isSendStandartTextures = false ; this . tmpFocus = null ; this . fCurCallback = null ; this . pluginsManager = null ; this . isLockTargetUpdate = false ; this . lastWorkTime = 0 ; this . signatures = [ ] ; this . currentPassword = "" ; this . disableAutostartMacros = false ; this . macros = null ; this . openFileCryptBinary = null ; this . copyOutEnabled = true ; this . watermarkDraw = null ; this . SaveAfterMacros = false ; this . SpellCheckApi = new AscCommon . CSpellCheckApi ; this . isSpellCheckEnable = true ; this . internalEvents = { } ; this . Shortcuts =
new AscCommon . CShortcuts ; this . initDefaultShortcuts ( ) ; return this } baseEditorsApi . prototype . _init = function ( ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "CreateEditorApi" ] ( this ) ; var t = this ; this . HtmlElement = document . getElementById ( this . HtmlElementName ) ; AscCommon . InitOnMessage ( function ( error , url ) { if ( c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) ; else t . _addImageUrl ( [ url ] ) ; t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) } ) ;
AscCommon . loadSdk ( this . _editorNameById ( ) , function ( ) { t . isLoadFullApi = true ; t . _onEndLoadSdk ( ) ; t . onEndLoadDocInfo ( ) } , function ( err ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . LoadingScriptError , c _oAscError . Level . Critical ) } ) ; AscFonts . load ( t , function ( ) { t . isLoadFonts = true ; t . onEndLoadFile ( null ) } , function ( ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . LoadingScriptError , c _oAscError . Level . Critical ) } ) ; var oldOnError = window . onerror ; window . onerror = function ( errorMsg , url , lineNumber , column , errorObj ) { window . onerror =
oldOnError ; var msg = "Error: " + errorMsg + " Script: " + url + " Line: " + lineNumber + ":" + column + " userAgent: " + ( navigator . userAgent || navigator . vendor || window . opera ) + " platform: " + navigator . platform + " isLoadFullApi: " + t . isLoadFullApi + " isDocumentLoadComplete: " + t . isDocumentLoadComplete + " StackTrace: " + ( errorObj ? errorObj . stack : "" ) ; t . CoAuthoringApi . sendChangesError ( msg ) ; if ( t . isLoadFullApi ) if ( t . isDocumentLoadComplete ) { t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . EditingError , c _oAscError . Level . NoCritical ) ; t . asc _setViewMode ( true ) } else t . sendEvent ( "asc_onError" ,
Asc . c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; if ( oldOnError ) return oldOnError . apply ( this , arguments ) ; else return false } ; if ( AscCommon . AscBrowser . isMacOs ) document . body . onmousewheel = function ( e ) { if ( e . stopPropagation ) e . stopPropagation ( ) ; e . returnValue = false ; return false } } ; baseEditorsApi . prototype . _editorNameById = function ( ) { var res = "" ; switch ( this . editorId ) { case c _oEditorId . Word : res = "word" ; break ; case c _oEditorId . Spreadsheet : res = "cell" ; break ; case c _oEditorId . Presentation : res = "slide" ;
break } return res } ; baseEditorsApi . prototype . getEditorId = function ( ) { return this . editorId } ; baseEditorsApi . prototype . asc _loadFontsFromServer = function ( fonts ) { if ( ! fonts ) fonts = [ "Arial" , "Symbol" , "Wingdings" , "Courier New" , "Times New Roman" ] ; this . FontLoader . LoadFontsFromServer ( fonts ) } ; baseEditorsApi . prototype . asc _GetFontThumbnailsPath = function ( ) { return "../Common/Images/" } ; baseEditorsApi . prototype . asc _getDocumentName = function ( ) { return this . documentTitle } ; baseEditorsApi . prototype . asc _getAppProps = function ( ) { return null } ;
baseEditorsApi . prototype . asc _getCoreProps = function ( ) { var oCore = this . getInternalCoreProps ( ) ; if ( oCore ) return oCore . copy ( ) ; return null } ; baseEditorsApi . prototype . getInternalCoreProps = function ( ) { return null } ; baseEditorsApi . prototype . asc _setCoreProps = function ( oProps ) { } ; baseEditorsApi . prototype . asc _setDocInfo = function ( oDocInfo ) { var oldInfo = this . DocInfo ; if ( oDocInfo ) this . DocInfo = oDocInfo ; if ( this . DocInfo ) { this . documentId = this . DocInfo . get _Id ( ) ; this . documentUserId = this . DocInfo . get _UserId ( ) ; this . documentUrl = this . DocInfo . get _Url ( ) ;
this . documentTitle = this . DocInfo . get _Title ( ) ; this . documentFormat = this . DocInfo . get _Format ( ) ; this . documentCallbackUrl = this . DocInfo . get _CallbackUrl ( ) ; this . documentOpenOptions = this . DocInfo . asc _getOptions ( ) ; var permissions = this . DocInfo . asc _getPermissions ( ) ; if ( permissions && undefined !== permissions [ "copy" ] ) this . copyOutEnabled = permissions [ "copy" ] ; this . User = new AscCommon . asc _CUser ; this . User . setId ( this . DocInfo . get _UserId ( ) ) ; this . User . setUserName ( this . DocInfo . get _UserName ( ) ) ; this . User . setFirstName ( this . DocInfo . get _FirstName ( ) ) ;
this . User . setLastName ( this . DocInfo . get _LastName ( ) ) ; this . CoAuthoringApi . setDocId ( this . documentId ) ; if ( this . documentOpenOptions && this . documentOpenOptions [ "watermark" ] ) { this . watermarkDraw = new AscCommon . CWatermarkOnDraw ( this . documentOpenOptions [ "watermark" ] , this ) ; this . watermarkDraw . CheckParams ( this ) } } if ( AscCommon . chartMode === this . documentUrl ) { this . isChartEditor = true ; AscCommon . EncryptionWorker . isChartEditor = true ; this . DocInfo . put _OfflineApp ( true ) } else if ( AscCommon . offlineMode === this . documentUrl ) this . DocInfo . put _OfflineApp ( true ) ;
if ( this . DocInfo . get _EncryptedInfo ( ) ) if ( undefined !== window [ "AscDesktopEditor" ] ) { var obj = this . DocInfo . get _EncryptedInfo ( ) ; obj [ "userId" ] = this . documentUserId ; window [ "AscDesktopEditor" ] [ "execCommand" ] ( "portal:cryptoinfo" , JSON . stringify ( obj ) ) } if ( undefined !== window [ "AscDesktopEditor" ] && ! ( this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) ) window [ "AscDesktopEditor" ] [ "SetDocumentName" ] ( this . documentTitle ) ; if ( ! this . isChartEditor && undefined !== window [ "AscDesktopEditor" ] && undefined !== window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) this . DocInfo . put _Encrypted ( 0 <
window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) ; if ( ! oldInfo ) this . onEndLoadDocInfo ( ) } ; baseEditorsApi . prototype . asc _isCrypto = function ( ) { if ( this . DocInfo && this . DocInfo . get _Encrypted ( ) === true ) return true ; return false } ; baseEditorsApi . prototype . asc _enableKeyEvents = function ( isEnabled , isFromInput ) { } ; baseEditorsApi . prototype . asc _IsFocus = function ( bIsNaturalFocus ) { var _ret = false ; if ( this . WordControl . IsFocus ) _ret = true ; if ( _ret && bIsNaturalFocus && this . WordControl . TextBoxInputFocus ) _ret = false ; return _ret } ; baseEditorsApi . prototype . isCopyOutEnabled =
function ( ) { return this . copyOutEnabled } ; baseEditorsApi . prototype . sync _CanCopyCutCallback = function ( bCanCopyCut ) { this . sendEvent ( "asc_onCanCopyCut" , bCanCopyCut ) } ; baseEditorsApi . prototype . can _CopyCut = function ( ) { return true } ; baseEditorsApi . prototype . asc _LockTargetUpdate = function ( isLock ) { this . isLockTargetUpdate = isLock } ; baseEditorsApi . prototype . isPdfViewer = function ( ) { return false } ; baseEditorsApi . prototype . sendEvent = function ( ) { } ; baseEditorsApi . prototype . SendOpenProgress = function ( ) { this . sendEvent ( "asc_onOpenDocumentProgress" ,
this . OpenDocumentProgress ) } ; baseEditorsApi . prototype . sync _InitEditorFonts = function ( gui _fonts ) { if ( ! this . isViewMode ) this . sendEvent ( "asc_onInitEditorFonts" , gui _fonts ) } ; baseEditorsApi . prototype . sync _StartAction = function ( type , id ) { this . sendEvent ( "asc_onStartAction" , type , id ) ; if ( c _oAscAsyncActionType . BlockInteraction === type ) this . incrementCounterLongAction ( ) } ; baseEditorsApi . prototype . sync _EndAction = function ( type , id ) { this . sendEvent ( "asc_onEndAction" , type , id ) ; if ( c _oAscAsyncActionType . BlockInteraction === type ) this . decrementCounterLongAction ( ) } ;
baseEditorsApi . prototype . sync _TryUndoInFastCollaborative = function ( ) { this . sendEvent ( "asc_OnTryUndoInFastCollaborative" ) } ; baseEditorsApi . prototype . asc _setViewMode = function ( ) { } ; baseEditorsApi . prototype . asc _setRestriction = function ( val ) { this . restrictions = val ; this . onUpdateRestrictions ( ) } ; baseEditorsApi . prototype . getViewMode = function ( ) { return this . isViewMode } ; baseEditorsApi . prototype . asc _addRestriction = function ( val ) { this . restrictions |= val ; this . onUpdateRestrictions ( ) } ; baseEditorsApi . prototype . asc _removeRestriction =
function ( val ) { this . restrictions &= ~ val ; this . onUpdateRestrictions ( ) } ; baseEditorsApi . prototype . canEdit = function ( ) { return ! this . isViewMode && this . restrictions === Asc . c _oAscRestrictionType . None } ; baseEditorsApi . prototype . isRestrictionForms = function ( ) { return ! ! ( this . restrictions & Asc . c _oAscRestrictionType . OnlyForms ) } ; baseEditorsApi . prototype . isRestrictionComments = function ( ) { return ! ! ( this . restrictions & Asc . c _oAscRestrictionType . OnlyComments ) } ; baseEditorsApi . prototype . isRestrictionSignatures = function ( ) { return ! ! ( this . restrictions &
Asc . c _oAscRestrictionType . OnlySignatures ) } ; baseEditorsApi . prototype . isRestrictionView = function ( ) { return ! ! ( this . restrictions & Asc . c _oAscRestrictionType . View ) } ; baseEditorsApi . prototype . onUpdateRestrictions = function ( ) { } ; baseEditorsApi . prototype . isLongAction = function ( ) { return 0 !== this . IsLongActionCurrent } ; baseEditorsApi . prototype . incrementCounterLongAction = function ( ) { ++ this . IsLongActionCurrent } ; baseEditorsApi . prototype . decrementCounterLongAction = function ( ) { this . IsLongActionCurrent -- ; if ( this . IsLongActionCurrent <
0 ) this . IsLongActionCurrent = 0 ; if ( ! this . isLongAction ( ) ) { var _length = this . LongActionCallbacks . length ; for ( var i = 0 ; i < _length ; i ++ ) this . LongActionCallbacks [ i ] ( this . LongActionCallbacksParams [ i ] ) ; this . LongActionCallbacks . splice ( 0 , _length ) ; this . LongActionCallbacksParams . splice ( 0 , _length ) } } ; baseEditorsApi . prototype . checkLongActionCallback = function ( _callback , _param ) { if ( this . isLongAction ( ) ) { this . LongActionCallbacks [ this . LongActionCallbacks . length ] = _callback ; this . LongActionCallbacksParams [ this . LongActionCallbacksParams . length ] =
_param ; return false } else return true } ; baseEditorsApi . prototype . IsNeedDefaultFonts = function ( ) { var res = false ; switch ( this . editorId ) { case c _oEditorId . Word : res = ! this . isPdfViewer ( ) ; break ; case c _oEditorId . Presentation : res = true ; break } return res } ; baseEditorsApi . prototype . onPrint = function ( ) { this . sendEvent ( "asc_onPrint" ) } ; baseEditorsApi . prototype . asc _LoadDocument = function ( versionHistory , isRepeat ) { this . advancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction . Open ; var rData = null ; if ( ! ( this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) ) { var locale =
! window [ "NATIVE_EDITOR_ENJINE" ] && this . asc _getLocale ( ) || undefined ; if ( typeof locale === "string" ) if ( Asc . g _oLcidNameToIdMap ) locale = Asc . g _oLcidNameToIdMap [ locale ] ; else locale = undefined ; rData = { "c" : "open" , "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "url" : this . documentUrl , "title" : this . documentTitle , "lcid" : locale , "nobase64" : true } ; if ( versionHistory ) { rData [ "serverVersion" ] = versionHistory . serverVersion ; rData [ "closeonerror" ] = versionHistory . isRequested ; rData [ "tokenHistory" ] = versionHistory . token ;
rData [ "userconnectionid" ] = this . CoAuthoringApi . getUserConnectionId ( ) } } if ( versionHistory ) this . CoAuthoringApi . versionHistory ( rData ) ; else this . CoAuthoringApi . auth ( this . getViewMode ( ) , rData ) ; if ( ! isRepeat ) this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) ; if ( this . DocInfo . get _Encrypted ( ) && window [ "AscDesktopEditor" ] && ! window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( true ) ) { var t = this ; window [ "AscDesktopEditor" ] [ "OpenFileCrypt" ] ( this . DocInfo . get _Title ( ) , this . DocInfo . get _Url ( ) , function ( ) { t . openFileCryptCallback . apply ( t ,
arguments ) } ) } } ; baseEditorsApi . prototype . _openChartOrLocalDocument = function ( ) { this . _openEmptyDocument ( ) } ; baseEditorsApi . prototype . _openEmptyDocument = function ( ) { var file = new AscCommon . OpenFileResult ; file . data = AscCommon . getEmpty ( ) ; file . bSerFormat = AscCommon . checkStreamSignature ( file . data , AscCommon . c _oSerFormat . Signature ) ; this . onEndLoadFile ( file ) } ; baseEditorsApi . prototype . _openDocumentEndCallback = function ( ) { } ; baseEditorsApi . prototype . _openOnClient = function ( ) { } ; baseEditorsApi . prototype . _onOpenCommand = function ( data ) { var t =
this ; AscCommon . openFileCommand ( data , this . documentUrlChanges , AscCommon . c _oSerFormat . Signature , function ( error , result ) { if ( error || ! result . bSerFormat && ! Asc . c _rUneditableTypes . test ( t . DocInfo && t . DocInfo . get _Format ( ) ) ) { var err = error ? c _oAscError . ID . Unknown : c _oAscError . ID . ConvertationOpenError ; t . sendEvent ( "asc_onError" , err , c _oAscError . Level . Critical ) ; return } t . onEndLoadFile ( result ) } ) ; this . _openOnClient ( ) } ; baseEditorsApi . prototype . openFileCryptCallback = function ( stream ) { if ( ! this . isLoadFullApi ) { this . openFileCryptBinary =
stream ; return } this . openFileCryptBinary = null ; if ( stream == null ) { this . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; return } var file = new AscCommon . OpenFileResult ; file . bSerFormat = AscCommon . checkStreamSignature ( stream , AscCommon . c _oSerFormat . Signature ) ; file . data = stream ; this . openDocument ( file ) ; this . sendEvent ( "asc_onDocumentPassword" , "" !== this . currentPassword ) } ; baseEditorsApi . prototype . _onNeedParams = function ( data , opt _isPassword ) { } ; baseEditorsApi . prototype . asyncServerIdEndLoaded =
function ( ) { this . ServerIdWaitComplete = true ; this . _openDocumentEndCallback ( ) } ; baseEditorsApi . prototype . asyncFontStartLoaded = function ( ) { this . sync _StartAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . LoadFont ) } ; baseEditorsApi . prototype . asyncImageStartLoaded = function ( ) { } ; baseEditorsApi . prototype . asyncImagesDocumentStartLoaded = function ( ) { } ; baseEditorsApi . prototype . onDocumentContentReady = function ( ) { var t = this ; this . isDocumentLoadComplete = true ; if ( ! window [ "IS_NATIVE_EDITOR" ] ) setInterval ( function ( ) { t . _autoSave ( ) } ,
40 ) ; this . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) ; this . sendEvent ( "asc_onDocumentContentReady" ) ; this . sendEvent ( "asc_LoadPluginsOrDocument" ) ; if ( window . g _asc _plugins && window . g _asc _plugins . countEventDocContOrPluginsReady == 2 ) window . g _asc _plugins . onPluginEvent ( "onDocumentContentReady" ) ; if ( c _oEditorId . Spreadsheet === this . editorId ) this . onUpdateDocumentModified ( this . asc _isDocumentModified ( ) ) ; if ( this . DocInfo ) this [ "pluginMethod_SetProperties" ] ( this . DocInfo . asc _getOptions ( ) ) ;
if ( this . macros && ! this . disableAutostartMacros && this . macros . isExistAuto ( ) ) this . sendEvent ( "asc_onRunAutostartMacroses" ) ; if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "onDocumentContentReady" ] ) window [ "AscDesktopEditor" ] [ "onDocumentContentReady" ] ( ) } ; baseEditorsApi . prototype . processSavedFile = function ( url , downloadType ) { if ( AscCommon . DownloadType . None !== downloadType ) this . sendEvent ( downloadType , url , function ( hasError ) { } ) ; else AscCommon . getFile ( url ) } ; baseEditorsApi . prototype . forceSave = function ( ) { return this . CoAuthoringApi . forceSave ( ) } ;
baseEditorsApi . prototype . asc _setIsForceSaveOnUserSave = function ( val ) { this . isForceSaveOnUserSave = val } ; baseEditorsApi . prototype . _onUpdateDocumentCanSave = function ( ) { } ; baseEditorsApi . prototype . _onUpdateDocumentCanUndoRedo = function ( ) { } ; baseEditorsApi . prototype . _saveCheck = function ( ) { return false } ; baseEditorsApi . prototype . _haveOtherChanges = function ( ) { return false } ; baseEditorsApi . prototype . _onSaveCallback = function ( e ) { var t = this ; var nState ; if ( false == e [ "saveLock" ] ) { if ( this . isLongAction ( ) ) { this . CoAuthoringApi . onUnSaveLock =
function ( ) { t . canSave = true ; t . IsUserSave = false ; t . lastSaveTime = null ; if ( t . canUnlockDocument ) t . _unlockDocument ( ) } ; this . CoAuthoringApi . unSaveLock ( ) ; return } this . sync _StartAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ; this . canUnlockDocument2 = this . canUnlockDocument ; if ( this . canUnlockDocument && this . canStartCoAuthoring ) this . CoAuthoringApi . onStartCoAuthoring ( true ) ; this . canStartCoAuthoring = false ; this . canUnlockDocument = false ; this . _onSaveCallbackInner ( ) } else { nState = this . CoAuthoringApi . get _state ( ) ;
if ( AscCommon . ConnectionState . ClosedCoAuth === nState || AscCommon . ConnectionState . ClosedAll === nState ) { this . IsUserSave = false ; this . canSave = true } else { if ( ! this . IsUserSave ) { this . canSave = true ; if ( this . canUnlockDocument ) this . _unlockDocument ( ) ; return } setTimeout ( function ( ) { t . CoAuthoringApi . askSaveChanges ( function ( event ) { t . _onSaveCallback ( event ) } ) } , 1E3 ) } } } ; baseEditorsApi . prototype . _onSaveCallbackInner = function ( ) { } ; baseEditorsApi . prototype . _autoSave = function ( ) { if ( this . canSave && ! this . isViewMode && ( this . canUnlockDocument ||
0 !== this . autoSaveGap ) ) if ( this . canUnlockDocument ) { this . lastSaveTime = new Date ; this . asc _Save ( true , true ) } else this . _autoSaveInner ( ) } ; baseEditorsApi . prototype . _autoSaveInner = function ( ) { } ; baseEditorsApi . prototype . _prepareSave = function ( isIdle ) { return true } ; baseEditorsApi . prototype . _unlockDocument = function ( isWaitAuth ) { if ( isWaitAuth && this . isDocumentLoadComplete && ! this . canSave ) { var errorMsg = "Error: connection state changed waitAuth" + ";this.canSave:" + this . canSave ; this . CoAuthoringApi . sendChangesError ( errorMsg ) } if ( this . isDocumentLoadComplete ) { this . canUnlockDocument =
true ; this . canStartCoAuthoring = true ; if ( this . canSave ) { this . CoAuthoringApi . unLockDocument ( false , true , AscCommon . History . GetDeleteIndex ( ) ) ; this . startCollaborationEditing ( ) ; AscCommon . History . RemovePointsByDeleteIndex ( ) ; this . _onUpdateDocumentCanSave ( ) ; this . _onUpdateDocumentCanUndoRedo ( ) ; this . canStartCoAuthoring = false ; this . canUnlockDocument = false } else ; } else { this . startCollaborationEditing ( ) ; this . CoAuthoringApi . unLockDocument ( false , true ) } } ; baseEditorsApi . prototype . asc _setAutoSaveGap = function ( autoSaveGap ) { if ( typeof autoSaveGap ===
"number" ) this . autoSaveGap = autoSaveGap * 1E3 } ; baseEditorsApi . prototype . asc _coAuthoringChatSendMessage = function ( message ) { this . CoAuthoringApi . sendMessage ( message ) } ; baseEditorsApi . prototype . asc _coAuthoringChatGetMessages = function ( ) { this . CoAuthoringApi . getMessages ( ) } ; baseEditorsApi . prototype . asc _coAuthoringGetUsers = function ( ) { this . CoAuthoringApi . getUsers ( ) } ; baseEditorsApi . prototype . asc _getEditorPermissions = function ( ) { this . _coAuthoringInit ( ) } ; baseEditorsApi . prototype . _onEndPermissions = function ( ) { if ( this . isOnLoadLicense ) { var oResult =
new AscCommon . asc _CAscEditorPermissions ; if ( null !== this . licenseResult ) { var type = this . licenseResult [ "type" ] ; oResult . setLicenseType ( type ) ; oResult . setCanBranding ( this . licenseResult [ "branding" ] ) ; oResult . setCustomization ( this . licenseResult [ "customization" ] ) ; oResult . setIsLight ( this . licenseResult [ "light" ] ) ; oResult . setLicenseMode ( this . licenseResult [ "mode" ] ) ; oResult . setRights ( this . licenseResult [ "rights" ] ) ; oResult . setBuildVersion ( this . licenseResult [ "buildVersion" ] ) ; oResult . setBuildNumber ( this . licenseResult [ "buildNumber" ] ) } this . sendEvent ( "asc_onGetEditorPermissions" ,
oResult ) } } ; baseEditorsApi . prototype . goTo = function ( options ) { options = options || this . DocInfo && this . DocInfo . asc _getOptions ( ) ; options = options && options [ "action" ] ; if ( ! options ) return ; switch ( options [ "type" ] ) { case "bookmark" : case "internallink" : this . _goToBookmark ( options [ "data" ] ) ; break ; case "comment" : this . _goToComment ( options [ "data" ] ) ; break } } ; baseEditorsApi . prototype . _goToComment = function ( data ) { } ; baseEditorsApi . prototype . _goToBookmark = function ( data ) { } ; baseEditorsApi . prototype . _coAuthoringInit = function ( ) { var t =
this ; if ( null == this . User || null == this . User . asc _getId ( ) ) { this . User = new AscCommon . asc _CUser ; this . User . setId ( "Unknown" ) ; this . User . setUserName ( "Unknown" ) } if ( ! ( window [ "NATIVE_EDITOR_ENJINE" ] || this . DocInfo && this . DocInfo . get _OfflineApp ( ) ) || window [ "IS_NATIVE_EDITOR" ] ) this . CoAuthoringApi . set _url ( null ) ; this . CoAuthoringApi . onMessage = function ( e , clear ) { t . sendEvent ( "asc_onCoAuthoringChatReceiveMessage" , e , clear ) } ; this . CoAuthoringApi . onServerVersion = function ( buildVersion , buildNumber ) { t . sendEvent ( "asc_onServerVersion" ,
buildVersion , buildNumber ) } ; this . CoAuthoringApi . onAuthParticipantsChanged = function ( users , userId ) { t . sendEvent ( "asc_onAuthParticipantsChanged" , users , userId ) } ; this . CoAuthoringApi . onParticipantsChanged = function ( users ) { t . sendEvent ( "asc_onParticipantsChanged" , users ) } ; this . CoAuthoringApi . onSpellCheckInit = function ( e ) { t . SpellCheckUrl = e ; t . _coSpellCheckInit ( ) } ; this . CoAuthoringApi . onSetIndexUser = function ( e ) { AscCommon . g _oIdCounter . Set _UserId ( "" + e ) } ; this . CoAuthoringApi . onFirstLoadChangesEnd = function ( ) { t . asyncServerIdEndLoaded ( ) } ;
this . CoAuthoringApi . onFirstConnect = function ( ) { if ( ! t . isOnLoadLicense ) t . _onEndPermissions ( ) ; else if ( t . CoAuthoringApi . get _isAuth ( ) ) t . CoAuthoringApi . auth ( t . getViewMode ( ) , undefined , t . isIdle ( ) ) ; else t . asc _LoadDocument ( undefined , true ) } ; this . CoAuthoringApi . onLicense = function ( res ) { t . licenseResult = res ; t . isOnLoadLicense = true ; t . _onEndPermissions ( ) } ; this . CoAuthoringApi . onLicenseChanged = function ( res ) { t . licenseResult = res ; t . isOnLoadLicense = true ; var oResult = new AscCommon . asc _CAscEditorPermissions ; oResult . setLicenseType ( res ) ;
t . sendEvent ( "asc_onLicenseChanged" , oResult ) } ; this . CoAuthoringApi . onWarning = function ( code ) { t . sendEvent ( "asc_onError" , code || c _oAscError . ID . Warning , c _oAscError . Level . NoCritical ) } ; this . CoAuthoringApi . onMeta = function ( data ) { var newDocumentTitle = data [ "title" ] ; if ( newDocumentTitle ) { t . documentTitle = newDocumentTitle ; if ( t . DocInfo ) t . DocInfo . asc _putTitle ( newDocumentTitle ) } t . sendEvent ( "asc_onMeta" , data ) } ; this . CoAuthoringApi . onSession = function ( data ) { var code = data [ "code" ] ; var reason = data [ "reason" ] ; var interval = data [ "interval" ] ;
var extendSession = true ; if ( c _oCloseCode . sessionIdle == code ) { var idleTime = t . isIdle ( ) ; if ( idleTime > interval ) extendSession = false ; else t . CoAuthoringApi . extendSession ( idleTime ) } else if ( c _oCloseCode . sessionAbsolute == code ) extendSession = false ; if ( ! extendSession ) if ( t . asc _Save ( false , true ) ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , code ) ; t . setViewModeDisconnect ( AscCommon . getEnableDownloadByErrorCode ( error ) ) ; t . disconnectOnSave = { code : code , reason : reason } } else t . CoAuthoringApi . disconnect ( code ,
reason ) } ; this . CoAuthoringApi . onForceSave = function ( data ) { if ( AscCommon . c _oAscForceSaveTypes . Button === data . type ) if ( data . start ) { if ( null === t . forceSaveButtonTimeout && ! t . forceSaveButtonContinue ) t . sync _StartAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . ForceSaveButton ) ; else clearInterval ( t . forceSaveButtonTimeout ) ; t . forceSaveButtonTimeout = setTimeout ( function ( ) { t . forceSaveButtonTimeout = null ; if ( t . forceSaveButtonContinue ) t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ;
else t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . ForceSaveButton ) ; t . forceSaveButtonContinue = false ; t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ForceSaveButton , c _oAscError . Level . NoCritical ) } , Asc . c _nMaxConversionTime ) } else if ( data . refuse ) { if ( t . forceSaveButtonContinue ) t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ; t . forceSaveButtonContinue = false } else { if ( null !== t . forceSaveButtonTimeout ) { clearInterval ( t . forceSaveButtonTimeout ) ; t . forceSaveButtonTimeout =
null ; if ( t . forceSaveButtonContinue ) t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ; else t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . ForceSaveButton ) ; t . forceSaveButtonContinue = false ; if ( ! data . success ) t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ForceSaveButton , c _oAscError . Level . NoCritical ) } } else if ( AscCommon . CollaborativeEditing . Is _Fast ( ) || null !== t . forceSaveTimeoutTimeout ) if ( data . start ) { if ( null === t . forceSaveTimeoutTimeout ) t . sync _StartAction ( c _oAscAsyncActionType . Information ,
c _oAscAsyncAction . ForceSaveTimeout ) ; else clearInterval ( t . forceSaveTimeoutTimeout ) ; t . forceSaveTimeoutTimeout = setTimeout ( function ( ) { t . forceSaveTimeoutTimeout = null ; t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . ForceSaveTimeout ) ; t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ForceSaveTimeout , c _oAscError . Level . NoCritical ) } , Asc . c _nMaxConversionTime ) } else if ( null !== t . forceSaveTimeoutTimeout ) { clearInterval ( t . forceSaveTimeoutTimeout ) ; t . forceSaveTimeoutTimeout = null ; t . sync _EndAction ( c _oAscAsyncActionType . Information ,
c _oAscAsyncAction . ForceSaveTimeout ) ; if ( ! data . success ) t . sendEvent ( "asc_onError" , Asc . c _oAscError . ID . ForceSaveTimeout , c _oAscError . Level . NoCritical ) } } ; this . CoAuthoringApi . onExpiredToken = function ( data ) { t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . Open ) ; if ( t . VersionHistory && t . VersionHistory . isRequested ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , data [ "code" ] ) ; var level = t . isDocumentLoadComplete ? Asc . c _oAscError . Level . NoCritical : Asc . c _oAscError . Level . Critical ;
t . sendEvent ( "asc_onError" , error , level ) } else { t . VersionHistory = null ; t . sendEvent ( "asc_onExpiredToken" ) } } ; this . CoAuthoringApi . onHasForgotten = function ( ) { var isDocumentCanSaveOld = t . isDocumentCanSave ; var canSaveOld = t . canSave ; t . isDocumentCanSave = true ; t . canSave = false ; t . sendEvent ( "asc_onDocumentModifiedChanged" ) ; t . isDocumentCanSave = isDocumentCanSaveOld ; t . canSave = canSaveOld ; t . sendEvent ( "asc_onDocumentModifiedChanged" ) } ; this . CoAuthoringApi . onDisconnect = function ( e , opt _closeCode ) { if ( AscCommon . ConnectionState . None ===
t . CoAuthoringApi . get _state ( ) ) t . asyncServerIdEndLoaded ( ) ; if ( null != opt _closeCode ) { var error = AscCommon . getDisconnectErrorCode ( t . isDocumentLoadComplete , opt _closeCode ) ; var level = t . isDocumentLoadComplete ? Asc . c _oAscError . Level . NoCritical : Asc . c _oAscError . Level . Critical ; t . setViewModeDisconnect ( AscCommon . getEnableDownloadByErrorCode ( error ) ) ; t . sendEvent ( "asc_onError" , error , level ) } } ; this . CoAuthoringApi . onDocumentOpen = function ( inputWrap ) { if ( AscCommon . EncryptionWorker . isNeedCrypt ( ) ) { if ( t . fCurCallback ) { t . fCurCallback ( inputWrap ?
inputWrap [ "data" ] : undefined ) ; t . fCurCallback = null } return } if ( inputWrap [ "data" ] ) { var input = inputWrap [ "data" ] ; switch ( input [ "type" ] ) { case "reopen" : case "open" : switch ( input [ "status" ] ) { case "updateversion" : case "ok" : var urls = input [ "data" ] ; AscCommon . g _oDocumentUrls . init ( urls ) ; if ( null != urls [ "Editor.bin" ] ) if ( "ok" === input [ "status" ] || t . getViewMode ( ) ) t . _onOpenCommand ( urls [ "Editor.bin" ] ) ; else t . sendEvent ( "asc_onDocumentUpdateVersion" , function ( ) { if ( t . isCoAuthoringEnable ) t . asc _coAuthoringDisconnect ( ) ; t . _onOpenCommand ( urls [ "Editor.bin" ] ) } ) ;
else t . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; break ; case "needparams" : t . _onNeedParams ( input [ "data" ] ) ; break ; case "needpassword" : t . _onNeedParams ( null , true ) ; break ; case "err" : t . sendEvent ( "asc_onError" , AscCommon . mapAscServerErrorToAscError ( parseInt ( input [ "data" ] ) , Asc . c _oAscError . ID . ConvertationOpenError ) , c _oAscError . Level . Critical ) ; break } break ; default : if ( t . fCurCallback ) { t . fCurCallback ( input ) ; t . fCurCallback = null } else t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown ,
c _oAscError . Level . NoCritical ) ; break } } } ; this . CoAuthoringApi . onStartCoAuthoring = function ( isStartEvent , isWaitAuth ) { if ( t . isViewMode ) return ; if ( isStartEvent ) t . startCollaborationEditing ( ) ; else t . _unlockDocument ( isWaitAuth ) } ; this . CoAuthoringApi . onEndCoAuthoring = function ( isStartEvent ) { if ( t . canUnlockDocument ) t . canStartCoAuthoring = false ; else t . endCollaborationEditing ( ) } ; this . _coAuthoringInitEnd ( ) ; this . CoAuthoringApi . init ( this . User , this . documentId , this . documentCallbackUrl , "fghhfgsjdgfjs" , this . editorId , this . documentFormatSave ,
this . DocInfo ) } ; baseEditorsApi . prototype . _coAuthoringInitEnd = function ( ) { } ; baseEditorsApi . prototype . startCollaborationEditing = function ( ) { } ; baseEditorsApi . prototype . endCollaborationEditing = function ( ) { } ; baseEditorsApi . prototype . _coAuthoringCheckEndOpenDocument = function ( f ) { if ( this . isPreOpenLocks ) { var context = this . CoAuthoringApi ; var args = Array . prototype . slice . call ( arguments , 1 ) ; this . arrPreOpenLocksObjects . push ( function ( ) { f . apply ( context , args ) } ) ; return true } return false } ; baseEditorsApi . prototype . _applyPreOpenLocks =
function ( ) { this . isPreOpenLocks = false ; for ( var i = 0 ; i < this . arrPreOpenLocksObjects . length ; ++ i ) this . arrPreOpenLocksObjects [ i ] ( ) ; this . arrPreOpenLocksObjects = [ ] } ; baseEditorsApi . prototype . asc _coAuthoringDisconnect = function ( ) { this . CoAuthoringApi . disconnect ( ) ; this . isCoAuthoringEnable = false ; this . asc _setViewMode ( true ) } ; baseEditorsApi . prototype . asc _stopSaving = function ( ) { this . incrementCounterLongAction ( ) } ; baseEditorsApi . prototype . asc _continueSaving = function ( ) { this . decrementCounterLongAction ( ) } ; baseEditorsApi . prototype . asc _SpellCheckDisconnect =
function ( ) { if ( ! this . SpellCheckApi ) return ; this . SpellCheckApi . disconnect ( ) ; this . isSpellCheckEnable = false ; this . _spellCheckDisconnect ( ) } ; baseEditorsApi . prototype . _spellCheckRestart = function ( word ) { } ; baseEditorsApi . prototype . _spellCheckDisconnect = function ( ) { } ; baseEditorsApi . prototype . _coSpellCheckInit = function ( ) { if ( ! this . SpellCheckApi ) return ; var t = this ; if ( window [ "AscDesktopEditor" ] ) { window [ "asc_nativeOnSpellCheck" ] = function ( response ) { var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ;
if ( _editor . SpellCheckApi ) _editor . SpellCheckApi . onSpellCheck ( response ) } ; this . SpellCheckApi . spellCheck = function ( spellData ) { window [ "AscDesktopEditor" ] [ "SpellCheck" ] ( JSON . stringify ( spellData ) ) } ; this . SpellCheckApi . disconnect = function ( ) { } ; if ( window [ "AscDesktopEditor" ] [ "IsLocalFile" ] && ! window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( ) ) this . sendEvent ( "asc_onSpellCheckInit" , [ "1026" , "1027" , "1029" , "1030" , "1031" , "1032" , "1033" , "1036" , "1038" , "1040" , "1042" , "1043" , "1044" , "1045" , "1046" , "1048" , "1049" , "1050" , "1051" , "1053" ,
"1055" , "1057" , "1058" , "1060" , "1062" , "1063" , "1066" , "1068" , "1069" , "1087" , "1104" , "1110" , "1134" , "2051" , "2055" , "2057" , "2068" , "2070" , "3079" , "3081" , "3082" , "4105" , "7177" , "9242" , "10266" ] ) } else if ( this . SpellCheckUrl && this . isSpellCheckEnable ) this . SpellCheckApi . set _url ( this . SpellCheckUrl ) ; this . SpellCheckApi . onInit = function ( e ) { t . sendEvent ( "asc_onSpellCheckInit" , e ) } ; this . SpellCheckApi . onSpellCheck = function ( e ) { t . SpellCheck _CallBack ( e ) } ; this . SpellCheckApi . init ( this . documentId ) } ; baseEditorsApi . prototype . asc _spellCheckAddToDictionary =
function ( SpellCheckProperty ) { var word = typeof SpellCheckProperty === "string" ? SpellCheckProperty : SpellCheckProperty . Word ; if ( window [ "AscDesktopEditor" ] ) { window [ "AscDesktopEditor" ] [ "SpellCheck" ] ( '{"type":"add","usrWords":["' + word + '"]}' ) ; this . _spellCheckRestart ( word ) } } ; baseEditorsApi . prototype . asc _spellCheckClearDictionary = function ( ) { } ; baseEditorsApi . prototype . _waitPrint = function ( actionType , options ) { return false } ; baseEditorsApi . prototype . _printDesktop = function ( ) { } ; baseEditorsApi . prototype . endInsertDocumentUrls =
function ( ) { } ; baseEditorsApi . prototype . _downloadAs = function ( ) { } ; baseEditorsApi . prototype . downloadAs = function ( actionType , options ) { var isCloudCrypto = ! ! ( window [ "AscDesktopEditor" ] && 0 < window [ "AscDesktopEditor" ] [ "CryptoMode" ] ) ; if ( isCloudCrypto ) window . isCloudCryptoDownloadAs = true ; if ( this . _waitPrint ( actionType , options ) ) return ; if ( actionType ) this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , actionType ) ; var downloadType ; if ( options . isDownloadEvent ) downloadType = options . oDocumentMailMerge ? DownloadType . MailMerge :
actionType === c _oAscAsyncAction . Print ? DownloadType . Print : DownloadType . Download ; else downloadType = DownloadType . None ; var isNoBase64 = typeof ArrayBuffer !== "undefined" && ! isCloudCrypto ; var dataContainer = { data : null , part : null , index : 0 , count : 0 } ; var oAdditionalData = { } ; oAdditionalData [ "c" ] = "save" ; oAdditionalData [ "id" ] = this . documentId ; oAdditionalData [ "userid" ] = this . documentUserId ; oAdditionalData [ "tokenSession" ] = this . CoAuthoringApi . get _jwt ( ) ; oAdditionalData [ "outputformat" ] = options . fileType ; oAdditionalData [ "title" ] =
AscCommon . changeFileExtention ( this . documentTitle , AscCommon . getExtentionByFormat ( options . fileType ) , Asc . c _nMaxDownloadTitleLen ) ; oAdditionalData [ "nobase64" ] = isNoBase64 ; if ( DownloadType . Print === downloadType ) oAdditionalData [ "inline" ] = 1 ; if ( this . _downloadAs ( actionType , options , oAdditionalData , dataContainer ) ) return ; var t = this ; this . fCurCallback = null ; if ( ! options . callback ) this . fCurCallback = function ( input , status ) { var error = 403 === status ? c _oAscError . ID . AccessDeny : c _oAscError . ID . Unknown ; if ( null != input && oAdditionalData [ "c" ] ===
input [ "type" ] ) if ( "ok" === input [ "status" ] ) { var url = input [ "data" ] ; if ( url ) { error = c _oAscError . ID . No ; t . processSavedFile ( url , downloadType ) } } else error = AscCommon . mapAscServerErrorToAscError ( parseInt ( input [ "data" ] ) , AscCommon . c _oAscAdvancedOptionsAction . Save ) ; if ( c _oAscError . ID . No !== error ) { t . endInsertDocumentUrls ( ) ; t . sendEvent ( "asc_onError" , options . errorDirect || error , c _oAscError . Level . NoCritical ) } if ( actionType ) t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , actionType ) } ; if ( window . parent . APP . printPdf &&
( DownloadType . Print === downloadType || ! downloadType ) ) { window . parent . APP . printPdf ( dataContainer , options . callback || this . fCurCallback ) ; return } AscCommon . saveWithParts ( function ( fCallback1 , oAdditionalData1 , dataContainer1 ) { AscCommon . sendCommand ( t , fCallback1 , oAdditionalData1 , dataContainer1 ) } , this . fCurCallback , options . callback , oAdditionalData , dataContainer ) } ; baseEditorsApi . prototype . asc _getChartPreviews = function ( chartType ) { return this . chartPreviewManager . getChartPreviews ( chartType ) } ; baseEditorsApi . prototype . asc _getTextArtPreviews =
function ( ) { return this . textArtPreviewManager . getWordArtStyles ( ) } ; baseEditorsApi . prototype . asc _onOpenChartFrame = function ( ) { if ( this . isMobileVersion ) return ; this . isOpenedChartFrame = true } ; baseEditorsApi . prototype . asc _onCloseChartFrame = function ( ) { this . isOpenedChartFrame = false } ; baseEditorsApi . prototype . asc _setInterfaceDrawImagePlaceShape = function ( elementId ) { this . shapeElementId = elementId } ; baseEditorsApi . prototype . asc _getPropertyEditorShapes = function ( ) { return [ AscCommon . g _oAutoShapesGroups , AscCommon . g _oAutoShapesTypes ] } ;
baseEditorsApi . prototype . asc _getPropertyEditorTextArts = function ( ) { return [ AscCommon . g _oPresetTxWarpGroups , AscCommon . g _PresetTxWarpTypes ] } ; baseEditorsApi . prototype . _addImageUrl = function ( ) { } ; baseEditorsApi . prototype . asc _addImageCallback = function ( res ) { } ; baseEditorsApi . prototype . asc _addImage = function ( obj ) { var t = this ; window . parent . APP . AddImage ( function ( res ) { console . log ( "AddImageCallback" ) ; t . asc _addImageCallback ( res ) ; t . _addImageUrl ( [ res . url ] ) } , function ( ) { t . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) } ) ;
return ; var t = this ; if ( this . WordControl ) this . WordControl . m _bIsMouseLock = false ; AscCommon . ShowImageFileDialog ( this . documentId , this . documentUserId , this . CoAuthoringApi . get _jwt ( ) , function ( error , files ) { t . _uploadCallback ( error , files , obj ) } , function ( error ) { if ( c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) ; t . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) } ) } ; baseEditorsApi . prototype . _uploadCallback = function ( error , files , obj ) { var t =
this ; if ( c _oAscError . ID . No !== error ) this . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) ; else { this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) ; AscCommon . UploadImageFiles ( files , this . documentId , this . documentUserId , this . CoAuthoringApi . get _jwt ( ) , function ( error , urls ) { if ( c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , c _oAscError . Level . NoCritical ) ; else t . _addImageUrl ( urls , obj ) ; t . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) } ) } } ;
baseEditorsApi . prototype . asc _replaceLoadImageCallback = function ( fCallback ) { } ; baseEditorsApi . prototype . asc _loadLocalImageAndAction = function ( sLocalImage , fCallback ) { var _loadedUrl = this . ImageLoader . LoadImage ( AscCommon . getFullImageSrc2 ( sLocalImage ) , 1 ) ; if ( _loadedUrl != null ) fCallback ( _loadedUrl ) ; else this . asc _replaceLoadImageCallback ( fCallback ) } ; baseEditorsApi . prototype . asc _checkImageUrlAndAction = function ( sImageUrl , fCallback ) { var oThis = this ; this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) ;
var fCallback2 = function ( ) { oThis . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . UploadImage ) ; fCallback . apply ( oThis , arguments ) } ; var sLocalImage = AscCommon . g _oDocumentUrls . getImageLocal ( sImageUrl ) ; if ( sLocalImage ) { this . asc _loadLocalImageAndAction ( sLocalImage , fCallback2 ) ; return } AscCommon . sendImgUrls ( oThis , [ sImageUrl ] , function ( data ) { if ( data [ 0 ] && data [ 0 ] . path != null && data [ 0 ] . url !== "error" ) oThis . asc _loadLocalImageAndAction ( AscCommon . g _oDocumentUrls . imagePath2Local ( data [ 0 ] . path ) , fCallback2 ) } ,
this . editorId === c _oEditorId . Spreadsheet ) } ; baseEditorsApi . prototype . asc _addOleObject = function ( oPluginData ) { if ( this . isViewMode ) return ; var oThis = this ; var sImgSrc = oPluginData [ "imgSrc" ] ; var nWidthPix = oPluginData [ "widthPix" ] ; var nHeightPix = oPluginData [ "heightPix" ] ; var fWidth = oPluginData [ "width" ] ; var fHeight = oPluginData [ "height" ] ; var sData = oPluginData [ "data" ] ; var sGuid = oPluginData [ "guid" ] ; if ( typeof sImgSrc === "string" && sImgSrc . length > 0 && typeof sData === "string" && typeof sGuid === "string" && sGuid . length > 0 && AscFormat . isRealNumber ( nWidthPix ) &&
AscFormat . isRealNumber ( nHeightPix ) && AscFormat . isRealNumber ( fWidth ) && AscFormat . isRealNumber ( fHeight ) ) this . asc _checkImageUrlAndAction ( sImgSrc , function ( oImage ) { oThis . asc _addOleObjectAction ( AscCommon . g _oDocumentUrls . getImageLocal ( oImage . src ) , sData , sGuid , fWidth , fHeight , nWidthPix , nHeightPix ) } ) } ; baseEditorsApi . prototype . asc _editOleObject = function ( oPluginData ) { if ( this . isViewMode ) return ; var oThis = this ; var bResize = oPluginData [ "resize" ] ; var sImgSrc = oPluginData [ "imgSrc" ] ; var oOleObject = AscCommon . g _oTableId . Get _ById ( oPluginData [ "objectId" ] ) ;
var nWidthPix = oPluginData [ "widthPix" ] ; var nHeightPix = oPluginData [ "heightPix" ] ; var sData = oPluginData [ "data" ] ; if ( typeof sImgSrc === "string" && sImgSrc . length > 0 && typeof sData === "string" && oOleObject && AscFormat . isRealNumber ( nWidthPix ) && AscFormat . isRealNumber ( nHeightPix ) ) this . asc _checkImageUrlAndAction ( sImgSrc , function ( oImage ) { oThis . asc _editOleObjectAction ( bResize , oOleObject , AscCommon . g _oDocumentUrls . getImageLocal ( oImage . src ) , sData , nWidthPix , nHeightPix ) } ) } ; baseEditorsApi . prototype . asc _addOleObjectAction = function ( sLocalUrl ,
sData , sApplicationId , fWidth , fHeight ) { } ; baseEditorsApi . prototype . asc _editOleObjectAction = function ( bResize , oOleObject , sImageUrl , sData , nPixWidth , nPixHeight ) { } ; baseEditorsApi . prototype . asc _selectSearchingResults = function ( value ) { if ( this . selectSearchingResults === value ) return ; this . selectSearchingResults = value ; this . _selectSearchingResults ( value ) } ; baseEditorsApi . prototype . asc _startEditCurrentOleObject = function ( ) { } ; baseEditorsApi . prototype . asc _canEditCrop = function ( ) { } ; baseEditorsApi . prototype . asc _startEditCrop =
function ( ) { } ; baseEditorsApi . prototype . asc _endEditCrop = function ( ) { } ; baseEditorsApi . prototype . asc _cropFit = function ( ) { } ; baseEditorsApi . prototype . asc _cropFill = function ( ) { } ; baseEditorsApi . prototype . asc _RemoveAllComments = function ( isMine , isCurrent ) { } ; baseEditorsApi . prototype . asc _showRevision = function ( newObj ) { if ( ! newObj . docId ) return ; if ( this . isCoAuthoringEnable ) this . asc _coAuthoringDisconnect ( ) ; var bUpdate = true ; if ( null === this . VersionHistory ) this . VersionHistory = new window [ "Asc" ] . asc _CVersionHistory ( newObj ) ;
else bUpdate = this . VersionHistory . update ( newObj ) ; if ( bUpdate ) { this . asc _CloseFile ( ) ; this . DocInfo . put _Id ( this . VersionHistory . docId ) ; this . DocInfo . put _Url ( this . VersionHistory . url ) ; this . documentUrlChanges = this . VersionHistory . urlChanges ; this . asc _setDocInfo ( this . DocInfo ) ; this . asc _LoadDocument ( this . VersionHistory ) } else if ( this . VersionHistory . currentChangeId < newObj . currentChangeId ) { AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ; editor . VersionHistory . applyChanges ( editor ) ; AscCommon . CollaborativeEditing . Apply _Changes ( ) } } ;
baseEditorsApi . prototype . asc _undoAllChanges = function ( ) { } ; baseEditorsApi . prototype . asc _getAdvancedOptions = function ( ) { var cp = { "codepage" : AscCommon . c _oAscCodePageUtf8 , "encodings" : AscCommon . getEncodingParams ( ) } ; return new AscCommon . asc _CAdvancedOptions ( cp ) } ; baseEditorsApi . prototype . asc _Print = function ( options ) { if ( window [ "AscDesktopEditor" ] && this . _printDesktop ( options ) ) return ; if ( ! options ) options = new Asc . asc _CDownloadOptions ; options . fileType = Asc . c _oAscFileType . PDF ; this . downloadAs ( c _oAscAsyncAction . Print ,
options ) } ; baseEditorsApi . prototype . asc _Save = function ( isAutoSave , isIdle ) { var t = this ; var res = false ; if ( this . canSave && this . _saveCheck ( ) ) { this . IsUserSave = ! isAutoSave ; if ( this . asc _isDocumentCanSave ( ) || AscCommon . History . Have _Changes ( ) || this . _haveOtherChanges ( ) || this . canUnlockDocument || this . forceSaveUndoRequest ) { if ( this . _prepareSave ( isIdle ) ) { this . canSave = false ; this . CoAuthoringApi . askSaveChanges ( function ( e ) { t . _onSaveCallback ( e ) } ) ; res = true } } else if ( this . isForceSaveOnUserSave && this . IsUserSave ) this . forceSave ( ) } return res } ;
baseEditorsApi . prototype . asc _isDocumentCanSave = function ( ) { return this . isDocumentCanSave } ; baseEditorsApi . prototype . asc _getCanUndo = function ( ) { return AscCommon . History . Can _Undo ( ) } ; baseEditorsApi . prototype . asc _getCanRedo = function ( ) { return AscCommon . History . Can _Redo ( ) } ; baseEditorsApi . prototype . asc _isOffline = function ( ) { return window . location . protocol . indexOf ( "file" ) == 0 ? true : false } ; baseEditorsApi . prototype . asc _getUrlType = function ( url ) { return AscCommon . getUrlType ( url ) } ; baseEditorsApi . prototype . openDocument =
function ( file ) { } ; baseEditorsApi . prototype . openDocumentFromZip = function ( ) { } ; baseEditorsApi . prototype . onEndLoadDocInfo = function ( ) { if ( this . isLoadFullApi && this . DocInfo ) { if ( this . DocInfo . get _OfflineApp ( ) ) this . _openChartOrLocalDocument ( ) ; this . onEndLoadFile ( null ) } } ; baseEditorsApi . prototype . onEndLoadFile = function ( result ) { if ( result ) this . openResult = result ; if ( this . isLoadFullApi && this . DocInfo && this . openResult && this . isLoadFonts ) { this . openDocument ( this . openResult ) ; this . openResult = null } } ; baseEditorsApi . prototype . _onEndLoadSdk =
function ( ) { AscCommon . g _oTableId . init ( ) ; var t = this ; AscCommon . InitDragAndDrop ( this . HtmlElement , function ( error , files ) { t . _uploadCallback ( error , files ) } ) ; AscFonts . g _fontApplication . Init ( ) ; this . FontLoader = AscCommon . g _font _loader ; this . ImageLoader = AscCommon . g _image _loader ; this . FontLoader . put _Api ( this ) ; this . ImageLoader . put _Api ( this ) ; this . FontLoader . SetStandartFonts ( ) ; this . chartPreviewManager = new AscCommon . ChartPreviewManager ; this . textArtPreviewManager = new AscCommon . TextArtPreviewManager ; AscFormat . initStyleManager ( ) ;
if ( null !== this . tmpFocus ) this . asc _enableKeyEvents ( this . tmpFocus ) ; this . pluginsManager = Asc . createPluginsManager ( this ) ; this . macros = new AscCommon . CDocumentMacros ; this . _loadSdkImages ( ) ; if ( AscFonts . FontPickerByCharacter && this . documentTitle ) AscFonts . FontPickerByCharacter . getFontsByString ( this . documentTitle ) } ; baseEditorsApi . prototype . _loadSdkImages = function ( ) { } ; baseEditorsApi . prototype . sendStandartTextures = function ( ) { if ( this . isSendStandartTextures ) return ; this . isSendStandartTextures = true ; var _count = AscCommon . g _oUserTexturePresets . length ;
var arr = new Array ( _count ) ; var arrToDownload = [ ] ; for ( var i = 0 ; i < _count ; ++ i ) { arr [ i ] = new AscCommon . asc _CTexture ; arr [ i ] . Id = i ; arr [ i ] . Image = AscCommon . g _oUserTexturePresets [ i ] ; arrToDownload . push ( AscCommon . g _oUserTexturePresets [ i ] ) } if ( this . editorId === c _oEditorId . Word ) arrToDownload . push ( AscCommon . g _sWordPlaceholderImage ) ; this . ImageLoader . LoadImagesWithCallback ( arrToDownload , function ( ) { } , 0 ) ; this . sendEvent ( "asc_onInitStandartTextures" , arr ) } ; baseEditorsApi . prototype . sendMathToMenu = function ( ) { if ( this . MathMenuLoad ) return ;
var _MathPainter = new AscFormat . CMathPainter ( this ) ; _MathPainter . Generate ( ) ; this . MathMenuLoad = true } ; baseEditorsApi . prototype . sendMathTypesToMenu = function ( _math ) { this . sendEvent ( "asc_onMathTypes" , _math ) } ; baseEditorsApi . prototype . asyncFontEndLoaded _MathDraw = function ( Obj ) { this . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . LoadFont ) ; Obj . Generate2 ( ) } ; baseEditorsApi . prototype . getCurrentColorScheme = function ( ) { var oTheme = this . getCurrentTheme ( ) ; return oTheme && oTheme . themeElements && oTheme . themeElements . clrScheme } ;
baseEditorsApi . prototype . asc _GetCurrentColorSchemeName = function ( ) { var oClrScheme = this . getCurrentColorScheme ( ) ; if ( oClrScheme && typeof oClrScheme . name === "string" ) return oClrScheme . name ; return "" } ; baseEditorsApi . prototype . asc _GetCurrentColorSchemeIndex = function ( ) { var oTheme = this . getCurrentTheme ( ) ; if ( ! oTheme ) return - 1 ; return this . getColorSchemes ( oTheme ) . index } ; baseEditorsApi . prototype . getCurrentTheme = function ( ) { return null } ; baseEditorsApi . prototype . getColorSchemes = function ( theme ) { var result = AscCommon . g _oUserColorScheme . slice ( ) ;
var asc _color _scheme , _scheme , i ; var aCustomSchemes = theme . getExtraAscColorSchemes ( ) ; _scheme = theme . themeElements && theme . themeElements . clrScheme ; var nIndex = - 1 ; if ( _scheme ) { asc _color _scheme = AscCommon . getAscColorScheme ( _scheme , theme ) ; nIndex = AscCommon . getIndexColorSchemeInArray ( result , asc _color _scheme ) ; if ( nIndex === - 1 ) aCustomSchemes . push ( asc _color _scheme ) ; aCustomSchemes . sort ( function ( a , b ) { if ( a . name === "" || a . name === null ) return - 1 ; if ( b . name === "" || b . name === null ) return 1 ; if ( a . name > b . name ) return 1 ; if ( a . name < b . name ) return - 1 ;
return 0 } ) ; result = result . concat ( aCustomSchemes ) ; if ( nIndex === - 1 ) for ( i = 0 ; i < result . length ; ++ i ) if ( result [ i ] === asc _color _scheme ) { nIndex = i ; break } } return { schemes : result , index : nIndex } } ; baseEditorsApi . prototype . getColorSchemeByIdx = function ( nIdx ) { var scheme = AscCommon . getColorSchemeByIdx ( nIdx ) ; if ( ! scheme ) { var oSchemes = this . getColorSchemes ( this . getCurrentTheme ( ) ) ; var oAscScheme = oSchemes . schemes [ nIdx ] ; scheme = oAscScheme && oAscScheme . scheme } return scheme } ; baseEditorsApi . prototype . sendColorThemes = function ( theme ) { this . sendEvent ( "asc_onSendThemeColorSchemes" ,
this . getColorSchemes ( theme ) . schemes ) } ; baseEditorsApi . prototype . showVideoControl = function ( sMediaName , extX , extY , transform ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "MediaStart" ] ) return ; switch ( this . editorId ) { case c _oEditorId . Word : { break } case c _oEditorId . Presentation : { var manager = this . WordControl . DemonstrationManager ; if ( ! manager . Mode ) { var pos = this . WordControl . m _oDrawingDocument . ConvertCoordsToCursorWR ( 0 , 0 , this . WordControl . m _oLogicDocument . CurPage , null , true ) ; pos . X += this . WordControl . X ;
pos . Y += this . WordControl . Y ; if ( ! transform ) window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , pos . X , pos . Y , extX , extY , this . WordControl . m _nZoomValue / 100 ) ; else window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , pos . X , pos . Y , extX , extY , this . WordControl . m _nZoomValue / 100 , transform . sx , transform . shy , transform . shx , transform . sy , transform . tx , transform . ty ) } else { var transition = this . WordControl . DemonstrationManager . Transition ; if ( manager . SlideNum >= 0 && manager . SlideNum < manager . SlidesCount && ( ! transition || ! transition . IsPlaying ( ) ) ) { var _w =
transition . Rect . w ; var _h = transition . Rect . h ; var _w _mm = manager . HtmlPage . m _oLogicDocument . Width ; var _h _mm = manager . HtmlPage . m _oLogicDocument . Height ; var _x = transition . Rect . x ; if ( this . isReporterMode ) _x += this . WordControl . m _oMainParent . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix >> 0 ; var _zoom = _w / ( _w _mm * AscCommon . g _dKoef _mm _to _pix ) ; if ( ! transform ) window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , _x , transition . Rect . y , extX , extY , _zoom ) ; else window [ "AscDesktopEditor" ] [ "MediaStart" ] ( sMediaName , _x , transition . Rect . y ,
extX , extY , _zoom , transform . sx , transform . shy , transform . shx , transform . sy , transform . tx , transform . ty ) } } break } case c _oEditorId . Spreadsheet : { break } } } ; baseEditorsApi . prototype . hideVideoControl = function ( ) { if ( ! window [ "AscDesktopEditor" ] || ! window [ "AscDesktopEditor" ] [ "MediaEnd" ] ) return ; window [ "AscDesktopEditor" ] [ "MediaEnd" ] ( ) } ; baseEditorsApi . prototype . _checkLicenseApiFunctions = function ( ) { return this . licenseResult && true === this . licenseResult [ "plugins" ] } ; baseEditorsApi . prototype . asc _pluginsRegister = function ( basePath ,
plugins ) { this . sendEvent ( "asc_LoadPluginsOrDocument" ) ; if ( null != this . pluginsManager ) { this . pluginsManager . register ( basePath , plugins ) ; if ( this . pluginsManager . countEventDocContOrPluginsReady == 2 ) this . pluginsManager . onPluginEvent ( "onDocumentContentReady" ) } } ; baseEditorsApi . prototype . asc _pluginRun = function ( guid , variation , pluginData ) { if ( null != this . pluginsManager ) this . pluginsManager . run ( guid , variation , pluginData ) } ; baseEditorsApi . prototype . asc _pluginStop = function ( guid ) { if ( null != this . pluginsManager ) this . pluginsManager . close ( guid ) } ;
baseEditorsApi . prototype . asc _pluginResize = function ( pluginData ) { if ( null != this . pluginsManager ) this . pluginsManager . runResize ( pluginData ) } ; baseEditorsApi . prototype . asc _pluginButtonClick = function ( id ) { if ( null != this . pluginsManager ) this . pluginsManager . buttonClick ( id ) } ; baseEditorsApi . prototype . asc _pluginEnableMouseEvents = function ( isEnable ) { if ( ! this . pluginsManager ) return ; this . pluginsManager . onEnableMouseEvents ( isEnable ) } ; baseEditorsApi . prototype . isEnabledDropTarget = function ( ) { return true } ; baseEditorsApi . prototype . beginInlineDropTarget =
function ( e ) { } ; baseEditorsApi . prototype . endInlineDropTarget = function ( e ) { } ; baseEditorsApi . prototype [ "asc_insertSymbol" ] = function ( familyName , code , pr ) { var arrCharCodes = [ code ] ; AscFonts . FontPickerByCharacter . checkTextLight ( arrCharCodes , true ) ; var fonts = [ new AscFonts . CFont ( AscFonts . g _fontApplication . GetFontInfoName ( familyName ) , 0 , "" , 0 , null ) ] ; AscFonts . FontPickerByCharacter . extendFonts ( fonts ) ; this . asyncMethodCallback = function ( ) { switch ( this . editorId ) { case c _oEditorId . Word : case c _oEditorId . Presentation : { if ( pr &&
c _oEditorId . Word === this . editorId ) this . WordControl . m _oLogicDocument . AddSpecialSymbol ( pr ) ; else { var textPr = new AscCommonWord . CTextPr ; textPr . SetFontFamily ( familyName ) ; this . WordControl . m _oLogicDocument . AddTextWithPr ( new AscCommon . CUnicodeStringEmulator ( arrCharCodes ) , textPr , true ) } break } case c _oEditorId . Spreadsheet : { this . AddTextWithPr ( familyName , arrCharCodes ) ; break } } } ; if ( false === AscCommon . g _font _loader . CheckFontsNeedLoading ( fonts ) ) { this . asyncMethodCallback ( ) ; this . asyncMethodCallback = undefined ; return } AscCommon . g _font _loader . LoadDocumentFonts2 ( fonts ) } ;
baseEditorsApi . prototype [ "asc_registerPlaceholderCallback" ] = function ( type , callback ) { if ( this . WordControl && this . WordControl . m _oDrawingDocument && this . WordControl . m _oDrawingDocument . placeholders ) this . WordControl . m _oDrawingDocument . placeholders . registerCallback ( type , callback ) } ; baseEditorsApi . prototype [ "asc_uncheckPlaceholders" ] = function ( ) { if ( this . WordControl && this . WordControl . m _oDrawingDocument && this . WordControl . m _oDrawingDocument . placeholders ) this . WordControl . m _oDrawingDocument . placeholders . closeAllActive ( ) } ;
baseEditorsApi . prototype . asc _nativeInitBuilder = function ( ) { AscCommon . History . TurnOff ( ) ; this . asc _setDocInfo ( new Asc . asc _CDocInfo ) } ; baseEditorsApi . prototype . asc _SetSilentMode = function ( ) { } ; baseEditorsApi . prototype . asc _canPaste = function ( ) { return false } ; baseEditorsApi . prototype . asc _Recalculate = function ( ) { } ; baseEditorsApi . prototype [ "asc_nativeCheckPdfRenderer" ] = function ( _memory1 , _memory2 ) { if ( true ) { _memory1 . Copy = _memory1 [ "Copy" ] ; _memory1 . ClearNoAttack = _memory1 [ "ClearNoAttack" ] ; _memory1 . WriteByte = _memory1 [ "WriteByte" ] ;
_memory1 . WriteBool = _memory1 [ "WriteBool" ] ; _memory1 . WriteLong = _memory1 [ "WriteLong" ] ; _memory1 . WriteDouble = _memory1 [ "WriteDouble" ] ; _memory1 . WriteString = _memory1 [ "WriteString" ] ; _memory1 . WriteString2 = _memory1 [ "WriteString2" ] ; _memory2 . Copy = _memory1 [ "Copy" ] ; _memory2 . ClearNoAttack = _memory1 [ "ClearNoAttack" ] ; _memory2 . WriteByte = _memory1 [ "WriteByte" ] ; _memory2 . WriteBool = _memory1 [ "WriteBool" ] ; _memory2 . WriteLong = _memory1 [ "WriteLong" ] ; _memory2 . WriteDouble = _memory1 [ "WriteDouble" ] ; _memory2 . WriteString = _memory1 [ "WriteString" ] ;
_memory2 . WriteString2 = _memory1 [ "WriteString2" ] } var _printer = new AscCommon . CDocumentRenderer ; _printer . Memory = _memory1 ; _printer . VectorMemoryForPrint = _memory2 ; return _printer } ; baseEditorsApi . prototype . Begin _CompositeInput = function ( ) { } ; baseEditorsApi . prototype . Add _CompositeText = function ( nCharCode ) { } ; baseEditorsApi . prototype . Remove _CompositeText = function ( nCount ) { } ; baseEditorsApi . prototype . Replace _CompositeText = function ( arrCharCodes ) { } ; baseEditorsApi . prototype . Set _CursorPosInCompositeText = function ( nPos ) { } ;
baseEditorsApi . prototype . Get _CursorPosInCompositeText = function ( ) { } ; baseEditorsApi . prototype . End _CompositeInput = function ( ) { } ; baseEditorsApi . prototype . Get _MaxCursorPosInCompositeText = function ( ) { } ; baseEditorsApi . prototype . Input _UpdatePos = function ( ) { } ; baseEditorsApi . prototype [ "setInputParams" ] = function ( _obj ) { window [ "AscInputMethod" ] = window [ "AscInputMethod" ] || { } ; for ( var _prop in _obj ) window [ "AscInputMethod" ] [ _prop ] = _obj [ _prop ] } ; baseEditorsApi . prototype . asc _addSignatureLine = function ( oPr , Width , Height , sImgUrl ) { } ;
baseEditorsApi . prototype . asc _getAllSignatures = function ( ) { return [ ] } ; baseEditorsApi . prototype . asc _CallSignatureDblClickEvent = function ( sGuid ) { } ; baseEditorsApi . prototype . asc _AddSignatureLine2 = function ( _obj ) { var _w = 50 ; var _h = 50 ; var _w _pix = _w * AscCommon . g _dKoef _mm _to _pix >> 0 ; var _h _pix = _h * AscCommon . g _dKoef _mm _to _pix >> 0 ; var _canvas = document . createElement ( "canvas" ) ; _canvas . width = _w _pix ; _canvas . height = _h _pix ; var _ctx = _canvas . getContext ( "2d" ) ; _ctx . fillStyle = "#000000" ; _ctx . strokeStyle = "#000000" ; _ctx . font = "10pt 'Courier New'" ;
_ctx . lineWidth = 3 ; _ctx . beginPath ( ) ; var _y _line = ( _h _pix >> 1 ) + . 5 ; _ctx . moveTo ( 0 , _y _line ) ; _ctx . lineTo ( _w _pix , _y _line ) ; _ctx . stroke ( ) ; _ctx . beginPath ( ) ; _ctx . lineWidth = 2 ; _y _line -= 10 ; _ctx . moveTo ( 10 , _y _line ) ; _ctx . lineTo ( 25 , _y _line - 10 ) ; _ctx . lineTo ( 10 , _y _line - 20 ) ; _ctx . stroke ( ) ; _ctx . beginPath ( ) ; _ctx . fillText ( _obj . asc _getSigner1 ( ) , 10 , _y _line + 25 ) ; _ctx . fillText ( _obj . asc _getSigner2 ( ) , 10 , _y _line + 40 ) ; _ctx . fillText ( _obj . asc _getEmail ( ) , 10 , _y _line + 55 ) ; var _url = _canvas . toDataURL ( "image/png" ) ; _canvas = null ; var _args = [ ] ; this . ImageLoader . LoadImagesWithCallback ( [ _url ] ,
function ( ) { this . asc _addSignatureLine ( _obj , _w , _h , _url ) } , _args ) } ; baseEditorsApi . prototype . asc _getRequestSignatures = function ( ) { var _sigs = this . asc _getAllSignatures ( ) ; var _sigs _ret = [ ] ; var _found ; for ( var i = _sigs . length - 1 ; i >= 0 ; i -- ) { var _sig = _sigs [ i ] ; _found = false ; for ( var j = this . signatures . length - 1 ; j >= 0 ; j -- ) if ( this . signatures [ j ] . guid == _sig . id ) { _found = true ; break } if ( ! _found ) { var _add _sig = new AscCommon . asc _CSignatureLine ; _add _sig . guid = _sig . id ; _add _sig . signer1 = _sig . signer ; _add _sig . signer2 = _sig . signer2 ; _add _sig . email =
_sig . email ; _add _sig . showDate = _sig . showDate ; _add _sig . instructions = _sig . instructions ; _sigs _ret . push ( _add _sig ) } } return _sigs _ret } ; baseEditorsApi . prototype . asc _Sign = function ( id , guid , url1 , url2 ) { if ( window [ "AscDesktopEditor" ] && ! this . isRestrictionView ( ) ) window [ "AscDesktopEditor" ] [ "Sign" ] ( id , guid , url1 , url2 ) } ; baseEditorsApi . prototype . asc _RequestSign = function ( guid ) { var signGuid = guid == "unvisibleAdd" ? AscCommon . CreateGUID ( ) : guid ; if ( window [ "asc_LocalRequestSign" ] ) window [ "asc_LocalRequestSign" ] ( signGuid ) } ; baseEditorsApi . prototype . asc _ViewCertificate =
function ( id ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "ViewCertificate" ] ( parseInt ( "" + id ) ) } ; baseEditorsApi . prototype . asc _SelectCertificate = function ( ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "SelectCertificate" ] ( ) } ; baseEditorsApi . prototype . asc _GetDefaultCertificate = function ( ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "GetDefaultCertificate" ] ( ) } ; baseEditorsApi . prototype . asc _getSignatures = function ( ) { return this . signatures } ; baseEditorsApi . prototype . asc _RemoveSignature =
function ( guid ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "RemoveSignature" ] ( guid ) } ; baseEditorsApi . prototype . asc _RemoveAllSignatures = function ( ) { if ( window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "RemoveAllSignatures" ] ( ) } ; baseEditorsApi . prototype . asc _isSignaturesSupport = function ( ) { if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "IsSignaturesSupport" ] ) return window [ "AscDesktopEditor" ] [ "IsSignaturesSupport" ] ( ) ; return false } ; baseEditorsApi . prototype . asc _isProtectionSupport =
function ( ) { if ( window [ "AscDesktopEditor" ] && window [ "AscDesktopEditor" ] [ "IsProtectionSupport" ] ) return window [ "AscDesktopEditor" ] [ "IsProtectionSupport" ] ( ) ; return false } ; baseEditorsApi . prototype . asc _gotoSignature = function ( guid ) { if ( window [ "AscDesktopEditor" ] && window [ "asc_IsVisibleSign" ] && window [ "asc_IsVisibleSign" ] ( guid ) ) this . gotoSignatureInternal ( guid ) } ; baseEditorsApi . prototype . gotoSignatureInternal = function ( guid ) { } ; baseEditorsApi . prototype . asc _getSignatureSetup = function ( guid ) { var _sigs = this . asc _getAllSignatures ( ) ;
for ( var i = _sigs . length - 1 ; i >= 0 ; i -- ) { var _sig = _sigs [ i ] ; if ( _sig . id == guid ) { var _add _sig = new AscCommon . asc _CSignatureLine ; _add _sig . guid = _sig . id ; _add _sig . signer1 = _sig . signer ; _add _sig . signer2 = _sig . signer2 ; _add _sig . email = _sig . email ; _add _sig . showDate = _sig . showDate ; _add _sig . instructions = _sig . instructions ; _add _sig . isrequested = true ; for ( var j = 0 ; j < this . signatures . length ; j ++ ) { var signDoc = this . signatures [ j ] ; if ( signDoc . guid == _add _sig . guid ) { _add _sig . valid = signDoc . valid ; _add _sig . isrequested = false ; break } } return _add _sig } } return null } ;
baseEditorsApi . prototype . asc _getSignatureImage = function ( sGuid ) { var count = this . signatures . length ; for ( var i = 0 ; i < count ; i ++ ) if ( this . signatures [ i ] . guid == sGuid ) return this . signatures [ i ] . image ; return "" } ; baseEditorsApi . prototype . asc _getSessionToken = function ( ) { return this . CoAuthoringApi . get _jwt ( ) } ; baseEditorsApi . prototype . asc _InputClearKeyboardElement = function ( ) { if ( AscCommon . g _inputContext ) AscCommon . g _inputContext . nativeFocusElement = null } ; baseEditorsApi . prototype . privateDropEvent = function ( obj ) { if ( ! obj || ! obj . type ) return ;
var e = { pageX : obj [ "x" ] , pageY : obj [ "y" ] } ; switch ( obj . type ) { case "onbeforedrop" : { this . beginInlineDropTarget ( e ) ; break } case "ondrop" : { this . endInlineDropTarget ( e ) ; if ( obj [ "html" ] ) this [ "pluginMethod_PasteHtml" ] ( obj [ "html" ] ) ; else if ( obj [ "text" ] ) this [ "pluginMethod_PasteText" ] ( obj [ "text" ] ) ; break } default : break } } ; baseEditorsApi . prototype . getTargetOnBodyCoords = function ( ) { var ret = { X : 0 , Y : 0 , W : 0 , H : 0 , TargetH : 0 } ; ret . W = Math . max ( document . documentElement . clientWidth , window . innerWidth || 0 ) ; ret . H = Math . max ( document . documentElement . clientHeight ,
window . innerHeight || 0 ) ; switch ( this . editorId ) { case c _oEditorId . Word : { ret . X += this . WordControl . X ; ret . Y += this . WordControl . Y ; ret . X += this . WordControl . m _oMainView . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix ; ret . Y += this . WordControl . m _oMainView . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ; ret . X += this . WordControl . m _oDrawingDocument . TargetHtmlElementLeft ; ret . Y += this . WordControl . m _oDrawingDocument . TargetHtmlElementTop ; ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH = this . WordControl . m _oDrawingDocument . m _dTargetSize * this . WordControl . m _nZoomValue *
AscCommon . g _dKoef _mm _to _pix / 100 >> 0 ; break } case c _oEditorId . Presentation : { ret . X += this . WordControl . X ; ret . Y += this . WordControl . Y ; ret . X += this . WordControl . m _oMainParent . AbsolutePosition . L * AscCommon . g _dKoef _mm _to _pix ; if ( ! this . WordControl . m _oLogicDocument . IsFocusOnNotes ( ) ) ret . Y += this . WordControl . m _oMainView . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ; else ret . Y += this . WordControl . m _oNotesContainer . AbsolutePosition . T * AscCommon . g _dKoef _mm _to _pix ; ret . X += this . WordControl . m _oDrawingDocument . TargetHtmlElementLeft ;
ret . Y += this . WordControl . m _oDrawingDocument . TargetHtmlElementTop ; ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH = this . WordControl . m _oDrawingDocument . m _dTargetSize * this . WordControl . m _nZoomValue * AscCommon . g _dKoef _mm _to _pix / 100 >> 0 ; break } case c _oEditorId . Spreadsheet : { var off , selectionType = this . asc _getCellInfo ( ) . asc _getSelectionType ( ) ; if ( this . asc _getCellEditMode ( ) ) { var cellEditor = this . wb . cellEditor ; ret . X = cellEditor . curLeft ; ret . Y = cellEditor . curTop ; ret . TargetH = cellEditor . curHeight ; off = cellEditor . cursor } else if ( Asc . c _oAscSelectionType . RangeShapeText ===
selectionType || Asc . c _oAscSelectionType . RangeChartText === selectionType ) { var drDoc = this . wb . getWorksheet ( ) . objectRender . controller . drawingDocument ; ret . X = drDoc . TargetHtmlElementLeft ; ret . Y = drDoc . TargetHtmlElementTop ; ret . TargetH = drDoc . m _dTargetSize * this . asc _getZoom ( ) * AscCommon . g _dKoef _mm _to _pix ; off = this . HtmlElement } if ( off ) { off = jQuery ( off ) . offset ( ) ; if ( off ) { ret . X += off . left ; ret . Y += off . top } } ret . X >>= 0 ; ret . Y >>= 0 ; ret . TargetH >>= 0 ; break } } return ret } ; baseEditorsApi . prototype . onKeyDown = function ( e ) { } ; baseEditorsApi . prototype . onKeyPress =
function ( e ) { } ; baseEditorsApi . prototype . onKeyUp = function ( e ) { } ; baseEditorsApi . prototype . getAddedTextOnKeyDown = function ( e ) { return [ ] } ; baseEditorsApi . prototype . pre _Paste = function ( _fonts , _images , callback ) { } ; baseEditorsApi . prototype . asc _Remove = function ( ) { if ( AscCommon . g _inputContext ) AscCommon . g _inputContext . emulateKeyDownApi ( 46 ) } ; baseEditorsApi . prototype . SetTextBoxInputMode = function ( bIsEnable ) { AscCommon . TextBoxInputMode = bIsEnable ; if ( AscCommon . g _inputContext ) AscCommon . g _inputContext . systemInputEnable ( AscCommon . TextBoxInputMode ) } ;
baseEditorsApi . prototype . GetTextBoxInputMode = function ( ) { return AscCommon . TextBoxInputMode } ; baseEditorsApi . prototype . asc _OnHideContextMenu = function ( ) { } ; baseEditorsApi . prototype . asc _OnShowContextMenu = function ( ) { } ; baseEditorsApi . prototype . isIdle = function ( ) { if ( 0 == this . lastWorkTime ) return 0 ; if ( this . pluginsManager && this . pluginsManager . isWorked ( ) ) return 0 ; if ( this . isEmbedVersion ) return 0 ; if ( ! this . canSave || ! this . _saveCheck ( ) ) return 0 ; return ( new Date ) . getTime ( ) - this . lastWorkTime } ; baseEditorsApi . prototype . checkInterfaceElementBlur =
function ( ) { if ( ! document . activeElement || ! document . createEvent || document . activeElement . id === "area_id" ) return ; var e = document . createEvent ( "HTMLEvents" ) ; e . initEvent ( "blur" , true , true ) ; e . eventName = "blur" ; document . activeElement . dispatchEvent ( e ) } ; baseEditorsApi . prototype . checkLastWork = function ( ) { this . lastWorkTime = ( new Date ) . getTime ( ) } ; baseEditorsApi . prototype . setViewModeDisconnect = function ( enableDownload ) { this . sendEvent ( "asc_onCoAuthoringDisconnect" , enableDownload ) ; this . asc _setViewMode ( true ) } ; baseEditorsApi . prototype . asc _setCurrentPassword =
function ( password ) { this . currentPassword = password ; this . asc _Save ( false , undefined , true ) } ; baseEditorsApi . prototype . asc _resetPassword = function ( ) { this . currentPassword = "" ; this . asc _Save ( false , undefined , true ) } ; baseEditorsApi . prototype . asc _setMacros = function ( sData ) { if ( ! this . macros ) return true ; if ( true === AscCommon . CollaborativeEditing . Get _GlobalLock ( ) ) return true ; AscCommon . CollaborativeEditing . OnStart _CheckLock ( ) ; this . macros . CheckLock ( ) ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) { var locker = Asc . editor . wb . getWorksheet ( ) . objectRender . objectLocker ;
locker . addObjectId ( this . macros . Get _Id ( ) ) ; var _this = this ; locker . checkObjects ( function ( bNoLock ) { if ( bNoLock ) { AscCommon . History . Create _NewPoint ( AscDFH . historydescription _DocumentMacros _Data ) ; _this . macros . SetData ( sData ) } } ) } else if ( false === AscCommon . CollaborativeEditing . OnEnd _CheckLock ( false ) ) { AscCommon . History . Create _NewPoint ( AscDFH . historydescription _DocumentMacros _Data ) ; this . macros . SetData ( sData ) } } ; baseEditorsApi . prototype . asc _getMacros = function ( ) { return this . macros . GetData ( ) } ; baseEditorsApi . prototype . _beforeEvalCommand =
function ( ) { switch ( this . editorId ) { case AscCommon . c _oEditorId . Word : { if ( this . WordControl && this . WordControl . m _oLogicDocument ) this . WordControl . m _oLogicDocument . LockPanelStyles ( ) ; break } default : break } } ; baseEditorsApi . prototype . _afterEvalCommand = function ( endAction ) { var oApi = this ; switch ( this . editorId ) { case AscCommon . c _oEditorId . Word : case AscCommon . c _oEditorId . Presentation : { var oLogicDocument = this . WordControl . m _oLogicDocument ; if ( ! oLogicDocument ) { endAction && endAction ( ) ; return } var _imagesArray = oLogicDocument . Get _AllImageUrls ( ) ;
var _images = { } ; for ( var i = 0 ; i < _imagesArray . length ; i ++ ) _images [ _imagesArray [ i ] ] = _imagesArray [ i ] ; AscCommon . Check _LoadingDataBeforePrepaste ( this , oLogicDocument . Document _Get _AllFontNames ( ) , _images , function ( ) { if ( oLogicDocument . Reassign _ImageUrls ) oLogicDocument . Reassign _ImageUrls ( _images ) ; if ( AscCommon . c _oEditorId . Word === oApi . editorId ) { oLogicDocument . UnlockPanelStyles ( true ) ; oLogicDocument . OnEndLoadScript ( ) } oApi . asc _Recalculate ( true ) ; oLogicDocument . FinalizeAction ( ) ; if ( oApi . SaveAfterMacros ) { oApi . asc _Save ( ) ;
oApi . SaveAfterMacros = false } endAction && endAction ( ) } ) ; break } case AscCommon . c _oEditorId . Spreadsheet : { var oModel = this . wbModel ; var _imagesArray = oModel . getAllImageUrls ( ) ; var _images = { } ; for ( var i = 0 ; i < _imagesArray . length ; i ++ ) _images [ _imagesArray [ i ] ] = _imagesArray [ i ] ; AscCommon . Check _LoadingDataBeforePrepaste ( this , oModel . _generateFontMap ( ) , _images , function ( ) { oModel . reassignImageUrls ( _images ) ; oApi . asc _Recalculate ( true ) ; var wsView = oApi . wb && oApi . wb . getWorksheet ( ) ; if ( wsView && wsView . objectRender && wsView . objectRender . controller ) wsView . objectRender . controller . recalculate2 ( undefined ) ;
if ( oApi . SaveAfterMacros ) { oApi . asc _Save ( ) ; oApi . SaveAfterMacros = false } endAction && endAction ( ) } ) ; break } default : break } } ; baseEditorsApi . prototype . asc _runAutostartMacroses = function ( ) { if ( ! this . macros || this . disableAutostartMacros ) return ; if ( ! this . asc _canPaste ( ) ) return ; this . _beforeEvalCommand ( ) ; this . macros . runAuto ( ) ; this . _afterEvalCommand ( undefined ) } ; baseEditorsApi . prototype . asc _getSelectedDrawingObjectsCount = function ( ) { return 0 } ; baseEditorsApi . prototype . asc _decodeBuffer = function ( buffer , options , callback ) { var reader =
new FileReader ; reader . onload = reader . onerror = function ( e ) { var text = e . target . result ? e . target . result : "" ; if ( options instanceof Asc . asc _CTextOptions ) callback ( AscCommon . parseText ( text , options ) ) ; else callback ( text . match ( /[^\r\n]+/g ) ) } ; var encoding = "UTF-8" ; var codePage = options . asc _getCodePage ( ) ; var encodingsLen = AscCommon . c _oAscEncodings . length ; for ( var i = 0 ; i < encodingsLen ; ++ i ) if ( AscCommon . c _oAscEncodings [ i ] [ 0 ] == codePage ) { encoding = AscCommon . c _oAscEncodings [ i ] [ 2 ] ; break } reader . readAsText ( new Blob ( [ buffer ] ) , encoding ) } ;
baseEditorsApi . prototype . asc _setVisiblePasteButton = function ( val ) { if ( AscCommon . g _specialPasteHelper ) AscCommon . g _specialPasteHelper . setVisiblePasteButton ( val ) } ; baseEditorsApi . prototype . asc _getAutoCorrectMathSymbols = function ( ) { return window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathSymbolsList } ; baseEditorsApi . prototype . asc _getAutoCorrectMathFunctions = function ( ) { return window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathFuncs } ; baseEditorsApi . prototype . asc _resetToDefaultAutoCorrectMathSymbols =
function ( ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols = JSON . parse ( JSON . stringify ( window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathSymbolsList ) ) } ; baseEditorsApi . prototype . asc _resetToDefaultAutoCorrectMathFunctions = function ( ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs = JSON . parse ( JSON . stringify ( window [ "AscCommonWord" ] . g _AutoCorrectMathsList . DefaultAutoCorrectMathFuncs ) ) } ; baseEditorsApi . prototype . asc _deleteFromAutoCorrectMathSymbols =
function ( element ) { var remInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . findIndex ( function ( val , index ) { if ( val [ 0 ] === element ) return true } ) ; window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . splice ( remInd , 1 ) } ; baseEditorsApi . prototype . asc _deleteFromAutoCorrectMathFunctions = function ( element ) { var remInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . findIndex ( function ( val , index ) { if ( val === element ) return true } ) ; window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . splice ( remInd ,
1 ) } ; baseEditorsApi . prototype . asc _AddOrEditFromAutoCorrectMathSymbols = function ( element , repVal ) { if ( typeof repVal === "string" ) repVal = AscCommon . convertUTF16toUnicode ( repVal ) ; var changeInd = window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . findIndex ( function ( val , index ) { if ( val [ 0 ] === element ) return true } ) ; if ( changeInd >= 0 ) window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols [ changeInd ] [ 1 ] = repVal ; else window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathSymbols . push ( [ element ,
repVal ] ) } ; baseEditorsApi . prototype . asc _AddFromAutoCorrectMathFunctions = function ( newEl ) { window [ "AscCommonWord" ] . g _AutoCorrectMathsList . AutoCorrectMathFuncs . push ( newEl ) } ; baseEditorsApi . prototype . asc _refreshOnStartAutoCorrectMathSymbols = function ( remItems , addItems , flag ) { var me = this ; this . asc _resetToDefaultAutoCorrectMathSymbols ( ) ; if ( remItems ) remItems . forEach ( function ( el ) { me . asc _deleteFromAutoCorrectMathSymbols ( el ) } ) ; if ( addItems ) addItems . forEach ( function ( el ) { me . asc _AddOrEditFromAutoCorrectMathSymbols ( el [ 0 ] ,
el [ 1 ] ) } ) ; this . asc _updateFlagAutoCorrectMathSymbols ( flag ) } ; baseEditorsApi . prototype . asc _refreshOnStartAutoCorrectMathFunctions = function ( remItems , addItems ) { var me = this ; this . asc _resetToDefaultAutoCorrectMathFunctions ( ) ; if ( remItems ) remItems . forEach ( function ( el ) { me . asc _deleteFromAutoCorrectMathFunctions ( el ) } ) ; if ( addItems ) addItems . forEach ( function ( el ) { me . asc _AddFromAutoCorrectMathFunctions ( el ) } ) } ; baseEditorsApi . prototype . asc _updateFlagAutoCorrectMathSymbols = function ( flag ) { window [ "AscCommonWord" ] . b _DoAutoCorrectMathSymbols =
flag } ; baseEditorsApi . prototype . getFileAsFromChanges = function ( ) { var func _before = null ; var func _after = null ; if ( this . editorId === AscCommon . c _oEditorId . Word ) if ( this . WordControl && this . WordControl . m _oLogicDocument && this . WordControl . m _oLogicDocument . IsViewModeInReview ( ) ) { var isFinal = this . WordControl . m _oLogicDocument . ViewModeInReview . mode === 1 ? true : false ; func _before = function ( api ) { api . WordControl . m _oLogicDocument . Start _SilentMode ( ) ; api . asc _EndViewModeInReview ( ) } ; func _after = function ( api ) { api . asc _BeginViewModeInReview ( isFinal ) ;
api . WordControl . m _oLogicDocument . End _SilentMode ( false ) } } func _before && func _before ( this ) ; var ret = this . asc _nativeGetFile3 ( ) ; func _after && func _after ( this ) ; return ret } ; baseEditorsApi . prototype . initShortcuts = function ( arrShortcuts , isRemoveBeforeAdd ) { for ( var nIndex = 0 , nCount = arrShortcuts . length ; nIndex < nCount ; ++ nIndex ) { var s = arrShortcuts [ nIndex ] ; if ( true === isRemoveBeforeAdd ) this . Shortcuts . RemoveByType ( s [ 0 ] ) ; this . Shortcuts . Add ( s [ 0 ] , s [ 1 ] , s [ 2 ] , s [ 3 ] , s [ 4 ] ) } } ; baseEditorsApi . prototype . initDefaultShortcuts = function ( ) { } ;
baseEditorsApi . prototype . getShortcut = function ( e ) { if ( e . GetKeyCode ) return this . Shortcuts . Get ( e . GetKeyCode ( ) , e . IsCtrl ( ) , e . IsShift ( ) , e . IsAlt ( ) ) ; else return this . Shortcuts . Get ( e . KeyCode , e . CtrlKey , e . ShiftKey , e . AltKey ) } ; baseEditorsApi . prototype . getCustomShortcutAction = function ( nActionType ) { return this . Shortcuts . GetCustomAction ( nActionType ) } ; baseEditorsApi . prototype . asc _initShortcuts = baseEditorsApi . prototype . initShortcuts ; baseEditorsApi . prototype . asc _getShortcutAction = function ( nKeyCode , isCtrl , isShift , isAlt ) { return this . Shortcuts . Get ( nKeyCode ,
isCtrl , isShift , isAlt ) } ; baseEditorsApi . prototype . asc _removeShortcuts = function ( arrShortcuts , arrActionTypes ) { if ( arrShortcuts ) for ( var nIndex = 0 , nCount = arrShortcuts . length ; nIndex < nCount ; ++ nIndex ) { var s = arrShortcuts [ nIndex ] ; this . Shortcuts . Remove ( s [ 0 ] , s [ 1 ] , s [ 2 ] , s [ 3 ] ) } if ( arrActionTypes ) for ( var nIndex = 0 , nCount = arrActionTypes . length ; nIndex < nCount ; ++ nIndex ) this . Shortcuts . RemoveByType ( arrActionTypes [ nIndex ] ) } ; baseEditorsApi . prototype . asc _addCustomShortcutInsertSymbol = function ( nCharCode , sFont , sShortcut ) { var nActionType =
this . Shortcuts . AddCustomActionSymbol ( nCharCode , sFont ) ; this . Shortcuts . Add ( nActionType , sShortcut [ 0 ] , sShortcut [ 1 ] , sShortcut [ 2 ] , sShortcut [ 3 ] ) ; return nActionType } ; baseEditorsApi . prototype [ "asc_isSupportFeature" ] = function ( type ) { return window [ "Asc" ] && window [ "Asc" ] [ "Addons" ] && window [ "Asc" ] [ "Addons" ] [ type ] === true ? true : false } ; baseEditorsApi . prototype [ "asc_setDefaultBlitMode" ] = function ( value ) { AscFonts . setDefaultBlitting ( value ) } ; baseEditorsApi . prototype [ "attachEvent" ] = function ( name , callback , listenerId ) { if ( ! this . internalEvents . hasOwnProperty ( name ) ) this . internalEvents [ name ] =
{ } ; this . internalEvents [ name ] [ "" + ( undefined === listenerId ? 0 : listenerId ) ] = callback } ; baseEditorsApi . prototype [ "detachEvent" ] = function ( name , listenerId ) { if ( ! this . internalEvents . hasOwnProperty ( name ) ) return ; var obj = this . internalEvents [ name ] ; var prop = "" + ( undefined === listenerId ? 0 : listenerId ) ; if ( obj [ prop ] ) delete obj [ prop ] ; if ( 0 === Object . getOwnPropertyNames ( obj ) . length ) delete this . internalEvents [ name ] } ; baseEditorsApi . prototype . sendInternalEvent = function ( ) { var name = arguments [ 0 ] ; if ( this . internalEvents . hasOwnProperty ( name ) ) { var obj =
this . internalEvents [ name ] ; for ( var prop in obj ) obj [ prop ] . apply ( this || window , Array . prototype . slice . call ( arguments , 1 ) ) } return false } ; baseEditorsApi . prototype [ "asc_onShowPopupWindow" ] = function ( ) { this . hideVideoControl ( ) } ; window [ "AscCommon" ] = window [ "AscCommon" ] || { } ; window [ "AscCommon" ] . baseEditorsApi = baseEditorsApi ; prot = baseEditorsApi . prototype ; prot [ "asc_loadFontsFromServer" ] = prot . asc _loadFontsFromServer ; prot [ "asc_setRestriction" ] = prot . asc _setRestriction ; prot [ "asc_selectSearchingResults" ] = prot . asc _selectSearchingResults ;
prot [ "asc_showRevision" ] = prot . asc _showRevision ; prot [ "asc_getAdvancedOptions" ] = prot . asc _getAdvancedOptions ; prot [ "asc_Print" ] = prot . asc _Print ; prot [ "asc_GetCurrentColorSchemeName" ] = prot . asc _GetCurrentColorSchemeName ; prot [ "asc_GetCurrentColorSchemeIndex" ] = prot . asc _GetCurrentColorSchemeIndex ; prot [ "asc_runAutostartMacroses" ] = prot . asc _runAutostartMacroses ; prot [ "asc_setVisiblePasteButton" ] = prot . asc _setVisiblePasteButton ; prot [ "asc_getAutoCorrectMathSymbols" ] = prot . asc _getAutoCorrectMathSymbols ; prot [ "asc_getAutoCorrectMathFunctions" ] =
prot . asc _getAutoCorrectMathFunctions ; prot [ "asc_resetToDefaultAutoCorrectMathSymbols" ] = prot . asc _resetToDefaultAutoCorrectMathSymbols ; prot [ "asc_resetToDefaultAutoCorrectMathFunctions" ] = prot . asc _resetToDefaultAutoCorrectMathFunctions ; prot [ "asc_deleteFromAutoCorrectMathSymbols" ] = prot . asc _deleteFromAutoCorrectMathSymbols ; prot [ "asc_deleteFromAutoCorrectMathFunctions" ] = prot . asc _deleteFromAutoCorrectMathFunctions ; prot [ "asc_AddOrEditFromAutoCorrectMathSymbols" ] = prot . asc _AddOrEditFromAutoCorrectMathSymbols ;
prot [ "asc_AddFromAutoCorrectMathFunctions" ] = prot . asc _AddFromAutoCorrectMathFunctions ; prot [ "asc_refreshOnStartAutoCorrectMathSymbols" ] = prot . asc _refreshOnStartAutoCorrectMathSymbols ; prot [ "asc_refreshOnStartAutoCorrectMathFunctions" ] = prot . asc _refreshOnStartAutoCorrectMathFunctions ; prot [ "asc_updateFlagAutoCorrectMathSymbols" ] = prot . asc _updateFlagAutoCorrectMathSymbols ; prot [ "asc_initShortcuts" ] = prot . asc _initShortcuts ; prot [ "asc_getShortcutAction" ] = prot . asc _getShortcutAction ; prot [ "asc_removeShortcuts" ] = prot . asc _removeShortcuts ;
prot [ "asc_addCustomShortcutInsertSymbol" ] = prot . asc _addCustomShortcutInsertSymbol ; prot [ "asc_isCrypto" ] = prot . asc _isCrypto } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { var Api = window [ "AscCommon" ] . baseEditorsApi ; Api . prototype [ "pluginMethod_AddOleObject" ] = function ( data ) { return this . asc _addOleObject ( data ) } ; Api . prototype [ "pluginMethod_EditOleObject" ] = function ( data ) { return this . asc _editOleObject ( data ) } ; Api . prototype [ "pluginMethod_GetFontList" ] = function ( ) { return AscFonts . g _fontApplication . g _fontSelections . SerializeList ( ) } ; Api . prototype [ "pluginMethod_InputText" ] = function ( text , textReplace ) { if ( this . isViewMode || ! AscCommon . g _inputContext ) return ;
var codes = [ ] ; for ( var i = text . getUnicodeIterator ( ) ; i . check ( ) ; i . next ( ) ) codes . push ( i . value ( ) ) ; if ( textReplace ) for ( var i = 0 ; i < textReplace . length ; i ++ ) AscCommon . g _inputContext . emulateKeyDownApi ( 8 ) ; AscCommon . g _inputContext . apiInputText ( codes ) ; AscCommon . g _inputContext . keyPressInput = "" } ; Api . prototype [ "pluginMethod_PasteHtml" ] = function ( htmlText ) { if ( ! AscCommon . g _clipboardBase ) return null ; var _elem = document . getElementById ( "pmpastehtml" ) ; if ( _elem ) return ; _elem = document . createElement ( "div" ) ; _elem . id = "pmpastehtml" ;
if ( this . editorId == AscCommon . c _oEditorId . Word || this . editorId == AscCommon . c _oEditorId . Presentation ) { var textPr = this . get _TextProps ( ) ; if ( textPr ) { if ( undefined !== textPr . TextPr . FontSize ) _elem . style . fontSize = textPr . TextPr . FontSize + "pt" ; _elem . style . fontWeight = true === textPr . TextPr . Bold ? "bold" : "normal" ; _elem . style . fontStyle = true === textPr . TextPr . Italic ? "italic" : "normal" ; var _color = textPr . TextPr . Color ; if ( _color ) _elem . style . color = "rgb(" + _color . r + "," + _color . g + "," + _color . b + ")" ; else _elem . style . color = "rgb(0,0,0)" } } else if ( this . editorId ==
AscCommon . c _oEditorId . Spreadsheet ) { var props = this . asc _getCellInfo ( ) ; if ( props && props . font ) { if ( undefined != props . font . size ) _elem . style . fontSize = props . font . size + "pt" ; _elem . style . fontWeight = true === props . font . bold ? "bold" : "normal" ; _elem . style . fontStyle = true === props . font . italic ? "italic" : "normal" } } _elem . innerHTML = htmlText ; document . body . appendChild ( _elem ) ; this . incrementCounterLongAction ( ) ; var b _old _save _format = AscCommon . g _clipboardBase . bSaveFormat ; AscCommon . g _clipboardBase . bSaveFormat = true ; this . asc _PasteData ( AscCommon . c _oAscClipboardDataFormat . HtmlElement ,
_elem ) ; this . decrementCounterLongAction ( ) ; if ( true ) { var fCallback = function ( ) { document . body . removeChild ( _elem ) ; _elem = null ; AscCommon . g _clipboardBase . bSaveFormat = b _old _save _format } ; if ( this . checkLongActionCallback ( fCallback , null ) ) fCallback ( ) } else { document . body . removeChild ( _elem ) ; _elem = null ; AscCommon . g _clipboardBase . bSaveFormat = b _old _save _format } } ; Api . prototype [ "pluginMethod_PasteText" ] = function ( text ) { if ( ! AscCommon . g _clipboardBase ) return null ; this . asc _PasteData ( AscCommon . c _oAscClipboardDataFormat . Text , text ) } ;
Api . prototype [ "pluginMethod_GetMacros" ] = function ( ) { return this . asc _getMacros ( ) } ; Api . prototype [ "pluginMethod_SetMacros" ] = function ( data ) { return this . asc _setMacros ( data ) } ; Api . prototype [ "pluginMethod_StartAction" ] = function ( type , description ) { this . sync _StartAction ( type == "Block" ? Asc . c _oAscAsyncActionType . BlockInteraction : Asc . c _oAscAsyncActionType . Information , description ) } ; Api . prototype [ "pluginMethod_EndAction" ] = function ( type , description , status ) { this . sync _EndAction ( type == "Block" ? Asc . c _oAscAsyncActionType . BlockInteraction :
Asc . c _oAscAsyncActionType . Information , description ) ; if ( window [ "AscDesktopEditor" ] && status != null && status != "" ) { if ( ! window [ "AscDesktopEditor" ] [ "IsLocalFile" ] ( ) ) { this . sendEvent ( "asc_onError" , "Encryption error: " + status + ". The file was not compiled." , c _oAscError . Level . Critical ) ; window [ "AscDesktopEditor" ] [ "CryptoMode" ] = 0 } else { this . sendEvent ( "asc_onError" , "Encryption error: " + status + ". End-to-end encryption mode is disabled." , c _oAscError . Level . NoCritical ) ; window [ "AscDesktopEditor" ] [ "CryptoMode" ] = 0 ; if ( undefined !==
window . LastUserSavedIndex ) { AscCommon . History . UserSavedIndex = window . LastUserSavedIndex ; if ( this . editorId == AscCommon . c _oEditorId . Spreadsheet ) this . onUpdateDocumentModified ( AscCommon . History . Have _Changes ( ) ) ; else this . UpdateInterfaceState ( ) } } window . LastUserSavedIndex = undefined ; setTimeout ( function ( ) { window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( false ) } , 500 ) ; return } window . LastUserSavedIndex = undefined ; if ( this . _callbackPluginEndAction ) this . _callbackPluginEndAction . call ( this ) } ; Api . prototype [ "pluginMethod_OnEncryption" ] =
function ( obj ) { var _editor = window [ "Asc" ] [ "editor" ] ? window [ "Asc" ] [ "editor" ] : window . editor ; switch ( obj . type ) { case "generatePassword" : { if ( "" == obj [ "password" ] ) { _editor . sendEvent ( "asc_onError" , "There is no connection with the blockchain" , c _oAscError . Level . Critical ) ; return } if ( "no_build" === obj [ "error" ] ) { window [ "AscDesktopEditor" ] [ "buildCryptedEnd" ] ( true ) ; return } var _ret = _editor . getFileAsFromChanges ( ) ; AscCommon . EncryptionWorker . isPasswordCryptoPresent = true ; _editor . currentDocumentInfoNext = obj [ "docinfo" ] ; window [ "AscDesktopEditor" ] [ "buildCryptedStart" ] ( _ret . data ,
_ret . header , obj [ "password" ] , obj [ "docinfo" ] ? obj [ "docinfo" ] : "" ) ; break } case "getPasswordByFile" : { if ( "" != obj [ "password" ] ) { var _param = "<m_sPassword>" + AscCommon . CopyPasteCorrectString ( obj [ "password" ] ) + "</m_sPassword>" ; _editor . currentPassword = obj [ "password" ] ; _editor . currentDocumentHash = obj [ "hash" ] ; _editor . currentDocumentInfo = obj [ "docinfo" ] ; AscCommon . EncryptionWorker . isPasswordCryptoPresent = true ; if ( window . isNativeOpenPassword ) window [ "AscDesktopEditor" ] [ "NativeViewerOpen" ] ( obj [ "password" ] ) ; else window [ "AscDesktopEditor" ] [ "SetAdvancedOptions" ] ( _param ) } else this . _onNeedParams ( { message : obj [ "message" ] } ,
true ) ; break } case "encryptData" : case "decryptData" : { AscCommon . EncryptionWorker . receiveChanges ( obj ) ; break } } } ; Api . prototype [ "pluginMethod_SetProperties" ] = function ( obj ) { if ( ! obj ) return ; for ( var prop in obj ) switch ( prop ) { case "copyoutenabled" : { this . copyOutEnabled = obj [ prop ] ; this . sync _CanCopyCutCallback ( this . copyOutEnabled ) ; break } case "watermark_on_draw" : { var sText = "" ; var tempProp = { } ; try { tempProp = typeof obj [ prop ] === "string" ? JSON . parse ( obj [ prop ] ) : obj [ prop ] } catch ( err ) { tempProp = { } } if ( tempProp [ "paragraphs" ] ) tempProp [ "paragraphs" ] . forEach ( function ( el ) { if ( el [ "runs" ] ) sText +=
el [ "runs" ] . reduce ( function ( accum , curel ) { return accum + ( curel [ "text" ] ? curel [ "text" ] : "" ) } , "" ) } ) ; if ( ! ( typeof sText === "string" ) ) sText = "" ; AscFonts . FontPickerByCharacter . checkText ( sText , this , function ( ) { this . watermarkDraw = obj [ prop ] ? new AscCommon . CWatermarkOnDraw ( obj [ prop ] , this ) : null ; this . watermarkDraw . checkOnReady ( ) } ) ; break } case "hideContentControlTrack" : { if ( this . editorId === AscCommon . c _oEditorId . Word && this . WordControl && this . WordControl . m _oLogicDocument ) this . WordControl . m _oLogicDocument . SetForceHideContentControlTrack ( obj [ prop ] ) ;
break } case "disableAutostartMacros" : { this . disableAutostartMacros = true } default : break } } ; Api . prototype [ "pluginMethod_ShowInputHelper" ] = function ( guid , w , h , isKeyboardTake ) { var _frame = document . getElementById ( "iframe_" + guid ) ; if ( ! _frame ) return ; var _offset = this . getTargetOnBodyCoords ( ) ; if ( w > _offset . W ) w = _offset . W ; if ( h > _offset . H ) h = _offset . H ; var _offsetToFrame = 10 ; var _r = _offset . X + _offsetToFrame + w ; var _t = _offset . Y - _offsetToFrame - h ; var _b = _offset . Y + _offset . TargetH + _offsetToFrame + h ; var _x = _offset . X + _offsetToFrame ;
if ( _r > _offset . W ) _x += _offset . W - _r ; var _y = 0 ; if ( _b < _offset . H ) _y = _offset . Y + _offset . TargetH + _offsetToFrame ; else if ( _t > 0 ) _y = _t ; else { _y = _offset . Y + _offset . TargetH + _offsetToFrame ; h += _offset . H - _b } _frame . style . left = _x + "px" ; _frame . style . top = _y + "px" ; _frame . style . width = w + "px" ; _frame . style . height = h + "px" ; if ( ! this . isMobileVersion ) _frame . style . zIndex = 1E3 ; else _frame . style . zIndex = 5001 ; if ( ! _frame . style . boxShadow ) { _frame . style . boxShadow = "0 6px 12px rgba(0, 0, 0, 0.175)" ; _frame . style . webkitBoxShadow = "0 6px 12px rgba(0, 0, 0, 0.175)" } if ( isKeyboardTake ) { _frame . setAttribute ( "oo_editor_input" ,
"true" ) ; _frame . focus ( ) } else { _frame . removeAttribute ( "oo_editor_input" ) ; if ( AscCommon . g _inputContext ) { AscCommon . g _inputContext . isNoClearOnFocus = true ; AscCommon . g _inputContext . HtmlArea . focus ( ) } } if ( AscCommon . g _inputContext ) { AscCommon . g _inputContext . isInputHelpersPresent = true ; AscCommon . g _inputContext . isInputHelpers [ guid ] = true } } ; Api . prototype [ "pluginMethod_UnShowInputHelper" ] = function ( guid , isclear ) { var _frame = document . getElementById ( "iframe_" + guid ) ; if ( ! _frame ) return ; _frame . style . width = "10px" ; _frame . style . height =
"10px" ; _frame . removeAttribute ( "oo_editor_input" ) ; _frame . style . zIndex = - 1E3 ; if ( AscCommon . g _inputContext && AscCommon . g _inputContext . HtmlArea ) { AscCommon . g _inputContext . HtmlArea . focus ( ) ; if ( AscCommon . g _inputContext . isInputHelpers [ guid ] ) delete AscCommon . g _inputContext . isInputHelpers [ guid ] ; var count = 0 ; for ( var test in AscCommon . g _inputContext . isInputHelpers ) if ( AscCommon . g _inputContext . isInputHelpers [ test ] ) count ++ ; AscCommon . g _inputContext . isInputHelpersPresent = 0 != count } if ( AscCommon . g _inputContext && isclear ) AscCommon . g _inputContext . keyPressInput =
"" } } ) ( window ) ; "use strict" ;
( function ( window , undefined ) { function CBackground ( obj ) { if ( obj ) { if ( obj . Unifill && obj . Unifill . fill && obj . Unifill . fill . type === window [ "Asc" ] . c _oAscFill . FILL _TYPE _SOLID && obj . Unifill . fill . color ) this . Color = AscCommon . CreateAscColor ( obj . Unifill . fill . color ) ; else this . Color = undefined != obj . Color && null != obj . Color ? AscCommon . CreateAscColorCustom ( obj . Color . r , obj . Color . g , obj . Color . b ) : null ; this . Value = undefined != obj . Value ? obj . Value : null } else { this . Color = AscCommon . CreateAscColorCustom ( 0 , 0 , 0 ) ; this . Value = 1 } } CBackground . prototype . get _Color =
function ( ) { return this . Color } ; CBackground . prototype . put _Color = function ( v ) { this . Color = v ? v : null } ; CBackground . prototype . get _Value = function ( ) { return this . Value } ; CBackground . prototype . put _Value = function ( v ) { this . Value = v } ; window [ "Asc" ] [ "CBackground" ] = window [ "Asc" ] . CBackground = CBackground ; CBackground . prototype [ "get_Color" ] = CBackground . prototype . get _Color ; CBackground . prototype [ "put_Color" ] = CBackground . prototype . put _Color ; CBackground . prototype [ "get_Value" ] = CBackground . prototype . get _Value ; CBackground . prototype [ "put_Value" ] =
CBackground . prototype . put _Value ; function CTablePositionH ( obj ) { if ( obj ) { this . RelativeFrom = undefined === obj . RelativeFrom ? Asc . c _oAscHAnchor . Margin : obj . RelativeFrom ; this . UseAlign = undefined === obj . UseAlign ? false : obj . UseAlign ; this . Align = undefined === obj . Align ? undefined : obj . Align ; this . Value = undefined === obj . Value ? 0 : obj . Value } else { this . RelativeFrom = Asc . c _oAscHAnchor . Column ; this . UseAlign = false ; this . Align = undefined ; this . Value = 0 } } CTablePositionH . prototype . get _RelativeFrom = function ( ) { return this . RelativeFrom } ; CTablePositionH . prototype . put _RelativeFrom =
function ( v ) { this . RelativeFrom = v } ; CTablePositionH . prototype . get _UseAlign = function ( ) { return this . UseAlign } ; CTablePositionH . prototype . put _UseAlign = function ( v ) { this . UseAlign = v } ; CTablePositionH . prototype . get _Align = function ( ) { return this . Align } ; CTablePositionH . prototype . put _Align = function ( v ) { this . Align = v } ; CTablePositionH . prototype . get _Value = function ( ) { return this . Value } ; CTablePositionH . prototype . put _Value = function ( v ) { this . Value = v } ; function CTablePositionV ( obj ) { if ( obj ) { this . RelativeFrom = undefined === obj . RelativeFrom ?
Asc . c _oAscVAnchor . Text : obj . RelativeFrom ; this . UseAlign = undefined === obj . UseAlign ? false : obj . UseAlign ; this . Align = undefined === obj . Align ? undefined : obj . Align ; this . Value = undefined === obj . Value ? 0 : obj . Value } else { this . RelativeFrom = Asc . c _oAscVAnchor . Text ; this . UseAlign = false ; this . Align = undefined ; this . Value = 0 } } CTablePositionV . prototype . get _RelativeFrom = function ( ) { return this . RelativeFrom } ; CTablePositionV . prototype . put _RelativeFrom = function ( v ) { this . RelativeFrom = v } ; CTablePositionV . prototype . get _UseAlign = function ( ) { return this . UseAlign } ;
CTablePositionV . prototype . put _UseAlign = function ( v ) { this . UseAlign = v } ; CTablePositionV . prototype . get _Align = function ( ) { return this . Align } ; CTablePositionV . prototype . put _Align = function ( v ) { this . Align = v } ; CTablePositionV . prototype . get _Value = function ( ) { return this . Value } ; CTablePositionV . prototype . put _Value = function ( v ) { this . Value = v } ; window [ "Asc" ] [ "CTablePositionH" ] = CTablePositionH ; CTablePositionH . prototype [ "get_RelativeFrom" ] = CTablePositionH . prototype . get _RelativeFrom ; CTablePositionH . prototype [ "put_RelativeFrom" ] =
CTablePositionH . prototype . put _RelativeFrom ; CTablePositionH . prototype [ "get_UseAlign" ] = CTablePositionH . prototype . get _UseAlign ; CTablePositionH . prototype [ "put_UseAlign" ] = CTablePositionH . prototype . put _UseAlign ; CTablePositionH . prototype [ "get_Align" ] = CTablePositionH . prototype . get _Align ; CTablePositionH . prototype [ "put_Align" ] = CTablePositionH . prototype . put _Align ; CTablePositionH . prototype [ "get_Value" ] = CTablePositionH . prototype . get _Value ; CTablePositionH . prototype [ "put_Value" ] = CTablePositionH . prototype . put _Value ;
window [ "Asc" ] [ "CTablePositionV" ] = CTablePositionV ; CTablePositionV . prototype [ "get_RelativeFrom" ] = CTablePositionV . prototype . get _RelativeFrom ; CTablePositionV . prototype [ "put_RelativeFrom" ] = CTablePositionV . prototype . put _RelativeFrom ; CTablePositionV . prototype [ "get_UseAlign" ] = CTablePositionV . prototype . get _UseAlign ; CTablePositionV . prototype [ "put_UseAlign" ] = CTablePositionV . prototype . put _UseAlign ; CTablePositionV . prototype [ "get_Align" ] = CTablePositionV . prototype . get _Align ; CTablePositionV . prototype [ "put_Align" ] =
CTablePositionV . prototype . put _Align ; CTablePositionV . prototype [ "get_Value" ] = CTablePositionV . prototype . get _Value ; CTablePositionV . prototype [ "put_Value" ] = CTablePositionV . prototype . put _Value ; function CTablePropLook ( obj ) { this . FirstCol = false ; this . FirstRow = false ; this . LastCol = false ; this . LastRow = false ; this . BandHor = false ; this . BandVer = false ; if ( obj ) { this . FirstCol = undefined === obj . m _bFirst _Col ? false : obj . m _bFirst _Col ; this . FirstRow = undefined === obj . m _bFirst _Row ? false : obj . m _bFirst _Row ; this . LastCol = undefined === obj . m _bLast _Col ?
false : obj . m _bLast _Col ; this . LastRow = undefined === obj . m _bLast _Row ? false : obj . m _bLast _Row ; this . BandHor = undefined === obj . m _bBand _Hor ? false : obj . m _bBand _Hor ; this . BandVer = undefined === obj . m _bBand _Ver ? false : obj . m _bBand _Ver } } CTablePropLook . prototype . get _FirstCol = function ( ) { return this . FirstCol } ; CTablePropLook . prototype . put _FirstCol = function ( v ) { this . FirstCol = v } ; CTablePropLook . prototype . get _FirstRow = function ( ) { return this . FirstRow } ; CTablePropLook . prototype . put _FirstRow = function ( v ) { this . FirstRow = v } ; CTablePropLook . prototype . get _LastCol =
function ( ) { return this . LastCol } ; CTablePropLook . prototype . put _LastCol = function ( v ) { this . LastCol = v } ; CTablePropLook . prototype . get _LastRow = function ( ) { return this . LastRow } ; CTablePropLook . prototype . put _LastRow = function ( v ) { this . LastRow = v } ; CTablePropLook . prototype . get _BandHor = function ( ) { return this . BandHor } ; CTablePropLook . prototype . put _BandHor = function ( v ) { this . BandHor = v } ; CTablePropLook . prototype . get _BandVer = function ( ) { return this . BandVer } ; CTablePropLook . prototype . put _BandVer = function ( v ) { this . BandVer = v } ; window [ "Asc" ] [ "CTablePropLook" ] =
window [ "Asc" ] . CTablePropLook = CTablePropLook ; CTablePropLook . prototype [ "get_FirstCol" ] = CTablePropLook . prototype . get _FirstCol ; CTablePropLook . prototype [ "put_FirstCol" ] = CTablePropLook . prototype . put _FirstCol ; CTablePropLook . prototype [ "get_FirstRow" ] = CTablePropLook . prototype . get _FirstRow ; CTablePropLook . prototype [ "put_FirstRow" ] = CTablePropLook . prototype . put _FirstRow ; CTablePropLook . prototype [ "get_LastCol" ] = CTablePropLook . prototype . get _LastCol ; CTablePropLook . prototype [ "put_LastCol" ] = CTablePropLook . prototype . put _LastCol ;
CTablePropLook . prototype [ "get_LastRow" ] = CTablePropLook . prototype . get _LastRow ; CTablePropLook . prototype [ "put_LastRow" ] = CTablePropLook . prototype . put _LastRow ; CTablePropLook . prototype [ "get_BandHor" ] = CTablePropLook . prototype . get _BandHor ; CTablePropLook . prototype [ "put_BandHor" ] = CTablePropLook . prototype . put _BandHor ; CTablePropLook . prototype [ "get_BandVer" ] = CTablePropLook . prototype . get _BandVer ; CTablePropLook . prototype [ "put_BandVer" ] = CTablePropLook . prototype . put _BandVer ; function CTableProp ( tblProp ) { if ( tblProp ) { this . CanBeFlow =
undefined != tblProp . CanBeFlow ? tblProp . CanBeFlow : false ; this . CellSelect = undefined != tblProp . CellSelect ? tblProp . CellSelect : false ; this . CellSelect = undefined != tblProp . CellSelect ? tblProp . CellSelect : false ; this . TableWidth = undefined != tblProp . TableWidth ? tblProp . TableWidth : null ; this . TableSpacing = undefined != tblProp . TableSpacing ? tblProp . TableSpacing : null ; this . TableDefaultMargins = undefined != tblProp . TableDefaultMargins && null != tblProp . TableDefaultMargins ? new Asc . asc _CPaddings ( tblProp . TableDefaultMargins ) : null ; this . CellMargins =
undefined != tblProp . CellMargins && null != tblProp . CellMargins ? new CMargins ( tblProp . CellMargins ) : null ; this . TableAlignment = undefined != tblProp . TableAlignment ? tblProp . TableAlignment : null ; this . TableIndent = undefined != tblProp . TableIndent ? tblProp . TableIndent : null ; this . TableWrappingStyle = undefined != tblProp . TableWrappingStyle ? tblProp . TableWrappingStyle : null ; this . TablePaddings = undefined != tblProp . TablePaddings && null != tblProp . TablePaddings ? new Asc . asc _CPaddings ( tblProp . TablePaddings ) : null ; this . TableBorders = undefined !=
tblProp . TableBorders && null != tblProp . TableBorders ? new CBorders ( tblProp . TableBorders ) : null ; this . CellBorders = undefined != tblProp . CellBorders && null != tblProp . CellBorders ? new CBorders ( tblProp . CellBorders ) : null ; this . TableBackground = undefined != tblProp . TableBackground && null != tblProp . TableBackground ? new CBackground ( tblProp . TableBackground ) : null ; this . CellsBackground = undefined != tblProp . CellsBackground && null != tblProp . CellsBackground ? new CBackground ( tblProp . CellsBackground ) : null ; this . Position = undefined != tblProp . Position &&
null != tblProp . Position ? new Asc . CPosition ( tblProp . Position ) : null ; this . PositionH = undefined != tblProp . PositionH && null != tblProp . PositionH ? new CTablePositionH ( tblProp . PositionH ) : undefined ; this . PositionV = undefined != tblProp . PositionV && null != tblProp . PositionV ? new CTablePositionV ( tblProp . PositionV ) : undefined ; this . Internal _Position = undefined != tblProp . Internal _Position ? tblProp . Internal _Position : undefined ; this . ForSelectedCells = undefined != tblProp . ForSelectedCells ? tblProp . ForSelectedCells : true ; this . TableStyle = undefined !=
tblProp . TableStyle ? tblProp . TableStyle : null ; this . TableLook = undefined != tblProp . TableLook ? new CTablePropLook ( tblProp . TableLook ) : null ; this . RowsInHeader = undefined !== tblProp . RowsInHeader ? tblProp . RowsInHeader : false ; this . CellsVAlign = undefined != tblProp . CellsVAlign ? tblProp . CellsVAlign : c _oAscVertAlignJc . Top ; this . AllowOverlap = undefined != tblProp . AllowOverlap ? tblProp . AllowOverlap : undefined ; this . TableLayout = tblProp . TableLayout ; this . CellsTextDirection = tblProp . CellsTextDirection ; this . CellsNoWrap = tblProp . CellsNoWrap ;
this . CellsWidth = tblProp . CellsWidth ; this . CellsWidthNotEqual = tblProp . CellsWidthNotEqual ; this . Locked = undefined != tblProp . Locked ? tblProp . Locked : false ; this . PercentFullWidth = tblProp . PercentFullWidth ; this . TableDescription = tblProp . TableDescription ; this . TableCaption = tblProp . TableCaption ; this . ColumnWidth = tblProp . ColumnWidth ; this . RowHeight = tblProp . RowHeight } else { this . CellSelect = false ; this . Locked = false } } CTableProp . prototype . get _Width = function ( ) { return this . TableWidth } ; CTableProp . prototype . put _Width = function ( v ) { this . TableWidth =
v } ; CTableProp . prototype . get _Spacing = function ( ) { return this . TableSpacing } ; CTableProp . prototype . put _Spacing = function ( v ) { this . TableSpacing = v } ; CTableProp . prototype . get _DefaultMargins = function ( ) { return this . TableDefaultMargins } ; CTableProp . prototype . put _DefaultMargins = function ( v ) { this . TableDefaultMargins = v } ; CTableProp . prototype . get _CellMargins = function ( ) { return this . CellMargins } ; CTableProp . prototype . put _CellMargins = function ( v ) { this . CellMargins = v } ; CTableProp . prototype . get _TableAlignment = function ( ) { return this . TableAlignment } ;
CTableProp . prototype . put _TableAlignment = function ( v ) { this . TableAlignment = v } ; CTableProp . prototype . get _TableIndent = function ( ) { return this . TableIndent } ; CTableProp . prototype . put _TableIndent = function ( v ) { this . TableIndent = v } ; CTableProp . prototype . get _TableWrap = function ( ) { return this . TableWrappingStyle } ; CTableProp . prototype . put _TableWrap = function ( v ) { this . TableWrappingStyle = v } ; CTableProp . prototype . get _TablePaddings = function ( ) { return this . TablePaddings } ; CTableProp . prototype . put _TablePaddings = function ( v ) { this . TablePaddings =
v } ; CTableProp . prototype . get _TableBorders = function ( ) { return this . TableBorders } ; CTableProp . prototype . put _TableBorders = function ( v ) { this . TableBorders = v } ; CTableProp . prototype . get _CellBorders = function ( ) { return this . CellBorders } ; CTableProp . prototype . put _CellBorders = function ( v ) { this . CellBorders = v } ; CTableProp . prototype . get _TableBackground = function ( ) { return this . TableBackground } ; CTableProp . prototype . put _TableBackground = function ( v ) { this . TableBackground = v } ; CTableProp . prototype . get _CellsBackground = function ( ) { return this . CellsBackground } ;
CTableProp . prototype . put _CellsBackground = function ( v ) { this . CellsBackground = v } ; CTableProp . prototype . get _Position = function ( ) { return this . Position } ; CTableProp . prototype . put _Position = function ( v ) { this . Position = v } ; CTableProp . prototype . get _PositionH = function ( ) { return this . PositionH } ; CTableProp . prototype . put _PositionH = function ( v ) { this . PositionH = v } ; CTableProp . prototype . get _PositionV = function ( ) { return this . PositionV } ; CTableProp . prototype . put _PositionV = function ( v ) { this . PositionV = v } ; CTableProp . prototype . get _Value _X =
function ( RelativeFrom ) { if ( undefined != this . Internal _Position ) return this . Internal _Position . Calculate _X _Value ( RelativeFrom ) ; return 0 } ; CTableProp . prototype . get _Value _Y = function ( RelativeFrom ) { if ( undefined != this . Internal _Position ) return this . Internal _Position . Calculate _Y _Value ( RelativeFrom ) ; return 0 } ; CTableProp . prototype . get _ForSelectedCells = function ( ) { return this . ForSelectedCells } ; CTableProp . prototype . put _ForSelectedCells = function ( v ) { this . ForSelectedCells = v } ; CTableProp . prototype . put _CellSelect = function ( v ) { this . CellSelect =
v } ; CTableProp . prototype . get _CellSelect = function ( ) { return this . CellSelect } ; CTableProp . prototype . get _CanBeFlow = function ( ) { return this . CanBeFlow } ; CTableProp . prototype . get _RowsInHeader = function ( ) { return this . RowsInHeader } ; CTableProp . prototype . put _RowsInHeader = function ( v ) { this . RowsInHeader = v } ; CTableProp . prototype . get _Locked = function ( ) { return this . Locked } ; CTableProp . prototype . get _CellsVAlign = function ( ) { return this . CellsVAlign } ; CTableProp . prototype . put _CellsVAlign = function ( v ) { this . CellsVAlign = v } ; CTableProp . prototype . get _TableLook =
function ( ) { return this . TableLook } ; CTableProp . prototype . put _TableLook = function ( v ) { this . TableLook = v } ; CTableProp . prototype . get _TableStyle = function ( ) { return this . TableStyle } ; CTableProp . prototype . put _TableStyle = function ( v ) { this . TableStyle = v } ; CTableProp . prototype . get _AllowOverlap = function ( ) { return this . AllowOverlap } ; CTableProp . prototype . put _AllowOverlap = function ( v ) { this . AllowOverlap = v } ; CTableProp . prototype . get _TableLayout = function ( ) { return this . TableLayout } ; CTableProp . prototype . put _TableLayout = function ( v ) { this . TableLayout =
v } ; CTableProp . prototype . get _CellsTextDirection = function ( ) { return this . CellsTextDirection } ; CTableProp . prototype . put _CellsTextDirection = function ( v ) { this . CellsTextDirection = v } ; CTableProp . prototype . get _CellsNoWrap = function ( ) { return this . CellsNoWrap } ; CTableProp . prototype . put _CellsNoWrap = function ( v ) { this . CellsNoWrap = v } ; CTableProp . prototype . get _CellsWidth = function ( ) { return this . CellsWidth } ; CTableProp . prototype . put _CellsWidth = function ( v ) { this . CellsWidth = v } ; CTableProp . prototype . get _PercentFullWidth = function ( ) { return this . PercentFullWidth } ;
CTableProp . prototype . get _CellsWidthNotEqual = function ( ) { return this . CellsWidthNotEqual } ; CTableProp . prototype . get _TableDescription = function ( ) { return this . TableDescription } ; CTableProp . prototype . put _TableDescription = function ( v ) { this . TableDescription = v } ; CTableProp . prototype . get _TableCaption = function ( ) { return this . TableCaption } ; CTableProp . prototype . put _TableCaption = function ( v ) { this . TableCaption = v } ; CTableProp . prototype . get _ColumnWidth = function ( ) { return this . ColumnWidth } ; CTableProp . prototype . put _ColumnWidth =
function ( v ) { this . ColumnWidth = v } ; CTableProp . prototype . get _RowHeight = function ( ) { return this . RowHeight } ; CTableProp . prototype . put _RowHeight = function ( v ) { this . RowHeight = v } ; window [ "Asc" ] [ "CTableProp" ] = window [ "Asc" ] . CTableProp = CTableProp ; CTableProp . prototype [ "get_Width" ] = CTableProp . prototype . get _Width ; CTableProp . prototype [ "put_Width" ] = CTableProp . prototype . put _Width ; CTableProp . prototype [ "get_Spacing" ] = CTableProp . prototype . get _Spacing ; CTableProp . prototype [ "put_Spacing" ] = CTableProp . prototype . put _Spacing ; CTableProp . prototype [ "get_DefaultMargins" ] =
CTableProp . prototype . get _DefaultMargins ; CTableProp . prototype [ "put_DefaultMargins" ] = CTableProp . prototype . put _DefaultMargins ; CTableProp . prototype [ "get_CellMargins" ] = CTableProp . prototype . get _CellMargins ; CTableProp . prototype [ "put_CellMargins" ] = CTableProp . prototype . put _CellMargins ; CTableProp . prototype [ "get_TableAlignment" ] = CTableProp . prototype . get _TableAlignment ; CTableProp . prototype [ "put_TableAlignment" ] = CTableProp . prototype . put _TableAlignment ; CTableProp . prototype [ "get_TableIndent" ] = CTableProp . prototype . get _TableIndent ;
CTableProp . prototype [ "put_TableIndent" ] = CTableProp . prototype . put _TableIndent ; CTableProp . prototype [ "get_TableWrap" ] = CTableProp . prototype . get _TableWrap ; CTableProp . prototype [ "put_TableWrap" ] = CTableProp . prototype . put _TableWrap ; CTableProp . prototype [ "get_TablePaddings" ] = CTableProp . prototype . get _TablePaddings ; CTableProp . prototype [ "put_TablePaddings" ] = CTableProp . prototype . put _TablePaddings ; CTableProp . prototype [ "get_TableBorders" ] = CTableProp . prototype . get _TableBorders ; CTableProp . prototype [ "put_TableBorders" ] =
CTableProp . prototype . put _TableBorders ; CTableProp . prototype [ "get_CellBorders" ] = CTableProp . prototype . get _CellBorders ; CTableProp . prototype [ "put_CellBorders" ] = CTableProp . prototype . put _CellBorders ; CTableProp . prototype [ "get_TableBackground" ] = CTableProp . prototype . get _TableBackground ; CTableProp . prototype [ "put_TableBackground" ] = CTableProp . prototype . put _TableBackground ; CTableProp . prototype [ "get_CellsBackground" ] = CTableProp . prototype . get _CellsBackground ; CTableProp . prototype [ "put_CellsBackground" ] = CTableProp . prototype . put _CellsBackground ;
CTableProp . prototype [ "get_Position" ] = CTableProp . prototype . get _Position ; CTableProp . prototype [ "put_Position" ] = CTableProp . prototype . put _Position ; CTableProp . prototype [ "get_PositionH" ] = CTableProp . prototype . get _PositionH ; CTableProp . prototype [ "put_PositionH" ] = CTableProp . prototype . put _PositionH ; CTableProp . prototype [ "get_PositionV" ] = CTableProp . prototype . get _PositionV ; CTableProp . prototype [ "put_PositionV" ] = CTableProp . prototype . put _PositionV ; CTableProp . prototype [ "get_Value_X" ] = CTableProp . prototype . get _Value _X ;
CTableProp . prototype [ "get_Value_Y" ] = CTableProp . prototype . get _Value _Y ; CTableProp . prototype [ "get_ForSelectedCells" ] = CTableProp . prototype . get _ForSelectedCells ; CTableProp . prototype [ "put_ForSelectedCells" ] = CTableProp . prototype . put _ForSelectedCells ; CTableProp . prototype [ "put_CellSelect" ] = CTableProp . prototype . put _CellSelect ; CTableProp . prototype [ "get_CellSelect" ] = CTableProp . prototype . get _CellSelect ; CTableProp . prototype [ "get_CanBeFlow" ] = CTableProp . prototype . get _CanBeFlow ; CTableProp . prototype [ "get_RowsInHeader" ] =
CTableProp . prototype . get _RowsInHeader ; CTableProp . prototype [ "put_RowsInHeader" ] = CTableProp . prototype . put _RowsInHeader ; CTableProp . prototype [ "get_Locked" ] = CTableProp . prototype . get _Locked ; CTableProp . prototype [ "get_CellsVAlign" ] = CTableProp . prototype . get _CellsVAlign ; CTableProp . prototype [ "put_CellsVAlign" ] = CTableProp . prototype . put _CellsVAlign ; CTableProp . prototype [ "get_TableLook" ] = CTableProp . prototype . get _TableLook ; CTableProp . prototype [ "put_TableLook" ] = CTableProp . prototype . put _TableLook ; CTableProp . prototype [ "get_TableStyle" ] =
CTableProp . prototype . get _TableStyle ; CTableProp . prototype [ "put_TableStyle" ] = CTableProp . prototype . put _TableStyle ; CTableProp . prototype [ "get_AllowOverlap" ] = CTableProp . prototype . get _AllowOverlap ; CTableProp . prototype [ "put_AllowOverlap" ] = CTableProp . prototype . put _AllowOverlap ; CTableProp . prototype [ "get_TableLayout" ] = CTableProp . prototype . get _TableLayout ; CTableProp . prototype [ "put_TableLayout" ] = CTableProp . prototype . put _TableLayout ; CTableProp . prototype [ "get_CellsTextDirection" ] = CTableProp . prototype . get _CellsTextDirection ;
CTableProp . prototype [ "put_CellsTextDirection" ] = CTableProp . prototype . put _CellsTextDirection ; CTableProp . prototype [ "get_CellsNoWrap" ] = CTableProp . prototype . get _CellsNoWrap ; CTableProp . prototype [ "put_CellsNoWrap" ] = CTableProp . prototype . put _CellsNoWrap ; CTableProp . prototype [ "get_CellsWidth" ] = CTableProp . prototype . get _CellsWidth ; CTableProp . prototype [ "put_CellsWidth" ] = CTableProp . prototype . put _CellsWidth ; CTableProp . prototype [ "get_PercentFullWidth" ] = CTableProp . prototype . get _PercentFullWidth ; CTableProp . prototype [ "get_CellsWidthNotEqual" ] =
CTableProp . prototype . get _CellsWidthNotEqual ; CTableProp . prototype [ "get_TableDescription" ] = CTableProp . prototype . get _TableDescription ; CTableProp . prototype [ "put_TableDescription" ] = CTableProp . prototype . put _TableDescription ; CTableProp . prototype [ "get_TableCaption" ] = CTableProp . prototype . get _TableCaption ; CTableProp . prototype [ "put_TableCaption" ] = CTableProp . prototype . put _TableCaption ; CTableProp . prototype [ "get_ColumnWidth" ] = CTableProp . prototype . get _ColumnWidth ; CTableProp . prototype [ "put_ColumnWidth" ] = CTableProp . prototype . put _ColumnWidth ;
CTableProp . prototype [ "get_RowHeight" ] = CTableProp . prototype . get _RowHeight ; CTableProp . prototype [ "put_RowHeight" ] = CTableProp . prototype . put _RowHeight ; function CBorders ( obj ) { if ( obj ) { this . Left = undefined != obj . Left && null != obj . Left ? new Asc . asc _CTextBorder ( obj . Left ) : null ; this . Top = undefined != obj . Top && null != obj . Top ? new Asc . asc _CTextBorder ( obj . Top ) : null ; this . Right = undefined != obj . Right && null != obj . Right ? new Asc . asc _CTextBorder ( obj . Right ) : null ; this . Bottom = undefined != obj . Bottom && null != obj . Bottom ? new Asc . asc _CTextBorder ( obj . Bottom ) :
null ; this . InsideH = undefined != obj . InsideH && null != obj . InsideH ? new Asc . asc _CTextBorder ( obj . InsideH ) : null ; this . InsideV = undefined != obj . InsideV && null != obj . InsideV ? new Asc . asc _CTextBorder ( obj . InsideV ) : null } } CBorders . prototype . get _Left = function ( ) { return this . Left } ; CBorders . prototype . put _Left = function ( v ) { this . Left = v ? new Asc . asc _CTextBorder ( v ) : null } ; CBorders . prototype . get _Top = function ( ) { return this . Top } ; CBorders . prototype . put _Top = function ( v ) { this . Top = v ? new Asc . asc _CTextBorder ( v ) : null } ; CBorders . prototype . get _Right =
function ( ) { return this . Right } ; CBorders . prototype . put _Right = function ( v ) { this . Right = v ? new Asc . asc _CTextBorder ( v ) : null } ; CBorders . prototype . get _Bottom = function ( ) { return this . Bottom } ; CBorders . prototype . put _Bottom = function ( v ) { this . Bottom = v ? new Asc . asc _CTextBorder ( v ) : null } ; CBorders . prototype . get _InsideH = function ( ) { return this . InsideH } ; CBorders . prototype . put _InsideH = function ( v ) { this . InsideH = v ? new Asc . asc _CTextBorder ( v ) : null } ; CBorders . prototype . get _InsideV = function ( ) { return this . InsideV } ; CBorders . prototype . put _InsideV =
function ( v ) { this . InsideV = v ? new Asc . asc _CTextBorder ( v ) : null } ; function CMargins ( obj ) { if ( obj ) { this . Left = undefined != obj . Left ? obj . Left : null ; this . Right = undefined != obj . Right ? obj . Right : null ; this . Top = undefined != obj . Top ? obj . Top : null ; this . Bottom = undefined != obj . Bottom ? obj . Bottom : null ; this . Flag = undefined != obj . Flag ? obj . Flag : null } else { this . Left = null ; this . Right = null ; this . Top = null ; this . Bottom = null ; this . Flag = null } } CMargins . prototype . get _Left = function ( ) { return this . Left } ; CMargins . prototype . put _Left = function ( v ) { this . Left =
v } ; CMargins . prototype . get _Right = function ( ) { return this . Right } ; CMargins . prototype . put _Right = function ( v ) { this . Right = v } ; CMargins . prototype . get _Top = function ( ) { return this . Top } ; CMargins . prototype . put _Top = function ( v ) { this . Top = v } ; CMargins . prototype . get _Bottom = function ( ) { return this . Bottom } ; CMargins . prototype . put _Bottom = function ( v ) { this . Bottom = v } ; CMargins . prototype . get _Flag = function ( ) { return this . Flag } ; CMargins . prototype . put _Flag = function ( v ) { this . Flag = v } ; window [ "Asc" ] [ "CBorders" ] = window [ "Asc" ] . CBorders = CBorders ;
CBorders . prototype [ "get_Left" ] = CBorders . prototype . get _Left ; CBorders . prototype [ "put_Left" ] = CBorders . prototype . put _Left ; CBorders . prototype [ "get_Top" ] = CBorders . prototype . get _Top ; CBorders . prototype [ "put_Top" ] = CBorders . prototype . put _Top ; CBorders . prototype [ "get_Right" ] = CBorders . prototype . get _Right ; CBorders . prototype [ "put_Right" ] = CBorders . prototype . put _Right ; CBorders . prototype [ "get_Bottom" ] = CBorders . prototype . get _Bottom ; CBorders . prototype [ "put_Bottom" ] = CBorders . prototype . put _Bottom ; CBorders . prototype [ "get_InsideH" ] =
CBorders . prototype . get _InsideH ; CBorders . prototype [ "put_InsideH" ] = CBorders . prototype . put _InsideH ; CBorders . prototype [ "get_InsideV" ] = CBorders . prototype . get _InsideV ; CBorders . prototype [ "put_InsideV" ] = CBorders . prototype . put _InsideV ; window [ "Asc" ] [ "CMargins" ] = window [ "Asc" ] . CMargins = CMargins ; CMargins . prototype [ "get_Left" ] = CMargins . prototype . get _Left ; CMargins . prototype [ "put_Left" ] = CMargins . prototype . put _Left ; CMargins . prototype [ "get_Right" ] = CMargins . prototype . get _Right ; CMargins . prototype [ "put_Right" ] = CMargins . prototype . put _Right ;
CMargins . prototype [ "get_Top" ] = CMargins . prototype . get _Top ; CMargins . prototype [ "put_Top" ] = CMargins . prototype . put _Top ; CMargins . prototype [ "get_Bottom" ] = CMargins . prototype . get _Bottom ; CMargins . prototype [ "put_Bottom" ] = CMargins . prototype . put _Bottom ; CMargins . prototype [ "get_Flag" ] = CMargins . prototype . get _Flag ; CMargins . prototype [ "put_Flag" ] = CMargins . prototype . put _Flag ; function CParagraphPropEx ( obj ) { if ( obj ) { this . ContextualSpacing = undefined != obj . ContextualSpacing ? obj . ContextualSpacing : null ; this . Ind = undefined != obj . Ind &&
null != obj . Ind ? new Asc . asc _CParagraphInd ( obj . Ind ) : null ; this . Jc = undefined != obj . Jc ? obj . Jc : null ; this . KeepLines = undefined != obj . KeepLines ? obj . KeepLines : null ; this . KeepNext = undefined != obj . KeepNext ? obj . KeepNext : null ; this . PageBreakBefore = undefined != obj . PageBreakBefore ? obj . PageBreakBefore : null ; this . Spacing = undefined != obj . Spacing && null != obj . Spacing ? new AscCommon . asc _CParagraphSpacing ( obj . Spacing ) : null ; this . Shd = undefined != obj . Shd && null != obj . Shd ? new Asc . asc _CParagraphShd ( obj . Shd ) : null ; this . WidowControl = undefined !=
obj . WidowControl ? obj . WidowControl : null ; this . Tabs = obj . Tabs ; this . OutlineLvl = undefined !== obj . OutlineLvl ? obj . OutlineLvl : 0 } else { this . ContextualSpacing = false ; this . Ind = new Asc . asc _CParagraphInd ; this . Jc = AscCommon . align _Left ; this . KeepLines = false ; this . KeepNext = false ; this . PageBreakBefore = false ; this . Spacing = new AscCommon . asc _CParagraphSpacing ; this . Shd = new Asc . asc _CParagraphShd ; this . WidowControl = true ; this . Tabs = null ; this . OutlineLvl = 0 } } CParagraphPropEx . prototype . get _ContextualSpacing = function ( ) { return this . ContextualSpacing } ;
CParagraphPropEx . prototype . get _Ind = function ( ) { return this . Ind } ; CParagraphPropEx . prototype . get _Jc = function ( ) { return this . Jc } ; CParagraphPropEx . prototype . get _KeepLines = function ( ) { return this . KeepLines } ; CParagraphPropEx . prototype . get _KeepNext = function ( ) { return this . KeepNext } ; CParagraphPropEx . prototype . get _PageBreakBefore = function ( ) { return this . PageBreakBefore } ; CParagraphPropEx . prototype . get _Spacing = function ( ) { return this . Spacing } ; CParagraphPropEx . prototype . get _Shd = function ( ) { return this . Shd } ; CParagraphPropEx . prototype . get _WidowControl =
function ( ) { return this . WidowControl } ; CParagraphPropEx . prototype . get _Tabs = function ( ) { return this . Tabs } ; CParagraphPropEx . prototype . get _OutlineLvl = function ( ) { return this . OutlineLvl } ; function CTextProp ( obj ) { if ( obj ) { this . Bold = undefined != obj . Bold ? obj . Bold : null ; this . Italic = undefined != obj . Italic ? obj . Italic : null ; this . Underline = undefined != obj . Underline ? obj . Underline : null ; this . Strikeout = undefined != obj . Strikeout ? obj . Strikeout : null ; this . FontFamily = undefined != obj . FontFamily && null != obj . FontFamily ? new AscCommon . asc _CTextFontFamily ( obj . FontFamily ) :
new AscCommon . asc _CTextFontFamily ( { Name : "" , Index : - 1 } ) ; this . FontSize = undefined != obj . FontSize ? obj . FontSize : null ; this . Color = undefined != obj . Color && null != obj . Color ? AscCommon . CreateAscColorCustom ( obj . Color . r , obj . Color . g , obj . Color . b ) : null ; this . VertAlign = undefined != obj . VertAlign ? obj . VertAlign : null ; this . HighLight = undefined != obj . HighLight ? obj . HighLight == AscCommonWord . highlight _None ? obj . HighLight : new AscCommon . CColor ( obj . HighLight . r , obj . HighLight . g , obj . HighLight . b ) : null ; this . DStrikeout = undefined != obj . DStrikeout ?
obj . DStrikeout : null ; this . Spacing = undefined != obj . Spacing ? obj . Spacing : null ; this . Caps = undefined != obj . Caps ? obj . Caps : null ; this . SmallCaps = undefined != obj . SmallCaps ? obj . SmallCaps : null ; this . Lang = undefined != obj . Lang ? obj . Lang . Val : null } else { this . Bold = false ; this . Italic = false ; this . Underline = false ; this . Strikeout = false ; this . FontFamily = new AscCommon . asc _CTextFontFamily ; this . FontSize = 12 ; this . Color = AscCommon . CreateAscColorCustom ( 0 , 0 , 0 ) ; this . VertAlign = AscCommon . vertalign _Baseline ; this . HighLight = AscCommonWord . highlight _None ;
this . DStrikeout = false ; this . Spacing = 0 ; this . Caps = false ; this . SmallCaps = false ; this . Lang = null } } CTextProp . prototype . get _Bold = function ( ) { return this . Bold } ; CTextProp . prototype . get _Italic = function ( ) { return this . Italic } ; CTextProp . prototype . get _Underline = function ( ) { return this . Underline } ; CTextProp . prototype . get _Strikeout = function ( ) { return this . Strikeout } ; CTextProp . prototype . get _FontFamily = function ( ) { return this . FontFamily } ; CTextProp . prototype . get _FontSize = function ( ) { return this . FontSize } ; CTextProp . prototype . get _Color =
function ( ) { return this . Color } ; CTextProp . prototype . get _VertAlign = function ( ) { return this . VertAlign } ; CTextProp . prototype . get _HighLight = function ( ) { return this . HighLight } ; CTextProp . prototype . get _Spacing = function ( ) { return this . Spacing } ; CTextProp . prototype . get _DStrikeout = function ( ) { return this . DStrikeout } ; CTextProp . prototype . get _Caps = function ( ) { return this . Caps } ; CTextProp . prototype . get _SmallCaps = function ( ) { return this . SmallCaps } ; CTextProp . prototype . get _Lang = function ( ) { return this . Lang } ; CParagraphPropEx . prototype [ "get_ContextualSpacing" ] =
CParagraphPropEx . prototype . get _ContextualSpacing ; CParagraphPropEx . prototype [ "get_Ind" ] = CParagraphPropEx . prototype . get _Ind ; CParagraphPropEx . prototype [ "get_Jc" ] = CParagraphPropEx . prototype . get _Jc ; CParagraphPropEx . prototype [ "get_KeepLines" ] = CParagraphPropEx . prototype . get _KeepLines ; CParagraphPropEx . prototype [ "get_KeepNext" ] = CParagraphPropEx . prototype . get _KeepNext ; CParagraphPropEx . prototype [ "get_PageBreakBefore" ] = CParagraphPropEx . prototype . get _PageBreakBefore ; CParagraphPropEx . prototype [ "get_Spacing" ] = CParagraphPropEx . prototype . get _Spacing ;
CParagraphPropEx . prototype [ "get_Shd" ] = CParagraphPropEx . prototype . get _Shd ; CParagraphPropEx . prototype [ "get_WidowControl" ] = CParagraphPropEx . prototype . get _WidowControl ; CParagraphPropEx . prototype [ "get_Tabs" ] = CParagraphPropEx . prototype . get _Tabs ; CParagraphPropEx . prototype [ "get_OutlineLvl" ] = CParagraphPropEx . prototype . get _OutlineLvl ; CTextProp . prototype [ "get_Bold" ] = CTextProp . prototype . get _Bold ; CTextProp . prototype [ "get_Italic" ] = CTextProp . prototype . get _Italic ; CTextProp . prototype [ "get_Underline" ] = CTextProp . prototype . get _Underline ;
CTextProp . prototype [ "get_Strikeout" ] = CTextProp . prototype . get _Strikeout ; CTextProp . prototype [ "get_FontFamily" ] = CTextProp . prototype . get _FontFamily ; CTextProp . prototype [ "get_FontSize" ] = CTextProp . prototype . get _FontSize ; CTextProp . prototype [ "get_Color" ] = CTextProp . prototype . get _Color ; CTextProp . prototype [ "get_VertAlign" ] = CTextProp . prototype . get _VertAlign ; CTextProp . prototype [ "get_HighLight" ] = CTextProp . prototype . get _HighLight ; CTextProp . prototype [ "get_Spacing" ] = CTextProp . prototype . get _Spacing ; CTextProp . prototype [ "get_DStrikeout" ] =
CTextProp . prototype . get _DStrikeout ; CTextProp . prototype [ "get_Caps" ] = CTextProp . prototype . get _Caps ; CTextProp . prototype [ "get_SmallCaps" ] = CTextProp . prototype . get _SmallCaps ; CTextProp . prototype [ "get_Lang" ] = CTextProp . prototype . get _Lang ; CTextProp . prototype [ "put_Bold" ] = CTextProp . prototype . put _Bold = function ( v ) { this . Bold = v } ; CTextProp . prototype [ "put_Italic" ] = CTextProp . prototype . put _Italic = function ( v ) { this . Italic = v } ; CTextProp . prototype [ "put_Underline" ] = CTextProp . prototype . put _Underline = function ( v ) { this . Underline =
v } ; CTextProp . prototype [ "put_Strikeout" ] = CTextProp . prototype . put _Strikeout = function ( v ) { this . Strikeout = v } ; CTextProp . prototype [ "put_FontFamily" ] = CTextProp . prototype . put _FontFamily = function ( v ) { this . FontFamily = v } ; CTextProp . prototype [ "put_FontSize" ] = CTextProp . prototype . put _FontSize = function ( v ) { this . FontSize = v } ; CTextProp . prototype [ "put_Color" ] = CTextProp . prototype . put _Color = function ( v ) { this . Color = v } ; CTextProp . prototype [ "put_VertAlign" ] = CTextProp . prototype . put _VertAlign = function ( v ) { this . VertAlign = v } ; CTextProp . prototype [ "put_HighLight" ] =
CTextProp . prototype . put _HighLight = function ( v ) { this . HighLight = v } ; CTextProp . prototype [ "put_Spacing" ] = CTextProp . prototype . put _Spacing = function ( v ) { this . Spacing = v } ; CTextProp . prototype [ "put_DStrikeout" ] = CTextProp . prototype . put _DStrikeout = function ( v ) { this . DStrikeout = v } ; CTextProp . prototype [ "put_Caps" ] = CTextProp . prototype . put _Caps = function ( v ) { this . Caps = v } ; CTextProp . prototype [ "put_SmallCaps" ] = CTextProp . prototype . put _SmallCaps = function ( v ) { this . SmallCaps = v } ; CTextProp . prototype [ "put_Lang" ] = CTextProp . prototype . put _Lang =
function ( v ) { this . Lang = v } ; window [ "Asc" ] [ "CTextProp" ] = window [ "Asc" ] . CTextProp = CTextProp ; function CParagraphAndTextProp ( paragraphProp , textProp ) { this . ParaPr = undefined != paragraphProp && null != paragraphProp ? new CParagraphPropEx ( paragraphProp ) : null ; this . TextPr = undefined != textProp && null != textProp ? new CTextProp ( textProp ) : null } CParagraphAndTextProp . prototype . get _ParaPr = function ( ) { return this . ParaPr } ; CParagraphAndTextProp . prototype . get _TextPr = function ( ) { return this . TextPr } ; window [ "Asc" ] [ "CParagraphAndTextProp" ] =
window [ "Asc" ] . CParagraphAndTextProp = CParagraphAndTextProp ; CParagraphAndTextProp . prototype [ "get_ParaPr" ] = CParagraphAndTextProp . prototype . get _ParaPr ; CParagraphAndTextProp . prototype [ "get_TextPr" ] = CParagraphAndTextProp . prototype . get _TextPr ; function CHeader ( obj ) { if ( obj ) { this . headerText = undefined != obj . headerText ? obj . headerText : null ; this . pageNumber = undefined != obj . pageNumber ? obj . pageNumber : null ; this . X = undefined != obj . X ? obj . X : null ; this . Y = undefined != obj . Y ? obj . Y : null ; this . level = undefined != obj . level ? obj . level :
null } else { this . headerText = null ; this . pageNumber = null ; this . X = null ; this . Y = null ; this . level = null } } CHeader . prototype . get _headerText = function ( ) { return this . headerText } ; CHeader . prototype . get _pageNumber = function ( ) { return this . pageNumber } ; CHeader . prototype . get _X = function ( ) { return this . X } ; CHeader . prototype . get _Y = function ( ) { return this . Y } ; CHeader . prototype . get _Level = function ( ) { return this . level } ; window [ "Asc" ] [ "CHeader" ] = window [ "Asc" ] . CHeader = CHeader ; CHeader . prototype [ "get_headerText" ] = CHeader . prototype . get _headerText ;
CHeader . prototype [ "get_pageNumber" ] = CHeader . prototype . get _pageNumber ; CHeader . prototype [ "get_X" ] = CHeader . prototype . get _X ; CHeader . prototype [ "get_Y" ] = CHeader . prototype . get _Y ; CHeader . prototype [ "get_Level" ] = CHeader . prototype . get _Level ; function CTableOfContentsPr ( ) { this . Hyperlink = true ; this . OutlineStart = 1 ; this . OutlineEnd = 9 ; this . Styles = [ ] ; this . PageNumbers = true ; this . RightTab = true ; this . TabLeader = undefined ; this . StylesType = Asc . c _oAscTOCStylesType . Current ; this . ComplexField = null ; this . Caption = undefined ; this . IsIncludeLabelAndNumber =
true } CTableOfContentsPr . prototype . InitFromTOCInstruction = function ( oComplexField ) { if ( ! oComplexField ) return ; var oInstruction = oComplexField . GetInstruction ( ) ; if ( ! oInstruction ) return ; this . Hyperlink = oInstruction . IsHyperlinks ( ) ; this . OutlineStart = oInstruction . GetHeadingRangeStart ( ) ; this . OutlineEnd = oInstruction . GetHeadingRangeEnd ( ) ; this . Styles = oInstruction . GetStylesArray ( ) ; this . PageNumbers = ! oInstruction . IsSkipPageRefLvl ( ) ; this . RightTab = "" === oInstruction . GetSeparator ( ) ; var oBeginChar = oComplexField . GetBeginChar ( ) ;
if ( oBeginChar && oBeginChar . GetRun ( ) && oBeginChar . GetRun ( ) . GetParagraph ( ) ) { var oTabs = oBeginChar . GetRun ( ) . GetParagraph ( ) . GetParagraphTabs ( ) ; if ( oTabs . Tabs . length > 0 ) this . TabLeader = oTabs . Tabs [ oTabs . Tabs . length - 1 ] . Leader } this . ComplexField = oComplexField ; if ( oInstruction . IsTableOfFigures ( ) ) { this . Caption = oInstruction . Caption || oInstruction . CaptionOnlyText ; if ( ! this . Caption ) this . Caption = null ; this . IsIncludeLabelAndNumber = this . CaptionOnlyText === undefined } } ; CTableOfContentsPr . prototype . InitFromSdtTOC = function ( oSdtTOC ) { this . ComplexField =
oSdtTOC } ; CTableOfContentsPr . prototype . CheckStylesType = function ( oStyles ) { if ( oStyles ) if ( this . Caption !== undefined ) this . StylesType = oStyles . GetTOFStyleType ( ) ; else this . StylesType = oStyles . GetTOCStylesType ( ) } ; CTableOfContentsPr . prototype . get _Hyperlink = function ( ) { return this . Hyperlink } ; CTableOfContentsPr . prototype . put _Hyperlink = function ( isHyperlink ) { this . Hyperlink = isHyperlink } ; CTableOfContentsPr . prototype . get _OutlineStart = function ( ) { return this . OutlineStart } ; CTableOfContentsPr . prototype . get _OutlineEnd = function ( ) { return this . OutlineEnd } ;
CTableOfContentsPr . prototype . put _OutlineRange = function ( nStart , nEnd ) { this . OutlineStart = nStart ; this . OutlineEnd = nEnd } ; CTableOfContentsPr . prototype . get _StylesCount = function ( ) { return this . Styles . length } ; CTableOfContentsPr . prototype . get _StyleName = function ( nIndex ) { if ( nIndex < 0 || nIndex >= this . Styles . length ) return "" ; return this . Styles [ nIndex ] . Name } ; CTableOfContentsPr . prototype . get _StyleLevel = function ( nIndex ) { if ( nIndex < 0 || nIndex >= this . Styles . length ) return - 1 ; return this . Styles [ nIndex ] . Lvl } ; CTableOfContentsPr . prototype . get _Styles =
function ( ) { return this . Styles } ; CTableOfContentsPr . prototype . clear _Styles = function ( ) { this . Styles = [ ] } ; CTableOfContentsPr . prototype . add _Style = function ( sName , nLvl ) { this . Styles . push ( { Name : sName , Lvl : nLvl } ) } ; CTableOfContentsPr . prototype . put _ShowPageNumbers = function ( isShow ) { this . PageNumbers = isShow } ; CTableOfContentsPr . prototype . get _ShowPageNumbers = function ( ) { return this . PageNumbers } ; CTableOfContentsPr . prototype . put _RightAlignTab = function ( isRightTab ) { this . RightTab = isRightTab } ; CTableOfContentsPr . prototype . get _RightAlignTab =
function ( ) { return this . RightTab } ; CTableOfContentsPr . prototype . put _TabLeader = function ( nTabLeader ) { this . TabLeader = nTabLeader } ; CTableOfContentsPr . prototype . get _TabLeader = function ( ) { return this . TabLeader } ; CTableOfContentsPr . prototype . get _StylesType = function ( ) { return this . StylesType } ; CTableOfContentsPr . prototype . put _StylesType = function ( nType ) { this . StylesType = nType } ; CTableOfContentsPr . prototype . get _InternalClass = function ( ) { return this . ComplexField } ; CTableOfContentsPr . prototype . put _Caption = function ( sCaption ) { this . Caption =
sCaption } ; CTableOfContentsPr . prototype . get _Caption = function ( ) { return this . Caption } ; CTableOfContentsPr . prototype . get _CaptionForInstruction = function ( ) { if ( typeof this . Caption === "string" ) { var aSplit = this . Caption . split ( " " ) ; var sResult = aSplit [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplit . length ; ++ nIdx ) sResult += "_" + aSplit [ nIdx ] ; return sResult } return this . Caption } ; CTableOfContentsPr . prototype . put _IncludeLabelAndNumber = function ( bInclude ) { this . IsIncludeLabelAndNumber = bInclude } ; CTableOfContentsPr . prototype . get _IncludeLabelAndNumber =
function ( ) { return this . IsIncludeLabelAndNumber } ; window [ "Asc" ] [ "CTableOfContentsPr" ] = window [ "Asc" ] . CTableOfContentsPr = CTableOfContentsPr ; CTableOfContentsPr . prototype [ "get_Hyperlink" ] = CTableOfContentsPr . prototype . get _Hyperlink ; CTableOfContentsPr . prototype [ "put_Hyperlink" ] = CTableOfContentsPr . prototype . put _Hyperlink ; CTableOfContentsPr . prototype [ "get_OutlineStart" ] = CTableOfContentsPr . prototype . get _OutlineStart ; CTableOfContentsPr . prototype [ "get_OutlineEnd" ] = CTableOfContentsPr . prototype . get _OutlineEnd ; CTableOfContentsPr . prototype [ "put_OutlineRange" ] =
CTableOfContentsPr . prototype . put _OutlineRange ; CTableOfContentsPr . prototype [ "get_StylesCount" ] = CTableOfContentsPr . prototype . get _StylesCount ; CTableOfContentsPr . prototype [ "get_StyleName" ] = CTableOfContentsPr . prototype . get _StyleName ; CTableOfContentsPr . prototype [ "get_StyleLevel" ] = CTableOfContentsPr . prototype . get _StyleLevel ; CTableOfContentsPr . prototype [ "clear_Styles" ] = CTableOfContentsPr . prototype . clear _Styles ; CTableOfContentsPr . prototype [ "add_Style" ] = CTableOfContentsPr . prototype . add _Style ; CTableOfContentsPr . prototype [ "put_ShowPageNumbers" ] =
CTableOfContentsPr . prototype . put _ShowPageNumbers ; CTableOfContentsPr . prototype [ "get_ShowPageNumbers" ] = CTableOfContentsPr . prototype . get _ShowPageNumbers ; CTableOfContentsPr . prototype [ "put_RightAlignTab" ] = CTableOfContentsPr . prototype . put _RightAlignTab ; CTableOfContentsPr . prototype [ "get_RightAlignTab" ] = CTableOfContentsPr . prototype . get _RightAlignTab ; CTableOfContentsPr . prototype [ "get_TabLeader" ] = CTableOfContentsPr . prototype . get _TabLeader ; CTableOfContentsPr . prototype [ "put_TabLeader" ] = CTableOfContentsPr . prototype . put _TabLeader ;
CTableOfContentsPr . prototype [ "get_StylesType" ] = CTableOfContentsPr . prototype . get _StylesType ; CTableOfContentsPr . prototype [ "put_StylesType" ] = CTableOfContentsPr . prototype . put _StylesType ; CTableOfContentsPr . prototype [ "get_InternalClass" ] = CTableOfContentsPr . prototype . get _InternalClass ; CTableOfContentsPr . prototype [ "put_Caption" ] = CTableOfContentsPr . prototype . put _Caption ; CTableOfContentsPr . prototype [ "get_Caption" ] = CTableOfContentsPr . prototype . get _Caption ; CTableOfContentsPr . prototype [ "put_IncludeLabelAndNumber" ] =
CTableOfContentsPr . prototype . put _IncludeLabelAndNumber ; CTableOfContentsPr . prototype [ "get_IncludeLabelAndNumber" ] = CTableOfContentsPr . prototype . get _IncludeLabelAndNumber ; function CAscStyle ( ) { this . Name = "" ; this . Type = Asc . c _oAscStyleType . Paragraph ; this . qFormat = undefined ; this . uiPriority = undefined ; this . StyleId = "" } CAscStyle . prototype . get _Name = function ( ) { return this . Name } ; CAscStyle . prototype . put _Name = function ( sName ) { this . Name = sName } ; CAscStyle . prototype . get _Type = function ( ) { return this . Type } ; CAscStyle . prototype . put _Type =
function ( nType ) { this . Type = nType } ; CAscStyle . prototype . get _QFormat = function ( ) { return this . qFormat } ; CAscStyle . prototype . put _QFormat = function ( isQFormat ) { this . qFormat = isQFormat } ; CAscStyle . prototype . get _UIPriority = function ( ) { return this . uiPriority } ; CAscStyle . prototype . put _UIPriority = function ( nPriority ) { this . uiPriority = nPriority } ; CAscStyle . prototype . get _StyleId = function ( ) { return this . StyleId } ; CAscStyle . prototype . get _TranslatedName = function ( ) { if ( typeof this . Name === "string" && this . Name . length > 0 ) return AscCommon . translateManager . getValue ( this . Name ) ;
return this . Name } ; window [ "Asc" ] [ "CAscStyle" ] = window [ "Asc" ] . CAscStyle = CAscStyle ; CAscStyle . prototype [ "get_Name" ] = CAscStyle . prototype . get _Name ; CAscStyle . prototype [ "put_Name" ] = CAscStyle . prototype . put _Name ; CAscStyle . prototype [ "get_Type" ] = CAscStyle . prototype . get _Type ; CAscStyle . prototype [ "put_Type" ] = CAscStyle . prototype . put _Type ; CAscStyle . prototype [ "get_QFormat" ] = CAscStyle . prototype . get _QFormat ; CAscStyle . prototype [ "put_QFormat" ] = CAscStyle . prototype . put _QFormat ; CAscStyle . prototype [ "get_UIPriority" ] = CAscStyle . prototype . get _UIPriority ;
CAscStyle . prototype [ "put_UIPriority" ] = CAscStyle . prototype . put _UIPriority ; CAscStyle . prototype [ "get_StyleId" ] = CAscStyle . prototype . get _StyleId ; CAscStyle . prototype [ "get_TranslatedName" ] = CAscStyle . prototype . get _TranslatedName ; function CAscNumbering ( ) { this . NumId = "" ; this . Lvl = new Array ( 9 ) ; for ( var nLvl = 0 ; nLvl < 9 ; ++ nLvl ) this . Lvl [ nLvl ] = new CAscNumberingLvl ( nLvl ) } CAscNumbering . prototype . get _InternalId = function ( ) { return this . NumId } ; CAscNumbering . prototype . get _Lvl = function ( nLvl ) { if ( nLvl < 0 ) return this . Lvl [ 0 ] ; else if ( nLvl >
8 ) return this . Lvl [ 8 ] ; else if ( ! this . Lvl [ nLvl ] ) return this . Lvl [ 0 ] ; return this . Lvl [ nLvl ] } ; window [ "Asc" ] [ "CAscNumbering" ] = window [ "Asc" ] . CAscNumbering = CAscNumbering ; CAscNumbering . prototype [ "get_InternalId" ] = CAscNumbering . prototype . get _InternalId ; CAscNumbering . prototype [ "get_Lvl" ] = CAscNumbering . prototype . get _Lvl ; function CAscNumberingLvlText ( Type , Value ) { this . Type = undefined !== Type ? Type : Asc . c _oAscNumberingLvlTextType . Text ; this . Value = undefined !== Value ? Value : "" } CAscNumberingLvlText . prototype . get _Type = function ( ) { return this . Type } ;
CAscNumberingLvlText . prototype . put _Type = function ( nType ) { this . Type = nType } ; CAscNumberingLvlText . prototype . get _Value = function ( ) { return this . Value } ; CAscNumberingLvlText . prototype . put _Value = function ( vVal ) { this . Value = vVal } ; window [ "Asc" ] [ "CAscNumberingLvlText" ] = window [ "Asc" ] . CAscNumberingLvlText = CAscNumberingLvlText ; CAscNumberingLvlText . prototype [ "get_Type" ] = CAscNumberingLvlText . prototype . get _Type ; CAscNumberingLvlText . prototype [ "put_Type" ] = CAscNumberingLvlText . prototype . put _Type ; CAscNumberingLvlText . prototype [ "get_Value" ] =
CAscNumberingLvlText . prototype . get _Value ; CAscNumberingLvlText . prototype [ "put_Value" ] = CAscNumberingLvlText . prototype . put _Value ; function CAscNumberingLvl ( nLvlNum ) { this . LvlNum = nLvlNum ; this . Format = Asc . c _oAscNumberingFormat . Bullet ; this . Text = [ ] ; this . TextPr = new AscCommonWord . CTextPr ; this . ParaPr = new AscCommonWord . CParaPr ; this . Start = 1 ; this . Restart = - 1 ; this . Suff = Asc . c _oAscNumberingSuff . Tab ; this . Align = AscCommon . align _Left } CAscNumberingLvl . prototype . get _LvlNum = function ( ) { return this . LvlNum } ; CAscNumberingLvl . prototype . get _Format =
function ( ) { return this . Format } ; CAscNumberingLvl . prototype . put _Format = function ( nFormat ) { this . Format = nFormat } ; CAscNumberingLvl . prototype . get _Text = function ( ) { return this . Text } ; CAscNumberingLvl . prototype . put _Text = function ( arrText ) { this . Text = arrText } ; CAscNumberingLvl . prototype . get _TextPr = function ( ) { return this . TextPr } ; CAscNumberingLvl . prototype . get _ParaPr = function ( ) { return this . ParaPr } ; CAscNumberingLvl . prototype . get _Start = function ( ) { return this . Start } ; CAscNumberingLvl . prototype . put _Start = function ( nStart ) { this . Start =
nStart } ; CAscNumberingLvl . prototype . get _Restart = function ( ) { return this . Restart } ; CAscNumberingLvl . prototype . put _Restart = function ( nRestart ) { this . Restart = nRestart } ; CAscNumberingLvl . prototype . get _Suff = function ( ) { return this . Suff } ; CAscNumberingLvl . prototype . put _Suff = function ( nSuff ) { this . Suff = nSuff } ; CAscNumberingLvl . prototype . get _Align = function ( ) { return this . Align } ; CAscNumberingLvl . prototype . put _Align = function ( nAlign ) { this . Align = nAlign } ; window [ "Asc" ] [ "CAscNumberingLvl" ] = window [ "Asc" ] . CAscNumberingLvl = CAscNumberingLvl ;
CAscNumberingLvl . prototype [ "get_LvlNum" ] = CAscNumberingLvl . prototype . get _LvlNum ; CAscNumberingLvl . prototype [ "get_Format" ] = CAscNumberingLvl . prototype . get _Format ; CAscNumberingLvl . prototype [ "put_Format" ] = CAscNumberingLvl . prototype . put _Format ; CAscNumberingLvl . prototype [ "get_Text" ] = CAscNumberingLvl . prototype . get _Text ; CAscNumberingLvl . prototype [ "put_Text" ] = CAscNumberingLvl . prototype . put _Text ; CAscNumberingLvl . prototype [ "get_TextPr" ] = CAscNumberingLvl . prototype . get _TextPr ; CAscNumberingLvl . prototype [ "get_ParaPr" ] =
CAscNumberingLvl . prototype . get _ParaPr ; CAscNumberingLvl . prototype [ "get_Start" ] = CAscNumberingLvl . prototype . get _Start ; CAscNumberingLvl . prototype [ "put_Start" ] = CAscNumberingLvl . prototype . put _Start ; CAscNumberingLvl . prototype [ "get_Restart" ] = CAscNumberingLvl . prototype . get _Restart ; CAscNumberingLvl . prototype [ "put_Restart" ] = CAscNumberingLvl . prototype . put _Restart ; CAscNumberingLvl . prototype [ "get_Suff" ] = CAscNumberingLvl . prototype . get _Suff ; CAscNumberingLvl . prototype [ "put_Suff" ] = CAscNumberingLvl . prototype . put _Suff ;
CAscNumberingLvl . prototype [ "get_Align" ] = CAscNumberingLvl . prototype . get _Align ; CAscNumberingLvl . prototype [ "put_Align" ] = CAscNumberingLvl . prototype . put _Align ; function CAscWatermarkProperties ( ) { this . Type = Asc . c _oAscWatermarkType . None ; this . Text = null ; this . TextPr = null ; this . Opacity = null ; this . IsDiagonal = null ; this . ImageUrl = null ; this . Scale = null ; this . DivId = null ; this . Api = null } window [ "Asc" ] [ "CAscWatermarkProperties" ] = window [ "Asc" ] . CAscWatermarkProperties = CAscWatermarkProperties ; CAscWatermarkProperties . prototype [ "put_Api" ] =
CAscWatermarkProperties . prototype . put _Api = function ( v ) { this . Api = v } ; CAscWatermarkProperties . prototype [ "put_Type" ] = CAscWatermarkProperties . prototype . put _Type = function ( v ) { this . Type = v } ; CAscWatermarkProperties . prototype [ "get_Type" ] = CAscWatermarkProperties . prototype . get _Type = function ( ) { return this . Type } ; CAscWatermarkProperties . prototype [ "put_Text" ] = CAscWatermarkProperties . prototype . put _Text = function ( v ) { this . Text = v } ; CAscWatermarkProperties . prototype [ "get_Text" ] = CAscWatermarkProperties . prototype . get _Text =
function ( ) { return this . Text } ; CAscWatermarkProperties . prototype [ "put_TextPr" ] = CAscWatermarkProperties . prototype . put _TextPr = function ( v ) { this . TextPr = v } ; CAscWatermarkProperties . prototype [ "get_TextPr" ] = CAscWatermarkProperties . prototype . get _TextPr = function ( ) { return this . TextPr } ; CAscWatermarkProperties . prototype [ "put_Opacity" ] = CAscWatermarkProperties . prototype . put _Opacity = function ( v ) { this . Opacity = v } ; CAscWatermarkProperties . prototype [ "get_Opacity" ] = CAscWatermarkProperties . prototype . get _Opacity = function ( ) { return this . Opacity } ;
CAscWatermarkProperties . prototype [ "put_IsDiagonal" ] = CAscWatermarkProperties . prototype . put _IsDiagonal = function ( v ) { this . IsDiagonal = v } ; CAscWatermarkProperties . prototype [ "get_IsDiagonal" ] = CAscWatermarkProperties . prototype . get _IsDiagonal = function ( ) { return this . IsDiagonal } ; CAscWatermarkProperties . prototype [ "put_ImageUrl" ] = CAscWatermarkProperties . prototype . put _ImageUrl = function ( sUrl , token ) { var _this = this ; if ( ! _this . Api ) return ; AscCommon . sendImgUrls ( _this . Api , [ sUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !==
"error" ) { var url = AscCommon . g _oDocumentUrls . imagePath2Local ( data [ 0 ] . path ) ; _this . Api . ImageLoader . LoadImagesWithCallback ( [ AscCommon . getFullImageSrc2 ( url ) ] , function ( ) { _this . ImageUrl = url ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ; _this . Api . sendEvent ( "asc_onWatermarkImageLoaded" ) } ) } } , false , undefined , token ) } ; CAscWatermarkProperties . prototype [ "put_ImageUrl2" ] = CAscWatermarkProperties . prototype . put _ImageUrl2 = function ( sUrl ) { this . ImageUrl = sUrl } ; CAscWatermarkProperties . prototype [ "get_ImageUrl" ] =
CAscWatermarkProperties . prototype . get _ImageUrl = function ( ) { return this . ImageUrl } ; CAscWatermarkProperties . prototype [ "put_Scale" ] = CAscWatermarkProperties . prototype . put _Scale = function ( v ) { this . Scale = v } ; CAscWatermarkProperties . prototype [ "get_Scale" ] = CAscWatermarkProperties . prototype . get _Scale = function ( ) { return this . Scale } ; CAscWatermarkProperties . prototype [ "put_DivId" ] = CAscWatermarkProperties . prototype . put _DivId = function ( v ) { this . DivId = v ; this . drawTexture ( ) } ; CAscWatermarkProperties . prototype [ "updateView" ] =
CAscWatermarkProperties . prototype . updateView = function ( v ) { this . drawTexture ( ) } ; CAscWatermarkProperties . prototype [ "showFileDialog" ] = CAscWatermarkProperties . prototype . showFileDialog = function ( ) { if ( ! this . Api || ! this . DivId ) return ; var t = this . Api ; var _this = this ; AscCommon . ShowImageFileDialog ( t . documentId , t . documentUserId , t . CoAuthoringApi . get _jwt ( ) , function ( error , files ) { if ( Asc . c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ; else { t . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction ,
Asc . c _oAscAsyncAction . UploadImage ) ; AscCommon . UploadImageFiles ( files , t . documentId , t . documentUserId , t . CoAuthoringApi . get _jwt ( ) , function ( error , urls ) { if ( Asc . c _oAscError . ID . No !== error ) { t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ; t . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } else t . ImageLoader . LoadImagesWithCallback ( urls , function ( ) { if ( urls . length > 0 ) { _this . ImageUrl = urls [ 0 ] ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ;
t . sendEvent ( "asc_onWatermarkImageLoaded" ) } t . sync _EndAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } ) } ) } } , function ( error ) { if ( Asc . c _oAscError . ID . No !== error ) t . sendEvent ( "asc_onError" , error , Asc . c _oAscError . Level . NoCritical ) ; t . sync _StartAction ( Asc . c _oAscAsyncActionType . BlockInteraction , Asc . c _oAscAsyncAction . UploadImage ) } ) } ; CAscWatermarkProperties . prototype [ "loadImageUrl" ] = CAscWatermarkProperties . prototype . loadImageUrl = function ( sUrl , token ) { var _this = this ; if ( ! _this . Api ) return ;
AscCommon . sendImgUrls ( _this . Api , [ sUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) _this . ImageLoader . LoadImagesWithCallback ( [ data [ 0 ] . url ] , function ( ) { _this . ImageUrl = data [ 0 ] . url ; _this . Type = Asc . c _oAscWatermarkType . Image ; _this . drawTexture ( ) ; _this . sendEvent ( "asc_onWatermarkImageLoaded" ) } ) } , false , undefined , token ) } ; CAscWatermarkProperties . prototype [ "drawTexture" ] = CAscWatermarkProperties . prototype . drawTexture = function ( ) { if ( ! this . ImageUrl || ! this . Api ) return ; var oDiv = document . getElementById ( this . DivId ) ;
if ( ! oDiv ) return ; var aChildren = oDiv . children ; var oCanvas = null ; for ( var i = 0 ; i < aChildren . length ; ++ i ) if ( aChildren [ i ] . nodeName && aChildren [ i ] . nodeName . toUpperCase ( ) === "CANVAS" ) { oCanvas = aChildren [ i ] ; break } var nWidth = oDiv . clientWidth ; var nHeight = oDiv . clientHeight ; if ( null === oCanvas ) { oCanvas = document . createElement ( "canvas" ) ; oCanvas . width = parseInt ( nWidth ) ; oCanvas . height = parseInt ( nHeight ) ; oDiv . appendChild ( oCanvas ) } var oContext = oCanvas . getContext ( "2d" ) ; oContext . clearRect ( 0 , 0 , oCanvas . width , oCanvas . height ) ; var _img =
this . Api . ImageLoader . map _image _index [ AscCommon . getFullImageSrc2 ( this . ImageUrl ) ] ; if ( _img != undefined && _img . Image != null && _img . Status != AscFonts . ImageLoadStatus . Loading ) { var _x = 0 ; var _y = 0 ; var _w = Math . max ( _img . Image . width , 1 ) ; var _h = Math . max ( _img . Image . height , 1 ) ; var dAspect1 = nWidth / nHeight ; var dAspect2 = _w / _h ; _w = nWidth ; _h = nHeight ; if ( dAspect1 >= dAspect2 ) { _w = dAspect2 * nHeight ; _x = ( nWidth - _w ) / 2 } else { _h = _w / dAspect2 ; _y = ( nHeight - _h ) / 2 } oContext . drawImage ( _img . Image , _x , _y , _w , _h ) } else if ( ! _img || ! _img . Image ) { oContext . lineWidth =
1 ; oContext . beginPath ( ) ; oContext . moveTo ( 0 , 0 ) ; oContext . lineTo ( nWidth , nHeight ) ; oContext . moveTo ( nWidth , 0 ) ; oContext . lineTo ( 0 , nHeight ) ; oContext . strokeStyle = "#FF0000" ; oContext . stroke ( ) ; oContext . beginPath ( ) ; oContext . moveTo ( 0 , 0 ) ; oContext . lineTo ( nWidth , 0 ) ; oContext . lineTo ( nWidth , nHeight ) ; oContext . lineTo ( 0 , nHeight ) ; oContext . closePath ( ) ; oContext . strokeStyle = "#000000" ; oContext . stroke ( ) ; oContext . beginPath ( ) } } ; function CAscCaptionProperties ( ) { this . Name = null ; this . Additional = null ; this . Label = null ; this . Before = false ;
this . ExcludeLabel = false ; this . Format = Asc . c _oAscNumberingFormat . Decimal ; this . IncludeChapterNumber = false ; this . HeadingLvl = null ; this . Separator = ":" ; this . Document = null } function CAscDateTime ( ) { this . Format = null ; this . Update = true ; this . Lang = null } CAscDateTime . prototype . get _Format = function ( ) { return this . Format } ; CAscDateTime . prototype . put _Format = function ( v ) { this . Format = v } ; CAscDateTime . prototype . get _Update = function ( ) { return this . Update } ; CAscDateTime . prototype . put _Update = function ( v ) { this . Update = v } ; CAscDateTime . prototype . get _Lang =
function ( ) { return this . Lang } ; CAscDateTime . prototype . put _Lang = function ( v ) { this . Lang = v } ; CAscDateTime . prototype . get _FormatsExamples = function ( ) { return [ "M/d/yyyy" , "dddd, MMMM d, yyyy" , "MMMM d, yyyy" , "M/d/yy" , "yyyy-MM-dd" , "d-MMM-yy" , "M.d.yyyy" , "MMM. d, yy" , "d MMMM yyyy" , "MMMM yy" , "MMM-yy" , "M/d/yyyy h:mm am/pm" , "M/d/yyyy h:mm:ss am/pm" , "h:mm am/pm" , "h:mm:ss am/pm" , "HH:mm" , "HH:mm:ss" ] } ; CAscDateTime . prototype . get _String = function ( sFormat , sDate , nLangId ) { if ( undefined === sFormat ) sFormat = this . Format ; if ( undefined ===
nLangId ) nLangId = this . Lang ; var oFormat = AscCommon . oNumFormatCache . get ( sFormat , AscCommon . NumFormatType . WordFieldDate ) ; if ( oFormat ) { var oCultureInfo = AscCommon . g _aCultureInfos [ nLangId ] ; if ( ! oCultureInfo ) oCultureInfo = AscCommon . g _aCultureInfos [ 1033 ] ; var oDateTime = sDate ? new Asc . cDate ( sDate ) : new Asc . cDate ; return oFormat . formatToWord ( oDateTime . getExcelDate ( ) + ( oDateTime . getHours ( ) * 60 * 60 + oDateTime . getMinutes ( ) * 60 + oDateTime . getSeconds ( ) ) / AscCommonExcel . c _sPerDay , 15 , oCultureInfo ) } return sDate } ; window [ "Asc" ] [ "CAscDateTime" ] =
window [ "Asc" ] . CAscDateTime = CAscDateTime ; CAscDateTime . prototype [ "get_Format" ] = CAscDateTime . prototype . get _Format ; CAscDateTime . prototype [ "put_Format" ] = CAscDateTime . prototype . put _Format ; CAscDateTime . prototype [ "get_Update" ] = CAscDateTime . prototype . get _Update ; CAscDateTime . prototype [ "put_Update" ] = CAscDateTime . prototype . put _Update ; CAscDateTime . prototype [ "get_Lang" ] = CAscDateTime . prototype . get _Lang ; CAscDateTime . prototype [ "put_Lang" ] = CAscDateTime . prototype . put _Lang ; CAscDateTime . prototype [ "get_FormatsExamples" ] =
CAscDateTime . prototype . get _FormatsExamples ; CAscDateTime . prototype [ "get_String" ] = CAscDateTime . prototype . get _String ; window [ "Asc" ] [ "CAscCaptionProperties" ] = window [ "Asc" ] . CAscCaptionProperties = CAscCaptionProperties ; var prot = CAscCaptionProperties . prototype ; prot . get _Name = prot [ "get_Name" ] = function ( ) { return this . Name } ; prot . get _Label = prot [ "get_Label" ] = function ( ) { if ( typeof this . Label === "string" ) { var aSplit = this . Label . split ( "_" ) ; var sResult = aSplit [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplit . length ; ++ nIdx ) sResult += " " + aSplit [ nIdx ] ;
return sResult } return this . Label } ; prot . get _Before = prot [ "get_Before" ] = function ( ) { return this . Before } ; prot . get _ExcludeLabel = prot [ "get_ExcludeLabel" ] = function ( ) { return this . ExcludeLabel } ; prot . get _Format = prot [ "get_Format" ] = function ( ) { return this . Format } ; prot . get _FormatGeneral = prot [ "get_FormatGeneral" ] = function ( ) { switch ( this . Format ) { case Asc . c _oAscNumberingFormat . UpperLetter : { return "ALPHABETIC" } case Asc . c _oAscNumberingFormat . LowerLetter : { return "alphabetic" } case Asc . c _oAscNumberingFormat . UpperRoman : { return "Roman" } case Asc . c _oAscNumberingFormat . LowerRoman : { return "roman" } default : { return "Arabic" } } } ;
prot . get _IncludeChapterNumber = prot [ "get_IncludeChapterNumber" ] = function ( ) { return this . IncludeChapterNumber } ; prot . get _HeadingLvl = prot [ "get_HeadingLvl" ] = function ( ) { return this . HeadingLvl } ; prot . get _Separator = prot [ "get_Separator" ] = function ( ) { return this . Separator } ; prot . get _Additional = prot [ "get_Additional" ] = function ( ) { return this . Additional } ; prot . put _Name = prot [ "put_Name" ] = function ( v ) { this . Name = v } ; prot . put _Label = prot [ "put_Label" ] = function ( v ) { this . Label = v } ; prot . put _Before = prot [ "put_Before" ] = function ( v ) { this . Before =
v } ; prot . put _ExcludeLabel = prot [ "put_ExcludeLabel" ] = function ( v ) { this . ExcludeLabel = v } ; prot . put _Format = prot [ "put_Format" ] = function ( v ) { this . Format = v } ; prot . put _IncludeChapterNumber = prot [ "put_IncludeChapterNumber" ] = function ( v ) { this . IncludeChapterNumber = v } ; prot . put _HeadingLvl = prot [ "put_HeadingLvl" ] = function ( v ) { this . HeadingLvl = v } ; prot . put _Separator = prot [ "put_Separator" ] = function ( v ) { this . Separator = v } ; prot . put _Additional = prot [ "put_Additional" ] = function ( v ) { this . Additional = v } ; prot . getSeqInstruction = function ( ) { var oComplexField =
new CFieldInstructionSEQ ; if ( this . Format ) oComplexField . SetGeneralSwitches ( [ this . Format ] ) ; if ( this . Label ) oComplexField . SetId ( this . getLabelForInstruction ( ) ) ; if ( AscFormat . isRealNumber ( this . HeadingLvl ) ) oComplexField . SetS ( this . HeadingLvl ) ; return oComplexField } ; prot . getLabelForInstruction = function ( ) { if ( typeof this . Label === "string" ) { var aSplited = this . Label . split ( " " ) ; var sResult = aSplited [ 0 ] ; for ( var nIdx = 1 ; nIdx < aSplited . length ; ++ nIdx ) sResult += "_" + aSplited [ nIdx ] ; return sResult } return "" } ; prot . getSeqInstructionLine =
function ( ) { return this . getSeqInstruction ( ) . ToString ( ) } ; prot . updateName = prot [ "updateName" ] = function ( ) { this . Name = "" ; if ( ! this . ExcludeLabel ) if ( typeof this . Label === "string" && this . Label . length > 0 ) this . Name += this . Label + " " ; if ( this . IncludeChapterNumber ) { this . Name += "1" ; if ( typeof this . Separator === "string" && this . Separator . length > 0 ) this . Name += this . Separator ; else this . Name += " " } this . Name += AscCommon . IntToNumberFormat ( 1 , this . Format ) } } ) ( window , undefined ) ; "use strict" ; var editor ;
( function ( window , undefined ) { var asc = window [ "Asc" ] ; var prot ; var c _oAscAdvancedOptionsAction = AscCommon . c _oAscAdvancedOptionsAction ; var c _oAscLockTypes = AscCommon . c _oAscLockTypes ; var CColor = AscCommon . CColor ; var g _oDocumentUrls = AscCommon . g _oDocumentUrls ; var sendCommand = AscCommon . sendCommand ; var parserHelp = AscCommon . parserHelp ; var g _oIdCounter = AscCommon . g _oIdCounter ; var g _oTableId = AscCommon . g _oTableId ; var c _oAscLockTypeElem = AscCommonExcel . c _oAscLockTypeElem ; var c _oAscError = asc . c _oAscError ; var c _oAscFileType =
asc . c _oAscFileType ; var c _oAscAsyncAction = asc . c _oAscAsyncAction ; var c _oAscAdvancedOptionsID = asc . c _oAscAdvancedOptionsID ; var c _oAscAsyncActionType = asc . c _oAscAsyncActionType ; var History = null ; function spreadsheet _api ( config ) { AscCommon . baseEditorsApi . call ( this , config , AscCommon . c _oEditorId . Spreadsheet ) ; this . topLineEditorName = config [ "id-input" ] || "" ; this . topLineEditorElement = null ; this . controller = null ; this . handlers = new AscCommonExcel . asc _CHandlersList ; this . fontRenderingMode = Asc . c _oAscFontRenderingModeType . hintingAndSubpixeling ;
this . wb = null ; this . wbModel = null ; this . tmpLCID = null ; this . tmpDecimalSeparator = null ; this . tmpGroupSeparator = null ; this . tmpLocalization = null ; this . defaultLanguage = 1033 ; this . spellcheckState = new AscCommonExcel . CSpellcheckState ; this . documentFormatSave = c _oAscFileType . XLSX ; this . _gui _control _colors = null ; this . GuiControlColorsMap = null ; this . IsSendStandartColors = false ; this . asyncMethodCallback = undefined ; this . FontLoadWaitComplete = false ; this . oRedoObjectParamNative = null ; this . collaborativeEditing = null ; this . autoSaveGapRealTime =
30 ; this . isStartAddShape = false ; this . shapeElementId = null ; this . textArtElementId = null ; this . frozenPaneBorderType = Asc . c _oAscFrozenPaneBorderType . shadow ; this . styleThumbnailWidth = 112 ; this . styleThumbnailHeight = 38 ; this . formulasList = null ; this . openingEnd = { bin : false , xlsxStart : false , xlsx : false , data : null } ; if ( window . editor == undefined ) window . editorCell = this ; this . _init ( ) ; return this } spreadsheet _api . prototype = Object . create ( AscCommon . baseEditorsApi . prototype ) ; spreadsheet _api . prototype . constructor = spreadsheet _api ; spreadsheet _api . prototype . sendEvent =
function ( ) { this . sendInternalEvent . apply ( this , arguments ) ; this . handlers . trigger . apply ( this . handlers , arguments ) } ; spreadsheet _api . prototype . _init = function ( ) { AscCommon . baseEditorsApi . prototype . _init . call ( this ) ; this . topLineEditorElement = document . getElementById ( this . topLineEditorName ) ; asc [ "editor" ] = asc [ "editor" ] || this } ; spreadsheet _api . prototype . _loadSdkImages = function ( ) { var aImages = AscCommonExcel . getIconsForLoad ( ) ; aImages . push ( AscCommonExcel . sFrozenImageUrl , AscCommonExcel . sFrozenImageRotUrl ) ; this . ImageLoader . bIsAsyncLoadDocumentImages =
false ; this . ImageLoader . LoadDocumentImages ( aImages ) ; this . ImageLoader . bIsAsyncLoadDocumentImages = true } ; spreadsheet _api . prototype . asc _CheckGuiControlColors = function ( ) { var arr _colors = new Array ( 10 ) ; var _count = arr _colors . length ; for ( var i = 0 ; i < _count ; ++ i ) { var color = AscCommonExcel . g _oColorManager . getThemeColor ( i ) ; arr _colors [ i ] = new CColor ( color . getR ( ) , color . getG ( ) , color . getB ( ) ) } var bIsSend = false ; if ( this . GuiControlColorsMap != null ) for ( var i = 0 ; i < _count ; ++ i ) { var _color1 = this . GuiControlColorsMap [ i ] ; var _color2 =
arr _colors [ i ] ; if ( _color1 . r !== _color2 . r || _color1 . g !== _color2 . g || _color1 . b !== _color2 . b ) { bIsSend = true ; break } } else { this . GuiControlColorsMap = new Array ( _count ) ; bIsSend = true } if ( bIsSend ) { for ( var i = 0 ; i < _count ; ++ i ) this . GuiControlColorsMap [ i ] = arr _colors [ i ] ; this . asc _SendControlColors ( ) } } ; spreadsheet _api . prototype . asc _SendControlColors = function ( ) { var standart _colors = null ; if ( ! this . IsSendStandartColors ) { var standartColors = AscCommon . g _oStandartColors ; var _c _s = standartColors . length ; standart _colors = new Array ( _c _s ) ;
for ( var i = 0 ; i < _c _s ; ++ i ) standart _colors [ i ] = new CColor ( standartColors [ i ] . R , standartColors [ i ] . G , standartColors [ i ] . B ) ; this . IsSendStandartColors = true } var _count = this . GuiControlColorsMap . length ; var _ret _array = new Array ( _count * 6 ) ; var _cur _index = 0 ; for ( var i = 0 ; i < _count ; ++ i ) { var basecolor = AscCommonExcel . g _oColorManager . getThemeColor ( i ) ; var aTints = AscCommonExcel . g _oThemeColorsDefaultModsSpreadsheet [ AscCommon . GetDefaultColorModsIndex ( basecolor . getR ( ) , basecolor . getG ( ) , basecolor . getB ( ) ) ] ; for ( var j = 0 , length = aTints . length ; j <
length ; ++ j ) { var tint = aTints [ j ] ; var color = AscCommonExcel . g _oColorManager . getThemeColor ( i , tint ) ; _ret _array [ _cur _index ] = new CColor ( color . getR ( ) , color . getG ( ) , color . getB ( ) ) ; _cur _index ++ } } this . asc _SendThemeColors ( _ret _array , standart _colors ) } ; spreadsheet _api . prototype . asc _getFunctionArgumentSeparator = function ( ) { return AscCommon . FormulaSeparators . functionArgumentSeparator } ; spreadsheet _api . prototype . asc _getCurrencySymbols = function ( ) { var result = { } ; for ( var key in AscCommon . g _aCultureInfos ) result [ key ] = AscCommon . g _aCultureInfos [ key ] . CurrencySymbol ;
return result } ; spreadsheet _api . prototype . asc _getLocaleExample = function ( format , value , culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; var numFormat = AscCommon . oNumFormatCache . get ( format ) ; var res ; if ( null == value ) { var ws = this . wbModel . getActiveWs ( ) ; var activeCell = ws . selectionRange . activeCell ; ws . _getCellNoEmpty ( activeCell . row , activeCell . col , function ( cell ) { if ( cell ) res = cell . getValueForExample ( numFormat , cultureInfo ) ; else res = "" } ) } else res = numFormat . formatToChart ( value ,
undefined , cultureInfo ) ; return res } ; spreadsheet _api . prototype . asc _convertNumFormatLocal2NumFormat = function ( format ) { var oFormat = new AscCommon . CellFormat ( format , undefined , true ) ; return oFormat . toString ( 0 , false ) } ; spreadsheet _api . prototype . asc _convertNumFormat2NumFormatLocal = function ( format ) { var oFormat = new AscCommon . CellFormat ( format , undefined , false ) ; return oFormat . toString ( 0 , true ) } ; spreadsheet _api . prototype . asc _getFormatCells = function ( info ) { var res = AscCommon . getFormatCells ( info ) ; if ( Asc . c _oAscNumFormatType . Custom ===
info . type ) { var unique = { } ; res . forEach ( function ( elem ) { unique [ elem ] = 1 } ) ; var wbNums = AscCommonExcel . g _StyleCache . getNumFormatStrings ( ) ; wbNums . forEach ( function ( elem ) { if ( ! unique [ elem ] ) { unique [ elem ] = 1 ; res . push ( elem ) } } ) } return res } ; spreadsheet _api . prototype . asc _getLocaleCurrency = function ( val ) { var cultureInfo = AscCommon . g _aCultureInfos [ val ] ; if ( ! cultureInfo ) cultureInfo = AscCommon . g _aCultureInfos [ 1033 ] ; return AscCommonExcel . getCurrencyFormat ( cultureInfo , 2 , true , true ) } ; spreadsheet _api . prototype . asc _getCurrentListType =
function ( ) { var ws = this . wb . getWorksheet ( ) ; var oParaPr ; if ( ws && ws . objectRender && ws . objectRender . controller ) oParaPr = ws . objectRender . controller . getParagraphParaPr ( ) ; return new AscCommon . asc _CListType ( AscFormat . fGetListTypeFromBullet ( oParaPr && oParaPr . Bullet ) ) } ; spreadsheet _api . prototype . asc _setLocale = function ( LCID , decimalSeparator , groupSeparator ) { if ( ! this . isLoadFullApi ) { this . tmpLCID = LCID ; this . tmpDecimalSeparator = decimalSeparator ; this . tmpGroupSeparator = groupSeparator ; return } if ( AscCommon . setCurrentCultureInfo ( LCID ,
decimalSeparator , groupSeparator ) ) { parserHelp . setDigitSeparator ( AscCommon . g _oDefaultCultureInfo . NumberDecimalSeparator ) ; if ( this . wbModel ) { AscCommon . oGeneralEditFormatCache . cleanCache ( ) ; AscCommon . oNumFormatCache . cleanCache ( ) ; this . wbModel . rebuildColors ( ) ; if ( this . isDocumentLoadComplete ) { AscCommon . checkCultureInfoFontPicker ( ) ; this . _loadFonts ( [ ] , function ( ) { this . _onUpdateAfterApplyChanges ( ) } ) } } } } ; spreadsheet _api . prototype . asc _getLocale = function ( ) { return this . isLoadFullApi ? AscCommon . g _oDefaultCultureInfo . LCID :
this . tmpLCID } ; spreadsheet _api . prototype . asc _getDecimalSeparator = function ( culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; return cultureInfo . NumberDecimalSeparator } ; spreadsheet _api . prototype . asc _getGroupSeparator = function ( culture ) { var cultureInfo = AscCommon . g _aCultureInfos [ culture ] || AscCommon . g _oDefaultCultureInfo ; return cultureInfo . NumberGroupSeparator } ; spreadsheet _api . prototype . asc _getFrozenPaneBorderType = function ( ) { return this . frozenPaneBorderType } ; spreadsheet _api . prototype . asc _setFrozenPaneBorderType =
function ( nType ) { if ( this . frozenPaneBorderType !== nType ) { this . frozenPaneBorderType = nType ; if ( this . wbModel ) this . asc _showWorksheet ( this . asc _getActiveWorksheetIndex ( ) ) } } ; spreadsheet _api . prototype . _openDocument = function ( data ) { this . wbModel = new AscCommonExcel . Workbook ( this . handlers , this ) ; this . initGlobalObjects ( this . wbModel ) ; AscFonts . IsCheckSymbols = true ; var oBinaryFileReader = new AscCommonExcel . BinaryFileReader ; oBinaryFileReader . Read ( data , this . wbModel ) ; AscFonts . IsCheckSymbols = false ; this . openingEnd . bin = true ; this . _onEndOpen ( ) } ;
spreadsheet _api . prototype . initGlobalObjectsNamedSheetView = function ( wbModel ) { } ; spreadsheet _api . prototype . initGlobalObjects = function ( wbModel ) { History . init ( wbModel ) ; AscCommonExcel . g _oUndoRedoCell = new AscCommonExcel . UndoRedoCell ( wbModel ) ; AscCommonExcel . g _oUndoRedoWorksheet = new AscCommonExcel . UndoRedoWoorksheet ( wbModel ) ; AscCommonExcel . g _oUndoRedoWorkbook = new AscCommonExcel . UndoRedoWorkbook ( wbModel ) ; AscCommonExcel . g _oUndoRedoCol = new AscCommonExcel . UndoRedoRowCol ( wbModel , false ) ; AscCommonExcel . g _oUndoRedoRow =
new AscCommonExcel . UndoRedoRowCol ( wbModel , true ) ; AscCommonExcel . g _oUndoRedoComment = new AscCommonExcel . UndoRedoComment ( wbModel ) ; AscCommonExcel . g _oUndoRedoAutoFilters = new AscCommonExcel . UndoRedoAutoFilters ( wbModel ) ; AscCommonExcel . g _oUndoRedoSparklines = new AscCommonExcel . UndoRedoSparklines ( wbModel ) ; AscCommonExcel . g _DefNameWorksheet = new AscCommonExcel . Worksheet ( wbModel , - 1 ) ; AscCommonExcel . g _oUndoRedoSharedFormula = new AscCommonExcel . UndoRedoSharedFormula ( wbModel ) ; AscCommonExcel . g _oUndoRedoLayout = new AscCommonExcel . UndoRedoRedoLayout ( wbModel ) ;
AscCommonExcel . g _oUndoRedoHeaderFooter = new AscCommonExcel . UndoRedoHeaderFooter ( wbModel ) ; AscCommonExcel . g _oUndoRedoArrayFormula = new AscCommonExcel . UndoRedoArrayFormula ( wbModel ) ; AscCommonExcel . g _oUndoRedoSortState = new AscCommonExcel . UndoRedoSortState ( wbModel ) ; AscCommonExcel . g _oUndoRedoSlicer = new AscCommonExcel . UndoRedoSlicer ( wbModel ) ; AscCommonExcel . g _oUndoRedoPivotTables = new AscCommonExcel . UndoRedoPivotTables ( wbModel ) ; AscCommonExcel . g _oUndoRedoPivotFields = new AscCommonExcel . UndoRedoPivotFields ( wbModel ) ;
this . initGlobalObjectsNamedSheetView ( wbModel ) } ; spreadsheet _api . prototype . asc _DownloadAs = function ( options ) { if ( ! this . canSave || this . isChartEditor || c _oAscAdvancedOptionsAction . None !== this . advancedOptionsAction ) return ; this . downloadAs ( c _oAscAsyncAction . DownloadAs , options ) } ; spreadsheet _api . prototype . _saveCheck = function ( ) { return ! this . isChartEditor && c _oAscAdvancedOptionsAction . None === this . advancedOptionsAction && ! this . isLongAction ( ) && ! this . asc _getIsTrackShape ( ) && ! this . isOpenedChartFrame && History . IsEndTransaction ( ) } ;
spreadsheet _api . prototype . _haveOtherChanges = function ( ) { return this . collaborativeEditing . haveOtherChanges ( ) } ; spreadsheet _api . prototype . _prepareSave = function ( isIdle ) { var tmpHandlers ; if ( isIdle ) { tmpHandlers = this . wbModel . handlers . handlers [ "asc_onError" ] ; this . wbModel . handlers . handlers [ "asc_onError" ] = null } if ( ! this . asc _closeCellEditor ( ) ) if ( isIdle ) this . asc _closeCellEditor ( true ) ; else return false ; if ( isIdle ) this . wbModel . handlers . handlers [ "asc_onError" ] = tmpHandlers ; return true } ; spreadsheet _api . prototype . _printDesktop =
function ( options ) { window . AscDesktopEditor _PrintOptions = options ; window [ "AscDesktopEditor" ] [ "Print" ] ( ) ; return true } ; spreadsheet _api . prototype . asc _ChangePrintArea = function ( type ) { var ws = this . wb . getWorksheet ( ) ; return ws . changePrintArea ( type ) } ; spreadsheet _api . prototype . asc _CanAddPrintArea = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . canAddPrintArea ( ) } ; spreadsheet _api . prototype . asc _SetPrintScale = function ( width , height , scale ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ;
var ws = this . wb . getWorksheet ( ) ; return ws . setPrintScale ( width , height , scale ) } ; spreadsheet _api . prototype . asc _Copy = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this , "Copy" ) ; return true } return AscCommon . g _clipboardBase . Button _Copy ( ) } ; spreadsheet _api . prototype . asc _Paste = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this , "Paste" ) ; return true } if ( ! AscCommon . g _clipboardBase . IsWorking ( ) ) return AscCommon . g _clipboardBase . Button _Paste ( ) ; return false } ; spreadsheet _api . prototype . asc _SpecialPaste =
function ( props ) { return AscCommon . g _specialPasteHelper . Special _Paste ( props ) } ; spreadsheet _api . prototype . asc _SpecialPasteData = function ( props ) { if ( this . canEdit ( ) ) this . wb . specialPasteData ( props ) } ; spreadsheet _api . prototype . asc _TextImport = function ( options , callback , bPaste ) { if ( this . canEdit ( ) ) { var text ; if ( bPaste ) text = AscCommon . g _specialPasteHelper . GetPastedData ( true ) ; else { var ws = this . wb . getWorksheet ( ) ; text = ws . getRangeText ( ) } if ( ! text ) { this . sendEvent ( "asc_onError" , c _oAscError . ID . NoDataToParse , c _oAscError . Level . NoCritical ) ;
callback ( false ) ; return } callback ( AscCommon . parseText ( text , options , true ) ) } } ; spreadsheet _api . prototype . asc _TextToColumns = function ( options ) { if ( this . canEdit ( ) ) { var ws = this . wb . getWorksheet ( ) ; var text = ws . getRangeText ( ) ; var specialPasteHelper = window [ "AscCommon" ] . g _specialPasteHelper ; if ( ! specialPasteHelper . specialPasteProps ) specialPasteHelper . specialPasteProps = new Asc . SpecialPasteProps ; specialPasteHelper . specialPasteProps . property = Asc . c _oSpecialPasteProps . useTextImport ; specialPasteHelper . specialPasteProps . asc _setAdvancedOptions ( options ) ;
this . wb . pasteData ( AscCommon . c _oAscClipboardDataFormat . Text , text , null , null , true ) } } ; spreadsheet _api . prototype . asc _ShowSpecialPasteButton = function ( props ) { if ( this . canEdit ( ) ) this . wb . showSpecialPasteButton ( props ) } ; spreadsheet _api . prototype . asc _UpdateSpecialPasteButton = function ( props ) { if ( this . canEdit ( ) ) this . wb . updateSpecialPasteButton ( props ) } ; spreadsheet _api . prototype . asc _HideSpecialPasteButton = function ( ) { if ( this . canEdit ( ) ) this . wb . hideSpecialPasteButton ( ) } ; spreadsheet _api . prototype . asc _Cut = function ( ) { if ( window [ "AscDesktopEditor" ] ) { window [ "asc_desktop_copypaste" ] ( this ,
"Cut" ) ; return true } return AscCommon . g _clipboardBase . Button _Cut ( ) } ; spreadsheet _api . prototype . asc _PasteData = function ( _format , data1 , data2 , text _data ) { if ( this . canEdit ( ) ) this . wb . pasteData ( _format , data1 , data2 , text _data , arguments [ 5 ] ) } ; spreadsheet _api . prototype . asc _CheckCopy = function ( _clipboard , _formats ) { return this . wb . checkCopyToClipboard ( _clipboard , _formats ) } ; spreadsheet _api . prototype . asc _SelectionCut = function ( ) { if ( this . canEdit ( ) ) this . wb . selectionCut ( ) } ; spreadsheet _api . prototype . asc _bIsEmptyClipboard = function ( ) { var result =
this . wb . bIsEmptyClipboard ( ) ; this . wb . restoreFocus ( ) ; return result } ; spreadsheet _api . prototype . asc _Undo = function ( ) { this . wb . undo ( ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _Redo = function ( ) { this . wb . redo ( ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _Resize = function ( ) { var isRetinaOld = AscCommon . AscBrowser . isRetina ; AscCommon . AscBrowser . checkZoom ( ) ; if ( this . wb ) { if ( isRetinaOld !== AscCommon . AscBrowser . isRetina ) this . wb . changeZoom ( null ) ; this . wb . resize ( ) ; if ( AscCommon . g _inputContext ) AscCommon . g _inputContext . onResize ( "ws-canvas-outer" ) } } ;
spreadsheet _api . prototype . asc _addAutoFilter = function ( styleName , addFormatTableOptionsObj ) { var ws = this . wb . getWorksheet ( ) ; return ws . addAutoFilter ( styleName , addFormatTableOptionsObj ) } ; spreadsheet _api . prototype . asc _changeAutoFilter = function ( tableName , optionType , val ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . changeAutoFilter ( tableName , optionType , val ) } ; spreadsheet _api . prototype . asc _applyAutoFilter = function ( autoFilterObject ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . applyAutoFilter ( autoFilterObject ) } ; spreadsheet _api . prototype . asc _applyAutoFilterByType = function ( autoFilterObject ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . applyAutoFilterByType ( autoFilterObject ) } ; spreadsheet _api . prototype . asc _reapplyAutoFilter = function ( displayName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . reapplyAutoFilter ( displayName ) } ;
spreadsheet _api . prototype . asc _sortColFilter = function ( type , cellId , displayName , color , bIsExpandRange ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; ws . sortRange ( type , cellId , displayName , color , bIsExpandRange ) } ; spreadsheet _api . prototype . asc _getAddFormatTableOptions = function ( range ) { var ws = this . wb . getWorksheet ( ) ; return ws . getAddFormatTableOptions ( range ) } ; spreadsheet _api . prototype . asc _clearFilter = function ( ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . clearFilter ( ) } ; spreadsheet _api . prototype . asc _clearFilterColumn = function ( cellId , displayName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . clearFilterColumn ( cellId , displayName ) } ; spreadsheet _api . prototype . asc _changeSelectionFormatTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ;
return ws . changeTableSelection ( tableName , optionType ) } ; spreadsheet _api . prototype . asc _changeFormatTableInfo = function ( tableName , optionType , val ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; return this . wb . changeFormatTableInfo ( tableName , optionType , val ) } ; spreadsheet _api . prototype . asc _applyAutoCorrectOptions = function ( val ) { this . wb . applyAutoCorrectOptions ( val ) } ; spreadsheet _api . prototype . asc _insertCellsInTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _insertCellsInTable ( tableName , optionType ) } ; spreadsheet _api . prototype . asc _deleteCellsInTable = function ( tableName , optionType ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _deleteCellsInTable ( tableName , optionType ) } ; spreadsheet _api . prototype . asc _changeDisplayNameTable = function ( tableName , newName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ;
var ws = this . wb . getWorksheet ( ) ; return ws . af _changeDisplayNameTable ( tableName , newName ) } ; spreadsheet _api . prototype . asc _changeTableRange = function ( tableName , range ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _changeTableRange ( tableName , range ) } ; spreadsheet _api . prototype . asc _convertTableToRange = function ( tableName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; return ws . af _convertTableToRange ( tableName ) } ;
spreadsheet _api . prototype . asc _getTablePictures = function ( props , pivot ) { return this . wb . getTableStyles ( props , pivot ) } ; spreadsheet _api . prototype . asc _getSlicerPictures = function ( ) { return this . wb . getSlicerStyles ( ) } ; spreadsheet _api . prototype . asc _setViewMode = function ( isViewMode ) { this . isViewMode = ! ! isViewMode ; if ( ! this . isLoadFullApi ) return ; if ( this . collaborativeEditing ) this . collaborativeEditing . setViewerMode ( isViewMode ) } ; spreadsheet _api . prototype . asc _setFilteringMode = function ( mode ) { window [ "AscCommonExcel" ] . filteringMode =
! ! mode } ; spreadsheet _api . prototype . asc _setAdvancedOptions = function ( idOption , option ) { if ( this . advancedOptionsAction !== c _oAscAdvancedOptionsAction . Open ) return ; if ( AscCommon . EncryptionWorker . asc _setAdvancedOptions ( this , idOption , option ) ) return ; var v ; switch ( idOption ) { case c _oAscAdvancedOptionsID . CSV : v = { "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "c" : "reopen" , "title" : this . documentTitle , "delimiter" : option . asc _getDelimiter ( ) , "delimiterChar" : option . asc _getDelimiterChar ( ) , "codepage" : option . asc _getCodePage ( ) ,
"nobase64" : true } ; sendCommand ( this , null , v ) ; break ; case c _oAscAdvancedOptionsID . DRM : v = { "id" : this . documentId , "userid" : this . documentUserId , "format" : this . documentFormat , "c" : "reopen" , "title" : this . documentTitle , "password" : option . asc _getPassword ( ) , "nobase64" : true } ; sendCommand ( this , null , v ) ; break } } ; spreadsheet _api . prototype . asc _setPageOptions = function ( options , index ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; this . wb . getWorksheet ( sheetIndex ) . setPageOptions ( options ) } ; spreadsheet _api . prototype . asc _savePagePrintOptions =
function ( arrPagesPrint ) { this . wb . savePagePrintOptions ( arrPagesPrint ) } ; spreadsheet _api . prototype . asc _getPageOptions = function ( index , initPrintTitles ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wbModel . getWorksheet ( sheetIndex ) ; if ( initPrintTitles && ws . PagePrintOptions ) ws . PagePrintOptions . initPrintTitles ( ) ; return ws . PagePrintOptions } ; spreadsheet _api . prototype . asc _setPageOption = function ( func , val , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ;
var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . setPageOption ( func , val ) } ; spreadsheet _api . prototype . asc _changeDocSize = function ( width , height , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changeDocSize ( width , height ) } ; spreadsheet _api . prototype . asc _changePageMargins = function ( left ,
right , top , bottom , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changePageMargins ( left , right , top , bottom ) } ; spreadsheet _api . prototype . asc _changePageOrient = function ( isPortrait , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ;
if ( isPortrait ) ws . changePageOrient ( Asc . c _oAscPageOrientation . PagePortrait ) ; else ws . changePageOrient ( Asc . c _oAscPageOrientation . PageLandscape ) } ; spreadsheet _api . prototype . asc _changePrintTitles = function ( cols , rows , index ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; ws . changePrintTitles ( cols , rows ) } ; spreadsheet _api . prototype . asc _getPrintTitlesRange = function ( prop ,
byHeight , index ) { var sheetIndex = undefined !== index && null !== index ? index : this . wbModel . getActive ( ) ; var ws = this . wb . getWorksheet ( sheetIndex ) ; return ws . getPrintTitlesRange ( prop , byHeight ) } ; spreadsheet _api . prototype . _onNeedParams = function ( data , opt _isPassword ) { var t = this ; if ( this . documentOpenOptions && ! opt _isPassword ) { var codePageCsv = AscCommon . c _oAscEncodingsMap [ this . documentOpenOptions [ "codePage" ] ] || AscCommon . c _oAscCodePageUtf8 , delimiterCsv = this . documentOpenOptions [ "delimiter" ] , delimiterCharCsv = this . documentOpenOptions [ "delimiterChar" ] ;
if ( null != codePageCsv && ( null != delimiterCsv || null != delimiterCharCsv ) ) { this . asc _setAdvancedOptions ( c _oAscAdvancedOptionsID . CSV , new asc . asc _CTextOptions ( codePageCsv , delimiterCsv , delimiterCharCsv ) ) ; return } } if ( opt _isPassword ) if ( t . handlers . hasTrigger ( "asc_onAdvancedOptions" ) ) t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . DRM , data ? data . message : undefined ) ; else t . handlers . trigger ( "asc_onError" , c _oAscError . ID . ConvertationPassword , c _oAscError . Level . Critical ) ; else if ( t . handlers . hasTrigger ( "asc_onAdvancedOptions" ) ) { var cp =
{ "codepage" : AscCommon . c _oAscCodePageUtf8 , "delimiter" : AscCommon . c _oAscCsvDelimiter . Comma , "encodings" : AscCommon . getEncodingParams ( ) } ; if ( data && typeof Blob !== "undefined" && typeof FileReader !== "undefined" ) AscCommon . getJSZipUtils ( ) . getBinaryContent ( data , function ( err , data ) { if ( err ) t . handlers . trigger ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) ; else { var dataUint = new Uint8Array ( data ) ; var bom = AscCommon . getEncodingByBOM ( dataUint ) ; if ( AscCommon . c _oAscCodePageNone !== bom . encoding ) { cp [ "codepage" ] =
bom . encoding ; data = dataUint . subarray ( bom . size ) } cp [ "data" ] = data ; t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . CSV , new AscCommon . asc _CAdvancedOptions ( cp ) ) } } ) ; else t . handlers . trigger ( "asc_onAdvancedOptions" , c _oAscAdvancedOptionsID . CSV , new AscCommon . asc _CAdvancedOptions ( cp ) ) } else this . asc _setAdvancedOptions ( c _oAscAdvancedOptionsID . CSV , new asc . asc _CTextOptions ( AscCommon . c _oAscCodePageUtf8 , AscCommon . c _oAscCsvDelimiter . Comma ) ) } ; spreadsheet _api . prototype . _onEndOpen = function ( ) { var t = this ;
if ( this . openingEnd . bin && this . openingEnd . xlsx ) this . openDocumentFromZip ( t . wbModel , this . openingEnd . data ) . then ( function ( ) { g _oIdCounter . Set _Load ( false ) ; AscCommon . checkCultureInfoFontPicker ( ) ; AscCommonExcel . checkStylesNames ( t . wbModel . CellStyles ) ; t . FontLoader . LoadDocumentFonts ( t . wbModel . generateFontMap2 ( ) ) ; if ( t . isMobileVersion ) { AscCommon . AscBrowser . isSafariMacOs = false ; AscCommon . PasteElementsId . PASTE _ELEMENT _ID = "wrd_pastebin" ; AscCommon . PasteElementsId . ELEMENT _DISPAY _STYLE = "none" } } ) . catch ( function ( err ) { if ( window . console &&
window . console . log ) window . console . log ( err ) ; t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) } ) } ; spreadsheet _api . prototype . _openOnClient = function ( ) { var t = this ; if ( this . openingEnd . xlsxStart ) return ; this . openingEnd . xlsxStart = true ; var url = AscCommon . g _oDocumentUrls . getUrl ( "Editor.xlsx" ) ; if ( url ) AscCommon . getJSZipUtils ( ) . getBinaryContent ( url , function ( err , data ) { if ( err ) { if ( window . console && window . console . log ) window . console . log ( err ) ; t . sendEvent ( "asc_onError" , c _oAscError . ID . Unknown , c _oAscError . Level . Critical ) } else { t . openingEnd . xlsx =
true ; t . openingEnd . data = data ; t . _onEndOpen ( ) } } ) ; else { t . openingEnd . xlsx = true ; t . _onEndOpen ( ) } } ; spreadsheet _api . prototype . _downloadAs = function ( actionType , options , oAdditionalData , dataContainer ) { var fileType = options . fileType ; if ( c _oAscFileType . PDF === fileType || c _oAscFileType . PDFA === fileType ) { var printPagesData = this . wb . calcPagesPrint ( options . advancedOptions ) ; var pdfPrinterMemory = this . wb . printSheets ( printPagesData ) . DocumentRenderer . Memory ; dataContainer . data = oAdditionalData [ "nobase64" ] ? pdfPrinterMemory . GetData ( ) :
pdfPrinterMemory . GetBase64Memory ( ) } else { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; if ( c _oAscFileType . CSV === fileType ) if ( options . advancedOptions instanceof asc . asc _CTextOptions ) { oAdditionalData [ "codepage" ] = options . advancedOptions . asc _getCodePage ( ) ; oAdditionalData [ "delimiter" ] = options . advancedOptions . asc _getDelimiter ( ) ; oAdditionalData [ "delimiterChar" ] = options . advancedOptions . asc _getDelimiterChar ( ) } dataContainer . data = oBinaryFileWriter . Write ( oAdditionalData [ "nobase64" ] ) } if ( window . isCloudCryptoDownloadAs ) { var sParamXml =
"<m_nCsvTxtEncoding>" + oAdditionalData [ "codepage" ] + "</m_nCsvTxtEncoding>" ; sParamXml += "<m_nCsvDelimiter>" + oAdditionalData [ "delimiter" ] + "</m_nCsvDelimiter>" ; window [ "AscDesktopEditor" ] [ "CryptoDownloadAs" ] ( dataContainer . data , fileType , sParamXml ) ; return true } } ; spreadsheet _api . prototype . asc _isDocumentModified = function ( ) { if ( ! this . canSave || this . asc _getCellEditMode ( ) ) return true ; else if ( History && History . Have _Changes ) return History . Have _Changes ( ) ; return false } ; spreadsheet _api . prototype . asc _registerCallback = function ( name ,
callback , replaceOldCallback ) { this . handlers . add ( name , callback , replaceOldCallback ) } ; spreadsheet _api . prototype . asc _unregisterCallback = function ( name , callback ) { this . handlers . remove ( name , callback ) } ; spreadsheet _api . prototype . asc _SetDocumentPlaceChangedEnabled = function ( val ) { this . wb . setDocumentPlaceChangedEnabled ( val ) } ; spreadsheet _api . prototype . asc _SetFastCollaborative = function ( bFast ) { if ( this . collaborativeEditing ) { if ( window . parent && window . parent . APP && window . parent . APP . onFastChange ) window . parent . APP . onFastChange ( bFast ) ;
AscCommon . CollaborativeEditing . Set _Fast ( bFast ) ; this . collaborativeEditing . setFast ( bFast ) } } ; spreadsheet _api . prototype . asc _setThumbnailStylesSizes = function ( width , height ) { this . styleThumbnailWidth = width ; this . styleThumbnailHeight = height } ; spreadsheet _api . prototype . sheetsChanged = function ( ) { this . handlers . trigger ( "asc_onSheetsChanged" ) } ; spreadsheet _api . prototype . asyncFontsDocumentStartLoaded = function ( ) { this . OpenDocumentProgress . Type = c _oAscAsyncAction . LoadDocumentFonts ; this . OpenDocumentProgress . FontsCount = this . FontLoader . fonts _loading . length ;
this . OpenDocumentProgress . CurrentFont = 0 ; this . sync _StartAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . LoadDocumentFonts ) } ; spreadsheet _api . prototype . asyncFontsDocumentEndLoaded = function ( ) { this . sync _EndAction ( c _oAscAsyncActionType . BlockInteraction , c _oAscAsyncAction . LoadDocumentFonts ) ; if ( this . asyncMethodCallback !== undefined ) { this . asyncMethodCallback ( ) ; this . asyncMethodCallback = undefined } else { this . FontLoadWaitComplete = true ; this . _openDocumentEndCallback ( ) } } ; spreadsheet _api . prototype . asyncFontEndLoaded =
function ( font ) { this . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . LoadFont ) } ; spreadsheet _api . prototype . _loadFonts = function ( fonts , callback ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] ) return callback ( ) ; this . asyncMethodCallback = callback ; var arrLoadFonts = [ ] ; for ( var i in fonts ) arrLoadFonts . push ( new AscFonts . CFont ( i , 0 , "" , 0 ) ) ; AscFonts . FontPickerByCharacter . extendFonts ( arrLoadFonts ) ; this . FontLoader . LoadDocumentFonts2 ( arrLoadFonts ) } ; spreadsheet _api . prototype . openDocument = function ( file ) { this . _openDocument ( file . data ) ;
this . _openOnClient ( ) } ; spreadsheet _api . prototype . openDocumentFromZip = function ( wb , data ) { var t = this ; return new Promise ( function ( resolve , reject ) { var openXml = AscCommon . openXml ; if ( t . isChartEditor ) { resolve ( ) ; return } var pivotCaches = { } ; var nextPromise ; if ( data ) { var doc = new openXml . OpenXmlPackage ; var wbPart = null ; var wbXml = null ; var jsZipWrapper = new AscCommon . JSZipWrapper ; nextPromise = jsZipWrapper . loadAsync ( data ) . then ( function ( zip ) { return doc . openFromZip ( zip ) } ) . then ( function ( ) { wbPart = doc . getPartByRelationshipType ( openXml . relationshipTypes . workbook ) ;
return wbPart . getDocumentContent ( ) } ) . then ( function ( contentWorkbook ) { AscCommonExcel . executeInR1C1Mode ( false , function ( ) { wbXml = new AscCommonExcel . CT _Workbook ; ( new openXml . SaxParserBase ) . parse ( contentWorkbook , wbXml ) } ) ; if ( wbXml . pivotCaches ) return wbXml . pivotCaches . reduce ( function ( prevVal , wbPivotCacheXml ) { var pivotTableCacheDefinitionPart ; var pivotTableCacheDefinition ; return prevVal . then ( function ( ) { if ( null !== wbPivotCacheXml . cacheId && null !== wbPivotCacheXml . id ) { pivotTableCacheDefinitionPart = wbPart . getPartById ( wbPivotCacheXml . id ) ;
return pivotTableCacheDefinitionPart . getDocumentContent ( ) } } ) . then ( function ( content ) { if ( content ) { AscCommonExcel . executeInR1C1Mode ( false , function ( ) { pivotTableCacheDefinition = new Asc . CT _PivotCacheDefinition ; ( new openXml . SaxParserBase ) . parse ( content , pivotTableCacheDefinition ) } ) ; if ( pivotTableCacheDefinition . isValidCacheSource ( ) ) { pivotCaches [ wbPivotCacheXml . cacheId ] = pivotTableCacheDefinition ; if ( pivotTableCacheDefinition . id ) { var partPivotTableCacheRecords = pivotTableCacheDefinitionPart . getPartById ( pivotTableCacheDefinition . id ) ;
return partPivotTableCacheRecords . getDocumentContent ( ) } } } } ) . then ( function ( content ) { if ( content ) AscCommonExcel . executeInR1C1Mode ( false , function ( ) { var pivotTableCacheRecords = new Asc . CT _PivotCacheRecords ; ( new openXml . SaxParserBase ) . parse ( content , pivotTableCacheRecords ) ; pivotTableCacheDefinition . cacheRecords = pivotTableCacheRecords } ) } ) } , Promise . resolve ( ) ) } ) . then ( function ( ) { if ( wbXml . sheets ) { var wsIndex = 0 ; return wbXml . sheets . reduce ( function ( prevVal , wbSheetXml ) { var wsPart ; return prevVal . then ( function ( ) { if ( null !==
wbSheetXml . id ) { var actions = [ ] ; wsPart = wbPart . getPartById ( wbSheetXml . id ) ; var pivotParts = wsPart . getPartsByRelationshipType ( openXml . relationshipTypes . pivotTable ) ; for ( var i = 0 ; i < pivotParts . length ; ++ i ) actions . push ( pivotParts [ i ] . getDocumentContent ( ) ) ; return Promise . all ( actions ) } } ) . then ( function ( res ) { if ( res ) { var ws = t . wbModel . getWorksheet ( wsIndex ) ; for ( var i = 0 ; i < res . length ; ++ i ) { var pivotTable = new Asc . CT _pivotTableDefinition ( true ) ; ( new openXml . SaxParserBase ) . parse ( res [ i ] , pivotTable ) ; var cacheDefinition = pivotCaches [ pivotTable . cacheId ] ;
if ( cacheDefinition ) { pivotTable . cacheDefinition = cacheDefinition ; ws . insertPivotTable ( pivotTable ) } } } wsIndex ++ } ) } , Promise . resolve ( ) ) } } ) . catch ( function ( err ) { if ( window . console && window . console . log ) window . console . log ( err ) } ) . then ( function ( ) { wb . initPostOpenZip ( pivotCaches ) } ) . then ( function ( ) { jsZipWrapper . close ( ) } ) } else nextPromise = Promise . resolve ( ) ; nextPromise . then ( function ( err ) { openXml . SaxParserDataTransfer = { } ; return Asc . ReadDefTableStyles ( wb ) } ) . then ( function ( ) { wb . initPostOpenZip ( pivotCaches ) } ) . then ( resolve ,
reject ) } ) } ; spreadsheet _api . prototype . syncCollaborativeChanges = function ( ) { if ( ! this . collaborativeEditing . getFast ( ) ) this . handlers . trigger ( "asc_onCollaborativeChanges" ) } ; spreadsheet _api . prototype . _applyFirstLoadChanges = function ( ) { if ( this . isDocumentLoadComplete ) return ; if ( this . collaborativeEditing . applyChanges ( ) ) this . onDocumentContentReady ( ) ; this . collaborativeEditing . sendChanges ( ) } ; spreadsheet _api . prototype . _goToComment = function ( data ) { var comment = this . wbModel . getComment ( data ) ; if ( comment ) { this . asc _showWorksheet ( this . wbModel . getWorksheetById ( comment . wsId ) . getIndex ( ) ) ;
this . asc _selectComment ( comment . nId ) ; this . asc _showComment ( comment . nId ) } } ; spreadsheet _api . prototype . _goToBookmark = function ( data ) { var tmpRestrictions = this . restrictions ; this . restrictions = Asc . c _oAscRestrictionType . View ; var tmpR1C1 = AscCommonExcel . g _R1C1Mode ; AscCommonExcel . g _R1C1Mode = false ; this . asc _findCell ( data ) ; this . restrictions = tmpRestrictions ; AscCommonExcel . g _R1C1Mode = tmpR1C1 } ; spreadsheet _api . prototype . _coAuthoringInitEnd = function ( ) { var t = this ; this . collaborativeEditing = new AscCommonExcel . CCollaborativeEditing ( { "askLock" : function ( ) { t . CoAuthoringApi . askLock . apply ( t . CoAuthoringApi ,
arguments ) } , "releaseLocks" : function ( ) { t . CoAuthoringApi . releaseLocks . apply ( t . CoAuthoringApi , arguments ) } , "sendChanges" : function ( ) { t . _onSaveChanges . apply ( t , arguments ) } , "applyChanges" : function ( ) { t . _onApplyChanges . apply ( t , arguments ) } , "updateAfterApplyChanges" : function ( ) { t . _onUpdateAfterApplyChanges . apply ( t , arguments ) } , "drawSelection" : function ( ) { t . _onDrawSelection . apply ( t , arguments ) } , "drawFrozenPaneLines" : function ( ) { t . _onDrawFrozenPaneLines . apply ( t , arguments ) } , "updateAllSheetsLock" : function ( ) { t . _onUpdateAllSheetsLock . apply ( t ,
arguments ) } , "showDrawingObjects" : function ( ) { t . _onShowDrawingObjects . apply ( t , arguments ) } , "showComments" : function ( ) { t . _onShowComments . apply ( t , arguments ) } , "cleanSelection" : function ( ) { t . _onCleanSelection . apply ( t , arguments ) } , "updateDocumentCanSave" : function ( ) { t . _onUpdateDocumentCanSave ( ) } , "checkCommentRemoveLock" : function ( lockElem ) { return t . _onCheckCommentRemoveLock ( lockElem ) } , "unlockDefName" : function ( ) { t . _onUnlockDefName . apply ( t , arguments ) } , "checkDefNameLock" : function ( lockElem ) { return t . _onCheckDefNameLock ( lockElem ) } ,
"updateAllLayoutsLock" : function ( ) { t . _onUpdateAllLayoutsLock . apply ( t , arguments ) } , "updateAllHeaderFooterLock" : function ( ) { t . _onUpdateAllHeaderFooterLock . apply ( t , arguments ) } , "updateAllPrintScaleLock" : function ( ) { t . _onUpdateAllPrintScaleLock . apply ( t , arguments ) } , "updateAllSheetViewLock" : function ( ) { if ( t . _onUpdateAllSheetViewLock ) t . _onUpdateAllSheetViewLock . apply ( t , arguments ) } } , this . getViewMode ( ) ) ; this . CoAuthoringApi . onConnectionStateChanged = function ( e ) { t . handlers . trigger ( "asc_onConnectionStateChanged" , e ) } ;
this . CoAuthoringApi . onLocksAcquired = function ( e ) { if ( t . _coAuthoringCheckEndOpenDocument ( t . CoAuthoringApi . onLocksAcquired , e ) ) return ; if ( 2 != e [ "state" ] ) { var elementValue = e [ "blockValue" ] ; var lockElem = t . collaborativeEditing . getLockByElem ( elementValue , c _oAscLockTypes . kLockTypeOther ) ; if ( null === lockElem ) { lockElem = new AscCommonExcel . CLock ( elementValue ) ; t . collaborativeEditing . addUnlock ( lockElem ) } var drawing , lockType = lockElem . Element [ "type" ] ; var oldType = lockElem . getType ( ) ; if ( c _oAscLockTypes . kLockTypeOther2 === oldType ||
c _oAscLockTypes . kLockTypeOther3 === oldType ) lockElem . setType ( c _oAscLockTypes . kLockTypeOther3 , true ) ; else lockElem . setType ( c _oAscLockTypes . kLockTypeOther , true ) ; lockElem . setUserId ( e [ "user" ] ) ; if ( lockType === c _oAscLockTypeElem . Object ) { drawing = g _oTableId . Get _ById ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( drawing ) { var bLocked , bLocked2 ; bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = lockElem . Type ; if ( drawing instanceof AscCommon . CCore ) { bLocked2 =
drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; if ( bLocked2 !== bLocked ) t . sendEvent ( "asc_onLockCore" , bLocked2 ) } } } if ( t . wb ) { t . wb . _onWSSelectionChanged ( true ) ; t . _onUpdateSheetsLock ( lockElem ) ; t . _onUpdateDefinedNames ( lockElem ) ; t . _onUpdateLayoutLock ( lockElem ) ; t . _onUpdatePrintAreaLock ( lockElem ) ; t . _onUpdateHeaderFooterLock ( lockElem ) ; t . _onUpdatePrintScaleLock ( lockElem ) ; if ( t . _onUpdateNamedSheetViewLock ) t . _onUpdateNamedSheetViewLock ( lockElem ) ; var ws = t . wb . getWorksheet ( ) ;
var lockSheetId = lockElem . Element [ "sheetId" ] ; if ( lockSheetId === ws . model . getId ( ) ) if ( lockType === c _oAscLockTypeElem . Object ) if ( t . _onUpdateFrozenPane ( lockElem ) ) ws . draw ( ) ; else { if ( drawing && ws . model === drawing . worksheet ) if ( ws . objectRender ) ws . objectRender . showDrawingObjects ( ) } else { if ( lockType === c _oAscLockTypeElem . Range || lockType === c _oAscLockTypeElem . Sheet ) ws . updateSelection ( ) } else if ( - 1 !== lockSheetId && 0 === lockSheetId . indexOf ( AscCommonExcel . CCellCommentator . sStartCommentId ) ) t . handlers . trigger ( "asc_onLockComment" ,
lockElem . Element [ "rangeOrObjectId" ] , e [ "user" ] ) } } } ; this . CoAuthoringApi . onLocksReleased = function ( e , bChanges ) { if ( t . _coAuthoringCheckEndOpenDocument ( t . CoAuthoringApi . onLocksReleased , e , bChanges ) ) return ; var element = e [ "block" ] ; var lockElem = t . collaborativeEditing . getLockByElem ( element , c _oAscLockTypes . kLockTypeOther ) ; if ( null != lockElem ) { var curType = lockElem . getType ( ) ; var newType = c _oAscLockTypes . kLockTypeNone ; if ( curType === c _oAscLockTypes . kLockTypeOther ) if ( true != bChanges ) newType = c _oAscLockTypes . kLockTypeNone ;
else newType = c _oAscLockTypes . kLockTypeOther2 ; else if ( curType === c _oAscLockTypes . kLockTypeMine ) newType = c _oAscLockTypes . kLockTypeMine ; else if ( curType === c _oAscLockTypes . kLockTypeOther2 || curType === c _oAscLockTypes . kLockTypeOther3 ) newType = c _oAscLockTypes . kLockTypeOther2 ; if ( t . wb ) t . wb . getWorksheet ( ) . cleanSelection ( ) ; var drawing ; if ( c _oAscLockTypes . kLockTypeNone !== newType ) lockElem . setType ( newType , true ) ; else { t . collaborativeEditing . removeUnlock ( lockElem ) ; if ( ! t . _onCheckCommentRemoveLock ( lockElem . Element ) ) if ( lockElem . Element [ "type" ] ===
c _oAscLockTypeElem . Object ) { drawing = g _oTableId . Get _ById ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( drawing ) { var bLocked = drawing . lockType !== c _oAscLockTypes . kLockTypeNone && drawing . lockType !== c _oAscLockTypes . kLockTypeMine ; drawing . lockType = c _oAscLockTypes . kLockTypeNone ; if ( drawing instanceof AscCommon . CCore ) if ( bLocked ) t . sendEvent ( "asc_onLockCore" , false ) } } } if ( t . wb ) { t . _onUpdateSheetsLock ( lockElem ) ; t . handlers . trigger ( "asc_onLockDefNameManager" , Asc . c _oAscDefinedNameReason . OK ) ; t . _onUpdateLayoutLock ( lockElem ) ; t . _onUpdatePrintAreaLock ( lockElem ) ;
t . _onUpdateHeaderFooterLock ( lockElem ) ; t . _onUpdatePrintScaleLock ( lockElem ) } } } ; this . CoAuthoringApi . onLocksReleasedEnd = function ( ) { if ( ! t . isDocumentLoadComplete ) return ; if ( t . wb ) { t . wb . _onWSSelectionChanged ( true ) ; var worksheet = t . wb . getWorksheet ( ) ; worksheet . cleanSelection ( ) ; worksheet . _drawSelection ( ) ; worksheet . _drawFrozenPaneLines ( ) ; if ( worksheet . objectRender ) worksheet . objectRender . showDrawingObjects ( ) } } ; this . CoAuthoringApi . onSaveChanges = function ( e , userId , bFirstLoad ) { t . collaborativeEditing . addChanges ( e ) ; if ( ! bFirstLoad &&
t . isDocumentLoadComplete ) t . syncCollaborativeChanges ( ) } ; this . CoAuthoringApi . onRecalcLocks = function ( excelAdditionalInfo ) { if ( ! excelAdditionalInfo ) return ; var tmpAdditionalInfo = JSON . parse ( excelAdditionalInfo ) ; var oRecalcIndexColumns = t . collaborativeEditing . addRecalcIndex ( "0" , tmpAdditionalInfo [ "indexCols" ] ) ; var oRecalcIndexRows = t . collaborativeEditing . addRecalcIndex ( "1" , tmpAdditionalInfo [ "indexRows" ] ) ; if ( null !== oRecalcIndexColumns || null !== oRecalcIndexRows ) { t . collaborativeEditing . _recalcLockArray ( c _oAscLockTypes . kLockTypeMine ,
oRecalcIndexColumns , oRecalcIndexRows ) ; t . collaborativeEditing . _recalcLockArray ( c _oAscLockTypes . kLockTypeOther , oRecalcIndexColumns , oRecalcIndexRows ) } } } ; spreadsheet _api . prototype . _onSaveChanges = function ( recalcIndexColumns , recalcIndexRows , isAfterAskSave ) { if ( this . isDocumentLoadComplete ) { var arrChanges = this . wbModel . SerializeHistory ( ) ; var deleteIndex = History . GetDeleteIndex ( ) ; var excelAdditionalInfo = null ; var bCollaborative = this . collaborativeEditing . getCollaborativeEditing ( ) ; if ( bCollaborative ) if ( recalcIndexColumns ||
recalcIndexRows ) excelAdditionalInfo = { "indexCols" : recalcIndexColumns , "indexRows" : recalcIndexRows } ; if ( 0 < arrChanges . length || null !== deleteIndex || null !== excelAdditionalInfo ) { this . CoAuthoringApi . saveChanges ( arrChanges , deleteIndex , excelAdditionalInfo , this . canUnlockDocument2 , bCollaborative ) ; History . CanNotAddChanges = true } else this . CoAuthoringApi . unLockDocument ( ! ! isAfterAskSave , this . canUnlockDocument2 , null , bCollaborative ) ; this . canUnlockDocument2 = false } } ; spreadsheet _api . prototype . _onApplyChanges = function ( changes ,
fCallback ) { this . wbModel . DeserializeHistory ( changes , fCallback ) } ; spreadsheet _api . prototype . _onUpdateAfterApplyChanges = function ( ) { if ( ! this . isDocumentLoadComplete ) { this . collaborativeEditing . clearRecalcIndex ( ) ; this . onDocumentContentReady ( ) } else if ( this . wb && ! window [ "NATIVE_EDITOR_ENJINE" ] ) { AscCommon . CollaborativeEditing . Load _Images ( ) ; this . wb . _onWSSelectionChanged ( ) ; History . TurnOff ( ) ; this . wb . drawWorksheet ( ) ; History . TurnOn ( ) } } ; spreadsheet _api . prototype . _onCleanSelection = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . cleanSelection ( ) } ;
spreadsheet _api . prototype . _onDrawSelection = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . _drawSelection ( ) } ; spreadsheet _api . prototype . _onDrawFrozenPaneLines = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . _drawFrozenPaneLines ( ) } ; spreadsheet _api . prototype . _onUpdateAllSheetsLock = function ( ) { if ( this . wbModel ) { this . handlers . trigger ( "asc_onWorkbookLocked" , this . asc _isWorkbookLocked ( ) ) ; var i , length , wsModel , wsIndex ; for ( i = 0 , length = this . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = this . wbModel . getWorksheet ( i ) ;
wsIndex = wsModel . getIndex ( ) ; this . handlers . trigger ( "asc_onWorksheetLocked" , wsIndex , this . asc _isWorksheetLockedOrDeleted ( wsIndex ) ) } } } ; spreadsheet _api . prototype . _onUpdateAllLayoutsLock = function ( ) { var t = this ; if ( t . wbModel ) { var i , length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockDocumentProps" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockDocumentProps" ,
wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateAllHeaderFooterLock = function ( ) { var t = this ; if ( t . wbModel ) { var i , length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockHeaderFooter" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockHeaderFooter" , wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateAllPrintScaleLock = function ( ) { var t = this ; if ( t . wbModel ) { var i ,
length , wsModel , wsIndex ; for ( i = 0 , length = t . wbModel . getWorksheetCount ( ) ; i < length ; ++ i ) { wsModel = t . wbModel . getWorksheet ( i ) ; wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintScale" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockPrintScale" , wsIndex ) } } } ; spreadsheet _api . prototype . _onUpdateLayoutMenu = function ( nSheetId ) { var t = this ; if ( t . wbModel ) { var wsModel = t . wbModel . getWorksheetById ( nSheetId ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; t . handlers . trigger ( "asc_onUpdateDocumentProps" ,
wsIndex ) } } } ; spreadsheet _api . prototype . _onShowDrawingObjects = function ( ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . showDrawingObjects ( ) } } ; spreadsheet _api . prototype . _onShowComments = function ( ) { if ( this . wb ) this . wb . getWorksheet ( ) . cellCommentator . drawCommentCells ( ) } ; spreadsheet _api . prototype . _onUpdateSheetsLock = function ( lockElem ) { if ( c _oAscLockTypeElem . Sheet === lockElem . Element [ "type" ] ) this . _onUpdateAllSheetsLock ( ) ; else { var wsModel = this . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ;
if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; this . handlers . trigger ( "asc_onWorksheetLocked" , wsIndex , this . asc _isWorksheetLockedOrDeleted ( wsIndex ) ) } } } ; spreadsheet _api . prototype . _onUpdateLayoutLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isLayoutLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockDocumentProps" , wsIndex ) ; else t . handlers . trigger ( "asc_onUnLockDocumentProps" , wsIndex ) } } ;
spreadsheet _api . prototype . _onUpdatePrintAreaLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; var wsIndex = wsModel ? wsModel . getIndex ( ) : undefined ; var isLocked = t . asc _isPrintAreaLocked ( wsIndex ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintArea" ) ; else t . handlers . trigger ( "asc_onUnLockPrintArea" ) } ; spreadsheet _api . prototype . _onUpdateHeaderFooterLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex =
wsModel . getIndex ( ) ; var isLocked = t . asc _isHeaderFooterLocked ( ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockHeaderFooter" ) ; else t . handlers . trigger ( "asc_onUnLockHeaderFooter" ) } } ; spreadsheet _api . prototype . _onUpdatePrintScaleLock = function ( lockElem ) { var t = this ; var wsModel = t . wbModel . getWorksheetById ( lockElem . Element [ "sheetId" ] ) ; if ( wsModel ) { var wsIndex = wsModel . getIndex ( ) ; var isLocked = t . asc _isPrintScaleLocked ( ) ; if ( isLocked ) t . handlers . trigger ( "asc_onLockPrintScale" ) ; else t . handlers . trigger ( "asc_onUnLockPrintScale" ) } } ;
spreadsheet _api . prototype . _onUpdateFrozenPane = function ( lockElem ) { return c _oAscLockTypeElem . Object === lockElem . Element [ "type" ] && lockElem . Element [ "rangeOrObjectId" ] === AscCommonExcel . c _oAscLockNameFrozenPane } ; spreadsheet _api . prototype . _sendWorkbookStyles = function ( ) { if ( this . wbModel && ! window [ "NATIVE_EDITOR_ENJINE" ] ) this . handlers . trigger ( "asc_onInitEditorStyles" , this . wb . getCellStyles ( this . styleThumbnailWidth , this . styleThumbnailHeight ) ) } ; spreadsheet _api . prototype . startCollaborationEditing = function ( ) { this . collaborativeEditing . startCollaborationEditing ( ) ;
if ( this . isDocumentLoadComplete ) { var worksheet = this . wb . getWorksheet ( ) ; worksheet . cleanSelection ( ) ; worksheet . _drawSelection ( ) ; worksheet . _drawFrozenPaneLines ( ) ; if ( worksheet . objectRender ) worksheet . objectRender . showDrawingObjects ( ) } } ; spreadsheet _api . prototype . endCollaborationEditing = function ( ) { this . collaborativeEditing . endCollaborationEditing ( ) } ; spreadsheet _api . prototype . _openDocumentEndCallback = function ( ) { if ( this . isDocumentLoadComplete || ! this . ServerIdWaitComplete || ! this . FontLoadWaitComplete ) return ; if ( AscCommon . EncryptionWorker ) { AscCommon . EncryptionWorker . init ( ) ;
if ( ! AscCommon . EncryptionWorker . isChangesHandled ) return AscCommon . EncryptionWorker . handleChanges ( this . collaborativeEditing . m _arrChanges , this , this . _openDocumentEndCallback ) } if ( 0 === this . wbModel . getWorksheetCount ( ) ) { this . sendEvent ( "asc_onError" , c _oAscError . ID . ConvertationOpenError , c _oAscError . Level . Critical ) ; return } this . wb = new AscCommonExcel . WorkbookView ( this . wbModel , this . controller , this . handlers , this . HtmlElement , this . topLineEditorElement , this , this . collaborativeEditing , this . fontRenderingMode ) ; if ( this . isMobileVersion ) { this . wb . defaults . worksheetView . halfSelection =
true ; this . wb . defaults . worksheetView . activeCellBorderColor = new CColor ( 79 , 158 , 79 ) ; var _container = document . getElementById ( this . HtmlElementName ) ; if ( _container ) _container . style . overflow = "hidden" ; this . wb . MobileTouchManager = new AscCommonExcel . CMobileTouchManager ( { eventsElement : "cell_mobile_element" } ) ; this . wb . MobileTouchManager . Init ( this ) ; var _areaId = AscCommon . g _inputContext . HtmlArea . id ; var _element = document . getElementById ( _areaId ) ; _element . parentNode . parentNode . style . zIndex = 10 ; this . wb . MobileTouchManager . initEvents ( AscCommon . g _inputContext . HtmlArea . id ) } this . asc _CheckGuiControlColors ( ) ;
this . sendColorThemes ( this . wbModel . theme ) ; this . asc _ApplyColorScheme ( false ) ; this . sendStandartTextures ( ) ; this . sendMathToMenu ( ) ; this . _applyPreOpenLocks ( ) ; this . _applyFirstLoadChanges ( ) ; this . goTo ( ) ; this . advancedOptionsAction = c _oAscAdvancedOptionsAction . None ; if ( 0 < this . wbModel . openErrors . length ) this . sendEvent ( "asc_onError" , c _oAscError . ID . OpenWarning , c _oAscError . Level . NoCritical ) } ; spreadsheet _api . prototype . _asc _setWorksheetRange = function ( val ) { var ranges = null , ws ; var sheet = val . asc _getSheet ( ) ; if ( ! sheet ) { ranges =
AscCommonExcel . getRangeByRef ( val . asc _getLocation ( ) , this . wbModel . getActiveWs ( ) , true ) ; if ( ranges = ranges [ 0 ] ) ws = ranges . worksheet } else ws = this . wbModel . getWorksheetByName ( sheet ) ; if ( ! ws ) { this . handlers . trigger ( "asc_onHyperlinkClick" , null ) ; return } else if ( ws . getHidden ( ) ) return ; var sheetIndex = ws . getIndex ( ) ; if ( this . asc _getActiveWorksheetIndex ( ) !== sheetIndex ) this . asc _showWorksheet ( sheetIndex ) ; var range ; if ( ranges ) range = ranges . bbox ; else { range = ws . getRange2 ( val . asc _getRange ( ) ) ; if ( range ) range = range . getBBox0 ( ) } this . wb . _onSetSelection ( range ,
true ) } ; spreadsheet _api . prototype . asc _setWorksheetRange = function ( val ) { this . _asc _setWorksheetRange ( val ) } ; spreadsheet _api . prototype . _onSaveCallbackInner = function ( ) { var t = this ; AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ; this . collaborativeEditing . applyChanges ( ) ; this . CoAuthoringApi . onUnSaveLock = function ( ) { t . CoAuthoringApi . onUnSaveLock = null ; if ( t . isForceSaveOnUserSave && t . IsUserSave ) t . forceSaveButtonContinue = t . forceSave ( ) ; if ( t . collaborativeEditing . getCollaborativeEditing ( ) ) t . wb . _onWSSelectionChanged ( true ) ;
t . canSave = true ; t . IsUserSave = false ; t . lastSaveTime = null ; if ( ! t . forceSaveButtonContinue ) t . sync _EndAction ( c _oAscAsyncActionType . Information , c _oAscAsyncAction . Save ) ; t . onUpdateDocumentModified ( History . Have _Changes ( ) ) ; if ( undefined !== window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "OnSave" ] ( ) ; if ( t . disconnectOnSave ) { t . CoAuthoringApi . disconnect ( t . disconnectOnSave . code , t . disconnectOnSave . reason ) ; t . disconnectOnSave = null } if ( t . canUnlockDocument ) t . _unlockDocument ( ) } ; this . collaborativeEditing . sendChanges ( this . IsUserSave ,
true ) } ; spreadsheet _api . prototype . _isLockedSparkline = function ( id , callback ) { var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , this . asc _getActiveWorksheetId ( ) , id ) ; this . collaborativeEditing . lock ( [ lockInfo ] , callback ) } ; spreadsheet _api . prototype . _isLockedAddWorksheets = function ( callback ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , AscCommonExcel . c _oAscLockAddSheet ,
AscCommonExcel . c _oAscLockAddSheet ) ; this . collaborativeEditing . lock ( [ lockInfo ] , callback ) } ; spreadsheet _api . prototype . _addWorksheets = function ( arrNames , where ) { var t = this ; this . _isLockedAddWorksheets ( function ( res ) { if ( res ) t . _addWorksheetsWithoutLock ( arrNames , where ) } ) } ; spreadsheet _api . prototype . _addWorksheetsWithoutLock = function ( arrNames , where ) { var res = [ ] ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = arrNames . length - 1 ; i >= 0 ; -- i ) res . push ( this . wbModel . createWorksheet ( where , arrNames [ i ] ) ) ; this . wbModel . setActive ( where ) ;
this . wb . updateWorksheetByModel ( ) ; this . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; this . sheetsChanged ( ) ; return res } ; spreadsheet _api . prototype . asc _getWorksheetsCount = function ( ) { return this . wbModel . getWorksheetCount ( ) } ; spreadsheet _api . prototype . asc _getWorksheetName = function ( index ) { return this . wbModel . getWorksheet ( index ) . getName ( ) } ; spreadsheet _api . prototype . asc _getWorksheetTabColor = function ( index ) { return this . wbModel . getWorksheet ( index ) . getTabColor ( ) } ; spreadsheet _api . prototype . asc _setWorksheetTabColor =
function ( color , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheet . getId ( ) , AscCommonExcel . c _oAscLockNameTabColor ) ) } var t = this ; var changeTabColorCallback = function ( res ) { if ( res ) { color = AscCommonExcel . CorrectAscColor ( color ) ; History . Create _NewPoint ( ) ;
History . StartTransaction ( ) ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . getWorksheet ( arrSheets [ i ] ) . setTabColor ( color ) ; History . EndTransaction ( ) } } ; this . collaborativeEditing . lock ( arrLocks , changeTabColorCallback ) } ; spreadsheet _api . prototype . asc _getActiveWorksheetIndex = function ( ) { return this . wbModel . getActive ( ) } ; spreadsheet _api . prototype . asc _getActiveWorksheetId = function ( ) { var activeIndex = this . wbModel . getActive ( ) ; return this . wbModel . getWorksheet ( activeIndex ) . getId ( ) } ; spreadsheet _api . prototype . asc _getWorksheetId =
function ( index ) { return this . wbModel . getWorksheet ( index ) . getId ( ) } ; spreadsheet _api . prototype . asc _isWorksheetHidden = function ( index ) { return this . wbModel . getWorksheet ( index ) . getHidden ( ) } ; spreadsheet _api . prototype . asc _getDefinedNames = function ( defNameListId , excludeErrorRefNames ) { return this . wb . getDefinedNames ( defNameListId , excludeErrorRefNames ) } ; spreadsheet _api . prototype . asc _setDefinedNames = function ( defName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . editDefinedNames ( null ,
defName ) } ; spreadsheet _api . prototype . asc _editDefinedNames = function ( oldName , newName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . editDefinedNames ( oldName , newName ) } ; spreadsheet _api . prototype . asc _delDefinedNames = function ( oldName ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; return this . wb . delDefinedNames ( oldName ) } ; spreadsheet _api . prototype . asc _checkDefinedName = function ( checkName , scope ) { return this . wbModel . checkDefName ( checkName , scope ) } ; spreadsheet _api . prototype . asc _getDefaultDefinedName =
function ( ) { return this . wb . getDefaultDefinedName ( ) } ; spreadsheet _api . prototype . asc _getDefaultTableStyle = function ( ) { return this . wb . getDefaultTableStyle ( ) } ; spreadsheet _api . prototype . _onUpdateDefinedNames = function ( lockElem ) { if ( lockElem . Element [ "sheetId" ] == - 1 && lockElem . Element [ "rangeOrObjectId" ] != - 1 && ! this . collaborativeEditing . getFast ( ) ) { var dN = this . wbModel . dependencyFormulas . getDefNameByNodeId ( lockElem . Element [ "rangeOrObjectId" ] ) ; if ( dN ) { dN . isLock = lockElem . UserId ; this . handlers . trigger ( "asc_onRefreshDefNameList" ,
dN . getAscCDefName ( ) ) } this . handlers . trigger ( "asc_onLockDefNameManager" , Asc . c _oAscDefinedNameReason . LockDefNameManager ) } } ; spreadsheet _api . prototype . _onUnlockDefName = function ( ) { this . wb . unlockDefName ( ) } ; spreadsheet _api . prototype . _onCheckDefNameLock = function ( ) { return this . wb . _onCheckDefNameLock ( ) } ; spreadsheet _api . prototype . asc _isWorksheetLockedOrDeleted = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId =
ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isWorkbookLocked = function ( ) { var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , null , null ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isLayoutLocked =
function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "layoutOptions" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isHeaderFooterLocked = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId =
null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ; else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "headerFooter" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isPrintScaleLocked = function ( index ) { var ws = this . wbModel . getWorksheet ( index ) ; var sheetId = null ; if ( null === ws || undefined === ws ) sheetId = this . asc _getActiveWorksheetId ( ) ;
else sheetId = ws . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , "printScaleOptions" ) ; return false !== this . collaborativeEditing . getLockIntersection ( lockInfo , c _oAscLockTypes . kLockTypeOther , false ) } ; spreadsheet _api . prototype . asc _isPrintAreaLocked = function ( index ) { var res = false ; if ( index !== undefined ) { var sheetId = this . wbModel . getWorksheet ( index ) . getId ( ) ; var dN = this . wbModel . dependencyFormulas . getDefNameByName ( "Print_Area" , sheetId ) ; if ( dN ) res = ! ! dN . isLock } return res } ;
spreadsheet _api . prototype . asc _getHiddenWorksheets = function ( ) { var model = this . wbModel ; var len = model . getWorksheetCount ( ) ; var i , ws , res = [ ] ; for ( i = 0 ; i < len ; ++ i ) { ws = model . getWorksheet ( i ) ; if ( ws . getHidden ( ) ) res . push ( { "index" : i , "name" : ws . getName ( ) } ) } return res } ; spreadsheet _api . prototype . asc _showWorksheet = function ( index ) { if ( typeof index === "number" ) { var t = this ; var ws = this . wbModel . getWorksheet ( index ) ; var isHidden = ws . getHidden ( ) ; var showWorksheetCallback = function ( res ) { if ( res ) { t . wbModel . getWorksheet ( index ) . setHidden ( false ) ;
t . wb . showWorksheet ( index ) } } ; if ( isHidden ) { var sheetId = this . wbModel . getWorksheet ( index ) . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , showWorksheetCallback ) } else showWorksheetCallback ( true ) } } ; spreadsheet _api . prototype . asc _hideWorksheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; if ( this . asc _getWorksheetsCount ( ) <=
this . asc _getHiddenWorksheets ( ) . length + arrSheets . length ) return false ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var hideWorksheetCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . getWorksheet ( arrSheets [ i ] ) . setHidden ( true ) ; History . EndTransaction ( ) } } ;
this . collaborativeEditing . lock ( arrLocks , hideWorksheetCallback ) ; return true } ; spreadsheet _api . prototype . asc _renameWorksheet = function ( name ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var i = this . wbModel . getActive ( ) ; var sheetId = this . wbModel . getWorksheet ( i ) . getId ( ) ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheetId , sheetId ) ; var t = this ; var renameCallback = function ( res ) { if ( res ) { AscFonts . FontPickerByCharacter . getFontsByString ( name ) ; t . _loadFonts ( [ ] ,
function ( ) { t . wbModel . getWorksheet ( i ) . setName ( name ) ; t . sheetsChanged ( ) } ) } else t . handlers . trigger ( "asc_onError" , c _oAscError . ID . LockedWorksheetRename , c _oAscError . Level . NoCritical ) } ; this . collaborativeEditing . lock ( [ lockInfo ] , renameCallback ) ; return true } ; spreadsheet _api . prototype . asc _addWorksheet = function ( name ) { var i = this . wbModel . getActive ( ) ; this . _addWorksheets ( [ name ] , i + 1 ) } ; spreadsheet _api . prototype . asc _insertWorksheet = function ( arrNames ) { if ( ! Array . isArray ( arrNames ) ) arrNames = [ arrNames ] ; var i = this . wbModel . getActive ( ) ;
this . _addWorksheets ( arrNames , i ) } ; spreadsheet _api . prototype . asc _deleteWorksheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; if ( this . wbModel . getWorksheetCount ( ) === arrSheets . length ) return false ; var sheet , arrLocks = [ ] , arrDeleteNames = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = arrSheets [ i ] = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrDeleteNames . push ( sheet . sName ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet ,
null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var deleteCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; t . wbModel . forEach ( function ( ws ) { History . TurnOff ( ) ; var wsView = t . wb . getWorksheet ( ws . index , true ) ; History . TurnOn ( ) ; for ( var i = 0 ; i < arrDeleteNames . length ; ++ i ) ws . oDrawingOjectsManager . updateChartReferencesWidthHistory ( arrDeleteNames [ i ] , parserHelp . getEscapeSheetName ( ws . sName ) ) ; if ( wsView && wsView . objectRender && wsView . objectRender . controller ) wsView . objectRender . controller . recalculate2 ( true ) } ) ;
for ( var i = 0 ; i < arrSheets . length ; ++ i ) t . wbModel . removeWorksheet ( arrSheets [ i ] . getIndex ( ) ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; this . collaborativeEditing . lock ( arrLocks , deleteCallback ) ; return true } ; spreadsheet _api . prototype . asc _moveWorksheet = function ( where , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var active , sheet , i , index , _where , arrLocks = [ ] ; var arrSheetsLeft =
[ ] , arrSheetsRight = [ ] ; for ( i = 0 ; i < arrSheets . length ; ++ i ) { index = arrSheets [ i ] ; sheet = this . wbModel . getWorksheet ( index ) ; ( index < where ? arrSheetsLeft : arrSheetsRight ) . push ( sheet ) ; if ( ! active ) active = sheet ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var moveCallback = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; for ( i = 0 , _where = where ; i < arrSheetsRight . length ; ++ i , ++ _where ) { index = arrSheetsRight [ i ] . getIndex ( ) ; if ( index !==
_where ) t . wbModel . replaceWorksheet ( index , _where ) } for ( i = arrSheetsLeft . length - 1 , _where = where - 1 ; i >= 0 ; -- i , -- _where ) { index = arrSheetsLeft [ i ] . getIndex ( ) ; if ( index !== _where ) t . wbModel . replaceWorksheet ( index , _where ) } t . wbModel . setActive ( active . getIndex ( ) ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; this . collaborativeEditing . lock ( arrLocks , moveCallback ) ; return true } ; spreadsheet _api . prototype . asc _copyWorksheet = function ( where , arrNames , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; if ( ! Array . isArray ( arrNames ) ) arrNames = [ arrNames ] ; if ( 0 === arrNames . length ) return false ; if ( ! arrSheets ) arrSheets = [ this . wbModel . getActive ( ) ] ; var scale = this . asc _getZoom ( ) ; var sheet , arrLocks = [ ] ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = arrSheets [ i ] = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; arrLocks . push ( this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Sheet , null , sheet . getId ( ) , sheet . getId ( ) ) ) } var t = this ; var copyWorksheet = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ;
var index ; for ( var i = arrSheets . length - 1 ; i >= 0 ; -- i ) { index = arrSheets [ i ] . getIndex ( ) ; t . wbModel . copyWorksheet ( index , where , arrNames [ i ] ) } t . wbModel . setActive ( where ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; this . collaborativeEditing . lock ( arrLocks , copyWorksheet ) } ; spreadsheet _api . prototype . asc _StartMoveSheet = function ( arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( this . wbModel . aWorksheets . length === 1 ) return null ; else if ( ! arrSheets ||
this . wbModel . aWorksheets && this . wbModel . aWorksheets . length === arrSheets . length ) arrSheets = [ arrSheets [ arrSheets . length - 1 ] ] ; var sheet , sBinarySheet , res = [ ] ; var activeIndex = this . wbModel . nActive ; for ( var i = 0 ; i < arrSheets . length ; ++ i ) { sheet = this . wbModel . getWorksheet ( arrSheets [ i ] ) ; this . wbModel . nActive = sheet . getIndex ( ) ; sBinarySheet = AscCommonExcel . g _clipboardExcel . copyProcessor . getBinaryForCopy ( sheet , null , null , true , true ) ; res . push ( sBinarySheet ) } this . wbModel . nActive = activeIndex ; return res } ; spreadsheet _api . prototype . asc _EndMoveSheet =
function ( where , arrNames , arrSheets ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; if ( ! Array . isArray ( arrNames ) ) arrNames = [ arrNames ] ; if ( 0 === arrNames . length ) return false ; if ( ! arrSheets ) return false ; var scale = this . asc _getZoom ( ) ; var t = this ; var addWorksheet = function ( res ) { if ( res ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; var renameParamsArr = [ ] , renameSheetMap = { } ; for ( var i = arrSheets . length - 1 ; i >= 0 ; -- i ) t . wb . pasteSheet ( arrSheets [ i ] , where , arrNames [ i ] , function ( renameParams ) { renameParamsArr . push ( renameParams ) ;
renameSheetMap [ renameParams . lastName ] = renameParams . newName ; t . asc _showWorksheet ( where ) ; t . asc _setZoom ( scale ) ; t . sheetsChanged ( ) } ) ; for ( var j = 0 ; j < renameParamsArr . length ; j ++ ) { var newSheet = t . wb . model . getWorksheetByName ( renameParamsArr [ j ] . newName ) ; newSheet . copyFromFormulas ( renameParamsArr [ j ] , renameSheetMap ) } t . wbModel . setActive ( where ) ; t . wb . updateWorksheetByModel ( ) ; t . wb . showWorksheet ( ) ; History . EndTransaction ( ) ; t . sheetsChanged ( ) } } ; addWorksheet ( true ) } ; spreadsheet _api . prototype . asc _cleanSelection = function ( ) { this . wb . getWorksheet ( ) . cleanSelection ( ) } ;
spreadsheet _api . prototype . asc _getZoom = function ( ) { return this . wb . getZoom ( ) } ; spreadsheet _api . prototype . asc _setZoom = function ( scale ) { this . wb . changeZoom ( scale ) } ; spreadsheet _api . prototype . asc _enableKeyEvents = function ( isEnabled , isFromInput ) { if ( ! this . isLoadFullApi ) { this . tmpFocus = isEnabled ; return } if ( this . wb ) this . wb . enableKeyEventsHandler ( isEnabled ) ; if ( isFromInput !== true && AscCommon . g _inputContext ) AscCommon . g _inputContext . setInterfaceEnableKeyEvents ( isEnabled ) } ; spreadsheet _api . prototype . asc _IsFocus = function ( bIsNaturalFocus ) { var res =
true ; if ( this . wb . cellEditor . isTopLineActive ) res = false ; else if ( this . wb ) res = this . wb . getEnableKeyEventsHandler ( bIsNaturalFocus ) ; return res } ; spreadsheet _api . prototype . asc _searchEnabled = function ( bIsEnabled ) { } ; spreadsheet _api . prototype . asc _findText = function ( options ) { if ( window [ "NATIVE_EDITOR_ENJINE" ] ) { if ( this . wb . findCellText ( options ) ) { var ws = this . wb . getWorksheet ( ) ; var activeCell = this . wbModel . getActiveWs ( ) . selectionRange . activeCell ; return [ ws . getCellLeftRelative ( activeCell . col , 0 ) , ws . getCellTopRelative ( activeCell . row ,
0 ) ] } return null } var d = this . wb . findCellText ( options ) ; this . controller . scroll ( d ) ; return ! ! d } ; spreadsheet _api . prototype . asc _replaceText = function ( options ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; options . lookIn = Asc . c _oAscFindLookIn . Formulas ; this . wb . replaceCellText ( options ) } ; spreadsheet _api . prototype . asc _endFindText = function ( ) { this . wb . _cleanFindResults ( ) } ; spreadsheet _api . prototype . asc _findCell = function ( reference ) { if ( this . asc _getCellEditMode ( ) ) return ; var ws = this . wb . getWorksheet ( ) ;
var d = ws . findCell ( reference ) ; if ( 0 === d . length ) return ; ws = d [ 0 ] . getWorksheet ( ) ; if ( ! ws || ws . getHidden ( ) ) return ; var sheetIndex = ws . getIndex ( ) ; if ( this . asc _getActiveWorksheetIndex ( ) !== sheetIndex ) this . asc _showWorksheet ( sheetIndex ) ; ws = this . wb . getWorksheet ( ) ; ws . setSelection ( 1 === d . length ? d [ 0 ] . getBBox0 ( ) : d ) } ; spreadsheet _api . prototype . asc _closeCellEditor = function ( cancel ) { var result = true ; if ( this . wb ) { this . wb . setWizardMode ( false ) ; result = this . wb . closeCellEditor ( cancel ) } return result } ; spreadsheet _api . prototype . asc _setR1C1Mode =
function ( value ) { AscCommonExcel . g _R1C1Mode = value ; if ( this . wbModel ) { this . _onUpdateAfterApplyChanges ( ) ; this . wb . _onUpdateSelectionName ( true ) } } ; spreadsheet _api . prototype . asc _setIncludeNewRowColTable = function ( value ) { window [ "AscCommonExcel" ] . g _IncludeNewRowColInTable = value } ; spreadsheet _api . prototype . asc _getColumnWidth = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . getSelectedColumnWidthInSymbols ( ) } ; spreadsheet _api . prototype . asc _setColumnWidth = function ( width ) { this . wb . getWorksheet ( ) . changeWorksheet ( "colWidth" ,
width ) } ; spreadsheet _api . prototype . asc _showColumns = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "showCols" ) } ; spreadsheet _api . prototype . asc _hideColumns = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "hideCols" ) } ; spreadsheet _api . prototype . asc _autoFitColumnWidth = function ( ) { this . wb . getWorksheet ( ) . autoFitColumnsWidth ( null ) } ; spreadsheet _api . prototype . asc _getRowHeight = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . getSelectedRowHeight ( ) } ; spreadsheet _api . prototype . asc _setRowHeight = function ( height ) { this . wb . getWorksheet ( ) . changeWorksheet ( "rowHeight" ,
height ) } ; spreadsheet _api . prototype . asc _autoFitRowHeight = function ( ) { this . wb . getWorksheet ( ) . autoFitRowHeight ( null ) } ; spreadsheet _api . prototype . asc _showRows = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "showRows" ) } ; spreadsheet _api . prototype . asc _hideRows = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "hideRows" ) } ; spreadsheet _api . prototype . asc _group = function ( val ) { if ( val ) this . wb . getWorksheet ( ) . changeWorksheet ( "groupRows" ) ; else this . wb . getWorksheet ( ) . changeWorksheet ( "groupCols" ) } ; spreadsheet _api . prototype . asc _ungroup =
function ( val ) { if ( val ) this . wb . getWorksheet ( ) . changeWorksheet ( "groupRows" , true ) ; else this . wb . getWorksheet ( ) . changeWorksheet ( "groupCols" , true ) } ; spreadsheet _api . prototype . asc _checkAddGroup = function ( bUngroup ) { return this . wb . getWorksheet ( ) . checkAddGroup ( bUngroup ) } ; spreadsheet _api . prototype . asc _clearOutline = function ( ) { this . wb . getWorksheet ( ) . changeWorksheet ( "clearOutline" ) } ; spreadsheet _api . prototype . asc _changeGroupDetails = function ( bExpand ) { this . wb . getWorksheet ( ) . changeGroupDetails ( bExpand ) } ; spreadsheet _api . prototype . asc _insertCells =
function ( options ) { this . wb . getWorksheet ( ) . changeWorksheet ( "insCell" , options ) } ; spreadsheet _api . prototype . asc _deleteCells = function ( options ) { this . wb . getWorksheet ( ) . changeWorksheet ( "delCell" , options ) } ; spreadsheet _api . prototype . asc _mergeCells = function ( options ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "merge" , options ) } ; spreadsheet _api . prototype . asc _sortCells = function ( options ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "sort" , options ) } ; spreadsheet _api . prototype . asc _emptyCells = function ( options ) { this . wb . emptyCells ( options ) } ;
spreadsheet _api . prototype . asc _drawDepCells = function ( se ) { } ; spreadsheet _api . prototype . asc _mergeCellsDataLost = function ( options ) { return this . wb . getWorksheet ( ) . getSelectionMergeInfo ( options ) } ; spreadsheet _api . prototype . asc _sortCellsRangeExpand = function ( ) { return this . wb . getWorksheet ( ) . getSelectionSortInfo ( ) } ; spreadsheet _api . prototype . asc _getSheetViewSettings = function ( ) { return this . wb . getWorksheet ( ) . getSheetViewSettings ( ) } ; spreadsheet _api . prototype . asc _setDisplayGridlines = function ( value ) { this . wb . getWorksheet ( ) . changeSheetViewSettings ( AscCH . historyitem _Worksheet _SetDisplayGridlines ,
value ) } ; spreadsheet _api . prototype . asc _setDisplayHeadings = function ( value ) { this . wb . getWorksheet ( ) . changeSheetViewSettings ( AscCH . historyitem _Worksheet _SetDisplayHeadings , value ) } ; spreadsheet _api . prototype . asc _drawingObjectsExist = function ( ) { for ( var i = 0 ; i < this . wb . model . aWorksheets . length ; i ++ ) if ( this . wb . model . aWorksheets [ i ] . Drawings && this . wb . model . aWorksheets [ i ] . Drawings . length ) return true ; return false } ; spreadsheet _api . prototype . asc _getChartObject = function ( bNoLock ) { if ( bNoLock !== true ) this . asc _onOpenChartFrame ( ) ;
var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getAscChartObject ( bNoLock ) } ; spreadsheet _api . prototype . asc _addChartDrawingObject = function ( chart ) { var ws = this . wb . getWorksheet ( ) ; AscFonts . IsCheckSymbols = true ; var ret = ws . objectRender . addChartDrawingObject ( chart ) ; AscFonts . IsCheckSymbols = false ; this . asc _onCloseChartFrame ( ) ; return ret } ; spreadsheet _api . prototype . asc _editChartDrawingObject = function ( chart ) { var ws = this . wb . getWorksheet ( ) ; var ret = ws . objectRender . editChartDrawingObject ( chart ) ; this . asc _onCloseChartFrame ( ) ;
return ret } ; spreadsheet _api . prototype . asc _addImageDrawingObject = function ( imageUrl , imgProp , token ) { var t = this ; AscCommon . sendImgUrls ( this , [ imageUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !== "error" ) { var ws = t . wb . getWorksheet ( ) ; ws . objectRender . addImageDrawingObject ( [ data [ 0 ] . url ] , null ) } } , true , false , token ) } ; spreadsheet _api . prototype . asc _AddMath = function ( Type ) { var t = this , fonts = { } ; fonts [ "Cambria Math" ] = 1 ; t . _loadFonts ( fonts , function ( ) { t . asc _AddMath2 ( Type ) } ) } ; spreadsheet _api . prototype . asc _AddMath2 = function ( Type ) { var ws =
this . wb . getWorksheet ( ) ; ws . objectRender . addMath ( Type ) } ; spreadsheet _api . prototype . asc _SetMathProps = function ( MathProps ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . setMathProps ( MathProps ) } ; spreadsheet _api . prototype . asc _showImageFileDialog = function ( ) { this . asc _addImage ( ) } ; spreadsheet _api . prototype . asc _addImageCallback = function ( res ) { g _oDocumentUrls . addImageUrl ( res . name , res . url ) } ; spreadsheet _api . prototype . asyncImageEndLoadedBackground = function ( _image ) { } ; spreadsheet _api . prototype . _addImageUrl = function ( urls ,
obj ) { var ws = this . wb . getWorksheet ( ) ; if ( ws ) if ( obj && ( obj . isImageChangeUrl || obj . isShapeImageChangeUrl || obj . isTextArtChangeUrl ) ) ws . objectRender . editImageDrawingObject ( urls [ 0 ] , obj ) ; else ws . objectRender . addImageDrawingObject ( urls , null ) } ; spreadsheet _api . prototype . asc _addSignatureLine = function ( oPr , Width , Height , sImgUrl ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . addSignatureLine ( oPr , Width , Height , sImgUrl ) } ; spreadsheet _api . prototype . asc _getAllSignatures = function ( ) { var ret = [ ] ; var aSpTree =
[ ] ; this . wbModel . forEach ( function ( ws ) { for ( var j = 0 ; j < ws . Drawings . length ; ++ j ) aSpTree . push ( ws . Drawings [ j ] . graphicObject ) } ) ; AscFormat . DrawingObjectsController . prototype . getAllSignatures2 ( ret , aSpTree ) ; return ret } ; spreadsheet _api . prototype . getSignatureLineSp = function ( sGuid ) { var ret = [ ] ; var aSpTree = [ ] ; this . wbModel . forEach ( function ( ws ) { for ( var j = 0 ; j < ws . Drawings . length ; ++ j ) aSpTree . push ( ws . Drawings [ j ] . graphicObject ) } ) ; AscFormat . DrawingObjectsController . prototype . getAllSignatures2 ( ret , aSpTree ) ; for ( var i = 0 ; i < aSpTree . length ; ++ i ) if ( aSpTree [ i ] . signatureLine &&
aSpTree [ i ] . signatureLine . id === sGuid ) return aSpTree [ i ] ; return null } ; spreadsheet _api . prototype . asc _CallSignatureDblClickEvent = function ( sGuid ) { var oSp = this . getSignatureLineSp ( sGuid ) ; if ( oSp ) this . sendEvent ( "asc_onSignatureDblClick" , sGuid , oSp . extX , oSp . extY ) } ; spreadsheet _api . prototype . gotoSignatureInternal = function ( sGuid ) { var oSp = this . getSignatureLineSp ( sGuid ) ; if ( oSp && ! oSp . group ) { var oWorksheet = oSp . worksheet ; if ( oWorksheet ) { var nSheetIdx = oWorksheet . getIndex ( ) ; if ( this . asc _getActiveWorksheetIndex ( ) !== nSheetIdx ) this . asc _showWorksheet ( nSheetIdx ) ;
var oWSView = this . wb . getWorksheet ( ) ; if ( oWSView ) { var oRender = oWSView . objectRender ; if ( oRender ) { var oController = oRender . controller ; if ( oController ) { oSp . Set _CurrentElement ( false ) ; oController . selection . textSelection = null ; oWSView . setSelectionShape ( true ) ; oController . updateSelectionState ( ) ; oController . updateOverlay ( ) ; oRender . sendGraphicObjectProps ( ) } } } } } } ; spreadsheet _api . prototype . asc _setSelectedDrawingObjectLayer = function ( layerType ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . setGraphicObjectLayer ( layerType ) } ;
spreadsheet _api . prototype . asc _setSelectedDrawingObjectAlign = function ( alignType ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . setGraphicObjectAlign ( alignType ) } ; spreadsheet _api . prototype . asc _DistributeSelectedDrawingObjectHor = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . distributeGraphicObjectHor ( ) } ; spreadsheet _api . prototype . asc _DistributeSelectedDrawingObjectVer = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . distributeGraphicObjectVer ( ) } ; spreadsheet _api . prototype . asc _getSelectedDrawingObjectsCount =
function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getSelectedDrawingObjectsCount ( ) } ; spreadsheet _api . prototype . asc _canEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canStartImageCrop ( ) } ; spreadsheet _api . prototype . asc _startEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . startImageCrop ( ) } ; spreadsheet _api . prototype . asc _endEditCrop = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . endImageCrop ( ) } ;
spreadsheet _api . prototype . asc _cropFit = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . cropFit ( ) } ; spreadsheet _api . prototype . asc _cropFill = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . cropFill ( ) } ; spreadsheet _api . prototype . asc _addTextArt = function ( nStyle ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . addTextArt ( nStyle ) } ; spreadsheet _api . prototype . asc _checkDataRange = function ( dialogType , dataRange , fullCheck , isRows , chartType ) { return parserHelp . checkDataRange ( this . wbModel ,
this . wb , dialogType , dataRange , fullCheck , isRows , chartType ) } ; spreadsheet _api . prototype . asc _getBinaryFileWriter = function ( ) { return new AscCommonExcel . BinaryFileWriter ( this . wbModel ) } ; spreadsheet _api . prototype . asc _getWordChartObject = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getWordChartObject ( ) } ; spreadsheet _api . prototype . asc _cleanWorksheet = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) ws . objectRender . cleanWorksheet ( ) } ; spreadsheet _api . prototype . asc _setData = function ( oData ) { this . wb . getWorksheet ( ) . setData ( oData ) } ;
spreadsheet _api . prototype . asc _getData = function ( ) { this . asc _closeCellEditor ( ) ; return this . wb . getWorksheet ( ) . getData ( ) } ; spreadsheet _api . prototype . asc _addComment = function ( oComment ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var oPlace = oComment . bDocument ? this . wb : this . wb . getWorksheet ( ) ; oPlace . cellCommentator . addComment ( oComment ) } ; spreadsheet _api . prototype . asc _changeComment = function ( id , oComment ) { if ( oComment . bDocument ) this . wb . cellCommentator . changeComment ( id , oComment ) ; else { var ws =
this . wb . getWorksheet ( ) ; ws . cellCommentator . changeComment ( id , oComment ) } } ; spreadsheet _api . prototype . asc _selectComment = function ( id ) { this . wb . getWorksheet ( ) . cellCommentator . selectComment ( id ) } ; spreadsheet _api . prototype . asc _showComment = function ( id , bNew ) { var ws = this . wb . getWorksheet ( ) ; ws . cellCommentator . showCommentById ( id , bNew ) } ; spreadsheet _api . prototype . asc _findComment = function ( id ) { var ws = this . wb . getWorksheet ( ) ; return ws . cellCommentator . findComment ( id ) } ; spreadsheet _api . prototype . asc _removeComment = function ( id ) { this . wb . removeComment ( id ) } ;
spreadsheet _api . prototype . asc _RemoveAllComments = function ( isMine , isCurrent ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; this . wb . removeAllComments ( isMine , isCurrent ) } ; spreadsheet _api . prototype . asc _showComments = function ( isShowSolved ) { this . wb . showComments ( true , isShowSolved ) } ; spreadsheet _api . prototype . asc _hideComments = function ( ) { this . wb . showComments ( false , false ) } ; spreadsheet _api . prototype . setStartPointHistory = function ( ) { this . noCreatePoint = true ; this . exucuteHistory = true ; this . asc _stopSaving ( ) } ;
spreadsheet _api . prototype . setEndPointHistory = function ( ) { this . noCreatePoint = false ; this . exucuteHistoryEnd = true ; this . asc _continueSaving ( ) } ; spreadsheet _api . prototype . asc _startAddShape = function ( sPreset ) { this . isStartAddShape = this . controller . isShapeAction = true ; var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . startTrackNewShape ( sPreset ) } ; spreadsheet _api . prototype . asc _endAddShape = function ( ) { this . isStartAddShape = false ; this . handlers . trigger ( "asc_onEndAddShape" ) } ; spreadsheet _api . prototype . asc _addShapeOnSheet =
function ( sPreset ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . addShapeOnSheet ( sPreset ) } } ; spreadsheet _api . prototype . asc _addOleObjectAction = function ( sLocalUrl , sData , sApplicationId , fWidth , fHeight , nWidthPix , nHeightPix ) { var _image = this . ImageLoader . LoadImage ( AscCommon . getFullImageSrc2 ( sLocalUrl ) , 1 ) ; if ( null != _image ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) { this . asc _canPaste ( ) ; ws . objectRender . addOleObject ( fWidth , fHeight , nWidthPix , nHeightPix , sLocalUrl , sData , sApplicationId ) ;
this . asc _endPaste ( ) } } } ; spreadsheet _api . prototype . asc _editOleObjectAction = function ( bResize , oOleObject , sImageUrl , sData , nPixWidth , nPixHeight ) { if ( oOleObject ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) { this . asc _canPaste ( ) ; ws . objectRender . editOleObject ( oOleObject , sData , sImageUrl , nPixWidth , nPixHeight , bResize ) ; this . asc _endPaste ( ) } } } ; spreadsheet _api . prototype . asc _startEditCurrentOleObject = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender ) ws . objectRender . startEditCurrentOleObject ( ) } ; spreadsheet _api . prototype . asc _isAddAutoshape =
function ( ) { return this . isStartAddShape } ; spreadsheet _api . prototype . asc _canAddShapeHyperlink = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canAddHyperlink ( ) } ; spreadsheet _api . prototype . asc _canGroupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canGroup ( ) } ; spreadsheet _api . prototype . asc _groupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . groupGraphicObjects ( ) } ; spreadsheet _api . prototype . asc _canUnGroupGraphicsObjects =
function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . controller . canUnGroup ( ) } ; spreadsheet _api . prototype . asc _unGroupGraphicsObjects = function ( ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . unGroupGraphicObjects ( ) } ; spreadsheet _api . prototype . asc _changeShapeType = function ( value ) { this . asc _setGraphicObjectProps ( new Asc . asc _CImgProperty ( { ShapeProperties : { type : value } } ) ) } ; spreadsheet _api . prototype . asc _getGraphicObjectProps = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender . controller ) return ws . objectRender . controller . getGraphicObjectProps ( ) ;
return null } ; spreadsheet _api . prototype . asc _GetSelectedText = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( this . wb . getCellEditMode ( ) ) { var fragments = this . wb . cellEditor . copySelection ( ) ; if ( null !== fragments ) return AscCommonExcel . getFragmentsText ( fragments ) } if ( ws && ws . objectRender && ws . objectRender . controller ) return ws . objectRender . controller . GetSelectedText ( true ) ; return "" } ; spreadsheet _api . prototype . asc _setGraphicObjectProps = function ( props ) { if ( ! this . canEdit ( ) ) return ; var ws = this . wb . getWorksheet ( ) ; var fReplaceCallback =
null , sImageUrl = null , sToken = undefined ; if ( ! AscCommon . isNullOrEmptyString ( props . ImageUrl ) ) { if ( ! g _oDocumentUrls . getImageLocal ( props . ImageUrl ) ) { sImageUrl = props . ImageUrl ; sToken = props . Token ; fReplaceCallback = function ( sLocalUrl ) { props . ImageUrl = sLocalUrl } } } else if ( props . ShapeProperties && props . ShapeProperties . fill && props . ShapeProperties . fill . fill && ! AscCommon . isNullOrEmptyString ( props . ShapeProperties . fill . fill . url ) ) { if ( ! g _oDocumentUrls . getImageLocal ( props . ShapeProperties . fill . fill . url ) ) { sImageUrl = props . ShapeProperties . fill . fill . url ;
sToken = props . ShapeProperties . fill . fill . token ; fReplaceCallback = function ( sLocalUrl ) { props . ShapeProperties . fill . fill . url = sLocalUrl } } } else if ( props . ShapeProperties && props . ShapeProperties . textArtProperties && props . ShapeProperties . textArtProperties . Fill && props . ShapeProperties . textArtProperties . Fill . fill && ! AscCommon . isNullOrEmptyString ( props . ShapeProperties . textArtProperties . Fill . fill . url ) ) if ( ! g _oDocumentUrls . getImageLocal ( props . ShapeProperties . textArtProperties . Fill . fill . url ) ) { sImageUrl = props . ShapeProperties . textArtProperties . Fill . fill . url ;
sToken = props . ShapeProperties . textArtProperties . Fill . fill . token ; fReplaceCallback = function ( sLocalUrl ) { props . ShapeProperties . textArtProperties . Fill . fill . url = sLocalUrl } } if ( fReplaceCallback ) { if ( window [ "AscDesktopEditor" ] ) { var firstUrl = window [ "AscDesktopEditor" ] [ "LocalFileGetImageUrl" ] ( sImageUrl ) ; firstUrl = g _oDocumentUrls . getImageUrl ( firstUrl ) ; fReplaceCallback ( firstUrl ) ; ws . objectRender . setGraphicObjectProps ( props ) ; return } AscCommon . sendImgUrls ( this , [ sImageUrl ] , function ( data ) { if ( data && data [ 0 ] && data [ 0 ] . url !==
"error" ) { fReplaceCallback ( data [ 0 ] . url ) ; ws . objectRender . setGraphicObjectProps ( props ) } } , true , undefined , sToken ) } else { var sBulletSymbol = props . asc _getBulletSymbol && props . asc _getBulletSymbol ( ) ; var sBulletFont = props . asc _getBulletFont && props . asc _getBulletFont ( ) ; if ( typeof sBulletSymbol === "string" && sBulletSymbol . length > 0 && typeof sBulletFont === "string" && sBulletFont . length > 0 ) { var t = this ; var fonts = { } ; fonts [ sBulletFont ] = 1 ; AscFonts . FontPickerByCharacter . checkTextLight ( sBulletSymbol ) ; t . _loadFonts ( fonts , function ( ) { ws . objectRender . setGraphicObjectProps ( props ) } ) } else { var oSlicerPr =
props . SlicerProperties ; var sForCheck = null ; if ( oSlicerPr && typeof oSlicerPr . caption === "string" && oSlicerPr . caption . length > 0 ) sForCheck = oSlicerPr . caption ; if ( typeof sForCheck === "string" && sForCheck . length > 0 ) AscFonts . FontPickerByCharacter . checkText ( sForCheck , this , function ( ) { ws . objectRender . setGraphicObjectProps ( props ) } ) ; else ws . objectRender . setGraphicObjectProps ( props ) } } } ; spreadsheet _api . prototype . asc _getOriginalImageSize = function ( ) { var ws = this . wb . getWorksheet ( ) ; return ws . objectRender . getOriginalImageSize ( ) } ;
spreadsheet _api . prototype . asc _setInterfaceDrawImagePlaceTextArt = function ( elementId ) { this . textArtElementId = elementId } ; spreadsheet _api . prototype . asc _changeImageFromFile = function ( ) { this . asc _addImage ( { isImageChangeUrl : true } ) } ; spreadsheet _api . prototype . asc _changeShapeImageFromFile = function ( type ) { this . asc _addImage ( { isShapeImageChangeUrl : true , textureType : type } ) } ; spreadsheet _api . prototype . asc _changeArtImageFromFile = function ( type ) { this . asc _addImage ( { isTextArtChangeUrl : true , textureType : type } ) } ; spreadsheet _api . prototype . asc _putPrLineSpacing =
function ( type , value ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . putPrLineSpacing ( type , value ) } ; spreadsheet _api . prototype . asc _putLineSpacingBeforeAfter = function ( type , value ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . controller . putLineSpacingBeforeAfter ( type , value ) } ; spreadsheet _api . prototype . asc _setDrawImagePlaceParagraph = function ( element _id , props ) { var ws = this . wb . getWorksheet ( ) ; ws . objectRender . setDrawImagePlaceParagraph ( element _id , props ) } ; spreadsheet _api . prototype . asc _replaceLoadImageCallback =
function ( fCallback ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender ) ws . objectRender . asyncImageEndLoaded = fCallback } } ; spreadsheet _api . prototype . asyncImageEndLoaded = function ( _image ) { if ( this . wb ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . asyncImageEndLoaded ) ws . objectRender . asyncImageEndLoaded ( _image ) } } ; spreadsheet _api . prototype . asyncImagesDocumentEndLoaded = function ( ) { if ( c _oAscAdvancedOptionsAction . None === this . advancedOptionsAction && this . wb && ! window [ "NATIVE_EDITOR_ENJINE" ] ) { var ws = this . wb . getWorksheet ( ) ;
ws . objectRender . showDrawingObjects ( ) ; ws . objectRender . controller . getGraphicObjectProps ( ) } } ; spreadsheet _api . prototype . asyncImageEndLoadedBackground = function ( ) { var worksheet = this . wb . getWorksheet ( ) ; if ( worksheet && worksheet . objectRender ) { var drawing _area = worksheet . objectRender . drawingArea ; if ( drawing _area ) for ( var i = 0 ; i < drawing _area . frozenPlaces . length ; ++ i ) { worksheet . objectRender . showDrawingObjects ( ) ; worksheet . objectRender . controller && worksheet . objectRender . controller . getGraphicObjectProps ( ) } } } ; spreadsheet _api . prototype . cleanSpelling =
function ( isCellEditing ) { if ( ! this . spellcheckState . lockSpell ) if ( this . spellcheckState . startCell ) { var cellsChange = this . spellcheckState . cellsChange ; var lastFindOptions = this . spellcheckState . lastFindOptions ; if ( cellsChange . length !== 0 && lastFindOptions && ! isCellEditing ) this . asc _replaceMisspelledWords ( lastFindOptions ) ; this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , null ) ; this . spellcheckState . clean ( ) } } ; spreadsheet _api . prototype . SpellCheck _CallBack = function ( e ) { this . spellcheckState . lockSpell = false ; var ws =
this . wb . getWorksheet ( ) ; var type = e [ "type" ] ; var usrWords = e [ "usrWords" ] ; var cellsInfo = e [ "cellsInfo" ] ; var changeWords = this . spellcheckState . changeWords ; var ignoreWords = this . spellcheckState . ignoreWords ; var lastOptions = this . spellcheckState . lastFindOptions ; var cellsChange = this . spellcheckState . cellsChange ; var isStart = this . spellcheckState . isStart ; if ( type === "spell" ) { var usrCorrect = e [ "usrCorrect" ] ; this . spellcheckState . wordsIndex = e [ "wordsIndex" ] ; var lastIndex = this . spellcheckState . lastIndex ; var activeCell = ws . model . selectionRange . activeCell ;
var isIgnoreUppercase = this . spellcheckState . isIgnoreUppercase ; for ( var i = 0 ; i < usrWords . length ; i ++ ) { if ( this . spellcheckState . isIgnoreNumbers ) { var isNumberInStr = /\d+/ ; if ( usrWords [ i ] . match ( isNumberInStr ) ) usrCorrect [ i ] = true } if ( ignoreWords [ usrWords [ i ] ] || changeWords [ usrWords [ i ] ] || usrWords [ i ] . length === 1 || isIgnoreUppercase && AscCommon . private _IsAbbreviation ( usrWords [ i ] ) ) usrCorrect [ i ] = true } while ( ! isStart && usrCorrect [ lastIndex ] ) ++ lastIndex ; this . spellcheckState . lockSpell = false ; this . spellcheckState . lastIndex = lastIndex ;
var currIndex = cellsInfo [ lastIndex ] ; if ( currIndex && ( currIndex . col !== activeCell . col || currIndex . row !== activeCell . row ) ) var currentCellIsInactive = true ; while ( isStart && currentCellIsInactive && usrCorrect [ lastIndex ] ) { if ( ! cellsInfo [ lastIndex + 1 ] || cellsInfo [ lastIndex + 1 ] . col !== cellsInfo [ lastIndex ] . col ) { var cell = cellsInfo [ lastIndex ] ; cellsChange . push ( new Asc . Range ( cell . col , cell . row , cell . col , cell . row ) ) } ++ lastIndex } if ( undefined === cellsInfo [ lastIndex ] ) { this . spellcheckState . nextRow ( ) ; this . asc _nextWord ( ) ; return } var cellStartIndex =
0 ; while ( cellsInfo [ cellStartIndex ] . col !== cellsInfo [ lastIndex ] . col ) cellStartIndex ++ ; e [ "usrWords" ] . splice ( 0 , cellStartIndex ) ; e [ "usrCorrect" ] . splice ( 0 , cellStartIndex ) ; e [ "usrLang" ] . splice ( 0 , cellStartIndex ) ; e [ "cellsInfo" ] . splice ( 0 , cellStartIndex ) ; e [ "wordsIndex" ] . splice ( 0 , cellStartIndex ) ; lastIndex = lastIndex - cellStartIndex ; this . spellcheckState . lastIndex = lastIndex ; this . spellcheckState . lockSpell = true ; this . spellcheckState . lastSpellInfo = e ; this . SpellCheckApi . spellCheck ( { "type" : "suggest" , "usrWords" : [ e [ "usrWords" ] [ lastIndex ] ] ,
"usrLang" : [ e [ "usrLang" ] [ lastIndex ] ] , "cellInfo" : e [ "cellsInfo" ] [ lastIndex ] , "wordsIndex" : e [ "wordsIndex" ] [ lastIndex ] } ) } else if ( type === "suggest" ) { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , new AscCommon . asc _CSpellCheckProperty ( e [ "usrWords" ] [ 0 ] , null , e [ "usrSuggest" ] [ 0 ] , null , null ) ) ; var cellInfo = e [ "cellInfo" ] ; this . spellcheckState . lockSpell = true ; if ( ! ws . model . selectionRange . activeCell . isEqual ( cellInfo ) && isStart && lastOptions ) this . asc _replaceMisspelledWords ( lastOptions ) ; else { ws . setSelection ( new Asc . Range ( cellInfo . col ,
cellInfo . row , cellInfo . col , cellInfo . row ) ) ; this . spellcheckState . lockSpell = false ; if ( this . spellcheckState . afterReplace ) { History . EndTransaction ( ) ; this . spellcheckState . afterReplace = false } } this . spellcheckState . isStart = true ; this . spellcheckState . wordsIndex = e [ "wordsIndex" ] } } ; spreadsheet _api . prototype . _spellCheckDisconnect = function ( ) { this . cleanSpelling ( ) } ; spreadsheet _api . prototype . _spellCheckRestart = function ( word ) { var lastSpellInfo ; if ( lastSpellInfo = this . spellcheckState . lastSpellInfo ) { var lastIndex = this . spellcheckState . lastIndex ;
this . spellcheckState . lastIndex = - 1 ; var usrLang = [ ] ; for ( var i = lastIndex ; i < lastSpellInfo [ "usrWords" ] . length ; ++ i ) usrLang . push ( this . defaultLanguage ) ; this . spellcheckState . lockSpell = true ; this . SpellCheckApi . spellCheck ( { "type" : "spell" , "usrWords" : lastSpellInfo [ "usrWords" ] . slice ( lastIndex ) , "usrLang" : usrLang , "cellsInfo" : lastSpellInfo [ "cellsInfo" ] . slice ( lastIndex ) , "wordsIndex" : lastSpellInfo [ "wordsIndex" ] . slice ( lastIndex ) } ) } else this . cleanSpelling ( ) } ; spreadsheet _api . prototype . asc _setDefaultLanguage = function ( val ) { if ( this . spellcheckState . lockSpell ||
this . defaultLanguage === val ) return ; this . defaultLanguage = val ; this . _spellCheckRestart ( ) } ; spreadsheet _api . prototype . asc _nextWord = function ( ) { if ( this . spellcheckState . lockSpell ) return ; var ws = this . wb . getWorksheet ( ) ; var activeCell = ws . model . selectionRange . activeCell ; var lastSpell = this . spellcheckState . lastSpellInfo ; var cellsInfo ; if ( lastSpell ) { cellsInfo = lastSpell [ "cellsInfo" ] ; var usrWords = lastSpell [ "usrWords" ] ; var usrCorrect = lastSpell [ "usrCorrect" ] ; var wordsIndex = lastSpell [ "wordsIndex" ] ; var ignoreWords = this . spellcheckState . ignoreWords ;
var changeWords = this . spellcheckState . changeWords ; var lastIndex = this . spellcheckState . lastIndex ; this . spellcheckState . cellText = this . asc _getCellInfo ( ) . text ; var cellText = this . spellcheckState . newCellText || this . spellcheckState . cellText ; var afterReplace = this . spellcheckState . afterReplace ; for ( var i = 0 ; i < usrWords . length ; i ++ ) { var usrWord = usrWords [ i ] ; if ( ignoreWords [ usrWord ] || changeWords [ usrWord ] ) usrCorrect [ i ] = true } while ( cellsInfo [ lastIndex ] . col === activeCell . col && cellsInfo [ lastIndex ] . row === activeCell . row ) { var letterDifference =
null ; var word = usrWords [ lastIndex ] ; var newWord = this . spellcheckState . newWord ; if ( newWord ) letterDifference = newWord . length - word . length ; else if ( changeWords [ word ] ) letterDifference = changeWords [ word ] . length - word . length ; if ( letterDifference !== null ) { var replaceWith = newWord || changeWords [ word ] ; var valueForSearching = new RegExp ( usrWords [ lastIndex ] , "y" ) ; valueForSearching . lastIndex = wordsIndex [ lastIndex ] ; cellText = cellText . replace ( valueForSearching , replaceWith ) ; if ( letterDifference !== 0 ) { var j = lastIndex + 1 ; while ( j < usrWords . length &&
cellsInfo [ j ] . col === cellsInfo [ lastIndex ] . col ) { wordsIndex [ j ] += letterDifference ; j ++ } } this . spellcheckState . newCellText = cellText ; this . spellcheckState . newWord = null } if ( this . spellcheckState . newCellText ) { this . spellcheckState . cellsChange = [ ] ; var cell = cellsInfo [ lastIndex ] ; this . spellcheckState . cellsChange . push ( new Asc . Range ( cell . col , cell . row , cell . col , cell . row ) ) } if ( afterReplace && ! usrCorrect [ lastIndex ] ) { afterReplace = false ; break } ++ lastIndex ; if ( ! afterReplace && ! usrCorrect [ lastIndex ] ) { afterReplace = false ; break } } this . spellcheckState . lastIndex =
lastIndex ; this . SpellCheck _CallBack ( this . spellcheckState . lastSpellInfo ) ; return } var maxC = ws . model . getColsCount ( ) - 1 ; var maxR = ws . model . getRowsCount ( ) - 1 ; if ( - 1 === maxC || - 1 === maxR ) { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , new AscCommon . asc _CSpellCheckProperty ) ; return } if ( ! this . spellcheckState . startCell ) { this . spellcheckState . startCell = activeCell . clone ( ) ; if ( this . spellcheckState . startCell . col > maxC ) { this . spellcheckState . startCell . row += 1 ; this . spellcheckState . startCell . col = 0 } if ( this . spellcheckState . startCell . row >
maxR ) { this . spellcheckState . startCell . row = 0 ; this . spellcheckState . startCell . col = 0 } this . spellcheckState . currentCell = this . spellcheckState . startCell . clone ( ) } var startCell = this . spellcheckState . startCell ; var currentCell = this . spellcheckState . currentCell ; var lang = this . defaultLanguage ; var langArray = [ ] ; var wordsArray = [ ] ; cellsInfo = [ ] ; var wordsIndexArray = [ ] ; var isEnd = false ; do { if ( this . spellcheckState . iteration && currentCell . row > startCell . row ) break ; if ( currentCell . row > maxR ) { currentCell . row = 0 ; currentCell . col = 0 ; this . spellcheckState . iteration =
true } if ( this . spellcheckState . iteration && currentCell . row === startCell . row ) maxC = startCell . col - 1 ; if ( currentCell . col > maxC ) { this . spellcheckState . nextRow ( ) ; continue } ws . model . getRange3 ( currentCell . row , currentCell . col , currentCell . row , maxC ) . _foreachNoEmpty ( function ( cell , r , c ) { if ( cell . text !== null && ! cell . isFormula ( ) ) { var cellInfo = new AscCommon . CellBase ( r , c ) ; var wordsObject = AscCommonExcel . WordSplitting ( cell . text ) ; var words = wordsObject . wordsArray ; var wordsIndex = wordsObject . wordsIndex ; for ( var i = 0 ; i < words . length ; ++ i ) { wordsArray . push ( words [ i ] ) ;
wordsIndexArray . push ( wordsIndex [ i ] ) ; langArray . push ( lang ) ; cellsInfo . push ( cellInfo ) } isEnd = true } } ) ; if ( isEnd ) break ; this . spellcheckState . nextRow ( ) } while ( true ) ; if ( 0 < wordsArray . length ) { this . spellcheckState . lockSpell = true ; this . SpellCheckApi . spellCheck ( { "type" : "spell" , "usrWords" : wordsArray , "usrLang" : langArray , "cellsInfo" : cellsInfo , "wordsIndex" : wordsIndexArray } ) } else { this . handlers . trigger ( "asc_onSpellCheckVariantsFound" , new AscCommon . asc _CSpellCheckProperty ) ; var lastFindOptions = this . spellcheckState . lastFindOptions ;
var cellsChange = this . spellcheckState . cellsChange ; if ( cellsChange . length !== 0 && lastFindOptions ) { this . spellcheckState . lockSpell = true ; this . asc _replaceMisspelledWords ( lastFindOptions ) } this . spellcheckState . isStart = false } } ; spreadsheet _api . prototype . asc _replaceMisspelledWord = function ( newWord , variantsFound , replaceAll ) { var options = new Asc . asc _CFindOptions ; options . isSpellCheck = true ; options . wordsIndex = this . spellcheckState . wordsIndex ; this . spellcheckState . newWord = newWord ; options . isMatchCase = true ; if ( replaceAll ===
true ) { if ( ! this . spellcheckState . isIgnoreUppercase ) this . spellcheckState . changeWords [ variantsFound . Word ] = newWord ; else this . spellcheckState . changeWords [ variantsFound . Word . toLowerCase ( ) ] = newWord ; options . isReplaceAll = true } this . spellcheckState . lockSpell = false ; this . spellcheckState . lastFindOptions = options ; this . asc _nextWord ( ) } ; spreadsheet _api . prototype . asc _replaceMisspelledWords = function ( options ) { var t = this ; var ws = this . wb . getWorksheet ( ) ; var cellsChange = this . spellcheckState . cellsChange ; var changeWords = this . spellcheckState . changeWords ;
var cellText = this . spellcheckState . cellText ; var newCellText = this . spellcheckState . newCellText ; if ( ! newCellText ) { cellText = null ; newCellText = null } var replaceWords = [ ] ; options . isWholeWord = true ; for ( var key in changeWords ) replaceWords . push ( [ AscCommonExcel . getFindRegExp ( key , options ) , changeWords [ key ] ] ) ; options . findWhat = cellText ; options . isMatchCase = true ; options . replaceWith = newCellText ; options . replaceWords = replaceWords ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; ws . _replaceCellsText ( cellsChange , options ,
false , function ( ) { t . spellcheckState . cellsChange = [ ] ; options . indexInArray = 0 ; var lastSpell = t . spellcheckState . lastSpellInfo ; if ( lastSpell ) { var lastIndex = t . spellcheckState . lastIndex ; var cellInfo = lastSpell [ "cellsInfo" ] [ lastIndex ] ; t . spellcheckState . lockSpell = true ; ws . setSelection ( new Asc . Range ( cellInfo . col , cellInfo . row , cellInfo . col , cellInfo . row ) ) ; t . spellcheckState . lockSpell = false ; t . spellcheckState . newWord = null ; t . spellcheckState . newCellText = null ; t . spellcheckState . afterReplace = true ; t . spellcheckState . lastIndex =
0 ; t . spellcheckState . cellText = t . asc _getCellInfo ( ) . text ; t . asc _nextWord ( ) ; return } t . spellcheckState . lockSpell = false ; History . EndTransaction ( ) } ) } ; spreadsheet _api . prototype . asc _ignoreMisspelledWord = function ( spellCheckProperty , ignoreAll ) { if ( ignoreAll ) { var word = spellCheckProperty . Word ; this . spellcheckState . ignoreWords [ word ] = word } this . asc _nextWord ( ) } ; spreadsheet _api . prototype . asc _ignoreNumbers = function ( isIgnore ) { this . spellcheckState . isIgnoreNumbers = isIgnore } ; spreadsheet _api . prototype . asc _ignoreUppercase = function ( isIgnore ) { this . spellcheckState . isIgnoreUppercase =
isIgnore } ; spreadsheet _api . prototype . asc _cancelSpellCheck = function ( ) { this . cleanSpelling ( ) } ; spreadsheet _api . prototype . asc _freezePane = function ( ) { if ( this . canEdit ( ) ) this . wb . getWorksheet ( ) . freezePane ( ) } ; spreadsheet _api . prototype . asc _setSparklineGroup = function ( id , oSparklineGroup ) { var t = this ; var changeSparkline = function ( res ) { if ( res ) { var changedSparkline = g _oTableId . Get _ById ( id ) ; if ( changedSparkline ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; changedSparkline . set ( oSparklineGroup ) ; History . EndTransaction ( ) ;
t . wb . _onWSSelectionChanged ( ) ; t . wb . getWorksheet ( ) . draw ( ) } } } ; this . _isLockedSparkline ( id , changeSparkline ) } ; spreadsheet _api . prototype . asc _setListType = function ( type , subtype ) { var t = this ; var sNeedFont = AscFormat . fGetFontByNumInfo ( type , subtype ) ; if ( typeof sNeedFont === "string" && sNeedFont . length > 0 ) { var t = this , fonts = { } ; fonts [ sNeedFont ] = 1 ; t . _loadFonts ( fonts , function ( ) { t . asc _setListType2 ( type , subtype ) } ) } else t . asc _setListType2 ( type , subtype ) } ; spreadsheet _api . prototype . asc _setListType2 = function ( type , subtype ) { var oWorksheet =
this . wb . getWorksheet ( ) ; if ( oWorksheet ) if ( oWorksheet . isSelectOnShape ) return oWorksheet . objectRender . setListType ( type , subtype ) } ; spreadsheet _api . prototype . asc _getCellInfo = function ( ) { return this . wb . getSelectionInfo ( ) } ; spreadsheet _api . prototype . asc _getActiveCellCoord = function ( ) { var oWorksheet = this . wb . getWorksheet ( ) ; if ( oWorksheet ) if ( oWorksheet . isSelectOnShape ) return oWorksheet . objectRender . getContextMenuPosition ( ) ; else return oWorksheet . getActiveCellCoord ( ) } ; spreadsheet _api . prototype . asc _getAnchorPosition =
function ( ) { return this . asc _getActiveCellCoord ( ) } ; spreadsheet _api . prototype . asc _getCellEditMode = function ( ) { return this . wb ? this . wb . getCellEditMode ( ) : false } ; spreadsheet _api . prototype . asc _getHeaderFooterMode = function ( ) { return this . wb && this . wb . getCellEditMode ( ) && this . wb . cellEditor && this . wb . cellEditor . options && this . wb . cellEditor . options . menuEditor } ; spreadsheet _api . prototype . asc _getIsTrackShape = function ( ) { return this . wb ? this . wb . getIsTrackShape ( ) : false } ; spreadsheet _api . prototype . asc _setCellFontName = function ( fontName ) { var t =
this , fonts = { } ; fonts [ fontName ] = 1 ; t . _loadFonts ( fonts , function ( ) { var ws = t . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellFontName ) ws . objectRender . controller . setCellFontName ( fontName ) ; else { t . wb . setFontAttributes ( "fn" , fontName ) ; t . wb . restoreFocus ( ) } } ) } ; spreadsheet _api . prototype . asc _setCellFontSize = function ( fontSize ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellFontSize ) ws . objectRender . controller . setCellFontSize ( fontSize ) ;
else { this . wb . setFontAttributes ( "fs" , fontSize ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBold = function ( isBold ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBold ) ws . objectRender . controller . setCellBold ( isBold ) ; else { this . wb . setFontAttributes ( "b" , isBold ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellItalic = function ( isItalic ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) &&
ws . objectRender . controller . setCellItalic ) ws . objectRender . controller . setCellItalic ( isItalic ) ; else { this . wb . setFontAttributes ( "i" , isItalic ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellUnderline = function ( isUnderline ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellUnderline ) ws . objectRender . controller . setCellUnderline ( isUnderline ) ; else { this . wb . setFontAttributes ( "u" , isUnderline ? Asc . EUnderline . underlineSingle : Asc . EUnderline . underlineNone ) ;
this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellStrikeout = function ( isStrikeout ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellStrikeout ) ws . objectRender . controller . setCellStrikeout ( isStrikeout ) ; else { this . wb . setFontAttributes ( "s" , isStrikeout ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellSubscript = function ( isSubscript ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellSubscript ) ws . objectRender . controller . setCellSubscript ( isSubscript ) ;
else { this . wb . setFontAttributes ( "fa" , isSubscript ? AscCommon . vertalign _SubScript : null ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellSuperscript = function ( isSuperscript ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellSuperscript ) ws . objectRender . controller . setCellSuperscript ( isSuperscript ) ; else { this . wb . setFontAttributes ( "fa" , isSuperscript ? AscCommon . vertalign _SuperScript : null ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellAlign =
function ( align ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellAlign ) ws . objectRender . controller . setCellAlign ( align ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "a" , align ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellVertAlign = function ( align ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellVertAlign ) ws . objectRender . controller . setCellVertAlign ( align ) ;
else { this . wb . getWorksheet ( ) . setSelectionInfo ( "va" , align ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextWrap = function ( isWrapped ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellTextWrap ) ws . objectRender . controller . setCellTextWrap ( isWrapped ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "wrap" , isWrapped ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextShrink = function ( isShrinked ) { var ws = this . wb . getWorksheet ( ) ;
if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellTextShrink ) ws . objectRender . controller . setCellTextShrink ( isShrinked ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "shrink" , isShrinked ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellTextColor = function ( color ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellTextColor ) ws . objectRender . controller . setCellTextColor ( color ) ; else if ( color instanceof
Asc . asc _CColor ) { color = AscCommonExcel . CorrectAscColor ( color ) ; this . wb . setFontAttributes ( "c" , color ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellFill = function ( fill ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBackgroundColor ) ws . objectRender . controller . setCellBackgroundColor ( fill ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "f" , fill ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBackgroundColor = function ( color ) { var ws =
this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellBackgroundColor ) ws . objectRender . controller . setCellBackgroundColor ( color ) ; else if ( color instanceof Asc . asc _CColor || null == color ) { if ( null != color ) color = AscCommonExcel . CorrectAscColor ( color ) ; this . wb . getWorksheet ( ) . setSelectionInfo ( "bc" , color ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellBorders = function ( borders ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "border" , borders ) ; this . wb . restoreFocus ( ) } ;
spreadsheet _api . prototype . asc _setCellFormat = function ( format ) { var t = this ; var numFormat = AscCommon . oNumFormatCache . get ( format ) ; numFormat . checkCultureInfoFontPicker ( ) ; this . _loadFonts ( [ ] , function ( ) { t . wb . setCellFormat ( format ) ; t . wb . restoreFocus ( ) } ) } ; spreadsheet _api . prototype . asc _setCellAngle = function ( angle ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . setCellAngle ) ws . objectRender . controller . setCellAngle ( angle ) ; else { this . wb . getWorksheet ( ) . setSelectionInfo ( "angle" ,
angle ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _setCellStyle = function ( name ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "style" , name ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _increaseCellDigitNumbers = function ( ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "changeDigNum" , + 1 ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _decreaseCellDigitNumbers = function ( ) { this . wb . getWorksheet ( ) . setSelectionInfo ( "changeDigNum" , - 1 ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _increaseFontSize =
function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . increaseFontSize ) ws . objectRender . controller . increaseFontSize ( ) ; else { this . wb . changeFontSize ( "changeFontSize" , true ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _decreaseFontSize = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . objectRender . selectedGraphicObjectsExists ( ) && ws . objectRender . controller . decreaseFontSize ) ws . objectRender . controller . decreaseFontSize ( ) ; else { this . wb . changeFontSize ( "changeFontSize" ,
false ) ; this . wb . restoreFocus ( ) } } ; spreadsheet _api . prototype . asc _formatPainter = function ( formatPainterState ) { if ( this . wb ) this . wb . formatPainter ( formatPainterState ) } ; spreadsheet _api . prototype . asc _showAutoComplete = function ( ) { this . wb . showAutoComplete ( ) } ; spreadsheet _api . prototype . asc _onMouseUp = function ( event , x , y ) { if ( this . wb ) this . wb . _onWindowMouseUpExternal ( event , x , y ) } ; spreadsheet _api . prototype . asc _selectFunction = function ( ) { } ; spreadsheet _api . prototype . asc _insertHyperlink = function ( options ) { AscFonts . FontPickerByCharacter . checkText ( options . text ,
this , function ( ) { this . wb . insertHyperlink ( options ) } ) } ; spreadsheet _api . prototype . asc _removeHyperlink = function ( ) { this . wb . removeHyperlink ( ) } ; spreadsheet _api . prototype . asc _cleanSelectRange = function ( ) { this . wb . _onCleanSelectRange ( ) } ; spreadsheet _api . prototype . asc _insertInCell = function ( functionName , type , autoComplete ) { this . wb . insertInCellEditor ( functionName , type , autoComplete ) ; this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _startWizard = function ( name , doCleanCellContent ) { this . wb . startWizard ( name , doCleanCellContent ) ;
this . wb . restoreFocus ( ) } ; spreadsheet _api . prototype . asc _canEnterWizardRange = function ( char ) { return this . wb . canEnterWizardRange ( char ) } ; spreadsheet _api . prototype . asc _insertArgumentsInFormula = function ( val , argNum , argType , name ) { var res = this . wb . insertArgumentsInFormula ( val , argNum , argType , name ) ; this . wb . restoreFocus ( ) ; return res } ; spreadsheet _api . prototype . asc _getFormulasInfo = function ( ) { return this . formulasList } ; spreadsheet _api . prototype . asc _getFormulaLocaleName = function ( name ) { return AscCommonExcel . cFormulaFunctionToLocale ?
AscCommonExcel . cFormulaFunctionToLocale [ name ] : name } ; spreadsheet _api . prototype . asc _getFormulaNameByLocale = function ( name ) { var f = AscCommonExcel . cFormulaFunctionLocalized && AscCommonExcel . cFormulaFunctionLocalized [ name ] ; return f ? f . prototype . name : name } ; spreadsheet _api . prototype . asc _calculate = function ( type ) { if ( this . canEdit ( ) ) this . wb . calculate ( type ) } ; spreadsheet _api . prototype . asc _setFontRenderingMode = function ( mode ) { if ( mode !== this . fontRenderingMode ) { this . fontRenderingMode = mode ; if ( this . wb ) this . wb . setFontRenderingMode ( mode ,
false ) } } ; spreadsheet _api . prototype . asc _setSelectionDialogMode = function ( selectionDialogType , selectRange ) { if ( this . wb ) { this . wb . _onStopFormatPainter ( ) ; this . wb . setSelectionDialogMode ( selectionDialogType , selectRange ) } } ; spreadsheet _api . prototype . asc _SendThemeColors = function ( colors , standart _colors ) { this . _gui _control _colors = { Colors : colors , StandartColors : standart _colors } ; var ret = this . handlers . trigger ( "asc_onSendThemeColors" , colors , standart _colors ) ; if ( false !== ret ) this . _gui _control _colors = null } ; spreadsheet _api . prototype . getCurrentTheme =
function ( ) { return this . wbModel && this . wbModel . theme } ; spreadsheet _api . prototype . asc _ChangeColorScheme = function ( sSchemeName ) { var t = this ; var onChangeColorScheme = function ( res ) { if ( res ) if ( t . wbModel . changeColorScheme ( sSchemeName ) ) t . asc _AfterChangeColorScheme ( ) } ; var sheetId = - 1 ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , onChangeColorScheme ) } ; spreadsheet _api . prototype . asc _ChangeColorSchemeByIdx = function ( nIdx ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return ; var t = this ; var onChangeColorScheme = function ( res ) { if ( res ) if ( t . wbModel . changeColorSchemeByIdx ( nIdx ) ) t . asc _AfterChangeColorScheme ( ) } ; var sheetId = - 1 ; var lockInfo = this . collaborativeEditing . getLockInfo ( c _oAscLockTypeElem . Object , null , sheetId , sheetId ) ; this . collaborativeEditing . lock ( [ lockInfo ] , onChangeColorScheme ) } ; spreadsheet _api . prototype . asc _AfterChangeColorScheme = function ( ) { this . asc _CheckGuiControlColors ( ) ; this . asc _ApplyColorScheme ( true ) } ; spreadsheet _api . prototype . asc _ApplyColorScheme =
function ( bRedraw ) { if ( window [ "IS_NATIVE_EDITOR" ] || ! window [ "NATIVE_EDITOR_ENJINE" ] ) { var wsViews = Asc [ "editor" ] . wb . wsViews ; History . Get _RecalcData ( ) ; for ( var i = 0 ; i < wsViews . length ; ++ i ) if ( wsViews [ i ] && wsViews [ i ] . objectRender && wsViews [ i ] . objectRender . controller ) wsViews [ i ] . objectRender . controller . startRecalculate ( false ) ; this . chartPreviewManager . clearPreviews ( ) ; this . textArtPreviewManager . clear ( ) } if ( ! this . getViewMode ( ) ) this . _sendWorkbookStyles ( ) ; if ( bRedraw ) { this . handlers . trigger ( "asc_onUpdateChartStyles" ) ; this . handlers . trigger ( "asc_onSelectionChanged" ,
this . asc _getCellInfo ( ) ) ; this . wb . drawWS ( ) } } ; spreadsheet _api . prototype . _autoSaveInner = function ( ) { if ( this . asc _getCellEditMode ( ) || this . asc _getIsTrackShape ( ) ) return ; if ( ! History . Have _Changes ( true ) && ! ( this . collaborativeEditing . getCollaborativeEditing ( ) && 0 !== this . collaborativeEditing . getOwnLocksLength ( ) ) ) { if ( this . collaborativeEditing . getFast ( ) && this . collaborativeEditing . haveOtherChanges ( ) ) { AscCommon . CollaborativeEditing . Clear _CollaborativeMarks ( ) ; this . collaborativeEditing . applyChanges ( ) ; this . collaborativeEditing . sendChanges ( ) ;
this . wb . _onWSSelectionChanged ( ) } return } if ( null === this . lastSaveTime ) { this . lastSaveTime = new Date ; return } var saveGap = this . collaborativeEditing . getFast ( ) ? this . autoSaveGapRealTime : this . collaborativeEditing . getCollaborativeEditing ( ) ? this . autoSaveGapSlow : this . autoSaveGapFast ; var gap = new Date - this . lastSaveTime - saveGap ; if ( 0 <= gap ) this . asc _Save ( true ) } ; spreadsheet _api . prototype . _onUpdateDocumentCanSave = function ( ) { var tmp = History . Have _Changes ( ) || this . collaborativeEditing . getCollaborativeEditing ( ) && 0 !== this . collaborativeEditing . getOwnLocksLength ( ) ||
this . asc _getCellEditMode ( ) ; if ( tmp !== this . isDocumentCanSave ) { this . isDocumentCanSave = tmp ; this . handlers . trigger ( "asc_onDocumentCanSaveChanged" , this . isDocumentCanSave ) } } ; spreadsheet _api . prototype . _onUpdateDocumentCanUndoRedo = function ( ) { AscCommon . History . _sendCanUndoRedo ( ) } ; spreadsheet _api . prototype . _onCheckCommentRemoveLock = function ( lockElem ) { var res = false ; var sheetId = lockElem [ "sheetId" ] ; if ( - 1 !== sheetId && 0 === sheetId . indexOf ( AscCommonExcel . CCellCommentator . sStartCommentId ) ) { res = true ; this . handlers . trigger ( "asc_onUnLockComment" ,
lockElem [ "rangeOrObjectId" ] ) } return res } ; spreadsheet _api . prototype . onUpdateDocumentModified = function ( bIsModified ) { if ( this . canSave ) { this . handlers . trigger ( "asc_onDocumentModifiedChanged" , bIsModified ) ; this . _onUpdateDocumentCanSave ( ) ; if ( undefined !== window [ "AscDesktopEditor" ] ) window [ "AscDesktopEditor" ] [ "onDocumentModifiedChanged" ] ( bIsModified ) } } ; spreadsheet _api . prototype . asc _setLocalization = function ( oLocalizedData ) { if ( ! this . isLoadFullApi ) { this . tmpLocalization = oLocalizedData ; return } if ( null == oLocalizedData ) { AscCommonExcel . cFormulaFunctionLocalized =
null ; AscCommonExcel . cFormulaFunctionToLocale = null } else { AscCommonExcel . cFormulaFunctionLocalized = { } ; AscCommonExcel . cFormulaFunctionToLocale = { } ; var localName ; for ( var i in AscCommonExcel . cFormulaFunction ) { localName = oLocalizedData [ i ] ? oLocalizedData [ i ] : null ; localName = localName ? localName : i ; AscCommonExcel . cFormulaFunctionLocalized [ localName ] = AscCommonExcel . cFormulaFunction [ i ] ; AscCommonExcel . cFormulaFunctionToLocale [ i ] = localName } } AscCommon . build _local _rx ( oLocalizedData ? oLocalizedData [ "LocalFormulaOperands" ] :
null ) ; if ( this . wb ) this . wb . initFormulasList ( ) ; if ( this . wbModel ) this . wbModel . rebuildColors ( ) } ; spreadsheet _api . prototype . asc _nativeOpenFile = function ( base64File , version , isUser , xlsxPath ) { var t = this ; asc [ "editor" ] = this ; this . SpellCheckUrl = "" ; if ( undefined == isUser ) { this . User = new AscCommon . asc _CUser ; this . User . setId ( "TM" ) ; this . User . setUserName ( "native" ) } if ( undefined !== version ) AscCommon . CurFileVersion = version ; this . _openDocument ( base64File ) ; var thenCallback = function ( ) { g _oIdCounter . Set _Load ( false ) ; AscCommon . checkCultureInfoFontPicker ( ) ;
AscCommonExcel . checkStylesNames ( t . wbModel . CellStyles ) ; t . _coAuthoringInit ( ) ; t . wb = new AscCommonExcel . WorkbookView ( t . wbModel , t . controller , t . handlers , window [ "_null_object" ] , window [ "_null_object" ] , t , t . collaborativeEditing , t . fontRenderingMode ) } ; return this . openDocumentFromZip ( t . wbModel , xlsxPath ) . then ( thenCallback , thenCallback ) } ; spreadsheet _api . prototype . asc _nativeCalculateFile = function ( ) { window [ "DoctRendererMode" ] = true ; this . wb . _nativeCalculate ( ) } ; spreadsheet _api . prototype . asc _nativeApplyChanges = function ( changes ) { for ( var i =
0 , l = changes . length ; i < l ; ++ i ) this . CoAuthoringApi . onSaveChanges ( changes [ i ] , null , true ) ; this . collaborativeEditing . applyChanges ( ) } ; spreadsheet _api . prototype . asc _nativeApplyChanges2 = function ( data , isFull ) { if ( null != this . wbModel ) this . oRedoObjectParamNative = this . wbModel . DeserializeHistoryNative ( this . oRedoObjectParamNative , data , isFull ) ; if ( isFull ) this . _onUpdateAfterApplyChanges ( ) } ; spreadsheet _api . prototype . asc _nativeGetFile = function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; return oBinaryFileWriter . Write ( ) } ;
spreadsheet _api . prototype . asc _nativeGetFile3 = function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; oBinaryFileWriter . Write ( true , true ) ; return { data : oBinaryFileWriter . Write ( true , true ) , header : oBinaryFileWriter . WriteFileHeader ( oBinaryFileWriter . Memory . GetCurPosition ( ) , Asc . c _nVersionNoBase64 ) } } ; spreadsheet _api . prototype . asc _nativeGetFileData = function ( ) { var oBinaryFileWriter = new AscCommonExcel . BinaryFileWriter ( this . wbModel ) ; oBinaryFileWriter . Write ( true ) ; var _header = oBinaryFileWriter . WriteFileHeader ( oBinaryFileWriter . Memory . GetCurPosition ( ) ,
Asc . c _nVersionNoBase64 ) ; window [ "native" ] [ "Save_End" ] ( _header , oBinaryFileWriter . Memory . GetCurPosition ( ) ) ; return oBinaryFileWriter . Memory . ImData . data } ; spreadsheet _api . prototype . asc _nativeCalculate = function ( ) { } ; spreadsheet _api . prototype . asc _nativePrint = function ( _printer , _page , _options ) { var _adjustPrint = window . AscDesktopEditor _PrintOptions && window . AscDesktopEditor _PrintOptions . advancedOptions || new Asc . asc _CAdjustPrint ; window . AscDesktopEditor _PrintOptions = undefined ; var pageSetup ; var countWorksheets = this . wbModel . getWorksheetCount ( ) ;
if ( _options ) { var isOnlyFirstPage = _options [ "printOptions" ] && _options [ "printOptions" ] [ "onlyFirstPage" ] ; if ( isOnlyFirstPage ) _adjustPrint . isOnlyFirstPage = true ; var spreadsheetLayout = _options [ "spreadsheetLayout" ] ; var _ignorePrintArea = spreadsheetLayout && ( true === spreadsheetLayout [ "ignorePrintArea" ] || false === spreadsheetLayout [ "ignorePrintArea" ] ) ? spreadsheetLayout [ "ignorePrintArea" ] : null ; if ( null !== _ignorePrintArea ) _adjustPrint . asc _setIgnorePrintArea ( _ignorePrintArea ) ; else _adjustPrint . asc _setIgnorePrintArea ( true ) ;
_adjustPrint . asc _setPrintType ( Asc . c _oAscPrintType . EntireWorkbook ) ; var ws , newPrintOptions ; var _orientation = spreadsheetLayout ? spreadsheetLayout [ "orientation" ] : null ; if ( _orientation === "portrait" ) _orientation = Asc . c _oAscPageOrientation . PagePortrait ; else if ( _orientation === "landscape" ) _orientation = Asc . c _oAscPageOrientation . PageLandscape ; else _orientation = null ; var _fitToWidth = spreadsheetLayout && AscCommon . isNumber ( spreadsheetLayout [ "fitToWidth" ] ) ? spreadsheetLayout [ "fitToWidth" ] : null ; var _fitToHeight = spreadsheetLayout &&
AscCommon . isNumber ( spreadsheetLayout [ "fitToHeight" ] ) ? spreadsheetLayout [ "fitToHeight" ] : null ; var _scale = spreadsheetLayout && AscCommon . isNumber ( spreadsheetLayout [ "scale" ] ) ? spreadsheetLayout [ "scale" ] : null ; var _headings = spreadsheetLayout && ( true === spreadsheetLayout [ "headings" ] || false === spreadsheetLayout [ "headings" ] ) ? spreadsheetLayout [ "headings" ] : null ; var _gridLines = spreadsheetLayout && ( true === spreadsheetLayout [ "gridLines" ] || false === spreadsheetLayout [ "gridLines" ] ) ? spreadsheetLayout [ "gridLines" ] : null ; var _pageSize =
spreadsheetLayout ? spreadsheetLayout [ "pageSize" ] : null ; if ( _pageSize ) { var width = AscCommon . valueToMm ( _pageSize [ "width" ] ) ; var height = AscCommon . valueToMm ( _pageSize [ "height" ] ) ; _pageSize = null !== width && null !== height ? { width : width , height : height } : null } var _margins = spreadsheetLayout ? spreadsheetLayout [ "margins" ] : null ; if ( _margins ) { var left = AscCommon . valueToMm ( _margins [ "left" ] ) ; var right = AscCommon . valueToMm ( _margins [ "right" ] ) ; var top = AscCommon . valueToMm ( _margins [ "top" ] ) ; var bottom = AscCommon . valueToMm ( _margins [ "bottom" ] ) ;
_margins = null !== left && null !== right && null !== top && null !== bottom ? { left : left , right : right , top : top , bottom : bottom } : null } for ( var index = 0 ; index < this . wbModel . getWorksheetCount ( ) ; ++ index ) { ws = this . wbModel . getWorksheet ( index ) ; newPrintOptions = ws . PagePrintOptions . clone ( ) ; var _pageSetup = newPrintOptions . pageSetup ; if ( null !== _orientation ) _pageSetup . orientation = _orientation ; if ( _fitToWidth || _fitToHeight ) { _pageSetup . fitToWidth = _fitToWidth ; _pageSetup . fitToHeight = _fitToHeight } else if ( _scale ) { _pageSetup . scale = _scale ; _pageSetup . fitToWidth =
0 ; _pageSetup . fitToHeight = 0 } if ( null !== _headings ) newPrintOptions . headings = _headings ; if ( null !== _gridLines ) newPrintOptions . gridLines = _gridLines ; if ( _pageSize ) { _pageSetup . width = _pageSize . width ; _pageSetup . height = _pageSize . height } var pageMargins = newPrintOptions . pageMargins ; if ( _margins ) { pageMargins . left = _margins . left ; pageMargins . right = _margins . right ; pageMargins . top = _margins . top ; pageMargins . bottom = _margins . bottom } if ( ! _adjustPrint . pageOptionsMap ) _adjustPrint . pageOptionsMap = [ ] ; _adjustPrint . pageOptionsMap [ index ] =
newPrintOptions } } var _printPagesData = this . wb . calcPagesPrint ( _adjustPrint ) ; if ( undefined === _printer && _page === undefined ) { _printer = this . wb . printSheets ( _printPagesData ) . DocumentRenderer ; if ( undefined !== window [ "AscDesktopEditor" ] ) { var pagescount = _printer . m _lPagesCount ; window [ "AscDesktopEditor" ] [ "Print_Start" ] ( this . documentId + "/" , pagescount , "" , - 1 ) ; for ( var i = 0 ; i < pagescount ; i ++ ) { var _start = _printer . m _arrayPages [ i ] . StartOffset ; var _end = _printer . Memory . pos ; if ( i != pagescount - 1 ) _end = _printer . m _arrayPages [ i + 1 ] . StartOffset ;
window [ "AscDesktopEditor" ] [ "Print_Page" ] ( _printer . Memory . GetBase64Memory2 ( _start , _end - _start ) , _printer . m _arrayPages [ i ] . Width , _printer . m _arrayPages [ i ] . Height ) } var paramEnd = 0 ; if ( _adjustPrint && _adjustPrint . asc _getPrintType ( ) == Asc . c _oAscPrintType . EntireWorkbook ) for ( var j = 0 ; j < countWorksheets ; ++ j ) { if ( _adjustPrint && _adjustPrint . pageOptionsMap && _adjustPrint . pageOptionsMap [ j ] ) pageSetup = _adjustPrint . pageOptionsMap [ j ] . pageSetup ; else pageSetup = this . wbModel . getWorksheet ( j ) . PagePrintOptions . asc _getPageSetup ( ) ;
if ( pageSetup . asc _getFitToWidth ( ) || pageSetup . asc _getFitToHeight ( ) ) paramEnd |= 1 } if ( _adjustPrint && _adjustPrint . asc _getPrintType ( ) == Asc . c _oAscPrintType . ActiveSheets ) { var activeSheet = this . wbModel . getActive ( ) ; if ( _adjustPrint && _adjustPrint . pageOptionsMap && _adjustPrint . pageOptionsMap [ activeSheet ] ) pageSetup = _adjustPrint . pageOptionsMap [ activeSheet ] . pageSetup ; else pageSetup = this . wbModel . getWorksheet ( activeSheet ) . PagePrintOptions . asc _getPageSetup ( ) ; if ( pageSetup . asc _getFitToWidth ( ) || pageSetup . asc _getFitToHeight ( ) ) paramEnd |=
1 } window [ "AscDesktopEditor" ] [ "Print_End" ] ( paramEnd ) } } else this . wb . printSheets ( _printPagesData , _printer ) ; return _printer . Memory } ; spreadsheet _api . prototype . asc _nativePrintPagesCount = function ( ) { return 1 } ; spreadsheet _api . prototype . asc _nativeGetPDF = function ( options ) { var _ret = this . asc _nativePrint ( undefined , undefined , options ) ; window [ "native" ] [ "Save_End" ] ( "" , _ret . GetCurPosition ( ) ) ; return _ret . data } ; spreadsheet _api . prototype . asc _canPaste = function ( ) { History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; return true } ;
spreadsheet _api . prototype . asc _endPaste = function ( ) { History . EndTransaction ( ) } ; spreadsheet _api . prototype . asc _Recalculate = function ( ) { History . EndTransaction ( ) ; this . _onUpdateAfterApplyChanges ( ) } ; spreadsheet _api . prototype . pre _Paste = function ( _fonts , _images , callback ) { AscFonts . FontPickerByCharacter . extendFonts ( _fonts ) ; var oFontMap = { } ; for ( var i = 0 ; i < _fonts . length ; ++ i ) oFontMap [ _fonts [ i ] . name ] = 1 ; this . _loadFonts ( oFontMap , function ( ) { var aImages = [ ] ; for ( var key in _images ) if ( _images . hasOwnProperty ( key ) ) aImages . push ( _images [ key ] ) ;
if ( aImages . length > 0 ) window [ "Asc" ] [ "editor" ] . ImageLoader . LoadDocumentImages ( aImages ) ; callback ( ) } ) } ; spreadsheet _api . prototype . getDefaultFontFamily = function ( ) { return this . wbModel . getDefaultFont ( ) } ; spreadsheet _api . prototype . getDefaultFontSize = function ( ) { return this . wbModel . getDefaultSize ( ) } ; spreadsheet _api . prototype . _onEndLoadSdk = function ( ) { AscCommon . baseEditorsApi . prototype . _onEndLoadSdk . call ( this ) ; History = AscCommon . History ; this . controller = new AscCommonExcel . asc _CEventsController ; this . formulasList = AscCommonExcel . getFormulasInfo ( ) ;
this . asc _setLocale ( this . tmpLCID , this . tmpDecimalSeparator , this . tmpGroupSeparator ) ; this . asc _setLocalization ( this . tmpLocalization ) ; this . asc _setViewMode ( this . isViewMode ) ; if ( this . openFileCryptBinary ) this . openFileCryptCallback ( this . openFileCryptBinary ) } ; spreadsheet _api . prototype . asc _OnShowContextMenu = function ( ) { this . asc _closeCellEditor ( ) } ; spreadsheet _api . prototype . _changePivotSimple = function ( pivot , isInsert , needUpdateView , callback ) { var wsModel = pivot . GetWS ( ) ; var ws = this . wb . getWorksheet ( wsModel . getIndex ( ) ) ;
if ( isInsert ) pivot . stashEmptyReportRange ( ) ; else pivot . stashCurReportRange ( ) ; callback ( wsModel ) ; var dataRow ; var pivotChanged = pivot . getAndCleanChanged ( ) ; if ( pivotChanged . data ) { var updateRes = pivot . updateAfterEdit ( ) ; dataRow = updateRes . dataRow } this . _updatePivotTable ( pivot , pivotChanged , wsModel , ws , dataRow , needUpdateView , false ) } ; spreadsheet _api . prototype . updatePivotTables = function ( ) { var t = this ; this . wbModel . forEach ( function ( wsModel ) { var ws = t . wb . getWorksheet ( wsModel . getIndex ( ) ) ; for ( var i = 0 ; i < wsModel . pivotTables . length ; ++ i ) { var pivot =
wsModel . pivotTables [ i ] ; t . _updatePivotTable ( pivot , pivot . getAndCleanChanged ( ) , wsModel , ws , undefined , false , true ) } } ) } ; spreadsheet _api . prototype . _updatePivotTable = function ( pivot , changed , wsModel , ws , dataRow , needUpdateView , canModifyDocument ) { var ranges = wsModel . updatePivotTable ( pivot , changed , dataRow , canModifyDocument ) ; if ( needUpdateView ) { if ( changed . oldRanges ) ws . updateRanges ( changed . oldRanges ) ; if ( ranges ) { ws . updateRanges ( ranges ) ; ws . _autoFitColumnsWidth ( ranges ) } if ( this . wbModel . getActive ( ) === wsModel . getIndex ( ) ) ws . draw ( ) } } ;
spreadsheet _api . prototype . asc _getAddPivotTableOptions = function ( range ) { var ws = this . wb . getWorksheet ( ) ; if ( ws . model . getSelection ( ) . isSingleRange ( ) ) return ws . getAddFormatTableOptions ( range , true ) ; else { var res = new AscCommonExcel . AddFormatTableOptions ; res . asc _setIsTitle ( false ) ; res . asc _setRange ( "" ) } return res } ; spreadsheet _api . prototype . asc _insertPivotNewWorksheet = function ( dataRef , newSheetName ) { var t = this ; if ( Asc . CT _pivotTableDefinition . prototype . isValidDataRef ( dataRef ) ) { var wb = this . wbModel ; this . _isLockedAddWorksheets ( function ( res ) { if ( res ) { History . Create _NewPoint ( ) ;
History . StartTransaction ( ) ; var worksheets = t . _addWorksheetsWithoutLock ( [ newSheetName ] , wb . getActive ( ) ) ; var ws = worksheets [ 0 ] ; var range = new Asc . Range ( AscCommonExcel . NEW _PIVOT _COL , AscCommonExcel . NEW _PIVOT _ROW , AscCommonExcel . NEW _PIVOT _COL , AscCommonExcel . NEW _PIVOT _ROW ) ; t . _asc _insertPivot ( wb , dataRef , ws , range , false ) ; History . EndTransaction ( ) } else t . sendEvent ( "asc_onError" , c _oAscError . ID . LockedCellPivot , c _oAscError . Level . NoCritical ) } ) } else this . sendEvent ( "asc_onError" , c _oAscError . ID . PivotLabledColumns , c _oAscError . Level . NoCritical ) } ;
spreadsheet _api . prototype . asc _insertPivotExistingWorksheet = function ( dataRef , pivotRef , confirmation ) { var location = Asc . CT _pivotTableDefinition . prototype . parseDataRef ( pivotRef ) ; if ( location ) { var wb = this . wbModel ; var ws = location . ws ; if ( ws ) this . wbModel . setActiveById ( ws . getId ( ) ) ; else ws = wb . getActiveWs ( ) ; this . wb . updateWorksheetByModel ( ) ; this . wb . showWorksheet ( ) ; this . _asc _insertPivot ( wb , dataRef , ws , location . bbox , false ) } } ; spreadsheet _api . prototype . _asc _insertPivot = function ( wb , dataRef , ws , location , confirmation ) { var t =
this ; History . Create _NewPoint ( ) ; History . StartTransaction ( ) ; var pivotName = wb . dependencyFormulas . getNextPivotName ( ) ; var pivot = new Asc . CT _pivotTableDefinition ( true ) ; var cacheDefinition = wb . getPivotCacheByDataRef ( dataRef ) ; if ( ! cacheDefinition ) { cacheDefinition = new Asc . CT _PivotCacheDefinition ; cacheDefinition . asc _create ( ) ; cacheDefinition . fromDataRef ( dataRef ) } pivot . asc _create ( ws , pivotName , cacheDefinition , location ) ; pivot . stashEmptyReportRange ( ) ; this . _changePivotWithLockExt ( pivot , confirmation , true , function ( ) { ws . insertPivotTable ( pivot ,
true , false ) ; pivot . setChanged ( true ) } , function ( error , warn ) { t . _changePivotEndCheckError ( error , warn , function ( can ) { if ( can ) t . _asc _insertPivot ( wb , dataRef , ws , location , true ) } ) } ) ; History . EndTransaction ( ) ; return pivot } ; spreadsheet _api . prototype . asc _refreshAllPivots = function ( ) { var t = this ; this . wbModel . forEach ( function ( ws ) { for ( var i = 0 ; i < ws . pivotTables . length ; ++ i ) ws . pivotTables [ i ] . asc _refresh ( t ) } ) } ; spreadsheet _api . prototype . _isLockedPivot = function ( pivot , callback ) { var lockInfos = [ ] ; pivot . fillLockInfo ( lockInfos , this . collaborativeEditing ) ;
this . collaborativeEditing . lock ( lockInfos , callback ) } ; spreadsheet _api . prototype . _isLockedPivotAndConnectedBySlicer = function ( pivot , flds , callback ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) { callback ( false ) ; return } var t = this ; var lockInfos = [ ] ; pivot . fillLockInfo ( lockInfos , this . collaborativeEditing ) ; flds . forEach ( function ( fld ) { var pivotTables = pivot . getPivotTablesConnectedBySlicer ( fld ) ; pivotTables . forEach ( function ( pivotTable ) { pivotTable . fillLockInfo ( lockInfos , t . collaborativeEditing ) } ) } ) ;
this . collaborativeEditing . lock ( lockInfos , callback ) } ; spreadsheet _api . prototype . _changePivotWithLock = function ( pivot , onAction ) { this . _changePivotWithLockExt ( pivot , false , true , onAction ) } ; spreadsheet _api . prototype . _changePivotWithLockExt = function ( pivot , confirmation , updateSelection , onAction ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return ; var t = this ; this . _isLockedPivot ( pivot , function ( res ) { if ( ! res ) { t . sendEvent ( "asc_onError" , c _oAscError . ID . PivotOverlap , c _oAscError . Level . NoCritical ) ; return } History . Create _NewPoint ( ) ;
History . StartTransaction ( ) ; t . wbModel . dependencyFormulas . lockRecal ( ) ; var changeRes = t . _changePivot ( pivot , confirmation , updateSelection , onAction ) ; t . wbModel . dependencyFormulas . unlockRecal ( ) ; History . EndTransaction ( ) ; t . _changePivotEndCheckError ( pivot , changeRes , function ( ) { t . _changePivotWithLockExt ( pivot , true , updateSelection , onAction ) } ) } ) } ; spreadsheet _api . prototype . _changePivotAndConnectedBySlicerWithLock = function ( pivot , flds , onAction ) { var t = this ; this . _isLockedPivotAndConnectedBySlicer ( pivot , flds , function ( res ) { if ( ! res ) { t . sendEvent ( "asc_onError" ,
c _oAscError . ID . PivotOverlap , c _oAscError . Level . NoCritical ) ; return } onAction ( ) } ) } ; spreadsheet _api . prototype . _changePivot = function ( pivot , confirmation , updateSelection , onAction ) { var wsModel = pivot . GetWS ( ) ; pivot . stashCurReportRange ( ) ; onAction ( wsModel ) ; var pivotChanged = pivot . getAndCleanChanged ( ) ; var error = c _oAscError . ID . No ; var warning = c _oAscError . ID . No ; var updateRes , reportRanges ; if ( pivotChanged . data ) { updateRes = pivot . updateAfterEdit ( ) ; reportRanges = pivot . getReportRanges ( ) ; error = wsModel . checkPivotReportLocationForError ( reportRanges ,
pivot ) ; if ( c _oAscError . ID . No === error ) { warning = wsModel . checkPivotReportLocationForConfirm ( reportRanges , pivotChanged ) ; if ( confirmation ) warning = c _oAscError . ID . No } } var isSuccess = c _oAscError . ID . No === error && c _oAscError . ID . No === warning ; if ( isSuccess ) { var ws = this . wb . getWorksheet ( wsModel . getIndex ( ) ) ; this . _updatePivotTable ( pivot , pivotChanged , wsModel , ws , updateRes && updateRes . dataRow , true , true ) ; if ( updateSelection ) pivot . updateSelection ( ws ) ; if ( this . wbModel . getActive ( ) === wsModel . getIndex ( ) ) ws . draw ( ) } else pivot . stashEmptyReportRange ( ) ;
return { error : error , warning : warning , updateRes : updateRes } } ; spreadsheet _api . prototype . _changePivotRevert = function ( pivot ) { History . Undo ( ) ; History . Clear _Redo ( ) ; this . _onUpdateDocumentCanUndoRedo ( ) } ; spreadsheet _api . prototype . _changePivotEndCheckError = function ( pivot , changeRes , onRepeat ) { if ( ! changeRes ) return true ; if ( c _oAscError . ID . No !== changeRes . error ) { this . _changePivotRevert ( pivot ) ; this . sendEvent ( "asc_onError" , changeRes . error , c _oAscError . Level . NoCritical ) } else if ( c _oAscError . ID . No !== changeRes . warning ) { this . _changePivotRevert ( pivot ) ;
this . handlers . trigger ( "asc_onConfirmAction" , Asc . c _oAscConfirm . ConfirmReplaceRange , function ( can ) { if ( can ) onRepeat ( ) } ) } else return true ; return false } ; spreadsheet _api . prototype . _selectSearchingResults = function ( ) { var ws = this . wbModel . getActiveWs ( ) ; if ( ws && ws . lastFindOptions ) this . wb . drawWS ( ) } ; spreadsheet _api . prototype . asc _getAppProps = function ( ) { return this . wbModel && this . wbModel . App || null } ; spreadsheet _api . prototype . asc _setCoreProps = function ( oProps ) { var oCore = this . getInternalCoreProps ( ) ; if ( ! oCore ) return ; var oWS =
this . wb && this . wb . getWorksheet ( ) ; if ( ! oWS || ! oWS . objectRender ) { History . Create _NewPoint ( ) ; oCore . setProps ( oProps ) } var oLocker = oWS . objectRender . objectLocker ; oLocker . reset ( ) ; oLocker . addObjectId ( oCore . Get _Id ( ) ) ; oLocker . checkObjects ( function ( bNoLock , bSync ) { if ( bNoLock ) { History . Create _NewPoint ( ) ; oCore . setProps ( oProps ) } } ) ; return null } ; spreadsheet _api . prototype . getInternalCoreProps = function ( ) { return this . wbModel && this . wbModel . Core } ; spreadsheet _api . prototype . asc _setGroupSummary = function ( val , bCol ) { var ws = this . wb &&
this . wb . getWorksheet ( ) ; if ( ws ) ws . asc _setGroupSummary ( val , bCol ) } ; spreadsheet _api . prototype . asc _getGroupSummaryRight = function ( ) { var ws = this . wbModel . getActiveWs ( ) ; return ws && ws . sheetPr ? ws . sheetPr . SummaryRight : true } ; spreadsheet _api . prototype . asc _getGroupSummaryBelow = function ( ) { var ws = this . wbModel . getActiveWs ( ) ; return ws && ws . sheetPr ? ws . sheetPr . SummaryBelow : true } ; spreadsheet _api . prototype . asc _getSortProps = function ( bExpand ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . getSortProps ( bExpand ) } ; spreadsheet _api . prototype . asc _setSortProps =
function ( props , bCancel ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) if ( bCancel ) ws . setSortProps ( props , null , true ) ; else ws . setSelectionInfo ( "customSort" , props ) } ; spreadsheet _api . prototype . asc _validSheetName = function ( val ) { return window [ "AscCommon" ] . rx _test _ws _name . isValidName ( val ) } ; spreadsheet _api . prototype . asc _getRemoveDuplicates = function ( bExpand ) { var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . getRemoveDuplicates ( bExpand ) } ; spreadsheet _api . prototype . asc _setRemoveDuplicates = function ( props , bCancel ) { if ( this . collaborativeEditing . getGlobalLock ( ) ||
! this . canEdit ( ) ) return false ; var ws = this . wb && this . wb . getWorksheet ( ) ; if ( ws ) return ws . setRemoveDuplicates ( props , bCancel ) } ; spreadsheet _api . prototype . asc _getCF = function ( type , id ) { var rules = null ; var range , sheet ; switch ( type ) { case Asc . c _oAscSelectionForCFType . selection : sheet = this . wbModel . getActiveWs ( ) ; range = sheet . selectionRange . getLast ( ) ; break ; case Asc . c _oAscSelectionForCFType . worksheet : sheet = this . wbModel . getWorksheet ( id ) ; break ; case Asc . c _oAscSelectionForCFType . table : break ; case Asc . c _oAscSelectionForCFType . pivot : break } if ( sheet ) { var aRules =
sheet . aConditionalFormattingRules . sort ( function ( v1 , v2 ) { return v1 . priority - v2 . priority } ) ; if ( range ) { rules = [ ] ; var oRule , ranges , multiplyRange ; for ( var i = 0 ; i < aRules . length ; ++ i ) { oRule = aRules [ i ] ; ranges = oRule . ranges ; multiplyRange = new AscCommonExcel . MultiplyRange ( ranges ) ; if ( multiplyRange . isIntersect ( range ) ) rules . push ( oRule ) } } else rules = aRules } return rules } ; spreadsheet _api . prototype . asc _beforeInsertSlicer = function ( ) { return this . wb . beforeInsertSlicer ( ) } ; spreadsheet _api . prototype . asc _insertSlicer = function ( arr ) { return this . wb . insertSlicers ( arr ) } ;
spreadsheet _api . prototype . asc _setSlicers = function ( names , obj ) { return this . wb . setSlicers ( names , obj ) } ; spreadsheet _api . prototype . asc _Remove = function ( ) { var ws = this . wb . getWorksheet ( ) ; if ( ws && ws . objectRender && ws . objectRender . controller ) ws . objectRender . controller . resetChartElementsSelection ( ) ; AscCommon . baseEditorsApi . prototype . asc _Remove . call ( this ) } ; spreadsheet _api . prototype . asc _getDataValidationProps = function ( extend ) { var ws = this . wbModel . getActiveWs ( ) ; if ( ws ) return ws . getDataValidationProps ( extend ) } ; spreadsheet _api . prototype . asc _setDataValidation =
function ( props , switchApplySameSettings ) { if ( this . collaborativeEditing . getGlobalLock ( ) || ! this . canEdit ( ) ) return false ; var ws = this . wb . getWorksheet ( ) ; if ( ws ) if ( undefined === switchApplySameSettings ) return ws . setDataValidationProps ( props ) ; else return ws . setDataValidationSameSettings ( props , switchApplySameSettings ) } ; spreadsheet _api . prototype . onUpdateRestrictions = function ( ) { var oHistory = AscCommon . History ; if ( this . isRestrictionSignatures ( ) && oHistory && ! oHistory . Have _Changes ( ) ) oHistory . Clear ( ) } ; asc [ "spreadsheet_api" ] =
spreadsheet _api ; prot = spreadsheet _api . prototype ; prot [ "asc_GetFontThumbnailsPath" ] = prot . asc _GetFontThumbnailsPath ; prot [ "asc_setDocInfo" ] = prot . asc _setDocInfo ; prot [ "asc_getFunctionArgumentSeparator" ] = prot . asc _getFunctionArgumentSeparator ; prot [ "asc_getCurrencySymbols" ] = prot . asc _getCurrencySymbols ; prot [ "asc_getLocaleExample" ] = prot . asc _getLocaleExample ; prot [ "asc_convertNumFormatLocal2NumFormat" ] = prot . asc _convertNumFormatLocal2NumFormat ; prot [ "asc_convertNumFormat2NumFormatLocal" ] = prot . asc _convertNumFormat2NumFormatLocal ;
prot [ "asc_getFormatCells" ] = prot . asc _getFormatCells ; prot [ "asc_getLocaleCurrency" ] = prot . asc _getLocaleCurrency ; prot [ "asc_setLocale" ] = prot . asc _setLocale ; prot [ "asc_getLocale" ] = prot . asc _getLocale ; prot [ "asc_getDecimalSeparator" ] = prot . asc _getDecimalSeparator ; prot [ "asc_getGroupSeparator" ] = prot . asc _getGroupSeparator ; prot [ "asc_getFrozenPaneBorderType" ] = prot . asc _getFrozenPaneBorderType ; prot [ "asc_setFrozenPaneBorderType" ] = prot . asc _setFrozenPaneBorderType ; prot [ "asc_getEditorPermissions" ] = prot . asc _getEditorPermissions ;
prot [ "asc_LoadDocument" ] = prot . asc _LoadDocument ; prot [ "asc_DownloadAs" ] = prot . asc _DownloadAs ; prot [ "asc_Save" ] = prot . asc _Save ; prot [ "forceSave" ] = prot . forceSave ; prot [ "asc_setIsForceSaveOnUserSave" ] = prot . asc _setIsForceSaveOnUserSave ; prot [ "asc_Resize" ] = prot . asc _Resize ; prot [ "asc_Copy" ] = prot . asc _Copy ; prot [ "asc_Paste" ] = prot . asc _Paste ; prot [ "asc_SpecialPaste" ] = prot . asc _SpecialPaste ; prot [ "asc_Cut" ] = prot . asc _Cut ; prot [ "asc_Undo" ] = prot . asc _Undo ; prot [ "asc_Redo" ] = prot . asc _Redo ; prot [ "asc_TextImport" ] = prot . asc _TextImport ;
prot [ "asc_TextToColumns" ] = prot . asc _TextToColumns ; prot [ "asc_getDocumentName" ] = prot . asc _getDocumentName ; prot [ "asc_getAppProps" ] = prot . asc _getAppProps ; prot [ "asc_getCoreProps" ] = prot . asc _getCoreProps ; prot [ "asc_setCoreProps" ] = prot . asc _setCoreProps ; prot [ "asc_isDocumentModified" ] = prot . asc _isDocumentModified ; prot [ "asc_isDocumentCanSave" ] = prot . asc _isDocumentCanSave ; prot [ "asc_getCanUndo" ] = prot . asc _getCanUndo ; prot [ "asc_getCanRedo" ] = prot . asc _getCanRedo ; prot [ "can_CopyCut" ] = prot . can _CopyCut ; prot [ "asc_setAutoSaveGap" ] =
prot . asc _setAutoSaveGap ; prot [ "asc_setViewMode" ] = prot . asc _setViewMode ; prot [ "asc_setFilteringMode" ] = prot . asc _setFilteringMode ; prot [ "asc_setAdvancedOptions" ] = prot . asc _setAdvancedOptions ; prot [ "asc_setPageOptions" ] = prot . asc _setPageOptions ; prot [ "asc_savePagePrintOptions" ] = prot . asc _savePagePrintOptions ; prot [ "asc_getPageOptions" ] = prot . asc _getPageOptions ; prot [ "asc_changeDocSize" ] = prot . asc _changeDocSize ; prot [ "asc_changePageMargins" ] = prot . asc _changePageMargins ; prot [ "asc_setPageOption" ] = prot . asc _setPageOption ;
prot [ "asc_changePageOrient" ] = prot . asc _changePageOrient ; prot [ "asc_changePrintTitles" ] = prot . asc _changePrintTitles ; prot [ "asc_getPrintTitlesRange" ] = prot . asc _getPrintTitlesRange ; prot [ "asc_ChangePrintArea" ] = prot . asc _ChangePrintArea ; prot [ "asc_CanAddPrintArea" ] = prot . asc _CanAddPrintArea ; prot [ "asc_SetPrintScale" ] = prot . asc _SetPrintScale ; prot [ "asc_decodeBuffer" ] = prot . asc _decodeBuffer ; prot [ "asc_registerCallback" ] = prot . asc _registerCallback ; prot [ "asc_unregisterCallback" ] = prot . asc _unregisterCallback ; prot [ "asc_changeArtImageFromFile" ] =
prot . asc _changeArtImageFromFile ; prot [ "asc_SetDocumentPlaceChangedEnabled" ] = prot . asc _SetDocumentPlaceChangedEnabled ; prot [ "asc_SetFastCollaborative" ] = prot . asc _SetFastCollaborative ; prot [ "asc_setThumbnailStylesSizes" ] = prot . asc _setThumbnailStylesSizes ; prot [ "asc_getWorksheetsCount" ] = prot . asc _getWorksheetsCount ; prot [ "asc_getWorksheetName" ] = prot . asc _getWorksheetName ; prot [ "asc_getWorksheetTabColor" ] = prot . asc _getWorksheetTabColor ; prot [ "asc_setWorksheetTabColor" ] = prot . asc _setWorksheetTabColor ; prot [ "asc_getActiveWorksheetIndex" ] =
prot . asc _getActiveWorksheetIndex ; prot [ "asc_getActiveWorksheetId" ] = prot . asc _getActiveWorksheetId ; prot [ "asc_getWorksheetId" ] = prot . asc _getWorksheetId ; prot [ "asc_isWorksheetHidden" ] = prot . asc _isWorksheetHidden ; prot [ "asc_isWorksheetLockedOrDeleted" ] = prot . asc _isWorksheetLockedOrDeleted ; prot [ "asc_isWorkbookLocked" ] = prot . asc _isWorkbookLocked ; prot [ "asc_isLayoutLocked" ] = prot . asc _isLayoutLocked ; prot [ "asc_isPrintAreaLocked" ] = prot . asc _isPrintAreaLocked ; prot [ "asc_isHeaderFooterLocked" ] = prot . asc _isHeaderFooterLocked ;
prot [ "asc_getHiddenWorksheets" ] = prot . asc _getHiddenWorksheets ; prot [ "asc_showWorksheet" ] = prot . asc _showWorksheet ; prot [ "asc_hideWorksheet" ] = prot . asc _hideWorksheet ; prot [ "asc_renameWorksheet" ] = prot . asc _renameWorksheet ; prot [ "asc_addWorksheet" ] = prot . asc _addWorksheet ; prot [ "asc_insertWorksheet" ] = prot . asc _insertWorksheet ; prot [ "asc_deleteWorksheet" ] = prot . asc _deleteWorksheet ; prot [ "asc_moveWorksheet" ] = prot . asc _moveWorksheet ; prot [ "asc_copyWorksheet" ] = prot . asc _copyWorksheet ; prot [ "asc_cleanSelection" ] = prot . asc _cleanSelection ;
prot [ "asc_getZoom" ] = prot . asc _getZoom ; prot [ "asc_setZoom" ] = prot . asc _setZoom ; prot [ "asc_enableKeyEvents" ] = prot . asc _enableKeyEvents ; prot [ "asc_searchEnabled" ] = prot . asc _searchEnabled ; prot [ "asc_findText" ] = prot . asc _findText ; prot [ "asc_replaceText" ] = prot . asc _replaceText ; prot [ "asc_endFindText" ] = prot . asc _endFindText ; prot [ "asc_findCell" ] = prot . asc _findCell ; prot [ "asc_closeCellEditor" ] = prot . asc _closeCellEditor ; prot [ "asc_StartMoveSheet" ] = prot . asc _StartMoveSheet ; prot [ "asc_EndMoveSheet" ] = prot . asc _EndMoveSheet ; prot [ "asc_setWorksheetRange" ] =
prot . asc _setWorksheetRange ; prot [ "asc_setR1C1Mode" ] = prot . asc _setR1C1Mode ; prot [ "asc_setIncludeNewRowColTable" ] = prot . asc _setIncludeNewRowColTable ; prot [ "asc_getColumnWidth" ] = prot . asc _getColumnWidth ; prot [ "asc_setColumnWidth" ] = prot . asc _setColumnWidth ; prot [ "asc_showColumns" ] = prot . asc _showColumns ; prot [ "asc_hideColumns" ] = prot . asc _hideColumns ; prot [ "asc_autoFitColumnWidth" ] = prot . asc _autoFitColumnWidth ; prot [ "asc_getRowHeight" ] = prot . asc _getRowHeight ; prot [ "asc_setRowHeight" ] = prot . asc _setRowHeight ; prot [ "asc_autoFitRowHeight" ] =
prot . asc _autoFitRowHeight ; prot [ "asc_showRows" ] = prot . asc _showRows ; prot [ "asc_hideRows" ] = prot . asc _hideRows ; prot [ "asc_insertCells" ] = prot . asc _insertCells ; prot [ "asc_deleteCells" ] = prot . asc _deleteCells ; prot [ "asc_mergeCells" ] = prot . asc _mergeCells ; prot [ "asc_sortCells" ] = prot . asc _sortCells ; prot [ "asc_emptyCells" ] = prot . asc _emptyCells ; prot [ "asc_mergeCellsDataLost" ] = prot . asc _mergeCellsDataLost ; prot [ "asc_sortCellsRangeExpand" ] = prot . asc _sortCellsRangeExpand ; prot [ "asc_getSheetViewSettings" ] = prot . asc _getSheetViewSettings ;
prot [ "asc_setDisplayGridlines" ] = prot . asc _setDisplayGridlines ; prot [ "asc_setDisplayHeadings" ] = prot . asc _setDisplayHeadings ; prot [ "asc_getDefinedNames" ] = prot . asc _getDefinedNames ; prot [ "asc_setDefinedNames" ] = prot . asc _setDefinedNames ; prot [ "asc_editDefinedNames" ] = prot . asc _editDefinedNames ; prot [ "asc_delDefinedNames" ] = prot . asc _delDefinedNames ; prot [ "asc_getDefaultDefinedName" ] = prot . asc _getDefaultDefinedName ; prot [ "asc_checkDefinedName" ] = prot . asc _checkDefinedName ; prot [ "asc_addAutoFilter" ] = prot . asc _addAutoFilter ;
prot [ "asc_changeAutoFilter" ] = prot . asc _changeAutoFilter ; prot [ "asc_applyAutoFilter" ] = prot . asc _applyAutoFilter ; prot [ "asc_applyAutoFilterByType" ] = prot . asc _applyAutoFilterByType ; prot [ "asc_reapplyAutoFilter" ] = prot . asc _reapplyAutoFilter ; prot [ "asc_sortColFilter" ] = prot . asc _sortColFilter ; prot [ "asc_getAddFormatTableOptions" ] = prot . asc _getAddFormatTableOptions ; prot [ "asc_clearFilter" ] = prot . asc _clearFilter ; prot [ "asc_clearFilterColumn" ] = prot . asc _clearFilterColumn ; prot [ "asc_changeSelectionFormatTable" ] = prot . asc _changeSelectionFormatTable ;
prot [ "asc_changeFormatTableInfo" ] = prot . asc _changeFormatTableInfo ; prot [ "asc_insertCellsInTable" ] = prot . asc _insertCellsInTable ; prot [ "asc_deleteCellsInTable" ] = prot . asc _deleteCellsInTable ; prot [ "asc_changeDisplayNameTable" ] = prot . asc _changeDisplayNameTable ; prot [ "asc_changeTableRange" ] = prot . asc _changeTableRange ; prot [ "asc_convertTableToRange" ] = prot . asc _convertTableToRange ; prot [ "asc_getTablePictures" ] = prot . asc _getTablePictures ; prot [ "asc_getSlicerPictures" ] = prot . asc _getSlicerPictures ; prot [ "asc_getDefaultTableStyle" ] =
prot . asc _getDefaultTableStyle ; prot [ "asc_applyAutoCorrectOptions" ] = prot . asc _applyAutoCorrectOptions ; prot [ "asc_group" ] = prot . asc _group ; prot [ "asc_ungroup" ] = prot . asc _ungroup ; prot [ "asc_clearOutline" ] = prot . asc _clearOutline ; prot [ "asc_changeGroupDetails" ] = prot . asc _changeGroupDetails ; prot [ "asc_checkAddGroup" ] = prot . asc _checkAddGroup ; prot [ "asc_setGroupSummary" ] = prot . asc _setGroupSummary ; prot [ "asc_getGroupSummaryRight" ] = prot . asc _getGroupSummaryRight ; prot [ "asc_getGroupSummaryBelow" ] = prot . asc _getGroupSummaryBelow ;
prot [ "asc_showDrawingObjects" ] = prot . asc _showDrawingObjects ; prot [ "asc_drawingObjectsExist" ] = prot . asc _drawingObjectsExist ; prot [ "asc_getChartObject" ] = prot . asc _getChartObject ; prot [ "asc_addChartDrawingObject" ] = prot . asc _addChartDrawingObject ; prot [ "asc_editChartDrawingObject" ] = prot . asc _editChartDrawingObject ; prot [ "asc_addImageDrawingObject" ] = prot . asc _addImageDrawingObject ; prot [ "asc_setSelectedDrawingObjectLayer" ] = prot . asc _setSelectedDrawingObjectLayer ; prot [ "asc_setSelectedDrawingObjectAlign" ] = prot . asc _setSelectedDrawingObjectAlign ;
prot [ "asc_DistributeSelectedDrawingObjectHor" ] = prot . asc _DistributeSelectedDrawingObjectHor ; prot [ "asc_DistributeSelectedDrawingObjectVer" ] = prot . asc _DistributeSelectedDrawingObjectVer ; prot [ "asc_getSelectedDrawingObjectsCount" ] = prot . asc _getSelectedDrawingObjectsCount ; prot [ "asc_getChartPreviews" ] = prot . asc _getChartPreviews ; prot [ "asc_getTextArtPreviews" ] = prot . asc _getTextArtPreviews ; prot [ "asc_getPropertyEditorShapes" ] = prot . asc _getPropertyEditorShapes ; prot [ "asc_getPropertyEditorTextArts" ] = prot . asc _getPropertyEditorTextArts ;
prot [ "asc_checkDataRange" ] = prot . asc _checkDataRange ; prot [ "asc_getBinaryFileWriter" ] = prot . asc _getBinaryFileWriter ; prot [ "asc_getWordChartObject" ] = prot . asc _getWordChartObject ; prot [ "asc_cleanWorksheet" ] = prot . asc _cleanWorksheet ; prot [ "asc_showImageFileDialog" ] = prot . asc _showImageFileDialog ; prot [ "asc_addImage" ] = prot . asc _addImage ; prot [ "asc_setData" ] = prot . asc _setData ; prot [ "asc_getData" ] = prot . asc _getData ; prot [ "asc_onCloseChartFrame" ] = prot . asc _onCloseChartFrame ; prot [ "asc_addComment" ] = prot . asc _addComment ; prot [ "asc_changeComment" ] =
prot . asc _changeComment ; prot [ "asc_findComment" ] = prot . asc _findComment ; prot [ "asc_removeComment" ] = prot . asc _removeComment ; prot [ "asc_RemoveAllComments" ] = prot . asc _RemoveAllComments ; prot [ "asc_showComment" ] = prot . asc _showComment ; prot [ "asc_selectComment" ] = prot . asc _selectComment ; prot [ "asc_showComments" ] = prot . asc _showComments ; prot [ "asc_hideComments" ] = prot . asc _hideComments ; prot [ "setStartPointHistory" ] = prot . setStartPointHistory ; prot [ "setEndPointHistory" ] = prot . setEndPointHistory ; prot [ "asc_startAddShape" ] = prot . asc _startAddShape ;
prot [ "asc_endAddShape" ] = prot . asc _endAddShape ; prot [ "asc_addShapeOnSheet" ] = prot . asc _addShapeOnSheet ; prot [ "asc_isAddAutoshape" ] = prot . asc _isAddAutoshape ; prot [ "asc_canAddShapeHyperlink" ] = prot . asc _canAddShapeHyperlink ; prot [ "asc_canGroupGraphicsObjects" ] = prot . asc _canGroupGraphicsObjects ; prot [ "asc_groupGraphicsObjects" ] = prot . asc _groupGraphicsObjects ; prot [ "asc_canUnGroupGraphicsObjects" ] = prot . asc _canUnGroupGraphicsObjects ; prot [ "asc_unGroupGraphicsObjects" ] = prot . asc _unGroupGraphicsObjects ; prot [ "asc_getGraphicObjectProps" ] =
prot . asc _getGraphicObjectProps ; prot [ "asc_GetSelectedText" ] = prot . asc _GetSelectedText ; prot [ "asc_setGraphicObjectProps" ] = prot . asc _setGraphicObjectProps ; prot [ "asc_getOriginalImageSize" ] = prot . asc _getOriginalImageSize ; prot [ "asc_changeShapeType" ] = prot . asc _changeShapeType ; prot [ "asc_setInterfaceDrawImagePlaceShape" ] = prot . asc _setInterfaceDrawImagePlaceShape ; prot [ "asc_setInterfaceDrawImagePlaceTextArt" ] = prot . asc _setInterfaceDrawImagePlaceTextArt ; prot [ "asc_changeImageFromFile" ] = prot . asc _changeImageFromFile ; prot [ "asc_putPrLineSpacing" ] =
prot . asc _putPrLineSpacing ; prot [ "asc_addTextArt" ] = prot . asc _addTextArt ; prot [ "asc_canEditCrop" ] = prot . asc _canEditCrop ; prot [ "asc_startEditCrop" ] = prot . asc _startEditCrop ; prot [ "asc_endEditCrop" ] = prot . asc _endEditCrop ; prot [ "asc_cropFit" ] = prot . asc _cropFit ; prot [ "asc_cropFill" ] = prot . asc _cropFill ; prot [ "asc_putLineSpacingBeforeAfter" ] = prot . asc _putLineSpacingBeforeAfter ; prot [ "asc_setDrawImagePlaceParagraph" ] = prot . asc _setDrawImagePlaceParagraph ; prot [ "asc_changeShapeImageFromFile" ] = prot . asc _changeShapeImageFromFile ;
prot [ "asc_AddMath" ] = prot . asc _AddMath ; prot [ "asc_SetMathProps" ] = prot . asc _SetMathProps ; prot [ "asc_setDefaultLanguage" ] = prot . asc _setDefaultLanguage ; prot [ "asc_nextWord" ] = prot . asc _nextWord ; prot [ "asc_replaceMisspelledWord" ] = prot . asc _replaceMisspelledWord ; prot [ "asc_ignoreMisspelledWord" ] = prot . asc _ignoreMisspelledWord ; prot [ "asc_spellCheckAddToDictionary" ] = prot . asc _spellCheckAddToDictionary ; prot [ "asc_spellCheckClearDictionary" ] = prot . asc _spellCheckClearDictionary ; prot [ "asc_cancelSpellCheck" ] = prot . asc _cancelSpellCheck ;
prot [ "asc_ignoreNumbers" ] = prot . asc _ignoreNumbers ; prot [ "asc_ignoreUppercase" ] = prot . asc _ignoreUppercase ; prot [ "asc_freezePane" ] = prot . asc _freezePane ; prot [ "asc_setSparklineGroup" ] = prot . asc _setSparklineGroup ; prot [ "asc_getCellInfo" ] = prot . asc _getCellInfo ; prot [ "asc_getActiveCellCoord" ] = prot . asc _getActiveCellCoord ; prot [ "asc_getAnchorPosition" ] = prot . asc _getAnchorPosition ; prot [ "asc_setCellFontName" ] = prot . asc _setCellFontName ; prot [ "asc_setCellFontSize" ] = prot . asc _setCellFontSize ; prot [ "asc_setCellBold" ] = prot . asc _setCellBold ;
prot [ "asc_setCellItalic" ] = prot . asc _setCellItalic ; prot [ "asc_setCellUnderline" ] = prot . asc _setCellUnderline ; prot [ "asc_setCellStrikeout" ] = prot . asc _setCellStrikeout ; prot [ "asc_setCellSubscript" ] = prot . asc _setCellSubscript ; prot [ "asc_setCellSuperscript" ] = prot . asc _setCellSuperscript ; prot [ "asc_setCellAlign" ] = prot . asc _setCellAlign ; prot [ "asc_setCellVertAlign" ] = prot . asc _setCellVertAlign ; prot [ "asc_setCellTextWrap" ] = prot . asc _setCellTextWrap ; prot [ "asc_setCellTextShrink" ] = prot . asc _setCellTextShrink ; prot [ "asc_setCellTextColor" ] =
prot . asc _setCellTextColor ; prot [ "asc_setCellFill" ] = prot . asc _setCellFill ; prot [ "asc_setCellBackgroundColor" ] = prot . asc _setCellBackgroundColor ; prot [ "asc_setCellBorders" ] = prot . asc _setCellBorders ; prot [ "asc_setCellFormat" ] = prot . asc _setCellFormat ; prot [ "asc_setCellAngle" ] = prot . asc _setCellAngle ; prot [ "asc_setCellStyle" ] = prot . asc _setCellStyle ; prot [ "asc_increaseCellDigitNumbers" ] = prot . asc _increaseCellDigitNumbers ; prot [ "asc_decreaseCellDigitNumbers" ] = prot . asc _decreaseCellDigitNumbers ; prot [ "asc_increaseFontSize" ] =
prot . asc _increaseFontSize ; prot [ "asc_decreaseFontSize" ] = prot . asc _decreaseFontSize ; prot [ "asc_formatPainter" ] = prot . asc _formatPainter ; prot [ "asc_showAutoComplete" ] = prot . asc _showAutoComplete ; prot [ "asc_getHeaderFooterMode" ] = prot . asc _getHeaderFooterMode ; prot [ "asc_onMouseUp" ] = prot . asc _onMouseUp ; prot [ "asc_selectFunction" ] = prot . asc _selectFunction ; prot [ "asc_insertHyperlink" ] = prot . asc _insertHyperlink ; prot [ "asc_removeHyperlink" ] = prot . asc _removeHyperlink ; prot [ "asc_cleanSelectRange" ] = prot . asc _cleanSelectRange ; prot [ "asc_insertInCell" ] =
prot . asc _insertInCell ; prot [ "asc_getFormulasInfo" ] = prot . asc _getFormulasInfo ; prot [ "asc_getFormulaLocaleName" ] = prot . asc _getFormulaLocaleName ; prot [ "asc_getFormulaNameByLocale" ] = prot . asc _getFormulaNameByLocale ; prot [ "asc_startWizard" ] = prot . asc _startWizard ; prot [ "asc_canEnterWizardRange" ] = prot . asc _canEnterWizardRange ; prot [ "asc_insertArgumentsInFormula" ] = prot . asc _insertArgumentsInFormula ; prot [ "asc_calculate" ] = prot . asc _calculate ; prot [ "asc_setFontRenderingMode" ] = prot . asc _setFontRenderingMode ; prot [ "asc_setSelectionDialogMode" ] =
prot . asc _setSelectionDialogMode ; prot [ "asc_ChangeColorScheme" ] = prot . asc _ChangeColorScheme ; prot [ "asc_ChangeColorSchemeByIdx" ] = prot . asc _ChangeColorSchemeByIdx ; prot [ "asc_setListType" ] = prot . asc _setListType ; prot [ "asc_getCurrentListType" ] = prot . asc _getCurrentListType ; prot [ "asc_coAuthoringChatSendMessage" ] = prot . asc _coAuthoringChatSendMessage ; prot [ "asc_coAuthoringGetUsers" ] = prot . asc _coAuthoringGetUsers ; prot [ "asc_coAuthoringChatGetMessages" ] = prot . asc _coAuthoringChatGetMessages ; prot [ "asc_coAuthoringDisconnect" ] =
prot . asc _coAuthoringDisconnect ; prot [ "asc_stopSaving" ] = prot . asc _stopSaving ; prot [ "asc_continueSaving" ] = prot . asc _continueSaving ; prot [ "sendEvent" ] = prot . sendEvent ; prot [ "asc_undoAllChanges" ] = prot . asc _undoAllChanges ; prot [ "asc_setLocalization" ] = prot . asc _setLocalization ; prot [ "asc_nativeOpenFile" ] = prot . asc _nativeOpenFile ; prot [ "asc_nativeCalculateFile" ] = prot . asc _nativeCalculateFile ; prot [ "asc_nativeApplyChanges" ] = prot . asc _nativeApplyChanges ; prot [ "asc_nativeApplyChanges2" ] = prot . asc _nativeApplyChanges2 ; prot [ "asc_nativeGetFile" ] =
prot . asc _nativeGetFile ; prot [ "asc_nativeGetFileData" ] = prot . asc _nativeGetFileData ; prot [ "asc_nativeCalculate" ] = prot . asc _nativeCalculate ; prot [ "asc_nativePrint" ] = prot . asc _nativePrint ; prot [ "asc_nativePrintPagesCount" ] = prot . asc _nativePrintPagesCount ; prot [ "asc_nativeGetPDF" ] = prot . asc _nativeGetPDF ; prot [ "asc_isOffline" ] = prot . asc _isOffline ; prot [ "asc_getUrlType" ] = prot . asc _getUrlType ; prot [ "asc_getSessionToken" ] = prot . asc _getSessionToken ; prot [ "asc_nativeInitBuilder" ] = prot . asc _nativeInitBuilder ; prot [ "asc_SetSilentMode" ] =
prot . asc _SetSilentMode ; prot [ "asc_pluginsRegister" ] = prot . asc _pluginsRegister ; prot [ "asc_pluginRun" ] = prot . asc _pluginRun ; prot [ "asc_pluginStop" ] = prot . asc _pluginStop ; prot [ "asc_pluginResize" ] = prot . asc _pluginResize ; prot [ "asc_pluginButtonClick" ] = prot . asc _pluginButtonClick ; prot [ "asc_startEditCurrentOleObject" ] = prot . asc _startEditCurrentOleObject ; prot [ "asc_pluginEnableMouseEvents" ] = prot . asc _pluginEnableMouseEvents ; prot [ "SetTextBoxInputMode" ] = prot . SetTextBoxInputMode ; prot [ "GetTextBoxInputMode" ] = prot . GetTextBoxInputMode ;
prot [ "asc_InputClearKeyboardElement" ] = prot . asc _InputClearKeyboardElement ; prot [ "asc_OnHideContextMenu" ] = prot . asc _OnHideContextMenu ; prot [ "asc_OnShowContextMenu" ] = prot . asc _OnShowContextMenu ; prot [ "asc_getAddPivotTableOptions" ] = prot . asc _getAddPivotTableOptions ; prot [ "asc_insertPivotNewWorksheet" ] = prot . asc _insertPivotNewWorksheet ; prot [ "asc_insertPivotExistingWorksheet" ] = prot . asc _insertPivotExistingWorksheet ; prot [ "asc_addSignatureLine" ] = prot . asc _addSignatureLine ; prot [ "asc_CallSignatureDblClickEvent" ] = prot . asc _CallSignatureDblClickEvent ;
prot [ "asc_getRequestSignatures" ] = prot . asc _getRequestSignatures ; prot [ "asc_AddSignatureLine2" ] = prot . asc _AddSignatureLine2 ; prot [ "asc_Sign" ] = prot . asc _Sign ; prot [ "asc_RequestSign" ] = prot . asc _RequestSign ; prot [ "asc_ViewCertificate" ] = prot . asc _ViewCertificate ; prot [ "asc_SelectCertificate" ] = prot . asc _SelectCertificate ; prot [ "asc_GetDefaultCertificate" ] = prot . asc _GetDefaultCertificate ; prot [ "asc_getSignatures" ] = prot . asc _getSignatures ; prot [ "asc_isSignaturesSupport" ] = prot . asc _isSignaturesSupport ; prot [ "asc_isProtectionSupport" ] =
prot . asc _isProtectionSupport ; prot [ "asc_RemoveSignature" ] = prot . asc _RemoveSignature ; prot [ "asc_RemoveAllSignatures" ] = prot . asc _RemoveAllSignatures ; prot [ "asc_gotoSignature" ] = prot . asc _gotoSignature ; prot [ "asc_getSignatureSetup" ] = prot . asc _getSignatureSetup ; prot [ "asc_setCurrentPassword" ] = prot . asc _setCurrentPassword ; prot [ "asc_resetPassword" ] = prot . asc _resetPassword ; prot [ "asc_Remove" ] = prot . asc _Remove ; prot [ "asc_getSortProps" ] = prot . asc _getSortProps ; prot [ "asc_setSortProps" ] = prot . asc _setSortProps ; prot [ "asc_validSheetName" ] =
prot . asc _validSheetName ; prot [ "asc_getRemoveDuplicates" ] = prot . asc _getRemoveDuplicates ; prot [ "asc_setRemoveDuplicates" ] = prot . asc _setRemoveDuplicates ; prot [ "asc_getCF" ] = prot . asc _getCF ; prot [ "asc_beforeInsertSlicer" ] = prot . asc _beforeInsertSlicer ; prot [ "asc_insertSlicer" ] = prot . asc _insertSlicer ; prot [ "asc_setDataValidation" ] = prot . asc _setDataValidation ; prot [ "asc_getDataValidationProps" ] = prot . asc _getDataValidationProps } ) ( window ) ;