19 lines
325 KiB
JavaScript
19 lines
325 KiB
JavaScript
/*
|
||
* Kendo UI v2015.3.1111 (http://www.telerik.com/kendo-ui)
|
||
* Copyright 2015 Telerik AD. All rights reserved.
|
||
*
|
||
* Kendo UI commercial licenses may be obtained at
|
||
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
|
||
* If you do not own a commercial license, this file shall be governed by the trial license terms.
|
||
*/
|
||
!function(e,define){define(["./kendo.core.min","./kendo.binder.min","./kendo.window.min","./kendo.list.min","./kendo.tabstrip.min","./kendo.color.min","./kendo.sortable.min","./kendo.menu.min","./kendo.data.min","./kendo.dom.min","./kendo.toolbar.min","./kendo.colorpicker.min","./kendo.combobox.min","./kendo.dropdownlist.min","./kendo.popup.min","./kendo.treeview.min"],e)}(function(){return function(){!function(e){var t=e.Observable.extend({init:function(t){e.Observable.fn.init.call(this,t),this.clear()},events:["undo","redo"],push:function(e){this.stack=this.stack.slice(0,this.currentCommandIndex+1),this.currentCommandIndex=this.stack.push(e)-1},undo:function(){if(this.canUndo()){var e=this.stack[this.currentCommandIndex--];e.undo(),this.trigger("undo",{command:e})}},redo:function(){if(this.canRedo()){var e=this.stack[++this.currentCommandIndex];e.redo(),this.trigger("redo",{command:e})}},clear:function(){this.stack=[],this.currentCommandIndex=-1},canUndo:function(){return this.currentCommandIndex>=0},canRedo:function(){return this.currentCommandIndex!=this.stack.length-1}});e.deepExtend(e,{util:{UndoRedoStack:t}})}(kendo)}(),function(){return function(){function e(e){return typeof e!==F}function t(e,t){var i=n(t);return M.round(e*i)/i}function n(e){return e?M.pow(10,e):1}function i(e,t,n){return M.max(M.min(e,n),t)}function o(e){return e*R}function r(e){return e/R}function s(e){return"number"==typeof e&&!isNaN(e)}function a(t,n){return e(t)?t:n}function l(e){return e*e}function c(e){var t,n=[];for(t in e)n.push(t+e[t]);return n.sort().join("")}function u(e){var t,n=2166136261;for(t=0;e.length>t;++t)n+=(n<<1)+(n<<4)+(n<<7)+(n<<8)+(n<<24),n^=e.charCodeAt(t);return n>>>0}function d(e){return u(c(e))}function h(e){var t,n=e.length,i=z,o=B;for(t=0;n>t;t++)o=M.max(o,e[t]),i=M.min(i,e[t]);return{min:i,max:o}}function f(e){return h(e).min}function p(e){return h(e).max}function g(e){return v(e).min}function m(e){return v(e).max}function v(e){var t,n,i,o=z,r=B;for(t=0,n=e.length;n>t;t++)i=e[t],null!==i&&isFinite(i)&&(o=M.min(o,i),r=M.max(r,i));return{min:o===z?void 0:o,max:r===B?void 0:r}}function _(e){return e?e[e.length-1]:void 0}function w(e,t){return e.push.apply(e,t),e}function b(e){return P.template(e,{useWithBlock:!1,paramName:"d"})}function y(t,n){return e(n)&&null!==n?" "+t+"='"+n+"' ":""}function x(e){var t,n="";for(t=0;e.length>t;t++)n+=y(e[t][0],e[t][1]);return n}function k(t){var n,i,o="";for(n=0;t.length>n;n++)i=t[n][1],e(i)&&(o+=t[n][0]+":"+i+";");return""!==o?o:void 0}function C(e){return"string"!=typeof e&&(e+="px"),e}function S(e){var t,n,i=[];if(e)for(t=P.toHyphens(e).split("-"),n=0;t.length>n;n++)i.push("k-pos-"+t[n]);return i.join(" ")}function T(t){return""===t||null===t||"none"===t||"transparent"===t||!e(t)}function D(e){for(var t={1:"i",10:"x",100:"c",2:"ii",20:"xx",200:"cc",3:"iii",30:"xxx",300:"ccc",4:"iv",40:"xl",400:"cd",5:"v",50:"l",500:"d",6:"vi",60:"lx",600:"dc",7:"vii",70:"lxx",700:"dcc",8:"viii",80:"lxxx",800:"dccc",9:"ix",90:"xc",900:"cm",1e3:"m"},n=[1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],i="";e>0;)n[0]>e?n.shift():(i+=t[n[0]],e-=n[0]);return i}function A(e){var t,n,i,o,r;for(e=e.toLowerCase(),t={i:1,v:5,x:10,l:50,c:100,d:500,m:1e3},n=0,i=0,o=0;e.length>o;++o){if(r=t[e.charAt(o)],!r)return null;n+=r,r>i&&(n-=2*i),i=r}return n}function E(e){var t=Object.create(null);return function(){var n,i="";for(n=arguments.length;--n>=0;)i+=":"+arguments[n];return i in t?t[i]:e.apply(this,arguments)}}var M=Math,P=window.kendo,I=P.deepExtend,R=M.PI/180,z=Number.MAX_VALUE,B=-Number.MAX_VALUE,F="undefined",L=Date.now;L||(L=function(){return(new Date).getTime()}),I(P,{util:{MAX_NUM:z,MIN_NUM:B,append:w,arrayLimits:h,arrayMin:f,arrayMax:p,defined:e,deg:r,hashKey:u,hashObject:d,isNumber:s,isTransparent:T,last:_,limitValue:i,now:L,objectKey:c,round:t,rad:o,renderAttr:y,renderAllAttr:x,renderPos:S,renderSize:C,renderStyle:k,renderTemplate:b,sparseArrayLimits:v,sparseArrayMin:g,sparseArrayMax:m,sqr:l,valueOrDefault:a,romanToArabic:A,arabicToRoman:D,memoize:E}}),P.drawing.util=P.util,P.dataviz.util=P.util}(),window.kendo}(),function(){!function(e){function t(e,t,n){return c.current.measure(e,t,n)}var n=document,i=window.kendo,o=i.Class,r=i.util,s=r.defined,a=o.extend({init:function(e){this._size=e,this._length=0,this._map={}},put:function(e,t){var n=this,i=n._map,o={key:e,value:t};i[e]=o,n._head?(n._tail.newer=o,o.older=n._tail,n._tail=o):n._head=n._tail=o,n._length>=n._size?(i[n._head.key]=null,n._head=n._head.newer,n._head.older=null):n._length++},get:function(e){var t=this,n=t._map[e];return n?(n===t._head&&n!==t._tail&&(t._head=n.newer,t._head.older=null),n!==t._tail&&(n.older&&(n.older.newer=n.newer,n.newer.older=n.older),n.older=t._tail,n.newer=null,t._tail.newer=n,t._tail=n),n.value):void 0}}),l=e("<div style='position: absolute !important; top: -4000px !important; width: auto !important; height: auto !important;padding: 0 !important; margin: 0 !important; border: 0 !important;line-height: normal !important; visibility: hidden !important; white-space: nowrap!important;' />")[0],c=o.extend({init:function(e){this._cache=new a(1e3),this._initOptions(e)},options:{baselineMarkerSize:1},measure:function(t,i,o){var a,c,u,d,h,f=r.objectKey(i),p=r.hashKey(t+f),g=this._cache.get(p);if(g)return g;a={width:0,height:0,baseline:0},c=o?o:l,u=this._baselineMarker().cloneNode(!1);for(d in i)h=i[d],s(h)&&(c.style[d]=h);return e(c).text(t),c.appendChild(u),n.body.appendChild(c),(t+"").length&&(a.width=c.offsetWidth-this.options.baselineMarkerSize,a.height=c.offsetHeight,a.baseline=u.offsetTop+this.options.baselineMarkerSize),a.width>0&&a.height>0&&this._cache.put(p,a),c.parentNode.removeChild(c),a},_baselineMarker:function(){return e("<div class='k-baseline-marker' style='display: inline-block; vertical-align: baseline;width: "+this.options.baselineMarkerSize+"px; height: "+this.options.baselineMarkerSize+"px;overflow: hidden;' />")[0]}});c.current=new c,i.util.TextMetrics=c,i.util.LRUCache=a,i.util.measureText=t}(window.kendo.jQuery)}(),function(){!function(e){var t,n,i,o,r,s;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=e.spreadsheet.Command=e.Class.extend({init:function(e){this.options=e,this._workbook=e.workbook,this._property=e&&e.property,this._state={}},range:function(e){return void 0!==e&&(this._range=e),this._range},redo:function(){this.exec()},undo:function(){this.range().setState(this._state)},getState:function(){this._state=this.range().getState(this._property)},_forEachCell:function(e){var t=this.range(),n=t._ref;n.forEach(function(n){t.sheet().forEach(n.toRangeRef(),e.bind(this))}.bind(this))}}),i=e.spreadsheet.PropertyChangeCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._value=e.value},exec:function(){var e=this.range();this.getState(),e[this._property](this._value)}}),e.spreadsheet.ClearContentCommand=n.extend({exec:function(){this.getState(),this.range().clearContent()}}),e.spreadsheet.EditCommand=i.extend({init:function(e){e.property="input",i.fn.init.call(this,e)},rejectState:function(e){return this.undo(),{title:e.title,body:e.message,reason:"error"}},exec:function(){var t,n=this.range(),i=this._value;this.getState();try{if(n.input(i),t=n._getValidationState())return this.rejectState(t)}catch(o){if(!(o instanceof e.spreadsheet.calc.ParseError))throw o;try{if(n.input(i+")"),t=n._getValidationState())return this.rejectState(t)}catch(r){if(r instanceof e.spreadsheet.calc.ParseError)return n.input("'"+i),{title:"Error in formula",body:o+"",reason:"error"}}}}}),e.spreadsheet.TextWrapCommand=i.extend({init:function(e){e.property="wrap",i.fn.init.call(this,e),this._value=e.value},getState:function(){var e={};this.range().forEachRow(function(t){var n=t.topLeft().row;e[n]=t.sheet().rowHeight(n)}),this._state=this.range().getState(this._property),this._rowHeight=e},undo:function(){var e,t=this.range().sheet(),n=this._rowHeight;this.range().setState(this._state);for(e in n)t.rowHeight(e,n[e])}}),e.spreadsheet.AdjustDecimalsCommand=n.extend({init:function(e){this._decimals=e.decimals,e.property="format",n.fn.init.call(this,e)},exec:function(){var t=this.range().sheet(),n=this._decimals,i=e.spreadsheet.formatting;this.getState(),t.batch(function(){this.range().forEachCell(function(e,o,r){var s=r.format;(s||n>0)&&(s=i.adjustDecimals(s||"#",n),t.range(e,o).format(s))})}.bind(this))}}),e.spreadsheet.BorderChangeCommand=n.extend({init:function(e){e.property="border",n.fn.init.call(this,e),this._type=e.border,this._style=e.style},exec:function(){this.getState(),this[this._type](this._style)},noBorders:function(){var e=this.range();e.sheet().batch(function(){e.borderLeft(null).borderTop(null).borderRight(null).borderBottom(null)}.bind(this),{})},allBorders:function(e){var t=this.range();t.sheet().batch(function(){t.borderLeft(e).borderTop(e).borderRight(e).borderBottom(e)}.bind(this),{})},leftBorder:function(e){this.range().leftColumn().borderLeft(e)},rightBorder:function(e){this.range().rightColumn().borderRight(e)},topBorder:function(e){this.range().topRow().borderTop(e)},bottomBorder:function(e){this.range().bottomRow().borderBottom(e)},outsideBorders:function(e){var t=this.range();t.sheet().batch(function(){t.leftColumn().borderLeft(e),t.topRow().borderTop(e),t.rightColumn().borderRight(e),t.bottomRow().borderBottom(e)}.bind(this),{})},insideBorders:function(e){this.range().sheet().batch(function(){this.allBorders(e),this.outsideBorders(null)}.bind(this),{})},insideHorizontalBorders:function(e){var t=this.range();t.sheet().batch(function(){t.borderBottom(e),t.bottomRow().borderBottom(null)}.bind(this),{})},insideVerticalBorders:function(e){var t=this.range();t.sheet().batch(function(){t.borderRight(e),t.rightColumn().borderRight(null)}.bind(this),{})}}),e.spreadsheet.MergeCellCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._type=e.value},exec:function(){this.getState(),this[this._type]()},activate:function(e){this.range().sheet().activeCell(e)},getState:function(){this._state=this.range().getState()},undo:function(){"unmerge"!==this._type&&(this.range().unmerge(),this.activate(this.range().topLeft())),this.range().setState(this._state)},cells:function(){var e=this.range(),t=e._ref;e.merge(),this.activate(t)},horizontally:function(){var e=this.range().topRow()._ref;this.range().forEachRow(function(e){e.merge()}),this.activate(e)},vertically:function(){var e=this.range().leftColumn()._ref;this.range().forEachColumn(function(e){e.merge()}),this.activate(e)},unmerge:function(){var e=this.range(),t=e._ref.topLeft;e.unmerge(),this.activate(t)}}),e.spreadsheet.FreezePanesCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._type=e.value},exec:function(){this.getState(),this._topLeft=this.range().topLeft(),this[this._type]()},getState:function(){this._state=this.range().sheet().getState()},undo:function(){this.range().sheet().setState(this._state)},panes:function(){var e=this._topLeft,t=this.range().sheet();t.frozenColumns(e.col).frozenRows(e.row)},rows:function(){var e=this._topLeft,t=this.range().sheet();t.frozenRows(e.row)},columns:function(){var e=this._topLeft,t=this.range().sheet();t.frozenColumns(e.col)},unfreeze:function(){var e=this.range().sheet();e.frozenRows(0).frozenColumns(0)}}),e.spreadsheet.PasteCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._clipboard=this._workbook.clipboard()},getState:function(){this._range=this._workbook.activeSheet().range(this._clipboard.pasteRef()),this._state=this._range.getState()},exec:function(){var t,n,i=this._clipboard.canPaste();if(this._clipboard.menuInvoked=!0,i.canPaste)this.getState(),this._clipboard.paste(),t=this._workbook.activeSheet(),n=t.range(this._clipboard.pasteRef()),n.forEachRow(function(n){var i=n.sheet().rowHeight(n.topLeft().row);n.forEachCell(function(n,o,r){var s=t.columnWidth(o);i=Math.max(i,e.spreadsheet.util.getTextHeight(r.value,s,r.fontSize,r.wrap))}),t.rowHeight(n.topLeft().row,i)});else{if(i.menuInvoked)return{reason:"useKeyboard"};if(i.pasteOnMerged)return{reason:"modifyMerged"}}}}),e.spreadsheet.ToolbarPasteCommand=n.extend({exec:function(){return e.support.clipboard.paste?(this._workbook._view.clipboard.focus().select(),void document.execCommand("paste")):{reason:"useKeyboard"}}}),e.spreadsheet.CopyCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._clipboard=e.workbook.clipboard()},undo:t.noop,exec:function(){var e=this._clipboard.canCopy();if(this._clipboard.menuInvoked=!0,e.canCopy)this._clipboard.copy();else{if(e.menuInvoked)return{reason:"useKeyboard"};if(e.multiSelection)return{reason:"unsupportedSelection"}}}}),e.spreadsheet.ToolbarCopyCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._clipboard=e.workbook.clipboard()},undo:t.noop,exec:function(){var n,i;return e.support.clipboard.copy?(n=this._workbook._view.clipboard,i=document.createElement("textarea"),t(i).addClass("k-spreadsheet-clipboard").val(n.html()).appendTo(document.body).focus().select(),document.execCommand("copy"),n.trigger("copy"),t(i).remove(),void 0):{reason:"useKeyboard"}}}),e.spreadsheet.CutCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._clipboard=e.workbook.clipboard()},exec:function(){this._clipboard.canCopy()&&(this.getState(),this._clipboard.cut())}}),e.spreadsheet.AutoFillCommand=n.extend({init:function(e){n.fn.init.call(this,e)},origin:function(e){this._origin=e},exec:function(){this.getState(),this._range.fillFrom(this._origin)}}),e.spreadsheet.ToolbarCutCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._clipboard=e.workbook.clipboard()},exec:function(){var n,i;return e.support.clipboard.copy?(n=this._workbook._view.clipboard,i=document.createElement("textarea"),t(i).val(n.html()).appendTo(document.body).focus().select(),document.execCommand("copy"),n.trigger("cut"),t(i).remove(),void 0):{reason:"useKeyboard"}}}),e.spreadsheet.FilterCommand=n.extend({undo:function(){this.range().filter(this._state)},exec:function(){var e=this.range();if(this._state=e.hasFilter(),e.hasFilter())e.filter(!1);else{if(e.intersectingMerged().length)return{reason:"filterRangeContainingMerges"};e.filter(!0)}}}),e.spreadsheet.SortCommand=n.extend({undo:function(){var e=this.range().sheet();e.setState(this._state)},exec:function(){var e=this.range(),t=e.sheet(),n=t.activeCell(),i=n.topLeft.col,o=this.options.asc;this._state=t.getState(),this.options.sheet?this.expandRange().sort({column:i,ascending:o}):e.sort({column:i,ascending:o})},expandRange:function(){var t=this.range().sheet();return new e.spreadsheet.Range(t._sheetRef,t)}}),o=e.spreadsheet.ApplyFilterCommand=n.extend({column:function(){return this.options.column||0},undo:function(){var e=this.range().sheet();e.clearFilter(this.column()),this._state.length&&this.range().filter(this._state)},getState:function(){var e=this.range().sheet(),t=e.filter();t&&(this._state=t.columns.filter(function(e){return e.index==this.column()}.bind(this)))},exec:function(){var t,n=this.range(),i=this.column();this.options.valueFilter?t=new e.spreadsheet.ValueFilter(this.options.valueFilter):this.options.customFilter&&(t=new e.spreadsheet.CustomFilter(this.options.customFilter)),this.getState(),n.clearFilter(i),n.filter({column:i,filter:t})}}),e.spreadsheet.ClearFilterCommand=o.extend({exec:function(){var e=this.range(),t=this.column();this.getState(),e.clearFilter(t)}}),e.spreadsheet.HideLineCommand=n.extend({init:function(e){n.fn.init.call(this,e),this.axis=e.axis},undo:function(){var e=this.range().sheet();e.setAxisState(this._state)},exec:function(){var e=this.range().sheet();this._state=e.getAxisState(),"row"==this.axis?e.axisManager().hideSelectedRows():e.axisManager().hideSelectedColumns()}}),e.spreadsheet.UnHideLineCommand=e.spreadsheet.HideLineCommand.extend({exec:function(){var e=this.range().sheet();this._state=e.getAxisState(),"row"==this.axis?e.axisManager().unhideSelectedRows():e.axisManager().unhideSelectedColumns()}}),r=e.spreadsheet.DeleteCommand=n.extend({undo:function(){var e=this.range().sheet();e.setState(this._state)}}),e.spreadsheet.DeleteRowCommand=r.extend({exec:function(){var e=this.range().sheet();this._state=e.getState(),e.axisManager().deleteSelectedRows()}}),e.spreadsheet.DeleteColumnCommand=r.extend({exec:function(){var e=this.range().sheet();this._state=e.getState(),e.axisManager().deleteSelectedColumns()}}),s=n.extend({init:function(e){n.fn.init.call(this,e),this._value=e.value},undo:function(){var e=this.range().sheet();e.setState(this._state)}}),e.spreadsheet.AddColumnCommand=s.extend({exec:function(){var e=this.range().sheet();this._state=e.getState(),"left"===this._value?e.axisManager().addColumnLeft():e.axisManager().addColumnRight()}}),e.spreadsheet.AddRowCommand=s.extend({exec:function(){var e=this.range().sheet();return e.axisManager().canAddRow()?(this._state=e.getState(),void("above"===this._value?e.axisManager().addRowAbove():e.axisManager().addRowBelow())):{reason:"error",type:"shiftingNonblankCells"}}}),e.spreadsheet.EditValidationCommand=n.extend({init:function(e){n.fn.init.call(this,e),this._value=e.value},exec:function(){this.range().validation(this._value)}}),e.spreadsheet.SaveAsCommand=n.extend({exec:function(){this.options.workbook.saveAsExcel({fileName:this.options.fileName})}}))}(kendo)}(),function(){!function(e){var t,n,i;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n={wrapper:"k-spreadsheet-formula-bar"},i=e.ui.Widget.extend({init:function(n,o){e.ui.Widget.call(this,n,o),n=this.element.addClass(i.classNames.wrapper),this.formulaInput=new e.spreadsheet.FormulaInput(t("<div/>").appendTo(n))},destroy:function(){this.formulaInput&&this.formulaInput.destroy(),this.formulaInput=null}}),e.spreadsheet.FormulaBar=i,t.extend(!0,i,{classNames:n}))}(window.kendo)}(),function(){!function(e,t){function n(e){return"("==e||"["==e||"{"==e}function i(e){return")"==e||"]"==e||"}"==e}function o(e,t){return"("==t?")"==e:"["==t?"]"==e:"{"==t?"}"==e:!1}function r(e,t){return t.begin>=e.begin&&e.end>=t.end}function s(t){return e.spreadsheet.calc.runtime.FUNCS[t.toLowerCase()]}function a(e,t){return e&&t?"ref"==e.type&&"ref"==t.type?e.ref.eq(t.ref):e.value===t.value:!1}var l,c,u,d,h,f,p,g,m;e.support.browser.msie&&9>e.support.browser.version||(l=e.jQuery,c=e.ui.Widget,u=".kendoFormulaInput",d=e.keys,h={wrapper:"k-spreadsheet-formula-input",listWrapper:"k-spreadsheet-formula-list"},f=["font-family","font-size","font-stretch","font-style","font-weight","letter-spacing","text-transform","line-height"],p={27:"esc",37:"left",39:"right",35:"end",36:"home",32:"spacebar"},g=/(^_|[^a-z0-9]$)/i,m=c.extend({init:function(e,t){c.call(this,e,t),e=this.element,e.addClass(m.classNames.wrapper).attr("contenteditable",!0).attr("spellcheck",!1),this.options.autoScale&&e.on("input",this.scale.bind(this)),this._highlightedRefs=[],this._staticTokens=[],this._formulaSource(),this._formulaList(),this._popup(),this._tooltip(),e.on("keydown",this._keydown.bind(this)).on("keyup",this._keyup.bind(this)).on("blur",this._blur.bind(this)).on("input click",this._input.bind(this)).on("focus",this._focus.bind(this))},options:{name:"FormulaInput",autoScale:!1,filterOperator:"startswith",scalePadding:30,minLength:1},events:["keyup"],getPos:function(){function e(e,t){try{!function o(n){if(n===e)throw t;if(1==n.nodeType)for(var i=n.firstChild;i;i=i.nextSibling)o(i);else 3==n.nodeType&&(t+=n.nodeValue.length)}(i)}catch(n){return n}}var n,i=this.element[0],o=t.getSelection(),r=e(o.focusNode,o.focusOffset),s=e(o.anchorNode,o.anchorOffset);return null!=r&&null!=s?(r>s&&(n=r,r=s,s=n),{begin:r,end:s,collapsed:r==s}):void 0},setPos:function(e,n){function i(e,t){try{!function i(e){var n,o;if(3==e.nodeType){if(n=e.nodeValue.length,n>=t)throw e;t-=n}else if(1==e.nodeType)for(o=e.firstChild;o;o=o.nextSibling)i(o)}(e)}catch(n){return{node:n,pos:t}}}var o,r,s=this.element[0];e=i(s,e),n=null!=n?i(s,n):e,e&&n&&(o=document.createRange(),o.setStart(e.node,e.pos),o.setEnd(n.node,n.pos),r=t.getSelection(),r.removeAllRanges(),r.addRange(o))},end:function(){this.setPos(this.length())},home:function(){this.setPos(0)},length:function(){return this.value().length},_formulaSource:function(){var t,n,i=[];for(n in e.spreadsheet.calc.runtime.FUNCS)g.test(n)||(t=n.toUpperCase(),i.push({value:t,text:t}));this.formulaSource=new e.data.DataSource({data:i})},_formulaList:function(){this.list=new e.ui.StaticList(l("<ul />").addClass(m.classNames.listWrapper).insertAfter(this.element),{autoBind:!1,selectable:!0,change:this._formulaListChange.bind(this),dataSource:this.formulaSource,dataValueField:"value",template:"#:data.value#"}),this.list.element.on("mousedown",function(e){e.preventDefault()})},_formulaListChange:function(){var e,t,n,i=this._tokenContext();i&&!this._mute&&(e=i.token,t=this.list.value()[0],n={replace:!0,token:e,end:e.end},i.nextToken&&"("==i.nextToken.value||(t+="("),this._replaceAt(n,t),this.popup.close())},_popup:function(){this.popup=new e.ui.Popup(this.list.element,{anchor:this.element})},_blur:function(){this.popup.close(),clearTimeout(this._focusId)},_isFormula:function(){return/^=/.test(this.value())},_keydown:function(e){var t=e.keyCode;p[t]?(this.popup.close(),this._navigated=!0):this._move(t)&&(this._navigated=!0,e.preventDefault()),this._keyDownTimeout=setTimeout(this._syntaxHighlight.bind(this))},_keyup:function(){var e,t=this.popup;this._isFormula()&&!this._navigated&&(e=((this._tokenContext()||{}).token||{}).value,this.filter(e),e&&this.formulaSource.view().length?(t[t.visible()?"position":"open"](),this.list.focusFirst()):t.close()),this._navigated=!1,this._syntaxHighlight(),this.trigger("keyup")},_input:function(){this._syntaxHighlight()},_focus:function(){this._focusTimeout=setTimeout(this._syntaxHighlight.bind(this))},_move:function(e){var t=this.list,n=!1;return e===d.DOWN?(t.focusNext(),t.focus()||t.focusFirst(),n=!0):e===d.UP?(t.focusPrev(),t.focus()||t.focusLast(),n=!0):e===d.ENTER?(t.select(t.focus()),this.popup.close(),n=!0):e===d.TAB?(t.select(t.focus()),this.popup.close(),n=!0):e===d.PAGEUP?(t.focusFirst(),n=!0):e===d.PAGEDOWN&&(t.focusLast(),n=!0),n},_tokenContext:function(){var t,n,i,o=this.getPos(),s=this.value();if(!s||!o||!o.collapsed)return null;for(t=e.spreadsheet.calc.tokenize(s),i=0;t.length>i;++i)if(n=t[i],r(n,o)&&/^(?:str|sym|func)$/.test(n.type))return{token:n,nextToken:t[i+1]};return null},_sync:function(){this._editorToSync&&this.isActive()&&this._editorToSync.value(this.value())},_textContainer:function(){var t=e.getComputedStyles(this.element[0],f);t.position="absolute",t.visibility="hidden",t.top=-3333,t.left=-3333,this._span=l("<span/>").css(t).insertAfter(this.element)},_tooltip:function(){this._cellTooltip=l('<div class="k-widget k-tooltip" style="position:absolute; display:none">A1</div>').insertAfter(this.element)},tooltip:function(e){this._cellTooltip.text(e)},toggleTooltip:function(e){this._cellTooltip.toggle(e)},isActive:function(){return this.element[0]===e._activeElement()},filter:function(e){!e||this.options.minLength>e.length||(this._mute=!0,this.list.select(-1),this._mute=!1,this.formulaSource.filter({field:this.list.options.dataValueField,operator:this.options.filterOperator,value:e}))},hide:function(){this.element.hide(),this._cellTooltip.hide()},show:function(){this.element.show()},position:function(e){e&&(this.element.show().css({top:e.top+"px",left:e.left+"px"}),this._cellTooltip.css({top:e.top-this._cellTooltip.height()-10+"px",left:e.left}))},resize:function(e){e&&this.element.css({width:e.width+1,height:e.height+1})},canInsertRef:function(e){var t,n=this._canInsertRef(e),i=n&&n.token;if(i)for(t=0;this._staticTokens.length>t;t++)if(a(i,this._staticTokens[t]))return null;return n},_canInsertRef:function(t){function i(e){return e.begin>l.begin}function o(e){if(e){if(/^(?:num|str|bool|sym|ref)$/.test(e.type))return{replace:!0,token:e,end:e.end};if(/^(?:op|punc|startexp)$/.test(e.type))return e.end==l.end?s(e,c[d+1]):s(c[d-1],e)}}function s(e,t){if(null==e)return null;if(null==t)return/^(?:op|startexp)$/.test(e.type)||n(e.value)?{token:e,end:l.end}:null;if(a){if("op"==e.type&&/^(?:punc|op)$/.test(t.type))return{token:e,end:l.end}}else{if("startexp"==e.type)return{token:e,end:l.end};if(/^(?:ref|op|punc)$/.test(e.type))return{token:e,end:l.end};if(/^(?:punc|op)$/.test(e.type))return/^[,;({]$/.test(e.value)?{token:e,end:l.end}:null}return!1}var a,l,c,u,d;if(this.popup.visible())return null;if(a=t,l=this.getPos(),l&&this._isFormula()){if(0===l.begin)return null;for(c=e.spreadsheet.calc.tokenize(this.value()),d=0;c.length>d;++d){if(u=c[d],r(u,l))return o(u);if(i(u))return s(c[d-1],u)}return s(u,null)}return null},refAtPoint:function(e){var t=this._canInsertRef();t&&this._replaceAt(t,""+e.simplify())},_replaceAt:function(e,t){var n,i=this.value(),o=e.token,r=i.substr(e.end);i=i.substr(0,e.replace?o.begin:e.end)+t,n=i.length,i+=r,this._value(i),this.setPos(n),this.scale(),this._syntaxHighlight(),this._sync()},syncWith:function(e){var t="input"+u;this._editorToSync=e,this.element.off(t).on(t,this._sync.bind(this))},scale:function(){var e,t=this.element;this._span||this._textContainer(),this._span.html(t.html()),e=this._span.width()+this.options.scalePadding,e>t.width()&&t.width(e)},_value:function(e){this.element.text(e)},value:function(e){return void 0===e?this.element.text():(this._value(e),void this._syntaxHighlight())},highlightedRefs:function(){return this._highlightedRefs.slice()},_syntaxHighlight:function(){var t,a=this.getPos(),l=this.value(),c=e.spreadsheet.Pane.classNames.series,u=[],d=0,h=[],f=[];(!a||a.collapsed)&&(/^=/.test(l)?(f=e.spreadsheet.calc.tokenize(l),f.forEach(function(e){if(e.active=!1,e.cls=["k-syntax-"+e.type],"ref"==e.type&&(e.colorClass=c[d++%c.length],e.cls.push(e.colorClass),u.push(e)),a&&"punc"==e.type)if(n(e.value))h.unshift(e);else if(i(e.value)){var l=h.shift();l?o(e.value,l.value)?(r(e,a)||r(l,a))&&(e.cls.push("k-syntax-paren-match"),l.cls.push("k-syntax-paren-match")):(e.cls.push("k-syntax-error"),l.cls.push("k-syntax-error")):e.cls.push("k-syntax-error")}a&&r(e,a)&&(e.cls.push("k-syntax-at-point"),e.active=!0,t=e),"func"!=e.type||s(e.value)||a&&r(e,a)||e.cls.push("k-syntax-error")}),f.reverse().forEach(function(t){var n=t.begin,i=t.end,o=e.htmlEncode(l.substring(n,i));l=l.substr(0,n)+"<span class='"+t.cls.join(" ")+"'>"+o+"</span>"+l.substr(i)}),this.element.html(l)):(this.element.text(l),this.popup.close()),a&&this.setPos(a.begin,a.end),t&&/^(?:startexp|op|punc)$/.test(t.type)&&this._setStaticTokens(f),this._highlightedRefs=u)},_setStaticTokens:function(e){var t,n;for(this._staticTokens=[],t=0;e.length>t;t++)n=e[t],/^(?:num|str|bool|sym|ref)$/.test(n.type)&&this._staticTokens.push(n)},destroy:function(){this._editorToSync=null,this.element.off(u),clearTimeout(this._focusTimeout),clearTimeout(this._keyDownTimeout),this._cellTooltip=null,this._span=null,this.popup.destroy(),this.popup=null,c.fn.destroy.call(this)}}),e.spreadsheet.FormulaInput=m,l.extend(!0,m,{classNames:h}))}(kendo,window)}(),function(){!function(e){var t,n,i,o,r,s;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n={8:"backspace",9:"tab",13:"enter",27:"esc",37:"left",38:"up",39:"right",40:"down",35:"end",36:"home",32:"spacebar",33:"pageup",34:"pagedown",46:"delete",113:":edit"},i=navigator.platform.toUpperCase().indexOf("MAC")>=0,o=function(e){return e>47&&58>e||e>64&&91>e||e>95&&112>e||e>185&&193>e||e>218&&223>e?!0:!1},r=function(e){var t=n[e];return!t&&o(e)&&(t=":alphanum"),t},s=e.Class.extend({init:function(e,n,i){if(this._handlers={},this.target=e,this._observer=n||window,this.keyDownProxy=this.keyDown.bind(this),this.mouseProxy=this.mouse.bind(this),this.threshold=5,this._pressLocation=null,e.on("keydown",this.keyDownProxy),e.on("contextmenu mousedown cut copy paste scroll wheel click dblclick focus",this.mouseProxy),t(document.documentElement).on("mousemove mouseup",this.mouseProxy),i)for(var o in i)this.on(o,i[o])},keyDown:function(e){this.handleEvent(e,r(e.keyCode))},mouse:function(e){var t,n,i,o,r;e.which?t=3==e.which:e.button&&(t=2==e.button),n=e.type,"mousedown"===n&&(t?n="rightmousedown":this._pressLocation={x:e.pageX,y:e.pageY}),"mouseup"===n&&(t||(this._pressLocation=null)),"mousemove"===n&&this._pressLocation&&(i=this._pressLocation.x-e.pageX,o=this._pressLocation.y-e.pageY,r=Math.sqrt(i*i+o*o),r>this.threshold&&(n="mousedrag")),this.handleEvent(e,n)},handleEvent:function(e,t){var n,o,r="";e.mod=i?e.metaKey:e.ctrlKey,e.shiftKey&&(r+="shift+"),e.ctrlKey&&(r+="ctrl+"),r+=t,n=this._handlers["*+"+t],n&&n.call(this._observer,e,r),o=this._handlers[r],o&&o.call(this._observer,e,r)},on:function(e,t){var n=this._handlers;"string"==typeof t&&(t=this._observer[t]),"string"==typeof e&&(e=e.split(",")),e.forEach(function(e){n[e]=t})},destroy:function(){this.target.off("keydown",this.keyDownProxy),this.target.off("keydown",this.mouseProxy),t(document.documentElement).off("mousemove mouseup",this.mouseProxy)}}),e.spreadsheet.EventListener=s)}(window.kendo)}(),function(){!function(e){function t(e){return e}function n(e){if(e.left.level===e.level){var t=e;e=e.left,t.left=e.right,e.right=t}return e}function i(e){if(e.right.right.level===e.level){var t=e;e=e.right,t.right=e.left,e.left=t,e.level+=1}return e}function o(e,t){return e===u?new c(1,t,u,u):(e.value.start-t.start>0?e.left=o(e.left,t):e.right=o(e.right,t),i(n(e)))}function r(e,t){var o,s;if(e===u)return e;if(o=e.value.start-t.start,0===o)if(e.left!==u&&e.right!==u){for(s=e.left;s.right!==u;)s=s.right;e.value=s.value,e.left=r(e.left,e.value)}else e=e.left===u?e.right:e.left;else o>0?e.left=r(e.left,t):e.right=r(e.right,t);return(e.level-1>e.left.level||e.level-1>e.right.level)&&(e.level-=1,e.right.level>e.level&&(e.right.level=e.level),e=n(e),e.right=n(e.right),e.right.right=n(e.right.right),e=i(e),e.right=i(e.right)),e}function s(e,t){e!==u&&(s(e.left,t),t.push(e.value),s(e.right,t))}function a(e,t,n){if(e!==u){var i=e.value;i.start>t.start&&a(e.left,t,n),i.intersects(t)&&n.push(i),t.end>i.end&&a(e.right,t,n)}}function l(e,t,n){t!==u&&(l(e,t.left,n),e.insert(n(t.value)),l(e,t.right,n))}var c,u,d,h,f,p,g;e.support.browser.msie&&9>e.support.browser.version||(c=e.Class.extend({init:function(e,t,n,i){this.level=e,this.value=t,this.left=n,this.right=i}}),u=new function(){this.left=this,this.right=this,this.level=0},d=e.Class.extend({init:function(e,t,n){this.start=e,this.end=t,this.value=n},intersects:function(e){return this.end>=e.start&&e.end>=this.start}}),h=e.Class.extend({init:function(){this.root=u},insert:function(e){this.root=o(this.root,e)},remove:function(e){this.root=r(this.root,e)},findrange:function(e){for(var t=this.root;t!=u;)if(t.value.start>e)t=t.left;else{if(!(e>t.value.end))return t.value;t=t.right}return null},values:function(){var e=[];return s(this.root,e),e},intersecting:function(e,t){var n=[];return a(this.root,new d(e,t),n),n},map:function(e){var t=new h;return l(t,this.root,e),t},clone:function(){return this.map(t)},first:function(){for(var e=this.root;e.left!=u;)e=e.left;return e},last:function(){for(var e=this.root;e.right!=u;)e=e.right;return e}}),f=e.Class.extend({init:function(e,t,n){void 0===t?this.tree=e:(this.tree=new h,this.tree.insert(new d(e,t,n)))},values:function(){return this.tree.values()},map:function(e){return new f(this.tree.map(e))},intersecting:function(e,t){return this.tree.intersecting(e,t)},first:function(){return this.tree.first().value},last:function(){return this.tree.last().value},insert:function(e,t,n){return this.tree.insert(new d(e,t,n))},value:function(e,t,n){var i,o,r,s,a,l,c,u,d;if(void 0===n)return void 0===t&&(t=e),this.intersecting(e,t)[0].value;if(i=this.tree.intersecting(e-1,t+1),i.length)for(o=i[0],r=i[i.length-1],e>o.end&&(o.value===n?e=o.start:i.shift()),r.start>t&&(r.value===n?t=r.end:i.pop()),s=0,a=i.length;a>s;s++)l=i[s],c=l.value,u=l.start,d=l.end,this.tree.remove(l),e>u&&(c!==n?this.insert(u,e-1,c):e=u),d>t&&(c!==n?this.insert(t+1,d,c):t=d);this.insert(e,t,n)},expandedValues:function(e,t){
|
||
var n,i=this.intersecting(e,t),o=[],r=0;for(n=e;t>=n;n++)n>i[r].end&&r++,o.push({index:n-e,value:i[r].value});return o},sortedIndices:function(e,t,n,i){var o=this.expandedValues(e,t),r=function(e,t){return e.value===t.value?e.index-t.index:n(e.value,t.value)};return i&&(r=function(e,t){var o=i[e.index],r=i[t.index];return o.value===r.value?n(e.value,t.value):e.index-t.index}),o.sort(r),o},sort:function(e,t,n){var i,o,r;if(1!==this.intersecting(e,t).length)for(i=this.expandedValues(e,t),o=0,r=n.length;r>o;o++)this.value(o+e,o+e,i[n[o].index].value)},copy:function(e,t,n){var i,o,r,s,a,l=this.intersecting(e,t),c=n;for(o=0,r=l.length;r>o;o++)s=l[o].start,e>s&&(s=e),a=l[o].end,a>t&&(a=t),i=c+(a-s),this.value(c,i,l[o].value),c=++i},iterator:function(e,t){return new p(e,t,this.intersecting(e,t))},getState:function(){return this.tree.clone()},setState:function(e){this.tree=e}}),p=e.Class.extend({init:function(e,t,n){this.start=e,this.end=t,this.index=0,this.ranges=n},unique:function(){return this.ranges.map(function(e){return e.value})},at:function(e){for(;e>this.ranges[this.index].end;)this.index++;return this.ranges[this.index].value},forEach:function(e){for(var t=this.start;this.end>=t;t++)e(this.at(t),t);this.index=0}}),g=f.extend({init:function(e,t,n){this.tree=new h,this.range=new d(e,t,n)},intersecting:function(e,t){var n,i,o,r=this.tree.intersecting(e,t),s=[];if(!r.length)return[this.range];for(i=0,o=r.length;o>i;i++)n=r[i],n.start>e&&s.push(new d(e,n.start-1,this.range.value)),s.push(n),e=n.end+1;return t>n.end&&s.push(new d(n.end+1,t,this.range.value)),s},insert:function(e,t,n){n!==this.range.value&&this.tree.insert(new d(e,t,n))},lastRangeStart:function(){var e=this.tree.root;if(e===u)return this.range.start;for(;e.right!==u;)e=e.right;return e.value.end+1}}),e.spreadsheet.RangeTree=h,e.spreadsheet.RangeList=f,e.spreadsheet.SparseRangeList=g,e.spreadsheet.ValueRange=d)}(kendo)}(),function(){!function(e){function t(e){return e.replace(/M/g,"m").replace(/'/g,'"').replace(/tt/,"am/pm")}var n,i,o,r;e.support.browser.msie&&9>e.support.browser.version||(n=e.jQuery,i=e.Class.extend({init:function(e){this.list=e},get:function(e){return this.parse(this.list.value(e,e))},set:function(e,t,n){void 0===n&&(n=t,t=e),this.list.value(e,t,n)},parse:function(e){return e},copy:function(e,t,n){this.list.copy(e,t,n)},iterator:function(e,t){return this.list.iterator(e,t)}}),o=i.extend({set:function(e,t,n){this.list.value(e,t,JSON.stringify(n))},parse:function(e){return JSON.parse(e)}}),r=i.extend({init:function(e,t,n){i.prototype.init.call(this,e),this.validations=n,this.formats=t},set:function(n,i,o){o instanceof Date&&(o=e.spreadsheet.dateToNumber(o),this.formats.value(n,i,t(e.culture().calendar.patterns.d))),this.list.value(n,i,o)}}),e.spreadsheet.PropertyBag=e.Class.extend({specs:[{property:r,name:"value",value:null,sortable:!0,serializable:!0,depends:"format"},{property:i,name:"format",value:null,sortable:!0,serializable:!0},{property:i,name:"formula",value:null,sortable:!0,serializable:!0},{property:i,name:"background",value:null,sortable:!0,serializable:!0},{property:o,name:"borderBottom",value:null,sortable:!1,serializable:!0},{property:o,name:"borderRight",value:null,sortable:!1,serializable:!0},{property:o,name:"borderLeft",value:null,sortable:!1,serializable:!0},{property:o,name:"borderTop",value:null,sortable:!1,serializable:!0},{property:i,name:"color",value:null,sortable:!0,serializable:!0},{property:i,name:"fontFamily",value:null,sortable:!0,serializable:!0},{property:i,name:"underline",value:null,sortable:!0,serializable:!0},{property:i,name:"fontSize",value:null,sortable:!0,serializable:!0},{property:i,name:"italic",value:null,sortable:!0,serializable:!0},{property:i,name:"bold",value:null,sortable:!0,serializable:!0},{property:i,name:"textAlign",value:null,sortable:!0,serializable:!0},{property:i,name:"verticalAlign",value:null,sortable:!0,serializable:!0},{property:i,name:"wrap",value:null,sortable:!0,serializable:!0},{property:i,name:"validation",value:null,sortable:!1,serializable:!0}],init:function(t){this.properties={},this.lists={},this.specs.forEach(function(n){this.lists[n.name]=new e.spreadsheet.SparseRangeList(0,t,n.value)},this),this.specs.forEach(function(e){this.properties[e.name]=new e.property(this.lists[e.name],this.lists[e.depends])},this)},getState:function(){var e={};return this.specs.forEach(function(t){e[t.name]=this.lists[t.name].getState()},this),e},setState:function(e){this.specs.forEach(function(t){this.lists[t.name].setState(e[t.name])},this)},get:function(e,t){return void 0===t?this.lists[e]:this.properties[e].get(t)},set:function(e,t,n,i){this.properties[e].set(t,n,i)},fromJSON:function(e,t){var n,i;for(n=0;this.specs.length>n;n++)i=this.specs[n],i.serializable&&void 0!==t[i.name]&&this.set(i.name,e,e,t[i.name],!1)},copy:function(e,t,n){this.specs.forEach(function(i){this.properties[i.name].copy(e,t,n)},this)},iterator:function(e,t,n){return this.properties[e].iterator(t,n)},sortable:function(){return this.specs.filter(function(e){return e.sortable}).map(function(e){return this.lists[e.name]},this)},iterators:function(e,t){var n=this.specs.filter(function(e){return e.serializable});return n.map(function(n){var i=this.iterator(n.name,e,t);return{name:n.name,value:n.value,at:function(e){return n.property.fn.parse(i.at(e))}}},this)},forEach:function(e,t,n){var i,o,r,s,a,l=this.iterators(e,t);for(i=e;t>=i;i++){for(o={},r=0;l.length>r;r++)s=l[r],a=s.at(i),a!==s.value&&(o[s.name]=a);n(o)}},forEachProperty:function(e){for(var t in this.properties)e(this.properties[t])}}),e.spreadsheet.ALL_PROPERTIES=n.map(e.spreadsheet.PropertyBag.prototype.specs,function(e){return e.name}))}(window.kendo)}(),function(){"use strict";function e(t){var n=Math.floor(t/26)-1;return(n>=0?e(n):"")+String.fromCharCode(65+t%26)}function t(t,n,i,o){var r="";return++n,isFinite(n)?null==o||2&o||(n="$"+n):n="",isFinite(i)?(r=e(i),null==o||1&o||(r="$"+r)):i="",t?t+"!"+r+n:r+n}var n,i,o,r,s,a,l,c;kendo.support.browser.msie&&kendo.support.browser.version<9||(n=kendo.spreadsheet,i=kendo.Class,o=i.extend({type:"ref",hasSheet:function(){return this._hasSheet},simplify:function(){return this},setSheet:function(e,t){return this.sheet=e,null!=t&&(this._hasSheet=t),this},absolute:function(){return this},relative:function(){return this},adjust:function(){return this},toString:function(){return this.relative(0,0,3,3).print(0,0)},forEach:function(e,t){e.call(t,this)},map:function(e,t){return e.call(t,this)},intersects:function(e){return this.intersect(e)!==r},isCell:function(){return!1},toColumn:function(){return this},first:function(){return this},lastRange:function(){return this},size:function(){return 1},rangeAt:function(){return this},nextRangeIndex:function(){return 0},previousRangeIndex:function(){return 0},eq:function(e){var t,n,i,o,s=this,u=e;if(s===r||u===r)return s===u;if((u instanceof a||u instanceof l&&!(s instanceof a))&&(s=e,u=this),s instanceof a)return u=u.simplify(),u instanceof a&&s.row==u.row&&s.col==u.col&&s.sheet==u.sheet;if(s instanceof l){if(u instanceof l)return u.topLeft.eq(s.topLeft)&&u.bottomRight.eq(s.bottomRight);if(u instanceof c)return u.single()&&s.eq(u.refs[0])}else if(s instanceof c&&u instanceof c){if(t=s.refs,n=u.refs,t.length!=n.length)return!1;for(i=0,o=t.length;o>i;i++)if(!t[i].eq(n[i]))return!1;return!0}return s===u},concat:function(e){return new c([this,e])},replaceAt:function(e,t){return t},forEachColumnIndex:function(e){this.forEachAxisIndex("col",e)},forEachRowIndex:function(e){this.forEachAxisIndex("row",e)},forEachAxisIndex:function(e,t){var n=[],i="row"===e?"forEachRow":"forEachColumn";this[i](function(t){var i=t.first()[e];-1===n.indexOf(i)&&n.push(i)}),n.sort(function(e,t){return e>t?1:t>e?-1:0}).forEach(t)}}),o.display=t,r=new(o.extend({init:function(){},print:function(){return"#NULL!"},clone:function(){return this},eq:function(e){return e===this},forEach:function(){}})),s=o.extend({ref:"name",init:function(e){this.name=e},print:function(){var e=this.name;return this.hasSheet()&&(e=this.sheet+"!"+e),e}}),a=o.extend({ref:"cell",init:function(e,t,n){this.row=e,this.col=t,this.rel=n||0},clone:function(){return new a(this.row,this.col,this.rel).setSheet(this.sheet,this.hasSheet())},intersect:function(e){return e instanceof a?this.eq(e)?this:r:e.intersect(this)},print:function(e,n){var i=this.col,o=this.row,r=this.rel;return null==e?(i=isFinite(i)?1&r?"C["+i+"]":"C"+(i+1):"",o=isFinite(o)?2&r?"R["+o+"]":"R"+(o+1):"",o+i):(1&r&&(i+=n),2&r&&(o+=e),isFinite(i)&&0>i||isFinite(o)&&0>o?"#REF!":t(this._hasSheet&&this.sheet,o,i,r))},absolute:function(e,t){var n=this.clone();return n.rel&!1?n:(1&n.rel&&(n.col+=t),2&n.rel&&(n.row+=e),n.rel=0,n)},toRangeRef:function(){return new l(this,this)},relative:function(e,t,n){var i,o;return null==n&&(n=this.rel),i=2&n?this.row-e:this.row,o=1&n?this.col-t:this.col,new a(i,o,n).setSheet(this.sheet,this.hasSheet())},height:function(){return 1},width:function(){return 1},toString:function(){return t(null,this.row,this.col,3)},isCell:function(){return!0},leftColumn:function(){return this},rightColumn:function(){return this},topRow:function(){return this},bottomRow:function(){return this},forEachRow:function(e){e(this.toRangeRef())},forEachColumn:function(e){e(this.toRangeRef())},adjust:function(e,t,n,i,o,s,a){var l=this.absolute(e,t);if(o){if(l.row>=s){if(0>a&&s-a>l.row)return r;l.row+=a}}else if(l.col>=s){if(0>a&&s-a>l.col)return r;l.col+=a}return null!=n&&null!=i&&(l=l.relative(n,i,this.rel)),l}}),l=o.extend({ref:"range",init:function(e,t){e._hasSheet&&t._hasSheet&&e.sheet.toLowerCase()!=t.sheet.toLowerCase()&&(this.endSheet=t.sheet),this.topLeft=new a(e.row,e.col,e.rel),this.bottomRight=new a(t.row,t.col,t.rel),this.normalize()},clone:function(){return new l(this.topLeft.clone(),this.bottomRight.clone()).setSheet(this.sheet,this.hasSheet())},_containsRange:function(e){return this._containsCell(e.topLeft)&&this._containsCell(e.bottomRight)},_containsCell:function(e){return e.sheet==this.sheet&&e.row>=this.topLeft.row&&e.col>=this.topLeft.col&&this.bottomRight.row>=e.row&&this.bottomRight.col>=e.col},contains:function(e){if(e instanceof Array){var t=this;return e.some(function(e){return t.contains(e)})}return e instanceof a?this._containsCell(e):e instanceof l?this._containsRange(e):!1},_intersectRange:function(e){var t,n,i,o,s,c,u,d;return this.sheet!=e.sheet?r:(t=this.topLeft.col,n=this.topLeft.row,i=this.bottomRight.col,o=this.bottomRight.row,s=e.topLeft.col,c=e.topLeft.row,u=e.bottomRight.col,d=e.bottomRight.row,u>=t&&i>=s&&d>=n&&o>=c?new l(new a(Math.max(n,c),Math.max(t,s)),new a(Math.min(o,d),Math.min(i,u))).setSheet(this.sheet,this.hasSheet()):r)},intersect:function(e){if(e===r)return e;if(e instanceof a)return this._containsCell(e)?e:r;if(e instanceof l)return this._intersectRange(e).simplify();if(e instanceof c)return e.intersect(this);throw Error("Unknown reference")},simplify:function(){return this.isCell()?new a(this.topLeft.row,this.topLeft.col,this.topLeft.rel).setSheet(this.sheet,this.hasSheet()):this},normalize:function(){var e,t=this.topLeft,n=this.bottomRight,i=t.row,o=t.col,r=n.row,s=n.col,l=2&t.rel,c=1&t.rel,u=2&n.rel,d=1&n.rel,h=!1;return i>r&&(h=!0,e=i,i=r,r=e,e=l,l=u,u=e),o>s&&(h=!0,e=o,o=s,s=e,e=c,c=d,d=e),h&&(this.topLeft=new a(i,o,c|l),this.bottomRight=new a(r,s,d|u)),this},print:function(e,t){var n=this.topLeft.print(e,t)+":"+this.bottomRight.print(e,t);return this.hasSheet()&&(n=this.sheet+"!"+n),n},absolute:function(e,t){return new l(this.topLeft.absolute(e,t),this.bottomRight.absolute(e,t)).setSheet(this.sheet,this.hasSheet())},relative:function(e,t,n,i){return null==i&&(i=n),new l(this.topLeft.relative(e,t,n),this.bottomRight.relative(e,t,i)).setSheet(this.sheet,this.hasSheet())},height:function(){if(this.topLeft.rel!=this.bottomRight.rel)throw Error("Mixed relative/absolute references");return this.bottomRight.row-this.topLeft.row+1},width:function(){if(this.topLeft.rel!=this.bottomRight.rel)throw Error("Mixed relative/absolute references");return this.bottomRight.col-this.topLeft.col+1},collapse:function(){return this.topLeft.toRangeRef()},leftColumn:function(){return new l(this.topLeft,new a(this.bottomRight.row,this.topLeft.col))},rightColumn:function(){return new l(new a(this.topLeft.row,this.bottomRight.col),this.bottomRight)},topRow:function(){return new l(this.topLeft,new a(this.topLeft.row,this.bottomRight.col))},bottomRow:function(){return new l(new a(this.bottomRight.row,this.topLeft.col),this.bottomRight)},toRangeRef:function(){return this},toColumn:function(e){return new l(new a(this.topLeft.row,this.topLeft.col+e),new a(this.bottomRight.row,this.topLeft.col+e))},forEachRow:function(e){var t,n=this.topLeft.row,i=this.bottomRight.row,o=this.topLeft.col,r=this.bottomRight.col;for(t=n;i>=t;t++)e(new l(new a(t,o),new a(t,r)))},forEachColumn:function(e){var t,n=this.topLeft.row,i=this.bottomRight.row,o=this.topLeft.col,r=this.bottomRight.col;for(t=o;r>=t;t++)e(new l(new a(n,t),new a(i,t)))},intersecting:function(e){return e.filter(function(e){return e.toRangeRef().intersects(this)},this)},union:function(e,t){var n,i=this.intersecting(e),o=this.topLeft.row,r=this.topLeft.col,s=this.bottomRight.row,c=this.bottomRight.col,u=!1;return i.forEach(function(e){e=e.toRangeRef(),o>e.topLeft.row&&(u=!0,o=e.topLeft.row),r>e.topLeft.col&&(u=!0,r=e.topLeft.col),e.bottomRight.row>s&&(u=!0,s=e.bottomRight.row),e.bottomRight.col>c&&(u=!0,c=e.bottomRight.col),t&&t(e)}),n=new l(new a(o,r),new a(s,c)),u?n.union(e,t):n},resize:function(e){function t(e){return e||0}var n=Math.max.bind(Math,0),i=this.topLeft.row+t(e.top),o=this.topLeft.col+t(e.left),s=this.bottomRight.row+t(e.bottom),c=this.bottomRight.col+t(e.right);return 0>o&&0>c||0>i&&0>s?r:s>=i&&c>=o?new l(new a(n(i),n(o)),new a(n(s),n(c))):r},move:function(e,t){return new l(new a(this.topLeft.row+e,this.topLeft.col+t),new a(this.bottomRight.row+e,this.bottomRight.col+t))},first:function(){return this.topLeft},isCell:function(){return!this.endSheet&&this.topLeft.eq(this.bottomRight)},toString:function(){return this.topLeft+":"+this.bottomRight},adjust:function(e,t,n,i,o,s,a){var c=this.topLeft.adjust(e,t,n,i,o,s,a),u=this.bottomRight.adjust(e,t,n,i,o,s,a);return c===r&&u===r?r:(c===r?(c=this.topLeft.absolute(e,t),o?c.row=s:c.col=s,null!=n&&null!=i&&(c=c.relative(n,i,this.topLeft.rel))):u===r&&(u=this.bottomRight.absolute(e,t),o?u.row=s-1:u.col=s-1,null!=n&&null!=i&&(u=u.relative(n,i,this.bottomRight.rel))),new l(c,u).setSheet(this.sheet,this.hasSheet()).simplify())}}),c=o.extend({init:function(e){this.refs=e,this.length=this.refs.length},intersect:function(e){var t,n,i=[];for(t=0;this.length>t;++t)n=e.intersect(this.refs[t]),n!==r&&i.push(n);return i.length>0?new c(i).simplify():r},simplify:function(){var e=new c(this.refs.reduce(function(e,t){return t=t.simplify(),t!==r&&e.push(t),e},[]));return e.empty()?r:e.single()?e.refs[0]:e},absolute:function(e,t){return new c(this.refs.map(function(n){return n.absolute(e,t)}))},forEach:function(e,t){this.refs.forEach(e,t)},toRangeRef:function(){return this.refs[0].toRangeRef()},contains:function(e){return this.refs.some(function(t){return t.contains(e)})},map:function(e,t){return new c(this.refs.map(e,t))},first:function(){return this.refs[0].first()},lastRange:function(){return this.refs[this.length-1]},size:function(){return this.length},single:function(){return 1==this.length},empty:function(){return 0===this.length},isCell:function(){return this.single()&&this.refs[0].isCell()},rangeAt:function(e){return this.refs[e]},nextRangeIndex:function(e){return e===this.length-1?0:e+1},previousRangeIndex:function(e){return 0===e?this.length-1:e-1},concat:function(e){return new c(this.refs.concat([e]))},print:function(){return this.refs.map(function(e){return e.print()}).join(",")},replaceAt:function(e,t){var n=this.refs.slice();return n.splice(e,1,t),new c(n)},leftColumn:function(){return this.map(function(e){return e.leftColumn()})},rightColumn:function(){return this.map(function(e){return e.rightColumn()})},topRow:function(){return this.map(function(e){return e.topRow()})},bottomRow:function(){return this.map(function(e){return e.bottomRow()})},forEachRow:function(e){this.forEach(function(t){t.forEachRow(e)})},forEachColumn:function(e){this.forEach(function(t){t.forEachColumn(e)})},adjust:function(e,t,n,i,o,r,s){return this.map(function(a){return a.adjust(e,t,n,i,o,r,s)}).simplify()},toString:function(){return this.refs.map(function(e){return""+e}).join(", ")}}),n.NULLREF=r,n.SHEETREF=new l(new a(0,0),new a(1/0,1/0)),n.FIRSTREF=new a(0,0),n.Ref=o,n.NameRef=s,n.CellRef=a,n.RangeRef=l,n.UnionRef=c,n.SHEETREF.print=function(){return"#SHEET"})}(),function(){!function(e){var t,n,i;e.support.browser.msie&&9>e.support.browser.version||(t=e.spreadsheet.RangeRef,n=e.spreadsheet.CellRef,i=e.Class.extend({init:function(e){this._grid=e},rectIsVertical:function(e,t,n,i){var o=this._grid.rectangle(e.toRangeRef()),r=this._grid.rectangle(t.toRangeRef());return Math.abs(r[i]-o[i])>Math.abs(o[n]-r[n])},autoFillDest:function(e,i){var o,r,s,a,l,c,u,d=e.topLeft,h=e.bottomRight,f=i.row>=d.row,p=i.col>=d.col;return o=f?p?4:3:p?2:1,4===o?(r=d,s=h,l=i.row>s.row||i.col>s.col,l&&(i=new n(Math.max(i.row,s.row),Math.max(i.col,s.col))),a=this.rectIsVertical(s,i,"right","bottom")?new n(i.row,s.col):new n(s.row,i.col)):3===o?(c=new n(d.col,h.row),i.row>h.row&&this.rectIsVertical(c,i,"left","bottom")?(r=d,a=new n(i.row,h.col)):(r=h,a=new n(d.row,i.col))):2===o?(u=new n(d.row,h.col),i.col>h.col&&!this.rectIsVertical(u,i,"right","top")?(r=d,a=new n(h.row,i.col)):(r=h,a=new n(i.row,d.col))):(r=h,a=this.rectIsVertical(d,i,"left","top")?new n(i.row,d.col):new n(d.row,i.col)),this._grid.normalize(new t(r,a))}}),e.spreadsheet.AutoFillCalculator=i)}(kendo)}(),function(){!function(e){var t,n,i,o;e.support.browser.msie&&9>e.support.browser.version||(t=e.spreadsheet.RangeRef,n=e.spreadsheet.CellRef,i=e.Class.extend({init:function(e,t,n,i){this.rangeGetter=n,this.prevLeft=function(n){var o=i(this.range(n)),r=this.range(t.prevVisible(o.topLeft[e]));return i(r).topLeft[e]},this.nextRight=function(n){var o=i(this.range(n)),r=this.range(t.nextVisible(o.bottomRight[e]));return i(r).bottomRight[e]},this.nextLeft=function(n){var o=i(this.range(n));return t.nextVisible(o.bottomRight[e])},this.prevRight=function(n){var o=i(this.range(n));return t.prevVisible(o.topLeft[e])}},boundary:function(e,t){this.top=e,this.bottom=t},range:function(e){return this.rangeGetter(e,this.top,this.bottom)}}),o=e.Class.extend({init:function(t){this._sheet=t,this.columns=this._sheet._grid._columns,this.autoFillCalculator=new e.spreadsheet.AutoFillCalculator(t._grid),this.colEdge=new i("col",this._sheet._grid._columns,this.columnRange.bind(this),this.union.bind(this)),this.rowEdge=new i("row",this._sheet._grid._rows,this.rowRange.bind(this),this.union.bind(this))},height:function(e){this._viewPortHeight=e},union:function(e){return this._sheet.unionWithMerged(e)},columnRange:function(e,t,n){return this._sheet._ref(t,e,n-t,1)},rowRange:function(e,t,n){return this._sheet._ref(e,t,1,n-t)},selectionIncludesMergedCells:function(){return this._sheet.select().contains(this._sheet._mergedCells)},setSelectionValue:function(e){var t=this._sheet.selection();setTimeout(function(){t.value(e())})},selectAll:function(){this._sheet.select(this._sheet._sheetRef)},select:function(e,t,n){e=this.refForMode(e,t),n&&(e=this._sheet.select().concat(e)),this._sheet.select(e)},refForMode:function(e,t){var n=this._sheet._grid;switch(t){case"range":e=n.normalize(e);break;case"row":e=n.rowRef(e.row);break;case"column":e=n.colRef(e.col);break;case"sheet":e=this._sheet._sheetRef}return e},startSelection:function(e,t,n){"autofill"==t?this._sheet.startAutoFill():(this._sheet.startSelection(),this.select(e,t,n))},completeSelection:function(){this._sheet.completeSelection()},selectForContextMenu:function(e,t){var n=this._sheet;n.select().contains(this.refForMode(e,t))||this.select(e,t)},modifySelection:function(e){var n,i,o=this.determineDirection(e),r=this._sheet,s=this._viewPortHeight,a=r._grid._rows,l=r._grid._columns,c=r.currentOriginalSelectionRange(),u=r.select().toRangeRef(),d=r.activeCell(),h=c.topLeft.clone(),f=c.bottomRight.clone();switch(this.colEdge.boundary(u.topLeft.row,u.bottomRight.row),this.rowEdge.boundary(u.topLeft.col,u.bottomRight.col),o){case"expand-left":h.col=this.colEdge.prevLeft(h.col),n=h;break;case"shrink-right":h.col=this.colEdge.nextLeft(h.col),n=h;break;case"expand-right":f.col=this.colEdge.nextRight(f.col),n=f;break;case"shrink-left":f.col=this.colEdge.prevRight(f.col),n=f;break;case"expand-up":h.row=this.rowEdge.prevLeft(h.row),n=h;break;case"shrink-down":h.row=this.rowEdge.nextLeft(h.row),n=h;break;case"expand-down":f.row=this.rowEdge.nextRight(f.row),n=f;break;case"shrink-up":f.row=this.rowEdge.prevRight(f.row),n=f;break;case"expand-page-up":h.row=a.prevPage(h.row,s);break;case"shrink-page-up":f.row=a.prevPage(f.row,s);break;case"expand-page-down":f.row=a.nextPage(f.row,s);break;case"shrink-page-down":h.row=a.nextPage(h.row,s);break;case"first-col":h.col=l.firstVisible(),f.col=d.bottomRight.col,n=h;break;case"last-col":f.col=l.lastVisible(),h.col=d.topLeft.col,n=f;break;case"first-row":h.row=a.firstVisible(),f.row=d.bottomRight.row,n=h;break;case"last-row":f.row=a.lastVisible(),h.row=d.topLeft.row,n=f;break;case"last":f.row=a.lastVisible(),f.col=l.lastVisible(),h=d.topLeft,n=f;break;case"first":h.row=a.firstVisible(),h.col=l.firstVisible(),f=d.bottomRight,n=h}return i=new t(h,f),this.union(i).intersects(d)?(n&&r.focus(n),void this.updateCurrentSelectionRange(i)):void this.modifySelection(o.replace("shrink","expand"))},moveActiveCell:function(e){var t=this._sheet,i=t.activeCell(),o=i.topLeft,r=i.bottomRight,s=t.originalActiveCell(),a=t._grid._rows,l=t._grid._columns,c=s.row,u=s.col;switch(e){case"left":u=l.prevVisible(o.col);break;case"up":c=a.prevVisible(o.row);break;case"right":u=l.nextVisible(r.col);break;case"down":c=a.nextVisible(r.row);break;case"first-col":u=l.firstVisible();break;case"last-col":u=l.lastVisible();break;case"first-row":c=a.firstVisible();break;case"last-row":c=a.lastVisible();break;case"last":c=a.lastVisible(),u=l.lastVisible();break;case"first":c=a.firstVisible(),u=l.firstVisible();break;case"next-page":c=a.nextPage(r.row,this._viewPortHeight);break;case"prev-page":c=a.prevPage(r.row,this._viewPortHeight)}t.select(new n(c,u))},navigateInSelection:function(e){for(var t,i=this._sheet,o=i.activeCell(),r=o.topLeft,s=i.originalActiveCell(),a=i._grid._rows,l=i._grid._columns,c=s.row,u=s.col,d=i.currentNavigationRange(),h=d.topLeft,f=d.bottomRight,p=!1,g=r.col,m=r.row;!p;){switch(t=new n(c,u),e){case"next":f.eq(t)?(d=i.nextNavigationRange(),c=d.topLeft.row,u=d.topLeft.col):(u=l.nextVisible(g,!0),u>f.col&&(u=h.col,c=a.nextVisible(c,!0)));break;case"previous":h.eq(t)?(d=i.previousNavigationRange(),c=d.bottomRight.row,u=d.bottomRight.col):(u=l.prevVisible(g,!0),h.col>u&&(u=f.col,c=a.prevVisible(c,!0)));break;case"lower":f.eq(t)?(d=i.nextNavigationRange(),c=d.topLeft.row,u=d.topLeft.col):(c=a.nextVisible(m,!0),c>f.row&&(c=h.row,u=l.nextVisible(u,!0)));break;case"upper":h.eq(t)?(d=i.previousNavigationRange(),c=d.bottomRight.row,u=d.bottomRight.col):(c=a.prevVisible(m,!0),h.row>c&&(c=f.row,u=l.prevVisible(u,!0)));break;default:throw Error("Unknown entry navigation: "+e)}p=!this.shouldSkip(c,u),g=u,m=c}i.singleCellSelection()?i.select(new n(c,u)):i.activeCell(new n(c,u))},extendSelection:function(e,n){var i,o=this._sheet,r=o._grid;return"autofill"===n?void this.resizeAutoFill(e):("range"===n?e=r.normalize(e):"row"===n?e=r.rowRef(e.row).bottomRight:"column"===n&&(e=r.colRef(e.col).bottomRight),i=o.originalActiveCell().toRangeRef(),void this.updateCurrentSelectionRange(new t(i.topLeft,e)))},shouldSkip:function(e,t){var i=new n(e,t),o=!1;return this._sheet.forEachMergedCell(function(e){e.intersects(i)&&!e.collapse().eq(i)&&(o=!0)}),o},resizeAutoFill:function(e){var t,n,i,o,r,s=this._sheet,a=s.select(),l=s._autoFillOrigin,c=this.autoFillCalculator.autoFillDest(a,e),u=this.punch(a,c);u||(o=s.range(c)._previewFillFrom(s.range(l)),o&&(n=o.direction,r=o.props,0===n||1==n?(i=r[r.length-1],t=i[i.length-1].value):2===n?(i=r[0],t=i[i.length-1].value):3===n&&(i=r[r.length-1],t=i[0].value))),s.updateAutoFill(c,u,t,n)},determineDirection:function(e){var t=this._sheet.currentSelectionRange(),n=this._sheet.activeCell(),i=n.topLeft.col==t.topLeft.col,o=n.bottomRight.col==t.bottomRight.col,r=n.topLeft.row==t.topLeft.row,s=n.bottomRight.row==t.bottomRight.row;switch(e){case"left":e=o?"expand-left":"shrink-left";break;case"right":e=i?"expand-right":"shrink-right";break;case"up":e=s?"expand-up":"shrink-up";break;case"down":e=r?"expand-down":"shrink-down";break;case"prev-page":e=s?"expand-page-up":"shrink-page-up";break;case"next-page":e=r?"expand-page-down":"shrink-page-down"}return e},updateCurrentSelectionRange:function(e){var t=this._sheet;t.select(t.originalSelect().replaceAt(t.selectionRangeIndex(),e),!1)},punch:function(e,i){var o,r,s;return i.topLeft.eq(e.topLeft)&&(e.bottomRight.row>i.bottomRight.row?(r=this.rowEdge.nextRight(i.bottomRight.row),o=new t(new n(r,e.topLeft.col),e.bottomRight)):e.bottomRight.col>i.bottomRight.col&&(s=this.colEdge.nextRight(i.bottomRight.col),o=new t(new n(e.topLeft.row,s),e.bottomRight))),o}}),e.spreadsheet.SheetNavigator=o)}(kendo)}(),function(){!function(e){if(!(e.support.browser.msie&&9>e.support.browser.version)){var t=e.Class.extend({init:function(e){this._sheet=e},forEachSelectedColumn:function(e){var t=this._sheet;t.batch(function(){t.select().forEachColumnIndex(function(n,i){e(t,n,i)})},{layout:!0,recalc:!0})},forEachSelectedRow:function(e){var t=this._sheet;t.batch(function(){t.select().forEachRowIndex(function(n,i){e(t,n,i)})},{layout:!0,recalc:!0})},includesHiddenColumns:function(e){return this._sheet._grid._columns.includesHidden(e.topLeft.col,e.bottomRight.col)},includesHiddenRows:function(e){return this._sheet._grid._rows.includesHidden(e.topLeft.row,e.bottomRight.row)},selectionIncludesHiddenColumns:function(){return this.includesHiddenColumns(this._sheet.select())},selectionIncludesHiddenRows:function(){return this.includesHiddenRows(this._sheet.select())},deleteSelectedColumns:function(){this.forEachSelectedColumn(function(e,t,n){e.deleteColumn(t-n)})},deleteSelectedRows:function(){this.forEachSelectedRow(function(e,t,n){e.deleteRow(t-n)})},hideSelectedColumns:function(){this.forEachSelectedColumn(function(e,t){e.hideColumn(t)})},hideSelectedRows:function(){this.forEachSelectedRow(function(e,t){e.hideRow(t)})},unhideSelectedColumns:function(){this.forEachSelectedColumn(function(e,t){e.unhideColumn(t)})},unhideSelectedRows:function(){this.forEachSelectedRow(function(e,t){e.unhideRow(t)})},addColumnLeft:function(){this.forEachSelectedColumn(function(e,t,n){e.insertColumn(t-n)})},addColumnRight:function(){this.forEachSelectedColumn(function(e,t,n){e.insertColumn(t+(n+1))})},canAddRow:function(){var e=this._sheet.select().toRangeRef(),t=e.height();return this._sheet.canInsertRow(0,t)},addRowAbove:function(){this.forEachSelectedRow(function(e,t,n){e.insertRow(t-n)})},addRowBelow:function(){this.forEachSelectedRow(function(e,t,n){e.insertRow(t+(n+1))})}});e.spreadsheet.AxisManager=t}}(kendo)}(),function(){!function(e){var t,n,i,o;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=e.spreadsheet.RangeRef,i=e.spreadsheet.CellRef,o=e.Class.extend({init:function(t){this.workbook=t,this.origin=e.spreadsheet.NULLREF,this.iframe=document.createElement("iframe"),this.iframe.className="k-spreadsheet-clipboard-paste",this.menuInvoked=!0,this._external={},this._uid=e.guid(),document.body.appendChild(this.iframe)},canCopy:function(){var t={canCopy:!0},n=this.workbook.activeSheet().select();return n===e.spreadsheet.NULLREF&&(t.canCopy=!1),n instanceof e.spreadsheet.UnionRef&&(t.canCopy=!1,t.multiSelection=!0),this.menuInvoked&&(t.canCopy=!1,t.menuInvoked=!0),t},canPaste:function(){var t,n=this.workbook.activeSheet(),i=this.pasteRef(),o={canPaste:!0};return i===e.spreadsheet.NULLREF?(t=this._external.hasOwnProperty("html")||this._external.hasOwnProperty("plain"),o.pasteOnMerged=this.intersectsMerged(),o.canPaste=o.pasteOnMerged?!1:t,o):(i.eq(n.unionWithMerged(i))||(o.canPaste=!1,o.pasteOnMerged=!0),this.menuInvoked&&(o.canPaste=!1,o.menuInvoked=!0),o)},intersectsMerged:function(){var e,t=this.workbook.activeSheet(),n=this.parse(this._external);return this.origin=this.stateRangeRef(n),e=this.pasteRef(),!e.eq(t.unionWithMerged(e))},copy:function(){var e=this.workbook.activeSheet();this.origin=e.select(),this.contents=e.selection().getState()},cut:function(){var e=this.workbook.activeSheet();this.copy(),e.range(e.select()).clear()},pasteRef:function(){var e=this.workbook.activeSheet(),t=e.activeCell().first(),n=this.origin.first(),i=n.row-t.row,o=n.col-t.col;return this.origin.relative(i,o,3)},stateRangeRef:function(e){var t,o,r,s,a=[],l=[];for(t in e)"mergedCells"!==t&&"ref"!==t&&(o=t.split(","),a.push(o[0]),l.push(o[1]));return r=new i(Math.min.apply(null,a),Math.min.apply(null,l)),s=new i(Math.max.apply(null,a),Math.max.apply(null,l)),new n(r,s,0)},destroy:function(){document.body.removeChild(this.iframe)},paste:function(){var e,t={},n=this.workbook.activeSheet();this._isInternal()?t=this.contents:(t=this.parse(this._external),this.origin=this.stateRangeRef(t)),e=this.pasteRef(),n.range(e).clear().setState(t),n.triggerChange({recalc:!0})},external:function(e){return e.html||e.plain?void(this._external=e):this._external},parse:function(e){var n,o,r,s={ref:new i(0,0,0),mergedCells:[]};return e.html?(n=this.iframe.contentWindow.document,n.open(),n.write(e.html),n.close(),o=t(n).find("table:first"),o.length?s=this._parseHTML(o.find("tbody:first")):e.plain?s=this._parseTSV(e.plain):(r=t(n.body).find(":not(style)"),s["0,0"]=this._cellState(r.text()))):s=this._parseTSV(e.plain),s},_parseHTML:function(e){var n=this,o={ref:new i(0,0,0),mergedCells:[]};return e.find("tr").each(function(n,i){t(i).find("td").each(function(o,r){var s,a,l,c,u,d=parseInt(t(r).attr("rowspan"),10)-1||0,h=parseInt(t(r).attr("colspan"),10)-1||0,f="<td/>";if(d){for(a=n+d,l=n;a>=l;l++)if(c=e.find("tr").eq(l),l>n&&(f="<td class='rowspan'></td>",0===o?c.find("td").eq(o).after(f):(u=Math.min(c.find("td").length,o),c.find("td").eq(u-1).after(f))),h)for(s=o;h+o>s;s++)f="<td class='rowspan colspan'></td>",c.find("td").eq(s).after(f)}else if(h)for(s=o;h+o>s;s++)f="<td class='colspan'></td>",t(i).find("td").eq(s).after(f)})}),e.find("tr").each(function(e,i){t(i).find("td").each(function(i,r){var s,a,l,c=e+","+i,u=parseInt(t(r).attr("rowspan"),10)-1||0,d=parseInt(t(r).attr("colspan"),10)-1||0,h=n._cellState(t(r));o[c]=h,(u||d)&&(s=String.fromCharCode(65+i),a=String.fromCharCode(65+i+d),l=s+(e+1)+":"+a+(e+1+u),o.mergedCells.push(l))})}),o},_parseTSV:function(e){var t,n,o,r,s={ref:new i(0,0,0),mergedCells:[]};if(-1===e.indexOf(" ")&&-1==e.indexOf("\n"))s["0,0"]={value:e};else for(t=e.split("\n"),n=0;t.length>n;n++)for(o=t[n].split(" "),r=0;o.length>r;r++)s[n+","+r]={value:o[r]};return s},_isInternal:function(){var e,n;return void 0===this._external.html?!0:(e=t("<div/>").html(this._external.html).find("table.kendo-clipboard-"+this._uid).length?!0:!1,n=t("<div/>").html(this._external.plain).find("table.kendo-clipboard-"+this._uid).length?!0:!1,e||n?!0:!1)},_cellState:function(e){var t=window.getComputedStyle(e[0]),n=e.text(),i=this._borderObject(t),o={value:""===n?null:n,borderBottom:i.borderBottom,borderRight:i.borderRight,borderLeft:i.borderLeft,borderTop:i.borderTop,fontSize:parseInt(t["font-size"],10)};return"rgb(0, 0, 0)"!==t["background-color"]&&"rgba(0, 0, 0, 0)"!==t["background-color"]&&(o.background=t["background-color"]),"rgb(0, 0, 0)"!==t.color&&"rgba(0, 0, 0, 0)"!==t.color&&(o.color=t.color),"underline"==t["text-decoration"]&&(o.underline=!0),"italic"==t["font-style"]&&(o.italic=!0),"bold"==t["font-weight"]&&(o.bold=!0),
|
||
"right"!==this._strippedStyle(t["text-align"])&&(o.textAlign=this._strippedStyle(t["text-align"])),"middle"!==t["vertical-align"]&&(o.verticalAlign=t["vertical-align"]),"normal"!==t["word-wrap"]&&(o.wrap=!0),o},_strippedStyle:function(e){var t=["-ms-","-moz-","-webkit-"];return t.forEach(function(t){e=e.replace(t,"")}),e},_borderObject:function(e){var t={},n=["borderBottom","borderRight","borderLeft","borderTop"];return n.forEach(function(n){return"none"==e[n+"Style"]?void(t[n]=null):void(t[n]={size:1,color:e[n+"Color"]})}),t}}),e.spreadsheet.Clipboard=o)}(kendo)}(),function(){!function(e){function t(e){return e.replace(/M/g,"m").replace(/'/g,'"').replace(/tt/,"am/pm")}function n(t){return!/^=/.test(t)&&/number|percent/.test(e.spreadsheet.calc.parse(null,0,0,t).type)}function i(t,n,i,o){var r={baselineMarkerSize:0,width:n+"px","font-size":(i||12)+"px","word-break":o===!0?"break-all":"normal"};return e.util.measureText(t,r,c).height}var o,r,s,a,l,c;e.support.browser.msie&&9>e.support.browser.version||(o=e.jQuery,r=e.spreadsheet.UnionRef,s=["color","fontFamily","underline","italic","bold","textAlign","verticalAlign","background"],a={borderTop:{complement:"borderBottom",direction:{top:-1,bottom:-1}},borderLeft:{complement:"borderRight",direction:{left:-1,right:-1}},borderRight:{complement:"borderLeft",direction:{left:1,right:1}},borderBottom:{complement:"borderTop",direction:{top:1,bottom:1}}},l=e.Class.extend({init:function(e,t){this._sheet=t,this._ref=e},_normalize:function(e){return this._sheet._grid.normalize(e)},_set:function(e,t,n){var i=this._sheet;return this._ref.forEach(function(n){i._set(n.toRangeRef(),e,t)}),n||i.triggerChange({recalc:"formula"==e||"value"==e||"validation"==e,value:t,ref:this._ref}),this},_get:function(e){return this._sheet._get(this._ref.toRangeRef(),e)},_property:function(e,t){return void 0===t?this._get(e):this._set(e,t)},value:function(e){return void 0!==e&&this._set("formula",null,!0),this._property("value",e)},resize:function(e){var t=this._resizedRef(e);return new l(t,this._sheet)},_resizedRef:function(e){return this._ref.map(function(t){return t.toRangeRef().resize(e)})},_border:function(t,n){var i,o=a[t].complement,r=a[t].direction,s=this._sheet;return s.batch(function(){i=this._property(t,n),void 0!==n&&this._resizedRef(r).forEach(function(t){t!==e.spreadsheet.NULLREF&&new l(t,s)._property(o,null)})}.bind(this),{}),i},_collapsedBorder:function(t){var n=this._property(t),i=a[t].complement,o=a[t].direction;return this._resizedRef(o).forEach(function(t){if(!n&&t!==e.spreadsheet.NULLREF){var o=new l(t,this._sheet);n=o._property(i)}}.bind(this)),n},borderTop:function(e){return this._border("borderTop",e)},borderRight:function(e){return this._border("borderRight",e)},borderBottom:function(e){return this._border("borderBottom",e)},borderLeft:function(e){return this._border("borderLeft",e)},collapsedBorderTop:function(){return this._collapsedBorder("borderTop")},collapsedBorderRight:function(){return this._collapsedBorder("borderRight")},collapsedBorderBottom:function(){return this._collapsedBorder("borderBottom")},collapsedBorderLeft:function(){return this._collapsedBorder("borderLeft")},input:function(i){var o,r,s,a,l;return void 0!==i?(o=this._ref.toRangeRef().topLeft,r=e.spreadsheet.calc.parse(this._sheet.name(),o.row,o.col,i),this._sheet.batch(function(){var n=null;"exp"==r.type?n=e.spreadsheet.calc.compile(r):"date"==r.type?this.format(t(e.culture().calendar.patterns.d)):"percent"==r.type&&this.format(100*r.value==(100*r.value|0)?"0%":"0.00%"),this.formula(n),n||this.value(r.value)}.bind(this),{recalc:!0,value:i,ref:this._ref}),this):(i=this._get("value"),s=this._get("format"),a=this._get("formula"),l=s&&!a&&e.spreadsheet.formatting.type(i,s),a?i="="+a:"date"===l?i=e.toString(e.spreadsheet.numberToDate(i),e.culture().calendar.patterns.d):"percent"===l?i=100*i+"%":"string"==typeof i&&(/^[=']/.test(i)||/^(?:true|false)$/i.test(i)||n(i))&&(i="'"+i),i)},format:function(e){return this._property("format",e)},formula:function(e){if(void 0===e){var t=this._get("formula");return t?""+t:null}return this._property("formula",e)},validation:function(e){if(void 0===e){var t=this._get("validation");return t?t.toJSON():null}return this._property("validation",e)},_getValidationState:function(){var e,t,n,i=this._ref.toRangeRef(),o=i.topLeft.row,r=i.topLeft.col,s=i.bottomRight.row,a=i.bottomRight.col;for(e=r;a>=e;e++)for(t=o;s>=t;t++)if(n=this._sheet._validation(t,e),n&&"reject"===n.type&&n.value===!1)return n;return!1},merge:function(){return this._ref=this._sheet._merge(this._ref),this},unmerge:function(){var e=this._sheet._mergedCells;return this._ref.forEach(function(t){t.toRangeRef().intersecting(e).forEach(function(t){e.splice(e.indexOf(t),1)})}),this._sheet.triggerChange({}),this},select:function(){return this._sheet.select(this._ref),this},values:function(t){var n,i,o,s,a,l,c,u,d,h;if(this._ref instanceof r)throw Error("Unsupported for multiple ranges.");if(this._ref===e.spreadsheet.NULLREF){if(void 0!==t)throw Error("Unsupported for NULLREF.");return[]}if(n=this._ref.toRangeRef(),i=n.topLeft.row,o=n.topLeft.col,s=n.bottomRight.row,a=n.bottomRight.col,void 0===t){for(t=Array(n.height()),u=0;t.length>u;u++)t[u]=Array(n.width());for(l=o;a>=l;l++)for(c=i;s>=c;c++)t[c-i][l-o]=this._sheet._value(c,l);return t}for(l=o;a>=l;l++)for(c=i;s>=c;c++)d=t[c-i],d&&(h=d[l-o],void 0!==h&&this._sheet._value(c,l,h));return this._sheet.triggerChange({recalc:!0}),this},_properties:function(t){var n,i,o,s,a,l,c,u,d,h,f;if(this._ref instanceof r)throw Error("Unsupported for multiple ranges.");if(this._ref===e.spreadsheet.NULLREF){if(void 0!==t)throw Error("Unsupported for NULLREF.");return[]}if(n=this._ref.toRangeRef(),i=n.topLeft.row,o=n.topLeft.col,s=n.bottomRight.row,a=n.bottomRight.col,u=this._sheet,void 0===t)return t=Array(n.height()),u.forEach(n,function(e,n,r){e-=i,n-=o;var s=t[e]||(t[e]=[]);s[n]=r}),t;for(n=n.clone(),h=function(e){var t=d[e];n.topLeft.row=n.bottomRight.row=c,n.topLeft.col=n.bottomRight.col=l,u._set(n,e,t)},l=o;a>=l;l++)for(c=i;s>=c;c++)f=t[c-i],f&&(d=f[l-o],d&&Object.keys(d).forEach(h));return u.triggerChange({recalc:!0}),this},clear:function(e){var t=!e||!Object.keys(e).length,n=this._sheet,i={recalc:t||e&&e.contentsOnly===!0};return n.batch(function(){i.recalc&&this.formula(null),t&&this.validation(null),(t||e&&e.formatOnly===!0)&&(s.forEach(function(e){this[e](null)}.bind(this)),this.format(null),this.unmerge())}.bind(this),i),this},clearContent:function(){return this.clear({contentsOnly:!0})},clearFormat:function(){return this.clear({formatOnly:!0})},isSortable:function(){return!(this._ref instanceof r||this._ref===e.spreadsheet.NULLREF)},sort:function(t){if(this._ref instanceof r)throw Error("Unsupported for multiple ranges.");if(this._ref===e.spreadsheet.NULLREF)throw Error("Unsupported for NULLREF.");return void 0===t&&(t={column:0}),t=t instanceof Array?t:[t],this._sheet._sortBy(this._ref.toRangeRef(),t.map(function(e,t){return"number"==typeof e&&(e={column:e}),{index:void 0===e.column?t:e.column,ascending:void 0===e.ascending?!0:e.ascending}})),this},isFilterable:function(){return!(this._ref instanceof r)},filter:function(e){if(this._ref instanceof r)throw Error("Unsupported for multiple ranges.");return e===!1?this.clearFilters():(e=e===!0?[]:e instanceof Array?e:[e],this._sheet._filterBy(this._ref.toRangeRef(),e.map(function(e,t){return{index:void 0===e.column?t:e.column,filter:e.filter}}))),this},clearFilter:function(e){this._sheet.clearFilter(e)},clearFilters:function(){var e,t=this._sheet.filter(),n=[];if(t){for(e=0;t.columns.length>e;e++)n.push(e);this._sheet.batch(function(){this.clearFilter(n),this._filter=null},{layout:!0,filter:!0})}},hasFilter:function(){var e=this._sheet.filter();return!!e},leftColumn:function(){return new l(this._ref.leftColumn(),this._sheet)},rightColumn:function(){return new l(this._ref.rightColumn(),this._sheet)},topRow:function(){return new l(this._ref.topRow(),this._sheet)},bottomRow:function(){return new l(this._ref.bottomRow(),this._sheet)},column:function(e){return new l(this._ref.toColumn(e),this._sheet)},forEachRow:function(e){this._ref.forEachRow(function(t){e(new l(t,this._sheet))}.bind(this))},forEachColumn:function(e){this._ref.forEachColumn(function(t){e(new l(t,this._sheet))}.bind(this))},sheet:function(){return this._sheet},topLeft:function(){return this._ref.toRangeRef().topLeft},intersectingMerged:function(){var e=this._sheet,t=[];return e._mergedCells.forEach(function(e){e.intersects(this._ref)&&t.push(""+e)}.bind(this)),t},getState:function(t){var n,i={ref:this._ref.first()};return t?n="input"===t?["value","formula"]:"border"===t?["borderLeft","borderTop","borderRight","borderBottom"]:[t]:(n=e.spreadsheet.ALL_PROPERTIES,i.mergedCells=this.intersectingMerged()),this.forEachCell(function(e,t,o){var r=i[e+","+t]={};n.forEach(function(e){r[e]=o[e]||null})}),i},setState:function(e){var t=this._sheet,n=this._ref.first(),i=e.ref.row-n.row,o=e.ref.col-n.col;t.batch(function(){e.mergedCells&&this.unmerge(),this.forEachCell(function(n,r){var s,a=e[n+i+","+(r+o)],l=t.range(n,r);for(s in a)"value"!=s&&l._set(s,a[s]);a.formula||l._set("value",a.value)}),e.mergedCells&&e.mergedCells.forEach(function(e){e=t._ref(e).relative(i,o,3),t.range(e).merge()},this)}.bind(this),{recalc:!0})},forEachCell:function(e){this._ref.forEach(function(t){this._sheet.forEach(t.toRangeRef(),e.bind(this))}.bind(this))},hasValue:function(){var e=!1;return this.forEachCell(function(t,n,i){0!==Object.keys(i).length&&(e=!0)}),e},wrap:function(t){return void 0===t?!!this._property("wrap"):(this.forEachRow(function(t){var n=t.sheet().rowHeight(t.topLeft().row);t.forEachCell(function(t,i,o){var r=this._sheet.columnWidth(i);n=Math.max(n,e.spreadsheet.util.getTextHeight(o.value,r,o.fontSize,!0))}),t.sheet().rowHeight(t.topLeft().row,n)}.bind(this)),this._property("wrap",t),this)},fontSize:function(t){return void 0===t?this._property("fontSize"):(this.forEachRow(function(n){var i=n.sheet().rowHeight(n.topLeft().row);n.forEachCell(function(n,o,r){var s=this._sheet.columnWidth(o);i=Math.max(i,e.spreadsheet.util.getTextHeight(r.value,s,t,r.wrap))}),n.sheet().rowHeight(n.topLeft().row,i)}.bind(this)),this._property("fontSize",t),this)}}),o.each(s,function(e,t){l.prototype[t]=function(e){return this._property(t,e)}}),c=o('<div style="position: absolute !important; top: -4000px !important; height: auto !important;padding: 1px !important; margin: 0 !important; border: 1px solid black !important;line-height: normal !important; visibility: hidden !important;white-space: normal !important; word-break: break-all !important;" />')[0],e.spreadsheet.util={getTextHeight:i},e.spreadsheet.Range=l)}(window.kendo)}(),function(){"use strict";function e(t){return t instanceof e?t:void(this.code=t)}function t(e,t,n){for(var i,o=n(e),r=e;++e<t;)i=n(e),i>o&&(o=i,r=e);return r}function n(t,n){function i(e){var t,n,l,c;return a=e[0],t="{ ",Array.isArray(a)?(u+="while (i < args.length) { ",d+="while (i < args.length) { ",t+="xargs.push(tmp = []); stack.push(xargs); xargs = tmp; ",t+="while (i < args.length) { ",t+=e.map(i).join(""),t+="} ",t+="xargs = stack.pop(); ",d+="} ",u+="} "):"+"==a?(u+="while (i < args.length) { ",d+="while (i < args.length) { ",t+="xargs.push(tmp = []); stack.push(xargs); xargs = tmp; ",t+="do { ",t+=e.slice(1).map(i).join(""),t+="} while (i < args.length); ",t+="xargs = stack.pop(); ",d+="} ",u+="} "):"?"==a?t+="if (!("+s(e[1])+")) return new CalcError(err); ":(n=e[1],Array.isArray(n)&&/^#?collect/.test(n[0])?(l=n[2],o(),t+="try {var $"+a+" = this.cellValues(args.slice(i",l&&(t+=", i + "+l),t+=")).filter(function($"+a+"){ ","collect"==n[0]&&(t+="if ($"+a+" instanceof CalcError) throw $"+a+"; "),t+="return "+s(n[1])+"; }, this); ",t+=l?"i += "+l+"; ":"i = args.length; ",t+="xargs.push($"+a+")} catch(ex) { if (ex instanceof CalcError) return ex; throw ex; } ",d+="toResolve.push(args.slice(i)); "):"rest"==n?t+="xargs.push(args.slice(i)); i = args.length; ":((p=/^\*/.test(a))&&(g=!0,a=a.substr(1)),t+="var $"+a+" = args[i++]; ",c=!1,/!$/.test(n)?(n=n.substr(0,n.length-1),c=!0):t+="if ($"+a+" instanceof CalcError) return $"+a+"; ",t+=r(n,c)+"xargs.push($"+a+"); ")),t+="} "}function o(){return l?"$"+a:(f=!0,l=!0,d+="toResolve.push(args[i++]); ","($"+a+" = this.force($"+a+"))")}function r(e,t){l=!1;var n="if (!("+s(e)+")) { ";return l&&!t&&(n+=" if ($"+a+" instanceof CalcError) return $"+a+"; "),n+="return new CalcError(err); } ",l||(d+="i++; "),u+=p?"var $"+a+" = this.asMatrix(args[i]); if ($"+a+") { xargs.push($"+a+"); width = Math.max(width, $"+a+".width); height = Math.max(height, $"+a+".height); arrays.push(true) } else { xargs.push(args[i]); arrays.push(false); } i++; ":"xargs.push(args[i++]); arrays.push(false); ",n}function s(e){if(Array.isArray(e)){if("or"==e[0])return"("+e.slice(1).map(s).join(") || (")+")";if("and"==e[0])return"("+e.slice(1).map(s).join(") && (")+")";if("values"==e[0])return"("+e.slice(1).map(function(e){return o()+" === "+e}).join(") || (")+")";if("null"==e[0])return"("+s("null")+" ? (($"+a+" = "+e[1]+"), true) : false)";if("between"==e[0]||"[between]"==e[0])return"("+o()+" >= "+e[1]+" && $"+a+" <= "+e[2]+" ? true : ((err = 'NUM'), false))";if("(between)"==e[0])return"("+o()+" > "+e[1]+" && $"+a+" < "+e[2]+" ? true : ((err = 'NUM'), false))";if("(between]"==e[0])return"("+o()+" > "+e[1]+" && $"+a+" <= "+e[2]+" ? true : ((err = 'NUM'), false))";if("[between)"==e[0])return"("+o()+" >= "+e[1]+" && $"+a+" < "+e[2]+" ? true : ((err = 'NUM'), false))";if("assert"==e[0]){var t=e[2]||"N/A";return"(("+e[1]+") ? true : (err = "+JSON.stringify(t)+", false))"}if("not"==e[0])return"!("+s(e[1])+")";throw Error("Unknown array type condition: "+e[0])}if("number"==e)return"(typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean')";if("integer"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') ? ($"+a+" |= 0, true) : false)";if("date"==e)return"((typeof "+o()+" == 'number') ? ($"+a+" |= 0, true) : false)";if("datetime"==e)return"(typeof "+o()+" == 'number')";if("divisor"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') && ($"+a+" == 0 ? ((err = 'DIV/0'), false) : true))";if("number+"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') && ($"+a+" >= 0 ? true : ((err = 'NUM'), false)))";if("integer+"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') && (($"+a+" |= 0) >= 0 ? true : ((err = 'NUM'), false)))";if("number++"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') && ($"+a+" > 0 ? true : ((err = 'NUM'), false)))";if("integer++"==e)return"((typeof "+o()+" == 'number' || typeof $"+a+" == 'boolean') && (($"+a+" |= 0 ) > 0) ? true : ((err = 'NUM'), false))";if("string"==e)return"(typeof "+o()+" == 'string')";if("boolean"==e)return"(typeof "+o()+" == 'boolean')";if("logical"==e)return"(typeof "+o()+" == 'boolean' || (typeof $"+a+" == 'number' ? ($"+a+" = !!$"+a+", true) : false))";if("matrix"==e)return o(),"((m = this.asMatrix($"+a+")) ? ($"+a+" = m) : false)";if("#matrix"==e)return"((m = this.asMatrix($"+a+")) ? ($"+a+" = m) : false)";if("ref"==e)return"($"+a+" instanceof kendo.spreadsheet.Ref)";if("area"==e)return"($"+a+" instanceof kendo.spreadsheet.CellRef || $"+a+" instanceof kendo.spreadsheet.RangeRef)";if("cell"==e)return"($"+a+" instanceof kendo.spreadsheet.CellRef)";if("null"==e)return"("+o()+" == null)";if("anyvalue"==e)return"("+o()+" != null && i <= args.length)";if("forced"==e)return"("+o()+", i <= args.length)";if("anything"==e)return"(i <= args.length)";if("blank"==e)return"("+o()+" == null || $"+a+" === '')";throw Error("Can't check for type: "+e)}var a,l,c,u="function arrayArgs(args) { var xargs = [], width = 0, height = 0, arrays = [], i = 0; ",d="function resolve(args, callback) { var toResolve = [], i = 0; ",h="'use strict'; function check(args) { var stack = [], tmp, xargs = [], i = 0, m, err = 'VALUE'; ",f=!1,p=!1,g=!1;return h+=n.map(i).join(""),h+="if (i < args.length) return new CalcError('N/A'); ",h+="return xargs; } ",u+="return { args: xargs, width: width, height: height, arrays: arrays }; } ",f?(d+="this.resolveCells(toResolve, callback); } ",c=Function("CalcError",h+d+u+" return { resolve: resolve, check: check, arrayArgs: arrayArgs };")):c=Function("CalcError",h+" return { check: check };"),c=c(e),g||delete c.arrayArgs,c}function i(t,n,i){if(i instanceof e)return i;try{return n.apply(t,i)}catch(o){if(o instanceof e)return o;throw o}}function o(e,t,n,o){return function(r,s){function a(){var t,a,l,c,u,d;if(o&&(t=o.call(this,s),s=t.args,t.width>0&&t.height>0)){for(a=new M(this),l=0;t.height>l;++l)for(c=0;t.width>c;++c){for(u=[],d=0;s.length>d;++d)u[d]=t.arrays[d]?s[d].get(l,c):s[d];u=n.call(this,u),a.set(l,c,i(this,e,u))}return r(a)}u=n.call(this,s),r(i(this,e,u))}t?t.call(this,s,a):a.call(this)}}function r(t,n,i,o){return function(r,s){function a(){var n,a,l,c,u,d,h,f;if(o&&(n=o.call(this,s),s=n.args,n.width>0&&n.height>0))for(a=new M(this),l=n.width*n.height,c=function(e,t){return function(n){return a.set(e,t,n),--l,0===l?r(a):void 0}},u=0;n.height>u&&l>0;++u)for(d=0;n.width>d&&l>0;++d){for(h=[],f=0;s.length>f;++f)h[f]=n.arrays[f]?s[f].get(u,d):s[f];if(h=i.call(this,h),h instanceof e){if(a.set(u,d,h),--l,0===l)return r(a)}else h.unshift(c(u,d)),t.apply(this,h)}else n=i.call(this,s),n instanceof e?r(n):(n.unshift(r),t.apply(this,n))}n?n.call(this,s,a):a.call(this)}}function s(e,t){return e=e.toLowerCase(),I[e]=t,{args:function(i,r){var s,a=n(e,i);return r&&(a.arrayArgs&&console.log(""+a.arrayArgs),a.resolve&&console.log(""+a.resolve),a.check&&console.log(""+a.check)),s=I[e]=o(t,a.resolve,a.check,a.arrayArgs),s.kendoSpreadsheetArgs=i,this},argsAsync:function(i,o){var s,a=n(e,i);return o&&(a.arrayArgs&&console.log(""+a.arrayArgs),a.resolve&&console.log(""+a.resolve),a.check&&console.log(""+a.check)),s=I[e]=r(t,a.resolve,a.check,a.arrayArgs),s.kendoSpreadsheetArgs=i,this}}}function a(e,t,n){return t++,(1461*(e+4800+((t-14)/12|0))/4|0)+(367*(t-2-12*((t-14)/12|0))/12|0)-(3*((e+4900+((t-14)/12|0))/100|0)/4|0)+n-32075}function l(e){var t,n,i,o,r,s,a;return t=e+68569,n=4*t/146097|0,t-=(146097*n+3)/4|0,o=4e3*(t+1)/1461001|0,t=t-(1461*o/4|0)+31,i=80*t/2447|0,s=t-(2447*i/80|0),t=i/11|0,r=i+2-12*t,a=100*(n-49)+o+t,r--,{year:a,month:r,date:s,day:(e+1)%7,ord:B[c(a)][r]+s}}function c(e){return e%4?0:e%100?1:e%400?0:1}function u(e){return c(e)?366:365}function d(e,t){return c(e)&&1==t?29:z[t]}function h(e){return l((0|e)+R)}function f(e,t,n){return a(e,t,n)-R}function p(e){var t,n,i,o,r=e-(0|e);return 0>r&&r++,t=Math.round(O*r),n=Math.floor(t/L),t-=n*L,i=Math.floor(t/F),t-=i*F,o=Math.floor(t/1e3),t-=1e3*o,{hours:n,minutes:i,seconds:o,milliseconds:t}}function g(e){var t=h(e),n=p(e);return new Date(t.year,t.month,t.date,n.hours,n.minutes,n.seconds,n.milliseconds)}function m(e,t,n,i){return(e+t/60+n/3600+i/36e5)/24}function v(e){var t=m(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds());return e=f(e.getFullYear(),e.getMonth(),e.getDate()),0>e?e-1+t:e+t}function _(e){return kendo.parseDate(e,["MM/dd/yyyy","MM-dd-yyyy","MM/dd/yy","MM-dd-yy","MMMM dd yyyy","MMMM dd yy","MMM dd yyyy","MMM dd yy","dd MMMM yyyy","dd MMMM yy","dd MMM yyyy","dd MMM yy","MMMM dd, yyyy","MMMM dd, yy","MMM dd, yyyy","MMM dd, yy","MMMM dd","MMM dd","MMMM yyyy","MMM yyyy","dd MMMM","dd MMM","MM-dd","MM/dd"])||kendo.parseDate(e)}function w(t){return function(n,i){return"string"==typeof n&&"string"!=typeof i&&(i=null==i?"":i+""),"string"!=typeof n&&"string"==typeof i&&(n=null==n?"":n+""),"number"==typeof n&&null==i&&(i=0),"number"==typeof i&&null==n&&(n=0),"string"==typeof n&&"string"==typeof i&&(n=n.toLowerCase(),i=i.toLowerCase()),typeof i==typeof n?t(n,i):new e("VALUE")}}var b,y,x,k,C,S,T,D,A,E,M,P,I,R,z,B,F,L,O,N,H;kendo.support.browser.msie&&kendo.support.browser.version<9||(b={},y=kendo.spreadsheet,y.calc=b,x=b.runtime={},k=kendo.Class,C=y.Ref,S=y.CellRef,T=y.RangeRef,D=y.UnionRef,A=y.NULLREF,e.prototype.toString=function(){return"#"+this.code+("NAME"==this.code?"?":"!")},E=k.extend({init:function(e,t,n,i){this.callback=e,this.formula=t,this.ss=n,this.parent=i},resolve:function(e){var t=this;e instanceof C?t.resolveCells([e],function(){e=t.getRefData(e),Array.isArray(e)&&(e=e[0]),t._resolve(e)}):t._resolve(e)},_resolve:function(e){void 0===e&&(e=null);var t=this.formula;t.value=e,this.ss.onFormula(t)&&this.callback&&this.callback.call(t,e)},resolveCells:function(e,t){function n(e){e.formula.exec(s.ss,function(){--o||t.call(s)},s)}function i(e){var t,n;for(t=0;e.length>t;++t)n=e[t],n.formula&&a.push(n);return!0}var o,r,s=this,a=[];if(function l(e){var t,n;for(t=0;e.length>t;++t)n=e[t],n instanceof C&&i(s.getRefCells(n)),Array.isArray(n)&&l(n)}(e),!a.length)return t.call(s);for(o=a.length,r=0;a.length>r;++r)n(a[r])},cellValues:function(e,t){var n,i,o=[];for(n=0;e.length>n;++n)i=e[n],i instanceof C?(i=this.getRefData(i),o=o.concat(i)):Array.isArray(i)?o=o.concat(this.cellValues(i)):i instanceof M?o=o.concat(this.cellValues(i.data)):o.push(i);return t?t.apply(this,o):o},force:function(e){return e instanceof C?this.getRefData(e):e},func:function(t,n,i){t=t.toLowerCase();var o=I[t];return o?o.call(this,n,i):void n(new e("NAME"))},bool:function(e){return e instanceof C&&(e=this.getRefData(e)),"string"==typeof e?"true"==e.toLowerCase():"number"==typeof e?0!==e:"boolean"==typeof e?e:null!=e},asMatrix:function(e){var t,n,i,o,r,s,a;return e instanceof M?e:(t=this,e instanceof T?(n=e.topLeft,i=n.row,o=n.col,r=t.getRefCells(e),s=new M(t),isFinite(e.width())&&(s.width=e.width()),isFinite(e.height())&&(s.height=e.height()),isFinite(i)||(i=0),isFinite(o)||(o=0),r.forEach(function(e){s.set(e.row-i,e.col-o,e.value)}),s):Array.isArray(e)&&e.length>0?(s=new M(t),a=0,e.forEach(function(e){var n=0,i=1;e.forEach(function(e){var o=e instanceof T;e instanceof C&&!o&&(e=t.getRefData(e)),(o||Array.isArray(e))&&(e=t.asMatrix(e)),e instanceof M?(e.each(function(e,t,i){s.set(a+t,n+i,e)}),i=Math.max(i,e.height),n+=e.width):s.set(a,n++,e)}),a+=i}),s):void 0)},getRefCells:function(e,t){return this.ss.getRefCells(e,t)},getRefData:function(e){return this.ss.getData(e)},workbook:function(){return this.ss.workbook}}),M=k.extend({init:function(e){this.context=e,this.height=0,this.width=0,this.data=[]},clone:function(){var e=new M(this.context);return e.height=this.height,e.width=this.width,e.data=this.data.map(function(e){return e.slice()}),e},get:function(e,t){var n=this.data[e],i=n?n[t]:null;return i instanceof C?this.context.getRefData(i):i},set:function(e,t,n){var i=this.data[e];null==i&&(i=this.data[e]=[]),i[t]=n,e>=this.height&&(this.height=e+1),t>=this.width&&(this.width=t+1)},each:function(e,t){var n,i,o;for(n=0;this.height>n;++n)for(i=0;this.width>i;++i)if(o=this.get(n,i),(t||null!=o)&&(o=e.call(this.context,o,n,i),void 0!==o))return o},map:function(e,t){var n=new M(this.context);return this.each(function(t,i,o){n.set(i,o,e.call(this,t,i,o))},t),n},eachRow:function(e){var t,n;for(t=0;this.height>t;++t)if(n=e.call(this.context,t),void 0!==n)return n},eachCol:function(e){var t,n;for(t=0;this.width>t;++t)if(n=e.call(this.context,t),void 0!==n)return n},mapRow:function(e){var t=new M(this.context);return this.eachRow(function(n){t.set(n,0,e.call(this.context,n))}),t},mapCol:function(e){var t=new M(this.context);return this.eachCol(function(n){t.set(0,n,e.call(this.context,n))}),t},toString:function(){return JSON.stringify(this.data)},transpose:function(){var e=new M(this.context);return this.each(function(t,n,i){e.set(i,n,t)}),e},unit:function(e){var t,n,i,o;for(this.width=this.height=e,t=this.data=Array(e),n=e;--n>=0;)for(i=t[n]=Array(e),o=e;--o>=0;)i[o]=n==o?1:0;return this},multiply:function(t){var n,i,o,r,s,a,l=this,c=new M(l.context);for(n=0;l.height>n;++n)for(i=0;t.width>i;++i){for(o=0,r=0;l.width>r;++r){if(s=l.get(n,r),a=t.get(r,i),"number"!=typeof s||"number"!=typeof a)throw new e("VALUE");o+=s*a}c.set(n,i,o)}return c},adds:function(e,t){var n,i,o,r,s=this,a=new M(s.context),l=t?-1:1;for(n=0;s.height>n;++n)for(i=0;s.width>i;++i)o=s.get(n,i),r=e.get(n,i),a.set(n,i,o+l*r);return a},determinant:function(){var e,t,n,i,o,r=this.clone().data,s=r.length,a=1;for(e=0;s>e;e++){for(t=e;s>t&&!r[t][e];t++);if(t==s)return 0;if(t!=e)for(a=-a,i=e;s>i;i++)o=r[e][i],r[e][i]=r[t][i],r[t][i]=o;for(n=e+1;s>n;n++)for(i=e+1;s>i;i++)r[n][i]-=r[e][i]*r[n][e]/r[e][e];a*=r[e][e]}return a},inverse:function(){var e,n,i,o,r,s,a=this.width,l=this.augment(new M(this.context).unit(a)),c=l.data;for(n=0;a>n;++n){if(i=t(n,a,function(e){return c[e][n]}),!c[i][n])return null;for(n!=i&&(e=c[n],c[n]=c[i],c[i]=e),o=n+1;a>o;++o){for(r=n+1;2*a>r;++r)c[o][r]-=c[n][r]*c[o][n]/c[n][n];c[o][n]=0}}for(o=0;a>o;++o)for(s=c[o][o],r=0;2*a>r;++r)c[o][r]/=s;for(n=a;--n>=0;)for(o=n;--o>=0;)if(c[o][n])for(r=2*a;--r>=a;)c[o][r]-=c[n][r]*c[o][n];return l.slice(0,a,a,a)},augment:function(e){var t=this.clone(),n=t.width;return e.each(function(e,i,o){t.set(i,o+n,e)}),t},slice:function(e,t,n,i){var o,r,s=new M(this.context);for(o=0;n>o;++o)for(r=0;i>r;++r)s.set(o,r,this.get(e+o,t+r));return s}}),P=k.extend({init:function(e,t,n,i,o,r){this.refs=e,this.handler=t,this.print=n,this.absrefs=null,this.sheet=i,this.row=o,this.col=r,this.onReady=[],this.pending=!1},clone:function(e,t,n){var i=e.toLowerCase(),o=this.refs;return i!=this.sheet.toLowerCase()&&(o=o.map(function(t){return t.hasSheet()||t.sheet.toLowerCase()==i||(t=t.clone().setSheet(e)),t})),new P(o,this.handler,this.print,e,t,n)},resolve:function(e){this.pending=!1,this.onReady.forEach(function(t){t(e)})},exec:function(t,n,i){if("value"in this)n&&n(this.value);else{n&&this.onReady.push(n);for(var o=new E(this.resolve,this,t,i);i;){if(i.formula===this)return this.pending=!1,void o.resolve(new e("CIRCULAR"));i=i.parent}if(this.pending)return;this.pending=!0,this.absrefs||(this.absrefs=this.refs.map(function(e){return e.absolute(this.row,this.col)},this)),this.handler.call(o)}},reset:function(){this.onReady=[],this.pending=!1,delete this.value},renameSheet:function(e,t){e=e.toLowerCase(),this.absrefs=null,this.sheet.toLowerCase()==e&&(this.sheet=t),this.refs.forEach(function(n){n.sheet.toLowerCase()==e&&(n.sheet=t)})},adjust:function(e,t,n,i){var o,r,s,a,l,c;e=e.toLowerCase(),o=this.row,r=this.col,s=this.sheet.toLowerCase(),a=!1,s==e&&("row"==t&&o>=n&&(this.row+=i,a=!0),"col"==t&&r>=n&&(this.col+=i,a=!0)),l=this.row,c=this.col,this.absrefs=null,this.refs=this.refs.map(function(s){return s===A?s:s.sheet.toLowerCase()!=e?(a&&("row"==t&&o>=n&&(s=s.relative(i,0)),"col"==t&&r>=n&&(s=s.relative(0,i))),s):s.adjust(o,r,l,c,"row"==t,n,i)},this)},toString:function(){return this.print(this.row,this.col)}}),I=Object.create(null),I["if"]=function(e,t){var n=this,i=t[0],o=t[1],r=t[2];this.resolveCells([i],function(){var t=n.asMatrix(i);t?o(function(i){r(function(o){var r=n.asMatrix(i),s=n.asMatrix(o);e(t.map(function(e,t,a){return n.bool(e)?r?r.get(t,a):i:s?s.get(t,a):o}))})}):n.bool(i)?o(e):r(e)})},I["φ"]=function(e){e((1+Math.sqrt(5))/2)},R=a(1900,0,-1),z=[31,28,31,30,31,30,31,31,30,31,30,31],B=[[0,31,59,90,120,151,181,212,243,273,304,334],[0,31,60,91,121,152,182,213,244,274,305,335]],F=6e4,L=60*F,O=24*L,x.CalcError=e,x.Formula=P,x.Matrix=M,x.packDate=f,x.unpackDate=h,x.packTime=m,x.unpackTime=p,x.serialToDate=g,x.dateToSerial=v,x.daysInMonth=d,x.isLeapYear=c,x.daysInYear=u,x.parseDate=_,y.dateToNumber=v,y.numberToDate=g,y.defineFunction=s,y.CalcError=e,x.defineFunction=s,x.defineAlias=function(e,t){var n=I[t];if(!n)throw Error("Function "+t+" is not yet defined");n.kendoSpreadsheetAliases||(n.kendoSpreadsheetAliases=[t]),n.kendoSpreadsheetAliases.push(e),I[e]=n},x.FUNCS=I,N=[["*a","number"],["*b","number"]],H=[["*a","anyvalue"],["*b","anyvalue"]],s("binary+",function(e,t){return e+t}).args(N),s("binary-",function(e,t){return e-t}).args(N),s("binary*",function(e,t){return e*t}).args(N),s("binary/",function(e,t){return e/t}).args([["*a","number"],["*b","divisor"]]),s("binary^",function(e,t){return Math.pow(e,t)}).args(N),s("binary&",function(e,t){return null==e&&(e=""),null==t&&(t=""),""+e+t}).args([["*a",["or","number","string","boolean","null"]],["*b",["or","number","string","boolean","null"]]]),s("binary=",function(e,t){return e===t}).args(H),s("binary<>",function(e,t){return e!==t}).args(H),s("binary<",w(function(e,t){return t>e})).args(H),s("binary<=",w(function(e,t){return t>=e})).args(H),s("binary>",w(function(e,t){return e>t})).args(H),s("binary>=",w(function(e,t){return e>=t})).args(H),s("unary+",function(e){return e}).args([["*a","number"]]),s("unary-",function(e){return-e}).args([["*a","number"]]),s("unary%",function(e){return e/100}).args([["*a","number"]]),s("binary:",function(e,t){return new T(e,t).setSheet(e.sheet||this.formula.sheet,e.hasSheet())}).args([["a","cell"],["b","cell"]]),s("binary,",function(e,t){return new D([e,t])}).args([["a","ref"],["b","ref"]]),s("binary ",function(e,t){return e.intersect(t)}).args([["a","ref"],["b","ref"]]),s("not",function(e){return!this.bool(e)}).args([["*a","anyvalue"]]),s("isblank",function(e){return e instanceof S?(e=this.getRefData(e),null==e):!1}).args([["*value","anything!"]]),s("iserror",function(t){return t instanceof e}).args([["*value","forced!"]]),s("iserr",function(t){return t instanceof e&&"N/A"!=t.code}).args([["*value","forced!"]]),s("isna",function(t){return t instanceof e&&"N/A"==t.code}).args([["*value","forced!"]]),s("islogical",function(e){return"boolean"==typeof e}).args([["*value","forced!"]]),s("isnontext",function(e){return"string"!=typeof e}).args([["*value","forced!"]]),s("istext",function(e){return"string"==typeof e}).args([["*value","forced!"]]),s("isnumber",function(e){return"number"==typeof e}).args([["*value","forced!"]]),s("isref",function(e){return e instanceof S||e instanceof T}).args([["*value","anything!"]]))}(),function(){"use strict";function e(e,t,o,s){var a,l;if("string"==typeof s&&(s=JSON.parse(s)),s.from&&("list"===s.dataType&&(s.from=kendo.format(r,s.from)),s.from=i.compile(i.parseFormula(e,t,o,s.from))),s.to&&(s.to=i.compile(i.parseFormula(e,t,o,s.to))),l="custom"==s.dataType?n.validationComparers.custom:"list"==s.dataType?n.validationComparers.list:n.validationComparers[s.comparerType],!l)throw kendo.format("'{0}' comparer is not implemented.",s.comparerType);return a=function(e){var t,n=this.to&&this.to.value?this.to.value:void 0;return"custom"==this.dataType?this.value=l(e,this.from.value,n):"list"==this.dataType?(t=this._getListData(),this.value=l(e,t,n)):this.value=null===e?this.allowNulls?!0:!1:l(e,this.from.value,n),this.value},new kendo.spreadsheet.validation.Validation($.extend(s,{handler:a,sheet:e,row:t,col:o}))}var t,n,i,o,r,s;kendo.support.browser.msie&&kendo.support.browser.version<9||(t=kendo.spreadsheet,n={},t.validation=n,i=t.calc,o=kendo.Class,r="_matrix({0})",i.runtime.defineFunction("_matrix",function(e){return e}).args([["m","matrix"]]),s=o.extend({init:function(e){this.handler=e.handler,this.from=e.from,this.to=e.to,this.dataType=e.dataType,this.comparerType=e.comparerType,this.type=e.type?e.type:"warning",this.allowNulls=e.allowNulls?!0:!1,this.sheet=e.sheet,this.row=e.row,this.col=e.col,e.tooltipMessageTemplate&&(this.tooltipMessageTemplate=e.tooltipMessageTemplate),e.tooltipTitleTemplate&&(this.tooltipTitleTemplate=e.tooltipTitleTemplate),e.messageTemplate&&(this.messageTemplate=e.messageTemplate),e.titleTemplate&&(this.titleTemplate=e.titleTemplate)},_formatMessages:function(e){var t=this.from?this.from.value:"",n=this.to?this.to.value:"",i=this.from?""+this.from:"",o=this.to?""+this.to:"",r=this.dataType,s=this.type,a=this.comparerType;return kendo.format(e,t,n,i,o,r,s,a)},_setMessages:function(){this.title="",this.message="",this.tooltipTitleTemplate&&(this.tooltipTitle=this._formatMessages(this.tooltipTitleTemplate)),this.tooltipMessageTemplate&&(this.tooltipMessage=this._formatMessages(this.tooltipMessageTemplate)),this.titleTemplate&&(this.title=this._formatMessages(this.titleTemplate)),
|
||
this.messageTemplate&&(this.message=this._formatMessages(this.messageTemplate))},_getListData:function(){var e,t,n,i,o;if(!this.from.value||!this.from.value.data)return[];for(e=this.from.value.data,i=[],t=0;e.length>t;t++)if(o=e[t])for(n=0;o.length>n;n++)i.push(o[n]);return i},clone:function(e,t,n){var i=this._getOptions();return i.from&&(i.from=i.from.clone(e,t,n)),i.to&&(i.to=i.to.clone(e,t,n)),new s($.extend(i,{handler:this.handler},{sheet:e,row:t,col:n}))},exec:function(e,t,n,i){var o=this,r=function(){o.value=o.handler.call(o,t,n),o._setMessages(),i&&i(o.value)};o.to?o.to.exec(e,function(){o.from.exec(e,r)}):o.from.exec(e,r)},reset:function(){this.from&&this.from.reset(),this.to&&this.to.reset(),delete this.value},adjust:function(e,t,n,i){var o,r;if(this.from&&this.from.adjust(e,t,n,i),this.to&&this.to.adjust(e,t,n,i),this.sheet.toLowerCase()==e.toLowerCase())switch(o=this.row,r=this.col,t){case"row":o>=n&&(this.row+=i);break;case"col":r>=n&&(this.col+=i)}},toJSON:function(){var e=this._getOptions();return e.from&&(e.from=""+e.from,"list"===e.dataType&&(e.from=e.from.replace(/^_matrix\((.*)\)$/i,"$1"))),e.to&&(e.to=""+e.to),e},_getOptions:function(){return{from:this.from,to:this.to,dataType:this.dataType,type:this.type,comparerType:this.comparerType,row:this.row,col:this.col,sheet:this.sheet,allowNulls:this.allowNulls,tooltipMessageTemplate:this.tooltipMessageTemplate,tooltipTitleTemplate:this.tooltipTitleTemplate,messageTemplate:this.messageTemplate,titleTemplate:this.titleTemplate}}}),n.compile=e,n.validationComparers={greaterThan:function(e,t){return e>t},lessThan:function(e,t){return t>e},between:function(e,t,n){return e>t&&n>e},equalTo:function(e,t){return e==t},notEqualTo:function(e,t){return e!=t},greaterThanOrEqualTo:function(e,t){return e>=t},lessThanOrEqualTo:function(e,t){return t>=e},notBetween:function(e,t,n){return t>e||e>n},custom:function(e,t){return t},list:function(e,t){return t.indexOf(e)>-1}},n.Validation=s)}(),function(){!function(e){var t,n,i,o,r,s;e.support.browser.msie&&9>e.support.browser.version||(t=e.spreadsheet.RangeRef,n=e.spreadsheet.CellRef,i=e.spreadsheet.Range,o=e.Color,r=e.Class.extend({init:function(t){this._sheet=t,this.selection=e.spreadsheet.FIRSTREF.toRangeRef(),this.originalSelection=e.spreadsheet.FIRSTREF.toRangeRef(),this._activeCell=e.spreadsheet.FIRSTREF.toRangeRef(),this.originalActiveCell=e.spreadsheet.FIRSTREF},currentSelectionRange:function(){return this.selection.rangeAt(this.selectionRangeIndex).toRangeRef()},currentOriginalNavigationRange:function(){return this.originalSelection.rangeAt(this.selectionRangeIndex).toRangeRef()},currentNavigationRange:function(){return this.singleCellSelection()?this._sheet._sheetRef:this.selection.rangeAt(this.selectionRangeIndex).toRangeRef()},nextNavigationRange:function(){return this.singleCellSelection()||(this.selectionRangeIndex=this.selection.nextRangeIndex(this.selectionRangeIndex)),this.currentNavigationRange()},previousNavigationRange:function(){return this.singleCellSelection()||(this.selectionRangeIndex=this.selection.previousRangeIndex(this.selectionRangeIndex)),this.currentNavigationRange()},activeCell:function(e){return e&&(this.originalActiveCell=e,this._activeCell=this._sheet.unionWithMerged(e.toRangeRef()),this._sheet.focus(e),this._sheet.triggerChange({activeCell:!0,selection:!0})),this._activeCell},select:function(e,t,n){if(e){if(e.eq(this.originalSelection))return;this.originalSelection=e,this.selection=t,n!==!1?(this.activeCell(e.isCell()?e:this.selection.lastRange().first()),this.selectionRangeIndex=this.selection.size()-1):this._sheet.triggerChange({selection:!0})}return this.selection},singleCellSelection:function(){return this._activeCell.eq(this.selection)}}),s=e.Observable.extend({init:function(t,n,i,o,s,a){e.Observable.prototype.init.call(this);var l=t*n-1;this._rows=new e.spreadsheet.Axis(t,i),this._columns=new e.spreadsheet.Axis(n,o),this._mergedCells=[],this._frozenRows=0,this._frozenColumns=0,this._suspendChanges=!1,this._filter=null,this._grid=new e.spreadsheet.Grid(this._rows,this._columns,t,n,s,a),this._sheetRef=this._grid.normalize(e.spreadsheet.SHEETREF),this._properties=new e.spreadsheet.PropertyBag(l),this._sorter=new e.spreadsheet.Sorter(this._grid,this._properties.sortable()),this._viewSelection=new r(this),this._editSelection=new r(this),this._formulaSelections=[]},_selectionState:function(){return this._inEdit?this._editSelection:this._viewSelection},navigator:function(){return this._navigator||(this._navigator=new e.spreadsheet.SheetNavigator(this)),this._navigator},axisManager:function(){return this._axisManager||(this._axisManager=new e.spreadsheet.AxisManager(this)),this._axisManager},name:function(e){return e?(this._name=e,this):this._name},_property:function(e,t,n){return void 0===t?e():(e(t),this.triggerChange(n))},_field:function(e,t,n){return void 0===t?this[e]:(this[e]=t,this.triggerChange(n))},suspendChanges:function(e){return void 0===e?this._suspendChanges:(this._suspendChanges=e,this)},triggerChange:function(e){return this._suspendChanges||this.trigger("change",e),this},setDataSource:function(t,n){this.dataSourceBinder&&this.dataSourceBinder.destroy(),this.dataSourceBinder=new e.spreadsheet.SheetDataSourceBinder({dataSource:t,sheet:this,columns:n})},hideColumn:function(e){return this._property(this._columns.hide.bind(this._columns),e,{layout:!0})},unhideColumn:function(e){return this._property(this._columns.unhide.bind(this._columns),e,{layout:!0})},isHiddenColumn:function(e){return this._grid._columns.hidden(e)},_copyRange:function(e,t){var n=this._grid,i=n.rowCount,o=n.normalize(e.topLeft),r=n.normalize(e.bottomRight),s=o.col*i+o.row,a=r.col*i+r.row,l=t.col*i+t.row;this._properties.copy(s,a,l)},_adjustReferences:function(t,n,i,o){var r,s;this._mergedCells=o.reduce(function(o,r){return r=r.adjust(null,null,null,null,"row"==t,n,i),r!==e.spreadsheet.NULLREF&&o.push(r),o},[]),this._workbook&&(r=this._name,this._workbook._sheets.forEach(function(e){e._forFormulas(function(e){e.adjust(r,t,n,i)}),e._forValidations(function(e){e.adjust(r,t,n,i)})})),s=this.select(),s=s.adjust(null,null,null,null,"row"==t,n,i),s!==e.spreadsheet.NULLREF&&this.select(s)},_forFormulas:function(e){var t=this._properties;t.get("formula").values().forEach(function(t){e.call(this,t.value)},this)},_forValidations:function(e){var t=this._properties;t.get("validation").values().forEach(function(t){e.call(this,t.value)},this)},canInsertRow:function(e,t){var n,i;return t=t||1,n=this._grid,i=this.range(n.rowCount-t,0,t,n.columnCount),!i.hasValue()},insertRow:function(e){if(!this.canInsertRow(e))throw Error("Shifting nonblank cells off the worksheet is not supported!");return this.batch(function(){var o,r,s,a,l,c,u=this._grid,d=u.columnCount,h=u.rowCount,f=this.frozenRows();for(f>e&&this.frozenRows(f+1),o=this._mergedCells.slice(),r=0;d>r;r++)s=new t(new n(e,r),new n(e,r)),a=u.normalize(s.topLeft),l=u.normalize(s.bottomRight),c=new t(new n(a.row,a.col),new n(h-2,l.col)),this._copyRange(c,new n(a.row+1,a.col)),new i(s,this).clear();this._adjustReferences("row",e,1,o)},{recalc:!0,layout:!0}),this.trigger("insertRow",{index:e}),this},deleteRow:function(e){return this.batch(function(){var o,r,s,a,l,c,u,d=this._grid,h=d.columnCount,f=this.frozenRows();for(f>e&&this.frozenRows(f-1),o=this._mergedCells.slice(),r=0;h>r;r++)s=new t(new n(e,r),new n(e,r)),new i(s,this).clear(),a=d.normalize(s.topLeft),l=d.normalize(s.bottomRight),c=new t(new n(a.row+1,a.col),new n(1/0,l.col)),this._copyRange(c,a),u=d.normalize(c.bottomRight),new i(new t(u,u),this).clear();this._adjustReferences("row",e,-1,o)},{recalc:!0,layout:!0}),this.trigger("deleteRow",{index:e}),this},insertColumn:function(e){return this.batch(function(){var o,r,s,a,l,c,u=this._grid,d=u.columnCount,h=this.frozenColumns();for(h>e&&this.frozenColumns(h+1),o=this._mergedCells.slice(),r=d;r>=e&&(s=new t(new n(0,r),new n(1/0,r)),new i(s,this).clear(),r!=e);r--)a=u.normalize(s.topLeft),l=u.normalize(s.bottomRight),c=new t(new n(a.row,a.col-1),new n(l.row,l.col-1)),this._copyRange(c,a);this._adjustReferences("col",e,1,o)},{recalc:!0,layout:!0}),this},deleteColumn:function(e){return this.batch(function(){var o,r,s,a,l,c,u=this._grid,d=u.columnCount,h=this.frozenColumns();for(h>e&&this.frozenColumns(h-1),o=this._mergedCells.slice(),r=e;d>r&&(s=new t(new n(0,r),new n(1/0,r)),new i(s,this).clear(),r!=d-1);r++)a=u.normalize(s.topLeft),l=u.normalize(s.bottomRight),c=new t(new n(a.row,a.col+1),new n(l.row,l.col+1)),this._copyRange(c,a);this._adjustReferences("col",e,-1,o)},{recalc:!0,layout:!0}),this},hideRow:function(e){return this._property(this._rows.hide.bind(this._rows),e,{layout:!0})},unhideRow:function(e){return this._property(this._rows.unhide.bind(this._rows),e,{layout:!0})},isHiddenRow:function(e){return this._grid._rows.hidden(e)},columnWidth:function(e,t){return this._property(this._columns.value.bind(this._columns,e,e),t,{layout:!0})},rowHeight:function(e,t){return this._property(this._rows.value.bind(this._rows,e,e),t,{layout:!0})},frozenRows:function(e){return this._field("_frozenRows",e,{layout:!0})},frozenColumns:function(e){return this._field("_frozenColumns",e,{layout:!0})},_ref:function(i,o,r,s){var a=null;return i instanceof e.spreadsheet.Ref?i:("string"==typeof i?a=e.spreadsheet.calc.parseReference(i):(r||(r=1),s||(s=1),a=new t(new n(i,o),new n(i+r-1,o+s-1))),a)},range:function(e,t,n,o){return new i(this._ref(e,t,n,o),this)},forEachMergedCell:function(e,t){var n=!1;void 0===t&&(t=e,n=!0),this._mergedCells.forEach(function(i){(n||i.intersects(e))&&t(i)})},forEachFilterHeader:function(e,t){var n,i=!1;void 0===t&&(t=e,i=!0),this._filter&&(n=[],this._filter.ref.forEachColumn(function(t){(i||t.intersects(e))&&n.push(t.topLeft)}),this._mergedCells.forEach(function(e){n=n.map(function(t){return e.intersects(t)?e:t})}),n.reduce(function(e,t){return e.indexOf(t)<0&&e.push(t),e},[]).forEach(t))},forEach:function(e,t){var n,i,o,r,s=this._grid.normalize(e.topLeft),a=this._grid.normalize(e.bottomRight);for(n=s.col;a.col>=n;n++)i=s.row,o=this._grid.index(i,n),r=this._grid.index(a.row,n),this._properties.forEach(o,r,function(e){t(i++,n,e)})},startResizing:function(e){this._initialPosition=e,this._resizeInProgress=!0},startAutoFill:function(){this._autoFillInProgress=!0;var e=this.select();this._autoFillOrigin=e,this._autoFillDest=e,this.triggerChange({selection:!0})},updateAutoFill:function(e,t,n,i){this._autoFillDest=e,this._autoFillPunch=t,this._autoFillHint=n,this._autoFillDirection=i,this.triggerChange({selection:!0})},autoFillRef:function(){return this._autoFillDest},autoFillPunch:function(){return this._autoFillPunch},autoFillInProgress:function(){return this._autoFillInProgress},resizingInProgress:function(){return this._resizeInProgress},completeResizing:function(){var e,t;this._resizeInProgress&&(this._resizeInProgress=!1,e=this.resizeHintPosition(),this._initialPosition&&e?(t=this.resizeHandlePosition(),t.col!==-(1/0)?this.columnWidth(t.col,this.columnWidth(t.col)-(this._initialPosition.x-e.x)):this.rowHeight(t.row,this.rowHeight(t.row)-(this._initialPosition.y-e.y))):this.trigger("change",{resize:!0}))},resizeHandlePosition:function(){return this._resizeHandlePosition},resizeHintPosition:function(e){return void 0!==e&&(this._resizeHintPosition=e,this.trigger("change",{resize:!0})),this._resizeHintPosition},removeResizeHandle:function(){this._resizeHandlePosition&&(this._resizeHintPosition=void 0,this._resizeHandlePosition=void 0,this._initialPosition=void 0,this.trigger("change",{resize:!0}))},positionResizeHandle:function(e){this._resizeHandlePosition=e,this.trigger("change",{resize:!0})},startSelection:function(){this._selectionInProgress=!0},completeSelection:function(){var e,t;this._selectionInProgress&&(this._selectionInProgress=!1,this._resizeHintPosition=void 0,this.trigger("change",{selection:!0})),this._autoFillInProgress&&(this._autoFillInProgress=!1,e=this._autoFillDest,t=this._autoFillOrigin,this._autoFillPunch?this._workbook.execute({command:"ClearContentCommand",options:{operatingRange:this.range(this._autoFillPunch)}}):e.eq(t)?this.triggerChange({selection:!0}):this._workbook.execute({command:"AutoFillCommand",options:{operatingRange:this.range(e),origin:this.range(t)}}),this._autoFillDest=null,this._autoFillPunch=null,this._autoFillOrigin=null,this.select(e))},selectionInProgress:function(){return this._selectionInProgress},select:function(e,t){var n,i=this._selectionState();return e&&(e=this._ref(e),n=this._grid.isAxis(e)?e:this.unionWithMerged(e)),i.select(e,n,t)},originalSelect:function(){return this._selectionState().originalSelection},currentSelectionRange:function(){return this._selectionState().currentSelectionRange()},currentOriginalSelectionRange:function(){return this._selectionState().currentOriginalNavigationRange()},currentNavigationRange:function(){return this._selectionState().currentNavigationRange()},nextNavigationRange:function(){return this._selectionState().nextNavigationRange()},previousNavigationRange:function(){return this._selectionState().previousNavigationRange()},selectionRangeIndex:function(){return this._selectionState().selectionRangeIndex},activeCell:function(e){return this._selectionState().activeCell(e)},originalActiveCell:function(){return this._selectionState().originalActiveCell},singleCellSelection:function(){return this._selectionState().singleCellSelection()},unionWithMerged:function(e){var t=this._mergedCells;return e.map(function(e){return e.toRangeRef().union(t)})},trim:function(e){var t=[],n=this._grid;return this._properties.forEachProperty(function(i){t.push(n.trim(e,i.list))}),this.unionWithMerged(e.topLeft.toRangeRef().union(t))},focus:function(e){if(!e){var t=this._focus;return this._focus=null,t}this._focus=e.toRangeRef()},activeCellSelection:function(){return new i(this._grid.normalize(this.activeCell()),this)},selection:function(){return new i(this._grid.normalize(this._selectionState().selection),this)},selectedHeaders:function(){var e=this.select(),t={},n={},i=!1,o=!1;return e.forEach(function(e){var r,s,a,l,c="partial",u="partial";if(e=e.toRangeRef(),s=e.bottomRight,a=s.col===1/0,l=s.row===1/0,l&&(o=!0,u="full"),a&&(i=!0,c="full"),!l)for(r=e.topLeft.row;s.row>=r;r++)"full"!==t[r]&&(t[r]=c);if(!a)for(r=e.topLeft.col;s.col>=r;r++)"full"!==n[r]&&(n[r]=u)}),{rows:t,cols:n,allRows:o,allCols:i,all:o&&i}},isInEditMode:function(e){return void 0===e?this._inEdit:(this._inEdit=e,void(e&&(this._editSelection.selection=this._viewSelection.selection.clone(),this._editSelection.originalSelection=this._viewSelection.originalSelection.clone(),this._editSelection._activeCell=this._viewSelection._activeCell.clone(),this._editSelection.originalActiveCell=this._viewSelection.originalActiveCell.clone())))},_setFormulaSelections:function(e){this._formulaSelections=(e||[]).slice(),this.triggerChange({selection:!0})},_viewActiveCell:function(){return this._viewSelection._activeCell.toRangeRef()},toJSON:function(){var t,n={},i=this._rows.toJSON("height",n),r=this._columns.toJSON("width",{}),s=this._viewSelection;return this.forEach(e.spreadsheet.SHEETREF,function(e,t,r){if(0!==Object.keys(r).length){var s=n[e];void 0===s&&(s=i.length,i.push({index:e}),n[e]=s),e=i[s],r.index=t,void 0===e.cells&&(e.cells=[]),r.formula&&(r.formula=""+r.formula),r.validation&&(r.validation=r.validation.toJSON()),r.color&&(r.color=new o(r.color).toHex()),r.background&&(r.background=new o(r.background).toHex()),r.borderTop&&r.borderTop.color&&(r.borderTop.color=new o(r.borderTop.color).toHex()),r.borderBottom&&r.borderBottom.color&&(r.borderBottom.color=new o(r.borderBottom.color).toHex()),r.borderRight&&r.borderRight.color&&(r.borderRight.color=new o(r.borderRight.color).toHex()),r.borderLeft&&r.borderLeft.color&&(r.borderLeft.color=new o(r.borderLeft.color).toHex()),e.cells.push(r)}}),t={name:this._name,rows:i,columns:r,selection:""+s.selection,activeCell:""+s.activeCell(),frozenRows:this.frozenRows(),frozenColumns:this.frozenColumns(),mergedCells:this._mergedCells.map(function(e){return""+e})},this._sort&&(t.sort={ref:""+this._sort.ref,columns:this._sort.columns.map(function(e){return{index:e.index,ascending:e.ascending}})}),this._filter&&(t.filter={ref:""+this._filter.ref,columns:this._filter.columns.map(function(e){var t=e.filter.toJSON();return t.index=e.index,t})}),t},fromJSON:function(t){this.batch(function(){var n,i,o,r,s,a,l,c;if(void 0!==t.name&&(this._name=t.name),void 0!==t.frozenColumns&&this.frozenColumns(t.frozenColumns),void 0!==t.frozenRows&&this.frozenRows(t.frozenRows),void 0!==t.columns&&this._columns.fromJSON("width",t.columns),void 0!==t.rows)for(this._rows.fromJSON("height",t.rows),n=0;t.rows.length>n;n++)if(i=t.rows[n],o=i.index,void 0===o&&(o=n),i.cells)for(r=0;i.cells.length>r;r++)s=i.cells[r],a=s.index,void 0===a&&(a=r),s.formula&&(s.formula=this._compileFormula(o,a,s.formula)),s.validation&&(s.validation=this._compileValidation(o,a,s.validation)),this._properties.fromJSON(this._grid.index(o,a),s);t.selection&&(this._viewSelection.selection=this._viewSelection.originalSelection=this._ref(t.selection)),t.activeCell&&(l=this._ref(t.activeCell),this._viewSelection._activeCell=l.toRangeRef(),this._viewSelection.originalActiveCell=l),t.mergedCells&&t.mergedCells.forEach(function(e){this.range(e).merge()},this),t.sort&&(this._sort={ref:this._ref(t.sort.ref),columns:t.sort.columns.slice(0)}),t.filter&&(c=t.filter.ref,c?this._filter={ref:this._ref(c),columns:t.filter.columns.map(function(t){return{index:t.index,filter:e.spreadsheet.Filter.create(t)}})}:e.logToConsole("Dropping filter for sheet '"+t.name+"' due to missing ref"))})},formula:function(e){return this._properties.get("formula",this._grid.cellRefIndex(e))},validation:function(e){return this._properties.get("validation",this._grid.cellRefIndex(e))},resetFormulas:function(){this._forFormulas(function(e){e.reset()})},resetValidations:function(){this._forValidations(function(e){e.reset()})},recalc:function(e){this._forFormulas(function(t){t.exec(e)})},revalidate:function(e){var i=this;this._forValidations(function(o){var r=new n(o.row,o.col),s=new t(r,r);o.exec(e,i._get(s,"value"),i._get(s,"format"))})},_value:function(e,t,n){var i=this._grid.index(e,t);return void 0===n?this._properties.get("value",i):void this._properties.set("value",i,i,n)},_validation:function(e,t){var n=this._grid.index(e,t);return this._properties.get("validation",n)},_compileValidation:function(t,n,i){return i.from&&(i.from=(i.from+"").replace(/^=/,"")),i.to&&(i.to=(i.to+"").replace(/^=/,"")),e.spreadsheet.validation.compile(this._name,t,n,i)},_compileFormula:function(t,n,i){return i=i.replace(/^=/,""),i=e.spreadsheet.calc.parseFormula(this._name,t,n,i),e.spreadsheet.calc.compile(i)},_copyValuesInRange:function(e,t,n,i){var o,r,s,a,l;for(o=e.col;t.col>=o;o++)for(r=this._grid.index(e.row,o),s=this._grid.index(t.row,o),a=r,l=e.row;s>=a;++a,++l)n=n.clone(this._name,l,o),this._properties.set(i,a,a,n);return n},_set:function(e,t,n){var i,o,r,s=this._grid.normalize(e.topLeft),a=this._grid.normalize(e.bottomRight);if(n&&"formula"==t)"string"==typeof n&&(n=this._compileFormula(s.row,s.col,n)),n=this._copyValuesInRange(s,a,n,"formula");else if(n&&"validation"==t)n=this._compileValidation(s.row,s.col,n),n=this._copyValuesInRange(s,a,n,"validation");else for(i=s.col;a.col>=i;i++)o=this._grid.index(s.row,i),r=this._grid.index(a.row,i),this._properties.set(t,o,r,n),"formula"==t&&this._properties.set("value",o,r,null)},_get:function(e,t){var n=this._grid.normalize(e.topLeft),i=this._grid.index(n.row,n.col);return this._properties.get(t,i)},batch:function(e,t){var n=this.suspendChanges();return this.suspendChanges(!0),e.call(this),this.suspendChanges(n).triggerChange(t)},_sortBy:function(e,t){var n=null;t.forEach(function(t){n=this._sorter.sortBy(e,t.index,this._properties.get("value"),t.ascending,n)},this),this._sort={ref:e,columns:t},this._refreshFilter(),this.triggerChange({recalc:!0})},_refreshFilter:function(){this._filter&&this._filterBy(this._filter.ref,this._filter.columns)},_filterBy:function(t,n){this.batch(function(){for(var i=t.topLeft.row;t.bottomRight.row>=i;i++)this._rows.hidden(i)&&this._rows.unhide(i);n.forEach(function(n){var i,o,r,s=t.resize({top:1}).toColumn(n.index),a=[];if(s!==e.spreadsheet.NULLREF)for(this.forEach(s,function(e,t,n){n.row=e,a.push(n)}),n.filter.prepare(a),i=0;a.length>i;i++)o=a[i],r=n.filter.value(o),n.filter.matches(r)===!1&&this.hideRow(o.row)},this),this._filter={ref:t,columns:n}},{layout:!0,filter:!0})},filter:function(){return this._filter},clearFilter:function(e){this._clearFilter(e instanceof Array?e:[e])},_clearFilter:function(e){this._filter&&this.batch(function(){this._filter.columns=this._filter.columns.filter(function(t){return e.indexOf(t.index)<0}),this._refreshFilter()},{layout:!0,filter:!0})},getAxisState:function(){return{rows:this._rows.getState(),columns:this._columns.getState()}},setAxisState:function(e){this._rows.setState(e.rows),this._columns.setState(e.columns),this.triggerChange({layout:!0})},getState:function(){return{rows:this._rows.getState(),columns:this._columns.getState(),mergedCells:this._mergedCells.map(function(e){return e.clone()}),properties:this._properties.getState()}},setState:function(t){this._rows.setState(t.rows),this._columns.setState(t.columns),this._mergedCells=t.mergedCells,this._properties.setState(t.properties),this.triggerChange(e.spreadsheet.ALL_REASONS)},_merge:function(t){var n,o=this._mergedCells,r=this;return this.batch(function(){n=t.map(function(t){var n,s,a,l,c,u;return t instanceof e.spreadsheet.CellRef?t:(n=t.toRangeRef().union(o,function(e){o.splice(o.indexOf(e),1)}),s=new i(n,r),a=s.value(),l=s.format(),c=s.background(),s.value(null),s.format(null),s.background(null),u=new i(n.collapse(),r),u.value(a),u.format(l),u.background(c),o.push(n),n)});var s=r._viewSelection;s.selection=r.unionWithMerged(s.originalSelection),s._activeCell=r.unionWithMerged(s.originalActiveCell)},{activeCell:!0,selection:!0}),n}}),e.spreadsheet.Sheet=s)}(kendo)}(),function(){!function(e){var t,n,i,o,r;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=".",i=" ",o={sheetsBarWrapper:"k-widget k-header",sheetsBarSheetsWrapper:"k-tabstrip k-floatwrap k-tabstrip-bottom",sheetsBarActive:"k-spreadsheet-sheets-bar-active",sheetsBarInactive:"k-spreadsheet-sheets-bar-inactive",sheetsBarAdd:"k-spreadsheet-sheets-bar-add",sheetsBarRemove:"k-spreadsheet-sheets-remove",sheetsBarItems:"k-spreadsheet-sheets-items",sheetsBarEditor:"k-spreadsheet-sheets-editor",sheetsBarScrollable:"k-spreadsheet-sheets-scrollable",sheetsBarNext:"k-spreadsheet-sheets-next",sheetsBarPrev:"k-spreadsheet-sheets-prev",sheetsBarKItem:"k-item k-state-default",sheetsBarKActive:"k-state-active k-state-tab-on-top",sheetsBarKTextbox:"k-textbox",sheetsBarKLink:"k-link",sheetsBarKIcon:"k-icon",sheetsBarKFontIcon:"k-font-icon",sheetsBarKButton:"k-button k-button-icon",sheetsBarKButtonBare:"k-button-bare",sheetsBarKArrowW:"k-i-arrow-w",sheetsBarKArrowE:"k-i-arrow-e",sheetsBarKReset:"k-reset k-tabstrip-items",sheetsBarKIconX:"k-i-x",sheetsBarKSprite:"k-sprite",sheetsBarKIconPlus:"k-i-plus",sheetsBarHintWrapper:"k-widget k-tabstrip k-tabstrip-bottom k-spreadsheet-sheets-items-hint",sheetsBarKResetItems:"k-reset k-tabstrip-items"},r=e.ui.Widget.extend({init:function(t,i){var o=r.classNames;e.ui.Widget.call(this,t,i),t=this.element,t.addClass(o.sheetsBarWrapper),this._tree=new e.dom.Tree(t[0]),this._tree.render([this._addButton(),this._createSheetsWrapper([])]),this._createSortable(),this._sortable.bind("start",this._onSheetReorderStart.bind(this)),this._sortable.bind("end",this._onSheetReorderEnd.bind(this)),t.on("click",n+o.sheetsBarRemove,this._onSheetRemove.bind(this)),t.on("click","li",this._onSheetSelect.bind(this)),t.on("dblclick","li"+n+o.sheetsBarActive,this._createEditor.bind(this)),t.on("click",n+o.sheetsBarAdd,this._onAddSelect.bind(this))},options:{name:"SheetsBar",scrollable:{distance:200}},events:["select","reorder","rename"],_createEditor:function(){this._editor||(this._renderSheets(this._sheets,this._selectedIndex,!0),this._editor=this.element.find(e.format("input{0}{1}",n,r.classNames.sheetsBarEditor)).focus().on("keydown",this._onEditorKeydown.bind(this)).on("blur",this._onEditorBlur.bind(this)))},_destroyEditor:function(){this._editor.off(),this._editor=null,this._renderSheets(this._sheets,this._selectedIndex,!1)},renderSheets:function(e,t){!e||0>t||this._renderSheets(e,t,!1)},_renderSheets:function(t,o,s){var a,l,c,u,d=this,h=d._sheetsWrapper(),f=d._sheetsGroup(),p=d.options,g=r.classNames;return d._sheets=t,d._selectedIndex=o,d._scrollableAllowed()?(h.addClass(g.sheetsBarScrollable+i+g.sheetsBarSheetsWrapper),a=h[0].offsetWidth,l=f[0].scrollWidth,void(l>a&&!d._scrollableModeActive?(d._nowScrollingSheets=!1,d._isRtl=e.support.isRtl(d.element),d._renderHtml(s,!0),c=h.children(n+g.sheetsBarPrev),u=h.children(n+g.sheetsBarNext),f.css({marginLeft:c.outerWidth()+9,marginRight:u.outerWidth()+12}),c.on("mousedown",function(){d._nowScrollingSheets=!0,d._scrollSheetsByDelta(p.scrollable.distance*(d._isRtl?1:-1))}),u.on("mousedown",function(){d._nowScrollingSheets=!0,d._scrollSheetsByDelta(p.scrollable.distance*(d._isRtl?-1:1))}),c.add(u).on("mouseup",function(){d._nowScrollingSheets=!1}),d._scrollableModeActive=!0,d._toggleScrollButtons()):d._scrollableModeActive&&a>=l?(d._scrollableModeActive=!1,h.children(n+g.sheetsBarPrev).off(),h.children(n+g.sheetsBarNext).off(),d._renderHtml(s,!1),d._sheetsGroup().css({marginLeft:"",marginRight:""})):d._renderHtml(s,!1))):void d._renderHtml(s,!1)},_renderHtml:function(t,n){var o,s,a,l,c,u,d=[],h=e.dom,f=h.element,p=this._sheets,g=this._selectedIndex,m=r.classNames;for(o=0;p.length>o;o++)s=p[o],a=o===g,l={className:m.sheetsBarKItem+i},c=[],l.className+=a?m.sheetsBarKActive+i+m.sheetsBarActive:m.sheetsBarInactive,a&&t?c.push(f("input",{type:"text",value:s.name(),className:m.sheetsBarKTextbox+i+m.sheetsBarEditor,maxlength:50},[])):(c.push(f("span",{className:m.sheetsBarKLink,title:s.name()},[h.text(s.name())])),u=f("span",{className:m.sheetsBarKIcon+i+m.sheetsBarKFontIcon+i+m.sheetsBarKIconX},[]),c.push(f("span",{className:m.sheetsBarKLink+i+m.sheetsBarRemove},[u]))),d.push(f("li",l,c));this._tree.render([this._addButton(),this._createSheetsWrapper(d,n)])},_createSheetsWrapper:function(t,n){var o,s=e.dom.element,a=r.classNames,l=[s("ul",{style:{paddingLeft:"50px"},className:a.sheetsBarKReset},t)];return n&&(o=a.sheetsBarKButton+i+a.sheetsBarKButtonBare+i,l.push(s("span",{className:o+a.sheetsBarPrev},[s("span",{className:a.sheetsBarKIcon+i+a.sheetsBarKArrowW},[])])),l.push(s("span",{className:o+a.sheetsBarNext},[s("span",{className:a.sheetsBarKIcon+i+a.sheetsBarKArrowE},[])]))),s("div",{className:a.sheetsBarItems},l)},_createSortable:function(){var i=r.classNames;this._sortable=new e.ui.Sortable(this.element,{filter:e.format("ul li.{0},ul li.{1}",i.sheetsBarActive,i.sheetsBarInactive),container:n+i.sheetsBarItems,axis:"x",animation:!1,ignore:"input",hint:function(e){var n=t(e).clone();return n.wrap("<div class='"+i.sheetsBarHintWrapper+"'><ul class='"+i.sheetsBarKResetItems+"'></ul></div>").closest("div")}})},_onEditorKeydown:function(e){this._editor&&(13===e.which&&(this._destroyEditor(),this._onSheetRename(t(e.target).val())),27===e.which&&(this._destroyEditor(),this._onSheetRename()))},_onEditorBlur:function(e){this._editor&&(this._destroyEditor(),this._onSheetRename(t(e.target).val()))},_onSheetReorderEnd:function(e){e.preventDefault(),this.trigger("reorder",{oldIndex:e.oldIndex,newIndex:e.newIndex})},_onSheetReorderStart:function(e){this._editor&&e.preventDefault()},_onSheetRemove:function(e){var n=t(e.target).closest("li").text();this._editor&&(this._destroyEditor(),this._onSheetRename(this._editor.val())),this.trigger("remove",{name:n})},_onSheetSelect:function(e){var i,o=t(e.target).text();return t(e.target).is(n+r.classNames.sheetsBarEditor)||!o?void e.preventDefault():(this._editor&&(i=this._editor.val(),this._destroyEditor(),this._onSheetRename(i)),void this.trigger("select",{name:o,isAddButton:!1}))},_onSheetRename:function(e){this.trigger("rename",{name:e,sheetIndex:this._selectedIndex})},_onAddSelect:function(){this.trigger("select",{isAddButton:!0})},_addButton:function(){var t=e.dom.element,n=r.classNames;return t("a",{className:n.sheetsBarAdd+i+n.sheetsBarKButton},[t("span",{className:n.sheetsBarKSprite+i+n.sheetsBarKIcon+i+n.sheetsBarKFontIcon+i+n.sheetsBarKIconPlus},[])])},destroy:function(){this._sortable.destroy()},_scrollableAllowed:function(){var e=this.options;return e.scrollable&&!isNaN(e.scrollable.distance)},_scrollSheetsToItem:function(e){var t,n=this,i=n._sheetsGroup(),o=i.scrollLeft(),r=e.outerWidth(),s=n._isRtl?e.position().left:e.position().left-i.children().first().position().left,a=i[0].offsetWidth,l=Math.ceil(parseFloat(i.css("padding-left")));n._isRtl?0>s?t=o+s-(a-o)-l:s+r>a&&(t=o+s-r+2*l):s+r>o+a?t=s+r-a+2*l:o>s&&(t=s-l),i.finish().animate({scrollLeft:t},"fast","linear",function(){n._toggleScrollButtons()})},_sheetsGroup:function(){return this._sheetsWrapper().children("ul")},_sheetsWrapper:function(){return this.element.find(n+r.classNames.sheetsBarItems)},_scrollSheetsByDelta:function(e){var t=this,n=t._sheetsGroup(),i=n.scrollLeft();n.finish().animate({scrollLeft:i+e},"fast","linear",function(){t._nowScrollingSheets?t._scrollSheetsByDelta(e):t._toggleScrollButtons()})},_toggleScrollButtons:function(){var e=this,t=e._sheetsGroup(),i=e._sheetsWrapper(),o=t.scrollLeft();i.find(n+r.classNames.sheetsBarPrev).toggle(e._isRtl?t[0].scrollWidth-t[0].offsetWidth-1>o:0!==o),i.find(n+r.classNames.sheetsBarNext).toggle(e._isRtl?0!==o:t[0].scrollWidth-t[0].offsetWidth-1>o)}}),e.spreadsheet.SheetsBar=r,t.extend(!0,r,{classNames:o}))}(window.kendo)}(),function(){!function(e){var t,n;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=e.Observable.extend({init:function(t,n){e.Observable.fn.init.call(this),this.options=t,this._view=n,this._sheets=[],this._sheetsSearchCache={},this._sheet=this.insertSheet({rows:this.options.rows,columns:this.options.columns,rowHeight:this.options.rowHeight,columnWidth:this.options.columnWidth,headerHeight:this.options.headerHeight,headerWidth:this.options.headerWidth,dataSource:this.options.dataSource}),this.undoRedoStack=new e.util.UndoRedoStack,this.undoRedoStack.bind(["undo","redo"],this._onUndoRedo.bind(this)),this._context=new e.spreadsheet.FormulaContext(this),this._validationContext=new e.spreadsheet.ValidationFormulaContext(this),this.fromJSON(this.options)},clipboard:function(){return this._clipboard||(this._clipboard=new e.spreadsheet.Clipboard(this)),this._clipboard},destroy:function(){this.unbind(),this._clipboard&&this._clipboard.destroy()},events:["change"],_sheetChange:function(e){this.trigger("change",e)},_inputForRef:function(t){return new e.spreadsheet.Range(t,this._sheet).input()},_onUndoRedo:function(e){e.command.range().select()},execute:function(n){var i,o=t.extend({workbook:this},n.options),r=new e.spreadsheet[n.command](o),s=this.activeSheet();return o.origin&&r.origin(o.origin),r.range(o.operatingRange?o.operatingRange:o.editActiveCell?s.activeCellSelection():s.selection()),i=r.exec(),i&&"error"===i.reason||this.undoRedoStack.push(r),i},resetFormulas:function(){this._sheets.forEach(function(e){e.resetFormulas()})},resetValidations:function(){this._sheets.forEach(function(e){e.resetValidations()})},refresh:function(e){e.recalc&&(this.resetFormulas(),this.resetValidations(),this._sheet.recalc(this._context),this._sheet.revalidate(this._validationContext))},activeSheet:function(t){return void 0===t?this._sheet:void(this.sheetByName(t.name())&&(this._sheet=t,t.triggerChange(e.spreadsheet.ALL_REASONS)))},moveSheetToIndex:function(e,t){var n=this.sheetIndex(e),i=this._sheets;-1!==n&&(this._sheetsSearchCache={},i.splice(t,0,i.splice(n,1)[0]),this.trigger("change",{sheetSelection:!0}))},insertSheet:function(t){
|
||
var n,i,o,r,s,a;return t=t||{},n=this,i="number"==typeof t.index?t.index:n._sheets.length,r=n._sheets,s=function(e){e=e?e:1;var t="Sheet"+e;return n.sheetByName(t)?s(e+1):t},t.name&&n.sheetByName(t.name)?void 0:(this._sheetsSearchCache={},o=t.name||s(),a=new e.spreadsheet.Sheet(t.rows||this.options.rows,t.columns||this.options.columns,t.rowHeight||this.options.rowHeight,t.columnWidth||this.options.columnWidth,t.headerHeight||this.options.headerHeight,t.headerWidth||this.options.headerWidth),a._workbook=this,a.name(o),a.bind("change",this._sheetChange.bind(this)),r.splice(i,0,a),t.data&&a.fromJSON(t.data),t.dataSource&&a.setDataSource(t.dataSource),this.trigger("change",{sheetSelection:!0}),a)},sheets:function(){return this._sheets.slice()},sheetByName:function(e){return this._sheets[this.sheetIndex(e)]},sheetByIndex:function(e){return this._sheets[e]},sheetIndex:function(e){var t,n=this._sheets,i=("string"==typeof e?e:e.name()).toLowerCase(),o=this._sheetsSearchCache[i];if(o>=0)return o;for(o=0;n.length>o;o++)if(t=n[o].name().toLowerCase(),this._sheetsSearchCache[t]=o,t===i)return o;return-1},renameSheet:function(e,t){var n=e.name();if(t&&n!==t&&(e=this.sheetByName(n)))return this._sheetsSearchCache={},this._sheets.forEach(function(e){e._forFormulas(function(e){e.renameSheet(n,t)})}),e.name(t),this.trigger("change",{sheetSelection:!0}),e},removeSheet:function(e){var t,n=this,i=n._sheets,o=e.name(),r=n.sheetIndex(e);1!==i.length&&(this._sheetsSearchCache={},r>-1&&(e.unbind(),i.splice(r,1),n.activeSheet().name()===o?(t=i[r===i.length?r-1:r],n.activeSheet(t)):this.trigger("change",{recalc:!0,sheetSelection:!0})))},fromJSON:function(e){var t,n,i;if(e.sheets)for(t=0;e.sheets.length>t;t++)n=this.sheetByIndex(t),n||(n=this.insertSheet()),n.fromJSON(e.sheets[t]),i=e.sheets[t].dataSource,i&&n.setDataSource(i);e.activeSheet&&this.activeSheet(this.sheetByName(e.activeSheet))},toJSON:function(){return this.resetFormulas(),this.resetValidations(),{activeSheet:this.activeSheet().name(),sheets:this._sheets.map(function(e){return e.recalc(this._context),e.toJSON()},this)}},saveAsExcel:function(n){var i,o;n=t.extend({},this.options.excel,n),i=this.toJSON(),this.trigger("excelExport",{workbook:i})||(o=new e.ooxml.Workbook(i),e.saveAs({dataURI:o.toDataURL(),fileName:i.fileName||n.fileName,proxyURL:n.proxyURL,forceProxy:n.forceProxy}))}}),e.spreadsheet.Workbook=n)}(kendo)}(),function(){var e,t,n,i,o,r,s;kendo.support.browser.msie&&kendo.support.browser.version<9||(e=kendo.spreadsheet,t=kendo.spreadsheet.CellRef,n=kendo.spreadsheet.RangeRef,i=kendo.spreadsheet.UnionRef,o=kendo.spreadsheet.NameRef,r=kendo.Class.extend({init:function(e){this.workbook=e},getRefCells:function(e,r){var s,a,l,c,u,d,h,f,p,g,m,v,_,w,b,y;if(e instanceof t)return(s=this.workbook.sheetByName(e.sheet))?(a=s.formula(e),l=s.range(e.row,e.col).value(),null!=a||null!=l?[{formula:a,value:l,row:e.row,col:e.col,sheet:e.sheet,hidden:r?0===s.columnWidth(e.col)||0===s.rowHeight(e.row):!1}]:[]):[{value:new kendo.spreadsheet.calc.runtime.CalcError("REF")}];if(e instanceof n){if(c=this.workbook.sheetIndex(e.sheet),u=[],d=c,e.endSheet&&(d=this.workbook.sheetIndex(e.endSheet),c>d&&(h=c,c=d,d=h)),0>c||0>d)return[{value:new kendo.spreadsheet.calc.runtime.CalcError("REF")}];for(;d>=c;)for(s=this.workbook.sheetByIndex(c++),f=s._grid.normalize(e.topLeft),p=s._grid.normalize(e.bottomRight),g=s._grid.cellRefIndex(f),m=s._grid.cellRefIndex(p),v=s._properties.iterator("value",g,m),_=f.col;p.col>=_;++_)for(w=f.row;p.row>=w;++w)b=s._grid.index(w,_),a=s._properties.get("formula",b),l=v.at(b),(null!=a||null!=l)&&u.push({formula:a,value:l,row:w,col:_,sheet:s.name(),hidden:r?0===s.columnWidth(_)||0===s.rowHeight(w):!1});return u}if(e instanceof i){for(y=[],c=0;e.refs.length>c;++c)y=y.concat(this.getRefCells(e.refs[c],r));return y}return e instanceof o?[{value:new kendo.spreadsheet.calc.runtime.CalcError("NAME")}]:[]},getData:function(e){var n=this.getRefCells(e).map(function(e){return e.value});return e instanceof t?n[0]:n},onFormula:function(e){var t=this.workbook.sheetByName(e.sheet),n=e.row,i=e.col,o=e.value,r=t.formula({row:n,col:i});return r!==e?!1:(o instanceof kendo.spreadsheet.calc.runtime.Matrix?o.each(function(e,o,r){t._value(n+o,i+r,e)}):t._value(n,i,o),!0)}}),s=r.extend({onFormula:function(){return!0}}),e.FormulaContext=r,e.ValidationFormulaContext=s)}(),function(){!function(e){"use strict";function t(e){return e.map(function(e){return'[data-action="'+e+'"]'}).join(",")}var n,i,o,r,s,a,l,c,u,d,h,f,p,g,m,v,_;if(!(e.support.browser.msie&&9>e.support.browser.version)){n=e.jQuery,i=/:alphanum$/,o={up:"up",down:"down",left:"left",right:"right",home:"first-col","ctrl+left":"first-col",end:"last-col","ctrl+right":"last-col","ctrl+up":"first-row","ctrl+down":"last-row","ctrl+home":"first","ctrl+end":"last",pageup:"prev-page",pagedown:"next-page"},r={tab:"next","shift+tab":"previous",enter:"lower","shift+enter":"upper","delete":"clearContents",backspace:"clearContents","shift+:alphanum":"edit",":alphanum":"edit","ctrl+:alphanum":"ctrl",":edit":"edit"},s={wheel:"onWheel","*+mousedown":"onMouseDown",contextmenu:"onContextMenu","*+mousedrag":"onMouseDrag","*+mouseup":"onMouseUp","*+dblclick":"onDblClick",mousemove:"onMouseMove"},a={"*+pageup":"onPageUp","*+pagedown":"onPageDown",mouseup:"onMouseUp","*+cut":"onCut","*+paste":"onPaste","*+copy":"onCopy"},l={esc:"onEditorEsc",enter:"onEditorBlur","shift+enter":"onEditorBlur",tab:"onEditorBlur","shift+tab":"oonEditorBlur"},c=n.extend({focus:"onEditorBarFocus"},l),u=n.extend({focus:"onEditorCellFocus"},l),d={cell:"range",rowheader:"row",columnheader:"column",topcorner:"sheet",autofill:"autofill"},h=t(["cut","copy","paste","insert-left","insert-right","insert-above","insert-below"]),f=t(["unhide-row","unhide-column"]),p=[],g=[],m=[];for(v in o)p.push(v),g.push("shift+"+v);for(v in r)m.push(v);a[p]="onAction",a[g]="onShiftAction",a[m]="onEntryAction",u[p]="onEditorAction",u[g]="onEditorShiftAction",_=e.Class.extend({init:function(t,i){this.view=t,this.workbook(i),this.container=n(t.container),this.clipboardElement=n(t.clipboard),this.cellContextMenu=t.cellContextMenu,this.rowHeaderContextMenu=t.rowHeaderContextMenu,this.colHeaderContextMenu=t.colHeaderContextMenu,this.scroller=t.scroller,this.tabstrip=t.tabstrip,this.sheetsbar=t.sheetsbar,this.editor=t.editor,this.editor.bind("change",this.onEditorChange.bind(this)),this.editor.bind("activate",this.onEditorActivate.bind(this)),this.editor.bind("deactivate",this.onEditorDeactivate.bind(this)),this.editor.bind("update",this.onEditorUpdate.bind(this)),n(t.scroller).on("scroll",this.onScroll.bind(this)),this.listener=new e.spreadsheet.EventListener(this.container,this,s),this.keyListener=new e.spreadsheet.EventListener(this.clipboardElement,this,a),this.barKeyListener=new e.spreadsheet.EventListener(this.editor.barElement(),this,c),this.inputKeyListener=new e.spreadsheet.EventListener(this.editor.cellElement(),this,u),this.sheetsbar&&(this.sheetsbar.bind("select",this.onSheetBarSelect.bind(this)),this.sheetsbar.bind("reorder",this.onSheetBarReorder.bind(this)),this.sheetsbar.bind("rename",this.onSheetBarRename.bind(this)),this.sheetsbar.bind("remove",this.onSheetBarRemove.bind(this))),this.cellContextMenu.bind("select",this.onContextMenuSelect.bind(this)),this.rowHeaderContextMenu.bind("select",this.onContextMenuSelect.bind(this)),this.colHeaderContextMenu.bind("select",this.onContextMenuSelect.bind(this)),this.cellContextMenu.element.add(this.rowHeaderContextMenu.element).add(this.colHeaderContextMenu.element).on("contextmenu",!1),this.tabstrip&&(this.tabstrip.bind("action",this.onCommandRequest.bind(this)),this.tabstrip.bind("dialog",this.onDialogRequest.bind(this)))},_execute:function(e){var t=this._workbook.execute(e);t&&("error"===t.reason?this.view.showError(t):this.view.openDialog(t.reason))},_activeTooltip:function(){return""+this._workbook.activeSheet().activeCell().simplify()},onContextMenuSelect:function(e){var t,i=n(e.item).data("action");switch(i){case"cut":t={command:"ToolbarCutCommand",options:{workbook:this._workbook}};break;case"copy":t={command:"ToolbarCopyCommand",options:{workbook:this._workbook}};break;case"paste":t={command:"ToolbarPasteCommand",options:{workbook:this._workbook}};break;case"unmerge":t={command:"MergeCellCommand",options:{value:"unmerge"}};break;case"merge":this.view.openDialog("merge");break;case"hide-row":t={command:"HideLineCommand",options:{axis:"row"}};break;case"hide-column":t={command:"HideLineCommand",options:{axis:"column"}};break;case"unhide-row":t={command:"UnHideLineCommand",options:{axis:"row"}};break;case"unhide-column":t={command:"UnHideLineCommand",options:{axis:"column"}};break;case"delete-row":t={command:"DeleteRowCommand"};break;case"delete-column":t={command:"DeleteColumnCommand"}}t&&this._execute(t)},onSheetBarRemove:function(e){var t=this._workbook.sheetByName(e.name);t&&this._workbook.removeSheet(t)},destroy:function(){this.listener.destroy(),this.keyListener.destroy(),this.inputKeyListener.destroy()},onSheetBarSelect:function(e){var t,n=this._workbook;t=e.isAddButton?n.insertSheet():n.sheetByName(e.name),n.activeSheet().name()!==t.name()&&n.activeSheet(t)},onSheetBarReorder:function(e){var t=this._workbook.sheetByIndex(e.oldIndex);this._workbook.moveSheetToIndex(t,e.newIndex),this._workbook.activeSheet(t)},onSheetBarRename:function(e){var t=this._workbook.sheetByIndex(e.sheetIndex);this._workbook.renameSheet(t,e.name),this.clipboardElement.focus()},sheet:function(e){this.navigator=e.navigator(),this.axisManager=e.axisManager()},workbook:function(e){this._workbook=e,this.clipboard=e.clipboard()},refresh:function(){var e=this._workbook;this._viewPortHeight=this.view.scroller.clientHeight,this.navigator.height(this._viewPortHeight),this.editor.isActive()||this.editor.value(e._inputForRef(e.activeSheet().activeCell()))},onScroll:function(){this.view.render()},onWheel:function(e){var t=e.originalEvent.deltaX,n=e.originalEvent.deltaY;1===e.originalEvent.deltaMode&&(t*=10,n*=10),this.scrollWith(t,n),e.preventDefault()},onAction:function(e,t){this.navigator.moveActiveCell(o[t]),e.preventDefault()},onPageUp:function(){this.scrollDown(-this._viewPortHeight)},onPageDown:function(){this.scrollDown(this._viewPortHeight)},onEntryAction:function(e,t){var n,o;if(e.mod){switch(n=!0,o=String.fromCharCode(e.keyCode)){case"A":this.navigator.selectAll();break;case"Y":this._workbook.undoRedoStack.redo();break;case"Z":this._workbook.undoRedoStack.undo();break;default:n=!1}n&&e.preventDefault()}else"delete"==t||"backspace"==t?(this._execute({command:"ClearContentCommand"}),e.preventDefault()):i.test(t)||":edit"===t?(":edit"!==t&&this.editor.value(""),this.editor.activate({rect:this.view.activeCellRectangle(),tooltip:this._activeTooltip()}).focus()):(this.navigator.navigateInSelection(r[t]),e.preventDefault())},onShiftAction:function(e,t){this.navigator.modifySelection(o[t.replace("shift+","")],this.appendSelection),e.preventDefault()},onMouseMove:function(e){var t,n=this._workbook.activeSheet();n.resizingInProgress()||n.selectionInProgress()||(t=this.objectAt(e),"columnresizehandle"===t.type||"rowresizehandle"===t.type?n.positionResizeHandle(t.ref):n.removeResizeHandle())},onMouseDown:function(e){var t,n=this.objectAt(e);return n.pane&&(this.originFrame=n.pane),this.editor.canInsertRef(!1)&&n.ref?(this._workbook.activeSheet()._setFormulaSelections(this.editor.highlightedRefs()),this.navigator.startSelection(n.ref,this._selectionMode,this.appendSelection),void e.preventDefault()):(this.editor.deactivate(),t=this._workbook.activeSheet(),"columnresizehandle"===n.type||"rowresizehandle"===n.type?(t.startResizing({x:n.x,y:n.y}),void e.preventDefault()):"filtericon"===n.type?(this.openFilterMenu(e.target),void e.preventDefault()):(this._selectionMode=d[n.type],this.appendSelection=e.mod,void this.navigator.startSelection(n.ref,this._selectionMode,this.appendSelection)))},onContextMenu:function(t){var n,i,o,r,s,a,l=this._workbook.activeSheet();l.resizingInProgress()||(t.preventDefault(),this.cellContextMenu.close(),this.colHeaderContextMenu.close(),this.rowHeaderContextMenu.close(),i={pageX:t.pageX,pageY:t.pageY},o=this.objectAt(i),"columnresizehandle"!==o.type&&"rowresizehandle"!==o.type&&(this.navigator.selectForContextMenu(o.ref,d[o.type]),r=this.navigator._sheet.select()instanceof e.spreadsheet.UnionRef,s=!1,a=!1,"cell"===o.type?(n=this.cellContextMenu,a=this.navigator.selectionIncludesMergedCells()):"columnheader"==o.type?(n=this.colHeaderContextMenu,s=!r&&this.axisManager.selectionIncludesHiddenColumns()):"rowheader"==o.type&&(n=this.rowHeaderContextMenu,s=!r&&this.axisManager.selectionIncludesHiddenRows()),n.element.find(h).toggle(!r),n.element.find(f).toggle(s),n.element.find("[data-action=unmerge]").toggle(a),setTimeout(function(){n.open(t.pageX,t.pageY)})))},prevent:function(e){e.preventDefault()},constrainResize:function(e,t){var n=this._workbook.activeSheet(),i=n.resizeHandlePosition();return!i||"outside"===e||"topcorner"===e||i.col>t.col||i.row>t.row},onMouseDrag:function(e){var t,n,i,o;if("sheet"!==this._selectionMode){if(t={pageX:e.pageX,pageY:e.pageY},n=this.objectAt(t),i=this._workbook.activeSheet(),i.resizingInProgress())return void(this.constrainResize(n.type,n.ref)||i.resizeHintPosition({x:n.x,y:n.y}));if("outside"===n.type)return void this.startAutoScroll(n);this.originFrame===n.pane?this.selectToLocation(t):(o=this.originFrame._grid,n.x>o.right&&this.scrollLeft(),n.y>o.bottom&&this.scrollTop(),o.top>n.y||o.left>n.x?this.startAutoScroll(n,t):this.selectToLocation(t)),e.preventDefault()}},onMouseUp:function(e){var t,n,i,o=this._workbook.activeSheet();if(o.completeResizing(),this.navigator.completeSelection(),this.stopAutoScroll(),t=this.editor.activeEditor()){for(n=e.target;n;){if(n===t.element[0])return;n=n.parentNode}i=this.objectAt(e),i&&i.ref&&t.canInsertRef(!1)&&(t.refAtPoint(o.selection()._ref),o._setFormulaSelections(t.highlightedRefs()))}},onDblClick:function(e){var t=this.objectAt(e);"cell"===t.type&&(this.editor.activate({rect:this.view.activeCellRectangle(),tooltip:this._activeTooltip()}).focus(),this.onEditorUpdate())},onCut:function(e){if(e){var t=this.clipboardElement.find("table.kendo-clipboard-"+this.clipboard._uid).detach();this.clipboardElement.append(t.clone(!1)),setTimeout(function(){this.clipboardElement.empty().append(t)}.bind(this))}this._execute({command:"CutCommand",options:{workbook:this.view._workbook}})},clipBoardValue:function(){return this.clipboardElement.html()},onPaste:function(t){var n,i,o,r="",s="";if(this.clipboard.menuInvoked=void 0===t,t){if(!t.originalEvent.clipboardData||!t.originalEvent.clipboardData.getData)return o=this.clipboardElement.find("table.kendo-clipboard-"+this.clipboard._uid).detach(),this.clipboardElement.empty(),void setTimeout(function(){this.clipboard.external({html:this.clipboardElement.html(),plain:window.clipboardData.getData("Text").trim()}),this.clipboardElement.empty().append(o),this._execute({command:"PasteCommand",options:{workbook:this.view._workbook}}),this.clipboard.menuInvoked=!0}.bind(this));t.preventDefault(),n=!1,i=!1,window.DOMStringList&&t.originalEvent.clipboardData.types instanceof window.DOMStringList?(n=t.originalEvent.clipboardData.types.contains("text/html"),i=t.originalEvent.clipboardData.types.contains("text/plain")):(n=/text\/html/.test(t.originalEvent.clipboardData.types),i=/text\/plain/.test(t.originalEvent.clipboardData.types)),n&&(r=t.originalEvent.clipboardData.getData("text/html")),i&&(s=t.originalEvent.clipboardData.getData("text/plain").trim())}else{if(e.support.browser.msie)return this.clipboardElement.focus().select(),void document.execCommand("paste");this.clipboard.menuInvoked=!0}this.clipboard.external({html:r,plain:s}),this._execute({command:"PasteCommand",options:{workbook:this.view._workbook}})},onCopy:function(e){this.clipboard.menuInvoked=void 0===e,this._execute({command:"CopyCommand",options:{workbook:this.view._workbook}})},scrollTop:function(){this.scroller.scrollTop=0},scrollLeft:function(){this.scroller.scrollLeft=0},scrollDown:function(e){this.scroller.scrollTop+=e},scrollRight:function(e){this.scroller.scrollLeft+=e},scrollWith:function(e,t){this.scroller.scrollTop+=t,this.scroller.scrollLeft+=e},objectAt:function(e){var t=this.container.offset(),n={left:e.pageX-t.left,top:e.pageY-t.top};return this.view.objectAt(n.left,n.top)},selectToLocation:function(e){var t=this.objectAt(e);t.pane&&(this.extendSelection(t),this.lastKnownCellLocation=e,this.originFrame=t.pane),this.stopAutoScroll()},extendSelection:function(e){this.navigator.extendSelection(e.ref,this._selectionMode,this.appendSelection)},autoScroll:function(){var e=this._autoScrollTarget.x,t=this._autoScrollTarget.y,n=this.originFrame._grid,i=this.view.scroller,o=8,r=i.scrollLeft,s=i.scrollTop;n.left>e&&this.scrollRight(-o),e>n.right&&this.scrollRight(o),n.top>t&&this.scrollDown(-o),t>n.bottom&&this.scrollDown(o),s===i.scrollTop&&r===i.scrollLeft?this.selectToLocation(this.finalLocation):this.extendSelection(this.objectAt(this.lastKnownCellLocation))},startAutoScroll:function(e,t){this._scrollInterval||(this._scrollInterval=setInterval(this.autoScroll.bind(this),50)),this.finalLocation=t||this.lastKnownCellLocation,this._autoScrollTarget=e},stopAutoScroll:function(){clearInterval(this._scrollInterval),this._scrollInterval=null},openFilterMenu:function(e){var t=n(e).closest(".k-spreadsheet-filter"),i=this.view.createFilterMenu(t.data("column"));i.bind("action",this.onCommandRequest.bind(this)),i.bind("action",i.close.bind(i)),i.openFor(e)},onEditorChange:function(e){this._workbook.activeSheet().isInEditMode(!1),this._execute({command:"EditCommand",options:{editActiveCell:!0,value:e.value}})},onEditorActivate:function(){var e=this._workbook,t=e.activeSheet();t._setFormulaSelections(this.editor.highlightedRefs()),t.isInEditMode(!0)},onEditorDeactivate:function(){var e=this._workbook.activeSheet();e.isInEditMode(!1),e._setFormulaSelections([])},onEditorUpdate:function(){this._workbook.activeSheet()._setFormulaSelections(this.editor.highlightedRefs())},onEditorBarFocus:function(){this.editor.activate({rect:this.view.activeCellRectangle(),tooltip:this._activeTooltip()})},onEditorCellFocus:function(){this.editor.scale()},onEditorEsc:function(){this.editor.value(this._workbook._inputForRef(this._workbook.activeSheet()._viewActiveCell())),this.editor.deactivate(),this.clipboardElement.focus()},onEditorBlur:function(e,t){this.editor.isFiltered()||(this.editor.deactivate(),this.clipboardElement.focus(),this.navigator.navigateInSelection(r[t]))},onEditorAction:function(e,t){var n=this.editor,i=this._workbook.activeSheet();n.canInsertRef(!0)&&(this.navigator.moveActiveCell(o[t]),n.activeEditor().refAtPoint(i.selection()._ref),i._setFormulaSelections(n.highlightedRefs()),e.preventDefault())},onEditorShiftAction:function(e,t){var n=this.editor,i=this._workbook.activeSheet();n.canInsertRef(!0)&&(this.navigator.modifySelection(o[t.replace("shift+","")],this.appendSelection),n.activeEditor().refAtPoint(i.selection()._ref),i._setFormulaSelections(n.highlightedRefs()),e.preventDefault())},onCommandRequest:function(e){e.command?this._execute(e):this._workbook.undoRedoStack[e.action]()},onDialogRequest:function(e){this.view.openDialog(e.name,e.options)}}),e.spreadsheet.Controller=_}}(window.kendo)}(),function(){!function(e){function t(e){var t,n=window.getSelection();n.removeAllRanges(),t=document.createRange(),t.selectNodeContents(e),n.addRange(t)}function n(e,t){var n=e.trs[t].children;return n[n.length-2]}function i(e,t){var n=e.trs[t-1],i=e.trs[t].children.length-1;return n&&i>=0?n.children[i]:void 0}function o(e){return["solid",(e.size||1)+"px",e.color||"#000"].join(" ")}function r(t,r,s){var a,l,c,u,d,h={};if(s.background&&(h.backgroundColor=s.background),s.color&&(h.color=s.color),s.fontFamily&&(h.fontFamily=s.fontFamily),s.underline&&(h.textDecoration="underline"),s.italic&&(h.fontStyle="italic"),s.textAlign&&(h.textAlign=s.textAlign),s.verticalAlign&&(h.verticalAlign=s.verticalAlign),s.bold&&(h.fontWeight="bold"),s.fontSize&&(h.fontSize=s.fontSize+"px"),s.wrap===!0?(h.whiteSpace="normal",h.wordBreak="break-all"):h.whiteSpace="nowrap",s.borderRight?h.borderRight=o(s.borderRight):s.background&&(h.borderRightColor=s.background),s.borderBottom?h.borderBottom=o(s.borderBottom):s.background&&(h.borderBottomColor=s.background),a=s.value,l=typeof a,s.format&&null!==a&&(a=e.spreadsheet.formatting.format(a,s.format),a.__dataType&&(l=a.__dataType)),!h.textAlign)switch(l){case"number":case"date":case"percent":h.textAlign="right";break;case"boolean":h.textAlign="center"}return c=t.addCell(r,a,h,null,s.validation),s.borderLeft?(d=n(t,r),u=o(s.borderLeft),d&&u&&(d.attr.style.borderRight=u)):s.background&&(h.borderLeftColor=s.background),s.borderTop?(d=i(t,r),u=o(s.borderTop),d&&u&&(d.attr.style.borderBottom=u)):s.background&&(h.borderTopColor=s.background),c}function s(e,t,n){return e>=t&&n>=e}var a,l,c,u,d,h,f,p,g,m,v,_,w,b;e.support.browser.msie&&9>e.support.browser.version||(a=e.jQuery,l=e.spreadsheet.CellRef,c=".",u=7,d={view:"k-spreadsheet-view",fixedContainer:"k-spreadsheet-fixed-container",scroller:"k-spreadsheet-scroller",viewSize:"k-spreadsheet-view-size",clipboard:"k-spreadsheet-clipboard",cellEditor:"k-spreadsheet-cell-editor",barEditor:"k-spreadsheet-editor",topCorner:"k-spreadsheet-top-corner",filterHeadersWrapper:"k-filter-wrapper",filterRange:"k-filter-range",filterButton:"k-spreadsheet-filter",filterButtonActive:"k-state-active",icon:"k-icon k-font-icon",iconFilterDefault:"k-i-arrow-s",sheetsBar:"k-spreadsheet-sheets-bar",sheetsBarActive:"k-spreadsheet-sheets-bar-active",sheetsBarInactive:"k-spreadsheet-sheets-bar-inactive",cellContextMenu:"k-spreadsheet-cell-context-menu",rowHeaderContextMenu:"k-spreadsheet-row-header-context-menu",colHeaderContextMenu:"k-spreadsheet-col-header-context-menu"},h=e.spreadsheet.messages.view={errors:{shiftingNonblankCells:"Cannot insert cells due to data loss possibility. Select another insert location or delete the data from the end of your worksheet.",filterRangeContainingMerges:"Cannot create a filter within a range containing merges"},tabs:{home:"Home",insert:"Insert",data:"Data"}},f=e.Class.extend({init:function(){this.cols=[],this.trs=[],this._height=0,this._width=0},addColumn:function(t){this._width+=t;var n=e.dom.element("col",{style:{width:t+"px"}});n.visible=t>0,this.cols.push(n)},addRow:function(t){var n,i=null;i={style:{height:t+"px"}},this._height+=t,n=e.dom.element("tr",i),n.visible=t>0,this.trs.push(n)},addCell:function(t,n,i,o,r){var s,a,l;return(null===n||void 0===n)&&(n=""),n instanceof e.dom.Node||(n=e.dom.text(n)),s=[n],a={style:i},r&&!r.value&&(s.push(e.dom.element("span",{className:"k-dirty"})),o=(o||"")+(o?" ":"")+"k-dirty-cell",a.title=r._getOptions().messageTemplate),o&&(a.className=o),l=e.dom.element("td",a,s),this.trs[t].children.push(l),l},toDomTree:function(t,n,i){this.trs=this.trs.filter(function(e){return e.visible});var o=0;return this.cols=this.cols.filter(function(e,t){return e.visible||(this.trs.forEach(function(e){e.children.splice(t-o,1)}),o++),e.visible},this),e.dom.element("table",{style:{left:t+"px",top:n+"px",height:this._height+"px",width:this._width+"px"},className:i},[e.dom.element("colgroup",null,this.cols),e.dom.element("tbody",null,this.trs)])}}),p='<ul class="#=classNames.cellContextMenu#"><li data-action=cut>Cut</li><li data-action=copy>Copy</li><li data-action=paste>Paste</li><li class="k-separator"></li><li data-action=merge>Merge</li><li data-action=unmerge>Unmerge</li></ul>',g='<ul class="#=classNames.rowHeaderContextMenu#"><li data-action=cut>Cut</li><li data-action=copy>Copy</li><li data-action=paste>Paste</li><li class="k-separator"></li><li data-action="delete-row">Delete</li><li data-action="hide-row">Hide</li><li data-action="unhide-row">Unhide</li></ul>',m='<ul class="#=classNames.colHeaderContextMenu#"><li data-action=cut>Cut</li><li data-action=copy>Copy</li><li data-action=paste>Paste</li><li class="k-separator"></li><li data-action="delete-column">Delete</li><li data-action="hide-column">Hide</li><li data-action="unhide-column">Unhide</li></ul>',e.spreadsheet.ContextMenu=e.ui.ContextMenu,v=e.template('<div class="#=classNames.view#"><div class="#=classNames.fixedContainer#"></div><div class="#=classNames.scroller#"><div class="#=classNames.viewSize#"></div></div><div tabindex="0" class="#=classNames.clipboard#" contenteditable=true></div><div class="#=classNames.cellEditor#"></div></div><div class="#=classNames.sheetsBar#"></div>'+p+g+m),_=e.Class.extend({init:function(t,n){var i,o,r=_.classNames;this.element=t,this.options=a.extend(!0,{},this.options,n),this._chrome(),this._dialogs=[],t.append(v({classNames:r})),this._formulaInput(),this.wrapper=t.find(c+r.view),this.container=t.find(c+r.fixedContainer)[0],this.scroller=t.find(c+r.scroller)[0],this.clipboard=t.find(c+r.clipboard),this.viewSize=a(this.scroller.firstChild),this.tree=new e.dom.Tree(this.container),this.clipboardContents=new e.dom.Tree(this.clipboard[0]),this.editor=new e.spreadsheet.SheetEditor(this),this._sheetsbar(),i={target:t,animation:!1,showOn:"never"},this.cellContextMenu=new e.spreadsheet.ContextMenu(t.find(c+r.cellContextMenu),i),this.colHeaderContextMenu=new e.spreadsheet.ContextMenu(t.find(c+r.colHeaderContextMenu),i),this.rowHeaderContextMenu=new e.spreadsheet.ContextMenu(t.find(c+r.rowHeaderContextMenu),i),o=e.support.scrollbar(),a(this.container).css({width:this.wrapper[0].clientWidth-o,height:this.wrapper[0].clientHeight-o})},_resize:function(){var e=this.tabstrip?this.tabstrip.element.outerHeight():0,t=this.formulaBar?this.formulaBar.element.outerHeight():0,n=this.sheetsbar?this.sheetsbar.element.outerHeight():0;this.wrapper.height(this.element.height()-(e+t+n)),this.tabstrip&&this.tabstrip.quickAccessAdjust()},_chrome:function(){var t=a("<div />").prependTo(this.element);this.formulaBar=new e.spreadsheet.FormulaBar(t),this.options.toolbar&&this._tabstrip()},_formulaInput:function(){var t=this.element.find(c+_.classNames.cellEditor);this.formulaInput=new e.spreadsheet.FormulaInput(t,{autoScale:!0})},_sheetsbar:function(){this.options.sheetsbar&&(this.sheetsbar=new e.spreadsheet.SheetsBar(this.element.find(c+_.classNames.sheetsBar),a.extend(!0,{},this.options.sheetsbar)))},_tabstrip:function(){var t,n=h.tabs,i=a.extend(!0,{home:!0,insert:!0,data:!0},this.options.toolbar),o=[];this.tabstrip&&(this.tabstrip.destroy(),this.element.children(".k-tabstrip").remove());for(t in i)(i[t]===!0||i[t]instanceof Array)&&o.push({id:t,text:n[t],content:""});this.tabstrip=new e.spreadsheet.TabStrip(a("<div />").prependTo(this.element),{animation:!1,dataTextField:"text",dataContentField:"content",dataSource:o,toolbarOptions:i,view:this}),this.tabstrip.select(0)},_executeCommand:function(e){this._workbook.execute(e)},workbook:function(e){this._workbook=e},sheet:function(e){this._sheet=e},activeCellRectangle:function(){return this.cellRectangle(this._sheet._viewActiveCell())},_rectangle:function(e,t){return e._grid.boundingRectangle(t.toRangeRef())},isColumnResizer:function(e,t,n){var i,o,r=this._rectangle(t,n);return e-=this._sheet._grid._headerWidth,i=u/2,o=r.right-this.scroller.scrollLeft,e>=o-i&&o+i>=e},isRowResizer:function(e,t,n){var i,o,r=this._rectangle(t,n);return e-=this._sheet._grid._headerHeight,i=u/2,o=r.bottom-this.scroller.scrollTop,e>=o-i&&o+i>=e},isFilterIcon:function(e,t,n,i){var o=!1;return e-=this._sheet._grid._headerWidth,t-=this._sheet._grid._headerHeight,this._sheet.forEachFilterHeader(i,function(i){var r=this._rectangle(n,i);o=o||n.filterIconRect(r).intersects(e,t)}.bind(this)),o},isAutoFill:function(e,t,n){var i,o=this._sheet.select();return o.size>1?!1:(e-=this._sheet._grid._headerWidth,t-=this._sheet._grid._headerHeight,n._grid.columns.frozen||(e+=this.scroller.scrollLeft),n._grid.rows.frozen||(t+=this.scroller.scrollTop),i=this._rectangle(n,o),Math.abs(i.right-e)<8&&Math.abs(i.bottom-t)<8)},objectAt:function(e,t){var n,i,o,r,s,a,c=this._sheet._grid;return 0>e||0>t||e>this.scroller.clientWidth||t>this.scroller.clientHeight?n={type:"outside"}:c._headerWidth>e&&c._headerHeight>t?n={type:"topcorner"}:(i=this.paneAt(e,t),o=i._grid.rows.index(t,this.scroller.scrollTop),r=i._grid.columns.index(e,this.scroller.scrollLeft),s="cell",a=new l(o,r),this.isAutoFill(e,t,i)?s="autofill":this.isFilterIcon(e,t,i,a)?s="filtericon":c._headerWidth>e?(a=new l(o,-(1/0)),s=this.isRowResizer(t,i,a)?"rowresizehandle":"rowheader"):c._headerHeight>t&&(a=new l(-(1/0),r),s=this.isColumnResizer(e,i,a)?"columnresizehandle":"columnheader"),n={type:s,ref:a}),n.pane=i,n.x=e,n.y=t,n},paneAt:function(e,t){return this.panes.filter(function(n){var i=n._grid;return s(t,i.top,i.bottom)&&s(e,i.left,i.right)})[0]},containingPane:function(e){return this.panes.filter(function(t){return t._grid.contains(e)?!0:!1})[0]},cellRectangle:function(e){var t=this.containingPane(e)._grid,n=this._sheet._grid.rectangle(e);return n.offset(t.headerWidth-this.scroller.scrollLeft,t.headerHeight-this.scroller.scrollTop)},refresh:function(e){var t,n,i=this._sheet;this.tabstrip&&this.tabstrip.refreshTools(i.range(i.activeCell())),e.sheetSelection&&this.sheetsbar&&this.sheetsbar.renderSheets(this._workbook.sheets(),this._workbook.sheetIndex(this._sheet)),this._resize(),this.viewSize[0].style.height=i._grid.totalHeight()+"px",this.viewSize[0].style.width=i._grid.totalWidth()+"px",e.layout&&(t=i.frozenColumns(),n=i.frozenRows(),this.panes=[this._pane(n,t)],t>0&&this.panes.push(this._pane(n,0,null,t)),n>0&&this.panes.push(this._pane(0,t,n,null)),n>0&&t>0&&this.panes.push(this._pane(0,0,n,t))),e.filter&&this._destroyFilterMenu(),e.activeCell&&(this._focus=i.activeCell().toRangeRef())},createFilterMenu:function(t){var n,i,o,r;return this._filterMenu&&this._filterMenu.options.column==t?this._filterMenu:(n=this._sheet,i=n.filter().ref,o=new e.spreadsheet.Range(i,n),r=new e.spreadsheet.FilterMenu({column:t,range:o}),this._destroyFilterMenu(),this._filterMenu=r,r)},selectClipBoardContents:function(){this.clipboard.focus(),t(this.clipboard[0])},scrollIntoView:function(e){var t=!1,n=this.containingPane(e)._grid,i=n.scrollBoundaries(e),o=this.scroller,r=n.rows.frozen?0:o.scrollTop,s=n.columns.frozen?0:o.scrollLeft;return r>i.top&&(t=!0,o.scrollTop=i.scrollTop),i.bottom>r&&(t=!0,o.scrollTop=i.scrollBottom),s>i.left&&(t=!0,o.scrollLeft=i.scrollLeft),i.right>s&&(t=!0,o.scrollLeft=i.scrollRight),t},openDialog:function(t,n){var i=this._sheet,o=i.activeCell(),r=new e.spreadsheet.Range(o,i),s=e.spreadsheet.dialogs.create(t,n);return s?(s.bind("action",this._executeCommand.bind(this)),this._dialogs.push(s),s.open(r),s):void 0},showError:function(e){var t=h.errors;this.openDialog("message",{title:e.title||"Error",text:e.type?t[e.type]:e.body})},destroy:function(){this._dialogs.forEach(function(e){e.destroy()}),this.cellContextMenu.destroy(),this.rowHeaderContextMenu.destroy(),this.colHeaderContextMenu.destroy(),this.tabstrip&&this.tabstrip.destroy(),this._destroyFilterMenu()},_destroyFilterMenu:function(){this._filterMenu&&(this._filterMenu.destroy(),this._filterMenu=void 0,this._filterMenuColumn=void 0)},render:function(){var t,n,i,o,r,s,a,l;this.element.is(":visible")&&(t=this._sheet,n=t.focus(),n&&this.scrollIntoView(n)||(i=t._grid,o=this.scroller.scrollTop,r=this.scroller.scrollLeft,0>o&&(o=0),0>r&&(r=0),s=this.panes.map(function(e){return e.render(r,o)},this),a=[],a=Array.prototype.concat.apply(a,s),l=e.dom.element("div",{style:{width:i._headerWidth+"px",height:i._headerHeight+"px"},className:_.classNames.topCorner}),a.push(l),t.resizeHandlePosition()&&t.resizeHintPosition()&&a.push(this.renderResizeHint()),this.tree.render(a),this.editor.isActive()?this.editor.toggleTooltip(this.activeCellRectangle()):t.selectionInProgress()||t.resizingInProgress()||t.isInEditMode()||this.renderClipboardContents()))},renderResizeHint:function(){var t,n,i=this._sheet,o=i.resizeHandlePosition(),r=o.col!==-(1/0);
|
||
return t=r?{height:this.scroller.clientHeight+"px",width:u+"px",left:i.resizeHintPosition().x+"px"}:{height:u+"px",width:this.scroller.clientWidth+"px",top:i.resizeHintPosition().y+"px"},n=b.classNames,e.dom.element("div",{className:n.resizeHint+(r?"":" "+n.resizeHintVertical),style:t},[e.dom.element("div",{className:n.resizeHintHandle}),e.dom.element("div",{className:n.resizeHintMarker})])},renderClipboardContents:function(){var e,t,n,i,o=this._sheet,s=o._grid,a=o.select(),c=this._workbook.clipboard().canCopy();return c.canCopy===!1&&c.multiSelection?(this.clipboardContents.render([]),void this.selectClipBoardContents()):(a=o.trim(a),e=new f,t=s.rangeDimensions(a),t.rows.forEach(function(t){e.addRow(t)}),t.columns.forEach(function(t){e.addColumn(t)}),n={},i={},o.forEachMergedCell(a,function(e){var t=e.topLeft;s.forEach(e,function(o){t.eq(o)?n[o.print()]=e:i[o.print()]=!0})}),o.forEach(a,function(t,o,s){var c,u,d=new l(t,o).print();i[d]||(c=r(e,t-a.topLeft.row,s),u=n[d],u&&(c.attr.colspan=u.width(),c.attr.rowspan=u.height()))}),this.clipboardContents.render([e.toDomTree(0,0,"kendo-clipboard-"+this._workbook.clipboard()._uid)]),void this.selectClipBoardContents())},_pane:function(e,t,n,i){var o=new b(this._sheet,this._sheet._grid.pane({row:e,column:t,rowCount:n,columnCount:i}));return o.refresh(this.scroller.clientWidth,this.scroller.clientHeight),o}}),w={rowHeader:"k-spreadsheet-row-header",columnHeader:"k-spreadsheet-column-header",pane:"k-spreadsheet-pane",data:"k-spreadsheet-data",mergedCell:"k-spreadsheet-merged-cell",mergedCellsWrapper:"k-merged-cells-wrapper",activeCell:"k-spreadsheet-active-cell",selection:"k-spreadsheet-selection",selectionWrapper:"k-selection-wrapper",autoFillWrapper:"k-auto-fill-wrapper",single:"k-single",top:"k-top",right:"k-right",bottom:"k-bottom",left:"k-left",resizeHandle:"k-resize-handle",resizeHint:"k-resize-hint",resizeHintHandle:"k-resize-hint-handle",resizeHintMarker:"k-resize-hint-marker",resizeHintVertical:"k-resize-hint-vertical",selectionHighlight:"k-spreadsheet-selection-highlight",series:["k-series-a","k-series-b","k-series-c","k-series-d","k-series-e","k-series-f"]},b=e.Class.extend({init:function(e,t){this._sheet=e,this._grid=t},refresh:function(e,t){this._grid.refresh(e,t)},isVisible:function(e,t,n){return this._grid.view(e,t).ref.intersects(n)},render:function(t,n){var i,o,r,s,a,l=b.classNames,c=this._sheet,u=this._grid,d=u.view(t,n);return this._currentView=d,this._selectedHeaders=c.selectedHeaders(),i=[],i.push(this.renderData()),i.push(this.renderMergedCells()),i.push(this.renderSelection()),i.push(this.renderAutoFill()),i.push(this.renderEditorSelection()),i.push(this.renderFilterHeaders()),u.hasRowHeader&&(o=new f,o.addColumn(u.headerWidth),d.rows.values.forEach(function(e){o.addRow(e)}),c.forEach(d.ref.leftColumn(),function(e){var t=e+1;o.addCell(e-d.ref.topLeft.row,t,{},this.headerClassName(e,"row"))}.bind(this)),i.push(o.toDomTree(0,d.rowOffset,l.rowHeader))),u.hasColumnHeader&&(r=new f,d.columns.values.forEach(function(e){r.addColumn(e)}),r.addRow(u.headerHeight),c.forEach(d.ref.topRow(),function(t,n){var i=e.spreadsheet.Ref.display(null,1/0,n);r.addCell(0,i,{},this.headerClassName(n,"col"))}.bind(this)),i.push(r.toDomTree(d.columnOffset,0,l.columnHeader))),c.resizeHandlePosition()&&(u.hasColumnHeader||u.hasRowHeader)&&(s=c._grid.normalize(c.resizeHandlePosition()),d.ref.intersects(s)&&(c.resizeHintPosition()||i.push(this.renderResizeHandler()))),a=[l.pane],u.hasColumnHeader&&a.push(l.top),u.hasRowHeader&&a.push(l.left),e.dom.element("div",{style:u.style,className:a.join(" ")},i)},headerClassName:function(e,t){var n,i,o,r=this._selectedHeaders;return"row"===t?(n=r.rows[e],i=r.allRows):(n=r.cols[e],i=r.allCols),o=n||(r.all?"full":i?"partial":"none"),o&&(o="k-selection-"+o),o},renderData:function(){var e=new f,t=this._currentView;return t.rows.values.forEach(function(t){e.addRow(t)}),t.columns.values.forEach(function(t){e.addColumn(t)}),this._sheet.forEach(t.ref,function(n,i,o){r(e,n-t.ref.topLeft.row,o)}),e.toDomTree(t.columnOffset,t.rowOffset,b.classNames.data)},renderMergedCells:function(){var t=b.classNames,n=[],i=this._sheet;return i.forEachMergedCell(function(e){this._addTable(n,e,t.mergedCell)}.bind(this)),e.dom.element("div",{className:t.mergedCellsWrapper},n)},renderResizeHandler:function(){var t,n=this._sheet,i=n.resizeHandlePosition(),o=this._rectangle(i);return t=i.col!==-(1/0)?{height:this._grid.headerHeight+"px",width:u+"px",left:o.right-u/2+"px"}:{height:u+"px",width:this._grid.headerWidth+"px",top:o.bottom-u/2+"px"},e.dom.element("div",{className:b.classNames.resizeHandle,style:t})},filterIconRect:function(t){var n=16,i=3;return new e.spreadsheet.Rectangle(t.right-n-i,t.top+i,n,n)},renderFilterHeaders:function(){function t(t){return e.dom.element("span",{className:r.icon+" "+t})}function n(n,i,o){var r,s={left:i.left+"px",top:i.top+"px"},l=a&&a.columns.some(function(e){return e.index===o}),c=n.filterButton;return l&&(c+=" "+n.filterButtonActive),r=e.dom.element("span",{className:c,style:s,"data-column":o},[t(n.iconFilterDefault)])}var i=this._sheet,o=[],r=_.classNames,s=0,a=i.filter();return a&&this._addDiv(o,a.ref,r.filterRange),i.forEachFilterHeader(this._currentView.ref,function(e){var t=this._rectangle(e),i=this.filterIconRect(t),a=n(r,i,s);s++,o.push(a)}.bind(this)),e.dom.element("div",{className:r.filterHeadersWrapper},o)},renderEditorSelection:function(){var t=b.classNames,n=this._sheet,i=[];return n._formulaSelections.forEach(function(n){var o=n.ref;o!==e.spreadsheet.NULLREF&&this._addDiv(i,o,t.selectionHighlight+" "+n.colorClass)}.bind(this)),e.dom.element("div",{className:t.selectionWrapper},i)},renderSelection:function(){var t=b.classNames,n=[],i=[t.activeCell],o=[t.selection],r=this._sheet,s=r.activeCell().toRangeRef(),a=this._activeFormulaColor(),l=r.select();return i=i.concat(a,this._directionClasses(s)),o=o.concat(a),r.singleCellSelection()&&i.push(t.single),1===l.size()&&o.push("k-single-selection"),this._sheet.autoFillPunch()&&o.push("k-dim-auto-fill-handle"),l.forEach(function(t){t!==e.spreadsheet.NULLREF&&this._addDiv(n,t,o.join(" "))}.bind(this)),this._addTable(n,s,i.join(" ")),e.dom.element("div",{className:t.selectionWrapper},n)},renderAutoFill:function(){var t,n,i,o,r,s,a=[];if(this._sheet.autoFillInProgress())if(t=this._sheet.autoFillRef(),n=this._sheet.autoFillPunch(),i=this._sheet._autoFillDirection,this._addDiv(a,t,"k-auto-fill"),n)this._addDiv(a,n,"k-auto-fill-punch");else if(void 0!==i){switch(i){case 0:o=t.bottomRight,r="k-auto-fill-br-hint";break;case 1:o=t.bottomRight,r="k-auto-fill-br-hint";break;case 2:o=new l(t.topLeft.row,t.bottomRight.col),r="k-auto-fill-tr-hint";break;case 3:o=new l(t.bottomRight.row,t.topLeft.col),r="k-auto-fill-bl-hint"}s=e.dom.element("span",{className:"k-tooltip"},[e.dom.text(this._sheet._autoFillHint)]),this._addDiv(a,o,r).children.push(s)}return e.dom.element("div",{className:b.classNames.autoFillWrapper},a)},_addDiv:function(e,t,n){var i,o=this._currentView;return o.ref.intersects(t)&&(i=this._rectangle(t).resize(1,1).toDiv(n),e.push(i)),i},_addTable:function(e,t,n){var i=this._sheet,o=this._currentView;o.ref.intersects(t)&&i.forEach(t.collapse(),function(i,o,s){var a=this._rectangle(t),l=new f;l.addColumn(a.width),l.addRow(a.height),r(l,0,s),e.push(l.toDomTree(a.left,a.top,n))}.bind(this))},_activeFormulaColor:function(){var e,t=[];return this._sheet.isInEditMode()&&(e=this._sheet._formulaSelections.filter(function(e){return e.active&&"ref"==e.type})[0],e&&t.push(e.colorClass)),t},_directionClasses:function(e){var t=[],n=b.classNames,i=this._currentView.ref;return e.move(0,-1).intersects(i)||t.push(n.left),e.move(-1,0).intersects(i)||t.push(n.top),e.move(0,1).intersects(i)||t.push(n.right),e.move(1,0).intersects(i)||t.push(n.bottom),t},_rectangle:function(e){return this._grid.boundingRectangle(e.toRangeRef()).offset(-this._currentView.mergedCellLeft,-this._currentView.mergedCellTop)}}),e.spreadsheet.View=_,e.spreadsheet.Pane=b,e.spreadsheet.addCell=r,a.extend(!0,_,{classNames:d}),a.extend(!0,b,{classNames:w}))}(window.kendo)}(),function(){!function(e){var t,n,i,o,r,s;e.support.browser.msie&&9>e.support.browser.version||(t=e.spreadsheet.CellRef,n=e.spreadsheet.RangeRef,i=e.spreadsheet.UnionRef,o=e.Class.extend({init:function(e,t,n,i){this.left=e,this.width=n,this.right=e+n,this.top=t,this.height=i,this.bottom=t+i},offset:function(e,t){return new o(this.left+e,this.top+t,this.width,this.height)},resize:function(e,t){return new o(this.left,this.top,this.width+e,this.height+t)},intersects:function(e,t){return e>this.left&&this.left+this.width>e&&t>this.top&&this.top+this.height>t},toDiv:function(t){return e.dom.element("div",{className:t,style:{width:this.width+"px",height:this.height+"px",top:this.top+"px",left:this.left+"px"}})}}),r=e.Class.extend({init:function(e,t,n,i,o,r){this.rowCount=n,this.columnCount=i,this._columns=t,this._rows=e,this._headerHeight=o,this._headerWidth=r},isAxis:function(e){var t,n;return e=e.toRangeRef(),t=e.topLeft,n=e.bottomRight,0===t.row&&n.row===this.rowCount-1||0===t.col&&n.col===this.columnCount-1},width:function(e,t){return this._columns.sum(e,t)},height:function(e,t){return this._rows.sum(e,t)},totalHeight:function(){return this._rows.total+this._headerHeight},totalWidth:function(){return this._columns.total+this._headerWidth},index:function(e,t){return t*this.rowCount+e},cellRef:function(e){return new t(e%this.rowCount,e/this.rowCount>>0)},rowRef:function(e){return new n(new t(e,0),new t(e,this.columnCount-1))},colRef:function(e){return new n(new t(0,e),new t(this.rowCount-1,e))},cellRefIndex:function(e){return this.index(e.row,e.col)},normalize:function(e){if(e instanceof n)return new n(this.normalize(e.topLeft),this.normalize(e.bottomRight)).setSheet(e.sheet,e.hasSheet());if(e instanceof i)return e.map(function(e){return this.normalize(e)},this);var t=e.clone();return t.col=Math.max(0,Math.min(this.columnCount-1,e.col)),t.row=Math.max(0,Math.min(this.rowCount-1,e.row)),t},rectangle:function(e){var t=this.normalize(e.topLeft),n=this.normalize(e.bottomRight);return new o(this.width(0,t.col-1),this.height(0,t.row-1),this.width(t.col,n.col),this.height(t.row,n.row))},pane:function(t){return new s(new e.spreadsheet.PaneAxis(this._rows,t.row,t.rowCount,this._headerHeight),new e.spreadsheet.PaneAxis(this._columns,t.column,t.columnCount,this._headerWidth),this)},rangeDimensions:function(e){return{rows:this._rows.values.iterator(e.topLeft.row,e.bottomRight.row),columns:this._columns.values.iterator(e.topLeft.col,e.bottomRight.col)}},forEach:function(e,n){var i,o,r=this.normalize(e.topLeft),s=this.normalize(e.bottomRight);for(i=r.col;s.col>=i;i++)for(o=r.row;s.row>=o;o++)n(new t(o,i))},trim:function(e,i){var o,r,s,a,l,c=e.topLeft,u=e.bottomRight,d=c.row,h=c.col;for(o=c.col;u.col>=o;o++)r=this.index(c.row,o),s=this.index(u.row,o),a=i.tree.intersecting(r,s),a.length&&(l=this.cellRef(a[a.length-1].end),d=Math.max(d,l.row),h=o);return new n(e.topLeft,new t(Math.min(d,e.bottomRight.row),h))}}),s=e.Class.extend({init:function(e,t,n){this.rows=e,this.columns=t,this._grid=n,this.headerHeight=e.headerSize,this.headerWidth=t.headerSize,this.hasRowHeader=t.hasHeader,this.hasColumnHeader=e.hasHeader},refresh:function(e,t){var n,i;this.columns.viewSize(e),this.rows.viewSize(t),n=this.columns.paneSegment(),i=this.rows.paneSegment(),this.left=n.offset,this.top=i.offset,this.right=n.offset+n.length,this.bottom=i.offset+i.length,this.style={top:i.offset+"px",left:n.offset+"px",height:i.length+"px",width:n.length+"px"}},view:function(e,i){var o=this.rows.visible(i),r=this.columns.visible(e);return{rows:o,columns:r,rowOffset:o.offset,columnOffset:r.offset,mergedCellLeft:r.start,mergedCellTop:o.start,ref:new n(new t(o.values.start,r.values.start),new t(o.values.end,r.values.end))}},contains:function(e){return this.rows.contains(e.topLeft.row,e.bottomRight.row)&&this.columns.contains(e.topLeft.col,e.bottomRight.col)},index:function(e,t){return this._grid.index(e,t)},boundingRectangle:function(e){return this._grid.rectangle(e)},cellRefIndex:function(e){return this._grid.cellRefIndex(e)},scrollBoundaries:function(e){var t=this.boundingRectangle(e),n={top:Math.max(0,t.top-this.top+(this.hasColumnHeader?0:this.headerHeight)),left:Math.max(0,t.left-this.left+(this.hasRowHeader?0:this.headerWidth)),right:t.right-this.columns._viewSize+this.headerWidth,bottom:t.bottom-this.rows._viewSize+this.headerHeight},i=this.columns.defaultValue/2,o=this.rows.defaultValue/2;return n.scrollTop=n.top-o,n.scrollBottom=n.bottom+o,n.scrollLeft=n.left-i,n.scrollRight=n.right+i,n}}),e.spreadsheet.Grid=r,e.spreadsheet.PaneGrid=s,e.spreadsheet.Rectangle=o)}(kendo)}(),function(){!function(e){var t,n;e.support.browser.msie&&9>e.support.browser.version||(t=e.Class.extend({init:function(t,n){this._value=n,this._count=t,this.values=new e.spreadsheet.RangeList(0,t-1,n),this._hidden=new e.spreadsheet.RangeList(0,t-1,0),this.scrollBarSize=e.support.scrollbar(),this._refresh()},toJSON:function(e,t){var n,i,o,r,s=[],a=this.values.iterator(0,this._count-1);for(n=0;this._count>n;n++)i=a.at(n),i!==this._value&&(o=t[n],void 0===o&&(o=s.length,r={index:n},r[e]=i,s.push(r),t[n]=o));return s},fromJSON:function(e,t){var n,i,o;for(n=0;t.length>n;n++)i=t[n][e],o=t[n].index,void 0===o&&(o=n),this.value(o,o,i)},hide:function(e){var t=this.value(e,e);this._hidden.value(e,e,t),this.value(e,e,0)},hidden:function(e){return 0!==this._hidden.value(e,e)},includesHidden:function(e,t){return this._hidden.intersecting(e,t).length>1},nextVisible:function(e,t){var n,i=this._count-1;return e===i?t?e+1:e:(e+=1,n=this._hidden.intersecting(e,e)[0],0!==n.value?n.end===i?e-1:n.end+1:e)},nextPage:function(e,t){return this.index(this.sum(0,e-1)+t)},prevPage:function(e,t){return this.index(this.sum(0,e)-t)},firstVisible:function(){var e=this._hidden.first();return 0===e.value?0:e.end+1},lastVisible:function(){var e=this._hidden.last();return 0===e.value?this._count-1:e.start-1},prevVisible:function(e,t){if(0===e)return t?-1:0;e-=1;var n=this._hidden.intersecting(e,e)[0];return 0!==n.value?0===n.start?e+1:n.start-1:e},unhide:function(e){if(this.hidden(e)){var t=this._hidden.value(e,e);this._hidden.value(e,e,0),this.value(e,e,t)}},value:function(e,t,n){return void 0===n?this.values.iterator(e,t).at(0):(this.values.value(e,t,n),void this._refresh())},sum:function(e,t){var n,i=this.values.iterator(e,t),o=0;for(n=e;t>=n;n++)o+=i.at(n);return o},visible:function(e,t){var n,i,o,r,s,a,l=null,c=null,u=!1;return t>=this.total+this.scrollBarSize&&(u=!0),n=this._pixelValues.intersecting(e,t),l=n[0],c=n[n.length-1],i=e-l.start,o=(i/l.value.value>>0)+l.value.start,r=i-(o-l.value.start)*l.value.value,s=t-c.start,a=(s/c.value.value>>0)+c.value.start,a>c.value.end&&(a=c.value.end),u&&(r+=c.value.value-(s-(a-c.value.start)*c.value.value)),r=Math.min(-r,0),{values:this.values.iterator(o,a),offset:r}},index:function(e){for(var t=0,n=this.values.iterator(0,this._count-1),i=n.at(0);e>i&&this._count-1>t;)i+=n.at(++t);return t},_refresh:function(){var t=0;this._pixelValues=this.values.map(function(n){var i,o=t;return t+=(n.end-n.start+1)*n.value,i=t-1,new e.spreadsheet.ValueRange(o,i,n)}),this.total=t},getState:function(){return{values:this.values.getState(),hidden:this._hidden.getState()}},setState:function(e){this.values.setState(e.values),this._hidden.setState(e.hidden),this._refresh()}}),n=e.Class.extend({init:function(e,t,n,i){this._axis=e,this._start=t,this._count=n,this.hasHeader=0===t,this.headerSize=i,this.defaultValue=e._value,this.frozen=n>0},viewSize:function(e){this._viewSize=e},sum:function(e,t){return this._axis.sum(e,t-1)},start:function(){return this.sum(0,this._start)},size:function(){return this.sum(this._start,this._start+this._count)},index:function(e,t){return this._axis.index(e+(this.frozen?0:t)-this.headerSize)},paneSegment:function(){var e,t=this.start();return this.hasHeader||(t+=this.headerSize),this.frozen?(e=this.size(),this.hasHeader?e+=this.headerSize:e-=this.headerSize):e=this._viewSize-t,{offset:t,length:e}},visible:function(e){var t,n,i=this.start();return this.frozen?(t=this.size(),this.hasHeader||(t-=this.headerSize)):(t=this._viewSize-i-this.headerSize,i+=e),n=this._axis.visible(i,i+t-1),this.frozen&&(n.offset=0),n.start=i,this.hasHeader&&(n.offset+=this.headerSize,n.start-=this.headerSize),n},contains:function(e,t){return this.frozen?e>this._start+this._count?!1:this._start>t?!1:!0:t>=this._start}}),e.spreadsheet.Axis=t,e.spreadsheet.PaneAxis=n)}(kendo)}(),function(){!function(e){function t(e){var t=e.getMonth()+1;return t>=1&&3>=t?1:t>=4&&6>=t?2:t>=7&&9>=t?3:4}function n(t,n){if(t instanceof Date){var i=e.date.today();return i.setFullYear(i.getFullYear()+n),i.getFullYear()===t.getFullYear()}return!1}function i(t,n){if(t instanceof Date){var i=e.date.firstDayOfMonth(e.date.today());return i.setMonth(i.getMonth()+n,1),i.getTime()===e.date.firstDayOfMonth(t).getTime()}return!1}function o(t,n){var i,o;return n instanceof Date?(i=e.date.dayOfWeek(e.date.getDate(t),1),o=e.date.dayOfWeek(e.date.getDate(n),1),i.getTime()===o.getTime()):!1}if(!(e.support.browser.msie&&9>e.support.browser.version)){var r=e.spreadsheet.Filter=e.Class.extend({prepare:function(){},value:function(e){return e.value},matches:function(){throw Error("The 'matches' method is not implemented.")},toJSON:function(){throw Error("The 'toJSON' method is not implemented.")}});r.create=function(t){var n,i=t.filter;if(!i)throw Error("Filter type not specified.");if(n=e.spreadsheet[i.charAt(0).toUpperCase()+i.substring(1)+"Filter"],!n)throw Error("Filter type not recognized.");return new n(t)},e.spreadsheet.ValueFilter=r.extend({_values:[],_dates:[],_blanks:!1,init:function(e){void 0!==e.values&&(this._values=e.values),void 0!==e.blanks&&(this._blanks=e.blanks),void 0!==e.dates&&(this._dates=e.dates)},value:function(t){var n,i=t.value;return this._dates.length>0&&t.format&&"number"==typeof i&&(n=e.spreadsheet.formatting.type(i,t.format),"date"===n&&(i=e.spreadsheet.numberToDate(i))),i},matches:function(e){return null===e||void 0===e?this._blanks:e instanceof Date?this._dates.some(function(t){return!(t.year!==e.getFullYear()||void 0!==t.month&&t.month!==e.getMonth()||void 0!==t.day&&t.day!==e.getDate()||void 0!==t.hours&&t.hours!==e.getHours()||void 0!==t.minutes&&t.minutes!==e.getMinutes()||void 0!==t.seconds&&t.seconds!==e.getSeconds())}):this._values.indexOf(e)>=0},toJSON:function(){return{filter:"value",values:this._values.slice(0)}}}),e.spreadsheet.CustomFilter=r.extend({_logic:"and",init:function(t){if(void 0!==t.logic&&(this._logic=t.logic),void 0===t.criteria)throw Error("Must specify criteria.");this._criteria=t.criteria;var n=e.data.Query.filterExpr({logic:this._logic,filters:this._criteria}).expression;this._matches=Function("d","return "+n)},matches:function(e){return null===e?!1:this._matches(e)},value:function(t){var n,i=t.value,o=this._criteria[0].type||typeof this._criteria[0].value,r=typeof i;return t.format&&(r=e.spreadsheet.formatting.type(i,t.format)),r!=o?"string"==o&&(t.format&&(n=e.spreadsheet.formatting.format(i,t.format),i=n.children[0].nodeValue),i+=""):"date"==r&&(i=e.spreadsheet.numberToDate(i)),i},toJSON:function(){return{filter:"custom",logic:this._logic,criteria:this._criteria}}}),e.spreadsheet.TopFilter=r.extend({init:function(e){this._type=e.type,this._value=e.value,this._values=[]},prepare:function(e){var t,n=e.map(this.value).sort().filter(function(e,t,n){return 0===t||e!==n[t-1]});n.sort("topNumber"===this._type||"topPercent"==this._type?function(e,t){return t-e}:function(e,t){return e-t}),t=this._value,("topPercent"===this._type||"bottomPercent"===this._type)&&(t=n.length*t/100>>0),this._values=n.slice(0,t)},matches:function(e){return this._values.indexOf(e)>=0},toJSON:function(){return{filter:"top",type:this._type,value:this._value}}}),e.spreadsheet.DynamicFilter=r.extend({init:function(e){if(this._type=e.type,this._predicate=this[e.type],"function"!=typeof this._predicate)throw Error("DynamicFilter type '"+e.type+"' not recognized.")},value:function(t){var n,i=t.value;return t.format&&(n=e.spreadsheet.formatting.type(i,t.format),"date"===n&&(i=e.spreadsheet.numberToDate(i))),i},prepare:function(e){var t,n,i=0,o=0;for(t=0;e.length>t;t++)n=this.value(e[t]),"number"==typeof n&&(i+=n,o++);this._average=o>0?i/o:0},matches:function(e){return this._predicate(e)},aboveAverage:function(t){return t instanceof Date&&(t=e.spreadsheet.dateToNumber(t)),"number"!=typeof t?!1:t>this._average},belowAverage:function(t){return t instanceof Date&&(t=e.spreadsheet.dateToNumber(t)),"number"!=typeof t?!1:this._average>t},tomorrow:function(t){if(t instanceof Date){var n=e.date.addDays(e.date.today(),1);return e.date.getDate(t).getTime()===n.getTime()}return!1},today:function(t){return t instanceof Date?e.date.isToday(t):!1},yesterday:function(t){if(t instanceof Date){var n=e.date.addDays(e.date.today(),-1);return e.date.getDate(t).getTime()===n.getTime()}return!1},nextWeek:function(t){return o(e.date.addDays(e.date.today(),7),t)},thisWeek:function(t){return o(e.date.today(),t)},lastWeek:function(t){return o(e.date.addDays(e.date.today(),-7),t)},nextMonth:function(e){return i(e,1)},thisMonth:function(e){return i(e,0)},lastMonth:function(e){return i(e,-1)},nextQuarter:function(n){var i,o;return n instanceof Date?(i=e.date.today(),o=t(n)-t(i),1===o&&i.getFullYear()===n.getFullYear()||-3==o&&i.getFullYear()+1===n.getFullYear()):!1},thisQuarter:function(n){var i,o;return n instanceof Date?(i=e.date.today(),o=t(n)-t(i),0===o&&i.getFullYear()===n.getFullYear()):!1},lastQuarter:function(n){var i,o;return n instanceof Date?(i=e.date.today(),o=t(i)-t(n),1===o&&i.getFullYear()===n.getFullYear()||-3==o&&i.getFullYear()-1===n.getFullYear()):!1},nextYear:function(e){return n(e,1)},thisYear:function(e){return n(e,0)},lastYear:function(e){return n(e,-1)},yearToDate:function(t){if(t instanceof Date){var n=e.date.today();return t.getFullYear()===n.getFullYear()&&n>=t}return!1},toJSON:function(){return{filter:"dynamic",type:this._type}}}),[1,2,3,4].forEach(function(n){e.spreadsheet.DynamicFilter.prototype["quarter"+n]=function(e){return e instanceof Date?t(e)===n:!1}}),e.cultures["en-US"].calendar.months.names.forEach(function(t,n){e.spreadsheet.DynamicFilter.prototype[t.toLowerCase()]=function(e){return e instanceof Date?e.getMonth()===n:!1}})}}(kendo)}(),function(){!function(e){if(!(e.support.browser.msie&&9>e.support.browser.version)){var t=e.Class.extend({init:function(e,t){this._grid=e,this._lists=t},indices:function(e,n,i,o){var r=t.ascendingComparer;return i===!1&&(r=t.descendingComparer),n.sortedIndices(this._grid.cellRefIndex(e.topLeft),this._grid.cellRefIndex(e.bottomRight),r,o)},sortBy:function(e,t,n,i,o){var r,s,a,l,c=this.indices(e.toColumn(t),n,i,o);for(r=e.topLeft.col;e.bottomRight.col>=r;r++)for(s=this._grid.index(e.topLeft.row,r),a=this._grid.index(e.bottomRight.row,r),l=0;this._lists.length>l;l++)s<this._lists[l].lastRangeStart()&&this._lists[l].sort(s,a,c);return c}});t.ascendingComparer=function(t,n){var i,o;if(null===t&&null===n)return 0;if(null===t)return 1;if(null===n)return-1;if(i=typeof t,o=typeof n,"number"===i)return"number"===o?t-n:-1;if("string"===i)switch(o){case"number":return 1;case"string":return t.localeCompare(n);default:return-1}if("boolean"===i)switch(o){case"number":return 1;case"string":return 1;case"boolean":return t-n;default:return-1}if(t instanceof e.spreadsheet.calc.runtime.CalcError)return n instanceof e.spreadsheet.calc.runtime.CalcError?0:1;throw Error("Cannot compare "+t+" and "+n)},t.descendingComparer=function(e,n){return null===e&&null===n?0:null===e?1:null===n?-1:t.ascendingComparer(n,e)},e.spreadsheet.Sorter=t}}(kendo)}(),function(){"use strict";function e(e){e=e.toUpperCase();for(var t=0,n=0;e.length>n;++n)t=26*t+e.charCodeAt(n)-64;return t-1}function t(e){return parseFloat(e)-1}function n(i,o){if("#sheet"==i.toLowerCase())return d.SHEETREF;if(i.indexOf(",")>=0)return new d.UnionRef(i.split(/\s*,\s*/g).map(n));var r;if(r=/^(([A-Z0-9]+)!)?\$?([A-Z]+)\$?([0-9]+)$/i.exec(i))return new d.CellRef(t(r[4]),e(r[3]),0).setSheet(r[2],!!r[2]);if(r=/^(([A-Z0-9]+)!)?\$?([A-Z]+)\$?([0-9]+):(([A-Z0-9]+)!)?\$?([A-Z]+)\$?([0-9]+)$/i.exec(i))return new d.RangeRef(new d.CellRef(t(r[4]),e(r[3]),0).setSheet(r[2],!!r[2]),new d.CellRef(t(r[8]),e(r[7]),0).setSheet(r[6],!!r[6])).setSheet(r[2],!!r[2]);if(r=/^(([A-Z0-9]+)!)?\$?([A-Z]+):(([A-Z0-9]+)!)?\$?([A-Z]+)$/i.exec(i))return new d.RangeRef(new d.CellRef(-(1/0),e(r[3]),0).setSheet(r[2],!!r[2]),new d.CellRef(+(1/0),e(r[6]),0).setSheet(r[5],!!r[5])).setSheet(r[2],!!r[2]);if(r=/^(([A-Z0-9]+)!)?\$?([0-9]+):(([A-Z0-9]+)!)?\$?([0-9]+)$/i.exec(i))return new d.RangeRef(new d.CellRef(t(r[3]),-(1/0),0).setSheet(r[2],!!r[2]),new d.CellRef(t(r[6]),+(1/0),0).setSheet(r[5],!!r[5])).setSheet(r[2],!!r[2]);if(!o)throw Error("Cannot parse reference: "+i)}function i(n,i,o,r){function s(e){return e.index=D.length,D.push(e),e}function u(e,t){if(h(e,t))return r.next();var n=r.peek();r.croak(n?"Expected "+e+" «"+t+"» but found "+n.type+" «"+n.value+"»":"Expected "+e+" «"+t+"»")}function h(e,t){var n=r.peek();return null==n||null!=e&&n.type!==e||null!=t&&n.value!==t?null:n}function f(e){return C(y(w(e)),0,e)}function g(r){var s,a,l,c,u,h;return(s=/^((.+)!)?(\$)?([A-Z]+)(\$)?([0-9]+)$/i.exec(r))?(a=s[1]&&s[2],l=s[3]?0:1,c=e(s[4]),u=s[5]?0:2,h=t(s[6]),l&&(c-=o),u&&(h-=i),new d.CellRef(h,c,l|u).setSheet(a||n,!!a)):(s=/^((.*)!)?(.+)$/i.exec(r))?(a=s[1]&&s[2],r=s[3],new d.NameRef(r).setSheet(a||n,!!a)):void 0}function _(e,t){if("TRUE"==e.upper||"FALSE"==e.upper)return"TRUE"==e.upper?m:v;var n=g(e.value);return n?(t&&s(n),n):e}function w(e){var t=S()||x();return t||(h("punc","(")?(r.next(),t=f(!0),u("punc",")")):h("num")||h("str")?t=r.next():h("sym")?t=_(r.next(),!0):h("op","+")||h("op","-")?t={type:"prefix",op:r.next().value,exp:f(e)}:h("punc","{")?(r.next(),t=b()):r.croak(r.peek()?"Parse error":"Incomplete expression")),k(t)}function b(){for(var e=[],t=[e],n=!0;!r.eof()&&!h("punc","}");)n?n=!1:h("punc",";")?(t.push(e=[]),r.next()):u("op",","),e.push(f(!1));return u("punc","}"),{type:"matrix",value:t}}function y(e){return h("punc","(")||h("sym")||h("num")?{type:"binary",op:" ",left:e,right:f(!1)}:e}function x(){return r.ahead(2,function(e,t){if("sym"==e.type&&"punc"==t.type&&"("==t.value){e=e.value,r.skip(2);var n=[];if(!h("punc",")"))for(;;)if(h("op",","))n.push({type:"null"}),r.next();else{if(n.push(f(!1)),r.eof()||h("punc",")"))break;u("op",",")}return u("punc",")"),{type:"func",func:e,args:n}}})}function k(e){return h("op","%")?(r.next(),k({type:"postfix",op:"%",exp:e})):e}function C(e,t,n){var i,o,s=h("op");return s&&(n||","!=s.value)&&(i=p[s.value],i>t)?(r.next(),o=C(w(n),i,n),C({type:"binary",op:s.value,left:e,right:o},t,n)):e}function S(){return r.ahead(4,function(e,t,n,i){var o,a;if(c(e,t,n,i)&&(o=T(e,!0),a=T(n,!1),null!=o&&null!=a)){if(!a.hasSheet()||o.sheet.toLowerCase()==a.sheet.toLowerCase())return r.skip(3),s(new d.RangeRef(o,a).setSheet(o.sheet,o.hasSheet()));r.croak("Invalid range")}})}function T(r,s){var a,l,c;return"num"==r.type&&r.value==r.value|0?new d.CellRef(t(r.value)-i,s?-(1/0):+(1/0),2).setSheet(n,!1):(a=_(r),"ref"==a.type?"name"==a.ref?(l=a.name,c="$"==l.charAt(0),c&&(l=l.substr(1)),/^[0-9]+$/.test(l)?new d.CellRef(t(l)-(c?0:i),s?-(1/0):+(1/0),c?0:2).setSheet(a.sheet||n,a.hasSheet()):new d.CellRef(s?-(1/0):+(1/0),e(l)-(c?0:o),c?0:1).setSheet(a.sheet||n,a.hasSheet())):a:void 0)}var D=[];return"string"==typeof r&&(r=a(l(r))),{type:"exp",ast:f(!0),refs:D,sheet:n,row:i,col:o}}function o(e){function t(e,o){switch(e.type){case"num":case"bool":return JSON.stringify(e.value);case"str":return JSON.stringify(JSON.stringify(e.value));case"ref":return"this.refs["+e.index+"].print(row, col)";case"prefix":return i(e.op,o,function(){return JSON.stringify(e.op)+" + "+t(e.exp,p[e.op])});case"postfix":return i(e.op,o,function(){return t(e.exp,p[e.op])+" + "+JSON.stringify(e.op)});case"binary":return i(e.op,o,function(){var i=n(t(e.left,p[e.op]),e.left instanceof d.NameRef&&":"==e.op),o=n(t(e.right,p[e.op]),e.right instanceof d.NameRef&&":"==e.op);return i+" + "+JSON.stringify(e.op)+" + "+o});case"func":return JSON.stringify(e.func+"(")+" + "+(e.args.length>0?e.args.map(function(e){return t(e,0)}).join(" + ', ' + "):"''")+" + ')'";case"matrix":return"'{ ' + "+e.value.map(function(e){return e.map(function(e){return t(e,0)}).join(" + ', ' + ")}).join(" + '; ' + ")+"+ ' }'";case"null":return"''"}throw Error("Cannot make printer for node "+e.type)}function n(e,t){return t?"'(' + "+e+" + ')'":e}function i(e,t,i){var o=t>p[e]||!t&&","==e;return n(i(),o)}return _("function(row, col){return("+t(e.ast,0)+")}")}function r(e,t){function n(e,t){switch(e.type){case"ref":case"num":case"str":case"null":case"bool":return i(e,t);case"prefix":case"postfix":return o(e,t);case"binary":return r(e,t);case"func":return c(e,t);case"lambda":return u(e,t);case"matrix":return d(e.value,t,!0)}throw Error("Cannot CPS "+e.type)}function i(e,t){return t(e)}function o(e,t){return n({type:"func",func:"unary"+e.op,args:[e.exp]},t)}function r(e,t){return n({type:"func",func:"binary"+e.op,args:[e.left,e.right]},t)}function s(e,t,i,o){return n(e,function(e){var r=h(o),s=f("T"),a=f("E");return{type:"func",func:"if",args:[r,e,{type:"lambda",vars:[s],body:n(t||m,function(e){return{type:"call",func:{type:"var",name:s},args:[e]}})},{type:"lambda",vars:[a],body:n(i||v,function(e){return{type:"call",func:{type:"var",name:a},args:[e]}})}]}})}function a(e,t){return 0===e.length?i(m,t):n({type:"func",func:"IF",args:[e[0],{type:"func",func:"AND",args:e.slice(1)},v]},t)}function l(e,t){return 0===e.length?i(v,t):n({type:"func",func:"IF",args:[e[0],m,{type:"func",func:"OR",args:e.slice(1)}]},t)}function c(e,t){switch(e.func.toLowerCase()){case"if":return s(e.args[0],e.args[1],e.args[2],t);case"and":return a(e.args,t);case"or":return l(e.args,t);case"true":return t(m);case"false":return t(v)}return function i(t,o){return o==e.args.length?{type:"func",func:e.func,args:t}:n(e.args[o],function(e){return i(t.concat([e]),o+1)})}([h(t)],0)}function u(e,t){var i=f("K"),o=n(e.body,function(e){return{type:"call",func:{type:"var",value:i},args:[e]}});return t({type:"lambda",vars:[i].concat(e.vars),body:o})}function d(e,t,i){var o=[];return function r(s){return s==e.length?t({type:"matrix",value:o}):(i?d:n)(e[s],function(e){return o[s]=e,r(s+1)})}(0)}function h(e){var t=f("R");return{type:"lambda",vars:[t],body:e({type:"var",name:t})}}function f(e){return e||(e=""),e="_"+e,e+ ++p}var p=0;return n(e,t)}function s(e){function t(e){var i=e.type;if("num"==i)return e.value+"";if("str"==i)return JSON.stringify(e.value);if("return"==i)return"context.resolve("+t(e.value)+")";if("func"==i)return"context.func("+JSON.stringify(e.func)+", "+t(e.args[0])+", "+n(e.args.slice(1))+")";if("call"==i)return t(e.func)+"("+e.args.map(t).join(", ")+")";if("ref"==i)return"refs["+e.index+"]";if("bool"==i)return""+e.value;if("if"==i)return"(context.bool("+t(e.co)+") ? "+t(e.th)+" : "+t(e.el)+")";if("lambda"==i)return"(function("+e.vars.join(", ")+"){ return("+t(e.body)+") })";if("var"==i)return e.name;if("matrix"==i)return n(e.value);if("null"==i)return"null";throw Error("Cannot compile expression "+i)}function n(e){return"[ "+e.map(t).join(", ")+" ]"}var i,s=o(e),a=s.call(e),l=w[a];return l?l.clone(e.sheet,e.row,e.col):(i=t(r(e.ast,function(e){return{type:"return",value:e}})),i=["function(){","var context = this, refs = context.formula.absrefs",i,"}"].join(";\n"),l=new f.Formula(e.refs,_(i),s,e.sheet,e.row,e.col),w[a]=l,l)}function a(e,t){function n(e){return/[0-9]/i.test(e)}function i(e){return/[a-z$_]/i.test(e)||e.toLowerCase()!=e.toUpperCase()}function o(e){return i(e)||n(e)||"!"==e||"."==e}function r(e){return e in p}function s(e){return";(){}[]".indexOf(e)>=0}function a(e){return" \n ".indexOf(e)>=0}function l(){var e=!1,t=x(function(t){return"."==t?e?!1:(e=!0,!0):n(t);
|
||
});return{type:"num",value:parseFloat(t)}}function c(){var t=x(o);return{type:"sym",value:t,upper:t.toUpperCase(),space:a(e.peek())}}function u(){return e.next(),{type:"str",value:e.readEscaped('"')}}function d(){return{type:"op",value:x(function(e,t){return t+e in p})}}function h(){return{type:"punc",value:e.next()}}function f(){if(x(a),e.eof())return null;var o,f=e.peek();return'"'==f?k(u):n(f)?k(l):i(f)?k(c):r(f)?k(d):s(f)?k(h):(o=e.lookingAt(/^#([a-z\/]+)[?!]/i))?k(function(){return e.skip(o),{type:"error",value:o[1]}}):(t||e.croak("Can't handle character: "+f),k(function(){return{type:"error",value:e.next()}}))}function g(){for(;y>=b.length;)b.push(f());return b[y]}function m(){var e=g();return e&&y++,e}function v(e,t){for(var n=y,i=[],o={type:"eof"};e-->0;)i.push(m()||o);return y=n,t.apply(i,i)}function _(e){y+=e}function w(){return null==g()}var b=[],y=0,x=e.readWhile,k=t?function(t){var n=e.pos();return t=t(),t.begin=n,t.end=e.pos(),t}:function(e){return e()};return{next:m,peek:g,eof:w,croak:e.croak,ahead:v,skip:_}}function l(e){function t(){return d}function n(){var t=e.charAt(d++);return"\n"==t?(h++,f=0):f++,t}function i(){return e.charAt(d)}function o(){return""===i()}function r(e){throw new g(e,d)}function s(t){if("string"==typeof t)e.substr(d,t.length)!=t&&r("Expected "+t),a(t.length);else if(t instanceof RegExp){var n=t.exec(e.substr(d));if(n)return a(n[0].length),n}else a(t[0].length)}function a(e){for(;e-->0;)n()}function l(e){for(var t,i=!1,r="";!o();)if(t=n(),i)r+=t,i=!1;else if("\\"==t)i=!0;else{if(t==e)break;r+=t}return r}function c(e){for(var t="";!o()&&e(i(),t);)t+=n();return t}function u(t){return t.exec(e.substr(d))}var d=0,h=1,f=0;return{next:n,peek:i,eof:o,croak:r,readWhile:c,readEscaped:l,lookingAt:u,skip:s,forward:a,pos:t}}function c(e,t,n,i){return!("sym"!=e.type&&"num"!=e.type||"op"!=t.type||":"!=t.value||"sym"!=n.type&&"num"!=n.type||"punc"==i.type&&"("==i.value&&!n.space)}function u(e){function t(t,i,o,r){if(c(t,i,o,r)){var s=n(t.value+":"+o.value,!0);if(s)return e.skip(3),{type:"ref",ref:s,begin:t.begin,end:o.end}}}function i(){var t,i=e.next();return"sym"==i.type&&(t=n(i.value,!0),t?(i.type="ref",i.ref=t):"TRUE"==i.upper?(i.type="bool",i.value=!0):"FALSE"==i.upper&&(i.type="bool",i.value=!1)),i}function o(t,n){return"sym"==t.type&&"punc"==n.type&&"("==n.value?(e.skip(1),t.type="func",t):void 0}var r,s=[];for(e=a(l(e),!0);!e.eof();)s.push(e.ahead(4,t)||e.ahead(2,o)||i());return r=s[0],"op"==r.type&&"="==r.value&&(r.type="startexp"),s}var d,h,f,p,g,m,v,_,w;kendo.support.browser.msie&&kendo.support.browser.version<9||(d=kendo.spreadsheet,h=d.calc,f=h.runtime,p=Object.create(null),g=kendo.Class.extend({init:function(e,t){this.message=e,this.pos=t},toString:function(){return this.message}}),function(e){e.forEach(function(t,n){t.forEach(function(t){p[t]=e.length-n})})}([[":"],[" "],[","],["%"],["^"],["*","/"],["+","-"],["&"],["=","<",">","<=",">=","<>"]]),m={type:"bool",value:!0},v={type:"bool",value:!1},_=function(e){return function(t){var n=e[t];return n||(n=e[t]=Function("'use strict';return("+t+")")()),n}}(Object.create(null)),w=Object.create(null),h.parse=function(e,t,n,o){var r,s,a;return o instanceof Date?{type:"date",value:f.dateToSerial(o)}:"number"==typeof o?{type:"number",value:o}:"boolean"==typeof o?{type:"boolean",value:o}:(o+="",/^'/.test(o)?{type:"string",value:o.substr(1)}:/^[0-9.]+%$/.test(o)&&(r=o.substr(0,o.length-1),s=parseFloat(r),!isNaN(s)&&s==r)?{type:"percent",value:s/100}:/^=/.test(o)?(o=o.substr(1),/\S/.test(o)?i(e,t,n,o):{type:"string",value:"="+o}):"true"==o.toLowerCase()?{type:"boolean",value:!0}:"false"==o.toLowerCase()?{type:"boolean",value:!1}:(a=f.parseDate(o))?{type:"date",value:f.dateToSerial(a)}:(s=parseFloat(o),!isNaN(s)&&o.length>0&&s==o?{type:"number",value:s}:{type:"string",value:o}))},h.parseFormula=i,h.parseReference=n,h.compile=s,h.InputStream=l,h.ParseError=g,h.tokenize=u)}(),function(){"use strict";function e(e){function t(){u.push({cond:"text",body:[{type:"text"}]})}function n(){var t=e.skip(l);return t?t[1].toLowerCase():void 0}function i(){var t,n=e.skip(c);return n&&(t=parseFloat(n[2]),!isNaN(t))?{op:n[1],value:t}:void 0}function o(){for(var t,n=[];!e.eof()&&(t=r());)n.push(t);return n}function r(){var t,n,i;if(n=e.skip(/^([#0?]+),([#0?]+)/))return{type:"digit",sep:!0,format:n[1]+n[2],decimal:f};if(n=e.skip(/^[#0?]+/))return{type:"digit",sep:!1,format:n[0],decimal:f};if(n=e.skip(/^(e)([+-])/i))return{type:"exp",ch:n[1],sign:n[2]};if(n=e.skip(/^(d{1,4}|m{1,5}|yyyy|yy)/i))return i="date",n=n[1].toLowerCase(),!d||"m"!=n&&"mm"!=n||(i="time"),d=!1,{type:i,part:n.charAt(0),format:n.length};if(n=e.skip(/^(hh?|ss?)/i))return d=!0,n=n[1].toLowerCase(),{type:"time",part:n.charAt(0),format:n.length};if(n=e.skip(/^\[(hh?|mm?|ss?)\]/i))return d=!0,n=n[1].toLowerCase(),{type:"eltime",part:n.charAt(0),format:n.length};if(n=e.skip(/^(am\/pm|a\/p)/i))return n=n[1].split("/"),{type:"ampm",am:n[0],pm:n[1]};switch(t=e.next()){case";":return null;case"\\":return{type:"str",value:e.next()};case'"':return{type:"str",value:e.readEscaped(t)};case"@":return{type:"text"};case"_":return{type:"space",value:e.next()};case"*":return{type:"fill",value:e.next()};case".":return e.lookingAt(/^\s*[#0?]/)?(f=!0,{type:"dec"}):{type:"str",value:"."};case"%":return{type:"percent"};case",":return{type:"comma"}}return{type:"str",value:t}}function s(){f=!1;var e=n(),t=i();return!e&&t&&(e=n()),{color:e,cond:t,body:o()}}var u,d,h,f,p;for(e=a.InputStream(e),u=[],d=!1,h=!1;!e.eof();)p=s(),u.push(p),p.cond&&(h=!0);return h?t():1==u.length?(u[0].cond="num",t()):2==u.length?(u[0].cond={op:">=",value:0},u[1].cond={op:"<",value:0},t()):u.length>=3&&(u[0].cond={op:">",value:0},u[1].cond={op:"<",value:0},u[2].cond={op:"=",value:0},t(),u.length>3&&(u[3].cond="text",u=u.slice(0,4))),u}function t(e){function t(e){var t="";return e.color&&(t+="["+e.color+"]"),e.cond&&"text"!=e.cond&&"num"!=e.cond&&(t+="["+e.cond.op+e.cond.value+"]"),t+=e.body.map(n).join("")}function n(e){return"digit"==e.type?e.sep?e.format.charAt(0)+","+e.format.substr(1):e.format:"exp"==e.type?e.ch+e.sign:"date"==e.type||"time"==e.type?s("",e.format,e.part):"ampm"==e.type?e.am+"/"+e.pm:"str"==e.type?JSON.stringify(e.value):"text"==e.type?"@":"space"==e.type?"_"+e.value:"fill"==e.type?"*"+e.value:"dec"==e.type?".":"percent"==e.type?"%":"comma"==e.type?",":void 0}return e.map(t).join(";")}function n(e,t){e.forEach(function(e){var n,i,o,r,a,l=t;if("text"!=e.cond){for(n=e.body,i=!1,o=n.length;0!==l&&--o>=0;)if(r=n[o],"digit"==r.type){if(r.decimal&&(i=!0,l>0?r.format+=s("",l,"0"):0>l&&(a=r.format.length,r.format=r.format.substr(0,a+l),l+=a-r.format.length),0===r.format.length))for(n.splice(o,1);--o>=0;){if(r=n[o],"digit"==r.type&&r.decimal){++o;break}if("dec"==r.type){n.splice(o,1);break}}if(l>0)break}!i&&l>0&&n.splice(o+1,0,{type:"dec"},{type:"digit",sep:!1,decimal:!0,format:s("",l,"0")})}})}function i(e){var t=0;return{next:function(){return e[t++]},eof:function(){return t>=e.length},ahead:function(n,i){if(e.length>=t+n){var o=i.apply(null,e.slice(t,t+n));return o&&(t+=n),o}},restart:function(){t=0}}}function o(e){function t(e,t){("digit"==e.type&&"comma"==t.type||"comma"==e.type&&e.hidden&&"comma"==t.type)&&(t.hidden=!0,u++)}var n,o,r=i(e.body),s=!1,a=!1,l=!1,c=0,u=0,d="",h=!1,f=0,p=[],g=[],m=e.cond,v="";for("text"==m?v="if (typeof value == 'string') { ":"num"==m?v="if (typeof value == 'number') { ":m&&(n="="==m.op?"==":m.op,v="if (typeof value == 'number' && value "+n+" "+m.value+") { ",d+="value = Math.abs(value); "),e.color&&(d+="element.attr.style = { color: "+JSON.stringify(e.color)+"}; ");!r.eof();)r.ahead(2,t),o=r.next(),"percent"==o.type?c++:"digit"==o.type?o.decimal?(f+=o.format.length,g.push(o.format)):(p.push(o.format),o.sep&&(h=!0)):"time"==o.type?a=!0:"date"==o.type?s=!0:"ampm"==o.type&&(l=a=!0);for(c>0&&(d+="value *= "+Math.pow(100,c)+"; "),u>0&&(d+="value /= "+Math.pow(1e3,u)+"; "),p.length&&(d+="var intPart = runtime.formatInt(culture, value, "+JSON.stringify(p)+", "+f+", "+h+"); "),g.length&&(d+="var decPart = runtime.formatDec(culture, value, "+JSON.stringify(g)+", "+f+"); "),(p.length||g.length)&&(d+="type = 'number'; "),s&&(d+="var date = runtime.unpackDate(value); "),a&&(d+="var time = runtime.unpackTime(value); "),(s||a)&&(d+="type = 'date'; "),(c>0||u>0||p.length||g.length||s||a)&&(v||(v="if (typeof value == 'number') { ")),r.restart();!r.eof();)o=r.next(),"dec"==o.type?d+="output += culture.numberFormat['.']; ":"comma"!=o.type||o.hidden?"percent"==o.type?(d+="type = 'percent'; ",d+="output += culture.numberFormat.percent.symbol; "):"str"==o.type?d+="output += "+JSON.stringify(o.value)+"; ":"text"==o.type?(d+="type = 'text'; ",d+="output += value; "):"space"==o.type?(d+="element.children.push(dom.text(output)); ",d+="output = ''; ",d+="element.children.push(dom.element('span', { style: { visibility: 'hidden' }}, [ dom.text("+JSON.stringify(o.value)+") ])); "):"fill"==o.type?d+="output += runtime.fill("+JSON.stringify(o.value)+"); ":"digit"==o.type?d+="output += "+(o.decimal?"decPart":"intPart")+".shift(); ":"date"==o.type?d+="output += runtime.date(culture, date, "+JSON.stringify(o.part)+", "+o.format+"); ":"time"==o.type?d+="output += runtime.time(culture, time, "+JSON.stringify(o.part)+", "+o.format+", "+l+"); ":"eltime"==o.type?d+="output += runtime.eltime(culture, value, "+JSON.stringify(o.part)+", "+o.format+"); ":"ampm"==o.type&&(d+="output += time.hours < 12 ? "+JSON.stringify(o.am)+" : "+JSON.stringify(o.pm)+"; "):d+="output += ','; ";return d+="element.children.push(dom.text(output)); ",d+="element.__dataType = type; ",d+="return element; ",v&&(d=v+d+"}"),d}function r(t){var n,i,r=u[t];return r||(n=e(t),i=n.map(o).join("\n"),i="return function(value, culture){ 'use strict'; if (!culture) culture = kendo.culture(); var output = '', type = null, element = dom.element('span'); "+i+"; return element; };",r=u[t]=Function("runtime","dom",i)(d,kendo.dom)),r}function s(e,t,n){for(e+="";t>e.length;)e=n+e;return e}var a,l,c,u,d;kendo.support.browser.msie&&kendo.support.browser.version<9||(a=kendo.spreadsheet.calc,l=/^\[(black|green|white|blue|magenta|yellow|cyan|red)\]/i,c=/^\[(<=|>=|<>|<|>|=)(-?[0-9.]+)\]/,u=Object.create(null),d={unpackDate:a.runtime.unpackDate,unpackTime:a.runtime.unpackTime,space:function(e){return"<span style='visibility: hidden'>"+kendo.htmlEncode(e)+"</span>"},date:function(e,t,n,i){switch(n){case"d":switch(i){case 1:return t.date;case 2:return s(t.date,2,"0");case 3:return e.calendars.standard.days.namesAbbr[t.day];case 4:return e.calendars.standard.days.names[t.day]}break;case"m":switch(i){case 1:return t.month+1;case 2:return s(t.month+1,2,"0");case 3:return e.calendars.standard.months.namesAbbr[t.month];case 4:return e.calendars.standard.months.names[t.month];case 5:return e.calendars.standard.months.names[t.month].charAt(0)}break;case"y":switch(i){case 2:return t.year%100;case 4:return t.year}}return"##"},time:function(e,t,n,i,o){switch(n){case"h":var r=o?t.hours%12||12:t.hours;switch(i){case 1:return r;case 2:return s(r,2,"0")}break;case"m":switch(i){case 1:return t.minutes;case 2:return s(t.minutes,2,"0")}break;case"s":switch(i){case 1:return t.seconds;case 2:return s(t.seconds,2,"0")}}return"##"},eltime:function(e,t,n,i){switch(n){case"h":t=24*t;break;case"m":t=24*t*60;break;case"s":t=24*t*60*60}switch(t|=0,i){case 1:return t;case 2:return s(t,2,"0")}return"##"},fill:function(e){return e},formatInt:function(e,t,n,i,o){function r(t){o&&l&&l%3===0&&" "!=t&&(c=e.numberFormat[","]+c),c=t+c,l++}var s,a,l,c,u,d,h,f;for(t=t.toFixed(i).replace(/\..*$/,""),i>0&&("0"===t?t="":"-0"===t&&(t="-")),s=t.length-1,a=[],l=0,u=n.length;--u>=0;){for(d=n[u],c="",h=d.length;--h>=0;)f=d.charAt(h),0>s?"0"==f?r("0"):"?"==f&&r(" "):r(t.charAt(s--));if(0===u)for(;s>=0;)r(t.charAt(s--));a.unshift(c)}return a},formatDec:function(e,t,n,i){var o,r,s,a,l,c,u,d;for(t=t.toFixed(i),o=t.indexOf("."),t=o>=0?t.substr(o+1).replace(/0+$/,""):"",r=0,s=[],a=0;n.length>a;++a){for(l=n[a],c="",u=0;l.length>u;++u)d=l.charAt(u),t.length>r?c+=t.charAt(r++):"0"==d?c+="0":"?"==d&&(c+=" ");s.push(c)}return s}},kendo.spreadsheet.formatting={compile:r,parse:e,format:function(e,t,n){return r(t)(e,n)},type:function(e,t){return r(t)(e).__dataType},adjustDecimals:function(i,o){var r=e(i);return n(r,o),t(r)}})}(),function(){"use strict";function e(e){return(Math.exp(e)+Math.exp(-e))/2}function t(e){return(Math.exp(e)-Math.exp(-e))/2}function n(n){return t(n)/e(n)}function i(e,t){for(;t;){var n=e%t;e=t,t=n}return e}function o(e,t){return Math.abs(e*t)/i(e,t)}function r(e,t){for(var n,i,o,r=[],s=0,a=e[0];e.length>s;)r.push({matrix:e[s++],pred:W(e[s++])});for(n=0;a.height>n;++n)e:for(i=0;a.width>i;++i){for(s=0;r.length>s;++s)if(o=r[s].matrix.get(n,i),!r[s].pred(null==o||""===o?0:o))continue e;t(n,i)}}function s(e){return e.reduce(function(e,t){return e+t},0)/e.length}function a(e,t,n){return null==n&&(n=s(e)),e.reduce(function(e,t){return e+Math.pow(t-n,2)},0)/t}function l(e,t){return Math.sqrt(a(e,t))}function c(e,t,n){var i=0,o=0,r=null,s=null,a=!1;return e.forEach(function(e){t>e?(i++,r=null==r?e:Math.max(r,e)):e>t?(o++,s=null==s?e:Math.min(s,e)):a=!0}),i||o?a?n?(i+1)/(e.length+1):i/(i+o):((s-t)*c(e,r,n)+(t-r)*c(e,s,n))/(s-r):new T("N/A")}function u(e,t,n){var i,o=0,r=s(e),a=s(t),l=e.length;for(i=0;l>i;++i)o+=(e[i]-r)*(t[i]-a);return o/n}function d(e,t){var n,i,o;return e.sort(_),n=e.length,i=0|t,o=t-i,0===i?e[0]:i>=n?e[n-1]:(--i,e[i]+o*(e[i+1]-e[i]))}function h(e,t){var n=t*(e.length-1)+1;return d(e,n)}function f(e,t){var n=t*(e.length+1);return d(e,n)}function p(e,t,n,i){var o,r;if(i){for(o=0,r=0;e>=r;++r)o+=V(t,r)*Math.pow(n,r)*Math.pow(1-n,t-r);return o}return V(t,e)*Math.pow(n,e)*Math.pow(1-n,t-e)}function g(e){var t=z(R(e,0,1));return 4==t.day||3==t.day&&k.isLeapYear(e)?53:52}function m(e,t,n){var i=z(e),o=z(t);return n?(31==i.date&&(i.date=30),31==o.date&&(o.date=30)):(1==i.month&&1==o.month&&i.date==I(i.year,1)&&o.date==I(o.year,1)&&(o.date=30),i.date==I(i.year,i.month)&&(i.date=30,31==o.date&&(o.date=30))),360*(o.year-i.year)+30*(o.month-i.month)+(o.date-i.date)}function v(e){return"number"==typeof e||"boolean"==typeof e||null==e||""===e}function _(e,t){return e===t?0:t>e?-1:1}function w(e,t){return e===t?0:t>e?1:-1}var b,y,x,k,C,S,T,D,A,E,M,P,I,R,z,B,F,L,O,N,H,V,U,W;kendo.support.browser.msie&&kendo.support.browser.version<9||(b=kendo.util,y=kendo.spreadsheet,x=y.calc,k=x.runtime,C=k.defineFunction,S=k.defineAlias,T=k.CalcError,D=y.RangeRef,A=y.CellRef,E=y.UnionRef,M=k.Matrix,P=y.Ref,I=k.daysInMonth,R=k.packDate,z=k.unpackDate,B=k.daysInYear,["abs","cos","sin","acos","asin","tan","atan","exp","sqrt"].forEach(function(e){C(e,Math[e]).args([["*n","number"]])}),C("ln",Math.log).args([["*n","number"]]),C("log",function(e,t){return Math.log(e)/Math.log(t)}).args([["*num","number++"],["*base",["or","number++",["null",10]]],["?",["assert","$base != 1","DIV/0"]]]),C("log10",function(e){return Math.log(e)/Math.log(10)}).args([["*num","number++"]]),C("pi",function(){return Math.PI}).args([]),C("sqrtpi",function(e){return Math.sqrt(e*Math.PI)}).args([["*num","number+"]]),C("degrees",function(e){return 180*e/Math.PI%360}).args([["*radians","number"]]),C("radians",function(e){return Math.PI*e/180}).args([["*degrees","number"]]),C("cosh",e).args([["*num","number"]]),C("acosh",function(e){return Math.log(e+Math.sqrt(e-1)*Math.sqrt(e+1))}).args([["*num","number"],["?",["assert","$num >= 1"]]]),C("sinh",t).args([["*num","number"]]),C("asinh",function(e){return Math.log(e+Math.sqrt(e*e+1))}).args([["*num","number"]]),C("sec",function(e){return 1/Math.cos(e)}).args([["*num","number"]]),C("sech",function(t){return 1/e(t)}).args([["*num","number"]]),C("csc",function(e){return 1/Math.sin(e)}).args([["*num","number"]]),C("csch",function(e){return 1/t(e)}).args([["*num","number"]]),C("atan2",function(e,t){return Math.atan(t/e)}).args([["*x","divisor"],["*y","number"]]),C("tanh",n).args([["*num","number"]]),C("atanh",function(e){return Math.log(Math.sqrt(1-e*e)/(1-e))}).args([["*num",["and","number",["(between)",-1,1]]]]),C("cot",function(e){return 1/Math.tan(e)}).args([["*num","divisor"]]),C("coth",function(e){return 1/n(e)}).args([["*num","divisor"]]),C("acot",function(e){return Math.PI/2-Math.atan(e)}).args([["*num","number"]]),C("acoth",function(e){return Math.log((e+1)/(e-1))/2}).args([["*num","number"],["?",["or",["assert","$num < -1"],["assert","$num > 1"]]]]),C("power",function(e,t){return Math.pow(e,t)}).args([["*a","number"],["*b","number"]]),C("mod",function(e,t){return e%t}).args([["*a","number"],["*b","divisor"]]),C("quotient",function(e,t){return Math.floor(e/t)}).args([["*a","number"],["*b","divisor"]]),C("ceiling",function(e,t){return t?t*Math.ceil(e/t):0}).args([["*number","number"],["*significance","number"],["?",["assert","$significance >= 0 || $number < 0"]]]),C("ceiling.precise",function(e,t){return t=Math.abs(t),t?t*Math.ceil(e/t):0}).args([["*number","number"],["*significance",["or","number",["null",1]]]]),S("iso.ceiling","ceiling.precise"),C("ceiling.math",function(e,t,n){return t&&e?(0>e&&(!n&&0>t||n&&t>0)&&(t=-t),t?t*Math.ceil(e/t):0):0}).args([["*number","number"],["*significance",["or","number",["null","$number < 0 ? -1 : 1"]]],["*mode",["or","logical",["null",0]]]]),C("floor",function(e,t){return t?t*Math.floor(e/t):0}).args([["*number","number"],["*significance","number"],["?",["assert","$significance >= 0 || $number < 0"]]]),C("floor.precise",function(e,t){return t=Math.abs(t),t?t*Math.floor(e/t):0}).args([["*number","number"],["*significance",["or","number",["null",1]]]]),C("floor.math",function(e,t,n){return t&&e?(0>e&&(!n&&0>t||n&&t>0)&&(t=-t),t?t*Math.floor(e/t):0):0}).args([["*number","number"],["*significance",["or","number",["null","$number < 0 ? -1 : 1"]]],["*mode",["or","logical",["null",0]]]]),C("int",Math.floor).args([["*number","number"]]),C("mround",function(e,t){return t?t*Math.round(e/t):0}).args([["*number","number"],["*multiple","number"]]),C("even",function(e){var t=0>e?Math.floor(e):Math.ceil(e);return t%2?t+(0>t?-1:1):t}).args([["*number","number"]]),C("odd",function(e){var t=0>e?Math.floor(e):Math.ceil(e);return t%2?t:t+(0>t?-1:1)}).args([["*number","number"]]),C("sign",function(e){return 0>e?-1:e>0?1:0}).args([["*number","number"]]),C("gcd",function(e){var t,n=e[0];for(t=1;e.length>t;++t)n=i(n,e[t]);return n}).args([["numbers",["collect","number"]]]),C("lcm",function(e){var t,n=e[0];for(t=1;e.length>t;++t)n=o(n,e[t]);return n}).args([["numbers",["collect","number"]]]),C("sum",function(e){return e.reduce(function(e,t){return e+t},0)}).args([["numbers",["collect","number"]]]),C("product",function(e){return e.reduce(function(e,t){return e*t},1)}).args([["numbers",["collect","number"]]]),C("sumproduct",function(e){var t=0;return e[0].each(function(n,i,o){var r,s;if("number"==typeof n){for(r=1;e.length>r;++r){if(s=e[r].get(i,o),"number"!=typeof s)return;n*=s}t+=n}}),t}).args([["a1","matrix"],["+",["a2",["and","matrix",["assert","$a2.width == $a1.width"],["assert","$a2.height == $a1.height"]]]]]),C("sumsq",function(e){return e.reduce(function(e,t){return e+t*t},0)}).args([["numbers",["collect","number"]]]),C("sumx2my2",function(e,t){var n=0;return e.each(function(e,i,o){var r=t.get(i,o);"number"==typeof e&&"number"==typeof r&&(n+=e*e-r*r)}),n}).args([["a","matrix"],["b",["and","matrix",["assert","$b.width == $a.width"],["assert","$b.height == $a.height"]]]]),C("sumx2py2",function(e,t){var n=0;return e.each(function(e,i,o){var r=t.get(i,o);"number"==typeof e&&"number"==typeof r&&(n+=e*e+r*r)}),n}).args([["a","matrix"],["b",["and","matrix",["assert","$b.width == $a.width"],["assert","$b.height == $a.height"]]]]),C("sumxmy2",function(e,t){var n=0;return e.each(function(e,i,o){var r=t.get(i,o);"number"==typeof e&&"number"==typeof r&&(n+=(e-r)*(e-r))}),n}).args([["a","matrix"],["b",["and","matrix",["assert","$b.width == $a.width"],["assert","$b.height == $a.height"]]]]),C("seriessum",function(e,t,n,i){var o=0;return i.each(function(i){if("number"!=typeof i)throw new T("VALUE");o+=i*Math.pow(e,t),t+=n}),o}).args([["x","number"],["y","number"],["m","number"],["a","matrix"]]),C("min",function(e){return Math.min.apply(Math,e)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length > 0","N/A"]]]),C("max",function(e){return Math.max.apply(Math,e)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length > 0","N/A"]]]),C("counta",function(e){return e.length}).args([["values",["#collect","anyvalue"]]]),C("count",function(e){return e.length}).args([["numbers",["#collect","number"]]]),C("countunique",function(e){var t=0,n=[];return e.forEach(function(e){n.indexOf(e)<0&&(t++,n.push(e))}),t}).args([["values",["#collect","anyvalue"]]]),C("countblank",function(e){function t(e){(null==e||""===e)&&i++}function n(e){var n,i;for(n=0;e.length>n;++n)i=e[n],i instanceof M?i.each(t,!0):t(i)}var i=0;return n(e),i}).args([["+",["args",["or","matrix","anyvalue"]]]]),C("iseven",function(e){return e%2===0}).args([["*number","number"]]),C("isodd",function(e){return e%2!==0}).args([["*number","number"]]),C("n",function(e){return"boolean"==typeof e?e?1:0:"number"==typeof e?e:0}).args([["*value","anyvalue"]]),C("na",function(){return new T("N/A")}).args([]),F=[["m1","matrix"],["c1","anyvalue"],[["m2",["and","matrix",["assert","$m1.width == $m2.width"],["assert","$m1.height == $m2.height"]]],["c2","anyvalue"]]],C("countifs",function(e,t,n){var i=0;return n.unshift(e,t),r(n,function(){i++}),i}).args(F),L=[["range","matrix"]].concat(F),C("sumifs",function(e,t,n,i){i.unshift(e,v,t,n);var o=0;return r(i,function(t,n){var i=e.get(t,n);i&&(o+=i)}),o}).args(L),C("averageifs",function(e,t,n,i){i.unshift(e,v,t,n);var o=0,s=0;return r(i,function(t,n){var i=e.get(t,n);(null==i||""===i)&&(i=0),o+=i,s++}),s?o/s:new T("DIV/0")}).args(L),C("countif",function(e,t){t=W(t);var n=0;return e.each(function(e){t(e)&&n++}),n}).args([["range","matrix"],["*criteria","anyvalue"]]),O=[["range","matrix"],["*criteria","anyvalue"],["sumRange",["or",["and","matrix",["assert","$sumRange.width == $range.width"],["assert","$sumRange.height == $range.height"]],["null","$range"]]]],C("sumif",function(e,t,n){var i=0;return t=W(t),e.each(function(e,o,r){if(t(e)){var s=n.get(o,r);v(s)&&(i+=s||0)}}),i}).args(O),C("averageif",function(e,t,n){var i=0,o=0;return t=W(t),e.each(function(e,r,s){if(t(e)){var a=n.get(r,s);v(a)&&(i+=a||0,o++)}}),o?i/o:new T("DIV/0")}).args(O),function(e){e("large",function(e,t){return e.sort(w)[t]}),e("small",function(e,t){return e.sort(_)[t]})}(function(e,t){C(e,function(e,n){var i=[],o=e.each(function(e){return e instanceof T?e:void("number"==typeof e&&i.push(e))});return o?o:n>i.length?new T("NUM"):t(i,n-1)}).args([["array","matrix"],["*nth","number++"]])}),C("stdev.s",function(e){return l(e,e.length-1)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 2","NUM"]]]),C("stdev.p",function(e){return l(e,e.length)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 2","NUM"]]]),C("var.s",function(e){return a(e,e.length-1)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 2","NUM"]]]),C("var.p",function(e){return a(e,e.length)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 2","NUM"]]]),C("median",function(e){var t=e.length;return e.sort(_),t%2?e[t>>1]:(e[t>>1]+e[t>>2])/2}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length > 0","N/A"]]]),C("mode.sngl",function(e){var t,n,i,o,r,s;for(e.sort(_),t=null,n=0,i=1,o=null,r=0;e.length>r;++r)s=e[r],s!=t?(n=1,t=s):n++,n>i&&(i=n,o=s);return null==o?new T("N/A"):o}).args([["numbers",["collect","number"]]]),C("mode.mult",function(e){var t,n=Object.create(null),i=2,o=[];return e.forEach(function(e){var t=n[e]||0;n[e]=++t,t==i?o.push(e):t>i&&(i=t,o=[e])}),t=new M(this),o.forEach(function(e,n){t.set(n,0,e)}),t}).args([["numbers",["collect","number"]]]),C("geomean",function(e){var t=e.length,n=e.reduce(function(e,t){if(0>t)throw new T("NUM");return e*t},1);return Math.pow(n,1/t)}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length > 0","NUM"]]]),C("harmean",function(e){var t=e.length,n=e.reduce(function(e,t){if(!t)throw new T("DIV/0");return e+1/t},0);return t/n}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length > 0","NUM"]]]),C("trimmean",function(e,t){var n,i,o,r=e.length;for(e.sort(_),n=Math.floor(r*t),n%2&&--n,n/=2,i=0,o=n;r-n>o;++o)i+=e[o];return i/(r-2*n)}).args([["numbers",["collect","number",1]],["percent",["and","number",["[between)",0,1]]],["?",["assert","$numbers.length > 0","NUM"]]]),C("frequency",function(e,t){function n(t){for(var n=0;e.length>o&&e[o]>i&&t>=e[o];)++n,++o;return n}var i,o,r;return e.sort(_),t.sort(_),i=-(1/0),o=0,r=new M(this),t.forEach(function(e,t){var o=n(e);i=e,r.set(t,0,o)}),r.set(r.height,0,e.length-o),r}).args([["data",["collect","number",1]],["bins",["collect","number",1]]]),C("rank.eq",function(e,t,n){t.sort(n?_:w);var i=t.indexOf(e);return 0>i?new T("N/A"):i+1}).args([["value","number"],["numbers",["collect","number"]],["order",["or","logical",["null",!1]]]]),S("rank","rank.eq"),C("rank.avg",function(e,t,n){var i,o;if(t.sort(n?_:w),i=t.indexOf(e),0>i)return new T("N/A");for(o=i;t[o]==e;++o);return(i+o+1)/2}).args([["value","number"],["numbers",["collect","number"]],["order",["or","logical",["null",!1]]]]),C("kurt",function(e){var t=e.length,n=s(e),i=a(e,t-1,n),o=Math.sqrt(i),r=e.reduce(function(e,t){return e+Math.pow((t-n)/o,4)},0);return t*(t+1)/((t-1)*(t-2)*(t-3))*r-3*Math.pow(t-1,2)/((t-2)*(t-3))}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 4","NUM"]]]),N=[["array",["collect","number",1]],["x","number"],["significance",["or",["null",3],"integer++"]],["?",["assert","$array.length > 0","NUM"]]],C("percentrank.inc",function(e,t,n){var i=c(e,t,0);return i=i.toFixed(n+1),parseFloat(i.substr(0,i.length-1))}).args(N),C("percentrank.exc",function(e,t,n){var i=c(e,t,1);return i=i.toFixed(n+1),parseFloat(i.substr(0,i.length-1))}).args(N),S("percentrank","percentrank.inc"),C("covariance.p",function(e,t){return u(e,t,e.length)}).args([["array1",["collect","number",1]],["array2",["collect","number",1]],["?",["assert","$array1.length == $array2.length","N/A"]],["?",["assert","$array1.length > 0","DIV/0"]]]),C("covariance.s",function(e,t){return u(e,t,e.length-1)}).args([["array1",["collect","number",1]],["array2",["collect","number",1]],["?",["assert","$array1.length == $array2.length","N/A"]],["?",["assert","$array1.length > 1","DIV/0"]]]),S("covar","covariance.p"),H=b.memoize(function(e){for(var t=2,n=1;e>=t;++t)n*=t;return n}),C("fact",H).args([["*n","integer+"]]),C("factdouble",function(e){for(var t=2+(1&e),n=1;e>=t;t+=2)n*=t;return n}).args([["*n","integer+"]]),C("multinomial",function(e){var t=1,n=0;return e.forEach(function(e){if(0>e)throw new T("NUM");n+=e,t*=H(e)}),H(n)/t}).args([["numbers",["collect","number"]]]),V=b.memoize(function(e,t){for(var n=t+1,i=1,o=1,r=1;e-t>=i;++n,++i)o*=n,r*=i;return o/r}),C("combin",V).args([["*n","integer++"],["*k",["and","integer",["[between]",0,"$n"]]]]),C("combina",function(e,t){return V(e+t-1,e-1)}).args([["*n","integer++"],["*k",["and","integer",["[between]",1,"$n"]]]]),C("average",function(e){var t=e.reduce(function(e,t){return e+t},0);return t/e.length}).args([["numbers",["collect",["and","number",["not","boolean"]]]],["?",["assert","$numbers.length > 0","DIV/0"]]]),C("averagea",function(e){var t=0,n=0;return e.forEach(function(e){"string"!=typeof e&&(t+=e),++n}),n?t/n:new T("DIV/0")}).args([["values",["collect","anyvalue"]]]),C("percentile.inc",h).args([["numbers",["collect","number",1]],["p",["and","number",["[between]",0,1]]]]),C("percentile.exc",f).args([["numbers",["collect","number",1]],["p",["and","number",["(between)",0,1]]]]),C("quartile.inc",function(e,t){return h(e,t/4)}).args([["numbers",["collect","number",1]],["quarter",["values",0,1,2,3,4]]]),C("quartile.exc",function(e,t){return f(e,t/4)}).args([["numbers",["collect","number",1]],["quarter",["values",0,1,2,3,4]]]),S("quartile","quartile.inc"),S("percentile","percentile.inc"),C("aggregate",function(e,t,n,i){function o(e){if(e instanceof P)r.getRefCells(e,!0).forEach(function(e){var t,i=e.value;if(!(n&s&&e.hidden)){if(e.formula){if(t=e.formula.print(e.row,e.col),/^\s*(?:aggregate|subtotal)\s*\(/i.test(t)&&!(n&l))return;"value"in e.formula&&(i=e.formula.value)}n&a&&i instanceof T||("number"==typeof i||i instanceof T)&&u.push(i)}});else if(Array.isArray(e))for(var t=0;e.length>t;++t)o(e[t]);else e instanceof M?e.each(o):"number"==typeof e?u.push(e):e instanceof T&&!(n&a)&&u.push(e)}var r=this,s=1,a=2,l=4,c=["AVERAGE","COUNT","COUNTA","MAX","MIN","PRODUCT","STDEV.S","STDEV.P","SUM","VAR.S","VAR.P","MEDIAN","MODE.SNGL","LARGE","SMALL","PERCENTILE.INC","QUARTILE.INC","PERCENTILE.EXC","QUARTILE.EXC"][t-1],u=[];r.resolveCells(i,function(){if(t>12){o(i[0]);var n=i[1];if(n instanceof A&&(n=r.getRefData(n)),"number"!=typeof n)return e(new T("VALUE"))}else o(i);r.func(c,e,u)})}).argsAsync([["funcId",["values",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]],["options",["or",["null",0],["values",0,1,2,3,4,5,6,7]]],["args","rest"]]),C("avedev",function(e){var t=e.reduce(function(e,t){return e+t},0)/e.length;return e.reduce(function(e,n){return e+Math.abs(n-t)},0)/e.length}).args([["numbers",["collect","number"]],["?",["assert","$numbers.length >= 2","NUM"]]]),C("binom.dist",p).args([["successes","integer+"],["trials",["and","integer",["assert","$trials >= $successes"]]],["probability",["and","number",["[between]",0,1]]],["cumulative","logical"]]),S("binomdist","binom.dist"),C("binom.inv",function(e,t,n){for(var i=0;e>=i;++i)if(p(i,e,t,!0)>=n)return i;return new T("N/A")}).args([["trials","integer+"],["probability",["and","number",["[between]",0,1]]],["alpha",["and","number",["[between]",0,1]]]]),S("critbinom","binom.inv"),C("binom.dist.range",function(e,t,n,i){var o,r=0;for(o=n;i>=o;++o)r+=V(e,o)*Math.pow(t,o)*Math.pow(1-t,e-o);return r}).args([["trials","integer+"],["probability",["and","number",["[between]",0,1]]],["successes_min",["and","integer",["[between]",0,"$trials"]]],["successes_max",["or",["and","integer",["[between]","$successes_min","$trials"]],["null","$successes_min"]]]]),C("negbinom.dist",function(e,t,n,i){if(i){for(var o=0;e>=0;)o+=V(e+t-1,e)*Math.pow(n,t)*Math.pow(1-n,e),e--;return o}return V(e+t-1,e)*Math.pow(n,t)*Math.pow(1-n,e)}).args([["number_f","integer+"],["number_s","integer+"],["probability_s",["and","number",["[between]",0,1]]],["cumulative","logical"]]),S("negbinomdist","negbinom.dist"),C("address",function(e,t,n,i,o){var r=new A(e-1,t-1,n-1);return o&&r.setSheet(o,!0),i?r.print(0,0):r.print()}).args([["row","integer++"],["col","integer++"],["abs",["or",["null",1],["values",1,2,3,4]]],["a1",["or",["null",!0],"logical"]],["sheet",["or","null","string"]]]),C("areas",function(e){var t=0;return function n(e){e instanceof A||e instanceof D?t++:e instanceof E&&e.refs.forEach(n)}(e),t}).args([["ref","ref"]]),C("choose",function(e,t){return e>t.length?new T("N/A"):t[e-1]}).args([["*index","integer"],["+",["value","anything"]]]),C("column",function(e){return e?e instanceof A?e.col+1:this.asMatrix(e).mapCol(function(t){return t+e.topLeft.col+1}):this.formula.col+1}).args([["ref",["or","area","null"]]]),C("columns",function(e){return e instanceof P?e.width():e.width}).args([["ref",["or","area","#matrix"]]]),C("formulatext",function(e){var t=this.getRefCells(e)[0];return t.formula?t.formula.print(t.row,t.col):new T("N/A")}).args([["ref","ref"]]),C("hlookup",function(e,t,n,i){var o=null;return t.eachCol(function(n){var r=t.get(0,n);if(i){if(r>e)return!0;o=n}else if(r===e)return o=n,!0}),null==o?new T("N/A"):t.get(n-1,o)}).args([["value","anyvalue"],["range","matrix"],["row","integer++"],["approx",["or","logical",["null",!0]]]]),C("index",function(e,t,n){if(null==t&&null==n)return new T("N/A");if(e.width>1&&e.height>1){
|
||
if(null!=t&&null!=n)return e.get(t-1,n-1);if(null==t)return e.mapRow(function(t){return e.get(t,n-1)});if(null==n)return e.mapCol(function(n){return e.get(t-1,n)})}return 1==e.width?e.get(t-1,0):1==e.height?e.get(0,n-1):new T("REF")}).args([["range","matrix"],["row",["or","integer++","null"]],["col",["or","integer++","null"]]]),C("indirect",function(e){var t,n;try{if(t=this.formula,n=x.parseFormula(t.sheet,t.row,t.col,e),!(n.ast instanceof P))throw 1;return n.ast.absolute(t.row,t.col)}catch(i){return new T("REF")}}).args([["thing","string"]]),C("match",function(e,t,n){var i,o=1;return 0===n?i=W(e):-1===n?i=W("<="+e):1===n&&(i=W(">="+e)),t.each(function(t){return null!=t&&i(t)?(0!==n&&e!=t&&--o,!0):void o++},!0)&&o>0?o:new T("N/A")}).args([["value","anyvalue"],["range","matrix"],["type",["or",["values",-1,0,1],["null",1]]]]),C("offset",function(e,t,n,i,o){var r=(e instanceof A?e:e.topLeft).clone();return r.row+=t,r.col+=n,0>r.row||0>r.col?new T("VALUE"):i>1||o>1?new D(r,new A(r.row+i-1,r.col+o-1)).setSheet(e.sheet,e.hasSheet()):r}).args([["ref","area"],["*rows","integer"],["*cols","integer"],["*height",["or","integer++",["null","$ref.height()"]]],["*width",["or","integer++",["null","$ref.width()"]]]]),C("row",function(e){return e?e instanceof A?e.row+1:this.asMatrix(e).mapRow(function(t){return t+e.topLeft.row+1}):this.formula.row+1}).args([["ref",["or","area","null"]]]),C("rows",function(e){return e instanceof P?e.height():e.height}).args([["ref",["or","area","#matrix"]]]),C("vlookup",function(e,t,n,i){var o=null;return t.eachRow(function(n){var r=t.get(n,0);if(i){if(r>e)return!0;o=n}else if(r===e)return o=n,!0}),null==o?new T("N/A"):t.get(o,n-1)}).args([["value","anyvalue"],["range","matrix"],["col","integer++"],["approx",["or","logical",["null",!0]]]]),C("date",function(e,t,n){return R(e,t-1,n)}).args([["*year","integer"],["*month","integer"],["*date","integer"]]),C("day",function(e){return z(e).date}).args([["*date","date"]]),C("month",function(e){return z(e).month+1}).args([["*date","date"]]),C("year",function(e){return z(e).year}).args([["*date","date"]]),C("weekday",function(e){return z(e).day+1}).args([["*date","date"]]),C("weeknum",function(e,t){var n,i=R(z(e).year,0,1),o=z(i);return 21==t?(n=3-(o.day+6)%7,0>n&&(n+=7),i+=n,o.date+=n,o.day=4,t=1):t=1==t?0:2==t?1:(t-10)%7,n=o.day-t,0>n&&(n+=7),i-=n,Math.ceil((e+1-i)/7)}).args([["*date","date"],["*type",["or",["null",1],["values",1,2,11,12,13,14,15,16,17,21]]]]),C("isoweeknum",function(e){var t=z(e),n=t.day||7,i=Math.floor((t.ord-n+10)/7);return 1>i?g(t.year-1):53==i&&i>g(t.year)?1:i}).args([["*date","date"]]),C("now",function(){return k.dateToSerial(new Date)}).args([]),C("today",function(){return 0|k.dateToSerial(new Date)}).args([]),C("time",function(e,t,n){return k.packTime(e,t,n,0)}).args([["*hours","integer"],["*minutes","integer"],["*seconds","integer"]]),C("hour",function(e){return k.unpackTime(e).hours}).args([["*time","datetime"]]),C("minute",function(e){return k.unpackTime(e).minutes}).args([["*time","datetime"]]),C("second",function(e){return k.unpackTime(e).seconds}).args([["*time","datetime"]]),C("edate",function(e,t){var n=z(e),i=n.month+t,o=n.year+Math.floor(i/12);return i%=12,0>i&&(i+=12),n=Math.min(n.date,I(o,i)),R(o,i,n)}).args([["*start_date","date"],["*months","integer"]]),C("eomonth",function(e,t){var n=z(e),i=n.month+t,o=n.year+Math.floor(i/12);return i%=12,0>i&&(i+=12),n=I(o,i),R(o,i,n)}).args([["*start_date","date"],["*months","integer"]]),C("workday",function(e,t,n){var i,o=t>0?1:-1;for(t=Math.abs(t),i=z(e).day;t>0;)e+=o,i=(i+o)%7,i>0&&6>i&&n.indexOf(e)<0&&--t;return e}).args([["start_date","date"],["days","integer"],["holidays",["collect","date"]]]),C("networkdays",function(e,t,n){var i,o,r;for(e>t&&(i=e,e=t,t=i),o=0,r=z(e).day;t>=e;)r>0&&6>r&&n.indexOf(e)<0&&o++,e++,r=(r+1)%7;return o}).args([["start_date","date"],["end_date","date"],["holidays",["collect","date"]]]),C("days",function(e,t){return t-e}).args([["*start_date","date"],["*end_date","date"]]),C("days360",m).args([["*start_date","date"],["*end_date","date"],["*method",["or","logical",["null","false"]]]]),C("yearfrac",function(e,t,n){switch(n){case 0:return m(e,t,!1)/360;case 1:return(t-e)/B(z(e).year);case 2:return(t-e)/360;case 3:return(t-e)/365;case 4:return m(e,t,!0)/360}}).args([["*start_date","date"],["*end_date","date"],["*method",["or",["null",0],["values",0,1,2,3,4]]]]),C("datevalue",function(e){var t=k.parseDate(e);return t?k.dateToSerial(t):new T("VALUE")}).args([["*text","string"]]),C("timevalue",function(e){var t,n,i,o,r=e.toLowerCase().match(/(\d+):(\d+)(:(\d+)(\.(\d+))?)?\s*(am?|pm?)?/);return r?(t=parseFloat(r[1]),n=parseFloat(r[2]),i=r[3]?parseFloat(r[4]):0,o=r[7],o&&(t>12||1>t)?new T("VALUE"):(/^p/.test(o)&&(t+=12),k.packTime(t,n,i,0))):new T("VALUE")}).args([["*text","string"]]),C("mdeterm",function(e){var t=e.each(function(e){return"number"!=typeof e?new T("VALUE"):void 0},!0);return t||e.determinant()}).args([["m",["and","matrix",["assert","$m.width == $m.height"]]]]),C("transpose",function(e){return e.transpose()}).args([["range","matrix"]]),C("mmult",function(e,t){return e.multiply(t)}).args([["a","matrix"],["b",["and","matrix",["assert","$b.height == $a.width"]]]]),C("munit",function(e){return new M(this).unit(e)}).args([["n","integer+"]]),C("minverse",function(e){var t=e.each(function(e){return"number"!=typeof e?new T("VALUE"):void 0},!0);return t||e.inverse()||new T("VALUE")}).args([["m",["and","matrix",["assert","$m.width == $m.height"]]]]),C("rand",function(){return Math.random()}).args([]),C("randbetween",function(e,t){return e+Math.floor((t-e+1)*Math.random())}).args([["min","integer"],["max",["and","integer",["assert","$max >= $min"]]]]),C("true",function(){return!0}).args([]),C("false",function(){return!0}).args([]),C("roman",function(e){return b.arabicToRoman(e).toUpperCase()}).args([["*number","integer"]]),C("arabic",function(e){var t=b.romanToArabic(e);return null==t?new T("VALUE"):t}).args([["*roman","string"]]),C("base",function(e,t,n){for(var i=e.toString(t).toUpperCase();n>i.length;)i="0"+i;return i}).args([["*number","integer"],["*radix",["and","integer",["[between]",2,36]]],["*minLen",["or","integer+",["null",0]]]]),C("decimal",function(e,t){var n,i,o;for(e=e.toUpperCase(),n=0,i=0;e.length>i;++i){if(o=e.charCodeAt(i),o>=48&&57>=o)o-=48;else{if(!(o>=65&&55+t>o))return new T("VALUE");o-=55}n=n*t+o}return n}).args([["*text","string"],["*radix",["and","integer",["[between]",2,36]]]]),C("char",function(e){return String.fromCharCode(e)}).args([["*code","integer+"]]),U=/[\0-\x1F\x7F-\x9F\xAD\u0378\u0379\u037F-\u0383\u038B\u038D\u03A2\u0528-\u0530\u0557\u0558\u0560\u0588\u058B-\u058E\u0590\u05C8-\u05CF\u05EB-\u05EF\u05F5-\u0605\u061C\u061D\u06DD\u070E\u070F\u074B\u074C\u07B2-\u07BF\u07FB-\u07FF\u082E\u082F\u083F\u085C\u085D\u085F-\u089F\u08A1\u08AD-\u08E3\u08FF\u0978\u0980\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09FC-\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF2-\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B55\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B78-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0C00\u0C04\u0C0D\u0C11\u0C29\u0C34\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5A-\u0C5F\u0C64\u0C65\u0C70-\u0C77\u0C80\u0C81\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0D01\u0D04\u0D0D\u0D11\u0D3B\u0D3C\u0D45\u0D49\u0D4F-\u0D56\u0D58-\u0D5F\u0D64\u0D65\u0D76-\u0D78\u0D80\u0D81\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DF1\u0DF5-\u0E00\u0E3B-\u0E3E\u0E5C-\u0E80\u0E83\u0E85\u0E86\u0E89\u0E8B\u0E8C\u0E8E-\u0E93\u0E98\u0EA0\u0EA4\u0EA6\u0EA8\u0EA9\u0EAC\u0EBA\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F48\u0F6D-\u0F70\u0F98\u0FBD\u0FCD\u0FDB-\u0FFF\u10C6\u10C8-\u10CC\u10CE\u10CF\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u137D-\u137F\u139A-\u139F\u13F5-\u13FF\u169D-\u169F\u16F1-\u16FF\u170D\u1715-\u171F\u1737-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17DE\u17DF\u17EA-\u17EF\u17FA-\u17FF\u180F\u181A-\u181F\u1878-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191D-\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1943\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DB-\u19DD\u1A1C\u1A1D\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1A9F\u1AAE-\u1AFF\u1B4C-\u1B4F\u1B7D-\u1B7F\u1BF4-\u1BFB\u1C38-\u1C3A\u1C4A-\u1C4C\u1C80-\u1CBF\u1CC8-\u1CCF\u1CF7-\u1CFF\u1DE7-\u1DFB\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FC5\u1FD4\u1FD5\u1FDC\u1FF0\u1FF1\u1FF5\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u206F\u2072\u2073\u208F\u209D-\u209F\u20BB-\u20CF\u20F1-\u20FF\u218A-\u218F\u23F4-\u23FF\u2427-\u243F\u244B-\u245F\u2700\u2B4D-\u2B4F\u2B5A-\u2BFF\u2C2F\u2C5F\u2CF4-\u2CF8\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D71-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E3C-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3040\u3097\u3098\u3100-\u3104\u312E-\u3130\u318F\u31BB-\u31BF\u31E4-\u31EF\u321F\u32FF\u4DB6-\u4DBF\u9FCD-\u9FFF\uA48D-\uA48F\uA4C7-\uA4CF\uA62C-\uA63F\uA698-\uA69E\uA6F8-\uA6FF\uA78F\uA794-\uA79F\uA7AB-\uA7F7\uA82C-\uA82F\uA83A-\uA83F\uA878-\uA87F\uA8C5-\uA8CD\uA8DA-\uA8DF\uA8FC-\uA8FF\uA954-\uA95E\uA97D-\uA97F\uA9CE\uA9DA-\uA9DD\uA9E0-\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A\uAA5B\uAA7C-\uAA7F\uAAC3-\uAADA\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F-\uABBF\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBC2-\uFBD2\uFD40-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFE\uFDFF\uFE1A-\uFE1F\uFE27-\uFE2F\uFE53\uFE67\uFE6C-\uFE6F\uFE75\uFEFD-\uFF00\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF]/g,C("clean",function(e){return e.replace(U,"")}).args([["*text","string"]]),C("code",function(e){return e.charAt(0)}).args([["*text","string"]]),S("unichar","char"),S("unicode","code"),C("concatenate",function(){var e,t="";for(e=0;e<arguments.length;++e)t+=arguments[e];return t}).args([["+",["*text","string"]]]),C("dollar",function(e,t){for(var n="$#,##0.DECIMALS;($#,##0.DECIMALS)",i="";t-->0;)i+="0";return n=n.replace(/DECIMALS/g,i),y.formatting.format(e,n).text()}).args([["*number","number"],["*decimals",["or","integer++",["null",2]]]]),C("exact",function(e,t){return e===t}).args([["*text1","string"],["*text2","string"]]),C("find",function(e,t,n){var i=t.indexOf(e,n-1);return 0>i?new T("VALUE"):i+1}).args([["*substring","string"],["*string","string"],["*start",["or","integer++",["null",1]]]]),C("fixed",function(e,t,n){for(var i=n?"0.DECIMALS":"#,##0.DECIMALS",o="";t-->0;)o+="0";return i=i.replace(/DECIMALS/g,o),y.formatting.format(e,i).text()}).args([["*number","number"],["*decimals",["or","integer++",["null",2]]],["*noCommas",["or","boolean",["null",!1]]]]),C("left",function(e,t){return e.substr(0,t)}).args([["*text","string"],["*length",["or","integer+",["null",1]]]]),C("right",function(e,t){return e.substr(-t)}).args([["*text","string"],["*length",["or","integer+",["null",1]]]]),C("len",function(e){return e.length}).args([["*text","string"]]),C("lower",function(e){return e.toLowerCase()}).args([["*text","string"]]),C("upper",function(e){return e.toUpperCase()}).args([["*text","string"]]),C("ltrim",function(e){return e.replace(/^\s+/,"")}).args([["*text","string"]]),C("rtrim",function(e){return e.replace(/\s+$/,"")}).args([["*text","string"]]),C("trim",function(e){return e.replace(/^\s+|\s+$/,"")}).args([["*text","string"]]),C("mid",function(e,t,n){return e.substr(t-1,n)}).args([["*text","string"],["*start","integer++"],["*length","integer+"]]),C("proper",function(e){return e.toLowerCase().replace(/\b./g,function(e){return e.toUpperCase()})}).args([["*text","string"]]),C("replace",function(e,t,n,i){return e.substr(0,--t)+i+e.substr(t+n)}).args([["*text","string"],["*start","integer++"],["*length","integer+"],["*newText","string"]]),C("rept",function(e,t){for(var n="";t-->0;)n+=e;return n}).args([["*text","string"],["*number","integer+"]]),C("search",function(e,t,n){var i=t.toLowerCase().indexOf(e.toLowerCase(),n-1);return 0>i?new T("VALUE"):i+1}).args([["*substring","string"],["*string","string"],["*start",["or","integer++",["null",1]]]]),C("substitute",function(e,t,n,i){function o(){e=e.substring(0,r)+n+e.substring(r+t.length)}if(t===n)return e;for(var r=-1;(r=e.indexOf(t,r+1))>=0;)if(null==i)o();else if(0===--i){o();break}return e}).args([["*text","string"],["*oldText","string"],["*newText","string"],["*nth",["or","integer++","null"]]]),C("t",function(e){return"string"==typeof e?e:""}).args([["*value","anyvalue"]]),C("text",function(e,t){return y.formatting.format(e,t).text()}).args([["*value","anyvalue"],["*format","string"]]),C("value",function(e){return"number"==typeof e?e:"boolean"==typeof e?+e:(e=(e+"").replace(/[$€,]/g,""),e=parseFloat(e),isNaN(e)?new T("VALUE"):e)}).args([["*value","anyvalue"]]),W=function(){function e(e,t){if("string"==typeof t){var n=parseFloat(t);isNaN(n)||(t=n)}return function(n){var i=t;return"string"==typeof n&&"string"==typeof i&&(n=n.toLowerCase(),i=i.toLowerCase()),e(n,i)}}function t(e){return"string"==typeof e?e.toLowerCase():e}function n(e,n){return t(e)<t(n)}function i(e,n){return t(e)<=t(n)}function o(e,n){return t(e)>t(n)}function r(e,n){return t(e)>=t(n)}function s(e,n){return t(e)!=t(n)}function a(e,n){return n instanceof RegExp?n.test(e):t(e)==t(n)}var l=Object.create(null);return function(t){var c,u;return"function"==typeof t?t:(c=/^=(.*)$/.exec(t))?e(a,c[1]):(c=/^<>(.*)$/.exec(t))?e(s,c[1]):(c=/^<=(.*)$/.exec(t))?e(i,c[1]):(c=/^<(.*)$/.exec(t))?e(n,c[1]):(c=/^>=(.*)$/.exec(t))?e(r,c[1]):(c=/^>(.*)$/.exec(t))?e(o,c[1]):/[?*]/.exec(t)?(u=l[t],u||(u=t.replace(/(~\?|~\*|[\]({\+\.\|\^\$\\})\[]|[?*])/g,function(e){switch(e){case"~?":return"\\?";case"~*":return"\\*";case"?":return".";case"*":return".*";default:return"\\"+e}}),u=l[t]=RegExp("^"+u+"$","i")),e(a,u)):e(a,t)}}())}(),function(){"use strict";function e(e){var n,i,o,r;if(Ne(e)>=3.3)return 1-t(e);for(n=e>0?1:-1,-1==n&&(e=-e),i=0,o=1,r=1;100>r;r++)i+=o,o*=2*e*e/(2*r+1);return 2*n/Math.sqrt(Math.PI)*e*Math.exp(-e*e)*i}function t(t){var n,i,o;if(Ne(t)<3.3)return 1-e(t);for(n=1,0>t&&(n=-1,t=-t),i=t,o=8;o>=1;o-=.5)i=t+o/i;return i=1/(t+i),1==n?Math.exp(-t*t)/Math.sqrt(Math.PI)*i:2-Math.exp(-t*t)/Math.sqrt(Math.PI)*i}function n(e){var t,n=[1.000000000190015,76.18009172947146,-86.50532032941678,24.01409824083091,-1.231739572450155,.001208650973866179,-5395239384953e-18],i=e,o=e+5.5,r=n[0];for(o-=(e+.5)*Math.log(o),t=1;6>=t;t++)i+=1,r+=n[t]/i;return-o+Math.log(Math.sqrt(2*Math.PI)*r/e)}function i(e){if(e>0)return Math.exp(n(e));var t=Math.PI,o=-e;return-t/(o*i(o)*Math.sin(t*o))}function o(e,t){return n(e)+n(t)-n(e+t)}function r(e,t){return Math.exp(o(e,t))}function s(e,t){return e+1>t?a(e,t):1-l(e,t)}function a(e,t){var i,o=1/e,r=o,s=e,a=n(e);for(i=1;Fe>=i&&(s++,r*=t/s,o+=r,!(Ne(r)<Ne(o)*Le));i++);return o*Math.exp(-t+e*Math.log(t)-a)}function l(e,t){var i,o,r=Oe,s=r,a=0,l=1,c=t+1-e,u=n(e);for(i=1;Fe>=i&&(a=c+l*a,Ne(a)<Oe&&(a=Oe),s=c+l/s,Ne(s)<Oe&&(s=Oe),a=1/a,o=s*a,r*=o,!(Ne(o-1)<Le));i++)c+=2,l=-i*(i-e);return r*Math.exp(-t-u+e*Math.log(t))}function c(e,t,n,o){return o?s(t,e/n):Math.pow(e/n,t-1)*Math.exp(-e/n)/(n*i(t))}function u(e,t,n){var i,o,r,s,a,l;if(0===e)return 0;if(1==e)return 1/0;for(i=0,o=10,r=0,s=t*n,s>1&&(o*=s),a=0;Fe>a&&(r=.5*(i+o),l=c(r,t,n,!0),!(Ne(e-l)<1e-16));a++)l>e?o=r:i=r;return r}function d(t,n){return n?.5+.5*e(t/Math.sqrt(2)):Math.exp(-t*t/2)/Math.sqrt(2*Math.PI)}function h(e){var t,n,i=[-39.69683028665376,220.9460984245205,-275.9285104469687,138.357751867269,-30.66479806614716,2.506628277459239],o=[-54.47609879822406,161.5858368580409,-155.6989798598866,66.80131188771972,-13.28068155288572],r=[-.007784894002430293,-.3223964580411365,-2.400758277161838,-2.549732539343734,4.374664141464968,2.938163982698783],s=[.007784695709041462,.3224671290700398,2.445134137142996,3.754408661907416],a=.02425,l=1-a;return a>e?(t=Math.sqrt(-2*Math.log(e)),(((((r[0]*t+r[1])*t+r[2])*t+r[3])*t+r[4])*t+r[5])/((((s[0]*t+s[1])*t+s[2])*t+s[3])*t+1)):e>l?(t=Math.sqrt(-2*Math.log(1-e)),-(((((r[0]*t+r[1])*t+r[2])*t+r[3])*t+r[4])*t+r[5])/((((s[0]*t+s[1])*t+s[2])*t+s[3])*t+1)):(t=e-.5,n=t*t,(((((i[0]*n+i[1])*n+i[2])*n+i[3])*n+i[4])*n+i[5])*t/(((((o[0]*n+o[1])*n+o[2])*n+o[3])*n+o[4])*n+1))}function f(e,t,n,i){return i?d((e-t)/n,!0):Math.exp(-(e-t)*(e-t)/(2*n*n))/(n*Math.sqrt(2*Math.PI))}function p(e,t,n){return t+n*h(e)}function g(e,t,n){return Math.exp((t-1)*Math.log(e)+(n-1)*Math.log(1-e)-o(t,n))}function m(e,t,n){var i=Math.exp(t*Math.log(e)+n*Math.log(1-e)-o(t,n));return(t+1)/(t+n+2)>e?i*v(t,n,e)/t:1-i*v(n,t,1-e)/n}function v(e,t,n){var i,o,r,s,a,l=e+t,c=e+1,u=e-1,d=1,h=1-l*n/c;for(Ne(h)<Oe&&(h=Oe),h=1/h,a=h,i=1;Fe>=i&&(o=2*i,r=i*(t-i)*n/((u+o)*(e+o)),h=1+r*h,Ne(h)<Oe&&(h=Oe),d=1+r/d,Ne(d)<Oe&&(d=Oe),h=1/h,a*=h*d,r=-(e+i)*(l+i)*n/((e+o)*(c+o)),h=1+r*h,Ne(h)<Oe&&(h=Oe),d=1+r/d,Ne(d)<Oe&&(d=Oe),h=1/h,s=h*d,a*=s,!(Ne(s-1)<Le));i++);return a}function _(e,t,n){var i,o,r=0,s=1,a=0;for(i=0;Fe>i&&(a=.5*(r+s),o=m(a,t,n),!(Ne(e-o)<Le));i++)o>e?s=a:r=a;return a}function w(e,t,n,i,o){return m((e-i)/(o-i),t,n)}function b(e,t,n,i,o,r){return i?m((e-o)/(r-o),t,n):g((e-o)/(r-o),t,n)/(r-o)}function y(e,t,n,i,o){return i+(o-i)*_(e,t,n)}function x(e,t,n){return c(e,t/2,2,n)}function k(e,t){return 1-x(e,t,!0)}function C(e,t){return u(e,t/2,2)}function S(e,t){return C(1-e,t)}function T(e,t){var n,i,o,r,s,a=e.length,l=e[0].length,c=0;for(n=0;a>n;n++)for(i=0;l>i;i++)o=t[n][i],r=e[n][i]-o,r*=r,c+=r/o;return s=(a-1)*(l-1),k(c,s)}function D(e,t,n){return n?1-Math.exp(-t*e):t*Math.exp(-t*e)}function A(e,t,n){var i,o;if(n)return 1-x(2*t,2*(e+1),!0);for(i=0,o=2;e>=o;o++)i+=Math.log(o);return Math.exp(e*Math.log(t)-t-i)}function E(e,t,n,i){if(i)return m(t*e/(n+t*e),t/2,n/2);var o=t/n;return t/=2,n/=2,o/r(t,n)*Math.pow(o*e,t-1)/Math.pow(1+o*e,t+n)}function M(e,t,n){return 1-E(e,t,n,!0)}function P(e,t,n){return n/t*(1/y(e,n/2,t/2,0,1)-1)}function I(e,t,n){return n/t*(1/y(1-e,n/2,t/2,0,1)-1)}function R(e){var t,n=0,i=e.length;for(t=0;i>t;t++)n+=e[t];return n/i}function z(e,t){var n,i,o=0,r=e.length;for(n=0;r>n;n++)i=e[n]-t,o+=i*i;return o/(r-1)}function B(e,t){var n=e.length-1,i=t.length-1,o=z(e,R(e)),r=z(t,R(t));if(!o||!r)throw new Be("DIV/0");return 2*E(o/r,n,i,!0)}function F(e){return.5*Math.log((1+e)/(1-e))}function L(e){var t=Math.exp(2*e);return(t-1)/(t+1)}function O(e,t,n){return n?1-.5*m(t/(e*e+t),t/2,.5):1/(Math.sqrt(t)*r(.5,t/2))*Math.pow(1+e*e/t,-(t+1)/2)}function N(e,t){return 1-O(e,t,!0)}function H(e,t){return 0>e&&(e=-e),2*N(e,t)}function V(e,t){var n=_(2*Math.min(e,1-e),t/2,.5);return n=Math.sqrt(t*(1-n)/n),e>.5?n:-n}function U(e,t){return V(1-e/2,t)}function W(e,t,n,i){var o,r,s,a,l,c,u,d,h,f,p,g,m,v,_,w,b=e.length,y=t.length;if(1==i){for(s=0,a=0,l=0;b>l;l++)c=e[l]-t[l],s+=c,a+=c*c;return u=s/b,o=u/Math.sqrt((a-s*u)/(b*(b-1))),1==n?N(o,b-1):H(o,b-1)}return d=R(e),h=R(t),f=z(e,d),p=z(t,h),3==i?(g=f/b,m=p/y,v=g+m,_=g/v,w=m/v,r=1/(_*_/(b-1)+w*w/(y-1)),o=Ne(d-h)/Math.sqrt(v),1==n?N(o,r):H(o,r)):(r=b+y-2,o=Ne(d-h)*Math.sqrt(r*b*y/((b+y)*((b-1)*f+(y-1)*p))),1==n?N(o,r):H(o,r))}function j(e,t,n){return-V(e/2,n-1)*t/Math.sqrt(n)}function q(e,t,n){return-h(e/2)*t/Math.sqrt(n)}function G(e){return d(e,!0)-.5}function $(e){return d(e)}function Y(t,n,i,o){if(o)return.5+.5*e((Math.log(t)-n)/(i*Math.sqrt(2)));var r=Math.log(t)-n;return Math.exp(-r*r/(2*i*i))/(t*i*Math.sqrt(2*Math.PI))}function Q(e,t,n){return Math.exp(p(e,t,n))}function K(e,t,n,i){var o,r,s,a=e.length,l=0;for(o=0;a>o;o++){if(0>=t[o]||t[o]>1)throw new Be("NUM");l+=t[o]}if(1!=l)throw new Be("NUM");for(r=0,o=0;a>o;o++)s=e[o],s>=n&&i>=s&&(r+=t[o]);return r}function X(e,t){var n,i,o,r=R(t),s=R(e),a=0,l=0;for(n=0,i=e.length;i>n;n++)o=t[n]-r,a+=o*(e[n]-s),l+=o*o;return a/l}function Z(e,t){var n,i,o,r=R(t),s=R(e),a=0,l=0;for(n=0,i=e.length;i>n;n++)o=t[n]-r,a+=o*(e[n]-s),l+=o*o;return s-a*r/l}function J(e,t){var n,i,o,r,s=R(e),a=R(t),l=0,c=0,u=0;for(n=0,i=e.length;i>n;n++)o=e[n]-s,r=t[n]-a,l+=o*r,c+=o*o,u+=r*r;return l/Math.sqrt(c*u)}function ee(e,t){var n=J(e,t);return n*n}function te(e,t){var n,i,o,r=t.length,s=R(t),a=R(e),l=0,c=0,u=0;for(n=0;r>n;n++)i=t[n]-s,o=e[n]-a,l+=o*o,c+=i*o,u+=i*i;return Math.sqrt((l-c*c/u)/(r-2))}function ne(e,t,n){var i,o,r,s,a,l,c=R(n),u=R(t),d=0,h=0;for(i=0,o=n.length;o>i;i++)r=n[i]-c,s=t[i]-u,d+=r*s,h+=r*r;if(0===h)throw new Be("N/A");return a=d/h,l=u-a*c,l+a*e}function ie(e){var t,n=e.height,i=0;for(t=0;n>t;t++)i+=e.data[t][0];return i/n}function oe(e,t){var n,i,o=e.height,r=0;for(n=0;o>n;n++)i=e.data[n][0]-t,r+=i*i;return r}function re(e,t,n,i){var o,r,s,a,l,c,u,d,h,f,p,g,m,v,_,w,b,y,x=0;for(t||(t=e.map(function(){return++x})),n&&(t=t.clone(),t.eachRow(function(e){t.data[e].unshift(1)}),++t.width),o=t.transpose(),r=o.multiply(t).inverse().multiply(o).multiply(e),s=[],x=r.height-1;x>=0;x--)s.push(r.data[x][0]);if(n||s.push(0),!i)return this.asMatrix([s]);for(a=t.multiply(r),l=e.adds(a,!0),c=n?ie(a):0,u=oe(a,c),d=n?ie(l):0,h=oe(l,d),f=[],f.push(u,h),p=u/(u+h),g=e.height-t.width,m=Math.sqrt(h/g),v=[],v.push(p,m),_=n?u/(t.width-1)/(h/g):p/t.width/((1-p)/g),w=[],w.push(_,g),b=o.multiply(t).inverse(),y=[],x=b.height-1;x>=0;x--)y.push(Math.sqrt(b.data[x][x]*h/g));return this.asMatrix([s,y,v,w,f])}function se(e,t,n,i){return re.call(this,e.map(Math.log),t,n,i).map(Math.exp)}function ae(e,t,n,i){var o,r,s=0;return t||(t=e.map(function(){return++s})),i&&(t=t.clone(),t.eachRow(function(e){t.data[e].unshift(1)}),++t.width),o=t.transpose(),r=o.multiply(t).inverse().multiply(o).multiply(e),n?i&&(n=n.clone(),n.eachRow(function(e){n.data[e].unshift(1)}),++n.width):n=t,n.multiply(r)}function le(e,t,n,i){return ae.call(this,e.map(Math.log),t,n,i).map(Math.exp)}function ce(e,t,n,i){var o,r,s,a,l,c=n||20,u=i||1e-7,d=t;for(o=1;c>=o;o++)if(r=e(d),s=r[0],a=r[1],l=s/a,d-=l,Math.abs(l)<u)return d;return new Be("NUM")}function ue(e,t,n,i,o){var r=Math.pow(1+e,t),s=e?(r-1)/e:t;return-(i*r+n*s*(1+e*o))}function de(e,t,n,i,o){if(!e)return-i-n*t;var r=Math.pow(1+e,t);return-(i+n*(r-1)/e*(1+e*o))/r}function he(e,t,n,i,o){if(!e)return-(i+n)/t;var r=Math.pow(1+e,t);return-e*(i+n*r)/((1+e*o)*(r-1))}function fe(e,t,n,i,o){if(!e)return-(i+n)/t;var r=t*(1+e*o);return Math.log((r-i*e)/(r+n*e))/Math.log(1+e)}function pe(e,t,n,i,o,r){function s(r){var s=Math.pow(1+r,e-1),a=s*(1+r);return[n*a+t*(1/r+o)*(a-1)+i,e*n*s+t*(-(a-1)/(r*r)+(1/r+o)*e*s)]}return ce(s,r)}function ge(e,t,n,i,o,r){var s,a;return 1==r&&1==t?0:(s=he(e,n,i,o,r),a=ue(e,t-1,s,i,r)*e,r?a/(1+e):a)}function me(e,t,n,i,o,r){var s=he(e,n,i,o,r);return s-ge(e,t,n,i,o,r)}function ve(e,t,n,i,o,r){var s,a,l,c,u,d;return 1==r&&(i--,o--),s=Math.pow(1+e,t),a=Math.pow(1+e,i-1),l=Math.pow(1+e,o),c=e*n*s/(s-1),u=a*n-(a-1)/e*c,d=l*n-(l-1)/e*c,d-u}function _e(e,t,n,i,o,r){var s,a=0;for(s=i;o>=s;s++)a+=ge(e,s,t,n,0,r);return a}function we(e,t){var n,i,o=0;for(n=0,i=t.length;i>n;n++)o+=t[n]*Math.pow(1+e,-n-1);return o}function be(e,t){function n(t){var n,i,o=0,r=0;for(n=0,i=e.length;i>n;n++)o+=e[n]*Math.pow(1+t,-n-1),r+=-n*e[n]*Math.pow(1+t,-n-2);return[o,r]}return ce(n,t)}function ye(e,t){return Math.pow(1+e/t,t)-1}function xe(e,t){return t*(Math.pow(e+1,1/t)-1)}function ke(e,t,n){var i,o,r=0;for(i=0,o=t.length;o>i;i++)r+=t[i]*Math.pow(1+e,(n[0]-n[i])/365);return r}function Ce(e,t,n){function i(n){var i,o,r,s=e[0],a=0;for(i=1,o=e.length;o>i;i++)r=(t[0]-t[i])/365,s+=e[i]*Math.pow(1+n,r),a+=r*e[i]*Math.pow(1+n,r-1);return[s,a]}return ce(i,n)}function Se(e,t,n,i){var o=-i*e;return o*(1-t/n)}function Te(e,t,n,i,o){var r,s,a=1-Math.pow(t/e,1/n);if(a=Math.floor(1e3*a+.5)/1e3,r=e*a*o/12,1==i)return r;for(s=1;n>s;s++){if(s==i-1)return(e-r)*a;r+=(e-r)*a}return(e-r)*a*(12-o)/12}function De(e,t,n,i,o){var r=o/n,s=-e*(Math.pow(1-r,i-1)-1),a=(e-s)*r;return a=Math.min(a,Math.max(0,e-s-t))}function Ae(e,t,n){return(e-t)/n}function Ee(e,t,n,i){return(e-t)*(n-i+1)*2/(n*(n+1))}function Me(e,t,n,i,o,r,s){function a(e,n){var i,o,r;return o=1==f?1==n?e:0:e*Math.pow(1-f,n-1),r=e*Math.pow(1-f,n),i=t>r?o-t:o-r,0>i?0:i}function l(e,n,i){var o,r,s,l=e-t,c=Math.ceil(i),u=0,d=0,h=!1;for(r=1;c>=r;r++)h?o=u:(s=a(e,r),u=l/(n-r+1),u>s?(o=u,h=!0):(o=s,l-=s)),r==c&&(o*=i+1-c),d+=o;return d}var c,u,d,h,f=r>=n?1:r/n,p=Math.floor(i),g=Math.ceil(o),m=0;if(s)for(c=p+1;g>=c;c++)u=a(e,c),c==p+1?u*=Math.min(o,p+1)-i:c==g&&(u*=o+1-g),m+=u;else d=n,i!=Math.floor(i)&&r>1&&i>=n/2&&(h=i-n/2,i=n/2,o-=h,d+=1),e-=l(e,d,i),m=l(e,n-i,o-i);return m}var Pe,Ie,Re,ze,Be,Fe,Le,Oe,Ne;kendo.support.browser.msie&&kendo.support.browser.version<9||(Pe=kendo.spreadsheet,Ie=Pe.calc,Re=Ie.runtime,ze=Re.defineFunction,Be=Re.CalcError,ze("ERF",function(t,n){return null==n?e(t):e(n)-e(t)}).args([["lower_limit","number"],["upper_limit",["or","number","null"]]]),ze("ERFC",t).args([["x","number"]]),ze("GAMMALN",n).args([["x","number++"]]),ze("GAMMA",i).args([["x","number"]]),ze("GAMMA.DIST",c).args([["x","number+"],["alpha","number++"],["beta","number++"],["cumulative","logical"]]),ze("GAMMA.INV",u).args([["p",["and","number",["[between]",0,1]]],["alpha","number++"],["beta","number++"]]),ze("NORM.S.DIST",d).args([["z","number"],["cumulative","logical"]]),ze("NORM.S.INV",h).args([["p",["and","number",["[between]",0,1]]]]),ze("NORM.DIST",f).args([["x","number"],["mean","number"],["stddev","number++"],["cumulative","logical"]]),ze("NORM.INV",p).args([["p",["and","number",["[between]",0,1]]],["mean","number"],["stddev","number++"]]),ze("BETADIST",w).args([["x","number"],["alpha","number++"],["beta","number++"],["A",["or","number",["null",0]]],["B",["or","number",["null",1]]],["?",["assert","$x >= $A","NUM"]],["?",["assert","$x <= $B","NUM"]],["?",["assert","$A < $B","NUM"]]]),ze("BETA.DIST",b).args([["x","number"],["alpha","number++"],["beta","number++"],["cumulative","logical"],["A",["or","number",["null",0]]],["B",["or","number",["null",1]]],["?",["assert","$x >= $A","NUM"]],["?",["assert","$x <= $B","NUM"]],["?",["assert","$A < $B","NUM"]]]),ze("BETA.INV",y).args([["p",["and","number",["[between]",0,1]]],["alpha","number++"],["beta","number++"],["A",["or","number",["null",0]]],["B",["or","number",["null",1]]]]),ze("CHISQ.DIST",x).args([["x","number+"],["deg_freedom","integer++"],["cumulative","logical"]]),ze("CHISQ.DIST.RT",k).args([["x","number+"],["deg_freedom","integer++"]]),ze("CHISQ.INV",C).args([["p",["and","number",["[between]",0,1]]],["deg_freedom","integer++"]]),ze("CHISQ.INV.RT",S).args([["p",["and","number",["[between]",0,1]]],["deg_freedom","integer++"]]),ze("CHISQ.TEST",function(e,t){return T(e.data,t.data)}).args([["actual_range","matrix"],["expected_range","matrix"],["?",["assert","$actual_range.width == $expected_range.width"]],["?",["assert","$actual_range.height == $expected_range.height"]]]),ze("EXPON.DIST",D).args([["x","number+"],["lambda","number++"],["cumulative","logical"]]),ze("POISSON.DIST",A).args([["x","integer+"],["mean","number+"],["cumulative","logical"]]),ze("F.DIST",E).args([["x","number+"],["deg_freedom1","integer++"],["deg_freedom2","integer++"],["cumulative","logical"]]),ze("F.DIST.RT",M).args([["x","number+"],["deg_freedom1","integer++"],["deg_freedom2","integer++"]]),ze("F.INV",I).args([["p",["and","number",["[between]",0,1]]],["deg_freedom1","integer++"],["deg_freedom2","integer++"]]),ze("F.INV.RT",P).args([["p",["and","number",["[between]",0,1]]],["deg_freedom1","integer++"],["deg_freedom2","integer++"]]),ze("F.TEST",B).args([["array1",["collect","number",1]],["array2",["collect","number",1]],["?",["assert","$array1.length >= 2","DIV/0"]],["?",["assert","$array2.length >= 2","DIV/0"]]]),ze("FISHER",F).args([["x",["and","number",["(between)",-1,1]]]]),ze("FISHERINV",L).args([["y","number"]]),ze("T.DIST",O).args([["x","number"],["deg_freedom","integer++"],["cumulative","logical"]]),ze("T.DIST.RT",N).args([["x","number"],["deg_freedom","integer++"]]),ze("T.DIST.2T",H).args([["x","number+"],["deg_freedom","integer++"]]),ze("T.INV",V).args([["p",["and","number",["(between]",0,1]]],["deg_freedom","integer++"]]),ze("T.INV.2T",U).args([["p",["and","number",["(between]",0,1]]],["deg_freedom","integer++"]]),ze("T.TEST",W).args([["array1",["collect","number",1]],["array2",["collect","number",1]],["tails",["and","integer",["values",1,2]]],["type",["and","integer",["values",1,2,3]]],["?",["assert","$type != 1 || $array1.length == $array2.length","N/A"]],["?",["assert","$array1.length >= 2","DIV/0"]],["?",["assert","$array2.length >= 2","DIV/0"]]]),ze("CONFIDENCE.T",j).args([["alpha",["and","number",["(between)",0,1]]],["standard_dev","number++"],["size",["and","integer++",["assert","$size != 1","DIV/0"]]]]),ze("CONFIDENCE.NORM",q).args([["alpha",["and","number",["(between)",0,1]]],["standard_dev","number++"],["size",["and","integer++"]]]),ze("GAUSS",G).args([["z","number"]]),ze("PHI",$).args([["x","number"]]),ze("LOGNORM.DIST",Y).args([["x","number++"],["mean","number"],["standard_dev","number++"],["cumulative","logical"]]),ze("LOGNORM.INV",Q).args([["probability",["and","number",["(between)",0,1]]],["mean","number"],["standard_dev","number++"]]),ze("PROB",K).args([["x_range",["collect","number",1]],["prob_range",["collect","number",1]],["lower_limit","number"],["upper_limit",["or","number",["null","$lower_limit"]]],["?",["assert","$prob_range.length == $x_range.length","N/A"]]]),ze("SLOPE",X).args([["known_y",["collect","number",1]],["known_x",["collect","number",1]],["?",["assert","$known_x.length == $known_y.length","N/A"]],["?",["assert","$known_x.length > 0 && $known_y.length > 0","N/A"]]]),ze("INTERCEPT",Z).args([["known_y",["collect","number",1]],["known_x",["collect","number",1]],["?",["assert","$known_x.length == $known_y.length","N/A"]],["?",["assert","$known_x.length > 0 && $known_y.length > 0","N/A"]]]),ze("PEARSON",J).args([["array1",["collect","number",1]],["array2",["collect","number",1]],["?",["assert","$array2.length == $array1.length","N/A"]],["?",["assert","$array2.length > 0 && $array1.length > 0","N/A"]]]),ze("RSQ",ee).args([["known_y",["collect","number",1]],["known_x",["collect","number",1]],["?",["assert","$known_x.length == $known_y.length","N/A"]],["?",["assert","$known_x.length > 0 && $known_y.length > 0","N/A"]],["?",["assert","$known_x.length != 1 && $known_y.length != 1","N/A"]]]),ze("STEYX",te).args([["known_y",["collect","number",1]],["known_x",["collect","number",1]],["?",["assert","$known_x.length == $known_y.length","N/A"]],["?",["assert","$known_x.length >= 3 && $known_y.length >= 3","DIV/0"]]]),ze("FORECAST",ne).args([["x","number"],["known_y",["collect","number",1]],["known_x",["collect","number",1]],["?",["assert","$known_x.length == $known_y.length","N/A"]],["?",["assert","$known_x.length > 0 && $known_y.length > 0","N/A"]]]),ze("LINEST",re).args([["known_y","matrix"],["known_x",["or","matrix","null"]],["const",["or","logical",["null",!0]]],["stats",["or","logical",["null",!1]]]]),ze("LOGEST",se).args([["known_y","matrix"],["known_x",["or","matrix","null"]],["const",["or","logical",["null",!0]]],["stats",["or","logical",["null",!1]]]]),ze("TREND",ae).args([["known_y","matrix"],["known_x",["or","matrix","null"]],["new_x",["or","matrix","null"]],["const",["or","logical",["null",!0]]]]),ze("GROWTH",le).args([["known_y","matrix"],["known_x",["or","matrix","null"]],["new_x",["or","matrix","null"]],["const",["or","logical",["null",!0]]]]),ze("FV",ue).args([["rate","number"],["nper","number"],["pmt",["or","number",["null",0]]],["pv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]],["?",["assert","$pmt || $pv"]]]),
|
||
ze("PV",de).args([["rate","number"],["nper","number"],["pmt",["or","number",["null",0]]],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]],["?",["assert","$pmt || $fv"]]]),ze("PMT",he).args([["rate","number"],["nper","number"],["pmt","number"],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]]]),ze("NPER",fe).args([["rate","number"],["pmt","number"],["pv","number"],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]]]),ze("RATE",pe).args([["nper","number"],["pmt",["or","number",["null",0]]],["pv","number"],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]],["guess",["or","number++",["null",.01]]],["?",["assert","$pmt || $fv"]]]),ze("IPMT",ge).args([["rate","number"],["per","number++"],["nper","number++"],["pv","number"],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]],["?",["assert","$per >= 1 && $per <= $nper"]]]),ze("PPMT",me).args([["rate","number"],["per","number++"],["nper","number++"],["pv","number"],["fv",["or","number",["null",0]]],["type",["or",["values",0,1],["null",0]]],["?",["assert","$per >= 1 && $per <= $nper"]]]),ze("CUMPRINC",ve).args([["rate","number++"],["nper","number++"],["pv","number++"],["start_period","number++"],["end_period","number++"],["type",["or",["values",0,1],["null",0]]],["?",["assert","$end_period >= $start_period","NUM"]]]),ze("CUMIPMT",_e).args([["rate","number++"],["nper","number++"],["pv","number++"],["start_period","number++"],["end_period","number++"],["type",["or",["values",0,1],["null",0]]],["?",["assert","$end_period >= $start_period","NUM"]]]),ze("NPV",we).args([["rate","number"],["values",["collect","number"]],["?",["assert","$values.length > 0","N/A"]]]),ze("IRR",be).args([["values",["collect","number",1]],["guess",["or","number",["null",.1]]]]),ze("EFFECT",ye).args([["nominal_rate","number++"],["npery","integer++"]]),ze("NOMINAL",xe).args([["effect_rate","number++"],["npery","integer++"]]),ze("XNPV",ke).args([["rate","number"],["values",["collect","number",1]],["dates",["collect","date",1]],["?",["assert","$values.length == $dates.length","NUM"]]]),ze("XIRR",Ce).args([["values",["collect","number",1]],["dates",["collect","date",1]],["guess",["or","number",["null",.1]]],["?",["assert","$values.length == $dates.length","NUM"]]]),ze("ISPMT",Se).args([["rate","number"],["per","number++"],["nper","number++"],["pv","number"],["?",["assert","$per >= 1 && $per <= $nper"]]]),ze("DB",Te).args([["cost","number"],["salvage","number"],["life","number++"],["period","number++"],["month",["or","number",["null",12]]]]),ze("DDB",De).args([["cost","number"],["salvage","number"],["life","number++"],["period","number++"],["factor",["or","number",["null",2]]]]),ze("SLN",Ae).args([["cost","number"],["salvage","number"],["life","number++"]]),ze("SYD",Ee).args([["cost","number"],["salvage","number"],["life","number++"],["per","number++"]]),ze("VDB",Me).args([["cost","number+"],["salvage","number+"],["life","number++"],["start_period","number+"],["end_period","number+"],["factor",["or","number+",["null",2]]],["no_switch",["or","logical",["null",!1]]],["?",["assert","$end_period >= $start_period","NUM"]]]),Fe=300,Le=2.2204e-16,Oe=1e-30,Ne=Math.abs)}(),function(){!function(e){var t,n,i,o;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=["allBorders","insideBorders","insideHorizontalBorders","insideVerticalBorders","outsideBorders","leftBorder","topBorder","rightBorder","bottomBorder","noBorders"],i=e.spreadsheet.messages.borderPalette={allBorders:"All borders",insideBorders:"Inside borders",insideHorizontalBorders:"Inside horizontal borders",insideVerticalBorders:"Inside vertical borders",outsideBorders:"Outside borders",leftBorder:"Left border",topBorder:"Top border",rightBorder:"Right border",bottomBorder:"Bottom border",noBorders:"No border"},o=e.ui.Widget.extend({init:function(t,n){e.ui.Widget.call(this,t,n),this.element=t,this.color="#000",this.element.addClass("k-spreadsheet-border-palette"),this._borderTypePalette(),this._borderColorPalette(),this.element.on("click",".k-spreadsheet-border-type-palette .k-button",this._click.bind(this))},options:{name:"BorderPalette"},events:["change"],_borderTypePalette:function(){var o=i,r=n.map(function(t){return'<a title="'+o[t]+'" href="#" data-border-type="'+t+'" class="k-button k-button-icon"><span class="k-sprite k-font-icon k-icon k-i-'+e.toHyphens(t)+'"></span></a>'}).join(""),s=t("<div />",{"class":"k-spreadsheet-border-type-palette",html:r});s.appendTo(this.element)},_borderColorPalette:function(){var e=t("<div />",{"class":"k-spreadsheet-border-style-palette"}),n=this.colorPalette=t("<div />").kendoColorPalette({palette:["#ffffff","#000000","#d6ecff","#4e5b6f","#7fd13b","#ea157a","#feb80a","#00addc","#738ac8","#1ab39f","#f2f2f2","#7f7f7f","#a7d6ff","#d9dde4","#e5f5d7","#fad0e4","#fef0cd","#c5f2ff","#e2e7f4","#c9f7f1","#d8d8d8","#595959","#60b5ff","#b3bcca","#cbecb0","#f6a1c9","#fee29c","#8be6ff","#c7d0e9","#94efe3","#bfbfbf","#3f3f3f","#007dea","#8d9baf","#b2e389","#f272af","#fed46b","#51d9ff","#aab8de","#5fe7d5","#a5a5a5","#262626","#003e75","#3a4453","#5ea226","#af0f5b","#c58c00","#0081a5","#425ea9","#138677","#7f7f7f","#0c0c0c","#00192e","#272d37","#3f6c19","#750a3d","#835d00","#00566e","#2c3f71","#0c594f"],value:this.color,change:this._colorChange.bind(this)}).data("kendoColorPalette");e.append(n.wrapper).appendTo(this.element)},_colorChange:function(e){this.color=e.value,this.type&&this.trigger("change",{type:this.type,color:this.color})},_click:function(e){this.type=t(e.currentTarget).data("borderType"),this.trigger("change",{type:this.type,color:this.color})},destroy:function(){this.colorPalette.destroy(),this.element.off("click")}}),e.spreadsheet.BorderPalette=o)}(window.kendo)}(),function(){!function(e){var t,n,i,o,r,s,a,l,c,u,d,h,f,p,g,m,v,_,w,b,y,x,k,C,S,T,D,A,E,M,P,I,R;e.support.browser.msie&&9>e.support.browser.version||(t=e.jQuery,n=e.ui.ToolBar,i=e.spreadsheet.messages.toolbar={addColumnLeft:"Add column left",addColumnRight:"Add column right",addRowAbove:"Add row above",addRowBelow:"Add row below",alignment:"Alignment",alignmentButtons:{justtifyLeft:"Align left",justifyCenter:"Center",justifyRight:"Align right",justifyFull:"Justify",alignTop:"Align top",alignMiddle:"Align middle",alignBottom:"Align bottom"},backgroundColor:"Background",bold:"Bold",borders:"Borders",copy:"Copy",cut:"Cut",deleteColumn:"Delete column",deleteRow:"Delete row",excelExport:"Export to Excel...",filter:"Filter",fontFamily:"Font",fontSize:"Font size",format:"Custom format...",formatTypes:{automatic:"Automatic",number:"Number",percent:"Percent",financial:"Financial",currency:"Currency",date:"Date",time:"Time",dateTime:"Date time",duration:"Duration",moreFormats:"More formats..."},formatDecreaseDecimal:"Decrease decimal",formatIncreaseDecimal:"Increase decimal",freeze:"Freeze panes",freezeButtons:{freezePanes:"Freeze panes",freezeRows:"Freeze rows",freezeColumns:"Freeze columns",unfreeze:"Unfreeze panes"},italic:"Italic",merge:"Merge cells",mergeButtons:{mergeCells:"Merge all",mergeHorizontally:"Merge horizontally",mergeVertically:"Merge vertically",unmerge:"Unmerge"},paste:"Paste",quickAccess:{redo:"Redo",undo:"Undo"},sortAsc:"Sort ascending",sortDesc:"Sort descending",sortButtons:{sortSheetAsc:"Sort sheet A to Z",sortSheetDesc:"Sort sheet Z to A",sortRangeAsc:"Sort range A to Z",sortRangeDesc:"Sort range Z to A"},textColor:"Text Color",textWrap:"Wrap text",underline:"Underline",validation:"Data validation..."},o={home:["excelExport",["cut","copy","paste"],["bold","italic","underline"],"backgroundColor","textColor","borders","fontSize","fontFamily","alignment","textWrap",["formatDecreaseDecimal","formatIncreaseDecimal"],"format","merge","freeze","filter"],insert:[["addColumnLeft","addColumnRight","addRowBelow","addRowAbove"],["deleteColumn","deleteRow"]],data:["sort","filter","validation"]},r={excelExport:{type:"dialog",dialogName:"excelExport",overflow:"never",text:"",iconClass:"xlsa"},bold:{type:"button",command:"PropertyChangeCommand",property:"bold",value:!0,iconClass:"bold",togglable:!0},italic:{type:"button",command:"PropertyChangeCommand",property:"italic",value:!0,iconClass:"italic",togglable:!0},underline:{type:"button",command:"PropertyChangeCommand",property:"underline",value:!0,iconClass:"underline",togglable:!0},formatDecreaseDecimal:{type:"button",command:"AdjustDecimalsCommand",value:-1,iconClass:"decrease-decimal"},formatIncreaseDecimal:{type:"button",command:"AdjustDecimalsCommand",value:1,iconClass:"increase-decimal"},textWrap:{type:"button",command:"TextWrapCommand",property:"wrap",value:!0,iconClass:"text-wrap",togglable:!0},cut:{type:"button",command:"ToolbarCutCommand",iconClass:"cut"},copy:{type:"button",command:"ToolbarCopyCommand",iconClass:"copy"},paste:{type:"button",command:"ToolbarPasteCommand",iconClass:"paste"},separator:{type:"separator"},alignment:{type:"alignment",iconClass:"justify-left"},backgroundColor:{type:"colorPicker",property:"background",iconClass:"background"},textColor:{type:"colorPicker",property:"color",iconClass:"text"},fontFamily:{type:"fontFamily",property:"fontFamily",iconClass:"text"},fontSize:{type:"fontSize",property:"fontSize",iconClass:"font-size"},format:{type:"format",property:"format",iconClass:"format-number"},filter:{type:"filter",property:"hasFilter",iconClass:"filter"},merge:{type:"merge",iconClass:"merge-cells"},freeze:{type:"freeze",iconClass:"freeze-panes"},borders:{type:"borders",iconClass:"all-borders"},formatCells:{type:"dialog",dialogName:"formatCells",overflow:"never"},addColumnLeft:{type:"button",command:"AddColumnCommand",value:"left",iconClass:"add-column-left"},addColumnRight:{type:"button",command:"AddColumnCommand",value:"right",iconClass:"add-column-right"},addRowBelow:{type:"button",command:"AddRowCommand",value:"below",iconClass:"add-row-below"},addRowAbove:{type:"button",command:"AddRowCommand",value:"above",iconClass:"add-row-above"},deleteColumn:{type:"button",command:"DeleteColumnCommand",iconClass:"delete-column"},deleteRow:{type:"button",command:"DeleteRowCommand",iconClass:"delete-row"},sort:{type:"sort",iconClass:"sort-desc"},validation:{type:"dialog",dialogName:"validation",iconClass:"exception",overflow:"never"}},s=n.extend({init:function(e,t){t.items=this._expandTools(t.tools||s.prototype.options.tools[t.toolbarName]),n.fn.init.call(this,e,t);var i=this._click.bind(this);this.element.addClass("k-spreadsheet-toolbar"),this._addSeparators(this.element),this.bind({click:i,toggle:i})},_addSeparators:function(e){var t=e.children(".k-widget, .k-button, .k-button-group");t.slice(2).before("<span class='k-separator' />")},_expandTools:function(e){function n(e){var o=t.isPlainObject(e)?e:r[e]||{},s="k-icon k-font-icon k-i-"+o.iconClass,a=o.type,l={splitButton:{spriteCssClass:s},button:{showText:"overflow"},colorPicker:{toolIcon:s}},c=t.extend({name:o.name||e,text:i[o.name||e],spriteCssClass:s,attributes:{title:i[o.name||e]}},l[a],o);return"splitButton"==a&&(c.menuButtons=c.menuButtons.map(n)),c.attributes["data-tool"]=e,o.property&&(c.attributes["data-property"]=o.property),c}return e.reduce(function(e,i){return e.push(t.isArray(i)?{type:"buttonGroup",buttons:i.map(n)}:n.call(this,i)),e},[])},_click:function(e){var t,n=e.target.attr("data-tool"),i=r[n]||{},o=i.command;o&&(t={command:o,options:{property:i.property||null,value:i.value||null}},"boolean"==typeof t.options.value&&(t.options.value=e.checked?!0:null),this.action(t))},events:["click","toggle","open","close","overflowOpen","overflowClose","action","dialog"],options:{name:"SpreadsheetToolBar",resizable:!0,tools:o},action:function(e){this.trigger("action",e)},dialog:function(e){this.trigger("dialog",e)},refresh:function(t){function n(e,t){var n,i=e.toolbar,o=e.overflow,r=i&&i.options.togglable||o&&o.options.togglable;r&&(n=!1,"boolean"==typeof t?n=t:"string"==typeof t&&(n=i.options.value===t),i.toggle(n),o&&o.toggle(n))}function i(e,t){var n=e.toolbar,i=e.overflow;n&&n.update&&n.update(t),i&&i.update&&i.update(t)}var o,r,s,a,l=t,c=this._tools();for(o=0;c.length>o;o++)r=c[o].property,s=c[o].tool,a=e.isFunction(l[r])?l[r]():l,"button"===s.type?n(s,a):i(s,a)},_tools:function(){return this.element.find("[data-property]").toArray().reduce(function(e,n){n=t(n);var i=n.attr("data-property");return e.push({property:i,tool:this._getItem(n)}),e}.bind(this),[])},destroy:function(){this.element.find("[data-command],.k-button").each(function(){var e=t(this),n=e.data("instance");n&&n.destroy&&n.destroy()}),n.fn.destroy.call(this)}}),a=e.toolbar.Item.extend({init:function(e,n){var i=t("<select />").kendoDropDownList({height:"auto"}).data("kendoDropDownList");this.dropDownList=i,this.element=i.wrapper,this.options=e,this.toolbar=n,this.attributes(),this.addUidAttr(),this.addOverflowAttr(),i.bind("open",this._open.bind(this)),i.bind("change",this._change.bind(this)),this.element.width(e.width).attr({"data-command":"PropertyChangeCommand","data-property":e.property})},_open:function(){var t,n=this.dropDownList,i=n.list;i.css({whiteSpace:"nowrap",width:"auto"}),t=i.width(),t?t+=20:t=n._listWidth,i.css("width",t+e.support.scrollbar()),n._listWidth=t},_change:function(e){var t=e.sender,n=t.value(),i=t.dataItem(),o=i?i.popup:void 0;o?this.toolbar.dialog({name:o}):this.toolbar.action({command:"PropertyChangeCommand",options:{property:this.options.property,value:"null"==n?null:n}})},value:function(e){return void 0===e?this.dropDownList.value():void this.dropDownList.value(e)}}),l=e.toolbar.Item.extend({init:function(e,n){this.element=t("<a href='#' class='k-button k-button-icon'><span class='"+e.spriteCssClass+"'></span><span class='k-icon k-i-arrow-s'></span></a>"),this.element.on("click",this.open.bind(this)).attr("data-command",e.command),this.options=e,this.toolbar=n,this.attributes(),this.addUidAttr(),this.addOverflowAttr(),this._popup()},destroy:function(){this.popup.destroy()},open:function(){this.popup.toggle()},_popup:function(){var e=this.element;this.popup=t("<div class='k-spreadsheet-popup' />").appendTo(e).kendoPopup({anchor:e}).data("kendoPopup")}}),e.toolbar.registerComponent("dialog",e.toolbar.ToolBarButton.extend({init:function(t,n){e.toolbar.ToolBarButton.fn.init.call(this,t,n),this._dialogName=t.dialogName,this.element.bind("click",this.open.bind(this)).data("instance",this)},open:function(){this.toolbar.dialog({name:this._dialogName})}})),c=e.toolbar.OverflowButton.extend({init:function(t,n){e.toolbar.OverflowButton.fn.init.call(this,t,n),this.element.on("click",this._click.bind(this)),this.message=this.options.text;var i=this.element.data("button");this.element.data(this.options.type,i)},_click:t.noop}),u=l.extend({init:function(e,t){l.fn.init.call(this,e,t),this._colorPalette(),this.element.attr({"data-property":e.property}),this.element.data({type:"colorPicker",colorPicker:this,instance:this})},destroy:function(){this.colorPalette.destroy(),l.fn.destroy.call(this)},update:function(e){this.value(e)},value:function(e){return void 0===e?this.colorPalette.value():void this.colorPalette.value(e)},_colorPalette:function(){var e=t("<div />").appendTo(this.popup.element);this.colorPalette=e.kendoColorPalette({palette:["#ffffff","#000000","#d6ecff","#4e5b6f","#7fd13b","#ea157a","#feb80a","#00addc","#738ac8","#1ab39f","#f2f2f2","#7f7f7f","#a7d6ff","#d9dde4","#e5f5d7","#fad0e4","#fef0cd","#c5f2ff","#e2e7f4","#c9f7f1","#d8d8d8","#595959","#60b5ff","#b3bcca","#cbecb0","#f6a1c9","#fee29c","#8be6ff","#c7d0e9","#94efe3","#bfbfbf","#3f3f3f","#007dea","#8d9baf","#b2e389","#f272af","#fed46b","#51d9ff","#aab8de","#5fe7d5","#a5a5a5","#262626","#003e75","#3a4453","#5ea226","#af0f5b","#c58c00","#0081a5","#425ea9","#138677","#7f7f7f","#0c0c0c","#00192e","#272d37","#3f6c19","#750a3d","#835d00","#00566e","#2c3f71","#0c594f"],change:this._colorChange.bind(this)}).data("kendoColorPalette")},_colorChange:function(e){this.toolbar.action({command:"PropertyChangeCommand",options:{property:this.options.property,value:e.sender.value()}}),this.popup.close()}}),d=c.extend({init:function(e,t){e.iconName="text",c.fn.init.call(this,e,t)},_click:function(){this.toolbar.dialog({name:"colorPicker",options:{title:this.options.property,property:this.options.property}})}}),e.toolbar.registerComponent("colorPicker",u,d),h=[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],f=12,p=e.toolbar.Item.extend({init:function(e,n){var i=t("<input />").kendoComboBox({change:this._valueChange.bind(this),dataSource:e.fontSizes||h,value:f}).data("kendoComboBox");this.comboBox=i,this.element=i.wrapper,this.options=e,this.toolbar=n,this.attributes(),this.addUidAttr(),this.addOverflowAttr(),this.element.width(e.width).attr({"data-command":"PropertyChangeCommand","data-property":e.property}),this.element.data({type:"fontSize",fontSize:this})},_valueChange:function(t){this.toolbar.action({command:"PropertyChangeCommand",options:{property:this.options.property,value:e.parseInt(t.sender.value())}})},update:function(t){this.value(e.parseInt(t)||f)},value:function(e){return void 0===e?this.comboBox.value():void this.comboBox.value(e)}}),g=c.extend({_click:function(){this.toolbar.dialog({name:"fontSize",options:{sizes:h,defaultSize:f}})},update:function(e){this._value=e||f,this.element.find(".k-text").text(this.message+" ("+this._value+") ...")}}),e.toolbar.registerComponent("fontSize",p,g),m=["Arial","Courier New","Georgia","Times New Roman","Trebuchet MS","Verdana"],v="Arial",_=a.extend({init:function(e,t){a.fn.init.call(this,e,t);var n=this.dropDownList;n.setDataSource(e.fontFamilies||m),n.value(v),this.element.data({type:"fontFamily",fontFamily:this})},update:function(e){this.value(e||v)}}),w=c.extend({_click:function(){this.toolbar.dialog({name:"fontFamily",options:{fonts:m,defaultFont:v}})},update:function(e){this._value=e||v,this.element.find(".k-text").text(this.message+" ("+this._value+") ...")}}),e.toolbar.registerComponent("fontFamily",_,w),b=a.extend({_revertTitle:function(e){e.sender.value(""),e.sender.wrapper.width("auto")},init:function(e,t){a.fn.init.call(this,e,t);var n=this.dropDownList;n.bind("change",this._revertTitle.bind(this)),n.bind("dataBound",this._revertTitle.bind(this)),n.setOptions({dataValueField:"format",dataValuePrimitive:!0,valueTemplate:"<span class='k-icon k-font-icon k-i-"+e.iconClass+"' style='line-height: 1em; width: 1.35em;'></span>",template:"# if (data.sample) { #<span class='k-spreadsheet-sample'>#: data.sample #</span># } ##: data.name #"}),n.setDataSource([{format:null,name:i.formatTypes.automatic},{format:"#,0.00",name:i.formatTypes.number,sample:"1,499.99"},{format:"0.00%",name:i.formatTypes.percent,sample:"14.50%"},{format:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',name:i.formatTypes.financial,sample:"(1,000.12)"},{format:"$#,##0.00;[Red]$#,##0.00",name:i.formatTypes.currency,sample:"$1,499.99"},{format:"m/d/yyyy",name:i.formatTypes.date,sample:"4/21/2012"},{format:"h:mm:ss AM/PM",name:i.formatTypes.time,sample:"5:49:00 PM"},{format:"m/d/yyyy h:mm",name:i.formatTypes.dateTime,sample:"4/21/2012 5:49:00"},{format:"[h]:mm:ss",name:i.formatTypes.duration,sample:"168:05:00"},{popup:"formatCells",name:i.formatTypes.moreFormats}]),this.element.data({type:"format",format:this})}}),y=c.extend({_click:function(){this.toolbar.dialog({name:"formatCells"})}}),e.toolbar.registerComponent("format",b,y),x=l.extend({init:function(e,t){l.fn.init.call(this,e,t),this._borderPalette(),this.element.data({type:"borders",instance:this})},destroy:function(){this.borderPalette.destroy(),l.fn.destroy.call(this)},_borderPalette:function(){var n=t("<div />").appendTo(this.popup.element);this.borderPalette=new e.spreadsheet.BorderPalette(n,{change:this._action.bind(this)})},_action:function(e){this.toolbar.action({command:"BorderChangeCommand",options:{border:e.type,style:{size:1,color:e.color}}})}}),k=c.extend({_click:function(){this.toolbar.dialog({name:"borders"})}}),e.toolbar.registerComponent("borders",x,k),C=l.extend({init:function(e,n){l.fn.init.call(this,e,n),this.element.attr({"data-property":"alignment"}),this._commandPalette(),this.popup.element.on("click",".k-button",function(e){this._action(t(e.currentTarget))}.bind(this)),this.element.data({type:"alignment",alignment:this,instance:this})},buttons:[{property:"textAlign",value:"left",iconClass:"justify-left",text:i.alignmentButtons.justtifyLeft},{property:"textAlign",value:"center",iconClass:"justify-center",text:i.alignmentButtons.justifyCenter},{property:"textAlign",value:"right",iconClass:"justify-right",text:i.alignmentButtons.justifyRight},{property:"textAlign",value:"justify",iconClass:"justify-full",text:i.alignmentButtons.justifyFull},{property:"verticalAlign",value:"top",iconClass:"align-top",text:i.alignmentButtons.alignTop},{property:"verticalAlign",value:"middle",iconClass:"align-middle",text:i.alignmentButtons.alignMiddle},{property:"verticalAlign",value:"bottom",iconClass:"align-bottom",text:i.alignmentButtons.alignBottom}],destroy:function(){this.popup.element.off(),l.fn.destroy.call(this)},update:function(e){var t=e.textAlign(),n=e.verticalAlign();this.popup.element.find(".k-button").removeClass("k-state-active"),t&&this.popup.element.find(".k-button[data-value="+t+"]").addClass("k-state-active"),n&&this.popup.element.find(".k-button[data-value="+n+"]").addClass("k-state-active")},_commandPalette:function(){var e=this.buttons,n=t("<div />").appendTo(this.popup.element);e.forEach(function(i,o){var r="<a title='"+i.text+"' data-property='"+i.property+"' data-value='"+i.value+"' class='k-button k-button-icon'><span class='k-icon k-font-icon k-i-"+i.iconClass+"'></span></a>";0!==o&&e[o-1].property!==i.property&&n.append(t("<span class='k-separator' />")),n.append(r)})},_action:function(e){var t=e.attr("data-property"),n=e.attr("data-value");this.toolbar.action({command:"PropertyChangeCommand",options:{property:t,value:n}})}}),S=c.extend({_click:function(){this.toolbar.dialog({name:"alignment"})}}),e.toolbar.registerComponent("alignment",C,S),T=l.extend({init:function(e,n){l.fn.init.call(this,e,n),this._commandPalette(),this.popup.element.on("click",".k-button",function(e){this._action(t(e.currentTarget))}.bind(this)),this.element.data({type:"merge",merge:this,instance:this})},buttons:[{value:"cells",iconClass:"merge-cells",text:i.mergeButtons.mergeCells},{value:"horizontally",iconClass:"merge-horizontally",text:i.mergeButtons.mergeHorizontally},{value:"vertically",iconClass:"merge-vertically",text:i.mergeButtons.mergeVertically},{value:"unmerge",iconClass:"normal-layout",text:i.mergeButtons.unmerge}],destroy:function(){this.popup.element.off(),l.fn.destroy.call(this)},_commandPalette:function(){var e=t("<div />").appendTo(this.popup.element);this.buttons.forEach(function(t){var n="<a title='"+t.text+"' data-value='"+t.value+"' class='k-button k-button-icontext'><span class='k-icon k-font-icon k-i-"+t.iconClass+"'></span>"+t.text+"</a>";e.append(n)})},_action:function(e){var t=e.attr("data-value");this.toolbar.action({command:"MergeCellCommand",options:{value:t}})}}),D=c.extend({_click:function(){this.toolbar.dialog({name:"merge"})}}),e.toolbar.registerComponent("merge",T,D),A=l.extend({init:function(e,n){l.fn.init.call(this,e,n),this._commandPalette(),this.popup.element.on("click",".k-button",function(e){this._action(t(e.currentTarget))}.bind(this)),this.element.data({type:"freeze",freeze:this,instance:this})},buttons:[{value:"panes",iconClass:"freeze-panes",text:i.freezeButtons.freezePanes},{value:"rows",iconClass:"freeze-row",text:i.freezeButtons.freezeRows},{value:"columns",iconClass:"freeze-col",text:i.freezeButtons.freezeColumns},{value:"unfreeze",iconClass:"normal-layout",text:i.freezeButtons.unfreeze}],destroy:function(){this.popup.element.off(),l.fn.destroy.call(this)},_commandPalette:function(){var e=t("<div />").appendTo(this.popup.element);this.buttons.forEach(function(t){var n="<a title='"+t.text+"' data-value='"+t.value+"' class='k-button k-button-icontext'><span class='k-icon k-font-icon k-i-"+t.iconClass+"'></span>"+t.text+"</a>";e.append(n)})},_action:function(e){var t=e.attr("data-value");this.toolbar.action({command:"FreezePanesCommand",options:{value:t}})}}),E=c.extend({_click:function(){this.toolbar.dialog({name:"freeze"})}}),e.toolbar.registerComponent("freeze",A,E),M=a.extend({_revertTitle:function(e){e.sender.value(""),e.sender.wrapper.width("auto")},init:function(e,t){a.fn.init.call(this,e,t);var n=this.dropDownList;n.bind("change",this._revertTitle.bind(this)),n.bind("dataBound",this._revertTitle.bind(this)),n.setOptions({valueTemplate:"<span class='k-icon k-font-icon k-i-"+e.iconClass+"' style='line-height: 1em; width: 1.35em;'></span>",template:"<span class='k-icon k-font-icon k-i-#= iconClass #' style='line-height: 1em; width: 1.35em;'></span>#=text#",dataValueField:"value"}),n.setDataSource([{value:1,sheet:!1,asc:!0,text:i.sortButtons.sortRangeAsc,iconClass:"sort-asc"},{value:2,sheet:!1,asc:!1,text:i.sortButtons.sortRangeDesc,iconClass:"sort-desc"}]),this.element.data({type:"sort",sort:this})},_change:function(e){var t=e.sender,n=t.dataItem();n&&this.toolbar.action({command:"SortCommand",options:{asc:n.asc,sheet:n.sheet}})},value:t.noop}),P=c.extend({_click:function(){this.toolbar.dialog({name:"sort"})}}),e.toolbar.registerComponent("sort",M,P),I=e.toolbar.ToolBarButton.extend({init:function(t,n){t.showText="overflow",e.toolbar.ToolBarButton.fn.init.call(this,t,n),this.element.on("click",this._click.bind(this)),this.element.data({type:"filter",filter:this})},_click:function(){this.toolbar.action({command:"FilterCommand"})},update:function(e){this.toggle(e)}}),R=c.extend({init:function(e,t){c.fn.init.call(this,e,t),this.element.data({type:"filter",filter:this})},_click:function(){this.toolbar.action({command:"FilterCommand"})},update:function(e){this.toggle(e)}}),e.toolbar.registerComponent("filter",I,R),e.spreadsheet.ToolBar=s,e.spreadsheet.TabStrip=e.ui.TabStrip.extend({init:function(n,i){e.ui.TabStrip.fn.init.call(this,n,i),n.addClass("k-spreadsheet-tabstrip"),this._quickAccessButtons(),this.quickAccessToolBar.on("click",".k-button",function(e){var n=t(e.currentTarget).attr("title").toLowerCase();this.trigger("action",{action:n})}.bind(this)),this.toolbars={};var o=i.dataSource;this.contentElements.each(function(e,n){this._toolbar(t(n),o[e].id,i.toolbarOptions[o[e].id])}.bind(this)),this.one("activate",function(){this.toolbars[this.options.dataSource[0].id].resize()})},events:e.ui.TabStrip.fn.events.concat(["action","dialog"]),destroy:function(){this.quickAccessToolBar.off("click"),e.ui.TabStrip.fn.destroy.call(this);for(var t in this.toolbars)this.toolbars[t].destroy()},action:function(e){this.trigger("action",e)},dialog:function(e){this.trigger("dialog",e)},refreshTools:function(e){var t,n=this.toolbars;for(t in n)n.hasOwnProperty(t)&&n[t].refresh(e)},_quickAccessButtons:function(){var n=[{title:i.quickAccess.undo,iconClass:"undo-large",action:"undo"},{title:i.quickAccess.redo,iconClass:"redo-large",action:"redo"}],o=e.template("<a href='\\#' title='#= title #' data-action='#= action #' class='k-button k-button-icon'><span class='k-icon k-font-icon k-i-#=iconClass#'></span></a>");this.quickAccessToolBar=t("<div />",{"class":"k-spreadsheet-quick-access-toolbar",html:e.render(o,n)}).insertBefore(this.wrapper),this.quickAccessToolBar.on("click",".k-button",function(e){var n=t(e.currentTarget).attr("title").toLowerCase();this.action({action:n})}.bind(this)),this.quickAccessAdjust()},quickAccessAdjust:function(){this.tabGroup.css("padding-left",this.quickAccessToolBar.outerWidth())},_toolbar:function(t,n,i){var o,r;this.toolbars[n]&&(this.toolbars[n].destroy(),t.children(".k-toolbar").remove()),i&&(o=t.html("<div />").children("div"),r={tools:"boolean"==typeof i?void 0:i,toolbarName:n,action:this.action.bind(this),dialog:this.dialog.bind(this)},this.toolbars[n]=new e.spreadsheet.ToolBar(o,r))}}))}(window.kendo)}(),function(){!function(e){function t(t,n){var i=e.spreadsheet.formatting.format(t,n);return i.children[0].nodeValue}function n(e,t){var n,o=[],r=[];for(n=0;t.length>n;n++)-1==i.inArray(t[n][e],r)&&(o.push(t[n]),r.push(t[n][e]));return o}var i,o,r,s,a,l,c,u,d,h,f,p,g,m,v,_,w,b,y,x,k,C;e.support.browser.msie&&9>e.support.browser.version||(i=e.jQuery,o=e.data.ObservableObject,r=e.spreadsheet.messages.dialogs={apply:"Apply",save:"Save",cancel:"Cancel",remove:"Remove",okText:"OK",formatCellsDialog:{title:"Format",categories:{number:"Number",currency:"Currency",date:"Date"}},fontFamilyDialog:{title:"Font"},fontSizeDialog:{title:"Font size"},bordersDialog:{title:"Borders"},alignmentDialog:{title:"Alignment",buttons:{justtifyLeft:"Align left",justifyCenter:"Center",justifyRight:"Align right",justifyFull:"Justify",alignTop:"Align top",alignMiddle:"Align middle",alignBottom:"Align bottom"}},mergeDialog:{title:"Merge cells",buttons:{mergeCells:"Merge all",mergeHorizontally:"Merge horizontally",mergeVertically:"Merge vertically",unmerge:"Unmerge"}},freezeDialog:{title:"Freeze panes",buttons:{freezePanes:"Freeze panes",freezeRows:"Freeze rows",freezeColumns:"Freeze columns",unfreeze:"Unfreeze panes"}},validationDialog:{title:"Data Validation",hintMessage:"Please enter a valid {0} value {1}.",hintTitle:"Validation {0}",criteria:{any:"Any value",number:"Number",text:"Text",date:"Date",custom:"Custom Formula",list:"List"},comparers:{greaterThan:"greater than",lessThan:"less than",between:"between",notBetween:"not between",equalTo:"equal to",notEqualTo:"not equal to",greaterThanOrEqualTo:"greater than or equal to",lessThanOrEqualTo:"less than or equal to"},comparerMessages:{greaterThan:"greater than {0}",lessThan:"less than {0}",between:"between {0} and {1}",notBetween:"not between {0} and {1}",equalTo:"equal to {0}",notEqualTo:"not equal to {0}",greaterThanOrEqualTo:"greater than or equal to {0}",lessThanOrEqualTo:"less than or equal to {0}",custom:"that satisfies the formula: {0}"},labels:{criteria:"Criteria",comparer:"Comparer",min:"Min",max:"Max",value:"Value",start:"Start",end:"End",onInvalidData:"On invalid data",rejectInput:"Reject input",showWarning:"Show warning",showHint:"Show hint",hintTitle:"Hint title",hintMessage:"Hint message"},placeholders:{typeTitle:"Type title",typeMessage:"Type message"}},saveAsDialog:{title:"Save As...",labels:{fileName:"File name",saveAsType:"Save as type"}},excelExportDialog:{title:"Export to Excel..."},modifyMergedDialog:{errorMessage:"Cannot change part of a merged cell."},useKeyboardDialog:{title:"Copying and pasting",errorMessage:"These actions cannot be invoked through the menu. Please use the keyboard shortcuts instead:",labels:{forCopy:"for copy",forCut:"for cut",forPaste:"for paste"}},unsupportedSelectionDialog:{errorMessage:"That action cannot be performed on multiple selection."}},s={},e.spreadsheet.dialogs={register:function(e,t){s[e]=t},create:function(e,t){var n=s[e];return n?new n(t):void 0}},a=e.spreadsheet.SpreadsheetDialog=e.Observable.extend({init:function(t){e.Observable.fn.init.call(this,t),this.options=i.extend(!0,{},this.options,t)},dialog:function(){return this._dialog||(this._dialog=i("<div class='k-spreadsheet-window k-action-window' />").addClass(this.options.className||"").append(this.options.template).appendTo(document.body).kendoWindow({scrollable:!1,resizable:!1,maximizable:!1,modal:!0,visible:!1,width:this.options.width||320,title:this.options.title,open:function(){this.center()},deactivate:function(){this._dialog.destroy(),this._dialog=null}.bind(this)}).data("kendoWindow")),this._dialog},destroy:function(){this._dialog&&(this._dialog.destroy(),this._dialog=null)},open:function(){this.dialog().open()},apply:function(){this.close()},close:function(){this.dialog().close()}}),l=e.spreadsheet.FormatCellsViewModel=o.extend({init:function(e){o.fn.init.call(this,e),this.useCategory(this.category)},useCategory:function(e){var t=e&&e.type||"number",n="currency"==t;this.category=e,this.set("showCurrencyFilter",n&&this.currencies.length>1),
|
||
n?this.currency(this.currencies[0]):this.set("formats",this.allFormats[t+"Formats"]),this.useFirstFormat()},useFirstFormat:function(){this.formats.length&&this.set("format",this.formats[0].value)},currency:function(e){var n,i;return void 0!==e&&(this._currency=e,n=e.value,i=[{currency:n,decimals:!0},{currency:n,decimals:!0,iso:!0},{currency:n,decimals:!1}],i=i.map(function(e){return e=l.convert.currency(e),{value:e,name:t(1e3,e)}}),this.set("formats",i),this.useFirstFormat()),this._currency||this.currencies[0]},categoryFilter:function(e){return void 0!==e&&this.useCategory(e),this.category},preview:function(){var e=this.get("format"),n=this.value||0;return e&&e.length?t(n,e):n}}),l.convert={currency:function(e){function t(e,t){return Array(t+1).join(e)}var n=e.currency,i=n.pattern[1];return e.decimals&&(i=i.replace(/n/g,"n"+n["."]+t("0",n.decimals))),i=e.iso?'"'+n.abbr+'" '+i.replace(/\s*\$\s*/g,""):i.replace(/\$/g,n.symbol),i=i.replace(/n/g,"?")},date:function(e){return/T|Z/.test(e)?"":e.toLowerCase().replace(/tt/g,"AM/PM").replace(/'/g,'"')}},c=a.extend({init:function(e){a.fn.init.call(this,e),this._generateFormats()},options:{title:r.formatCellsDialog.title,className:"k-spreadsheet-format-cells",categories:[{type:"number",name:r.formatCellsDialog.categories.number},{type:"currency",name:r.formatCellsDialog.categories.currency},{type:"date",name:r.formatCellsDialog.categories.date}],template:"<div class='k-root-tabs' data-role='tabstrip' data-text-field='name' data-bind='source: categories, value: categoryFilter' data-animation='false' /><div class='k-spreadsheet-preview' data-bind='text: preview' /><script type='text/x-kendo-template' id='format-item-template'>#: data.name #</script><select data-role='dropdownlist' class='k-format-filter' data-text-field='description' data-value-field='value.name' data-bind='visible: showCurrencyFilter, value: currency, source: currencies' /><ul data-role='staticlist' tabindex='0' class='k-list k-reset' data-template='format-item-template' data-value-primitive='true' data-value-field='value' data-bind='source: formats, value: format' /><div class='k-action-buttons'><button class='k-button k-primary' data-bind='click: apply'>"+r.apply+"</button><button class='k-button' data-bind='click: close'>"+r.cancel+"</button></div>"},_generateFormats:function(){var o,r=this.options;r.currencies||(r.currencies=c.currenciesFrom(e.cultures)),r.numberFormats||(r.numberFormats=[{value:"#.00%",name:"100.00%"},{value:"#%",name:"100%"},{value:"#.00",name:"1024.00"},{value:"#,###.00",name:"1,024.00"}]),r.dateFormats||(o=e.cultures.current.calendars.standard.patterns,r.dateFormats=n("value",i.map(o,function(e){return(e=l.convert.date(e))?{value:e,name:t(34567.7678,e)}:void 0})))},open:function(t){var n,i,o=this.options,r=t.value(),s=o.categories.slice(0);this.viewModel=new l({currencies:o.currencies.slice(0),allFormats:{numberFormats:o.numberFormats.slice(0),dateFormats:o.dateFormats.slice(0)},categories:s,format:t.format(),category:r instanceof Date?s[2]:s[0],apply:this.apply.bind(this),close:this.close.bind(this),value:r}),a.fn.open.call(this),n=this.dialog().element,e.bind(n,this.viewModel),i=n.find("select.k-format-filter").data("kendoDropDownList"),o.currencies.length>10&&i.setOptions({filter:"contains"}),n.find(e.roleSelector("staticlist")).parent().addClass("k-list-wrapper")},apply:function(){var e=this.viewModel.format;a.fn.apply.call(this),this.trigger("action",{command:"PropertyChangeCommand",options:{property:"format",value:e}})}}),c.currenciesFrom=function(t){return n("description",i.map(t,function(t,n){var i,o;if(/-/.test(n))return i=t.numberFormat.currency,o=e.format("{0} ({1}, {2})",i.name,i.abbr,i.symbol),{description:o,value:i}}))},e.spreadsheet.dialogs.register("formatCells",c),e.spreadsheet.dialogs.FormatCellsDialog=c,u=a.extend({options:{className:"k-spreadsheet-message",title:"",text:"",template:"<div class='k-spreadsheet-message-content' data-bind='text: text' /><div class='k-action-buttons'><button class='k-button k-primary' data-bind='click: close, text: okText' /></div>"},open:function(){a.fn.open.call(this),e.bind(this.dialog().element,{text:this.options.text,okText:r.okText,close:this.close.bind(this)})}}),e.spreadsheet.dialogs.register("message",u),d=a.extend({init:function(e){a.fn.init.call(this,e),this._list()},options:{title:r.fontFamilyDialog.title,template:"<ul class='k-list k-reset'></ul>"},_list:function(){var t=this.dialog().element.find("ul"),n=this.options.fonts,i=this.options.defaultFont;this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:n}),template:"#:data#",value:i,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){a.fn.apply.call(this),this.trigger("action",{command:"PropertyChangeCommand",options:{property:"fontFamily",value:e.sender.value()[0]}})}}),e.spreadsheet.dialogs.register("fontFamily",d),h=a.extend({init:function(e){a.fn.init.call(this,e),this._list()},options:{title:r.fontSizeDialog.title,template:"<ul class='k-list k-reset'></ul>"},_list:function(){var t=this.dialog().element.find("ul"),n=this.options.sizes,i=this.options.defaultSize;this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:n}),template:"#:data#",value:i,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(t){a.fn.apply.call(this),this.trigger("action",{command:"PropertyChangeCommand",options:{property:"fontSize",value:e.parseInt(t.sender.value()[0])}})}}),e.spreadsheet.dialogs.register("fontSize",h),f=a.extend({init:function(t){a.fn.init.call(this,t),this.element=this.dialog().element,this._borderPalette(),this.viewModel=e.observable({apply:this.apply.bind(this),close:this.close.bind(this)}),e.bind(this.element.find(".k-action-buttons"),this.viewModel)},options:{title:r.bordersDialog.title,width:177,template:"<div></div><div class='k-action-buttons'><button class='k-button k-primary' data-bind='click: apply'>"+r.apply+"</button><button class='k-button' data-bind='click: close'>"+r.cancel+"</button></div>"},apply:function(){a.fn.apply.call(this);var e=this.value();this.trigger("action",{command:"BorderChangeCommand",options:{border:e.type,style:{size:1,color:e.color}}})},_borderPalette:function(){var t=this.dialog().element.find("div:first");this.borderPalette=new e.spreadsheet.BorderPalette(t,{change:this.value.bind(this)})},value:function(e){return void 0===e?this._state:void(this._state=e)}}),e.spreadsheet.dialogs.register("borders",f),p=a.extend({init:function(t){a.fn.init.call(this,t),this.element=this.dialog().element,this._colorPalette(),this.property=t.property,this.options.title=t.title,this.viewModel=e.observable({apply:this.apply.bind(this),close:this.close.bind(this)}),e.bind(this.element.find(".k-action-buttons"),this.viewModel)},options:{width:177,template:"<div></div><div class='k-action-buttons'><button class='k-button k-primary' data-bind='click: apply'>"+r.apply+"</button><button class='k-button' data-bind='click: close'>"+r.cancel+"</button></div>"},apply:function(){a.fn.apply.call(this),this.trigger("action",{command:"PropertyChangeCommand",options:{property:this.property,value:this.value()}})},_colorPalette:function(){var e=this.dialog().element.find("div:first");this.colorPalette=e.kendoColorPalette({palette:["#ffffff","#000000","#d6ecff","#4e5b6f","#7fd13b","#ea157a","#feb80a","#00addc","#738ac8","#1ab39f","#f2f2f2","#7f7f7f","#a7d6ff","#d9dde4","#e5f5d7","#fad0e4","#fef0cd","#c5f2ff","#e2e7f4","#c9f7f1","#d8d8d8","#595959","#60b5ff","#b3bcca","#cbecb0","#f6a1c9","#fee29c","#8be6ff","#c7d0e9","#94efe3","#bfbfbf","#3f3f3f","#007dea","#8d9baf","#b2e389","#f272af","#fed46b","#51d9ff","#aab8de","#5fe7d5","#a5a5a5","#262626","#003e75","#3a4453","#5ea226","#af0f5b","#c58c00","#0081a5","#425ea9","#138677","#7f7f7f","#0c0c0c","#00192e","#272d37","#3f6c19","#750a3d","#835d00","#00566e","#2c3f71","#0c594f"],change:this.value.bind(this)}).data("kendoColorPalette")},value:function(e){return void 0===e?this._value:void(this._value=e.value)}}),e.spreadsheet.dialogs.register("colorPicker",p),g=a.extend({init:function(e){a.fn.init.call(this,e),this._list()},options:{title:"Alignment",template:"<ul class='k-list k-reset'></ul>",buttons:[{property:"textAlign",value:"left",iconClass:"justify-left",text:r.alignmentDialog.buttons.justtifyLeft},{property:"textAlign",value:"center",iconClass:"justify-center",text:r.alignmentDialog.buttons.justifyCenter},{property:"textAlign",value:"right",iconClass:"justify-right",text:r.alignmentDialog.buttons.justifyRight},{property:"textAlign",value:"justify",iconClass:"justify-full",text:r.alignmentDialog.buttons.justifyFull},{property:"verticalAlign",value:"top",iconClass:"align-top",text:r.alignmentDialog.buttons.alignTop},{property:"verticalAlign",value:"middle",iconClass:"align-middle",text:r.alignmentDialog.buttons.alignMiddle},{property:"verticalAlign",value:"bottom",iconClass:"align-bottom",text:r.alignmentDialog.buttons.alignBottom}]},_list:function(){var t=this.dialog().element.find("ul");this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:"<a title='#=text#' data-property='#=property#' data-value='#=value#'><span class='k-icon k-font-icon k-i-#=iconClass#'></span>#=text#</a>",change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger("action",{command:"PropertyChangeCommand",options:{property:t.property,value:t.value}})}}),e.spreadsheet.dialogs.register("alignment",g),m=a.extend({init:function(e){a.fn.init.call(this,e),this._list()},options:{title:r.mergeDialog.title,template:"<ul class='k-list k-reset'></ul>",buttons:[{value:"cells",iconClass:"merge-cells",text:r.mergeDialog.buttons.mergeCells},{value:"horizontally",iconClass:"merge-horizontally",text:r.mergeDialog.buttons.mergeHorizontally},{value:"vertically",iconClass:"merge-vertically",text:r.mergeDialog.buttons.mergeVertically},{value:"unmerge",iconClass:"normal-layout",text:r.mergeDialog.buttons.unmerge}]},_list:function(){var t=this.dialog().element.find("ul");this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:"<a title='#=text#' data-value='#=value#'><span class='k-icon k-font-icon k-i-#=iconClass#'></span>#=text#</a>",change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger("action",{command:"MergeCellCommand",options:{value:t.value}})}}),e.spreadsheet.dialogs.register("merge",m),v=a.extend({init:function(e){a.fn.init.call(this,e),this._list()},options:{title:r.freezeDialog.title,template:"<ul class='k-list k-reset'></ul>",buttons:[{value:"panes",iconClass:"freeze-panes",text:r.freezeDialog.buttons.freezePanes},{value:"rows",iconClass:"freeze-row",text:r.freezeDialog.buttons.freezeRows},{value:"columns",iconClass:"freeze-col",text:r.freezeDialog.buttons.freezeColumns},{value:"unfreeze",iconClass:"normal-layout",text:r.freezeDialog.buttons.unfreeze}]},_list:function(){var t=this.dialog().element.find("ul");this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:"<a title='#=text#' data-value='#=value#'><span class='k-icon k-font-icon k-i-#=iconClass#'></span>#=text#</a>",change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger("action",{command:"FreezePanesCommand",options:{value:t.value}})}}),e.spreadsheet.dialogs.register("freeze",v),_=e.spreadsheet.ValidationCellsViewModel=o.extend({init:function(e){o.fn.init.call(this,e),this.bind("change",function(e){"criterion"===e.field&&(this.reset(),("custom"===this.criterion||"list"===this.criterion)&&this.setHintMessageTemplate()),"comparer"===e.field&&this.setHintMessageTemplate(),"hintMessage"!=e.field&&"hintTitle"!=e.field||this._mute||(this.shouldBuild=!1),"from"!=e.field&&"to"!=e.field&&"hintMessageTemplate"!=e.field&&"type"!=e.field||!this.shouldBuild||this.buildMessages()}.bind(this)),this.reset()},buildMessages:function(){this._mute=!0,this.set("hintTitle",this.hintTitleTemplate?e.format(this.hintTitleTemplate,this.type):""),this.set("hintMessage",this.hintMessageTemplate?e.format(this.hintMessageTemplate,this.from,this.to):""),this._mute=!1},reset:function(){this.setComparers(),this.set("comparer",this.comparers[0].type),this.set("from",null),this.set("to",null),this.set("useCustomMessages",!1),this.shouldBuild=!0,this.hintTitleTemplate=this.defaultHintTitle,this.buildMessages()},setComparers:function(){var e,t,n=this.defaultComparers,i=[];if("text"===this.criterion)for(e=["equalTo","notEqualTo"],t=0;n.length>t;t++)e[0]==n[t].type&&(i.push(n[t]),e.shift());else i=n.slice();this.set("comparers",i)},setHintMessageTemplate:function(){"custom"!==this.criterion&&"list"!==this.criterion?this.set("hintMessageTemplate",e.format(this.defaultHintMessage,this.criterion,this.comparerMessages[this.comparer])):(this.set("hintMessageTemplate",""),this.set("hintMessage",""))},isAny:function(){return"any"===this.get("criterion")},isNumber:function(){return"number"===this.get("criterion")},isText:function(){return"text"===this.get("criterion")},isDate:function(){return"date"===this.get("criterion")},isList:function(){return"list"===this.get("criterion")},isCustom:function(){return"custom"===this.get("criterion")},showRemove:function(){return this.get("hasValidation")},showTo:function(){return"between"==this.get("comparer")||"notBetween"==this.get("comparer")},update:function(e){this.set("hasValidation",!!e),e&&this.fromValidationObject(e)},fromValidationObject:function(e){this.set("criterion",e.dataType),this.set("comparer",e.comparerType),this.set("from",e.from),this.set("to",e.to),this.set("type",e.type),e.messageTemplate||e.titleTemplate?(this.hintMessageTemplate=e.messageTemplate,this.hintMessage=e.messageTemplate,this.hintTitle=e.titleTemplate,this.useCustomMessages=!0,this.buildMessages()):this.useCustomMessages=!1},toValidationObject:function(){if("any"===this.criterion)return null;var e={type:this.type,dataType:this.criterion,comparerType:this.comparer,from:this.from,to:this.to};return this.useCustomMessages&&(e.messageTemplate=this.shouldBuild?this.hintMessageTemplate:this.hintMessage,e.titleTemplate=this.hintTitle),e}}),w=a.extend({init:function(e){a.fn.init.call(this,e)},options:{width:420,title:r.validationDialog.title,criterion:"any",type:"reject",hintMessage:r.validationDialog.hintMessage,hintTitle:r.validationDialog.hintTitle,useCustomMessages:!1,criteria:[{type:"any",name:"Any value"},{type:"number",name:"Number"},{type:"text",name:"Text"},{type:"date",name:"Date"},{type:"custom",name:"Custom Formula"},{type:"list",name:"List"}],comparers:[{type:"greaterThan",name:r.validationDialog.comparers.greaterThan},{type:"lessThan",name:r.validationDialog.comparers.lessThan},{type:"between",name:r.validationDialog.comparers.between},{type:"notBetween",name:r.validationDialog.comparers.notBetween},{type:"equalTo",name:r.validationDialog.comparers.equalTo},{type:"notEqualTo",name:r.validationDialog.comparers.notEqualTo},{type:"greaterThanOrEqualTo",name:r.validationDialog.comparers.greaterThanOrEqualTo},{type:"lessThanOrEqualTo",name:r.validationDialog.comparers.lessThanOrEqualTo}],comparerMessages:r.validationDialog.comparerMessages,template:'<div class="k-edit-form-container"><div class="k-edit-label"><label>'+r.validationDialog.labels.criteria+':</label></div><div class="k-edit-field"><select data-role="dropdownlist" data-text-field="name" data-value-field="type" data-bind="value: criterion, source: criteria" /></div><div data-bind="visible: isNumber"><div class="k-edit-label"><label>'+r.validationDialog.labels.comparer+':</label></div><div class="k-edit-field"><select data-role="dropdownlist" data-text-field="name" data-value-field="type" data-bind="value: comparer, source: comparers" /></div><div class="k-edit-label"><label>'+r.validationDialog.labels.min+':</label></div><div class="k-edit-field"><input placeholder="e.g. 10" class="k-textbox" data-bind="value: from" /></div><div data-bind="visible: showTo"><div class="k-edit-label"><label>'+r.validationDialog.labels.max+':</label></div><div class="k-edit-field"><input placeholder="e.g. 100" class="k-textbox" data-bind="value: to" /></div></div></div><div data-bind="visible: isText"><div class="k-edit-label"><label>'+r.validationDialog.labels.comparer+':</label></div><div class="k-edit-field"><select data-role="dropdownlist" data-text-field="name" data-value-field="type" data-bind="value: comparer, source: comparers" /></div><div class="k-edit-label"><label>'+r.validationDialog.labels.value+':</label></div><div class="k-edit-field"><input class="k-textbox" data-bind="value: from" /></div></div><div data-bind="visible: isDate"><div class="k-edit-label"><label>'+r.validationDialog.labels.comparer+':</label></div><div class="k-edit-field"><select data-role="dropdownlist" data-text-field="name" data-value-field="type" data-bind="value: comparer, source: comparers" /></div><div class="k-edit-label"><label>'+r.validationDialog.labels.start+':</label></div><div class="k-edit-field"><input class="k-textbox" data-bind="value: from" /></div><div data-bind="visible: showTo"><div class="k-edit-label"><label>'+r.validationDialog.labels.end+':</label></div><div class="k-edit-field"><input class="k-textbox" data-bind="value: to" /></div></div></div><div data-bind="visible: isCustom"><div class="k-edit-label"><label>'+r.validationDialog.labels.value+':</label></div><div class="k-edit-field"><input class="k-textbox" data-bind="value: from" /></div></div><div data-bind="visible: isList"><div class="k-edit-label"><label>'+r.validationDialog.labels.value+':</label></div><div class="k-edit-field"><input class="k-textbox" data-bind="value: from" /></div></div><div data-bind="invisible: isAny"><div class="k-action-buttons"></div><div class="k-edit-label"><label>'+r.validationDialog.labels.onInvalidData+':</label></div><div class="k-edit-field"><input type="radio" id="validationTypeReject" name="validationType" value="reject" data-bind="checked: type" class="k-radio" /><label for="validationTypeReject" class="k-radio-label">'+r.validationDialog.labels.rejectInput+'</label> <input type="radio" id="validationTypeWarning" name="validationType" value="warning" data-bind="checked: type" class="k-radio" /><label for="validationTypeWarning" class="k-radio-label">'+r.validationDialog.labels.showWarning+'</label></div></div><div data-bind="invisible: isAny"><div class="k-edit-label"><label>'+r.validationDialog.labels.showHint+':</label></div><div class="k-edit-field"><input type="checkbox" name="useCustomMessages" id="useCustomMessages" class="k-checkbox" data-bind="checked: useCustomMessages" /><label class="k-checkbox-label" for="useCustomMessages"></label></div><div data-bind="visible: useCustomMessages"><div class="k-edit-label"><label>'+r.validationDialog.labels.hintTitle+':</label></div><div class="k-edit-field"><input class="k-textbox" placeholder="'+r.validationDialog.placeholders.typeTitle+'" data-bind="value: hintTitle" /></div><div class="k-edit-label"><label>'+r.validationDialog.labels.hintMessage+':</label></div><div class="k-edit-field"><input class="k-textbox" placeholder="'+r.validationDialog.placeholders.typeMessage+'" data-bind="value: hintMessage" /></div></div></div><div class="k-action-buttons"><button class="k-button" data-bind="visible: showRemove, click: remove">'+r.remove+'</button><button class="k-button k-primary" data-bind="click: apply">'+r.apply+'</button><button class="k-button" data-bind="click: close">'+r.cancel+"</button></div></div>"},open:function(t){var n,i=this.options;this.viewModel=new _({type:i.type,defaultHintMessage:i.hintMessage,defaultHintTitle:i.hintTitle,defaultComparers:i.comparers.slice(0),comparerMessages:i.comparerMessages,criteria:i.criteria.slice(0),criterion:i.criterion,apply:this.apply.bind(this),close:this.close.bind(this),remove:this.remove.bind(this)}),this.viewModel.update(t.validation()),a.fn.open.call(this),n=this.dialog().element,e.bind(n,this.viewModel)},apply:function(){a.fn.apply.call(this),this.trigger("action",{command:"EditValidationCommand",options:{value:this.viewModel.toValidationObject()}})},remove:function(){this.viewModel.set("criterion","any"),this.apply()}}),e.spreadsheet.dialogs.register("validation",w),e.spreadsheet.dialogs.ValidationDialog=w,b=a.extend({init:function(t){a.fn.init.call(this,t),this.viewModel=e.observable({name:this.options.name,extension:this.options.extension,fileFormats:this.options.fileFormats,fileName:function(){return this.name+this.extension},apply:this.apply.bind(this),close:this.close.bind(this)}),e.bind(this.dialog().element,this.viewModel)},options:{title:r.saveAsDialog.title,name:"Workbook",extension:".xlsx",editExtension:!0,fileFormats:[{description:"Excel Workbook (.xlsx)",extension:".xlsx"}],width:350,template:"<div class='k-edit-label'><label>"+r.saveAsDialog.labels.fileName+":</label></div><div class='k-edit-field'><input class='k-textbox' data-bind='value: name' /></div><div data-bind='visible: editExtension'><div class='k-edit-label'><label>"+r.saveAsDialog.labels.saveAsType+":</label></div><div class='k-edit-field'><select data-role='dropdownlist' class='k-file-format' data-text-field='description' data-value-field='extension' data-bind='value: extension, source: fileFormats' /></div></div><div class='k-action-buttons'><button class='k-button k-primary' data-bind='click: apply'>"+r.save+"</button><button class='k-button' data-bind='click: close'>"+r.cancel+"</button></div>"},apply:function(){a.fn.apply.call(this),this.trigger("action",{command:"SaveAsCommand",options:{fileName:this.viewModel.fileName()}})}}),e.spreadsheet.dialogs.register("saveAs",b),y=b.extend({options:{title:r.excelExportDialog.title,editExtension:!1}}),e.spreadsheet.dialogs.register("excelExport",y),x=u.extend({init:function(e){a.fn.init.call(this,e)},options:{template:r.modifyMergedDialog.errorMessage+"<div class=\"k-action-buttons\"><button class='k-button k-primary' data-bind='click: close, text: okText' /></div>"}}),e.spreadsheet.dialogs.register("modifyMerged",x),k=u.extend({init:function(e){a.fn.init.call(this,e)},options:{title:r.useKeyboardDialog.title,template:r.useKeyboardDialog.errorMessage+"<div>Ctrl+C "+r.useKeyboardDialog.labels.forCopy+"</div><div>Ctrl+X "+r.useKeyboardDialog.labels.forCut+"</div><div>Ctrl+V "+r.useKeyboardDialog.labels.forPaste+"</div><div class=\"k-action-buttons\"><button class='k-button k-primary' data-bind='click: close, text: okText' /></div>"}}),e.spreadsheet.dialogs.register("useKeyboard",k),C=u.extend({init:function(e){a.fn.init.call(this,e)},options:{template:r.unsupportedSelectionDialog.errorMessage+"<div class=\"k-action-buttons\"><button class='k-button k-primary' data-bind='click: close, text: okText' /></div>"}}),e.spreadsheet.dialogs.register("unsupportedSelection",C))}(window.kendo)}(),function(){!function(e){if(!(e.support.browser.msie&&9>e.support.browser.version)){var t=e.Class.extend({init:function(e){this.options=$.extend({},this.options,e),this.columns=this._normalizeColumns(this.options.columns),this._sheet(),this._dataSource(),this._header(),this.dataSource.fetch()},_sheet:function(){this.sheet=this.options.sheet,this._sheetChangeHandler=this._sheetChange.bind(this),this._sheetDeleteRowHandler=this._sheetDeleteRow.bind(this),this._sheetInsertRowHandler=this._sheetInsertRow.bind(this),this.sheet.bind("change",this._sheetChangeHandler).bind("deleteRow",this._sheetDeleteRowHandler).bind("insertRow",this._sheetInsertRowHandler)},_sheetInsertRow:function(e){void 0!==e.index&&this.dataSource.insert(Math.max(e.index-1,0),{})},_sheetDeleteRow:function(e){var t,n;void 0!==e.index&&(t=this.dataSource,n=t.view()[e.index-1],n&&t.remove(n))},_header:function(){this.sheet.batch(function(){this.columns.forEach(function(e,t){this.sheet.range(0,t).value(e.title)}.bind(this))}.bind(this))},_sheetChange:function(e){var t,n,i;e.recalc&&e.ref&&(t=this.dataSource,n=t.view(),i=this.columns,!i.length&&n.length&&(i=Object.keys(n[0].toJSON())),this._skipRebind=!0,e.ref.forEach(function(o){var r,s,a;for(o=o.toRangeRef(),r=o.topLeft.row;o.bottomRight.row>=r;r++)for(s=n[r-1],s||(s=t.insert(r-1,{}),n=t.view()),a=o.topLeft.col;o.bottomRight.col>=a&&i.length>a;a++)s.set(i[a].field,e.value)}),this._skipRebind=!1)},_normalizeColumns:function(e){return e.map(function(e){var t=e.field||e;return{field:t,title:e.title||t}})},_dataSource:function(){var t=this.options,n=t.dataSource;n=Array.isArray(n)?{data:n}:n,this.dataSource&&this._changeHandler?this.dataSource.unbind("change",this._changeHandler):this._changeHandler=this._change.bind(this),this.dataSource=e.data.DataSource.create(n).bind("change",this._changeHandler)},_change:function(){var t,n,i;this._skipRebind||(t=this.dataSource.view(),n=this.columns,!n.length&&t.length&&(this.columns=n=this._normalizeColumns(Object.keys(t[0].toJSON())),this._header()),i=n.map(function(t){return e.getter(t.field)}),this.sheet.batch(function(){var e,n,o;for(e=0,n=t.length;n>e;e++)for(o=0;i.length>o;o++)this.sheet.range(e+1,o).value(i[o](t[e]))}.bind(this)))},destroy:function(){this.dataSource.unbind("change",this._changeHandler),this.sheet.unbind("change",this._sheetChangeHandler).unbind("deleteRow",this._sheetDeleteRowHandler).unbind("insertRow",this._sheetInsertRowHandler)},options:{columns:[]}});e.spreadsheet.SheetDataSourceBinder=t}}(kendo)}(),function(){!function(e){function t(e){var t,n={},i=[];for(t=0;e.length>t;t++)n[e[t].value]||(n[e[t].value]=!0,i.push(e[t]));return i}function n(e){var t,n,i=a.operators,o=[];for(t in e)for(n in e[t])o.push({text:i[t][n],value:n,unique:t+"_"+n,type:t});return o}var i,o,r,s,a,l,c,u;e.support.browser.msie&&9>e.support.browser.version||(i=e.jQuery,o=e.ui.Widget,r={details:"k-details",button:"k-button",detailsSummary:"k-details-summary",detailsContent:"k-details-content",icon:"k-icon k-font-icon",iconCollapse:"k-i-collapse-se",iconExpand:"k-i-expand-e",iconSearch:"k-i-search",textbox:"k-textbox",wrapper:"k-spreadsheet-filter-menu",filterByCondition:"k-spreadsheet-condition-filter",filterByValue:"k-spreadsheet-value-filter",valuesTreeViewWrapper:"k-spreadsheet-value-treeview-wrapper",actionButtons:"k-action-buttons"},s=o.extend({init:function(t,n){o.fn.init.call(this,t,n),this.element.addClass(u.classNames.details),this._summary=this.element.find("."+u.classNames.detailsSummary).on("click",this._toggle.bind(this));var r=n.expanded?u.classNames.iconCollapse:u.classNames.iconExpand;this._icon=i("<span />",{"class":u.classNames.icon+" "+r}).prependTo(this._summary),this._container=e.wrap(this._summary.next(),!0),n.expanded||this._container.hide()},options:{name:"Details"},events:["toggle"],visible:function(){return this.options.expanded},toggle:function(t){var n=e.fx(this._container).expand("vertical");n.stop()[t?"reverse":"play"](),this._icon.toggleClass(u.classNames.iconExpand,t).toggleClass(u.classNames.iconCollapse,!t),this.options.expanded=!t},_toggle:function(){var e=this.visible();this.toggle(e),this.trigger("toggle",{show:e})}}),a=e.spreadsheet.messages.filterMenu={sortAscending:"Sort range A to Z",sortDescending:"Sort range Z to A",filterByValue:"Filter by value",filterByCondition:"Filter by condition",apply:"Apply",search:"Search",clear:"Clear",blanks:"(Blanks)",operatorNone:"None",and:"AND",or:"OR",operators:{string:{contains:"Text contains",doesnotcontain:"Text does not contain",startswith:"Text starts with",endswith:"Text ends with"},date:{eq:"Date is",neq:"Date is not",lt:"Date is before",gt:"Date is after"},number:{eq:"Is equal to",neq:"Is not equal to",gte:"Is greater than or equal to",gt:"Is greater than",lte:"Is less than or equal to",lt:"Is less than"}}},l={filterByValue:"<div class='"+r.detailsSummary+"'>#= messages.filterByValue #</div><div class='"+r.detailsContent+"'><div class='"+r.valuesTreeViewWrapper+"'><div data-#=ns#role='treeview' data-#=ns#checkboxes='{ checkChildren: true }' data-#=ns#bind='events: { check: valuesChange, select: valueSelect }' /></div></div>",filterByCondition:"<div class='"+r.detailsSummary+"'>#= messages.filterByCondition #</div><div class='"+r.detailsContent+'\'><select data-#=ns#role="dropdownlist"data-#=ns#bind="value: customFilter.criteria[0].operator, source: operators"data-value-primitive="false"data-option-label="#=messages.operatorNone#"data-height="auto"data-text-field="text"data-value-field="unique"></select><input data-#=ns#bind="value: customFilter.criteria[0].value" class="k-textbox" /></div>',menuItem:"<li data-command='#=command#' data-dir='#=dir#'><span class='k-icon k-font-icon k-i-#=iconClass#'></span>#=text#</li>",actionButtons:"<button data-#=ns#bind='click: apply' class='k-button k-primary'>#=messages.apply#</button><button data-#=ns#bind='click: clear' class='k-button'>#=messages.clear#</button>"},c=e.spreadsheet.FilterMenuViewModel=e.data.ObservableObject.extend({valuesChange:function(t){var n=function(e){return e.checked&&e.value},i=function(t){return"date"===t.dataType?e.spreadsheet.dateToNumber(t.value):t.value},o=t.sender.dataSource.data(),r=o[0].children.data().toJSON(),s=r.filter(function(e){return"blank"===e.dataType});s=s.length?s[0].checked:!1,r=r.filter(n).map(i),this.set("valueFilter",{values:r,blanks:s})},valueSelect:function(e){e.preventDefault();var t=e.sender.dataItem(e.node);t.set("checked",!t.checked)},validateCriteria:function(t){return t.filter(function(t){var n=t.operator.type;return"number"===n?!!e.parseFloat(t.value):"date"===n?!!e.parseDate(t.value):"string"===n?!!(""+t.value):!1})},normalizeCriteria:function(t){return t.map(function(t){return t.type=t.operator.type,t.operator=t.operator.value,t.value="number"===t.type?e.parseFloat(t.value):"date"===t.type?e.parseDate(t.value):""+t.value,t})},buildCustomFilter:function(){var e=this.customFilter.toJSON();return e.criteria=this.validateCriteria(e.criteria),e.criteria=this.normalizeCriteria(e.criteria),e},reset:function(){this.set("customFilter",{logic:"and",criteria:[{operator:null,value:null}]}),this.set("valueFilter",{values:[]})}}),u=o.extend({init:function(e){var t=i("<div />",{"class":u.classNames.wrapper}).appendTo(document.body);o.call(this,t,e),this.viewModel=new c({active:"value",operators:n(this.options.operators),clear:this.clear.bind(this),apply:this.apply.bind(this)}),this._setFilter(),this._popup(),this._sort(),this._filterByCondition(),this._filterByValue(),this._actionButtons()},options:{name:"FilterMenu",column:0,range:null,operators:{string:{contains:"Text contains",doesnotcontain:"Text does not contain",startswith:"Text starts with",endswith:"Text ends with"},date:{eq:"Date is",neq:"Date is not",lt:"Date is before",gt:"Date is after"},number:{eq:"Is equal to",neq:"Is not equal to",gte:"Is greater than or equal to",gt:"Is greater than",lte:"Is less than or equal to",lt:"Is less than"}}},events:["action"],destroy:function(){o.fn.destroy.call(this),this.menu.destroy(),this.valuesTreeView.destroy(),this.popup.destroy()},openFor:function(e){this.popup.setOptions({anchor:e}),this.popup.open()},close:function(){this.popup.close()},clear:function(){this.action({command:"ClearFilterCommand",options:{column:this.options.column}}),this.viewModel.reset(),this.close()},apply:function(){var e,t,n;this._active(),e={operatingRange:this.options.range,column:this.options.column},"value"===this.viewModel.active?(this.viewModel.valuesChange({sender:this.valuesTreeView}),t=this.viewModel.valueFilter.toJSON(),t.values&&t.values.length&&(e.valueFilter=t)):"custom"===this.viewModel.active&&(n=this.viewModel.buildCustomFilter(),n.criteria.length&&(e.customFilter=n)),this.action({command:"ApplyFilterCommand",options:e})},action:function(e){this.trigger("action",i.extend({},e))},getValues:function(){var n=[],i=a,o=this.options.column,r=this.options.range.resize({top:1}).column(o),s=this.options.range.sheet();
|
||
return r.forEachCell(function(t,o,r){var a;r.dataType=void 0===r.value?"blank":r.format?e.spreadsheet.formatting.type(r.value,r.format):typeof r.value,null!==r.value&&r.format?(a=e.spreadsheet.formatting.compile(r.format),r.text=a(r.value).text()):r.text=r.value?r.value:i.blanks,"date"===r.dataType&&(r.value=e.spreadsheet.numberToDate(r.value)),r.checked=!s.isHiddenRow(t),n.push(r)}),n=t(n),n.sort(function(e,t){return e.dataType===t.dataType?0:"blank"===e.dataType||"blank"===t.dataType?"blank"===e.dataType?-1:1:"number"===e.dataType||"number"===t.dataType?"number"===e.dataType?-1:1:"date"===e.dataType||"date"===t.dataType?"date"===e.dataType?-1:1:0}),[{text:"All",expanded:!0,checked:!0,items:n}]},_setFilter:function(){var e,t,n,i,o=this.options.column,r=this.options.range.sheet(),s=r.filter();s&&(s=s.columns.filter(function(e){return e.index===o})[0]),s?(e=s.filter.toJSON(),"custom"===e.filter&&(t=e.criteria.pop(),"string"==typeof t.operator?(n=t.value instanceof Date?"date":typeof t.value,i=t.operator,e.criteria.push({operator:{text:this.options.operators[n][i],type:n,value:i,unique:n+"_"+i},value:t.value})):e.criteria.push({operator:{text:this.options.operators[t.type][t.operator],type:t.type,value:t.operator,unique:t.type+"_"+t.operator},value:t.value})),this.viewModel.set("active",e.filter),this.viewModel.set(e.filter+"Filter",e)):this.viewModel.reset()},_popup:function(){this.popup=this.element.kendoPopup({copyAnchorStyles:!1}).data("kendoPopup")},_sort:function(){var t=e.template(u.templates.menuItem),n=a,o=[{command:"sort",dir:"asc",text:n.sortAscending,iconClass:"sort-asc"},{command:"sort",dir:"desc",text:n.sortDescending,iconClass:"sort-desc"}],r=i("<ul />",{html:e.render(t,o)}).appendTo(this.element);this.menu=r.kendoMenu({orientation:"vertical",select:function(e){var t="asc"===i(e.item).data("dir"),n=this.options.range.resize({top:1}),o={asc:t,sheet:!1,operatingRange:n};n.isSortable()?this.action({command:"SortCommand",options:o}):this.close()}.bind(this)}).data("kendoMenu")},_appendTemplate:function(t,n,o,r){var l=e.template(t),c=i("<div class='"+n+"'/>").html(l({messages:a,ns:e.ns}));return this.element.append(c),o&&(o=new s(c,{expanded:r,toggle:this._detailToggle.bind(this)})),e.bind(c,this.viewModel),c},_detailToggle:function(e){this.element.find("[data-role=details]").not(e.sender.element).data("kendoDetails").toggle(!e.show)},_filterByCondition:function(){var e="custom"===this.viewModel.active;this._appendTemplate(u.templates.filterByCondition,u.classNames.filterByCondition,!0,e)},_filterByValue:function(){var e="value"===this.viewModel.active,t=this._appendTemplate(u.templates.filterByValue,u.classNames.filterByValue,!0,e);this.valuesTreeView=t.find("[data-role=treeview]").data("kendoTreeView"),this.valuesTreeView.setDataSource(this.getValues())},_actionButtons:function(){this._appendTemplate(u.templates.actionButtons,u.classNames.actionButtons,!1)},_active:function(){var e=this.element.find("[data-role=details]").filter(function(e,t){return i(t).data("kendoDetails").visible()});e.hasClass(u.classNames.filterByValue)?this.viewModel.set("active","value"):e.hasClass(u.classNames.filterByCondition)&&this.viewModel.set("active","custom")}}),e.spreadsheet.FilterMenu=u,i.extend(!0,u,{classNames:r,templates:l}))}(window.kendo)}(),function(){!function(e){function t(e,t){return e&&(e.top!==t.top||e.left!==t.left)}if(!(e.support.browser.msie&&9>e.support.browser.version)){var n=e.Observable.extend({init:function(t){e.Observable.fn.init.call(this),this.view=t,this.formulaBar=t.formulaBar,this.barInput=t.formulaBar.formulaInput,this.cellInput=t.formulaInput,this.barInput.syncWith(this.cellInput),this.cellInput.syncWith(this.barInput),this.barInput.bind("keyup",this._triggerUpdate.bind(this)),this.cellInput.bind("keyup",this._triggerUpdate.bind(this))},events:["activate","deactivate","change","update"],_triggerUpdate:function(){this.trigger("update",{value:this.value()})},activeEditor:function(){var t=null,n=e._activeElement();return this.barElement()[0]===n?t=this.barInput:this.cellElement()[0]===n&&(t=this.cellInput),t},activate:function(e){return this._active=!0,this._rect=e.rect,this.cellInput.position(e.rect),this.cellInput.resize(e.rect),this.cellInput.tooltip(e.tooltip),this.trigger("activate"),this},deactivate:function(){var e=this.cellInput;this._active&&(this._active=!1,this._rect=null,e.hide(),e.value()!=this._value&&this.trigger("change",{value:e.value()}),this.trigger("deactivate"))},barElement:function(){return this.barInput.element},cellElement:function(){return this.cellInput.element},focus:function(e){e=e||"cell","cell"===e?(this.cellInput.element.focus(),this.cellInput.end()):this.barInput.element.focus()},isActive:function(){return this._active},isFiltered:function(){return this.barInput.popup.visible()||this.cellInput.popup.visible()},canInsertRef:function(e){var t=this.activeEditor();return t&&t.canInsertRef(e)},highlightedRefs:function(){var e=this.activeEditor(),t=[];return e&&(t=e.highlightedRefs()),t},scale:function(){this.cellInput.scale()},toggleTooltip:function(e){this.cellInput.toggleTooltip(t(this._rect,e))},value:function(e){return void 0===e?this.barInput.value():(null===e&&(e=""),this._value=e,this.barInput.value(e),void this.cellInput.value(e))}});e.spreadsheet.SheetEditor=n}}(kendo)}(),function(){"use strict";function e(e){var t,n,i,o,r,s=e.length,a=(s+1)/2,l=e.reduce(function(e,t){return e+t},0)/s,c=0,u=0;for(t=0;s>t;t++)n=t+1-a,i=e[t]-l,c+=n*i,u+=n*n;return u?(o=c/u,r=l-o*a,function(e){return r+o*(e+1)}):function(t){return e[t%e.length]}}function t(t){function o(e){var t,n=e[1]-e[0];for(t=2;e.length>t;++t)if(e[t]-e[t-1]!=n)return null;return n}function r(e){return e.map(function(e){return e.number})}var s=[],a=t.map(function(e){return e.formula||e.value});return i(a,function(n,i,l,c){var u,d,h,f,p;for("number"==l?(d=r(c),1==d.length&&(n>0||a.length>i||t[n].format)&&d.push(d[0]+1),u=e(d)):"string"==l||"formula"==l?u=function(e,t){return a[t]}:Array.isArray(l)?1==c.length?u=function(e){return l[(c[0].number+e)%l.length]}:(h=o(r(c)),u=null==h?function(e){return c[e%c.length].value}:function(e){var t=c[0].number+h*e;return l[t%l.length]}):"null"!=l?(d=r(c),1==d.length&&d.push(d[0]+1),d=e(d),u=function(e,t){return a[t].replace(/^(.*\D)\d+/,"$1"+d(e,t))}):u=function(){return null},f={f:u,begin:n,end:i,len:i-n},p=n;i>p;++p)s[p]=f}),function(e,i){var o=s[i],r=e/a.length|0,l=e%a.length,c=r*o.len+l-o.begin,u=o.f(c,i),h=n(t[i]);return u instanceof d?h.formula=u:h.value=u,h}}function n(e){var t={};return Object.keys(e||{}).forEach(function(n){t[n]=e[n]}),t}function i(e,t){var n,i,r=null,s=0,a=[];for(i=0;e.length>i;++i)n=o(e[i]),a.push(n),null!=r&&n.type!==r.type&&(t(s,i,r.type,a.slice(s,i)),s=i),r=n;t(s,i,r.type,a.slice(s,i))}function o(e){var t,n;if("number"==typeof e)return{type:"number",number:e};if("string"==typeof e)return(t=s(e))?t:(n=/^(.*\D)(\d+)/.exec(e),n?(e=e.replace(/^(.*\D)\d+/,"$1-######"),{type:e,match:n,number:parseFloat(n[2])}):{type:"string"});if("boolean"==typeof e)return{type:"boolean"};if(null==e)return{type:"null"};if(e instanceof d)return{type:"formula"};throw window.console.error(e),Error("Cannot fill data")}function r(){var e=kendo.culture();return[e.calendars.standard.days.namesAbbr,e.calendars.standard.days.names,e.calendars.standard.months.namesAbbr,e.calendars.standard.months.names]}function s(e){var t,n,i,o,s=e.toLowerCase(),a=r();for(t=0;a.length>t;++t)for(n=a[t],i=n.length;--i>=0;)if(o=n[i].toLowerCase(),o==s)return{type:n,number:i,value:e}}function a(e){var t,n,i=e.length,o=e[0].length,r=[];for(t=0;o>t;++t)for(r[t]=[],n=0;i>n;++n)r[t][n]=e[n][t];return r}var l,c,u,d,h,f;kendo.support.browser.msie&&kendo.support.browser.version<9||(l=kendo.spreadsheet,c=l.Range,u=l.calc.runtime,d=u.Formula,h="Incompatible ranges in fillFrom",f="Cannot determine fill direction",c.prototype._previewFillFrom=function(e,n){var i,o,r,s,l,c,u,d,p,g,m,v,_,w,b=this,y=b._sheet;if("string"==typeof e&&(e=y.range(e)),i=e._ref.toRangeRef(),o=b._ref.toRangeRef(),i.intersects(o)){if(i.eq(o))return null;if(o=o.clone(),i.topLeft.eq(o.topLeft))if(i.width()==o.width())o.topLeft.row+=i.height(),n=0;else{if(i.height()!=o.height())throw Error(h);o.topLeft.col+=i.width(),n=1}else{if(!i.bottomRight.eq(o.bottomRight))throw Error(h);if(i.width()==o.width())o.bottomRight.row-=i.height(),n=2;else{if(i.height()!=o.height())throw Error(h);o.bottomRight.col-=i.width(),n=3}}return y.range(o)._previewFillFrom(e,n)}if(null==n)if(i.topLeft.col==o.topLeft.col)n=o.topLeft.row>i.topLeft.row?0:2;else{if(i.topLeft.row!=o.topLeft.row)throw Error(f);n=o.topLeft.col>i.topLeft.col?1:3}if(r=1&n,s=2&n,r&&i.height()!=o.height()||!r&&i.width()!=o.width())throw Error(h);for(l=e._properties(),r?c=o.width():(l=a(l),c=o.height()),u=Array(l.length),d=0;l.length>d;++d)for(p=l[d],g=t(p),m=u[d]=Array(c),v=0;c>v;++v)_=s?-v-1:p.length+v,w=s?p.length-v%p.length-1:v%p.length,m[s?c-v-1:v]=g(_,w);return r||(u=a(u)),{props:u,direction:n,dest:b}},c.prototype.fillFrom=function(e,t){var n=this._previewFillFrom(e,t);return n.dest._properties(n.props),n.dest})}(),function(e,t){var n,i,o,r,s,a,l,c,u;e.support.browser.msie&&9>e.support.browser.version||(n=e.jQuery,i=e.ui.Widget,o=e.spreadsheet.Workbook,r=e.spreadsheet.Controller,s=e.spreadsheet.View,a=".kendoSpreadsheet",l={recalc:!0,selection:!0,activeCell:!0,layout:!0,sheetSelection:!0,resize:!0},c={wrapper:"k-widget k-spreadsheet"},u=e.ui.Widget.extend({init:function(e,t){i.fn.init.call(this,e,t),this.element.addClass(u.classNames.wrapper),this._view=new s(this.element,{toolbar:this.options.toolbar,sheetsbar:this.options.sheetsbar}),this._workbook=new o(this.options,this._view),this._controller=new r(this._view,this._workbook),this._autoRefresh=!0,this._bindWorkbookEvents(),this._view.workbook(this._workbook),this.refresh(),this._resizeHandler=function(){this.resize()}.bind(this),n(window).on("resize"+a,this._resizeHandler)},_resize:function(){this.refresh({layout:!0})},_workbookChange:function(e){this._autoRefresh&&this.refresh(e)},activeSheet:function(e){return this._workbook.activeSheet(e)},moveSheetToIndex:function(e,t){return this._workbook.moveSheetToIndex(e,t)},insertSheet:function(e){return this._workbook.insertSheet(e)},sheets:function(){return this._workbook.sheets()},removeSheet:function(e){return this._workbook.removeSheet(e)},sheetByName:function(e){return this._workbook.sheetByName(e)},sheetIndex:function(e){return this._workbook.sheetIndex(e)},sheetByIndex:function(e){return this._workbook.sheetByIndex(e)},renameSheet:function(e,t){return this._workbook.renameSheet(e,t)},refresh:function(e){return e||(e=l),this._view.sheet(this._workbook.activeSheet()),this._controller.sheet(this._workbook.activeSheet()),this._workbook.refresh(e),this._view.refresh(e),this._controller.refresh(),this._view.render(),this.trigger("render"),this},openDialog:function(e,t){return this._view.openDialog(e,t)},autoRefresh:function(e){return e!==t?(this._autoRefresh=e,e===!0&&this.refresh(),this):this._autoRefresh},toJSON:function(){return this._workbook.toJSON()},fromJSON:function(e){e.sheets?(this._workbook.destroy(),this._workbook=new o(n.extend({},this.options,e)),this._bindWorkbookEvents(),this._view.workbook(this._workbook),this._controller.workbook(this._workbook),this.activeSheet(this.activeSheet())):this.refresh()},saveAsExcel:function(e){this._workbook.saveAsExcel(e)},_workbookExcelExport:function(e){this.trigger("excelExport",e)&&e.preventDefault()},_bindWorkbookEvents:function(){this._workbook.bind("change",this._workbookChange.bind(this)),this._workbook.bind("excelExport",this._workbookExcelExport.bind(this))},destroy:function(){e.ui.Widget.fn.destroy.call(this),this._workbook.destroy(),this._controller.destroy(),this._view.destroy(),this._resizeHandler&&n(window).off("resize"+a,this._resizeHandler)},options:{name:"Spreadsheet",toolbar:!0,sheetsbar:!0,rows:200,columns:50,rowHeight:20,columnWidth:64,headerHeight:20,headerWidth:32,excel:{proxyURL:"",fileName:"Workbook.xlsx"}},events:["excelExport","render"]}),e.spreadsheet.ALL_REASONS=l,e.ui.plugin(u),n.extend(!0,u,{classNames:c}))}(window.kendo),window.kendo},"function"==typeof define&&define.amd?define:function(e,t){t()}); |