<!DOCTYPE html>
<html>

  <head>
    <script data-require="jquery@2.1.4" data-semver="2.1.4" src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
    <link rel="stylesheet" href="style.css" />
    <script src="tableau-2.0.1.min.js"></script>
    <script src="script.js"></script>
  </head>

  <body>
    
    <h1>Tableau JavaScript API Sample</h1>

    <div data-js="tableau-root" style="display: block;"></div>
    
  </body>

</html>
(function(){
    /**
     * Viz オブジェクト
     * @property viz
     * @type {Object}
     */
    var viz;
    /**
     * WorkBook オブジェクト
     * @property workbook
     * @type {Object}
     */
    var workbook;
    /**
     * アクティブな Sheet オブジェクト
     * @property activeSheet
     * @type {Object}
     */
    var activeSheet;
    /**
     * Viz クラスの初期化処理
     * @method initializeViz
     */
    var initializeViz = function () {
      var $body          = $('body');
      var placeholderDiv = $body.find('[data-js=tableau-root]')[0];
      var $tbody         = $body.find('[data-js=fields-info]');
      var url = 'http://public.tableau.com/views/cm-awsmembers-blog-posts-2015/2015_1';
      var options = {
          'hideTabs'           : true,
          'hideToolbar'        : true,
          'onFirstInteractive' : function () {
              workbook = viz.getWorkbook();
              activeSheet = workbook.getActiveSheet();
              var onSuccess = function(marks) {
                //TODO:
              };
              var onFault = function(error) {
                //TODO:
              };
              activeSheet
                .selectMarksAsync({
                  '名前' : ['しんや','せーの'],
                  '月(投稿年月)' : '2015年1月'
                }, tableau.SelectionUpdateType.REPLACE)
                .then(onSuccess, onFault);
          }
      };
      viz = new tableau.Viz(placeholderDiv, url, options);
    };
    $(initializeViz);
}());
/* Styles go here */

/*! tableau-2.0.1 */
(function(){
/*! BEGIN MscorlibSlim */
var global={};(function(global){"use strict";var ss={};ss.initAssembly=function(obj,name,res){};ss.isNullOrUndefined=function ss$isNullOrUndefined(o){return(o===null)||(o===undefined)};ss.isValue=function ss$isValue(o){return(o!==null)&&(o!==undefined)};ss.referenceEquals=function ss$referenceEquals(a,b){return ss.isValue(a)?a===b:!ss.isValue(b)};ss.mkdict=function ss$mkdict(){var a=(arguments.length!=1?arguments:arguments[0]);var r={};for(var i=0;i<a.length;i+=2){r[a[i]]=a[i+1]}return r};ss.coalesce=function ss$coalesce(a,b){return ss.isValue(a)?a:b};ss.isDate=function ss$isDate(obj){return Object.prototype.toString.call(obj)==='[object Date]'};ss.isArray=function ss$isArray(obj){return Object.prototype.toString.call(obj)==='[object Array]'};ss.equals=function ss$equals(a,b){if(!ss.isValue(a))throw new ss_NullReferenceException('Object is null');else if(a!==ss&&typeof(a.equals)==='function')return a.equals(b);if(ss.isDate(a)&&ss.isDate(b))return a.valueOf()===b.valueOf();else if(typeof(a)==='function'&&typeof(b)==='function')return ss.delegateEquals(a,b);else if(ss.isNullOrUndefined(a)&&ss.isNullOrUndefined(b))return true;else return a===b};ss.staticEquals=function ss$staticEquals(a,b){if(!ss.isValue(a))return!ss.isValue(b);else return ss.isValue(b)?ss.equals(a,b):false};ss.shallowCopy=function ss$shallowCopy(source,target){var keys=Object.keys(source);for(var i=0,l=keys.length;i<l;i++){var k=keys[i];target[k]=source[k]}};ss.clearKeys=function ss$clearKeys(d){for(var n in d){if(d.hasOwnProperty(n))delete d[n]}};ss.keyExists=function ss$keyExists(d,key){return d[key]!==undefined};if(!Object.keys){Object.keys=(function(){var hasOwnProperty=Object.prototype.hasOwnProperty,hasDontEnumBug=!({toString:null}).propertyIsEnumerable('toString'),dontEnums=['toString','toLocaleString','valueOf','hasOwnProperty','isPrototypeOf','propertyIsEnumerable','constructor'],dontEnumsLength=dontEnums.length;return function(obj){if(typeof obj!=='object'&&(typeof obj!=='function'||obj===null)){throw new TypeError('Object.keys called on non-object')}var result=[],prop,i;for(prop in obj){if(hasOwnProperty.call(obj,prop)){result.push(prop)}}if(hasDontEnumBug){for(i=0;i<dontEnumsLength;i++){if(hasOwnProperty.call(obj,dontEnums[i])){result.push(dontEnums[i])}}}return result}}())}ss.getKeyCount=function ss$getKeyCount(d){return Object.keys(d).length};ss.setMetadata=function ss$_setMetadata(type,metadata){};ss.initClass=function ss$initClass(ctor,asm,members,baseType,interfaces){if(baseType&&baseType!==Object){var f=function(){};f.prototype=baseType.prototype;ctor.prototype=new f;ctor.prototype.constructor=ctor}ss.shallowCopy(members,ctor.prototype)};ss.initEnum=function ss$initEnum(ctor,asm,members,namedValues){ss.shallowCopy(members,ctor.prototype);ctor.getDefaultValue=ctor.createInstance=function(){return namedValues?null:0};ctor.isInstanceOfType=function(instance){return typeof(instance)==(namedValues?'string':'number')}};ss.getBaseType=function ss$getBaseType(type){throw new Error("Not implemented yet")};ss.isInstanceOfType=function ss$isInstanceOfType(instance,type){if(ss.isNullOrUndefined(instance))return false;if(typeof(type.isInstanceOfType)==='function')return type.isInstanceOfType(instance);return ss.isAssignableFrom(type,ss.getInstanceType(instance))};ss.isAssignableFrom=function ss$isAssignableFrom(target,type){return target===type||(typeof(target.isAssignableFrom)==='function'&&target.isAssignableFrom(type))||type.prototype instanceof target};ss.safeCast=function ss$safeCast(instance,type){if(type===true)return instance;else if(type===false)return null;else return ss.isInstanceOfType(instance,type)?instance:null};ss.cast=function ss$cast(instance,type){if(instance===null||typeof(instance)==='undefined')return instance;else if(type===true||(type!==false&&ss.isInstanceOfType(instance,type)))return instance;throw new ss_InvalidCastException('Cannot cast object to requested type')};ss.getInstanceType=function ss$getInstanceType(instance){if(!ss.isValue(instance))throw new ss_NullReferenceException('Cannot get type of null');try{return instance.constructor}catch(ex){return Object}};ss.getDefaultValue=function ss$getDefaultValue(type){if(typeof(type.getDefaultValue)==='function')return type.getDefaultValue();else if(type===Boolean)return false;else if(type===Date)return new Date(0);else if(type===Number)return 0;return null};ss.isNullOrEmptyString=function ss$isNullOrEmptyString(s){return!s||!s.length};if(!String.prototype.trim){String.prototype.trim=function String$trim(){return ss.trimStartString(ss.trimEndString(this))}}ss.trimEndString=function ss$trimEndString(s,chars){return s.replace(chars?new RegExp('['+String.fromCharCode.apply(null,chars)+']+$'):/\s*$/,'')};ss.trimStartString=function ss$trimStartString(s,chars){return s.replace(chars?new RegExp('^['+String.fromCharCode.apply(null,chars)+']+'):/^\s*/,'')};ss.trimString=function ss$trimString(s,chars){return ss.trimStartString(ss.trimEndString(s,chars),chars)};ss.arrayClone=function ss$arrayClone(arr){if(arr.length===1){return[arr[0]]}else{return Array.apply(null,arr)}};ss._delegateContains=function ss$_delegateContains(targets,object,method){for(var i=0;i<targets.length;i+=2){if(targets[i]===object&&targets[i+1]===method){return true}}return false};ss._mkdel=function ss$_mkdel(targets){var delegate=function(){if(targets.length==2){return targets[1].apply(targets[0],arguments)}else{var clone=ss.arrayClone(targets);for(var i=0;i<clone.length;i+=2){if(ss._delegateContains(targets,clone[i],clone[i+1])){clone[i+1].apply(clone[i],arguments)}}return null}};delegate._targets=targets;return delegate};ss.mkdel=function ss$mkdel(object,method){if(!object){return method}return ss._mkdel([object,method])};ss.delegateCombine=function ss$delegateCombine(delegate1,delegate2){if(!delegate1){if(!delegate2._targets){return ss.mkdel(null,delegate2)}return delegate2}if(!delegate2){if(!delegate1._targets){return ss.mkdel(null,delegate1)}return delegate1}var targets1=delegate1._targets?delegate1._targets:[null,delegate1];var targets2=delegate2._targets?delegate2._targets:[null,delegate2];return ss._mkdel(targets1.concat(targets2))};ss.delegateRemove=function ss$delegateRemove(delegate1,delegate2){if(!delegate1||(delegate1===delegate2)){return null}if(!delegate2){return delegate1}var targets=delegate1._targets;var object=null;var method;if(delegate2._targets){object=delegate2._targets[0];method=delegate2._targets[1]}else{method=delegate2}for(var i=0;i<targets.length;i+=2){if((targets[i]===object)&&(targets[i+1]===method)){if(targets.length==2){return null}var t=ss.arrayClone(targets);t.splice(i,2);return ss._mkdel(t)}}return delegate1};ss.delegateEquals=function ss$delegateEquals(a,b){if(a===b)return true;if(!a._targets&&!b._targets)return false;var ta=a._targets||[null,a],tb=b._targets||[null,b];if(ta.length!=tb.length)return false;for(var i=0;i<ta.length;i++){if(ta[i]!==tb[i])return false}return true};var ss_Enum=function Enum$(){};ss.Enum=ss_Enum;ss.initClass(ss_Enum,ss,{});ss_Enum.getValues=function Enum$getValues(enumType){var parts=[];var values=enumType.prototype;for(var i in values){if(values.hasOwnProperty(i))parts.push(values[i])}return parts};ss.getEnumerator=function ss$getEnumerator(obj){return obj.getEnumerator?obj.getEnumerator():new ss_ArrayEnumerator(obj)};ss.unbox=function ss$unbox(instance){if(!ss.isValue(instance))throw new ss_InvalidOperationException('Nullable object must have a value.');return instance};var ss_Nullable$1=function Nullable$1$(T){};ss.Nullable$1=ss_Nullable$1;ss_Nullable$1.eq=function Nullable$eq(a,b){return!ss.isValue(a)?!ss.isValue(b):(a===b)};ss_Nullable$1.ne=function Nullable$eq(a,b){return!ss.isValue(a)?ss.isValue(b):(a!==b)};ss_Nullable$1.le=function Nullable$le(a,b){return ss.isValue(a)&&ss.isValue(b)&&a<=b};ss_Nullable$1.ge=function Nullable$ge(a,b){return ss.isValue(a)&&ss.isValue(b)&&a>=b};ss_Nullable$1.lt=function Nullable$lt(a,b){return ss.isValue(a)&&ss.isValue(b)&&a<b};ss_Nullable$1.gt=function Nullable$gt(a,b){return ss.isValue(a)&&ss.isValue(b)&&a>b};ss_Nullable$1.sub=function Nullable$sub(a,b){return ss.isValue(a)&&ss.isValue(b)?a-b:null};ss_Nullable$1.add=function Nullable$add(a,b){return ss.isValue(a)&&ss.isValue(b)?a+b:null};ss_Nullable$1.mod=function Nullable$mod(a,b){return ss.isValue(a)&&ss.isValue(b)?a%b:null};ss_Nullable$1.div=function Nullable$divf(a,b){return ss.isValue(a)&&ss.isValue(b)?a/b:null};ss_Nullable$1.mul=function Nullable$mul(a,b){return ss.isValue(a)&&ss.isValue(b)?a*b:null};ss_Nullable$1.band=function Nullable$band(a,b){return ss.isValue(a)&&ss.isValue(b)?a&b:null};ss_Nullable$1.bor=function Nullable$bor(a,b){return ss.isValue(a)&&ss.isValue(b)?a|b:null};ss_Nullable$1.xor=function Nullable$xor(a,b){return ss.isValue(a)&&ss.isValue(b)?a^b:null};ss_Nullable$1.shl=function Nullable$shl(a,b){return ss.isValue(a)&&ss.isValue(b)?a<<b:null};ss_Nullable$1.srs=function Nullable$srs(a,b){return ss.isValue(a)&&ss.isValue(b)?a>>b:null};ss_Nullable$1.sru=function Nullable$sru(a,b){return ss.isValue(a)&&ss.isValue(b)?a>>>b:null};ss_Nullable$1.and=function Nullable$and(a,b){if(a===true&&b===true)return true;else if(a===false||b===false)return false;else return null};ss_Nullable$1.or=function Nullable$or(a,b){if(a===true||b===true)return true;else if(a===false&&b===false)return false;else return null};ss_Nullable$1.not=function Nullable$not(a){return ss.isValue(a)?!a:null};ss_Nullable$1.neg=function Nullable$neg(a){return ss.isValue(a)?-a:null};ss_Nullable$1.pos=function Nullable$pos(a){return ss.isValue(a)?+a:null};ss_Nullable$1.cpl=function Nullable$cpl(a){return ss.isValue(a)?~a:null};ss_Nullable$1.lift=function Nullable$lift(){for(var i=0;i<arguments.length;i++){if(!ss.isValue(arguments[i]))return null}return arguments[0].apply(null,Array.prototype.slice.call(arguments,1))};var ss_Int32=function Int32$(){};ss.Int32=ss_Int32;ss.initClass(ss_Int32,ss,{},Object,null);ss_Int32.getDefaultValue=ss_Int32.createInstance=function Int32$getDefaultValue(){return 0};ss_Int32.div=function Int32$div(a,b){if(!ss.isValue(a)||!ss.isValue(b))return null;if(b===0)throw new ss_DivideByZeroException;return a/b|0};ss_Int32.trunc=function Int32$trunc(n){return ss.isValue(n)?n|0:null};var ss_JsDate=function JsDate$(){};ss_JsDate.__typeName='ss.JsDate';ss.JsDate=ss_JsDate;ss.initClass(ss_JsDate,ss,{},Object,[null,null]);ss_JsDate.createInstance=function JsDate$createInstance(){return new Date};ss_JsDate.isInstanceOfType=function JsDate$isInstanceOfType(instance){return instance instanceof Date};var ss_ArrayEnumerator=function ArrayEnumerator$(array){this._array=array;this._index=-1};ss.ArrayEnumerator=ss_ArrayEnumerator;ss.initClass(ss_ArrayEnumerator,ss,{moveNext:function ArrayEnumerator$moveNext(){this._index++;return(this._index<this._array.length)},reset:function ArrayEnumerator$reset(){this._index=-1},current:function ArrayEnumerator$current(){if(this._index<0||this._index>=this._array.length)throw'Invalid operation';return this._array[this._index]},dispose:function ArrayEnumerator$dispose(){}},null,null,null);var ss_ObjectEnumerator=function ObjectEnumerator$(o){this._keys=Object.keys(o);this._index=-1;this._object=o};ss.ObjectEnumerator=ss_ObjectEnumerator;ss.initClass(ss_ObjectEnumerator,ss,{moveNext:function ObjectEnumerator$moveNext(){this._index++;return(this._index<this._keys.length)},reset:function ObjectEnumerator$reset(){this._index=-1},current:function ObjectEnumerator$current(){if(this._index<0||this._index>=this._keys.length)throw new ss_InvalidOperationException('Invalid operation');var k=this._keys[this._index];return{key:k,value:this._object[k]}},dispose:function ObjectEnumerator$dispose(){}},null,null);var ss_StringBuilder=function StringBuilder$(s){this._parts=(ss.isValue(s)&&s!='')?[s]:[];this.length=ss.isValue(s)?s.length:0};ss.StringBuilder=ss_StringBuilder;ss.initClass(ss_StringBuilder,ss,{append:function StringBuilder$append(o){if(ss.isValue(o)){var s=o.toString();this._parts.push(s);this.length+=s.length}return this},appendChar:function StringBuilder$appendChar(c){return this.append(String.fromCharCode(c))},appendLine:function StringBuilder$appendLine(s){this.append(s);this.append('\r\n');return this},appendLineChar:function StringBuilder$appendLineChar(c){return this.appendLine(String.fromCharCode(c))},clear:function StringBuilder$clear(){this._parts=[];this.length=0},toString:function StringBuilder$toString(){return this._parts.join('')}});var ss_Exception=function Exception$(message,innerException){this._message=message||'An error occurred.';this._innerException=innerException||null};ss.Exception=ss_Exception;ss.initClass(ss_Exception,ss,{get_message:function Exception$get_message(){return this._message},get_innerException:function Exception$get_innerException(){return this._innerException}});ss_Exception.wrap=function Exception$wrap(o){if(ss.isInstanceOfType(o,ss_Exception)){return o}else if(o instanceof TypeError){return new ss_NullReferenceException(o.message)}else if(o instanceof RangeError){return new ss_ArgumentOutOfRangeException(null,o.message)}else if(o instanceof Error){return new ss_JsErrorException(o)}else{return new ss_Exception(o.toString())}};var ss_NotImplementedException=function NotImplementedException$(message,innerException){ss_Exception.call(this,message||'The method or operation is not implemented.',innerException)};ss_NotImplementedException.__typeName='ss.NotImplementedException';ss.NotImplementedException=ss_NotImplementedException;ss.initClass(ss_NotImplementedException,ss,{},ss_Exception);var ss_NotSupportedException=function NotSupportedException$(message,innerException){ss_Exception.call(this,message||'Specified method is not supported.',innerException)};ss_NotSupportedException.__typeName='ss.NotSupportedException';ss.NotSupportedException=ss_NotSupportedException;ss.initClass(ss_NotSupportedException,ss,{},ss_Exception);var ss_AggregateException=function AggregateException$(message,innerExceptions){this.innerExceptions=ss.isValue(innerExceptions)?ss.arrayFromEnumerable(innerExceptions):[];ss_Exception.call(this,message||'One or more errors occurred.',this.innerExceptions.length?this.innerExceptions[0]:null)};ss_AggregateException.__typeName='ss.AggregateException';ss.AggregateException=ss_AggregateException;ss.initClass(ss_AggregateException,ss,{flatten:function AggregateException$flatten(){var inner=[];for(var i=0;i<this.innerExceptions.length;i++){var e=this.innerExceptions[i];if(ss.isInstanceOfType(e,ss_AggregateException)){inner.push.apply(inner,e.flatten().innerExceptions)}else{inner.push(e)}}return new ss_AggregateException(this._message,inner)}},ss_Exception);var ss_PromiseException=function PromiseException(args,message,innerException){ss_Exception.call(this,message||(args.length&&args[0]?args[0].toString():'An error occurred'),innerException);this.arguments=ss.arrayClone(args)};ss_PromiseException.__typeName='ss.PromiseException';ss.PromiseException=ss_PromiseException;ss.initClass(ss_PromiseException,ss,{get_arguments:function PromiseException$get_arguments(){return this._arguments}},ss_Exception);var ss_JsErrorException=function JsErrorException$(error,message,innerException){ss_Exception.call(this,message||error.message,innerException);this.error=error};ss_JsErrorException.__typeName='ss.JsErrorException';ss.JsErrorException=ss_JsErrorException;ss.initClass(ss_JsErrorException,ss,{},ss_Exception);var ss_ArgumentException=function ArgumentException$(message,paramName,innerException){ss_Exception.call(this,message||'Value does not fall within the expected range.',innerException);this.paramName=paramName||null};ss_ArgumentException.__typeName='ss.ArgumentException';ss.ArgumentException=ss_ArgumentException;ss.initClass(ss_ArgumentException,ss,{},ss_Exception);var ss_ArgumentNullException=function ArgumentNullException$(paramName,message,innerException){if(!message){message='Value cannot be null.';if(paramName)message+='\nParameter name: '+paramName}ss_ArgumentException.call(this,message,paramName,innerException)};ss_ArgumentNullException.__typeName='ss.ArgumentNullException';ss.ArgumentNullException=ss_ArgumentNullException;ss.initClass(ss_ArgumentNullException,ss,{},ss_ArgumentException);var ss_ArgumentOutOfRangeException=function ArgumentOutOfRangeException$(paramName,message,innerException,actualValue){if(!message){message='Value is out of range.';if(paramName)message+='\nParameter name: '+paramName}ss_ArgumentException.call(this,message,paramName,innerException);this.actualValue=actualValue||null};ss_ArgumentOutOfRangeException.__typeName='ss.ArgumentOutOfRangeException';ss.ArgumentOutOfRangeException=ss_ArgumentOutOfRangeException;ss.initClass(ss_ArgumentOutOfRangeException,ss,{},ss_ArgumentException);var ss_FormatException=function FormatException$(message,innerException){ss_Exception.call(this,message||'Invalid format.',innerException)};ss_FormatException.__typeName='ss.FormatException';ss.FormatException=ss_FormatException;ss.initClass(ss_FormatException,ss,{},ss_Exception);var ss_DivideByZeroException=function DivideByZeroException$(message,innerException){ss_Exception.call(this,message||'Division by 0.',innerException)};ss_DivideByZeroException.__typeName='ss.DivideByZeroException';ss.DivideByZeroException=ss_DivideByZeroException;ss.initClass(ss_DivideByZeroException,ss,{},ss_Exception);var ss_InvalidCastException=function InvalidCastException$(message,innerException){ss_Exception.call(this,message||'The cast is not valid.',innerException)};ss_InvalidCastException.__typeName='ss.InvalidCastException';ss.InvalidCastException=ss_InvalidCastException;ss.initClass(ss_InvalidCastException,ss,{},ss_Exception);var ss_InvalidOperationException=function InvalidOperationException$(message,innerException){ss_Exception.call(this,message||'Operation is not valid due to the current state of the object.',innerException)};ss_InvalidOperationException.__typeName='ss.InvalidOperationException';ss.InvalidOperationException=ss_InvalidOperationException;ss.initClass(ss_InvalidOperationException,ss,{},ss_Exception);var ss_NullReferenceException=function NullReferenceException$(message,innerException){ss_Exception.call(this,message||'Object is null.',innerException)};ss_NullReferenceException.__typeName='ss.NullReferenceException';ss.NullReferenceException=ss_NullReferenceException;ss.initClass(ss_NullReferenceException,ss,{},ss_Exception);var ss_KeyNotFoundException=function KeyNotFoundException$(message,innerException){ss_Exception.call(this,message||'Key not found.',innerException)};ss_KeyNotFoundException.__typeName='ss.KeyNotFoundException';ss.KeyNotFoundException=ss_KeyNotFoundException;ss.initClass(ss_KeyNotFoundException,ss,{},ss_Exception);var ss_AmbiguousMatchException=function AmbiguousMatchException$(message,innerException){ss_Exception.call(this,message||'Ambiguous match.',innerException)};ss_AmbiguousMatchException.__typeName='ss.AmbiguousMatchException';ss.AmbiguousMatchException=ss_AmbiguousMatchException;ss.initClass(ss_AmbiguousMatchException,ss,{},ss_Exception);if(typeof(global.HTMLElement)==='undefined'){global.HTMLElement=Element}if(typeof(global.MessageEvent)==='undefined'){global.MessageEvent=Event}Date.now=Date.now||function(){return+new Date};global.ss=ss})(global);var ss=global.ss;var HTMLElement=global.HTMLElement;var MessageEvent=global.MessageEvent;
/*! BEGIN CoreSlim */
(function(){'dont use strict';var a={};global.tab=global.tab||{};ss.initAssembly(a,'tabcoreslim');var b=function(){};b.__typeName='tab.EscapingUtil';b.escapeHtml=function(e){var f=ss.coalesce(e,'');f=f.replace(new RegExp('&','g'),'&amp;');f=f.replace(new RegExp('<','g'),'&lt;');f=f.replace(new RegExp('>','g'),'&gt;');f=f.replace(new RegExp('"','g'),'&quot;');f=f.replace(new RegExp("'",'g'),'&#39;');f=f.replace(new RegExp('/','g'),'&#47;');return f};global.tab.EscapingUtil=b;var c=function(){};c.__typeName='tab.ScriptEx';global.tab.ScriptEx=c;var d=function(e){this.$0=null;this.$0=e};d.__typeName='tab.WindowHelper';d.get_windowSelf=function(){return window.self};d.close=function(e){e.close()};d.getOpener=function(e){return e.opener};d.getLocation=function(e){return e.location};d.getPathAndSearch=function(e){return e.location.pathname+e.location.search};d.setLocationHref=function(e,f){e.location.href=f};d.locationReplace=function(e,f){e.location.replace(f)};d.open=function(e,f,g){return window.open(e,f,g)};d.reload=function(e,f){e.location.reload(f)};d.requestAnimationFrame=function(e){return d.$c(e)};d.cancelAnimationFrame=function(e){if(ss.isValue(e)){d.$b(e)}};d.$0=function(){var e=0;d.$c=function(f){var g=(new Date).getTime();var h=Math.max(0,16-(g-e));e=g+h;var i=window.setTimeout(f,h);return i}};global.tab.WindowHelper=d;ss.initClass(b,a,{});ss.initClass(c,a,{});ss.initClass(d,a,{get_pageXOffset:function(){return d.$7(this.$0)},get_pageYOffset:function(){return d.$8(this.$0)},get_clientWidth:function(){return d.$2(this.$0)},get_clientHeight:function(){return d.$1(this.$0)},get_innerWidth:function(){return d.$4(this.$0)},get_outerWidth:function(){return d.$6(this.$0)},get_innerHeight:function(){return d.$3(this.$0)},get_outerHeight:function(){return d.$5(this.$0)},get_screenLeft:function(){return d.$9(this.$0)},get_screenTop:function(){return d.$a(this.$0)}});(function(){d.$4=null;d.$3=null;d.$2=null;d.$1=null;d.$7=null;d.$8=null;d.$9=null;d.$a=null;d.$6=null;d.$5=null;d.$c=null;d.$b=null;if('innerWidth'in window){d.$4=function(m){return m.innerWidth}}else{d.$4=function(m){return m.document.documentElement.offsetWidth}}if('outerWidth'in window){d.$6=function(m){return m.outerWidth}}else{d.$6=d.$4}if('innerHeight'in window){d.$3=function(m){return m.innerHeight}}else{d.$3=function(m){return m.document.documentElement.offsetHeight}}if('outerHeight'in window){d.$5=function(m){return m.outerHeight}}else{d.$5=d.$3}if('clientWidth'in window){d.$2=function(m){return m['clientWidth']}}else{d.$2=function(m){return m.document.documentElement.clientWidth}}if('clientHeight'in window){d.$1=function(m){return m['clientHeight']}}else{d.$1=function(m){return m.document.documentElement.clientHeight}}if(ss.isValue(window.self.pageXOffset)){d.$7=function(m){return m.pageXOffset}}else{d.$7=function(m){return m.document.documentElement.scrollLeft}}if(ss.isValue(window.self.pageYOffset)){d.$8=function(m){return m.pageYOffset}}else{d.$8=function(m){return m.document.documentElement.scrollTop}}if('screenLeft'in window){d.$9=function(m){return ss.unbox(ss.cast(m.screenLeft,ss.Int32))}}else{d.$9=function(m){return m.screenX}}if('screenTop'in window){d.$a=function(m){return ss.unbox(ss.cast(m.screenTop,ss.Int32))}}else{d.$a=function(m){return m.screenY}}{var e='requestAnimationFrame';var f='cancelAnimationFrame';var g=['ms','moz','webkit','o'];var h=null;var i=null;if(e in window){h=e}if(f in window){i=f}for(var j=0;j<g.length&&(ss.isNullOrUndefined(h)||ss.isNullOrUndefined(i));++j){var k=g[j];var l=k+'RequestAnimationFrame';if(ss.isNullOrUndefined(h)&&l in window){h=l}if(ss.isNullOrUndefined(i)){l=k+'CancelAnimationFrame';if(l in window){i=l}l=k+'CancelRequestAnimationFrame';if(l in window){i=l}}}if(ss.isValue(h)){d.$c=function(m){return window[h](m)}}else{d.$0()}if(ss.isValue(i)){d.$b=function(m){window[i](m)}}else{d.$b=function(m){window.clearTimeout(m)}}}})()})();var tab=global.tab;
/*! API */
(function(){'dont use strict';var a={};global.tab=global.tab||{};global.tableauSoftware=global.tableauSoftware||{};ss.initAssembly(a,'Tableau.JavaScript.Vql.Api');var b=function(){this.$a=0;this.$9=0;this.$8={};this.$5={};this.$7={};this.$6={};if(I.hasWindowAddEventListener()){window.addEventListener('message',ss.mkdel(this,this.$0),false)}else if(I.hasDocumentAttachEvent()){var e=ss.mkdel(this,this.$0);document.attachEvent('onmessage',e);window.attachEvent('onmessage',e)}else{window.onmessage=ss.mkdel(this,this.$0)}this.$a=this.$9=0};b.__typeName='tab.$0';var c=function(){this.$1=null;this.$1$1=null;this.$1$2=null};c.__typeName='tab.$1';var d=function(e,bW){this.$2=null;bh.call(this,e,null);this.$2=bW};d.__typeName='tab.$10';var f=function(e,bW){this.$2=null;bh.call(this,e,null);this.$2=bW};f.__typeName='tab.$2';var g=function(e,bW,bX,bY){this.$3=null;this.$4=null;bh.call(this,e,bW);this.$3=bX;this.$4=bY};g.__typeName='tab.$3';var h=function(){};h.__typeName='tab.$4';var i=function(){};i.__typeName='tab.$5';i.$0=function(e){var bW;if(e instanceof tableauSoftware.Promise){bW=ss.cast(e,A)}else{if(ss.isValue(e)&&typeof(e['valueOf'])==='function'){e=e['valueOf']()}if(i.$1(e)){var bX=new x;ss.cast(e,A).then(ss.mkdel(bX,bX.resolve),ss.mkdel(bX,bX.reject));bW=bX.get_promise()}else{bW=i.$4(e)}}return bW};i.$2=function(e){return i.$0(e).then(function(bW){return i.$3(ss.cast(bW,ss.Exception))},null)};i.$4=function(bW){var bX=new A(function(bY,bZ){try{return i.$0((ss.isValue(bY)?bY(bW):bW))}catch(ca){var e=ss.Exception.wrap(ca);return i.$3(e)}});return bX};i.$3=function(bW){var bX=new A(function(bY,bZ){try{return(ss.isValue(bZ)?i.$0(bZ(bW)):i.$3(bW))}catch(ca){var e=ss.Exception.wrap(ca);return i.$3(e)}});return bX};i.$1=function(e){return ss.isValue(e)&&typeof(e['then'])==='function'};var j=function(e){this.$4=null;this.$5=new tab._Collection;this.$6=0;if(y.isArray(e)){var bW=e;for(var bX=0;bX<bW.length;bX++){var bY=bW[bX];if(!ss.isValue(bY.fieldName)){throw H.createInvalidParameter('pair.fieldName')}if(!ss.isValue(bY.value)){throw H.createInvalidParameter('pair.value')}var bZ=new bI(bY.fieldName,bY.value);this.$5._add(bZ.fieldName,bZ)}}else{this.$6=e}};j.__typeName='tab.$6';j.$0=function(e){var bW=new tab._Collection;if(ss.isNullOrUndefined(e)||I.isNullOrEmpty(e.marks)){return bW}for(var bX=0;bX<e.marks.length;bX++){var bY=e.marks[bX];var bZ=bY.tupleId;var ca=new bH(bZ);bW._add(bZ.toString(),ca);for(var cb=0;cb<bY.pairs.length;cb++){var cc=bY.pairs[cb];var cd=I.convertRawValue(cc.value,cc.valueDataType);var ce=new bI(cc.fieldName,cd);ce.formattedValue=cc.formattedValue;if(!ca.$0.$2()._has(ce.fieldName)){ca.$0.$0(ce)}}}return bW};var k=function(e){this.$i=null;this.$h=null;this.$c=null;this.$d=null;this.$b=null;this.$a=null;this.$g=null;this.$f=null;this.$j=null;this.$e=null;this.$h=e.name;this.$c=I.getDataValue(e.currentValue);this.$d=P.convertParameterDataType(e.dataType);this.$b=P.convertParameterAllowableValuesType(e.allowableValuesType);if(ss.isValue(e.allowableValues)&&this.$b==='list'){this.$a=[];for(var bW=0;bW<e.allowableValues.length;bW++){var bX=e.allowableValues[bW];this.$a.push(I.getDataValue(bX))}}if(this.$b==='range'){this.$g=I.getDataValue(e.minValue);this.$f=I.getDataValue(e.maxValue);this.$j=e.stepSize;if((this.$d==='date'||this.$d==='datetime')&&ss.isValue(this.$j)&&ss.isValue(e.dateStepPeriod)){this.$e=P.convertPeriodType(e.dateStepPeriod)}}};k.__typeName='tab.$7';var l=function(){};l.__typeName='tab.$8';l.$2=function(e){return function(bW,bX){if(ss.isValue(bW)){var bY=bW.toString().toUpperCase();var bZ=ss.Enum.getValues(e);for(var ca=0;ca<bZ.length;ca++){var cb=bZ[ca];var cc=cb.toUpperCase();if(ss.referenceEquals(bY,cc)){bX.$=cb;return true}}}bX.$=ss.getDefaultValue(e);return false}};l.$1=function(e){return function(bW,bX){var bY={};if(!l.$2(e).call(null,bW,bY)){throw H.createInvalidParameter(bX)}return bY.$}};l.$0=function(e){return function(bW){var bX={};var bY=l.$2(e).call(null,bW,bX);return bY}};var m=function(e,bW){bh.call(this,e,bW)};m.__typeName='tab.$9';var n=function(){};n.__typeName='tab._ApiBootstrap';n.initialize=function(){p.registerCrossDomainMessageRouter(function(){return new b})};global.tab._ApiBootstrap=n;var o=function(e,bW,bX,bY){this.$1=null;this.$0=null;this.$3=null;this.$2=null;this.$1=e;this.$3=bW;this.$0=bX;this.$2=bY};o.__typeName='tab._ApiCommand';o.parse=function(e){var bW;var bX=e.indexOf(String.fromCharCode(44));if(bX<0){bW=ss.cast(e,String);return new o(bW,null,null,null)}bW=ss.cast(e.substr(0,bX),String);var bY;var bZ=e.substr(bX+1);bX=bZ.indexOf(String.fromCharCode(44));if(bX<0){bY=bZ;return new o(bW,bY,null,null)}bY=bZ.substr(0,bX);var ca;var cb=bZ.substr(bX+1);bX=cb.indexOf(String.fromCharCode(44));if(bX<0){ca=cb;return new o(bW,bY,ca,null)}ca=cb.substr(0,bX);var cc=cb.substr(bX+1);return new o(bW,bY,ca,cc)};global.tab._ApiCommand=o;var p=function(){};p.__typeName='tab._ApiObjectRegistry';p.registerCrossDomainMessageRouter=function(e){return p.$3(Object).call(null,'ICrossDomainMessageRouter',e)};p.getCrossDomainMessageRouter=function(){return p.$2(Object).call(null,'ICrossDomainMessageRouter')};p.disposeCrossDomainMessageRouter=function(){p.$0(Object).call(null,'ICrossDomainMessageRouter')};p.$3=function(e){return function(bW,bX){if(ss.isNullOrUndefined(p.$5)){p.$5={}}var bY=p.$5[bW];p.$5[bW]=bX;return bY}};p.$1=function(e){return function(bW){if(ss.isNullOrUndefined(p.$5)){throw H.createInternalError('No types registered')}var bX=p.$5[bW];if(ss.isNullOrUndefined(bX)){throw H.createInternalError("No creation function has been registered for interface type '"+bW+"'.")}var bY=bX();return bY}};p.$2=function(e){return function(bW){if(ss.isNullOrUndefined(p.$6)){p.$6={}}var bX=ss.cast(p.$6[bW],e);if(ss.isNullOrUndefined(bX)){bX=p.$1(e).call(null,bW);p.$6[bW]=bX}return bX}};p.$0=function(e){return function(bW){if(ss.isNullOrUndefined(p.$6)){return null}var bX=ss.cast(p.$6[bW],e);delete p.$6[bW];return bX}};global.tab._ApiObjectRegistry=p;var q=function(e,bW,bX){this.$1=null;this.$2=null;this.$0=null;this.$1=e;this.$2=bW;this.$0=bX};q.__typeName='tab._ApiServerNotification';q.deserialize=function(e){var bW=JSON.parse(e);var bX=ss.cast(bW['api.workbookName'],String);var bY=ss.cast(bW['api.worksheetName'],String);var bZ=bW['api.commandData'];return new q(bX,bY,bZ)};global.tab._ApiServerNotification=q;var r=function(e){this.$1=null;this.$0=null;var bW=JSON.parse(e);this.$1=ss.cast(bW['api.commandResult'],String);this.$0=bW['api.commandData']};r.__typeName='tab._ApiServerResultParser';global.tab._ApiServerResultParser=r;var s=function(){this.$4=[];this.$3={}};s.__typeName='tab._CollectionImpl';global.tab._CollectionImpl=s;var t=function(e,bW,bX,bY){this.$0=null;this.$3=0;this.$2=null;this.$1=null;this.$0=e;this.$2=bX;this.$3=bW;this.$1=bY};t.__typeName='tab._CommandReturnHandler';global.tab._CommandReturnHandler=t;var u=function(e,bW,bX){this.$c=null;this.$j=null;this.$l=null;this.$g=null;this.$h=null;this.$i=null;this.$k=null;this.$e=false;this.$d=false;this.$f=false;this.$l=e;this.$h=bW;this.$g=bX;this.$e=false;this.$d=false;this.$f=false};u.__typeName='tab._CustomViewImpl';u._getAsync=function(e){var bW=new tab._Deferred;bW.resolve(e.get__customViewImpl().$5());return bW.get_promise()};u._createNew=function(e,bW,bX,bY){var bZ=new u(e,bX.name,bW);bZ.$e=bX.isPublic;bZ.$k=bX.url;bZ.$i=bX.owner.friendlyName;bZ.$d=ss.isValue(bY)&&ss.unbox(bY)===bX.id;bZ.$j=bX;return bZ};u._saveNewAsync=function(e,bW,bX){var bY=new tab._Deferred;var bZ={};bZ['api.customViewName']=bX;var ca=u.$0('api.SaveNewCustomViewCommand',bY,function(cb){u._processCustomViewUpdate(e,bW,cb,true);var cc=null;if(ss.isValue(e.$p())){cc=e.$p().get_item(0)}bY.resolve(cc)});bW.sendCommand(bZ,ca);return bY.get_promise()};u._showCustomViewAsync=function(e,bW,bX){var bY=new tab._Deferred;var bZ={};if(ss.isValue(bX)){bZ['api.customViewParam']=bX}var ca=u.$0('api.ShowCustomViewCommand',bY,function(cb){var cc=e.get_activeCustomView();bY.resolve(cc)});bW.sendCommand(bZ,ca);return bY.get_promise()};u._makeCurrentCustomViewDefaultAsync=function(e,bW){var bX=new tab._Deferred;var bY={};var bZ=u.$0('api.MakeCurrentCustomViewDefaultCommand',bX,function(ca){var cb=e.get_activeCustomView();bX.resolve(cb)});bW.sendCommand(bY,bZ);return bX.get_promise()};u._getCustomViewsAsync=function(e,bW){var bX=new tab._Deferred;var bY=new t('api.FetchCustomViewsCommand',0,function(bZ){u._processCustomViews(e,bW,bZ);bX.resolve(e.$i()._toApiCollection())},function(bZ,ca){bX.reject(H.create('serverError',ca))});bW.sendCommand(null,bY);return bX.get_promise()};u._processCustomViews=function(e,bW,bX){u._processCustomViewUpdate(e,bW,bX,false)};u._processCustomViewUpdate=function(e,bW,bX,bY){if(bY){e.$q(new tab._Collection)}e.$h(null);var bZ=null;if(ss.isValue(bX.currentView)){bZ=bX.currentView.name}var ca=bX.defaultCustomViewId;if(bY&&ss.isValue(bX.newView)){var cb=u._createNew(e,bW,bX.newView,ca);e.$p()._add(cb.$7(),cb.$5())}e.$o(e.$i());e.$j(new tab._Collection);if(ss.isValue(bX.customViews)){var cc=bX.customViews;if(cc.length>0){for(var cd=0;cd<cc.length;cd++){var ce=u._createNew(e,bW,cc[cd],ca);e.$i()._add(ce.$7(),ce.$5());if(e.$n()._has(ce.$7())){e.$n()._remove(ce.$7())}else if(bY){if(!e.$p()._has(ce.$7())){e.$p()._add(ce.$7(),ce.$5())}}if(ss.isValue(bZ)&&ss.referenceEquals(ce.$7(),bZ)){e.$h(ce.$5())}}}}};u.$0=function(e,bW,bX){var bY=function(bZ,ca){bW.reject(H.create('serverError',ca))};return new t(e,0,bX,bY)};var v=function(e,bW,bX){this.$d=null;this.$f=new tab._Collection;this.$e=new tab._Collection;C.call(this,e,bW,bX)};v.__typeName='tab._DashboardImpl';global.tab._DashboardImpl=v;var w=function(e,bW){this.$3=null;this.$1=new tab._Collection;this.$2=false;this.$0=null;z.verifyString(e,'name');this.$3=e;this.$2=bW};w.__typeName='tab._DataSourceImpl';w.processDataSource=function(e){var bW=new w(e.name,e.isPrimary);var bX=ss.coalesce(e.fields,[]);for(var bY=0;bY<bX.length;bY++){var bZ=bX[bY];var ca=P.convertFieldRole(bZ.role);var cb=P.convertFieldAggregation(bZ.aggregation);var cc=new bE(bW.get_dataSource(),bZ.name,ca,cb);bW.addField(cc)}return bW};w.processDataSourcesForWorksheet=function(e){var bW=new tab._Collection;var bX=null;for(var bY=0;bY<e.dataSources.length;bY++){var bZ=e.dataSources[bY];var ca=w.processDataSource(bZ);if(bZ.isPrimary){bX=ca}else{bW._add(bZ.name,ca.get_dataSource())}}if(ss.isValue(bX)){bW._addToFirst(bX.get_name(),bX.get_dataSource())}return bW};global.tab._DataSourceImpl=w;var x=function(){this.$3=null;this.$5=null;this.$2=[];this.$4=null;this.$3=new A(ss.mkdel(this,this.then));this.$5=ss.mkdel(this,this.$0);this.$4=ss.mkdel(this,this.$1)};x.__typeName='tab._DeferredImpl';global.tab._DeferredImpl=x;var y=function(){};y.__typeName='tab._jQueryShim';y.isFunction=function(e){return y.type(e)==='function'};y.isArray=function(e){if(ss.isValue(Array['isArray'])){return ss.unbox(ss.cast(Array['isArray'](e),Boolean))}return y.type(e)==='array'};y.type=function(e){return(ss.isNullOrUndefined(e)?String(e):(y.$8[ss.cast(y.$d.call(e),String)]||'object'))};y.trim=function(e){if(ss.isValue(y.$e)){return(ss.isNullOrUndefined(e)?'':ss.cast(y.$e.call(e),String))}return(ss.isNullOrUndefined(e)?'':e.toString().replace(y.$f,'').replace(y.$g,''))};y.parseJSON=function(e){if(typeof(e)!=='string'||ss.isNullOrUndefined(e)){return null}e=y.trim(e);if(ss.isValue(JSON)&&ss.isValue(JSON['parse'])){return JSON.parse(e)}if(y.$a.test(e.replace(y.$b,'@').replace(y.$c,']').replace(y.$9,''))){return(new Function('return '+e))()}throw new ss.Exception('Invalid JSON: '+e)};global.tab._jQueryShim=y;var z=function(){};z.__typeName='tab._Param';z.verifyString=function(e,bW){if(ss.isNullOrUndefined(e)||e.length===0){throw H.createInternalStringArgumentException(bW)}};z.verifyValue=function(e,bW){if(ss.isNullOrUndefined(e)){throw H.createInternalNullArgumentException(bW)}};global.tab._Param=z;var A=function(e){this.then=null;this.then=e};A.__typeName='tab._PromiseImpl';global.tab._PromiseImpl=A;var B=function(e,bW,bX,bY){this.left=0;this.top=0;this.width=0;this.height=0;this.left=e;this.top=bW;this.width=bX;this.height=bY};B.__typeName='tab._Rect';global.tab._Rect=B;var C=function(e,bW,bX){this.$5=null;this.$1=0;this.$2=false;this.$3=false;this.$7=null;this.$8=null;this.$9=null;this.$a=null;this.$4=null;this.$6=null;this.$b=0;z.verifyValue(e,'sheetInfoImpl');z.verifyValue(bW,'workbookImpl');z.verifyValue(bX,'messagingOptions');this.$5=e.name;this.$1=e.index;this.$2=e.isActive;this.$3=e.isHidden;this.$7=e.sheetType;this.$8=e.size;this.$9=e.url;this.$a=bW;this.$4=bX;this.$b=e.zoneId};C.__typeName='tab._SheetImpl';C.$0=function(e){if(ss.isValue(e)){return I.toInt(e)}return e};C.$1=function(e){var bW=l.$1(ba).call(null,e.behavior,'size.behavior');var bX=e.minSize;if(ss.isValue(bX)){bX=bq.$ctor(C.$0(e.minSize.width),C.$0(e.minSize.height))}var bY=e.maxSize;if(ss.isValue(bY)){bY=bq.$ctor(C.$0(e.maxSize.width),C.$0(e.maxSize.height))}return bo.$ctor(bW,bX,bY)};global.tab._SheetImpl=C;var D=function(){};D.__typeName='tab._SheetInfoImpl';D.$ctor=function(e,bW,bX,bY,bZ,ca,cb,cc,cd){var ce=new Object;ce.name=null;ce.index=0;ce.workbook=null;ce.url=null;ce.isHidden=false;ce.sheetType=null;ce.zoneId=0;ce.size=null;ce.isActive=false;ce.name=e;ce.sheetType=bW;ce.index=bX;ce.size=bY;ce.workbook=bZ;ce.url=ca;ce.isActive=cb;ce.isHidden=cc;ce.zoneId=cd;return ce};global.tab._SheetInfoImpl=D;var E=function(e,bW,bX,bY,bZ){this.$g=null;this.$h=null;this.$i=null;this.$j=null;this.$2$1=null;C.call(this,e,bW,bX);z.verifyValue(bY,'storyPm');z.verifyValue(bZ,'findSheetFunc');this.$h=bZ;this.update(bY)};E.__typeName='tab._StoryImpl';global.tab._StoryImpl=E;var F=function(e,bW){this.$1=null;this.$3=0;this.$4=false;this.$5=false;this.$2=null;this.$6=null;this.$7=null;this.$8=0;this.$4=e.isActive;this.$5=e.isUpdated;this.$1=e.caption;this.$3=e.index;this.$6=e.parentStoryImpl;this.$8=e.storyPointId;this.$2=bW;if(ss.isValue(bW)){this.$2.set_parentStoryPointImpl(this);if(bW.get_sheetType()==='dashboard'){var bX=ss.cast(this.$2,v);for(var bY=0;bY<bX.get_worksheets().get__length();bY++){var bZ=bX.get_worksheets().get_item(bY);bZ._impl.set_parentStoryPointImpl(this)}}}};F.__typeName='tab._StoryPointImpl';F.createContainedSheet=function(e,bW,bX,bY){var bZ=P.convertSheetType(e.sheetType);var ca=-1;var cb=bp.createAutomatic();var cc=false;var cd=bY(e.name);var ce=ss.isNullOrUndefined(cd);var cf=(ce?'':cd.getUrl());var cg=D.$ctor(e.name,bZ,ca,cb,bW.get_workbook(),cf,cc,ce,e.zoneId);if(e.sheetType===0){var ch=null;var ci=new M(cg,bW,bX,ch);return ci}else if(e.sheetType===1){var cj=new v(cg,bW,bX);var ck=L.$0(e.dashboardZones);cj.$c(ck,bY);return cj}else if(e.sheetType===2){throw H.createInternalError('Cannot have a story embedded within another story.')}else{throw H.createInternalError("Unknown sheet type '"+e.sheetType+"'")}};global.tab._StoryPointImpl=F;var G=function(){};G.__typeName='tab._StoryPointInfoImpl';G.$ctor=function(e,bW,bX,bY,bZ,ca){var cb=new Object;cb.storyPointId=0;cb.parentStoryImpl=null;cb.caption=null;cb.index=0;cb.isActive=false;cb.isUpdated=false;cb.caption=e;cb.index=bW;cb.storyPointId=bX;cb.isActive=bY;cb.isUpdated=bZ;cb.parentStoryImpl=ca;return cb};global.tab._StoryPointInfoImpl=G;var H=function(){};H.__typeName='tab._TableauException';H.create=function(e,bW){var bX=new ss.Exception(bW);bX['tableauSoftwareErrorCode']=e;return bX};H.createInternalError=function(e){if(ss.isValue(e)){return H.create('internalError','Internal error. Please contact Tableau support with the following information: '+e)}else{return H.create('internalError','Internal error. Please contact Tableau support')}};H.createInternalNullArgumentException=function(e){return H.createInternalError("Null/undefined argument '"+e+"'.")};H.createInternalStringArgumentException=function(e){return H.createInternalError("Invalid string argument '"+e+"'.")};H.createServerError=function(e){return H.create('serverError',e)};H.createNotActiveSheet=function(){return H.create('notActiveSheet','Operation not allowed on non-active sheet')};H.createInvalidCustomViewName=function(e){return H.create('invalidCustomViewName','Invalid custom view name: '+e)};H.createInvalidParameter=function(e){return H.create('invalidParameter','Invalid parameter: '+e)};H.createInvalidFilterFieldNameOrValue=function(e){return H.create('invalidFilterFieldNameOrValue','Invalid filter field name or value: '+e)};H.createInvalidDateParameter=function(e){return H.create('invalidDateParameter','Invalid date parameter: '+e)};H.createNullOrEmptyParameter=function(e){return H.create('nullOrEmptyParameter','Parameter cannot be null or empty: '+e)};H.createMissingMaxSize=function(){return H.create('missingMaxSize','Missing maxSize for SheetSizeBehavior.ATMOST')};H.createMissingMinSize=function(){return H.create('missingMinSize','Missing minSize for SheetSizeBehavior.ATLEAST')};H.createMissingMinMaxSize=function(){return H.create('missingMinMaxSize','Missing minSize or maxSize for SheetSizeBehavior.RANGE')};H.createInvalidRangeSize=function(){return H.create('invalidSize','Missing minSize or maxSize for SheetSizeBehavior.RANGE')};H.createInvalidSizeValue=function(){return H.create('invalidSize','Size value cannot be less than zero')};H.createInvalidSheetSizeParam=function(){return H.create('invalidSize','Invalid sheet size parameter')};H.createSizeConflictForExactly=function(){return H.create('invalidSize','Conflicting size values for SheetSizeBehavior.EXACTLY')};H.createInvalidSizeBehaviorOnWorksheet=function(){return H.create('invalidSizeBehaviorOnWorksheet','Only SheetSizeBehavior.AUTOMATIC is allowed on Worksheets')};H.createNoUrlForHiddenWorksheet=function(){return H.create('noUrlForHiddenWorksheet','Hidden worksheets do not have a URL.')};H.$0=function(e){return H.create('invalidAggregationFieldName',"Invalid aggregation type for field '"+e+"'")};H.createIndexOutOfRange=function(e){return H.create('indexOutOfRange',"Index '"+e+"' is out of range.")};H.createUnsupportedEventName=function(e){return H.create('unsupportedEventName',"Unsupported event '"+e+"'.")};H.createBrowserNotCapable=function(){return H.create('browserNotCapable','This browser is incapable of supporting the Tableau JavaScript API.')};global.tab._TableauException=H;var I=function(){};I.__typeName='tab._Utility';I.isNullOrEmpty=function(e){return ss.isNullOrUndefined(e)||(e['length']||0)<=0};I.isString=function(e){return typeof(e)==='string'};I.isNumber=function(e){return typeof(e)==='number'};I.isDate=function(e){if(typeof(e)==='object'&&ss.isInstanceOfType(e,ss.JsDate)){return true}else if(!!(Object.prototype.toString.call(e)!=='[object Date]')){return false}return!isNaN(ss.cast(e,ss.JsDate).getTime())};I.isDateValid=function(e){return!isNaN(e.getTime())};I.indexOf=function(e,bW,bX){if(ss.isValue(Array.prototype['indexOf'])){return ss.unbox(ss.cast(e['indexOf'](bW,bX),ss.Int32))}bX=bX||0;var bY=e.length;if(bY>0){for(var bZ=bX;bZ<bY;bZ++){if(ss.referenceEquals(e[bZ],bW)){return bZ}}}return-1};I.contains=function(e,bW,bX){var bY=I.indexOf(e,bW,bX);return bY>=0};I.getTopmostWindow=function(){var e=window.self;while(ss.isValue(e.parent)&&!ss.referenceEquals(e.parent,e)){e=e.parent}return e};I.toInt=function(e){if(I.isNumber(e)){return ss.Int32.trunc(e)}var bW=parseInt(e.toString(),10);if(isNaN(bW)){return 0}return bW};I.hasClass=function(e,bW){var bX=new RegExp('[\\n\\t\\r]','g');return ss.isValue(e)&&(' '+e.className+' ').replace(bX,' ').indexOf(' '+bW+' ')>-1};I.findParentWithClassName=function(e,bW,bX){var bY=(ss.isValue(e)?ss.cast(e.parentNode,HTMLElement):null);bX=bX||document.body;while(ss.isValue(bY)){if(I.hasClass(bY,bW)){return bY}if(ss.referenceEquals(bY,bX)){bY=null}else{bY=ss.cast(bY.parentNode,HTMLElement)}}return bY};I.hasJsonParse=function(){return!!(ss.isValue(JSON)&&ss.isValue(JSON.parse))};I.hasWindowPostMessage=function(){return!!ss.isValue(window.postMessage)};I.isPostMessageSynchronous=function(){if(I.isIE()){var e=new RegExp('(msie) ([\\w.]+)');var bW=e.exec(window.navigator.userAgent.toLowerCase());var bX=bW[2]||'0';var bY=parseInt(bX,10);return bY<=8}return false};I.hasDocumentAttachEvent=function(){return!!ss.isValue(document.attachEvent)};I.hasWindowAddEventListener=function(){return!!ss.isValue(window.addEventListener)};I.isElementOfTag=function(e,bW){return ss.isValue(e)&&e.nodeType===1&&ss.referenceEquals(e.tagName.toLowerCase(),bW.toLowerCase())};I.elementToString=function(e){var bW=new ss.StringBuilder;bW.append(e.tagName.toLowerCase());if(!I.isNullOrEmpty(e.id)){bW.append('#').append(e.id)}if(!I.isNullOrEmpty(e.className)){var bX=e.className.split(' ');bW.append('.').append(bX.join('.'))}return bW.toString()};I.tableauGCS=function(e){if(typeof(window['getComputedStyle'])==='function'){return window.getComputedStyle(e)}else{return e['currentStyle']}};I.isIE=function(){return!!(window.navigator.userAgent.indexOf('MSIE')>-1&&ss.isNullOrUndefined(window.opera))};I.isSafari=function(){var e=window.navigator.userAgent;var bW=e.indexOf('Chrome')>=0;return e.indexOf('Safari')>=0&&!bW};I.mobileDetect=function(){var e=window.navigator.userAgent;if(e.indexOf('iPad')!==-1){return true}if(e.indexOf('Android')!==-1){return true}if(e.indexOf('AppleWebKit')!==-1&&e.indexOf('Mobile')!==-1){return true}return false};I.visibleContentRectInDocumentCoordinates=function(e){var bW=I.contentRectInDocumentCoordinates(e);for(var bX=e.parentElement;ss.isValue(bX)&&ss.isValue(bX.parentElement);bX=bX.parentElement){var bY=I.$0(bX).overflow;if(bY==='auto'||bY==='scroll'||bY==='hidden'){bW=bW.intersect(I.contentRectInDocumentCoordinates(bX))}}var bZ=I.contentRectInDocumentCoordinates(document.documentElement);var ca=new tab.WindowHelper(window.self);bZ.left+=ca.get_pageXOffset();bZ.top+=ca.get_pageYOffset();return bW.intersect(bZ)};I.contentRectInDocumentCoordinates=function(e){var bW=I.getBoundingClientRect(e);var bX=I.$0(e);var bY=I.toInt(bX.paddingLeft);var bZ=I.toInt(bX.paddingTop);var ca=I.toInt(bX.borderLeftWidth);var cb=I.toInt(bX.borderTopWidth);var cc=I.computeContentSize(e);var cd=new tab.WindowHelper(window.self);var ce=bW.left+bY+ca+cd.get_pageXOffset();var cf=bW.top+bZ+cb+cd.get_pageYOffset();return new B(ce,cf,cc.width,cc.height)};I.getBoundingClientRect=function(e){var bW=e.getBoundingClientRect();var bX=ss.Int32.trunc(bW.top);var bY=ss.Int32.trunc(bW.left);var bZ=ss.Int32.trunc(bW.right);var ca=ss.Int32.trunc(bW.bottom);return new B(bY,bX,bZ-bY,ca-bX)};I.convertRawValue=function(e,bW){if(ss.isNullOrUndefined(e)){return null}switch(bW){case'bool':{return e}case'date':case'number':{if(ss.isNullOrUndefined(e)){return Number.NaN}return e}default:case'string':{return e}}};I.getDataValue=function(e){if(ss.isNullOrUndefined(e)){return bg.$ctor(null,null,null)}return bg.$ctor(I.convertRawValue(e.value,e.type),e.formattedValue,e.aliasedValue)};I.serializeDateForServer=function(e){var bW='';if(ss.isValue(e)&&I.isDate(e)){var bX=e.getUTCFullYear();var bY=e.getUTCMonth()+1;var bZ=e.getUTCDate();var ca=e.getUTCHours();var cb=e.getUTCMinutes();var cc=e.getUTCSeconds();bW=bX+'-'+bY+'-'+bZ+' '+ca+':'+cb+':'+cc}return bW};I.computeContentSize=function(e){var bW=I.$0(e);var bX=parseFloat(bW.paddingLeft);var bY=parseFloat(bW.paddingTop);var bZ=parseFloat(bW.paddingRight);var ca=parseFloat(bW.paddingBottom);var cb=e.clientWidth-ss.Int32.trunc(Math.round(bX+bZ));var cc=e.clientHeight-ss.Int32.trunc(Math.round(bY+ca));return bq.$ctor(cb,cc)};I.$0=function(e){if(typeof(window['getComputedStyle'])==='function'){if(ss.isValue(e.ownerDocument.defaultView.opener)){return e.ownerDocument.defaultView.opener.getComputedStyle(e)}return window.getComputedStyle(e)}else if(ss.isValue(e['currentStyle'])){return e['currentStyle']}return e.style};global.tab._Utility=I;var J=function(){};J.__typeName='tab._VizManagerImpl';J.$4=function(){return J.$5.concat()};J.$0=function(e){J.$3(e);J.$5.push(e)};J.$2=function(e){for(var bW=0,bX=J.$5.length;bW<bX;bW++){if(ss.referenceEquals(J.$5[bW],e)){J.$5.splice(bW,1);break}}};J.$1=function(){for(var e=0,bW=J.$5.length;e<bW;e++){J.$5[e]._impl.$y()}};J.$3=function(e){var bW=e.getParentElement();for(var bX=0,bY=J.$5.length;bX<bY;bX++){if(ss.referenceEquals(J.$5[bX].getParentElement(),bW)){var bZ="Another viz is already present in element '"+I.elementToString(bW)+"'.";throw H.create('vizAlreadyInManager',bZ)}}};var K=function(e,bW,bX){this.name='';this.host_url=null;this.tabs=false;this.toolbar=false;this.toolBarPosition=null;this.handlerId=null;this.width=null;this.height=null;this.serverRoot=null;this.parentElement=null;this.userSuppliedParameters=null;this.fixedSize=false;this.$2=null;this.$1=null;if(ss.isNullOrUndefined(e)||ss.isNullOrUndefined(bW)){throw H.create('noUrlOrParentElementNotFound','URL is empty or Parent element not found')}if(ss.isNullOrUndefined(bX)){bX=new Object;bX.hideTabs=false;bX.hideToolbar=false;bX.onFirstInteractive=null}if(ss.isValue(bX.height)||ss.isValue(bX.width)){this.fixedSize=true;if(I.isNumber(bX.height)){bX.height=bX.height.toString()+'px'}if(I.isNumber(bX.width)){bX.width=bX.width.toString()+'px'}this.height=(ss.isValue(bX.height)?bX.height.toString():null);this.width=(ss.isValue(bX.width)?bX.width.toString():null)}else{this.fixedSize=false}this.tabs=!(bX.hideTabs||false);this.toolbar=!(bX.hideToolbar||false);this.parentElement=e;this.$1=bX;this.toolBarPosition=bX.toolbarPosition;var bY=bW.split('?');this.$2=bY[0];if(bY.length===2){this.userSuppliedParameters=bY[1]}else{this.userSuppliedParameters=''}var bZ=(new RegExp('.*?[^/:]/','')).exec(this.$2);if(ss.isNullOrUndefined(bZ)||bZ[0].toLowerCase().indexOf('http://')===-1&&bZ[0].toLowerCase().indexOf('https://')===-1){throw H.create('invalidUrl','Invalid url')}this.host_url=bZ[0].toLowerCase();this.name=this.$2.replace(bZ[0],'');this.name=this.name.replace('views/','');this.serverRoot=decodeURIComponent(this.host_url)};K.__typeName='tab._VizParameters';global.tab._VizParameters=K;var L=function(e,bW,bX){this.$E=null;this.$D=null;this.$y=null;this.$s=null;this.$r=null;this.$A=new tab._Collection;this.$v=false;this.$x=null;this.$t=null;this.$u=new tab._Collection;this.$C=new tab._Collection;this.$B=new tab._Collection;this.$z=null;this.$w=null;this.$D=e;this.$x=bW;this.$5(bX)};L.__typeName='tab._WorkbookImpl';L.$0=function(e){e=ss.coalesce(e,[]);var bW=[];for(var bX=0;bX<e.length;bX++){var bY=e[bX];var bZ=P.convertDashboardObjectType(bY.zoneType);var ca=bq.$ctor(bY.width,bY.height);var cb=bn.$ctor(bY.x,bY.y);var cc=bY.name;var cd={name:cc,objectType:bZ,position:cb,size:ca,zoneId:bY.zoneId};bW.push(cd)}return bW};L.$2=function(e){if(ss.isNullOrUndefined(e)){return null}if(I.isString(e)){return e}var bW=ss.safeCast(e,bM);if(ss.isValue(bW)){return bW.getName()}var bX=ss.safeCast(e,bN);if(ss.isValue(bX)){return bX.getName()}return null};L.$1=function(e){if(ss.isNullOrUndefined(e)){return bp.createAutomatic()}return bp.fromSizeConstraints(e.sizeConstraints)};L.$4=function(e){var bW=new tab._Collection;for(var bX=0;bX<e.parameters.length;bX++){var bY=e.parameters[bX];var bZ=new k(bY);bW._add(bZ.$7(),bZ.$8())}return bW};L.$3=function(e,bW){for(var bX=0;bX<bW.parameters.length;bX++){var bY=bW.parameters[bX];if(ss.referenceEquals(bY.name,e)){return new k(bY)}}return null};global.tab._WorkbookImpl=L;var M=function(e,bW,bX,bY){this.$E=null;this.$C=null;this.$B=new tab._Collection;this.$D=new tab._Collection;C.call(this,e,bW,bX);this.$C=bY};M.__typeName='tab._WorksheetImpl';M.$2=function(e){var bW=e;if(ss.isValue(bW)&&ss.isValue(bW.errorCode)){var bX=(ss.isValue(bW.additionalInformation)?bW.additionalInformation.toString():'');switch(bW.errorCode){case 2:{return H.create('invalidFilterFieldName',bX)}case 3:{return H.create('invalidFilterFieldValue',bX)}case 1:{return H.$0(bX)}default:{return H.createServerError(bX)}}}return null};M.$3=function(e){if(ss.isNullOrUndefined(e)){throw H.createNullOrEmptyParameter('filterOptions')}if(ss.isNullOrUndefined(e.min)&&ss.isNullOrUndefined(e.max)){throw H.create('invalidParameter','At least one of filterOptions.min or filterOptions.max must be specified.')}var bW=new Object;if(ss.isValue(e.min)){bW.min=e.min}if(ss.isValue(e.max)){bW.max=e.max}if(ss.isValue(e.nullOption)){bW.nullOption=l.$1(V).call(null,e.nullOption,'filterOptions.nullOption')}return bW};M.$4=function(e){if(ss.isNullOrUndefined(e)){throw H.createNullOrEmptyParameter('filterOptions')}var bW=new Object;bW.rangeType=l.$1(O).call(null,e.rangeType,'filterOptions.rangeType');bW.periodType=l.$1(Y).call(null,e.periodType,'filterOptions.periodType');if(bW.rangeType==='lastn'||bW.rangeType==='nextn'){if(ss.isNullOrUndefined(e.rangeN)){throw H.create('missingRangeNForRelativeDateFilters','Missing rangeN field for a relative date filter of LASTN or NEXTN.')}bW.rangeN=I.toInt(e.rangeN)}if(ss.isValue(e.anchorDate)){if(!I.isDate(e.anchorDate)||!I.isDateValid(e.anchorDate)){throw H.createInvalidDateParameter('filterOptions.anchorDate')}bW.anchorDate=e.anchorDate}return bW};M.$0=function(e,bW,bX){return new t(e,1,function(bY){var bZ=M.$2(bY);if(ss.isNullOrUndefined(bZ)){bX.resolve(bW)}else{bX.reject(bZ)}},function(bY,bZ){if(bY){bX.reject(H.createInvalidFilterFieldNameOrValue(bW))}else{var ca=H.create('filterCannotBePerformed',bZ);bX.reject(ca)}})};M.$1=function(e){var bW=e;if(ss.isValue(bW)&&ss.isValue(bW.errorCode)){var bX=(ss.isValue(bW.additionalInformation)?bW.additionalInformation.toString():'');switch(bW.errorCode){case 4:{return H.create('invalidSelectionFieldName',bX)}case 5:{return H.create('invalidSelectionValue',bX)}case 6:{return H.create('invalidSelectionDate',bX)}}}return null};global.tab._WorksheetImpl=M;var N=function(){};N.__typeName='tab.ApiDashboardObjectType';global.tab.ApiDashboardObjectType=N;var O=function(){};O.__typeName='tab.ApiDateRangeType';global.tab.ApiDateRangeType=O;var P=function(){};P.__typeName='tab.ApiEnumConverter';P.convertDashboardObjectType=function(e){switch(e){case 0:{return'blank'}case 8:{return'image'}case 5:{return'legend'}case 4:{return'pageFilter'}case 3:{return'parameterControl'}case 2:{return'quickFilter'}case 7:{return'text'}case 6:{return'title'}case 9:{return'webPage'}case 1:{return'worksheet'}default:{throw H.createInternalError('Unknown ApiCrossDomainDashboardObjectType: '+e)}}};P.convertDateRange=function(e){switch(e){case 4:{return'curr'}case 0:{return'last'}case 1:{return'lastn'}case 2:{return'next'}case 3:{return'nextn'}case 5:{return'todate'}default:{throw H.createInternalError('Unknown ApiCrossDomainDateRangeType: '+e)}}};P.convertFieldAggregation=function(e){switch(e){case 11:{return'ATTR'}case 1:{return'AVG'}case 8:{return'COUNT'}case 9:{return'COUNTD'}case 17:{return'DAY'}case 25:{return'END'}case 18:{return'HOUR'}case 38:{return'INOUT'}case 37:{return'KURTOSIS'}case 3:{return'MAX'}case 24:{return'MDY'}case 10:{return'MEDIAN'}case 2:{return'MIN'}case 19:{return'MINUTE'}case 16:{return'MONTH'}case 23:{return'MONTHYEAR'}case 12:{return'NONE'}case 13:{return'PERCENTILE'}case 34:{return'QUART1'}case 35:{return'QUART3'}case 15:{return'QTR'}case 20:{return'SECOND'}case 36:{return'SKEWNESS'}case 4:{return'STDEV'}case 5:{return'STDEVP'}case 0:{return'SUM'}case 39:{return'SUM_XSQR'}case 30:{return'TRUNC_DAY'}case 31:{return'TRUNC_HOUR'}case 32:{return'TRUNC_MINUTE'}case 28:{return'TRUNC_MONTH'}case 27:{return'TRUNC_QTR'}case 33:{return'TRUNC_SECOND'}case 29:{return'TRUNC_WEEK'}case 26:{return'TRUNC_YEAR'}case 40:{return'USER'}case 6:{return'VAR'}case 7:{return'VARP'}case 21:{return'WEEK'}case 22:{return'WEEKDAY'}case 14:{return'YEAR'}default:{throw H.createInternalError('Unknown ApiCrossDomainFieldAggregationType: '+e)}}};P.convertFieldRole=function(e){switch(e){case 0:{return'dimension'}case 1:{return'measure'}case 2:{return'unknown'}default:{throw H.createInternalError('Unknown ApiCrossDomainFieldRoleType: '+e)}}};P.convertFilterType=function(e){switch(e){case 0:{return'categorical'}case 2:{return'hierarchical'}case 1:{return'quantitative'}case 3:{return'relativedate'}default:{throw H.createInternalError('Unknown ApiCrossDomainFilterType: '+e)}}};P.convertParameterAllowableValuesType=function(e){switch(e){case 0:{return'all'}case 1:{return'list'}case 2:{return'range'}default:{throw H.createInternalError('Unknown ApiCrossDomainParameterAllowableValuesType: '+e)}}};P.convertParameterDataType=function(e){switch(e){case 3:{return'boolean'}case 4:{return'date'}case 5:{return'datetime'}case 0:{return'float'}case 1:{return'integer'}case 2:{return'string'}default:{throw H.createInternalError('Unknown ApiCrossDomainParameterDataType: '+e)}}};P.convertPeriodType=function(e){switch(e){case 0:{return'year'}case 1:{return'quarter'}case 2:{return'month'}case 3:{return'week'}case 4:{return'day'}case 5:{return'hour'}case 6:{return'minute'}case 7:{return'second'}default:{throw H.createInternalError('Unknown ApiCrossDomainPeriodType: '+e)}}};P.convertSheetType=function(e){switch(e){case 0:{return'worksheet'}case 1:{return'dashboard'}case 2:{return'story'}default:{throw H.createInternalError('Unknown ApiCrossDomainSheetType: '+e)}}};global.tab.ApiEnumConverter=P;var Q=function(){};Q.__typeName='tab.ApiErrorCode';global.tab.ApiErrorCode=Q;var R=function(){};R.__typeName='tab.ApiFieldAggregationType';global.tab.ApiFieldAggregationType=R;var S=function(){};S.__typeName='tab.ApiFieldRoleType';global.tab.ApiFieldRoleType=S;var T=function(){};T.__typeName='tab.ApiFilterType';global.tab.ApiFilterType=T;var U=function(){};U.__typeName='tab.ApiFilterUpdateType';global.tab.ApiFilterUpdateType=U;var V=function(){};V.__typeName='tab.ApiNullOption';global.tab.ApiNullOption=V;var W=function(){};W.__typeName='tab.ApiParameterAllowableValuesType';global.tab.ApiParameterAllowableValuesType=W;var X=function(){};X.__typeName='tab.ApiParameterDataType';global.tab.ApiParameterDataType=X;var Y=function(){};Y.__typeName='tab.ApiPeriodType';global.tab.ApiPeriodType=Y;var Z=function(){};Z.__typeName='tab.ApiSelectionUpdateType';global.tab.ApiSelectionUpdateType=Z;var ba=function(){};ba.__typeName='tab.ApiSheetSizeBehavior';global.tab.ApiSheetSizeBehavior=ba;var bb=function(){};bb.__typeName='tab.ApiSheetType';global.tab.ApiSheetType=bb;var bc=function(){};bc.__typeName='tab.ApiTableauEventName';global.tab.ApiTableauEventName=bc;var bd=function(){};bd.__typeName='tab.ApiToolbarPosition';global.tab.ApiToolbarPosition=bd;var be=function(e,bW){this.$1=null;this.$0=null;z.verifyValue(e,'router');z.verifyValue(bW,'handler');this.$1=e;this.$0=bW};be.__typeName='tab.CrossDomainMessagingOptions';global.tab.CrossDomainMessagingOptions=be;var bf=function(e,bW,bX){this.$2=null;bt.call(this,e,bW);this.$2=new f(bW._impl.get__workbookImpl(),bX)};bf.__typeName='tab.CustomViewEvent';global.tab.CustomViewEvent=bf;var bg=function(){};bg.__typeName='tab.DataValue';bg.$ctor=function(e,bW,bX){var bY=new Object;bY.value=null;bY.formattedValue=null;bY.value=e;if(I.isNullOrEmpty(bX)){bY.formattedValue=bW}else{bY.formattedValue=bX}return bY};global.tab.DataValue=bg;var bh=function(e,bW){this.$0=null;this.$1=null;this.$0=e;this.$1=bW};bh.__typeName='tab.EventContext';global.tab.EventContext=bh;var bi=function(e,bW,bX,bY,bZ){this.$4=null;this.$3=null;by.call(this,e,bW,bX);this.$4=bZ;this.$3=new g(bW._impl.get__workbookImpl(),bX,bY,bZ)};bi.__typeName='tab.FilterEvent';global.tab.FilterEvent=bi;var bj=function(e,bW,bX){this.$2=null;bt.call(this,e,bW);this.$2=bX};bj.__typeName='tab.FirstVizSizeKnownEvent';global.tab.FirstVizSizeKnownEvent=bj;var bk=function(){};bk.__typeName='tab.JsonUtil';bk.parseJson=function(e){if(ss.isNullOrEmptyString(e)){return null}return y.parseJSON(e)};bk.toJson=function(e,bW,bX){bW=bW||false;bX=bX||'';var bY=[];return bk.$3(e,bW,bX,bY)};bk.$2=function(e,bW,bX){if(ss.isValue(Array.prototype['indexOf'])){return e.indexOf(bW,bX)}bX=bX||0;var bY=e.length;if(bY>0){for(var bZ=bX;bZ<bY;bZ++){if(ss.referenceEquals(e[bZ],bW)){return bZ}}}return-1};bk.$0=function(e,bW,bX){var bY=bk.$2(e,bW,bX);return bY>=0};bk.$3=function(e,bW,bX,bY){if(bk.$0(bY,e)){throw new ss.Exception('The object contains recursive reference of sub-objects')}if(typeof(e)==='undefined'){return'undefined'}if(ss.isNullOrUndefined(e)){return'null'}var bZ=y.type(e);if(bZ==='number'||bZ==='boolean'){return e.toString()}if(bZ==='string'){return bk.$1(ss.cast(e,String))}bY.push(e);var ca;bX=bX||'';var cb=(bW?(bX+'\t'):'');var cc=e.__json__||e.json;if(y.isFunction(cc)){var cd=ss.cast(cc,Function);ca=cd(e);if(!ss.referenceEquals(e,ca)){var ce=bk.$3(ca,bW,cb,bY);bY.pop();return ce}}if(!!(ss.isValue(e.nodeType)&&ss.isValue(e.cloneNode))){throw new ss.Exception("Can't serialize DOM nodes")}var cf=(bW?' ':'');var cg=(bW?'\n':'');if(y.isArray(e)){return bk.$4(e,bW,bX,bY,cb,cg)}if(bZ==='function'){bY.pop();return null}return bk.$5(e,bW,bX,bY,cb,cg,cf)};bk.$5=function(e,bW,bX,bY,bZ,ca,cb){var cc=e;var cd=new ss.StringBuilder('{');var ce=false;var cf=new ss.ObjectEnumerator(cc);try{while(cf.moveNext()){var cg=cf.current();var ch;var ci;if(typeof(cg.key)==='number'){ch='"'+cg.key+'"'}else if(typeof(cg.key)==='string'){ch=bk.$1(cg.key)}else{continue}ci=bk.$3(cg.value,bW,bZ,bY);if(ss.isNullOrUndefined(ci)){continue}if(ce){cd.append(',')}cd.append(ca+bZ+ch+':'+cb+ci);ce=true}}finally{cf.dispose()}cd.append(ca+bX+'}');bY.pop();return cd.toString()};bk.$4=function(e,bW,bX,bY,bZ,ca){var cb=false;var cc=new ss.StringBuilder('[');var cd=ss.cast(e,Array);for(var ce=0;ce<cd.length;ce++){var cf=cd[ce];var cg=bk.$3(cf,bW,bZ,bY);if(ss.isNullOrUndefined(cg)){cg='undefined'}if(cb){cc.append(',')}cc.append(ca+bZ+cg);cb=true}cc.append(ca+bX+']');bY.pop();return cc.toString()};bk.$1=function(e){e='"'+e.replace(new RegExp('(["\\\\])','g'),'\\$1')+'"';e=e.replace(new RegExp('[\f]','g'),'\\f');e=e.replace(new RegExp('[\b]','g'),'\\b');e=e.replace(new RegExp('[\n]','g'),'\\n');e=e.replace(new RegExp('[\t]','g'),'\\t');e=e.replace(new RegExp('[\r]','g'),'\\r');return e};global.tab.JsonUtil=bk;var bl=function(e,bW,bX){this.$3=null;by.call(this,e,bW,bX);this.$3=new m(bW._impl.get__workbookImpl(),bX)};bl.__typeName='tab.MarksEvent';global.tab.MarksEvent=bl;var bm=function(e,bW,bX){this.$2=null;bt.call(this,e,bW);this.$2=new d(bW._impl.get__workbookImpl(),bX)};bm.__typeName='tab.ParameterEvent';global.tab.ParameterEvent=bm;var bn=function(){};bn.__typeName='tab.Point';bn.$ctor=function(e,bW){var bX=new Object;bX.x=0;bX.y=0;bX.x=e;bX.y=bW;return bX};global.tab.Point=bn;var bo=function(){};bo.__typeName='tab.SheetSize';bo.$ctor=function(e,bW,bX){var bY=new Object;bY.behavior=null;bY.minSize=null;bY.maxSize=null;bY.behavior=ss.coalesce(e,'automatic');if(ss.isValue(bW)){bY.minSize=bW}else{delete bY['minSize']}if(ss.isValue(bX)){bY.maxSize=bX}else{delete bY['maxSize']}return bY};global.tab.SheetSize=bo;var bp=function(){};bp.__typeName='tab.SheetSizeFactory';bp.createAutomatic=function(){var e=bo.$ctor('automatic',null,null);return e};bp.fromSizeConstraints=function(e){var bW=e.minHeight;var bX=e.minWidth;var bY=e.maxHeight;var bZ=e.maxWidth;var ca='automatic';var cb=null;var cc=null;if(bW===0&&bX===0){if(bY===0&&bZ===0){}else{ca='atmost';cc=bq.$ctor(bZ,bY)}}else if(bY===0&&bZ===0){ca='atleast';cb=bq.$ctor(bX,bW)}else if(bY===bW&&bZ===bX){ca='exactly';cb=bq.$ctor(bX,bW);cc=bq.$ctor(bX,bW)}else{ca='range';cb=bq.$ctor(bX,bW);cc=bq.$ctor(bZ,bY)}return bo.$ctor(ca,cb,cc)};global.tab.SheetSizeFactory=bp;var bq=function(){};bq.__typeName='tab.Size';bq.$ctor=function(e,bW){var bX=new Object;bX.width=0;bX.height=0;bX.width=e;bX.height=bW;return bX};global.tab.Size=bq;var br=function(){};br.__typeName='tab.StoryPointInfoImplUtil';br.clone=function(e){return G.$ctor(e.caption,e.index,e.storyPointId,e.isActive,e.isUpdated,e.parentStoryImpl)};global.tab.StoryPointInfoImplUtil=br;var bs=function(e,bW,bX,bY){this.$3=null;this.$2=null;bt.call(this,e,bW);this.$3=bX;this.$2=bY};bs.__typeName='tab.StoryPointSwitchEvent';global.tab.StoryPointSwitchEvent=bs;var bt=function(e,bW){this.$1=null;this.$0=null;this.$1=bW;this.$0=e};bt.__typeName='tab.TableauEvent';global.tab.TableauEvent=bt;var bu=function(e,bW,bX,bY){this.$3=null;this.$2=null;bt.call(this,e,bW);this.$3=bX;this.$2=bY};bu.__typeName='tab.TabSwitchEvent';global.tab.TabSwitchEvent=bu;var bv=function(e,bW,bX,bY,bZ){this.$U=null;this.$17=null;this.$X=null;this.$16=null;this.$Y=null;this.$10=null;this.$1a=null;this.$14=null;this.$15=null;this.$13=false;this.$W=false;this.$11=false;this.$V=false;this.$12=null;this.$18=null;this.$19=null;this.$Z=false;this.$1$1=null;this.$1$2=null;this.$1$3=null;this.$1$4=null;this.$1$5=null;this.$1$6=null;this.$1$7=null;this.$1$8=null;this.$1$9=null;this.$1$10=null;this.$1$11=null;this.$1$12=null;if(!I.hasWindowPostMessage()||!I.hasJsonParse()){throw H.createBrowserNotCapable()}this.$12=new be(e,this);this.$17=bW;if(ss.isNullOrUndefined(bX)||bX.nodeType!==1){bX=document.body}this.$16=new K(bX,bY,bZ);if(ss.isValue(bZ)){this.$14=bZ.onFirstInteractive;this.$15=bZ.onFirstVizSizeKnown}};bv.__typeName='tab.VizImpl';global.tab.VizImpl=bv;var bw=function(e,bW,bX){this.$2=null;bt.call(this,e,bW);this.$2=bX};bw.__typeName='tab.VizResizeEvent';global.tab.VizResizeEvent=bw;var bx=function(){};bx.__typeName='tab.VizSize';bx.$ctor=function(e,bW){var bX=new Object;bX.sheetSize=null;bX.chromeHeight=0;bX.sheetSize=e;bX.chromeHeight=bW;return bX};global.tab.VizSize=bx;var by=function(e,bW,bX){this.$2=null;bt.call(this,e,bW);this.$2=bX};by.__typeName='tab.WorksheetEvent';global.tab.WorksheetEvent=by;var bz=function(e,bW){this.$a=false;this.$9=null;bF.call(this,e,bW);this.$8(bW)};bz.__typeName='tableauSoftware.CategoricalFilter';global.tableauSoftware.CategoricalFilter=bz;var bA=function(e){this._impl=null;this._impl=e};bA.__typeName='tableauSoftware.CustomView';global.tableauSoftware.CustomView=bA;var bB=function(e){this._impl=null;bM.call(this,e)};bB.__typeName='tableauSoftware.Dashboard';global.tableauSoftware.Dashboard=bB;var bC=function(e,bW,bX){this.$2=null;this.$0=null;this.$1=null;if(e.objectType==='worksheet'&&ss.isNullOrUndefined(bX)){throw H.createInternalError('worksheet parameter is required for WORKSHEET objects')}else if(e.objectType!=='worksheet'&&ss.isValue(bX)){throw H.createInternalError('worksheet parameter should be undefined for non-WORKSHEET objects')}this.$2=e;this.$0=bW;this.$1=bX};bC.__typeName='tableauSoftware.DashboardObject';global.tableauSoftware.DashboardObject=bC;var bD=function(e){this.$0=null;this.$0=e};bD.__typeName='tableauSoftware.DataSource';global.tableauSoftware.DataSource=bD;var bE=function(e,bW,bX,bY){this.$0=null;this.$3=null;this.$2=null;this.$1=null;this.$0=e;this.$3=bW;this.$2=bX;this.$1=bY};bE.__typeName='tableauSoftware.Field';global.tableauSoftware.Field=bE;var bF=function(e,bW){this.$7=null;this.$6=null;this.$1=null;this.$3=null;this.$2=null;this.$5=null;this.$4=null;this.$7=e;this.$0(bW)};bF.__typeName='tableauSoftware.Filter';bF.$0=function(e,bW){switch(bW.filterType){case 0:{return new bz(e,bW)}case 3:{return new bL(e,bW)}case 2:{return new bG(e,bW)}case 1:{return new bK(e,bW)}}return null};bF.$1=function(e,bW){var bX=new tab._Collection;for(var bY=0;bY<bW.filters.length;bY++){var bZ=bW.filters[bY];var ca=bF.$0(e,bZ);bX._add(bZ.caption,ca)}return bX};global.tableauSoftware.Filter=bF;var bG=function(e,bW){this.$9=0;bF.call(this,e,bW);this.$8(bW)};bG.__typeName='tableauSoftware.HierarchicalFilter';global.tableauSoftware.HierarchicalFilter=bG;var bH=function(e){this.$0=null;this.$0=new j(e)};bH.__typeName='tableauSoftware.Mark';global.tableauSoftware.Mark=bH;var bI=function(e,bW){this.fieldName=null;this.value=null;this.formattedValue=null;this.fieldName=e;this.value=bW;this.formattedValue=(ss.isValue(bW)?bW.toString():'')};bI.__typeName='tableauSoftware.Pair';global.tableauSoftware.Pair=bI;var bJ=function(e){this._impl=null;this._impl=e};bJ.__typeName='tableauSoftware.Parameter';global.tableauSoftware.Parameter=bJ;var bK=function(e,bW){this.$a=null;this.$9=null;this.$d=null;this.$c=null;this.$b=false;bF.call(this,e,bW);this.$8(bW)};bK.__typeName='tableauSoftware.QuantitativeFilter';global.tableauSoftware.QuantitativeFilter=bK;var bL=function(e,bW){this.$9=null;this.$b=null;this.$a=0;bF.call(this,e,bW);this.$8(bW)};bL.__typeName='tableauSoftware.RelativeDateFilter';global.tableauSoftware.RelativeDateFilter=bL;var bM=function(e){this._impl=null;z.verifyValue(e,'sheetImpl');this._impl=e};bM.__typeName='tableauSoftware.Sheet';global.tableauSoftware.Sheet=bM;var bN=function(e){this.$0=null;this.$0=e};bN.__typeName='tableauSoftware.SheetInfo';global.tableauSoftware.SheetInfo=bN;var bO=function(e){this._impl=null;bM.call(this,e)};bO.__typeName='tableauSoftware.Story';global.tableauSoftware.Story=bO;var bP=function(e){this.$0=null;this.$0=e};bP.__typeName='tableauSoftware.StoryPoint';global.tableauSoftware.StoryPoint=bP;var bQ=function(e){this._impl=null;this._impl=e};bQ.__typeName='tableauSoftware.StoryPointInfo';global.tableauSoftware.StoryPointInfo=bQ;var bR=function(e,bW,bX,bY){this.$0=0;this.$2=0;this.$3=0;this.$1=null;this.$0=e;this.$2=bW;this.$3=bX;this.$1=ss.coalesce(bY,null)};bR.__typeName='tableauSoftware.Version';bR.getCurrent=function(){return bR.$0};global.tableauSoftware.Version=bR;var bS=function(e,bW,bX){this._impl=null;var bY=p.getCrossDomainMessageRouter();this._impl=new bv(bY,this,e,bW,bX);this._impl.$4()};bS.__typeName='tableauSoftware.Viz';global.tableauSoftware.Viz=bS;var bT=function(){};bT.__typeName='tableauSoftware.VizManager';bT.getVizs=function(){return J.$4()};global.tableauSoftware.VizManager=bT;var bU=function(e){this.$0=null;this.$0=e};bU.__typeName='tableauSoftware.Workbook';global.tableauSoftware.Workbook=bU;var bV=function(e){this._impl=null;bM.call(this,e)};bV.__typeName='tableauSoftware.Worksheet';global.tableauSoftware.Worksheet=bV;ss.initClass(b,a,{registerHandler:function(e){var bW='handler'+this.$a;if(ss.isValue(e.get_handlerId())||ss.isValue(this.$8[e.get_handlerId()])){throw H.createInternalError("Handler '"+e.get_handlerId()+"' is already registered.")}this.$a++;e.set_handlerId(bW);this.$8[bW]=e;e.add_customViewsListLoad(ss.mkdel(this,this.$2));e.add_stateReadyForQuery(ss.mkdel(this,this.$4))},unregisterHandler:function(e){if(ss.isValue(e.get_handlerId())||ss.isValue(this.$8[e.get_handlerId()])){delete this.$8[e.get_handlerId()];e.remove_customViewsListLoad(ss.mkdel(this,this.$2));e.remove_stateReadyForQuery(ss.mkdel(this,this.$4))}},sendCommand:function(e,bW,bX){var bY=e.get_iframe();var bZ=e.get_handlerId();if(!I.hasWindowPostMessage()||ss.isNullOrUndefined(bY)||ss.isNullOrUndefined(bY.contentWindow)){return}var ca='cmd'+this.$9;this.$9++;var cb=this.$5[bZ];if(ss.isNullOrUndefined(cb)){cb={};this.$5[bZ]=cb}cb[ca]=bX;var cc=bX.get_commandName();if(cc==='api.ShowCustomViewCommand'){var cd=this.$7[bZ];if(ss.isNullOrUndefined(cd)){cd={};this.$7[bZ]=cd}cd[ca]=bX}var ce=null;if(ss.isValue(bW)){ce=bk.toJson(bW,false,'')}var cf=new o(cc,ca,bZ,ce);var cg=cf.serialize();if(I.isPostMessageSynchronous()){window.setTimeout(function(){bY.contentWindow.postMessage(cg,e.get_serverRoot())},0)}else{bY.contentWindow.postMessage(cg,e.get_serverRoot())}},$2:function(e){var bW=e.get_handlerId();var bX=this.$7[bW];if(ss.isNullOrUndefined(bX)){return}var bY=new ss.ObjectEnumerator(bX);try{while(bY.moveNext()){var bZ=bY.current();var ca=bZ.value;if(ss.isValue(ca.get_successCallback())){ca.get_successCallback()(null)}}}finally{bY.dispose()}delete this.$7[bW]},$4:function(e){var bW=this.$6[e.get_handlerId()];if(I.isNullOrEmpty(bW)){return}while(bW.length>0){var bX=bW.pop();if(ss.isValue(bX)){bX()}}},$0:function(e){var bW=ss.cast(e,MessageEvent);if(ss.isNullOrUndefined(bW.data)){return}var bX=o.parse(bW.data.toString());var bY=bX.get_rawName();var bZ=bX.get_handlerId();var ca=this.$8[bZ];if(ss.isNullOrUndefined(ca)||!ss.referenceEquals(ca.get_handlerId(),bX.get_handlerId())){ca=new c}if(bX.get_isApiCommandName()){if(bX.get_sourceId()==='xdomainSourceId'){ca.handleEventNotification(bX.get_name(),bX.get_parameters());if(bX.get_name()==='api.FirstVizSizeKnownEvent'){bW.source.postMessage('tableau.bootstrap'.toString(),'*')}}else{this.$1(bX)}}else{this.$3(bY,ca)}},$1:function(e){var bW=this.$5[e.get_handlerId()];var bX=(ss.isValue(bW)?bW[e.get_sourceId()]:null);if(ss.isNullOrUndefined(bX)){return}delete bW[e.get_sourceId()];if(e.get_name()!==bX.get_commandName()){return}var bY=new r(e.get_parameters());var bZ=bY.get_data();if(bY.get_result()==='api.success'){switch(bX.get_successCallbackTiming()){case 0:{if(ss.isValue(bX.get_successCallback())){bX.get_successCallback()(bZ)}break}case 1:{var ca=function(){if(ss.isValue(bX.get_successCallback())){bX.get_successCallback()(bZ)}};var cb=this.$6[e.get_handlerId()];if(ss.isNullOrUndefined(cb)){cb=[];this.$6[e.get_handlerId()]=cb}cb.push(ca);break}default:{throw H.createInternalError('Unknown timing value: '+bX.get_successCallbackTiming())}}}else if(ss.isValue(bX.get_errorCallback())){var cc=bY.get_result()==='api.remotefailed';var cd=(ss.isValue(bZ)?bZ.toString():'');bX.get_errorCallback()(cc,cd)}},$3:function(e,bW){if(ss.referenceEquals(e,'layoutInfoReq'.toString())){J.$1()}else if(ss.referenceEquals(e,'tableau.completed'.toString())||ss.referenceEquals(e,'completed'.toString())){bW.handleVizLoad()}}});ss.initClass(c,a,{add_customViewsListLoad:function(e){this.$1$1=ss.delegateCombine(this.$1$1,e)},remove_customViewsListLoad:function(e){this.$1$1=ss.delegateRemove(this.$1$1,e)},add_stateReadyForQuery:function(e){this.$1$2=ss.delegateCombine(this.$1$2,e)},remove_stateReadyForQuery:function(e){this.$1$2=ss.delegateRemove(this.$1$2,e)},get_iframe:function(){return null},get_handlerId:function(){return this.$1},set_handlerId:function(e){this.$1=e},get_serverRoot:function(){return'*'},handleVizLoad:function(){},handleEventNotification:function(e,bW){},$0:function(){this.$1$1(null);this.$1$2(null)}});ss.initClass(bh,a,{get__workbookImpl:function(){return this.$0},get__worksheetImpl:function(){return this.$1}});ss.initClass(d,a,{get__parameterName:function(){return this.$2}},bh);ss.initClass(f,a,{get__customViewImpl:function(){return this.$2}},bh);ss.initClass(g,a,{get__filterFieldName:function(){return this.$3},$2:function(){return this.$4}},bh);ss.initClass(h,a,{});ss.initClass(i,a,{});ss.initClass(j,a,{$2:function(){return this.$5},$3:function(){return this.$6},$1:function(){if(ss.isNullOrUndefined(this.$4)){this.$4=this.$5._toApiCollection()}return this.$4},$0:function(e){this.$5._add(e.fieldName,e)}});ss.initClass(k,a,{$8:function(){if(ss.isNullOrUndefined(this.$i)){this.$i=new bJ(this)}return this.$i},$7:function(){return this.$h},$2:function(){return this.$c},$3:function(){return this.$d},$1:function(){return this.$b},$0:function(){return this.$a},$6:function(){return this.$g},$5:function(){return this.$f},$9:function(){return this.$j},$4:function(){return this.$e}});ss.initClass(l,a,{});ss.initClass(m,a,{},bh);ss.initClass(n,a,{});ss.initClass(o,a,{get_name:function(){return this.$1},get_handlerId:function(){return this.$0},get_sourceId:function(){return this.$3},get_parameters:function(){return this.$2},get_isApiCommandName:function(){return this.get_rawName().indexOf('api.',0)===0},get_rawName:function(){return this.$1.toString()},serialize:function(){var e=[];e.push(this.$1);e.push(this.$3);e.push(this.$0);if(ss.isValue(this.$2)){e.push(this.$2)}var bW=e.join(',');return bW}});ss.initClass(p,a,{});ss.initClass(q,a,{get_workbookName:function(){return this.$1},get_worksheetName:function(){return this.$2},get_data:function(){return this.$0},serialize:function(){var e={};e['api.workbookName']=this.$1;e['api.worksheetName']=this.$2;e['api.commandData']=this.$0;return JSON.stringify(e)}});ss.initClass(r,a,{get_result:function(){return this.$1},get_data:function(){return this.$0}});ss.initClass(s,a,{get__length:function(){return this.$4.length},get__rawArray:function(){return this.$4},get_item:function(e){return this.$4[e]},_get:function(e){var bW=this.$0(e);if(ss.isValue(this.$3[bW])){return this.$3[bW]}return undefined},_has:function(e){return ss.isValue(this._get(e))},_add:function(e,bW){this.$1(e,bW);var bX=this.$0(e);this.$4.push(bW);this.$3[bX]=bW},_addToFirst:function(e,bW){this.$1(e,bW);var bX=this.$0(e);this.$4.unshift(bW);this.$3[bX]=bW},_remove:function(e){var bW=this.$0(e);if(ss.isValue(this.$3[bW])){var bX=this.$3[bW];delete this.$3[bW];for(var bY=0;bY<this.$4.length;bY++){if(ss.referenceEquals(this.$4[bY],bX)){this.$4.splice(bY,1);break}}}},_toApiCollection:function(){var e=this.$4.concat();e.get=ss.mkdel(this,function(bW){return this._get(bW)});e.has=ss.mkdel(this,function(bW){return this._has(bW)});return e},$2:function(e){if(I.isNullOrEmpty(e)){throw new ss.Exception('Null key')}if(this._has(e)){throw new ss.Exception("Duplicate key '"+e+"'")}},$1:function(e,bW){this.$2(e);if(ss.isNullOrUndefined(bW)){throw new ss.Exception('Null item')}},$0:function(e){return'_'+e}});ss.initClass(t,a,{get_commandName:function(){return this.$0},get_successCallback:function(){return this.$2},get_successCallbackTiming:function(){return this.$3},get_errorCallback:function(){return this.$1}});ss.initClass(u,a,{$5:function(){if(ss.isNullOrUndefined(this.$c)){this.$c=new bA(this)}return this.$c},$b:function(){return this.$l.get_workbook()},$a:function(){return this.$k},$7:function(){return this.$h},$8:function(e){if(this.$f){throw H.create('staleDataReference','Stale data')}this.$h=e},$9:function(){return this.$i},$3:function(){return this.$e},$4:function(e){if(this.$f){throw H.create('staleDataReference','Stale data')}this.$e=e},$6:function(){return this.$d},$2:function(){if(this.$f||ss.isNullOrUndefined(this.$j)){throw H.create('staleDataReference','Stale data')}this.$j.isPublic=this.$e;this.$j.name=this.$h;var e=new tab._Deferred;var bW={};bW['api.customViewParam']=this.$j;var bX=u.$0('api.UpdateCustomViewCommand',e,ss.mkdel(this,function(bY){u._processCustomViewUpdate(this.$l,this.$g,bY,true);e.resolve(this.$5())}));this.$g.sendCommand(bW,bX);return e.get_promise()},$1:function(){var e=new tab._Deferred;var bW={};bW['api.customViewParam']=this.$j;var bX=u.$0('api.RemoveCustomViewCommand',e,ss.mkdel(this,function(bY){this.$f=true;u._processCustomViews(this.$l,this.$g,bY);e.resolve(this.$5())}));this.$g.sendCommand(bW,bX);return e.get_promise()},_showAsync:function(){if(this.$f||ss.isNullOrUndefined(this.$j)){throw H.create('staleDataReference','Stale data')}return u._showCustomViewAsync(this.$l,this.$g,this.$j)},$0:function(e){return!ss.referenceEquals(this.$i,e.$i)||!ss.referenceEquals(this.$k,e.$k)||this.$e!==e.$e||this.$d!==e.$d}});ss.initClass(C,a,{get_sheet:null,get_name:function(){return this.$5},get_index:function(){return this.$1},get_workbookImpl:function(){return this.$a},get_workbook:function(){return this.$a.get_workbook()},get_url:function(){if(this.$3){throw H.createNoUrlForHiddenWorksheet()}return this.$9},get_size:function(){return this.$8},get_isHidden:function(){return this.$3},get_isActive:function(){return this.$2},set_isActive:function(e){this.$2=e},get_isDashboard:function(){return this.$7==='dashboard'},get_sheetType:function(){return this.$7},get_parentStoryPoint:function(){if(ss.isValue(this.$6)){return this.$6.get_storyPoint()}return null},get_parentStoryPointImpl:function(){return this.$6},set_parentStoryPointImpl:function(e){if(this.$7==='story'){throw H.createInternalError('A story cannot be a child of another story.')}this.$6=e},get_zoneId:function(){return this.$b},get_messagingOptions:function(){return this.$4},changeSizeAsync:function(e){e=C.$1(e);if(this.$7==='worksheet'&&e.behavior!=='automatic'){throw H.createInvalidSizeBehaviorOnWorksheet()}var bW=new tab._Deferred;if(this.$8.behavior===e.behavior&&e.behavior==='automatic'){bW.resolve(e);return bW.get_promise()}var bX=this.$0(e);var bY={};bY['api.setSheetSizeName']=this.$5;bY['api.minWidth']=bX['api.minWidth'];bY['api.minHeight']=bX['api.minHeight'];bY['api.maxWidth']=bX['api.maxWidth'];bY['api.maxHeight']=bX['api.maxHeight'];var bZ=new t('api.SetSheetSizeCommand',1,ss.mkdel(this,function(ca){this.get_workbookImpl()._update(ss.mkdel(this,function(){var cb=this.get_workbookImpl().get_publishedSheets()._get(this.get_name()).getSize();bW.resolve(cb)}))}),function(ca,cb){bW.reject(H.createServerError(cb))});this.sendCommand(bY,bZ);return bW.get_promise()},sendCommand:function(e,bW){this.$4.sendCommand(e,bW)},$0:function(e){var bW=null;if(ss.isNullOrUndefined(e)||ss.isNullOrUndefined(e.behavior)||e.behavior!=='automatic'&&ss.isNullOrUndefined(e.minSize)&&ss.isNullOrUndefined(e.maxSize)){throw H.createInvalidSheetSizeParam()}var bX=0;var bY=0;var bZ=0;var ca=0;var cb={};cb['api.minWidth']=0;cb['api.minHeight']=0;cb['api.maxWidth']=0;cb['api.maxHeight']=0;if(e.behavior==='automatic'){bW=bo.$ctor('automatic',undefined,undefined)}else if(e.behavior==='atmost'){if(ss.isNullOrUndefined(e.maxSize)||ss.isNullOrUndefined(e.maxSize.width)||ss.isNullOrUndefined(e.maxSize.height)){throw H.createMissingMaxSize()}if(e.maxSize.width<0||e.maxSize.height<0){throw H.createInvalidSizeValue()}cb['api.maxWidth']=e.maxSize.width;cb['api.maxHeight']=e.maxSize.height;bW=bo.$ctor('atmost',undefined,e.maxSize)}else if(e.behavior==='atleast'){if(ss.isNullOrUndefined(e.minSize)||ss.isNullOrUndefined(e.minSize.width)||ss.isNullOrUndefined(e.minSize.height)){throw H.createMissingMinSize()}if(e.minSize.width<0||e.minSize.height<0){throw H.createInvalidSizeValue()}cb['api.minWidth']=e.minSize.width;cb['api.minHeight']=e.minSize.height;bW=bo.$ctor('atleast',e.minSize,undefined)}else if(e.behavior==='range'){if(ss.isNullOrUndefined(e.minSize)||ss.isNullOrUndefined(e.maxSize)||ss.isNullOrUndefined(e.minSize.width)||ss.isNullOrUndefined(e.maxSize.width)||ss.isNullOrUndefined(e.minSize.height)||ss.isNullOrUndefined(e.maxSize.height)){throw H.createMissingMinMaxSize()}if(e.minSize.width<0||e.minSize.height<0||e.maxSize.width<0||e.maxSize.height<0||e.minSize.width>e.maxSize.width||e.minSize.height>e.maxSize.height){throw H.createInvalidRangeSize()}cb['api.minWidth']=e.minSize.width;cb['api.minHeight']=e.minSize.height;cb['api.maxWidth']=e.maxSize.width;cb['api.maxHeight']=e.maxSize.height;bW=bo.$ctor('range',e.minSize,e.maxSize)}else if(e.behavior==='exactly'){if(ss.isValue(e.minSize)&&ss.isValue(e.maxSize)&&ss.isValue(e.minSize.width)&&ss.isValue(e.maxSize.width)&&ss.isValue(e.minSize.height)&&ss.isValue(e.maxSize.height)){bX=e.minSize.width;bY=e.minSize.height;bZ=e.maxSize.width;ca=e.maxSize.height;if(bX!==bZ||bY!==ca){throw H.createSizeConflictForExactly()}}else if(ss.isValue(e.minSize)&&ss.isValue(e.minSize.width)&&ss.isValue(e.minSize.height)){bX=e.minSize.width;bY=e.minSize.height;bZ=bX;ca=bY}else if(ss.isValue(e.maxSize)&&ss.isValue(e.maxSize.width)&&ss.isValue(e.maxSize.height)){bZ=e.maxSize.width;ca=e.maxSize.height;bX=bZ;bY=ca}cb['api.minWidth']=bX;cb['api.minHeight']=bY;cb['api.maxWidth']=bZ;cb['api.maxHeight']=ca;bW=bo.$ctor('exactly',bq.$ctor(bX,bY),bq.$ctor(bZ,ca))}this.$8=bW;return cb}});ss.initClass(v,a,{get_sheet:function(){return this.get_dashboard()},get_dashboard:function(){if(ss.isNullOrUndefined(this.$d)){this.$d=new bB(this)}return this.$d},get_worksheets:function(){return this.$f},get_objects:function(){return this.$e},$c:function(e,bW){this.$e=new tab._Collection;this.$f=new tab._Collection;for(var bX=0;bX<e.length;bX++){var bY=e[bX];var bZ=null;if(e[bX].objectType==='worksheet'){var ca=bY.name;if(ss.isNullOrUndefined(ca)){continue}var cb=this.$f.get__length();var cc=bp.createAutomatic();var cd=false;var ce=bW(ca);var cf=ss.isNullOrUndefined(ce);var cg=(cf?'':ce.getUrl());var ch=D.$ctor(ca,'worksheet',cb,cc,this.get_workbook(),cg,cd,cf,bY.zoneId);var ci=new M(ch,this.get_workbookImpl(),this.get_messagingOptions(),this);bZ=ci.get_worksheet();this.$f._add(ca,ci.get_worksheet())}var cj=new bC(bY,this.get_dashboard(),bZ);this.$e._add(bX.toString(),cj)}}},C);ss.initClass(w,a,{get_dataSource:function(){if(ss.isNullOrUndefined(this.$0)){this.$0=new bD(this)}return this.$0},get_name:function(){return this.$3},get_fields:function(){return this.$1},get_isPrimary:function(){return this.$2},addField:function(e){this.$1._add(e.getName(),e)}});ss.initClass(x,a,{get_promise:function(){return this.$3},all:function(e){var bW=new x;var bX=e.length;var bY=bX;var bZ=[];if(bX===0){bW.resolve(bZ);return bW.get_promise()}var ca=function(cc,cd){var ce=i.$0(cc);ce.then(function(cf){bZ[cd]=cf;bY--;if(bY===0){bW.resolve(bZ)}return null},function(cf){bW.reject(cf);return null})};for(var cb=0;cb<bX;cb++){ca(e[cb],cb)}return bW.get_promise()},then:function(e,bW){return this.$5(e,bW)},resolve:function(e){return this.$4(e)},reject:function(e){return this.$4(i.$3(e))},$0:function(e,bW){var bX=new x;this.$2.push(function(bY){bY.then(e,bW).then(ss.mkdel(bX,bX.resolve),ss.mkdel(bX,bX.reject))});return bX.get_promise()},$1:function(e){var bW=i.$0(e);this.$5=bW.then;this.$4=i.$0;for(var bX=0;bX<this.$2.length;bX++){var bY=this.$2[bX];bY(bW)}this.$2=null;return bW}});ss.initClass(y,a,{});ss.initClass(z,a,{});ss.initClass(A,a,{always:function(e){return ss.cast(this.then(e,ss.cast(e,Function)),A)},otherwise:function(e){return ss.cast(this.then(null,e),A)}});ss.initClass(B,a,{intersect:function(e){var bW=Math.max(this.left,e.left);var bX=Math.max(this.top,e.top);var bY=Math.min(this.left+this.width,e.left+e.width);var bZ=Math.min(this.top+this.height,e.top+e.height);if(bY<=bW||bZ<=bX){return new B(0,0,0,0)}return new B(bW,bX,bY-bW,bZ-bX)}});ss.initClass(D,a,{},Object);ss.initClass(E,a,{add_activeStoryPointChange:function(e){this.$2$1=ss.delegateCombine(this.$2$1,e)},remove_activeStoryPointChange:function(e){this.$2$1=ss.delegateRemove(this.$2$1,e)},get_activeStoryPointImpl:function(){return this.$g},get_sheet:function(){return this.get_story()},get_story:function(){if(ss.isNullOrUndefined(this.$i)){this.$i=new bO(this)}return this.$i},get_storyPointsInfo:function(){return this.$j},update:function(e){var bW=null;var bX=null;this.$j=this.$j||new Array(e.storyPoints.length);for(var bY=0;bY<e.storyPoints.length;bY++){var bZ=e.storyPoints[bY];var ca=bZ.caption;var cb=bY===e.activeStoryPointIndex;var cc=G.$ctor(ca,bY,bZ.storyPointId,cb,bZ.isUpdated,this);if(ss.isNullOrUndefined(this.$j[bY])){this.$j[bY]=new bQ(cc)}else if(this.$j[bY]._impl.storyPointId===cc.storyPointId){var cd=this.$j[bY]._impl;cd.caption=cc.caption;cd.index=cc.index;cd.isActive=cb;cd.isUpdated=cc.isUpdated}else{this.$j[bY]=new bQ(cc)}if(cb){bW=bZ.containedSheetInfo;bX=cc}}var ce=this.$j.length-e.storyPoints.length;this.$j.splice(e.storyPoints.length,ce);var cf=ss.isNullOrUndefined(this.$g)||this.$g.get_storyPointId()!==bX.storyPointId;if(ss.isValue(this.$g)&&cf){this.$g.set_isActive(false)}var cg=this.$g;if(cf){var ch=F.createContainedSheet(bW,this.get_workbookImpl(),this.get_messagingOptions(),this.$h);this.$g=new F(bX,ch)}else{this.$g.set_isActive(bX.isActive);this.$g.set_isUpdated(bX.isUpdated)}if(cf&&ss.isValue(cg)){this.$d(this.$j[cg.get_index()],this.$g.get_storyPoint())}},activatePreviousStoryPointAsync:function(){return this.$c('api.ActivatePreviousStoryPoint')},activateNextStoryPointAsync:function(){return this.$c('api.ActivateNextStoryPoint')},activateStoryPointAsync:function(e){var bW=new tab._Deferred;if(e<0||e>=this.$j.length){throw H.createIndexOutOfRange(e)}var bX=this.get_activeStoryPointImpl();var bY={};bY['api.storyPointIndex']=e;var bZ=new t('api.ActivateStoryPoint',0,ss.mkdel(this,function(ca){var cb=ca;this.$e(bX,cb);bW.resolve(this.$g.get_storyPoint())}),function(ca,cb){bW.reject(H.createServerError(cb))});this.sendCommand(bY,bZ);return bW.get_promise()},revertStoryPointAsync:function(e){e=e||this.$g.get_index();if(e<0||e>=this.$j.length){throw H.createIndexOutOfRange(e)}var bW=new tab._Deferred;var bX={};bX['api.storyPointIndex']=e;var bY=new t('api.RevertStoryPoint',0,ss.mkdel(this,function(bZ){var ca=bZ;this.$f(e,ca);bW.resolve(this.$j[e])}),function(bZ,ca){bW.reject(H.createServerError(ca))});this.sendCommand(bX,bY);return bW.get_promise()},$c:function(e){if(e!=='api.ActivatePreviousStoryPoint'&&e!=='api.ActivateNextStoryPoint'){throw H.createInternalError("commandName '"+e+"' is invalid.")}var bW=new tab._Deferred;var bX=this.get_activeStoryPointImpl();var bY={};var bZ=new t(e,0,ss.mkdel(this,function(ca){var cb=ca;this.$e(bX,cb);bW.resolve(this.$g.get_storyPoint())}),function(ca,cb){bW.reject(H.createServerError(cb))});this.sendCommand(bY,bZ);return bW.get_promise()},$f:function(e,bW){var bX=this.$j[e]._impl;if(bX.storyPointId!==bW.storyPointId){throw H.createInternalError("We should not be updating a story point where the IDs don't match. Existing storyPointID="+bX.storyPointId+', newStoryPointID='+bW.storyPointId)}bX.caption=bW.caption;bX.isUpdated=bW.isUpdated;if(bW.storyPointId===this.$g.get_storyPointId()){this.$g.set_isUpdated(bW.isUpdated)}},$e:function(e,bW){var bX=bW.index;if(e.get_index()===bX){return}var bY=this.$j[e.get_index()];var bZ=this.$j[bX]._impl;var ca=F.createContainedSheet(bW.containedSheetInfo,this.get_workbookImpl(),this.get_messagingOptions(),this.$h);bZ.isActive=true;this.$g=new F(bZ,ca);e.set_isActive(false);bY._impl.isActive=false;this.$d(bY,this.$g.get_storyPoint())},$d:function(e,bW){if(!ss.staticEquals(this.$2$1,null)){this.$2$1(e,bW)}}},C);ss.initClass(F,a,{get_caption:function(){return this.$1},get_containedSheetImpl:function(){return this.$2},get_index:function(){return this.$3},get_isActive:function(){return this.$4},set_isActive:function(e){this.$4=e},get_isUpdated:function(){return this.$5},set_isUpdated:function(e){this.$5=e},get_parentStoryImpl:function(){return this.$6},get_storyPoint:function(){if(ss.isNullOrUndefined(this.$7)){this.$7=new bP(this)}return this.$7},get_storyPointId:function(){return this.$8},$0:function(){return G.$ctor(this.$1,this.$3,this.$8,this.$4,this.$5,this.$6)}});ss.initClass(G,a,{},Object);ss.initClass(H,a,{});ss.initClass(I,a,{});ss.initClass(J,a,{});ss.initClass(K,a,{get_url:function(){return this.$0()},get_baseUrl:function(){return this.$2},$0:function(){var e=[];e.push(this.get_baseUrl());e.push('?');if(this.userSuppliedParameters.length>0){e.push(this.userSuppliedParameters);e.push('&')}e.push(':embed=y');e.push('&:showVizHome=n');if(!this.fixedSize){e.push('&:bootstrapWhenNotified=y')}if(!this.tabs){e.push('&:tabs=n')}if(!this.toolbar){e.push('&:toolbar=n')}else if(!ss.isNullOrUndefined(this.toolBarPosition)){e.push('&:toolbar=');e.push(this.toolBarPosition.toString())}var bW=this.$1;var bX=new ss.ObjectEnumerator(bW);try{while(bX.moveNext()){var bY=bX.current();if(bY.key!=='embed'&&bY.key!=='height'&&bY.key!=='width'&&bY.key!=='autoSize'&&bY.key!=='hideTabs'&&bY.key!=='hideToolbar'&&bY.key!=='onFirstInteractive'&&bY.key!=='onFirstVizSizeKnown'&&bY.key!=='toolbarPosition'&&bY.key!=='instanceIdToClone'){e.push('&');e.push(encodeURIComponent(bY.key));e.push('=');e.push(encodeURIComponent(bY.value.toString()))}}}finally{bX.dispose()}e.push('&:apiID='+this.handlerId);if(ss.isValue(this.$1.instanceIdToClone)){e.push('#'+this.$1.instanceIdToClone)}return e.join('')}});ss.initClass(L,a,{get_workbook:function(){if(ss.isNullOrUndefined(this.$E)){this.$E=new bU(this)}return this.$E},get_viz:function(){return this.$D.$R()},get_publishedSheets:function(){return this.$A},get_name:function(){return this.$y},get_activeSheetImpl:function(){return this.$s},get_activeCustomView:function(){return this.$t},get_isDownloadAllowed:function(){return this.$v},$4:function(e){if(ss.isNullOrUndefined(this.$s)){return null}var bW=L.$2(e);if(ss.isNullOrUndefined(bW)){return null}if(ss.referenceEquals(bW,this.$s.get_name())){return this.$s}if(this.$s.get_isDashboard()){var bX=ss.cast(this.$s,v);var bY=bX.get_worksheets()._get(bW);if(ss.isValue(bY)){return bY._impl}}return null},_setActiveSheetAsync:function(e){if(I.isNumber(e)){var bW=e;if(bW<this.$A.get__length()&&bW>=0){return this.$1(this.$A.get_item(bW).$0)}else{throw H.createIndexOutOfRange(bW)}}var bX=L.$2(e);var bY=this.$A._get(bX);if(ss.isValue(bY)){return this.$1(bY.$0)}else if(this.$s.get_isDashboard()){var bZ=ss.cast(this.$s,v);var ca=bZ.get_worksheets()._get(bX);if(ss.isValue(ca)){this.$r=null;var cb='';if(ca.getIsHidden()){this.$r=ca._impl}else{cb=ca._impl.get_url()}return this.$0(ca._impl.get_name(),cb)}}throw H.create('sheetNotInWorkbook','Sheet is not found in Workbook')},_revertAllAsync:function(){var e=new tab._Deferred;var bW=new t('api.RevertAllCommand',1,function(bX){e.resolve()},function(bX,bY){e.reject(H.createServerError(bY))});this.$d(null,bW);return e.get_promise()},_update:function(e){this.$5(e)},$1:function(e){return this.$0(e.name,e.url)},$0:function(e,bW){var bX=new tab._Deferred;if(ss.isValue(this.$s)&&ss.referenceEquals(e,this.$s.get_name())){bX.resolve(this.$s.get_sheet());return bX.get_promise()}var bY={};bY['api.switchToSheetName']=e;bY['api.switchToRepositoryUrl']=bW;bY['api.oldRepositoryUrl']=this.$s.get_url();var bZ=new t('api.SwitchActiveSheetCommand',0,ss.mkdel(this,function(ca){this.$D.$U=ss.mkdel(this,function(){this.$D.$U=null;bX.resolve(this.$s.get_sheet())})}),function(ca,cb){bX.reject(H.createServerError(cb))});this.$d(bY,bZ);return bX.get_promise()},_updateActiveSheetAsync:function(){var e=new tab._Deferred;var bW={};bW['api.switchToSheetName']=this.$s.get_name();bW['api.switchToRepositoryUrl']=this.$s.get_url();bW['api.oldRepositoryUrl']=this.$s.get_url();var bX=new t('api.UpdateActiveSheetCommand',0,ss.mkdel(this,function(bY){e.resolve(this.$s.get_sheet())}),function(bY,bZ){e.reject(H.createServerError(bZ))});this.$d(bW,bX);return e.get_promise()},$d:function(e,bW){this.$x.sendCommand(e,bW)},$5:function(e){var bW=new t('api.GetClientInfoCommand',0,ss.mkdel(this,function(bX){var bY=bX;this.$a(bY);if(ss.isValue(e)){e()}}),null);this.$d(null,bW)},$a:function(e){this.$y=e.workbookName;this.$v=e.isDownloadAllowed;this.$D.$z(!e.isAutoUpdate);this.$D.set_instanceId(e.instanceId);this.$3(e);this.$9(e)},$9:function(e){var bW=e.currentSheetName;var bX=this.$A._get(bW);if(ss.isNullOrUndefined(bX)&&ss.isNullOrUndefined(this.$r)){throw H.createInternalError('The active sheet was not specified in baseSheets')}if(ss.isValue(this.$s)&&ss.referenceEquals(this.$s.get_name(),bW)){return}if(ss.isValue(this.$s)){this.$s.set_isActive(false);var bY=this.$A._get(this.$s.get_name());if(ss.isValue(bY)){bY.$0.isActive=false}if(this.$s.get_sheetType()==='story'){var bZ=ss.cast(this.$s,E);bZ.remove_activeStoryPointChange(ss.mkdel(this.$D,this.$D.raiseStoryPointSwitch))}}if(ss.isValue(this.$r)){var ca=D.$ctor(this.$r.get_name(),'worksheet',-1,this.$r.get_size(),this.get_workbook(),'',true,true,4294967295);this.$r=null;this.$s=new M(ca,this,this.$x,null)}else{var cb=null;for(var cc=0,cd=e.publishedSheets.length;cc<cd;cc++){if(ss.referenceEquals(e.publishedSheets[cc].name,bW)){cb=e.publishedSheets[cc];break}}if(ss.isNullOrUndefined(cb)){throw H.createInternalError('No base sheet was found corresponding to the active sheet.')}var ce=ss.mkdel(this,function(ci){return this.$A._get(ci)});if(cb.sheetType===1){var cf=new v(bX.$0,this,this.$x);this.$s=cf;var cg=L.$0(e.dashboardZones);cf.$c(cg,ce)}else if(cb.sheetType===2){var ch=new E(bX.$0,this,this.$x,e.story,ce);this.$s=ch;ch.add_activeStoryPointChange(ss.mkdel(this.$D,this.$D.raiseStoryPointSwitch))}else{this.$s=new M(bX.$0,this,this.$x,null)}bX.$0.isActive=true}this.$s.set_isActive(true)},$3:function(e){var bW=e.publishedSheets;if(ss.isNullOrUndefined(bW)){return}for(var bX=0;bX<bW.length;bX++){var bY=bW[bX];var bZ=bY.name;var ca=this.$A._get(bZ);var cb=L.$1(bY);if(ss.isNullOrUndefined(ca)){var cc=ss.referenceEquals(bZ,e.currentSheetName);var cd=P.convertSheetType(bY.sheetType);var ce=D.$ctor(bZ,cd,bX,cb,this.get_workbook(),bY.repositoryUrl,cc,false,4294967295);ca=new bN(ce);this.$A._add(bZ,ca)}else{ca.$0.size=cb}}},$i:function(){return this.$u},$j:function(e){this.$u=e},$p:function(){return this.$C},$q:function(e){this.$C=e},$n:function(){return this.$B},$o:function(e){this.$B=e},$g:function(){return this.$t},$h:function(e){this.$t=e},$6:function(){return u._getCustomViewsAsync(this,this.$x)},$f:function(e){if(ss.isNullOrUndefined(e)||I.isNullOrEmpty(e)){return u._showCustomViewAsync(this,this.$x,null)}else{var bW=this.$u._get(e);if(ss.isNullOrUndefined(bW)){var bX=new tab._Deferred;bX.reject(H.createInvalidCustomViewName(e));return bX.get_promise()}return bW._impl._showAsync()}},$c:function(e){if(I.isNullOrEmpty(e)){throw H.createNullOrEmptyParameter('customViewName')}var bW=this.$u._get(e);if(ss.isNullOrUndefined(bW)){var bX=new tab._Deferred;bX.reject(H.createInvalidCustomViewName(e));return bX.get_promise()}return bW._impl.$1()},$b:function(e){if(I.isNullOrEmpty(e)){throw H.createInvalidParameter('customViewName')}return u._saveNewAsync(this,this.$x,e)},$e:function(){return u._makeCurrentCustomViewDefaultAsync(this,this.$x)},$k:function(){return this.$w},$l:function(e){this.$w=e},$m:function(){return this.$z},$8:function(e){var bW=new tab._Deferred;if(ss.isValue(this.$w)){bW.resolve(this.$w.$8());return bW.get_promise()}var bX={};var bY=new t('api.FetchParametersCommand',0,ss.mkdel(this,function(bZ){var ca=bZ;var cb=L.$3(e,ca);this.$w=cb;bW.resolve(cb.$8())}),function(bZ,ca){bW.reject(H.createServerError(ca))});this.$d(bX,bY);return bW.get_promise()},$7:function(){var e=new tab._Deferred;var bW={};var bX=new t('api.FetchParametersCommand',0,ss.mkdel(this,function(bY){var bZ=bY;this.$z=L.$4(bZ);e.resolve(this.$m()._toApiCollection())}),function(bY,bZ){e.reject(H.createServerError(bZ))});this.$d(bW,bX);return e.get_promise()},$2:function(e,bW){var bX=new tab._Deferred;var bY=null;if(ss.isValue(this.$z)){if(ss.isNullOrUndefined(this.$z._get(e))){bX.reject(H.createInvalidParameter(e));return bX.get_promise()}bY=this.$z._get(e)._impl;if(ss.isNullOrUndefined(bY)){bX.reject(H.createInvalidParameter(e));return bX.get_promise()}}var bZ={};bZ['api.setParameterName']=(ss.isValue(this.$z)?bY.$7():e);if(ss.isValue(bW)&&I.isDate(bW)){var ca=ss.cast(bW,ss.JsDate);var cb=I.serializeDateForServer(ca);bZ['api.setParameterValue']=cb}else{bZ['api.setParameterValue']=(ss.isValue(bW)?bW.toString():null)}this.$w=null;var cc=new t('api.SetParameterValueCommand',0,ss.mkdel(this,function(cd){var ce=cd;if(ss.isNullOrUndefined(ce)){bX.reject(H.create('serverError','server error'));return}if(!ce.isValidPresModel){bX.reject(H.createInvalidParameter(e));return}var cf=new k(ce);this.$w=cf;bX.resolve(cf.$8())}),function(cd,ce){bX.reject(H.createInvalidParameter(e))});this.$d(bZ,cc);return bX.get_promise()}});ss.initClass(M,a,{get_sheet:function(){return this.get_worksheet()},get_worksheet:function(){if(ss.isNullOrUndefined(this.$E)){this.$E=new bV(this)}return this.$E},get_parentDashboardImpl:function(){return this.$C},get_parentDashboard:function(){if(ss.isValue(this.$C)){return this.$C.get_dashboard()}return null},$q:function(){this.$A();var e=new tab._Deferred;var bW={};bW['api.worksheetName']=this.get_name();var bX=new t('api.GetDataSourcesCommand',0,function(bY){var bZ=bY;var ca=w.processDataSourcesForWorksheet(bZ);e.resolve(ca._toApiCollection())},function(bY,bZ){e.reject(H.createServerError(bZ))});this.sendCommand(bW,bX);return e.get_promise()},$p:function(e){this.$A();var bW=new tab._Deferred;var bX={};bX['api.dataSourceName']=e;bX['api.worksheetName']=this.get_name();var bY=new t('api.GetDataSourceCommand',0,function(bZ){var ca=bZ;var cb=w.processDataSource(ca);if(ss.isValue(cb)){bW.resolve(cb.get_dataSource())}else{bW.reject(H.createServerError("Data source '"+e+"' not found"))}},function(bZ,ca){bW.reject(H.createServerError(ca))});this.sendCommand(bX,bY);return bW.get_promise()},$A:function(){var e=this.get_isActive();var bW=ss.isValue(this.$C)&&this.$C.get_isActive();var bX=ss.isValue(this.get_parentStoryPointImpl())&&this.get_parentStoryPointImpl().get_parentStoryImpl().get_isActive();if(!e&&!bW&&!bX){throw H.createNotActiveSheet()}},$d:function(e){if(ss.isValue(this.get_parentStoryPointImpl())){var bW={};bW.v7=this.get_name();if(ss.isValue(this.get_parentDashboardImpl())){bW.v8=this.get_parentDashboardImpl().get_name()}bW.afq=this.get_parentStoryPointImpl().get_containedSheetImpl().get_zoneId();bW.m5=this.get_parentStoryPointImpl().get_parentStoryImpl().get_name();bW.agb=this.get_parentStoryPointImpl().get_storyPointId();e['api.visualId']=bW}else{e['api.worksheetName']=this.get_name();if(ss.isValue(this.get_parentDashboardImpl())){e['api.dashboardName']=this.get_parentDashboardImpl().get_name()}}},get__filters:function(){return this.$B},set__filters:function(e){this.$B=e},$r:function(e,bW,bX){if(!I.isNullOrEmpty(e)&&!I.isNullOrEmpty(bW)){throw H.createInternalError('Only fieldName OR fieldCaption is allowed, not both.')}bX=bX||new Object;var bY=new tab._Deferred;var bZ={};this.$d(bZ);if(!I.isNullOrEmpty(bW)&&I.isNullOrEmpty(e)){bZ['api.fieldCaption']=bW}if(!I.isNullOrEmpty(e)){bZ['api.fieldName']=e}bZ['api.filterHierarchicalLevels']=0;bZ['api.ignoreDomain']=bX.ignoreDomain||false;var ca=new t('api.GetOneFilterInfoCommand',0,ss.mkdel(this,function(cb){var cc=M.$2(cb);if(ss.isNullOrUndefined(cc)){var cd=cb;var ce=bF.$0(this,cd);bY.resolve(ce)}else{bY.reject(cc)}}),function(cb,cc){bY.reject(H.createServerError(cc))});this.sendCommand(bZ,ca);return bY.get_promise()},$s:function(e){this.$A();e=e||new Object;var bW=new tab._Deferred;var bX={};this.$d(bX);bX['api.ignoreDomain']=e.ignoreDomain||false;var bY=new t('api.GetFiltersListCommand',0,ss.mkdel(this,function(bZ){var ca=bZ;this.set__filters(bF.$1(this,ca));bW.resolve(this.get__filters()._toApiCollection())}),function(bZ,ca){bW.reject(H.createServerError(ca))});this.sendCommand(bX,bY);return bW.get_promise()},$e:function(e,bW,bX,bY){return this.$f(e,bW,bX,bY)},$m:function(e){return this.$n(e)},$i:function(e,bW){var bX=M.$3(bW);return this.$j(e,bX)},$k:function(e,bW){var bX=M.$4(bW);return this.$l(e,bX)},$g:function(e,bW,bX,bY){if(ss.isNullOrUndefined(bW)&&bX!=='all'){throw H.createInvalidParameter('values')}return this.$h(e,bW,bX,bY)},$n:function(e){this.$A();if(I.isNullOrEmpty(e)){throw H.createNullOrEmptyParameter('fieldName')}var bW=new tab._Deferred;var bX={};bX['api.fieldCaption']=e;this.$d(bX);var bY=M.$0('api.ClearFilterCommand',e,bW);this.sendCommand(bX,bY);return bW.get_promise()},$f:function(e,bW,bX,bY){this.$A();if(I.isNullOrEmpty(e)){throw H.createNullOrEmptyParameter('fieldName')}bX=l.$1(U).call(null,bX,'updateType');var bZ=[];if(y.isArray(bW)){for(var ca=0;ca<bW.length;ca++){bZ.push(bW[ca].toString())}}else if(ss.isValue(bW)){bZ.push(bW.toString())}var cb=new tab._Deferred;var cc={};cc['api.fieldCaption']=e;cc['api.filterUpdateType']=bX;cc['api.exclude']=((ss.isValue(bY)&&bY.isExcludeMode)?true:false);if(bX!=='all'){cc['api.filterCategoricalValues']=bZ}this.$d(cc);var cd=M.$0('api.ApplyCategoricalFilterCommand',e,cb);this.sendCommand(cc,cd);return cb.get_promise()},$j:function(e,bW){this.$A();if(I.isNullOrEmpty(e)){throw H.createNullOrEmptyParameter('fieldName')}if(ss.isNullOrUndefined(bW)){throw H.createNullOrEmptyParameter('filterOptions')}var bX={};bX['api.fieldCaption']=e;if(ss.isValue(bW.min)){if(I.isDate(bW.min)){var bY=ss.cast(bW.min,ss.JsDate);if(I.isDateValid(bY)){bX['api.filterRangeMin']=I.serializeDateForServer(bY)}else{throw H.createInvalidDateParameter('filterOptions.min')}}else{bX['api.filterRangeMin']=bW.min}}if(ss.isValue(bW.max)){if(I.isDate(bW.max)){var bZ=ss.cast(bW.max,ss.JsDate);if(I.isDateValid(bZ)){bX['api.filterRangeMax']=I.serializeDateForServer(bZ)}else{throw H.createInvalidDateParameter('filterOptions.max')}}else{bX['api.filterRangeMax']=bW.max}}if(ss.isValue(bW.nullOption)){bX['api.filterRangeNullOption']=bW.nullOption}this.$d(bX);var ca=new tab._Deferred;var cb=M.$0('api.ApplyRangeFilterCommand',e,ca);this.sendCommand(bX,cb);return ca.get_promise()},$l:function(e,bW){this.$A();if(I.isNullOrEmpty(e)){throw H.createInvalidParameter('fieldName')}else if(ss.isNullOrUndefined(bW)){throw H.createInvalidParameter('filterOptions')}var bX={};bX['api.fieldCaption']=e;if(ss.isValue(bW)){bX['api.filterPeriodType']=bW.periodType;bX['api.filterDateRangeType']=bW.rangeType;if(bW.rangeType==='lastn'||bW.rangeType==='nextn'){if(ss.isNullOrUndefined(bW.rangeN)){throw H.create('missingRangeNForRelativeDateFilters','Missing rangeN field for a relative date filter of LASTN or NEXTN.')}bX['api.filterDateRange']=bW.rangeN}if(ss.isValue(bW.anchorDate)){bX['api.filterDateArchorValue']=I.serializeDateForServer(bW.anchorDate)}}this.$d(bX);var bY=new tab._Deferred;var bZ=M.$0('api.ApplyRelativeDateFilterCommand',e,bY);this.sendCommand(bX,bZ);return bY.get_promise()},$h:function(e,bW,bX,bY){this.$A();if(I.isNullOrEmpty(e)){throw H.createNullOrEmptyParameter('fieldName')}bX=l.$1(U).call(null,bX,'updateType');var bZ=null;var ca=null;if(y.isArray(bW)){bZ=[];var cb=bW;for(var cc=0;cc<cb.length;cc++){bZ.push(cb[cc].toString())}}else if(I.isString(bW)){bZ=[];bZ.push(bW.toString())}else if(ss.isValue(bW)&&ss.isValue(bW['levels'])){var cd=bW['levels'];ca=[];if(y.isArray(cd)){var ce=cd;for(var cf=0;cf<ce.length;cf++){ca.push(ce[cf].toString())}}else{ca.push(cd.toString())}}else if(ss.isValue(bW)){throw H.createInvalidParameter('values')}var cg={};cg['api.fieldCaption']=e;cg['api.filterUpdateType']=bX;cg['api.exclude']=((ss.isValue(bY)&&bY.isExcludeMode)?true:false);if(ss.isValue(bZ)){cg['api.filterHierarchicalValues']=bk.toJson(bZ,false,'')}if(ss.isValue(ca)){cg['api.filterHierarchicalLevels']=bk.toJson(ca,false,'')}this.$d(cg);var ch=new tab._Deferred;var ci=M.$0('api.ApplyHierarchicalFilterCommand',e,ch);this.sendCommand(cg,ci);return ch.get_promise()},get_selectedMarks:function(){return this.$D},set_selectedMarks:function(e){this.$D=e},$o:function(){this.$A();var e=new tab._Deferred;var bW={};this.$d(bW);bW['api.filterUpdateType']='replace';var bX=new t('api.SelectMarksCommand',1,function(bY){e.resolve()},function(bY,bZ){e.reject(H.createServerError(bZ))});this.sendCommand(bW,bX);return e.get_promise()},$v:function(e,bW,bX){this.$A();if(ss.isNullOrUndefined(e)&&ss.isNullOrUndefined(bW)){return this.$o()}if(I.isString(e)&&(y.isArray(bW)||I.isString(bW)||!l.$0(Z).call(null,bW))){return this.$w(ss.cast(e,String),bW,bX)}else if(y.isArray(e)){return this.$x(e,ss.cast(bW,String))}else{return this.$y(e,ss.cast(bW,String))}},$t:function(){this.$A();var e=new tab._Deferred;var bW={};this.$d(bW);var bX=new t('api.FetchSelectedMarksCommand',0,ss.mkdel(this,function(bY){var bZ=bY;this.$D=j.$0(bZ);e.resolve(this.$D._toApiCollection())}),function(bY,bZ){e.reject(H.createServerError(bZ))});this.sendCommand(bW,bX);return e.get_promise()},$w:function(e,bW,bX){var bY=[];var bZ=[];var ca=[];var cb=[];var cc=[];var cd=[];this.$u(bY,bZ,ca,cb,cc,cd,e,bW);return this.$z(null,bY,bZ,ca,cb,cc,cd,bX)},$y:function(e,bW){var bX=e;var bY=[];var bZ=[];var ca=[];var cb=[];var cc=[];var cd=[];var ce=new ss.ObjectEnumerator(bX);try{while(ce.moveNext()){var cf=ce.current();if(e.hasOwnProperty(cf.key)){if(!y.isFunction(bX[cf.key])){this.$u(bY,bZ,ca,cb,cc,cd,cf.key,cf.value)}}}}finally{ce.dispose()}return this.$z(null,bY,bZ,ca,cb,cc,cd,bW)},$x:function(e,bW){var bX=[];var bY=[];var bZ=[];var ca=[];var cb=[];var cc=[];var cd=[];for(var ce=0;ce<e.length;ce++){var cf=e[ce];if(ss.isValue(cf.$0.$3())&&cf.$0.$3()>0){cd.push(cf.$0.$3())}else{var cg=cf.$0.$2();for(var ch=0;ch<cg.get__length();ch++){var ci=cg.get_item(ch);if(ci.hasOwnProperty('fieldName')&&ci.hasOwnProperty('value')&&!y.isFunction(ci.fieldName)&&!y.isFunction(ci.value)){this.$u(bX,bY,bZ,ca,cb,cc,ci.fieldName,ci.value)}}}}return this.$z(cd,bX,bY,bZ,ca,cb,cc,bW)},$u:function(e,bW,bX,bY,bZ,ca,cb,cc){var cd=cc;if(M.$5.test(cb)){this.$c(bX,bY,cb,cc)}else if(ss.isValue(cd.min)||ss.isValue(cd.max)){var ce=new Object;if(ss.isValue(cd.min)){if(I.isDate(cd.min)){var cf=ss.cast(cd.min,ss.JsDate);if(I.isDateValid(cf)){ce.min=I.serializeDateForServer(cf)}else{throw H.createInvalidDateParameter('options.min')}}else{ce.min=cd.min}}if(ss.isValue(cd.max)){if(I.isDate(cd.max)){var cg=ss.cast(cd.max,ss.JsDate);if(I.isDateValid(cg)){ce.max=I.serializeDateForServer(cg)}else{throw H.createInvalidDateParameter('options.max')}}else{ce.max=cd.max}}if(ss.isValue(cd.nullOption)){var ch=l.$1(V).call(null,cd.nullOption,'options.nullOption');ce.nullOption=ch}else{ce.nullOption='allValues'}var ci=bk.toJson(ce,false,'');this.$c(bZ,ca,cb,ci)}else{this.$c(e,bW,cb,cc)}},$c:function(e,bW,bX,bY){var bZ=[];if(y.isArray(bY)){var ca=ss.cast(bY,Array);for(var cb=0;cb<ca.length;cb++){bZ.push(ca[cb].toString())}}else{bZ.push(bY.toString())}bW.push(bZ);e.push(bX)},$z:function(e,bW,bX,bY,bZ,ca,cb,cc){var cd={};this.$d(cd);cc=l.$1(Z).call(null,cc,'updateType');cd['api.filterUpdateType']=cc;if(!I.isNullOrEmpty(e)){cd['api.tupleIds']=bk.toJson(e,false,'')}if(!I.isNullOrEmpty(bW)&&!I.isNullOrEmpty(bX)){cd['api.categoricalFieldCaption']=bk.toJson(bW,false,'');var ce=[];for(var cf=0;cf<bX.length;cf++){var cg=bk.toJson(bX[cf],false,'');ce.push(cg)}cd['api.categoricalMarkValues']=bk.toJson(ce,false,'')}if(!I.isNullOrEmpty(bY)&&!I.isNullOrEmpty(bZ)){cd['api.hierarchicalFieldCaption']=bk.toJson(bY,false,'');var ch=[];for(var ci=0;ci<bZ.length;ci++){var cj=bk.toJson(bZ[ci],false,'');ch.push(cj)}cd['api.hierarchicalMarkValues']=bk.toJson(ch,false,'')}if(!I.isNullOrEmpty(ca)&&!I.isNullOrEmpty(cb)){cd['api.rangeFieldCaption']=bk.toJson(ca,false,'');var ck=[];for(var cl=0;cl<cb.length;cl++){var cm=bk.toJson(cb[cl],false,'');ck.push(cm)}cd['api.rangeMarkValues']=bk.toJson(ck,false,'')}if(I.isNullOrEmpty(cd['api.tupleIds'])&&I.isNullOrEmpty(cd['api.categoricalFieldCaption'])&&I.isNullOrEmpty(cd['api.hierarchicalFieldCaption'])&&I.isNullOrEmpty(cd['api.rangeFieldCaption'])){throw H.createInvalidParameter('fieldNameOrFieldValuesMap')}var cn=new tab._Deferred;var co=new t('api.SelectMarksCommand',1,function(cp){var cq=M.$1(cp);if(ss.isNullOrUndefined(cq)){cn.resolve()}else{cn.reject(cq)}},function(cp,cq){cn.reject(H.createServerError(cq))});this.sendCommand(cd,co);return cn.get_promise()}},C);ss.initEnum(N,a,{blank:'blank',worksheet:'worksheet',quickFilter:'quickFilter',parameterControl:'parameterControl',pageFilter:'pageFilter',legend:'legend',title:'title',text:'text',image:'image',webPage:'webPage'},true);ss.initEnum(O,a,{last:'last',lastn:'lastn',next:'next',nextn:'nextn',curr:'curr',todate:'todate'},true);ss.initClass(P,a,{});ss.initEnum(Q,a,{internalError:'internalError',serverError:'serverError',invalidAggregationFieldName:'invalidAggregationFieldName',invalidParameter:'invalidParameter',invalidUrl:'invalidUrl',staleDataReference:'staleDataReference',vizAlreadyInManager:'vizAlreadyInManager',noUrlOrParentElementNotFound:'noUrlOrParentElementNotFound',invalidFilterFieldName:'invalidFilterFieldName',invalidFilterFieldValue:'invalidFilterFieldValue',invalidFilterFieldNameOrValue:'invalidFilterFieldNameOrValue',filterCannotBePerformed:'filterCannotBePerformed',notActiveSheet:'notActiveSheet',invalidCustomViewName:'invalidCustomViewName',missingRangeNForRelativeDateFilters:'missingRangeNForRelativeDateFilters',missingMaxSize:'missingMaxSize',missingMinSize:'missingMinSize',missingMinMaxSize:'missingMinMaxSize',invalidSize:'invalidSize',invalidSizeBehaviorOnWorksheet:'invalidSizeBehaviorOnWorksheet',sheetNotInWorkbook:'sheetNotInWorkbook',indexOutOfRange:'indexOutOfRange',downloadWorkbookNotAllowed:'downloadWorkbookNotAllowed',nullOrEmptyParameter:'nullOrEmptyParameter',browserNotCapable:'browserNotCapable',unsupportedEventName:'unsupportedEventName',invalidDateParameter:'invalidDateParameter',invalidSelectionFieldName:'invalidSelectionFieldName',invalidSelectionValue:'invalidSelectionValue',invalidSelectionDate:'invalidSelectionDate',noUrlForHiddenWorksheet:'noUrlForHiddenWorksheet',maxVizResizeAttempts:'maxVizResizeAttempts'},true);ss.initEnum(R,a,{SUM:'SUM',AVG:'AVG',MIN:'MIN',MAX:'MAX',STDEV:'STDEV',STDEVP:'STDEVP',VAR:'VAR',VARP:'VARP',COUNT:'COUNT',COUNTD:'COUNTD',MEDIAN:'MEDIAN',ATTR:'ATTR',NONE:'NONE',PERCENTILE:'PERCENTILE',YEAR:'YEAR',QTR:'QTR',MONTH:'MONTH',DAY:'DAY',HOUR:'HOUR',MINUTE:'MINUTE',SECOND:'SECOND',WEEK:'WEEK',WEEKDAY:'WEEKDAY',MONTHYEAR:'MONTHYEAR',MDY:'MDY',END:'END',TRUNC_YEAR:'TRUNC_YEAR',TRUNC_QTR:'TRUNC_QTR',TRUNC_MONTH:'TRUNC_MONTH',TRUNC_WEEK:'TRUNC_WEEK',TRUNC_DAY:'TRUNC_DAY',TRUNC_HOUR:'TRUNC_HOUR',TRUNC_MINUTE:'TRUNC_MINUTE',TRUNC_SECOND:'TRUNC_SECOND',QUART1:'QUART1',QUART3:'QUART3',SKEWNESS:'SKEWNESS',KURTOSIS:'KURTOSIS',INOUT:'INOUT',SUM_XSQR:'SUM_XSQR',USER:'USER'},true);ss.initEnum(S,a,{dimension:'dimension',measure:'measure',unknown:'unknown'},true);ss.initEnum(T,a,{categorical:'categorical',quantitative:'quantitative',hierarchical:'hierarchical',relativedate:'relativedate'},true);ss.initEnum(U,a,{all:'all',replace:'replace',add:'add',remove:'remove'},true);ss.initEnum(V,a,{nullValues:'nullValues',nonNullValues:'nonNullValues',allValues:'allValues'},true);ss.initEnum(W,a,{all:'all',list:'list',range:'range'},true);ss.initEnum(X,a,{float:'float',integer:'integer',string:'string',boolean:'boolean',date:'date',datetime:'datetime'},true);ss.initEnum(Y,a,{year:'year',quarter:'quarter',month:'month',week:'week',day:'day',hour:'hour',minute:'minute',second:'second'},true);ss.initEnum(Z,a,{replace:'replace',add:'add',remove:'remove'},true);ss.initEnum(ba,a,{automatic:'automatic',exactly:'exactly',range:'range',atleast:'atleast',atmost:'atmost'},true);ss.initEnum(bb,a,{worksheet:'worksheet',dashboard:'dashboard',story:'story'},true);ss.initEnum(bc,a,{customviewload:'customviewload',customviewremove:'customviewremove',customviewsave:'customviewsave',customviewsetdefault:'customviewsetdefault',filterchange:'filterchange',firstinteractive:'firstinteractive',firstvizsizeknown:'firstvizsizeknown',marksselection:'marksselection',parametervaluechange:'parametervaluechange',storypointswitch:'storypointswitch',tabswitch:'tabswitch',vizresize:'vizresize'},true);ss.initEnum(bd,a,{top:'top',bottom:'bottom'},true);ss.initClass(be,a,{get_router:function(){return this.$1},get_handler:function(){return this.$0},sendCommand:function(e,bW){this.$1.sendCommand(this.$0,e,bW)}});ss.initClass(bt,a,{getViz:function(){return this.$1},getEventName:function(){return this.$0}});ss.initClass(bf,a,{getCustomViewAsync:function(){var e=new tab._Deferred;var bW=null;if(ss.isValue(this.$2.get__customViewImpl())){bW=this.$2.get__customViewImpl().$5()}e.resolve(bW);return e.get_promise()}},bt);ss.initClass(bg,a,{},Object);ss.initClass(by,a,{getWorksheet:function(){return this.$2.get_worksheet()}},bt);ss.initClass(bi,a,{getFieldName:function(){return this.$4},getFilterAsync:function(){return this.$3.get__worksheetImpl().$r(this.$3.get__filterFieldName(),null,null)}},by);ss.initClass(bj,a,{getVizSize:function(){return this.$2}},bt);ss.initClass(bk,a,{});ss.initClass(bl,a,{getMarksAsync:function(){var e=this.$3.get__worksheetImpl();if(ss.isValue(e.get_selectedMarks())){var bW=new tab._Deferred;return bW.resolve(e.get_selectedMarks()._toApiCollection())}return e.$t()}},by);ss.initClass(bm,a,{getParameterName:function(){return this.$2.get__parameterName()},getParameterAsync:function(){return this.$2.get__workbookImpl().$8(this.$2.get__parameterName())}},bt);ss.initClass(bn,a,{},Object);ss.initClass(bo,a,{},Object);ss.initClass(bp,a,{});ss.initClass(bq,a,{},Object);ss.initClass(br,a,{});ss.initClass(bs,a,{getOldStoryPointInfo:function(){return this.$3},getNewStoryPoint:function(){return this.$2}},bt);ss.initClass(bu,a,{getOldSheetName:function(){return this.$3},getNewSheetName:function(){return this.$2}},bt);ss.initClass(bv,a,{add_customViewsListLoad:function(e){this.$1$1=ss.delegateCombine(this.$1$1,e)},remove_customViewsListLoad:function(e){this.$1$1=ss.delegateRemove(this.$1$1,e)},add_stateReadyForQuery:function(e){this.$1$2=ss.delegateCombine(this.$1$2,e)},remove_stateReadyForQuery:function(e){this.$1$2=ss.delegateRemove(this.$1$2,e)},$1l:function(e){this.$1$3=ss.delegateCombine(this.$1$3,e)},$1m:function(e){this.$1$3=ss.delegateRemove(this.$1$3,e)},$1j:function(e){this.$1$4=ss.delegateCombine(this.$1$4,e)},$1k:function(e){this.$1$4=ss.delegateRemove(this.$1$4,e)},$1n:function(e){this.$1$5=ss.delegateCombine(this.$1$5,e)},$1o:function(e){this.$1$5=ss.delegateRemove(this.$1$5,e)},$1b:function(e){this.$1$6=ss.delegateCombine(this.$1$6,e)},$1c:function(e){this.$1$6=ss.delegateRemove(this.$1$6,e)},$1f:function(e){this.$1$7=ss.delegateCombine(this.$1$7,e)},$1g:function(e){this.$1$7=ss.delegateRemove(this.$1$7,e)},$1d:function(e){this.$1$8=ss.delegateCombine(this.$1$8,e)},$1e:function(e){this.$1$8=ss.delegateRemove(this.$1$8,e)},$1h:function(e){this.$1$9=ss.delegateCombine(this.$1$9,e)},$1i:function(e){this.$1$9=ss.delegateRemove(this.$1$9,e)},$1r:function(e){this.$1$10=ss.delegateCombine(this.$1$10,e)},$1s:function(e){this.$1$10=ss.delegateRemove(this.$1$10,e)},$1p:function(e){this.$1$11=ss.delegateCombine(this.$1$11,e)},$1q:function(e){this.$1$11=ss.delegateRemove(this.$1$11,e)},$1t:function(e){this.$1$12=ss.delegateCombine(this.$1$12,e)},$1u:function(e){this.$1$12=ss.delegateRemove(this.$1$12,e)},get_handlerId:function(){return this.$16.handlerId},set_handlerId:function(e){this.$16.handlerId=e},get_iframe:function(){return this.$X},get_instanceId:function(){return this.$10},set_instanceId:function(e){this.$10=e},get_serverRoot:function(){return this.$16.serverRoot},$R:function(){return this.$17},$M:function(){return this.$W},$O:function(){return this.$11},$N:function(){return this.$X.style.display==='none'},$P:function(){return this.$16.parentElement},$Q:function(){return this.$16.get_baseUrl()},$T:function(){return this.$1a.get_workbook()},get__workbookImpl:function(){return this.$1a},$L:function(){return this.$V},$S:function(){return this.$18},getCurrentUrlAsync:function(){var e=new tab._Deferred;var bW=new t('api.GetCurrentUrlCommand',0,function(bX){e.resolve(ss.cast(bX,String))},function(bX,bY){e.reject(H.createInternalError(bY))});this._sendCommand(null,bW);return e.get_promise()},handleVizLoad:function(){this.$7();if(ss.isNullOrUndefined(this.$1a)){this.$1a=new L(this,this.$12,ss.mkdel(this,function(){this.$i()}))}else if(!this.$Z){this.$1a._update(ss.mkdel(this,function(){this.$i()}))}},$1:function(e){var bW=this.$18.chromeHeight;var bX=this.$18.sheetSize;var bY=0;var bZ=0;if(bX.behavior==='exactly'){bY=bX.maxSize.width;bZ=bX.maxSize.height+bW}else{var ca;var cb;var cc;var cd;switch(bX.behavior){case'range':{ca=bX.minSize.width;cb=bX.maxSize.width;cc=bX.minSize.height+bW;cd=bX.maxSize.height+bW;bY=Math.max(ca,Math.min(cb,e.width));bZ=Math.max(cc,Math.min(cd,e.height));break}case'atleast':{ca=bX.minSize.width;cc=bX.minSize.height+bW;bY=Math.max(ca,e.width);bZ=Math.max(cc,e.height);break}case'atmost':{cb=bX.maxSize.width;cd=bX.maxSize.height+bW;bY=Math.min(cb,e.width);bZ=Math.min(cd,e.height);break}case'automatic':{bY=e.width;bZ=Math.max(e.height,bW);break}default:{throw H.createInternalError('Unknown SheetSizeBehavior for viz: '+bX.behavior.toString())}}}return bq.$ctor(bY,bZ)},$9:function(){var e;if(ss.isValue(this.$Y)){e=this.$Y;this.$Y=null}else{e=I.computeContentSize(this.$P())}this.$s(e);return this.$1(e)},$u:function(){if(!ss.isValue(this.$18)){return}var e=this.$9();this.$A(e.width+'px',e.height+'px');var bW=10;for(var bX=0;bX<bW;bX++){var bY=this.$9();if(ss.referenceEquals(JSON.stringify(e),JSON.stringify(bY))){return}e=bY;this.$A(e.width+'px',e.height+'px')}throw H.create('maxVizResizeAttempts','Viz resize limit hit. The calculated iframe size did not stabilize after '+bW+' resizes.')},handleEventNotification:function(e,bW){var bX=q.deserialize(bW);if(e==='api.FirstVizSizeKnownEvent'){var bY=JSON.parse(ss.cast(bX.get_data(),String));this.$b(bY)}else if(e==='api.VizInteractiveEvent'){if(ss.isValue(this.$1a)&&ss.referenceEquals(this.$1a.get_name(),bX.get_workbookName())){this.$i()}this.$q()}else if(e==='api.MarksSelectionChangedEvent'){if(!ss.staticEquals(this.$1$3,null)){if(ss.referenceEquals(this.$1a.get_name(),bX.get_workbookName())){var bZ=null;var ca=this.$1a.get_activeSheetImpl();if(ss.referenceEquals(ca.get_name(),bX.get_worksheetName())){bZ=ss.cast(ca,M)}else if(ca.get_isDashboard()){var cb=ss.cast(ca,v);bZ=cb.get_worksheets()._get(bX.get_worksheetName())._impl}if(ss.isValue(bZ)){bZ.set_selectedMarks(null);this.$1$3(new bl('marksselection',this.$17,bZ))}}}}else if(e==='api.FilterChangedEvent'){if(!ss.staticEquals(this.$1$4,null)){if(ss.referenceEquals(this.$1a.get_name(),bX.get_workbookName())){var cc=null;var cd=this.$1a.get_activeSheetImpl();if(ss.referenceEquals(cd.get_name(),bX.get_worksheetName())){cc=ss.cast(cd,M)}else if(cd.get_isDashboard()){var ce=ss.cast(cd,v);cc=ce.get_worksheets()._get(bX.get_worksheetName())._impl}if(ss.isValue(cc)){var cf=ss.cast(JSON.parse(ss.cast(bX.get_data(),String)),Array);var cg=cf[0];var ch=cf[1];this.$1$4(new bi('filterchange',this.$17,cc,cg,ch))}}}}else if(e==='api.ParameterChangedEvent'){if(!ss.staticEquals(this.$1$5,null)){if(ss.referenceEquals(this.$1a.get_name(),bX.get_workbookName())){this.$1a.$l(null);var ci=ss.cast(bX.get_data(),String);this.$p(ci)}}}else if(e==='api.CustomViewsListLoadedEvent'){var cj=JSON.parse(ss.cast(bX.get_data(),String));var ck=ss.mkdel(this,function(){u._processCustomViews(this.$1a,this.$12,cj)});var cl=ss.mkdel(this,function(){this.$o();if(!ss.staticEquals(this.$1$6,null)&&!cj.customViewLoaded){this.$k(this.$1a.get_activeCustomView())}});if(ss.isNullOrUndefined(this.$1a)){this.$Z=true;this.$1a=new L(this,this.$12,ss.mkdel(this,function(){ck();this.$i(cl);this.$Z=false}))}else{ck();this.$8(cl)}}else if(e==='api.CustomViewUpdatedEvent'){var cm=JSON.parse(ss.cast(bX.get_data(),String));if(ss.isNullOrUndefined(this.$1a)){this.$1a=new L(this,this.$12,ss.mkdel(this,function(){this.$i()}))}if(ss.isValue(this.$1a)){u._processCustomViewUpdate(this.$1a,this.$12,cm,true)}if(!ss.staticEquals(this.$1$7,null)){var cn=this.$1a.$p()._toApiCollection();for(var co=0,cp=cn.length;co<cp;co++){this.$m(cn[co])}}}else if(e==='api.CustomViewRemovedEvent'){if(!ss.staticEquals(this.$1$8,null)){var cq=this.$1a.$n()._toApiCollection();for(var cr=0,cs=cq.length;cr<cs;cr++){this.$l(cq[cr])}}}else if(e==='api.CustomViewSetDefaultEvent'){var ct=JSON.parse(ss.cast(bX.get_data(),String));if(ss.isValue(this.$1a)){u._processCustomViews(this.$1a,this.$12,ct)}if(!ss.staticEquals(this.$1$9,null)){var cu=this.$1a.$p()._toApiCollection();for(var cv=0,cw=cu.length;cv<cw;cv++){this.$n(cu[cv])}}}else if(e==='api.TabSwitchEvent'){this.$1a._update(ss.mkdel(this,function(){if(ss.isValue(this.$U)){this.$U()}if(ss.referenceEquals(this.$1a.get_name(),bX.get_workbookName())){var cy=bX.get_worksheetName();var cz=ss.cast(bX.get_data(),String);this.$r(cy,cz)}this.$i()}))}else if(e==='api.StorytellingStateChangedEvent'){var cx=ss.cast(this.$1a.get_activeSheetImpl(),E);if(cx.get_sheetType()==='story'){cx.update(JSON.parse(ss.cast(bX.get_data(),String)))}}},addEventListener:function(e,bW){var bX={};if(!l.$2(bc).call(null,e,bX)){throw H.createUnsupportedEventName(e.toString())}switch(bX.$){case'marksselection':{this.$1l(ss.cast(bW,Function));break}case'parametervaluechange':{this.$1n(ss.cast(bW,Function));break}case'filterchange':{this.$1j(ss.cast(bW,Function));break}case'customviewload':{this.$1b(ss.cast(bW,Function));break}case'customviewsave':{this.$1f(ss.cast(bW,Function));break}case'customviewremove':{this.$1d(ss.cast(bW,Function));break}case'customviewsetdefault':{this.$1h(ss.cast(bW,Function));break}case'tabswitch':{this.$1r(ss.cast(bW,Function));break}case'storypointswitch':{this.$1p(ss.cast(bW,Function));break}case'vizresize':{this.$1t(ss.cast(bW,Function));break}}},removeEventListener:function(e,bW){var bX={};if(!l.$2(bc).call(null,e,bX)){throw H.createUnsupportedEventName(e.toString())}switch(bX.$){case'marksselection':{this.$1m(ss.cast(bW,Function));break}case'parametervaluechange':{this.$1o(ss.cast(bW,Function));break}case'filterchange':{this.$1k(ss.cast(bW,Function));break}case'customviewload':{this.$1c(ss.cast(bW,Function));break}case'customviewsave':{this.$1g(ss.cast(bW,Function));break}case'customviewremove':{this.$1e(ss.cast(bW,Function));break}case'customviewsetdefault':{this.$1i(ss.cast(bW,Function));break}case'tabswitch':{this.$1s(ss.cast(bW,Function));break}case'storypointswitch':{this.$1q(ss.cast(bW,Function));break}case'vizresize':{this.$1u(ss.cast(bW,Function));break}}},$6:function(){if(ss.isValue(this.$X)){this.$X.parentNode.removeChild(this.$X);this.$X=null}J.$2(this.$17);this.$12.get_router().unregisterHandler(this);this.$v()},$C:function(){this.$X.style.display='block';this.$X.style.visibility='visible'},$c:function(){this.$X.style.display='none'},$f:function(){this.$X.style.visibility='hidden'},$G:function(){this.$e('showExportImageDialog')},$F:function(e){var bW=this.$K(e);this.$e('showExportDataDialog',bW)},$E:function(e){var bW=this.$K(e);this.$e('showExportCrosstabDialog',bW)},$H:function(){this.$e('showExportPDFDialog')},$x:function(){var e=new tab._Deferred;var bW=new t('api.RevertAllCommand',1,function(bX){e.resolve()},function(bX,bY){e.reject(H.createServerError(bY))});this._sendCommand(null,bW);return e.get_promise()},$t:function(){var e=new tab._Deferred;var bW=new t('api.RefreshDataCommand',1,function(bX){e.resolve()},function(bX,bY){e.reject(H.createServerError(bY))});this._sendCommand(null,bW);return e.get_promise()},$I:function(){this.$e('showShareDialog')},$D:function(){if(this.get__workbookImpl().get_isDownloadAllowed()){this.$e('showDownloadWorkbookDialog')}else{throw H.create('downloadWorkbookNotAllowed','Download workbook is not allowed')}},$j:function(){return this.$d('pauseAutomaticUpdates')},$w:function(){return this.$d('resumeAutomaticUpdates')},$J:function(){return this.$d('toggleAutomaticUpdates')},$A:function(e,bW){this.$16.width=e;this.$16.height=bW;this.$X.style.width=this.$16.width;this.$X.style.height=this.$16.height},$B:function(e,bW){this.$s(bq.$ctor(-1,-1));this.$A(e,bW);this.$1a._updateActiveSheetAsync()},$z:function(e){this.$V=e},$3:function(){return this.$16.parentElement},$4:function(){try{J.$0(this.$17)}catch(bW){var e=ss.Exception.wrap(bW);this.$6();throw e}if(!this.$16.fixedSize){this.$Y=I.computeContentSize(this.$P());if(this.$Y.width===0||this.$Y.height===0){this.$Y=bq.$ctor(800,600)}this.$X=this.$5();this.$f()}else{this.$X=this.$5();this.$C()}if(!I.hasWindowPostMessage()){if(I.isIE()){this.$X['onreadystatechange']=this.$a()}else{this.$X.onload=this.$a()}}this.$11=!this.$16.toolbar;this.$W=!this.$16.tabs;this.$12.get_router().registerHandler(this);this.$X.src=this.$16.get_url()},$y:function(){if(!I.hasWindowPostMessage()||ss.isNullOrUndefined(this.$X)||!ss.isValue(this.$X.contentWindow)){return}var e=I.visibleContentRectInDocumentCoordinates(this.get_iframe());var bW=I.contentRectInDocumentCoordinates(this.get_iframe());var bX=[];bX.push('layoutInfoResp'.toString());bX.push(e.left-bW.left);bX.push(e.top-bW.top);bX.push(e.width);bX.push(e.height);this.$X.contentWindow.postMessage(bX.join(','),'*')},$7:function(){if(!I.hasWindowPostMessage()||ss.isNullOrUndefined(this.$X)||!ss.isValue(this.$X.contentWindow)){return}this.$X.contentWindow.postMessage('tableau.enableVisibleRectCommunication'.toString(),'*')},_sendCommand:function(e,bW){this.$12.sendCommand(e,bW)},$p:function(e){if(!ss.staticEquals(this.$1$5,null)){this.$1$5(new bm('parametervaluechange',this.$17,e))}},$k:function(e){this.get__workbookImpl()._update(ss.mkdel(this,function(){if(!ss.staticEquals(this.$1$6,null)){this.$1$6(new bf('customviewload',this.$17,(ss.isValue(e)?e._impl:null)))}}))},$m:function(e){this.get__workbookImpl()._update(ss.mkdel(this,function(){if(!ss.staticEquals(this.$1$7,null)){this.$1$7(new bf('customviewsave',this.$17,e._impl))}}))},$l:function(e){if(!ss.staticEquals(this.$1$8,null)){this.$1$8(new bf('customviewremove',this.$17,e._impl))}},$n:function(e){if(!ss.staticEquals(this.$1$9,null)){this.$1$9(new bf('customviewsetdefault',this.$17,e._impl))}},$r:function(e,bW){if(!ss.staticEquals(this.$1$10,null)){this.$1$10(new bu('tabswitch',this.$17,e,bW))}},raiseStoryPointSwitch:function(e,bW){if(!ss.staticEquals(this.$1$11,null)){this.$1$11(new bs('storypointswitch',this.$17,e,bW))}},$q:function(){if(!ss.staticEquals(this.$1$2,null)){this.$1$2(this)}},$o:function(){if(!ss.staticEquals(this.$1$1,null)){this.$1$1(this)}},$s:function(e){if(!ss.staticEquals(this.$1$12,null)){this.$1$12(new bw('vizresize',this.$17,e))}},$K:function(e){if(ss.isNullOrUndefined(e)){return null}var bW=this.$1a.$4(e);if(ss.isNullOrUndefined(bW)){throw H.createNotActiveSheet()}return bW.get_name()},$d:function(e){if(e!=='pauseAutomaticUpdates'&&e!=='resumeAutomaticUpdates'&&e!=='toggleAutomaticUpdates'){throw H.createInternalError(null)}var bW={};bW['api.invokeCommandName']=e;var bX=new tab._Deferred;var bY=new t('api.InvokeCommandCommand',0,ss.mkdel(this,function(bZ){var ca=bZ;if(ss.isValue(ca)&&ss.isValue(ca.isAutoUpdate)){this.$V=!ca.isAutoUpdate}bX.resolve(this.$V)}),function(bZ,ca){bX.reject(H.createServerError(ca))});this._sendCommand(bW,bY);return bX.get_promise()},$e:function(e,bW){if(e!=='showExportImageDialog'&&e!=='showExportDataDialog'&&e!=='showExportCrosstabDialog'&&e!=='showExportPDFDialog'&&e!=='showShareDialog'&&e!=='showDownloadWorkbookDialog'){throw H.createInternalError(null)}var bX={};bX['api.invokeCommandName']=e;if(ss.isValue(bW)){bX['api.invokeCommandParam']=bW}var bY=new t('api.InvokeCommandCommand',0,null,null);this._sendCommand(bX,bY)},$i:function(e){if(!this.$13){var bW=this.$14;window.setTimeout(ss.mkdel(this,function(){if(ss.isValue(bW)){bW(new bt('firstinteractive',this.$17))}if(ss.isValue(e)){e()}}),0);this.$13=true}this.$q()},$8:function(e){var bW=new Date;var bX=null;bX=ss.mkdel(this,function(){var bY=new Date;if(this.$13){e()}else if(bY-bW>300000){throw H.createInternalError('Timed out while waiting for the viz to become interactive')}else{window.setTimeout(bX,10)}});bX()},$2:function(){if(I.isIE()){if(this.$X['readyState']==='complete'){this.handleVizLoad()}}else{this.handleVizLoad()}},$g:function(){window.setTimeout(ss.mkdel(this,this.$2),3000)},$5:function(){if(ss.isNullOrUndefined(this.$3())){return null}var e=document.createElement('IFrame');var bW=ss.cast(e,ss.isValue(e)&&(ss.isInstanceOfType(e,Element)&&e.tagName==='IFRAME'));bW.frameBorder='0';bW.setAttribute('allowTransparency','true');bW.marginHeight='0';bW.marginWidth='0';bW.style.display='block';if(this.$16.fixedSize){bW.style.width=this.$16.width;bW.style.height=this.$16.height}else{bW.style.width='1px';bW.style.height='1px';bW.setAttribute('scrolling','no')}if(I.isSafari()){bW.addEventListener('mousewheel',ss.mkdel(this,this.$h),false)}this.$3().appendChild(bW);return bW},$h:function(e){},$a:function(){return ss.mkdel(this,function(e){this.$g()})},$b:function(e){var bW=bp.fromSizeConstraints(e.sizeConstraints);this.$18=bx.$ctor(bW,e.chromeHeight);if(ss.isValue(this.$15)){this.$15(new bj('firstvizsizeknown',this.$17,this.$18))}if(this.$16.fixedSize){return}this.$u();this.$0();this.$C()},$v:function(){if(ss.isNullOrUndefined(this.$19)){return}if(I.hasWindowAddEventListener()){window.removeEventListener('resize',this.$19,false)}else{window.self.detachEvent('onresize',this.$19)}this.$19=null},$0:function(){if(ss.isValue(this.$19)){return}this.$19=ss.mkdel(this,function(){this.$u()});if(I.hasWindowAddEventListener()){window.addEventListener('resize',this.$19,false)}else{window.self.attachEvent('onresize',this.$19)}}});ss.initClass(bw,a,{getAvailableSize:function(){return this.$2}},bt);ss.initClass(bx,a,{},Object);ss.initClass(bF,a,{getFilterType:function(){return this.$6},getFieldName:function(){return this.$1},getWorksheet:function(){return this.$7.get_worksheet()},getFieldAsync:function(){var e=new tab._Deferred;if(ss.isNullOrUndefined(this.$3)){var bW=function(bY){e.reject(bY);return null};var bX=ss.mkdel(this,function(bY){this.$3=new bE(bY,this.$1,this.$5,this.$4);e.resolve(this.$3);return null});this.$7.$p(this.$2).then(bX,bW)}else{window.setTimeout(ss.mkdel(this,function(){e.resolve(this.$3)}),0)}return e.get_promise()},_update:function(e){this.$0(e);this._updateFromJson(e)},_addFieldParams:function(e){},_updateFromJson:null,$0:function(e){this.$1=e.caption;this.$6=P.convertFilterType(e.filterType);this.$3=null;this.$2=e.dataSourceName;this.$5=P.convertFieldRole(ss.coalesce(e.fieldRole,2));this.$4=P.convertFieldAggregation(ss.coalesce(e.fieldAggregation,12))}});ss.initClass(bz,a,{getIsExcludeMode:function(){return this.$a},getAppliedValues:function(){return this.$9},_updateFromJson:function(e){this.$8(e)},$8:function(e){this.$a=e.isExclude;if(ss.isValue(e.appliedValues)){this.$9=[];for(var bW=0;bW<e.appliedValues.length;bW++){var bX=e.appliedValues[bW];this.$9.push(I.getDataValue(bX))}}}},bF);ss.initClass(bA,a,{getWorkbook:function(){return this._impl.$b()},getUrl:function(){return this._impl.$a()},getName:function(){return this._impl.$7()},setName:function(e){this._impl.$8(e)},getOwnerName:function(){return this._impl.$9()},getAdvertised:function(){return this._impl.$3()},setAdvertised:function(e){this._impl.$4(e)},getDefault:function(){return this._impl.$6()},saveAsync:function(){return this._impl.$2()}});ss.initClass(bM,a,{getName:function(){return this._impl.get_name()},getIndex:function(){return this._impl.get_index()},getWorkbook:function(){return this._impl.get_workbookImpl().get_workbook()},getSize:function(){return this._impl.get_size()},getIsHidden:function(){return this._impl.get_isHidden()},getIsActive:function(){return this._impl.get_isActive()},getSheetType:function(){return this._impl.get_sheetType()},getUrl:function(){return this._impl.get_url()},changeSizeAsync:function(e){return this._impl.changeSizeAsync(e)}});ss.initClass(bB,a,{getParentStoryPoint:function(){return this._impl.get_parentStoryPoint()},getObjects:function(){return this._impl.get_objects()._toApiCollection()},getWorksheets:function(){return this._impl.get_worksheets()._toApiCollection()}},bM);ss.initClass(bC,a,{getObjectType:function(){return this.$2.objectType},getDashboard:function(){return this.$0},getWorksheet:function(){return this.$1},getPosition:function(){return this.$2.position},getSize:function(){return this.$2.size}});ss.initClass(bD,a,{getName:function(){return this.$0.get_name()},getFields:function(){return this.$0.get_fields()._toApiCollection()},getIsPrimary:function(){return this.$0.get_isPrimary()}});ss.initClass(bE,a,{getDataSource:function(){return this.$0},getName:function(){return this.$3},getRole:function(){return this.$2},getAggregation:function(){return this.$1}});ss.initClass(bG,a,{_addFieldParams:function(e){e['api.filterHierarchicalLevels']=this.$9},_updateFromJson:function(e){this.$8(e)},$8:function(e){this.$9=e.levels}},bF);ss.initClass(bH,a,{getPairs:function(){return this.$0.$1()}});ss.initClass(bI,a,{});ss.initClass(bJ,a,{getName:function(){return this._impl.$7()},getCurrentValue:function(){return this._impl.$2()},getDataType:function(){return this._impl.$3()},getAllowableValuesType:function(){return this._impl.$1()},getAllowableValues:function(){return this._impl.$0()},getMinValue:function(){return this._impl.$6()},getMaxValue:function(){return this._impl.$5()},getStepSize:function(){return this._impl.$9()},getDateStepPeriod:function(){return this._impl.$4()}});ss.initClass(bK,a,{getMin:function(){return this.$d},getMax:function(){return this.$c},getIncludeNullValues:function(){return this.$b},getDomainMin:function(){return this.$a},getDomainMax:function(){return this.$9},_updateFromJson:function(e){this.$8(e)},$8:function(e){this.$a=I.getDataValue(e.domainMinValue);this.$9=I.getDataValue(e.domainMaxValue);this.$d=I.getDataValue(e.minValue);this.$c=I.getDataValue(e.maxValue);this.$b=e.includeNullValues}},bF);ss.initClass(bL,a,{getPeriod:function(){return this.$9},getRange:function(){return this.$b},getRangeN:function(){return this.$a},_updateFromJson:function(e){this.$8(e)},$8:function(e){if(ss.isValue(e.periodType)){this.$9=P.convertPeriodType(ss.unbox(e.periodType))}if(ss.isValue(e.rangeType)){this.$b=P.convertDateRange(ss.unbox(e.rangeType))}if(ss.isValue(e.rangeN)){this.$a=ss.unbox(e.rangeN)}}},bF);ss.initClass(bN,a,{getName:function(){return this.$0.name},getSheetType:function(){return this.$0.sheetType},getSize:function(){return this.$0.size},getIndex:function(){return this.$0.index},getUrl:function(){return this.$0.url},getIsActive:function(){return this.$0.isActive},getIsHidden:function(){return this.$0.isHidden},getWorkbook:function(){return this.$0.workbook}});ss.initClass(bO,a,{getActiveStoryPoint:function(){return this._impl.get_activeStoryPointImpl().get_storyPoint()},getStoryPointsInfo:function(){return this._impl.get_storyPointsInfo()},activatePreviousStoryPointAsync:function(){return this._impl.activatePreviousStoryPointAsync()},activateNextStoryPointAsync:function(){return this._impl.activateNextStoryPointAsync()},activateStoryPointAsync:function(e){return this._impl.activateStoryPointAsync(e)},revertStoryPointAsync:function(e){return this._impl.revertStoryPointAsync(e)}},bM);ss.initClass(bP,a,{getCaption:function(){return this.$0.get_caption()},getContainedSheet:function(){return(ss.isValue(this.$0.get_containedSheetImpl())?this.$0.get_containedSheetImpl().get_sheet():null)},getIndex:function(){return this.$0.get_index()},getIsActive:function(){return this.$0.get_isActive()},getIsUpdated:function(){return this.$0.get_isUpdated()},getParentStory:function(){return this.$0.get_parentStoryImpl().get_story()}});ss.initClass(bQ,a,{getCaption:function(){return this._impl.caption},getIndex:function(){return this._impl.index},getIsActive:function(){return this._impl.isActive},getIsUpdated:function(){return this._impl.isUpdated},getParentStory:function(){return this._impl.parentStoryImpl.get_story()}});ss.initClass(bR,a,{getMajor:function(){return this.$0},getMinor:function(){return this.$2},getPatch:function(){return this.$3},getMetadata:function(){return this.$1},toString:function(){var e=this.$0+'.'+this.$2+'.'+this.$3;if(ss.isValue(this.$1)&&this.$1.length>0){e+='-'+this.$1}return e}});ss.initClass(bS,a,{getAreTabsHidden:function(){return this._impl.$M()},getIsToolbarHidden:function(){return this._impl.$O()},getIsHidden:function(){return this._impl.$N()},getInstanceId:function(){return this._impl.get_instanceId()},getParentElement:function(){return this._impl.$P()},getUrl:function(){return this._impl.$Q()},getVizSize:function(){return this._impl.$S()},getWorkbook:function(){return this._impl.$T()},getAreAutomaticUpdatesPaused:function(){return this._impl.$L()},getCurrentUrlAsync:function(){return this._impl.getCurrentUrlAsync()},addEventListener:function(e,bW){this._impl.addEventListener(e,bW)},removeEventListener:function(e,bW){this._impl.removeEventListener(e,bW)},dispose:function(){this._impl.$6()},show:function(){this._impl.$C()},hide:function(){this._impl.$c()},showExportDataDialog:function(e){this._impl.$F(e)},showExportCrossTabDialog:function(e){this._impl.$E(e)},showExportImageDialog:function(){this._impl.$G()},showExportPDFDialog:function(){this._impl.$H()},revertAllAsync:function(){return this._impl.$x()},refreshDataAsync:function(){return this._impl.$t()},showShareDialog:function(){this._impl.$I()},showDownloadWorkbookDialog:function(){this._impl.$D()},pauseAutomaticUpdatesAsync:function(){return this._impl.$j()},resumeAutomaticUpdatesAsync:function(){return this._impl.$w()},toggleAutomaticUpdatesAsync:function(){return this._impl.$J()},refreshSize:function(){this._impl.$u()},setFrameSize:function(e,bW){var bX=e;var bY=bW;if(I.isNumber(e)){bX=e.toString()+'px'}if(I.isNumber(bW)){bY=bW.toString()+'px'}this._impl.$B(bX,bY)}});ss.initClass(bT,a,{});ss.initClass(bU,a,{getViz:function(){return this.$0.get_viz()},getPublishedSheetsInfo:function(){return this.$0.get_publishedSheets()._toApiCollection()},getName:function(){return this.$0.get_name()},getActiveSheet:function(){return this.$0.get_activeSheetImpl().get_sheet()},getActiveCustomView:function(){return this.$0.get_activeCustomView()},activateSheetAsync:function(e){return this.$0._setActiveSheetAsync(e)},revertAllAsync:function(){return this.$0._revertAllAsync()},getCustomViewsAsync:function(){return this.$0.$6()},showCustomViewAsync:function(e){return this.$0.$f(e)},removeCustomViewAsync:function(e){return this.$0.$c(e)},rememberCustomViewAsync:function(e){return this.$0.$b(e)},setActiveCustomViewAsDefaultAsync:function(){return this.$0.$e()},getParametersAsync:function(){return this.$0.$7()},changeParameterValueAsync:function(e,bW){return this.$0.$2(e,bW)}});ss.initClass(bV,a,{getParentDashboard:function(){return this._impl.get_parentDashboard()},getParentStoryPoint:function(){return this._impl.get_parentStoryPoint()},getDataSourcesAsync:function(){return this._impl.$q()},getFilterAsync:function(e,bW){return this._impl.$r(null,e,bW)},getFiltersAsync:function(e){return this._impl.$s(e)},applyFilterAsync:function(e,bW,bX,bY){return this._impl.$e(e,bW,bX,bY)},clearFilterAsync:function(e){return this._impl.$m(e)},applyRangeFilterAsync:function(e,bW){return this._impl.$i(e,bW)},applyRelativeDateFilterAsync:function(e,bW){return this._impl.$k(e,bW)},applyHierarchicalFilterAsync:function(e,bW,bX,bY){return this._impl.$g(e,bW,bX,bY)},clearSelectedMarksAsync:function(){return this._impl.$o()},selectMarksAsync:function(e,bW,bX){return this._impl.$v(e,bW,bX)},getSelectedMarksAsync:function(){return this._impl.$t()}},bM);(function(){y.$0='array';y.$1='boolean';y.$2='date';y.$3='function';y.$4='number';y.$5='object';y.$6='regexp';y.$7='string';y.$8=ss.mkdict(['[object Boolean]','boolean','[object Number]','number','[object String]','string','[object Function]','function','[object Array]','array','[object Date]','date','[object RegExp]','regexp','[object Object]','object']);y.$e=ss.cast(String.prototype['trim'],Function);y.$d=ss.cast(Object.prototype['toString'],Function);y.$f=new RegExp('^[\\s\\xA0]+');y.$g=new RegExp('[\\s\\xA0]+$');y.$a=new RegExp('^[\\],:{}\\s]*$');y.$b=new RegExp('\\\\(?:["\\\\\\/bfnrt]|u[0-9a-fA-F]{4})','g');y.$c=new RegExp('"[^"\\\\\\n\\r]*"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?','g');y.$9=new RegExp('(?:^|:|,)(?:\\s*\\[)+','g')})();(function(){bk.$6='\t'})();(function(){o.crossDomainEventNotificationId='xdomainSourceId'})();(function(){J.$5=[]})();(function(){var e=global.tableauSoftware;e.DashboardObjectType={BLANK:'blank',WORKSHEET:'worksheet',QUICK_FILTER:'quickFilter',PARAMETER_CONTROL:'parameterControl',PAGE_FILTER:'pageFilter',LEGEND:'legend',TITLE:'title',TEXT:'text',IMAGE:'image',WEB_PAGE:'webPage'};e.DateRangeType={LAST:'last',LASTN:'lastn',NEXT:'next',NEXTN:'nextn',CURR:'curr',TODATE:'todate'};e.ErrorCode={INTERNAL_ERROR:'internalError',SERVER_ERROR:'serverError',INVALID_AGGREGATION_FIELD_NAME:'invalidAggregationFieldName',INVALID_PARAMETER:'invalidParameter',INVALID_URL:'invalidUrl',STALE_DATA_REFERENCE:'staleDataReference',VIZ_ALREADY_IN_MANAGER:'vizAlreadyInManager',NO_URL_OR_PARENT_ELEMENT_NOT_FOUND:'noUrlOrParentElementNotFound',INVALID_FILTER_FIELDNAME:'invalidFilterFieldName',INVALID_FILTER_FIELDVALUE:'invalidFilterFieldValue',INVALID_FILTER_FIELDNAME_OR_VALUE:'invalidFilterFieldNameOrValue',FILTER_CANNOT_BE_PERFORMED:'filterCannotBePerformed',NOT_ACTIVE_SHEET:'notActiveSheet',INVALID_CUSTOM_VIEW_NAME:'invalidCustomViewName',MISSING_RANGEN_FOR_RELATIVE_DATE_FILTERS:'missingRangeNForRelativeDateFilters',MISSING_MAX_SIZE:'missingMaxSize',MISSING_MIN_SIZE:'missingMinSize',MISSING_MINMAX_SIZE:'missingMinMaxSize',INVALID_SIZE:'invalidSize',INVALID_SIZE_BEHAVIOR_ON_WORKSHEET:'invalidSizeBehaviorOnWorksheet',SHEET_NOT_IN_WORKBOOK:'sheetNotInWorkbook',INDEX_OUT_OF_RANGE:'indexOutOfRange',DOWNLOAD_WORKBOOK_NOT_ALLOWED:'downloadWorkbookNotAllowed',NULL_OR_EMPTY_PARAMETER:'nullOrEmptyParameter',BROWSER_NOT_CAPABLE:'browserNotCapable',UNSUPPORTED_EVENT_NAME:'unsupportedEventName',INVALID_DATE_PARAMETER:'invalidDateParameter',INVALID_SELECTION_FIELDNAME:'invalidSelectionFieldName',INVALID_SELECTION_VALUE:'invalidSelectionValue',INVALID_SELECTION_DATE:'invalidSelectionDate',NO_URL_FOR_HIDDEN_WORKSHEET:'noUrlForHiddenWorksheet',MAX_VIZ_RESIZE_ATTEMPTS:'maxVizResizeAttempts'};e.FieldAggregationType={SUM:'SUM',AVG:'AVG',MIN:'MIN',MAX:'MAX',STDEV:'STDEV',STDEVP:'STDEVP',VAR:'VAR',VARP:'VARP',COUNT:'COUNT',COUNTD:'COUNTD',MEDIAN:'MEDIAN',ATTR:'ATTR',NONE:'NONE',PERCENTILE:'PERCENTILE',YEAR:'YEAR',QTR:'QTR',MONTH:'MONTH',DAY:'DAY',HOUR:'HOUR',MINUTE:'MINUTE',SECOND:'SECOND',WEEK:'WEEK',WEEKDAY:'WEEKDAY',MONTHYEAR:'MONTHYEAR',MDY:'MDY',END:'END',TRUNC_YEAR:'TRUNC_YEAR',TRUNC_QTR:'TRUNC_QTR',TRUNC_MONTH:'TRUNC_MONTH',TRUNC_WEEK:'TRUNC_WEEK',TRUNC_DAY:'TRUNC_DAY',TRUNC_HOUR:'TRUNC_HOUR',TRUNC_MINUTE:'TRUNC_MINUTE',TRUNC_SECOND:'TRUNC_SECOND',QUART1:'QUART1',QUART3:'QUART3',SKEWNESS:'SKEWNESS',KURTOSIS:'KURTOSIS',INOUT:'INOUT',SUM_XSQR:'SUM_XSQR',USER:'USER'};e.FieldRoleType={DIMENSION:'dimension',MEASURE:'measure',UNKNOWN:'unknown'};e.FilterUpdateType={ALL:'all',REPLACE:'replace',ADD:'add',REMOVE:'remove'};e.FilterType={CATEGORICAL:'categorical',QUANTITATIVE:'quantitative',HIERARCHICAL:'hierarchical',RELATIVEDATE:'relativedate'};e.NullOption={NULL_VALUES:'nullValues',NON_NULL_VALUES:'nonNullValues',ALL_VALUES:'allValues'};e.ParameterAllowableValuesType={ALL:'all',LIST:'list',RANGE:'range'};e.ParameterDataType={FLOAT:'float',INTEGER:'integer',STRING:'string',BOOLEAN:'boolean',DATE:'date',DATETIME:'datetime'};e.PeriodType={YEAR:'year',QUARTER:'quarter',MONTH:'month',WEEK:'week',DAY:'day',HOUR:'hour',MINUTE:'minute',SECOND:'second'};e.SelectionUpdateType={REPLACE:'replace',ADD:'add',REMOVE:'remove'};e.SheetSizeBehavior={AUTOMATIC:'automatic',EXACTLY:'exactly',RANGE:'range',ATLEAST:'atleast',ATMOST:'atmost'};e.SheetType={WORKSHEET:'worksheet',DASHBOARD:'dashboard',STORY:'story'};e.TableauEventName={CUSTOM_VIEW_LOAD:'customviewload',CUSTOM_VIEW_REMOVE:'customviewremove',CUSTOM_VIEW_SAVE:'customviewsave',CUSTOM_VIEW_SET_DEFAULT:'customviewsetdefault',FILTER_CHANGE:'filterchange',FIRST_INTERACTIVE:'firstinteractive',FIRST_VIZ_SIZE_KNOWN:'firstvizsizeknown',MARKS_SELECTION:'marksselection',PARAMETER_VALUE_CHANGE:'parametervaluechange',STORY_POINT_SWITCH:'storypointswitch',TAB_SWITCH:'tabswitch',VIZ_RESIZE:'vizresize'};e.ToolbarPosition={TOP:'top',BOTTOM:'bottom'}})();(function(){p.$4='ICrossDomainMessageRouter';p.$5=null;p.$6=null})();(function(){C.noZoneId=4294967295})();(function(){M.$5=new RegExp('\\[[^\\]]+\\]\\.','g')})();(function(){bR.$0=new bR(2,0,1,null)})()})();window.tableau=window.tableauSoftware=global.tableauSoftware;tableauSoftware.Promise=tab._PromiseImpl;tab._Deferred=tab._DeferredImpl;tab._Collection=tab._CollectionImpl;tab._ApiBootstrap.initialize()})();