1 var goog
=goog
||{};goog
.global
=this;goog
.exportPath_=function(a
,b
,c
){a
=a
.split(".");c
=c
||goog
.global
;a
[0]in c
||!c
.execScript
||c
.execScript("var "+a
[0]);for(var d
;a
.length
&&(d
=a
.shift());)a
.length
||void 0===b
?c
=c
[d
]?c
[d
]:c
[d
]={}:c
[d
]=b
};goog
.define=function(a
,b
){var c
=b
;goog
.exportPath_(a
,c
)};goog
.DEBUG
=!1;goog
.LOCALE
="en";goog
.TRUSTED_SITE
=!0;goog
.provide=function(a
){goog
.exportPath_(a
)};
2 goog
.setTestOnly=function(a
){if(!goog
.DEBUG
)throw a
=a
||"",Error("Importing test-only code into non-debug environment"+a
?": "+a
:".");};goog
.forwardDeclare=function(){};goog
.getObjectByName=function(a
,b
){for(var c
=a
.split("."),d
=b
||goog
.global
,e
;e
=c
.shift();)if(goog
.isDefAndNotNull(d
[e
]))d
=d
[e
];else return null;return d
};goog
.globalize=function(a
,b
){var c
=b
||goog
.global
,d
;for(d
in a
)c
[d
]=a
[d
]};
3 goog
.addDependency=function(a
,b
,c
){if(goog
.DEPENDENCIES_ENABLED
){var d
;a
=a
.replace(/\\/g,"/");for(var e=goog.dependencies_,f=0;d=b[f];f++)e.nameToPath[d]=a,a in e.pathToNames||(e.pathToNames[a]={}),e.pathToNames[a][d]=!0;for(d=0;b=c[d];d++)a in e.requires||(e.requires[a]={}),e.requires[a][b]=!0}};goog.useStrictRequires=!1;goog.ENABLE_DEBUG_LOADER=!0;goog.require=function(){};goog.basePath="";goog.nullFunction=function(){};goog.identityFunction=function(a){return a};
4 goog.abstractMethod=function(){throw Error("unimplemented
abstract method
");};goog.addSingletonGetter=function(a){a.getInstance=function(){if(a.instance_)return a.instance_;goog.DEBUG&&(goog.instantiatedSingletons_[goog.instantiatedSingletons_.length]=a);return a.instance_=new a}};goog.instantiatedSingletons_=[];goog.DEPENDENCIES_ENABLED=!1;
5 goog.DEPENDENCIES_ENABLED&&(goog.included_={},goog.dependencies_={pathToNames:{},nameToPath:{},requires:{},visited:{},written:{}},goog.inHtmlDocument_=function(){var a=goog.global.document;return"undefined"!=typeof a&&"write
"in a},goog.findBasePath_=function(){if(goog.global.CLOSURE_BASE_PATH)goog.basePath=goog.global.CLOSURE_BASE_PATH;else if(goog.inHtmlDocument_())for(var a=goog.global.document,a=a.getElementsByTagName("script
"),b=a.length-1;0<=b;--b){var c=a[b].src,d=c.lastIndexOf("?"),d=-1==d?
6 c.length:d;if("base
.js
"==c.substr(d-7,7)){goog.basePath=c.substr(0,d-7);break}}},goog.importScript_=function(a){var b=goog.global.CLOSURE_IMPORT_SCRIPT||goog.writeScriptTag_;!goog.dependencies_.written[a]&&b(a)&&(goog.dependencies_.written[a]=!0)},goog.writeScriptTag_=function(a){if(goog.inHtmlDocument_()){var b=goog.global.document;if("complete
"==b.readyState){if(b=/\bdeps.js$/.test(a))return!1;throw Error('Cannot write "'+a+'" after document load');}b.write('<script type="text
/javascript
" src="'+
7 a+'">\x3c/script>');return!0}return!1},goog.writeScripts_=function(){function a(e){if(!(e in d.written)){if(!(e in d.visited)&&(d.visited[e]=!0,e in d.requires))for(var g in d.requires[e])if(!goog.isProvided_(g))if(g in d.nameToPath)a(d.nameToPath[g]);else throw Error("Undefined nameToPath
for "+g);e in c||(c[e]=!0,b.push(e))}}var b=[],c={},d=goog.dependencies_,e;for(e in goog.included_)d.written[e]||a(e);for(e=0;e<b.length;e++)if(b[e])goog.importScript_(goog.basePath+b[e]);else throw Error("Undefined script input
");
8 },goog.getPathFromDeps_=function(a){return a in goog.dependencies_.nameToPath?goog.dependencies_.nameToPath[a]:null},goog.findBasePath_(),goog.global.CLOSURE_NO_DEPS||goog.importScript_(goog.basePath+"deps
.js
"));
9 goog.typeOf=function(a){var b=typeof a;if("object
"==b)if(a){if(a instanceof Array)return"array
";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window
]"==c)return"object
";if("[object Array
]"==c||"number
"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice
"))return"array
";if("[object Function
]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call
"))return"function"}else return"null";
10 else if("function"==b&&"undefined"==typeof a.call)return"object
";return b};goog.isDef=function(a){return void 0!==a};goog.isNull=function(a){return null===a};goog.isDefAndNotNull=function(a){return null!=a};goog.isArray=function(a){return"array
"==goog.typeOf(a)};goog.isArrayLike=function(a){var b=goog.typeOf(a);return"array
"==b||"object
"==b&&"number
"==typeof a.length};goog.isDateLike=function(a){return goog.isObject(a)&&"function"==typeof a.getFullYear};goog.isString=function(a){return"string
"==typeof a};
11 goog.isBoolean=function(a){return"boolean"==typeof a};goog.isNumber=function(a){return"number
"==typeof a};goog.isFunction=function(a){return"function"==goog.typeOf(a)};goog.isObject=function(a){var b=typeof a;return"object
"==b&&null!=a||"function"==b};goog.getUid=function(a){return a[goog.UID_PROPERTY_]||(a[goog.UID_PROPERTY_]=++goog.uidCounter_)};goog.hasUid=function(a){return!!a[goog.UID_PROPERTY_]};goog.removeUid=function(a){"removeAttribute
"in a&&a.removeAttribute(goog.UID_PROPERTY_);try{delete a[goog.UID_PROPERTY_]}catch(b){}};
12 goog.UID_PROPERTY_="closure_uid_
"+(1E9*Math.random()>>>0);goog.uidCounter_=0;goog.getHashCode=goog.getUid;goog.removeHashCode=goog.removeUid;goog.cloneObject=function(a){var b=goog.typeOf(a);if("object
"==b||"array
"==b){if(a.clone)return a.clone();var b="array
"==b?[]:{},c;for(c in a)b[c]=goog.cloneObject(a[c]);return b}return a};goog.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)};
13 goog.bindJs_=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}};goog.bind=function(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code
")?goog.bind=goog.bindNative_:goog.bind=goog.bindJs_;return goog.bind.apply(null,arguments)};
14 goog.partial=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}};goog.mixin=function(a,b){for(var c in b)a[c]=b[c]};goog.now=goog.TRUSTED_SITE&&Date.now||function(){return+new Date};
15 goog.globalEval=function(a){if(goog.global.execScript)goog.global.execScript(a,"JavaScript
");else if(goog.global.eval)if(null==goog.evalWorksForGlobals_&&(goog.global.eval("var _et_
= 1;"),"undefined"!=typeof goog.global._et_?(delete goog.global._et_,goog.evalWorksForGlobals_=!0):goog.evalWorksForGlobals_=!1),goog.evalWorksForGlobals_)goog.global.eval(a);else{var b=goog.global.document,c=b.createElement("script
");c.type="text
/javascript
";c.defer=!1;c.appendChild(b.createTextNode(a));b.body.appendChild(c);
16 b.body.removeChild(c)}else throw Error("goog
.globalEval not available
");};goog.evalWorksForGlobals_=null;goog.getCssName=function(a,b){var c=function(a){return goog.cssNameMapping_[a]||a},d=function(a){a=a.split("-");for(var b=[],d=0;d<a.length;d++)b.push(c(a[d]));return b.join("-")},d=goog.cssNameMapping_?"BY_WHOLE
"==goog.cssNameMappingStyle_?c:d:function(a){return a};return b?a+"-"+d(b):d(a)};goog.setCssNameMapping=function(a,b){goog.cssNameMapping_=a;goog.cssNameMappingStyle_=b};
17 goog.getMsg=function(a,b){var c=b||{},d;for(d in c){var e=(""+c[d]).replace(/\$/g,"$$$$");a=a.replace(RegExp("\\{\\$"+d+"\\}","gi
"),e)}return a};goog.getMsgWithFallback=function(a){return a};goog.exportSymbol=function(a,b,c){goog.exportPath_(a,b,c)};goog.exportProperty=function(a,b,c){a[b]=c};
18 goog.inherits=function(a,b){function c(){}c.prototype=b.prototype;a.superClass_=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.base=function(a,c,f){var g=Array.prototype.slice.call(arguments,2);return b.prototype[c].apply(a,g)}};
19 goog.base=function(a,b,c){var d=arguments.callee.caller;if(goog.DEBUG&&!d)throw Error("arguments
.caller not defined
. goog
.base() expects not to be running
in strict mode
. See http
://www.ecma-international.org/ecma-262/5.1/#sec-C");if(d.superClass_)return d.superClass_.constructor.apply(a,Array.prototype.slice.call(arguments,1));for(var e=Array.prototype.slice.call(arguments,2),f=!1,g=a.constructor;g;g=g.superClass_&&g.superClass_.constructor)if(g.prototype[b]===d)f=!0;else if(f)return g.prototype[b].apply(a,
20 e
);if(a
[b
]===d
)return a
.constructor.prototype[b
].apply(a
,e
);throw Error("goog.base called from a method of one name to a method of a different name");};goog
.scope=function(a
){a
.call(goog
.global
)};goog
.MODIFY_FUNCTION_PROTOTYPES
=!0;
21 goog
.MODIFY_FUNCTION_PROTOTYPES
&&(Function
.prototype.bind
=Function
.prototype.bind
||function(a
,b
){if(1<arguments
.length
){var c
=Array
.prototype.slice
.call(arguments
,1);c
.unshift(this,a
);return goog
.bind
.apply(null,c
)}return goog
.bind(this,a
)},Function
.prototype.partial=function(a
){var b
=Array
.prototype.slice
.call(arguments
);b
.unshift(this,null);return goog
.bind
.apply(null,b
)},Function
.prototype.inherits=function(a
){goog
.inherits(this,a
)},Function
.prototype.mixin=function(a
){goog
.mixin(this.prototype,
22 a
)});var cvox
={VERBOSITY_VERBOSE
:0,VERBOSITY_BRIEF
:1,ChromeVox:function(){}};cvox
.ChromeVox
.host
=null;cvox
.ChromeVox
.msgs
=null;cvox
.ChromeVox
.isActive
=!0;cvox
.ChromeVox
.version
=null;cvox
.ChromeVox
.earcons
=null;cvox
.ChromeVox
.navigationManager
=null;cvox
.ChromeVox
.serializer
=null;cvox
.ChromeVox
.isStickyOn
=!1;cvox
.ChromeVox
.keyPrefixOn
=!1;cvox
.ChromeVox
.verbosity
=cvox
.VERBOSITY_VERBOSE
;cvox
.ChromeVox
.typingEcho
=0;cvox
.ChromeVox
.keyEcho
={};cvox
.ChromeVox
.position
={};cvox
.ChromeVox
.isChromeOS
=-1!=navigator
.userAgent
.indexOf("CrOS");
23 cvox
.ChromeVox
.isMac
=-1!=navigator
.platform
.indexOf("Mac");cvox
.ChromeVox
.modKeyStr
=cvox
.ChromeVox
.isChromeOS
?"Shift+Search":cvox
.ChromeVox
.isMac
?"Ctrl+Cmd":"Shift+Alt";cvox
.ChromeVox
.sequenceSwitchKeyCodes
=[];cvox
.ChromeVox
.visitedUrls
={};cvox
.ChromeVox
.markInUserCommand=function(){};cvox
.ChromeVox
.syncToNode=function(){};cvox
.ChromeVox
.speakNode=function(){};cvox
.ChromeVox
.executeUserCommand=function(){};cvox
.ChromeVox
.entireDocumentIsHidden
=!1;
24 cvox
.ChromeVox
.storeOn=function(a
){a
.isStickyOn
=cvox
.ChromeVox
.isStickyOn
;cvox
.ChromeVox
.navigationManager
.storeOn(a
)};cvox
.ChromeVox
.readFrom=function(a
){cvox
.ChromeVox
.isStickyOn
=a
.isStickyOn
;cvox
.ChromeVox
.navigationManager
.readFrom(a
)};cvox
.KeySequence=function(a
,b
,c
,d
){this.doubleTap
=!!d
;this.cvoxModifier
=void 0==b
?this.isCVoxModifierActive(a
):b
;this.stickyMode
=!!a
.stickyMode
;this.prefixKey
=!!a
.keyPrefix
;this.skipStripping
=!!c
;if(this.stickyMode
&&this.prefixKey
)throw"Prefix key and sticky mode cannot both be enabled: "+a
;a
=this.resolveChromeOSSpecialKeys_(a
);this.keys
={ctrlKey
:[],searchKeyHeld
:[],altKey
:[],altGraphKey
:[],shiftKey
:[],metaKey
:[],keyCode
:[]};this.extractKey_(a
)};
25 cvox
.KeySequence
.KEY_PRESS_CODE
={39:222,44:188,45:189,46:190,47:191,59:186,91:219,92:220,93:221};cvox
.KeySequence
.doubleTapCache
=[];cvox
.KeySequence
.prototype.addKeyEvent=function(a
){if(1<this.keys
.keyCode
.length
)return!1;this.extractKey_(a
);return!0};cvox
.KeySequence
.prototype.equals=function(a
){if(!this.checkKeyEquality_(a
)||this.doubleTap
!=a
.doubleTap
)return!1;if(this.cvoxModifier
===a
.cvoxModifier
)return!0;a
=this.cvoxModifier
?a
:this;return a
.stickyMode
||a
.prefixKey
};
26 cvox
.KeySequence
.prototype.extractKey_=function(a
){for(var b
in this.keys
)if("keyCode"==b
){var c
;"keypress"==a
.type
&&97<=a
[b
]&&122>=a
[b
]?c
=a
[b
]-32:"keypress"==a
.type
&&(c
=cvox
.KeySequence
.KEY_PRESS_CODE
[a
[b
]]);this.keys
[b
].push(c
||a
[b
])}else this.isKeyModifierActive(a
,b
)?this.keys
[b
].push(!0):this.keys
[b
].push(!1);this.cvoxModifier
&&this.rationalizeKeys_()};
27 cvox
.KeySequence
.prototype.rationalizeKeys_=function(){if(!this.skipStripping
){var a
=cvox
.ChromeVox
.modKeyStr
.split(/\+/g),b
=this.keys
.keyCode
.length
-1;-1!=a
.indexOf("Ctrl")&&(this.keys
.ctrlKey
[b
]=!1);-1!=a
.indexOf("Alt")&&(this.keys
.altKey
[b
]=!1);-1!=a
.indexOf("Shift")&&(this.keys
.shiftKey
[b
]=!1);var c
=this.getMetaKeyName_();if(-1!=a
.indexOf(c
))if("Search"==c
)this.keys
.searchKeyHeld
[b
]=!1;else if("Cmd"==c
||"Win"==c
)this.keys
.metaKey
[b
]=!1}};
28 cvox
.KeySequence
.prototype.getMetaKeyName_=function(){return cvox
.ChromeVox
.isChromeOS
?"Search":cvox
.ChromeVox
.isMac
?"Cmd":"Win"};cvox
.KeySequence
.prototype.checkKeyEquality_=function(a
){for(var b
in this.keys
)for(var c
=this.keys
[b
].length
;c
--;)if(this.keys
[b
][c
]!==a
.keys
[b
][c
])return!1;return!0};cvox
.KeySequence
.prototype.length=function(){return this.keys
.keyCode
.length
};cvox
.KeySequence
.prototype.isModifierKey=function(a
){return 16==a
||17==a
||18==a
||91==a
||93==a
};
29 cvox
.KeySequence
.prototype.isCVoxModifierActive=function(a
){var b
=cvox
.ChromeVox
.modKeyStr
.split(/\+/g);this.isKeyModifierActive(a
,"ctrlKey")&&(b
=b
.filter(function(a
){return"Ctrl"!=a
}));this.isKeyModifierActive(a
,"altKey")&&(b
=b
.filter(function(a
){return"Alt"!=a
}));this.isKeyModifierActive(a
,"shiftKey")&&(b
=b
.filter(function(a
){return"Shift"!=a
}));if(this.isKeyModifierActive(a
,"metaKey")||this.isKeyModifierActive(a
,"searchKeyHeld"))var c
=this.getMetaKeyName_(),b
=b
.filter(function(a
){return a
!=c
});
30 return 0==b
.length
};cvox
.KeySequence
.prototype.isKeyModifierActive=function(a
,b
){switch(b
){case "ctrlKey":return a
.ctrlKey
||17==a
.keyCode
;case "altKey":return a
.altKey
||18==a
.keyCode
;case "shiftKey":return a
.shiftKey
||16==a
.keyCode
;case "metaKey":return a
.metaKey
||!cvox
.ChromeVox
.isChromeOS
&&91==a
.keyCode
;case "searchKeyHeld":return cvox
.ChromeVox
.isChromeOS
&&91==a
.keyCode
||a
.searchKeyHeld
}return!1};
31 cvox
.KeySequence
.prototype.isAnyModifierActive=function(){for(var a
in this.keys
)for(var b
=0;b
<this.length();b
++)if(this.keys
[a
][b
]&&"keyCode"!=a
)return!0;return!1};
32 cvox
.KeySequence
.deserialize=function(a
){var b
={};b
.stickyMode
=void 0==a
.stickyMode
?!1:a
.stickyMode
;b
.prefixKey
=void 0==a
.prefixKey
?!1:a
.prefixKey
;var c
=1<a
.keys
.keyCode
.length
,d
={},e
;for(e
in a
.keys
)b
[e
]=a
.keys
[e
][0],c
&&(d
[e
]=a
.keys
[e
][1]);e
=new cvox
.KeySequence(b
,a
.cvoxModifier
,!0,a
.doubleTap
);c
&&(cvox
.ChromeVox
.sequenceSwitchKeyCodes
.push(new cvox
.KeySequence(b
,a
.cvoxModifier
)),e
.addKeyEvent(d
));a
.doubleTap
&&cvox
.KeySequence
.doubleTapCache
.push(e
);return e
};
33 cvox
.KeySequence
.fromStr=function(a
){var b
={},c
={},d
;d
=-1==a
.indexOf(">")?!1:!0;var e
=!1;b
.stickyMode
=!1;b
.prefixKey
=!1;a
=a
.split("+");for(var f
=0;f
<a
.length
;f
++)for(var g
=a
[f
].split(">"),h
=0;h
<g
.length
;h
++){if("#"==g
[h
].charAt(0)){var k
=parseInt(g
[h
].substr(1),10);0<h
?c
.keyCode
=k
:b
.keyCode
=k
}k
=g
[h
];1==g
[h
].length
?0<h
?c
.keyCode
=g
[h
].charCodeAt(0):b
.keyCode
=g
[h
].charCodeAt(0):(0<h
?cvox
.KeySequence
.setModifiersOnEvent_(k
,c
):cvox
.KeySequence
.setModifiersOnEvent_(k
,b
),"Cvox"==k
&&(e
=!0))}b
=new cvox
.KeySequence(b
,
34 e
);d
&&b
.addKeyEvent(c
);return b
};cvox
.KeySequence
.setModifiersOnEvent_=function(a
,b
){"Ctrl"==a
?(b
.ctrlKey
=!0,b
.keyCode
=17):"Alt"==a
?(b
.altKey
=!0,b
.keyCode
=18):"Shift"==a
?(b
.shiftKey
=!0,b
.keyCode
=16):"Search"==a
?(b
.searchKeyHeld
=!0,b
.keyCode
=91):"Cmd"==a
?(b
.metaKey
=!0,b
.keyCode
=91):"Win"==a
?(b
.metaKey
=!0,b
.keyCode
=91):"Insert"==a
&&(b
.keyCode
=45)};
35 cvox
.KeySequence
.prototype.resolveChromeOSSpecialKeys_=function(a
){if(!this.cvoxModifier
||this.stickyMode
||this.prefixKey
||!cvox
.ChromeVox
.isChromeOS
)return a
;var b
={},c
;for(c
in a
)b
[c
]=a
[c
];switch(b
.keyCode
){case 33:b
.keyCode
=38;break;case 34:b
.keyCode
=40;break;case 35:b
.keyCode
=39;break;case 36:b
.keyCode
=37;break;case 45:b
.keyCode
=190;break;case 46:b
.keyCode
=8;break;case 112:b
.keyCode
=49;break;case 113:b
.keyCode
=50;break;case 114:b
.keyCode
=51;break;case 115:b
.keyCode
=52;break;case 116:b
.keyCode
=
36 53;break;case 117:b
.keyCode
=54;break;case 118:b
.keyCode
=55;break;case 119:b
.keyCode
=56;break;case 120:b
.keyCode
=57;break;case 121:b
.keyCode
=48;break;case 122:b
.keyCode
=189;break;case 123:b
.keyCode
=187}return b
};cvox
.KeyUtil=function(){};cvox
.KeyUtil
.modeKeyPressTime
=0;cvox
.KeyUtil
.sequencing
=!1;cvox
.KeyUtil
.prevKeySequence
=null;cvox
.KeyUtil
.stickyKeySequence
=null;cvox
.KeyUtil
.maxSeqLength
=2;
37 cvox
.KeyUtil
.keyEventToKeySequence=function(a
){var b
=cvox
.KeyUtil
;b
.prevKeySequence
&&b
.maxSeqLength
==b
.prevKeySequence
.length()&&(b
.sequencing
=!1,b
.prevKeySequence
=null);var c
=b
.sequencing
||a
.keyPrefix
||a
.stickyMode
,d
=new cvox
.KeySequence(a
),e
=d
.cvoxModifier
;if(c
||e
){if(!b
.sequencing
&&b
.isSequenceSwitchKeyCode(d
))return b
.sequencing
=!0,b
.prevKeySequence
=d
;if(b
.sequencing
){if(b
.prevKeySequence
.addKeyEvent(a
))return d
=b
.prevKeySequence
,b
.prevKeySequence
=null,b
.sequencing
=!1,d
;throw"Think sequencing is enabled, yet util.prevKeySequence alreadyhas two key codes"+
38 b
.prevKeySequence
;}}else b
.sequencing
=!1;c
=(new Date
).getTime();if(cvox
.KeyUtil
.isDoubleTapKey(d
)&&b
.prevKeySequence
&&d
.equals(b
.prevKeySequence
)&&(e
=b
.modeKeyPressTime
,0<e
&&300>c
-e
))return d
=b
.prevKeySequence
,d
.doubleTap
=!0,b
.prevKeySequence
=null,b
.sequencing
=!1,cvox
.ChromeVox
.isChromeOS
&&a
.keyCode
==cvox
.KeyUtil
.getStickyKeyCode()&&(cvox
.ChromeVox
.searchKeyHeld
=!1),d
;b
.prevKeySequence
=d
;b
.modeKeyPressTime
=c
;return d
};
39 cvox
.KeyUtil
.keyCodeToString=function(a
){return 17==a
?"Ctrl":18==a
?"Alt":16==a
?"Shift":91==a
||93==a
?cvox
.ChromeVox
.isChromeOS
?"Search":cvox
.ChromeVox
.isMac
?"Cmd":"Win":45==a
?"Insert":65<=a
&&90>=a
?String
.fromCharCode(a
):48<=a
&&57>=a
?String
.fromCharCode(a
):"#"+a
};cvox
.KeyUtil
.modStringToKeyCode=function(a
){switch(a
){case "Ctrl":return 17;case "Alt":return 18;case "Shift":return 16;case "Cmd":case "Win":return 91}return-1};
40 cvox
.KeyUtil
.cvoxModKeyCodes=function(){var a
=cvox
.ChromeVox
.modKeyStr
.split(/\+/g);return a
=a
.map(function(a
){return cvox
.KeyUtil
.modStringToKeyCode(a
)})};cvox
.KeyUtil
.isSequenceSwitchKeyCode=function(a
){for(var b
=0;b
<cvox
.ChromeVox
.sequenceSwitchKeyCodes
.length
;b
++){var c
=cvox
.ChromeVox
.sequenceSwitchKeyCodes
[b
];if(c
.equals(a
))return!0}return!1};
41 cvox
.KeyUtil
.getReadableNameForKeyCode=function(a
){if(0==a
)return"Power button";if(17==a
)return"Control";if(18==a
)return"Alt";if(16==a
)return"Shift";if(9==a
)return"Tab";if(91==a
||93==a
)return cvox
.ChromeVox
.isChromeOS
?"Search":cvox
.ChromeVox
.isMac
?"Cmd":"Win";if(8==a
)return"Backspace";if(32==a
)return"Space";if(35==a
)return"end";if(36==a
)return"home";if(37==a
)return"Left arrow";if(38==a
)return"Up arrow";if(39==a
)return"Right arrow";if(40==a
)return"Down arrow";if(45==a
)return"Insert";if(13==a
)return"Enter";
42 if(27==a
)return"Escape";if(112==a
)return cvox
.ChromeVox
.isChromeOS
?"Back":"F1";if(113==a
)return cvox
.ChromeVox
.isChromeOS
?"Forward":"F2";if(114==a
)return cvox
.ChromeVox
.isChromeOS
?"Refresh":"F3";if(115==a
)return cvox
.ChromeVox
.isChromeOS
?"Toggle full screen":"F4";if(116==a
)return"F5";if(117==a
)return"F6";if(118==a
)return"F7";if(119==a
)return"F8";if(120==a
)return"F9";if(121==a
)return"F10";if(122==a
)return"F11";if(123==a
)return"F12";if(186==a
)return"Semicolon";if(187==a
)return"Equal sign";if(188==a
)return"Comma";
43 if(189==a
)return"Dash";if(190==a
)return"Period";if(191==a
)return"Forward slash";if(192==a
)return"Grave accent";if(219==a
)return"Open bracket";if(220==a
)return"Back slash";if(221==a
)return"Close bracket";if(222==a
)return"Single quote";if(115==a
)return"Toggle full screen";if(48<=a
&&90>=a
)return String
.fromCharCode(a
)};cvox
.KeyUtil
.getStickyKeyCode=function(){var a
=45;if(cvox
.ChromeVox
.isChromeOS
||cvox
.ChromeVox
.isMac
)a
=91;return a
};
44 cvox
.KeyUtil
.getStickyKeySequence=function(){if(null==cvox
.KeyUtil
.stickyKeySequence
){var a
=cvox
.KeyUtil
.getStickyKeyCode(),a
={keyCode
:a
,stickyMode
:!0},b
=new cvox
.KeySequence(a
);b
.addKeyEvent(a
);cvox
.KeyUtil
.stickyKeySequence
=b
}return cvox
.KeyUtil
.stickyKeySequence
};cvox
.KeyUtil
.getReadableNameForStr=function(){return null};
45 cvox
.KeyUtil
.keySequenceToString=function(a
,b
,c
){for(var d
="",e
=a
.length(),f
=0;f
<e
;f
++){""==d
||c
?""!=d
&&(d
+="+"):d
+=">";var g
="",h
;for(h
in a
.keys
)if(a
.keys
[h
][f
]){var k
="";switch(h
){case "ctrlKey":k
="Ctrl";break;case "searchKeyHeld":k
=cvox
.KeyUtil
.getReadableNameForKeyCode(91);break;case "altKey":k
="Alt";break;case "altGraphKey":k
="AltGraph";break;case "shiftKey":k
="Shift";break;case "metaKey":k
=cvox
.KeyUtil
.getReadableNameForKeyCode(91);break;case "keyCode":var l
=a
.keys
[h
][f
];a
.isModifierKey(l
)||
46 c
||(g
=b
?g
+cvox
.KeyUtil
.getReadableNameForKeyCode(l
):g
+cvox
.KeyUtil
.keyCodeToString(l
))}-1==d
.indexOf(k
)&&(g
+=k
+"+")}d
+=g
;"+"==d
[d
.length
-1]&&(d
=d
.slice(0,-1))}a
.cvoxModifier
||a
.prefixKey
?d
=""!=d
?"Cvox+"+d
:"Cvox":a
.stickyMode
&&(">"==d
[d
.length
-1]&&(d
=d
.slice(0,-1)),d
=d
+"+"+d
);return d
};cvox
.KeyUtil
.isDoubleTapKey=function(a
){var b
=!1,c
=a
.doubleTap
;a
.doubleTap
=!0;for(var d
=0,e
;e
=cvox
.KeySequence
.doubleTapCache
[d
];d
++)if(e
.equals(a
)){b
=!0;break}a
.doubleTap
=c
;return b
};cvox
.PlatformUtil
={};cvox
.PlatformFilter
={NONE
:0,WINDOWS
:1,MAC
:2,LINUX
:4,WML
:7,CHROMEOS
:8,ANDROID
:16};cvox
.PlatformUtil
.matchesPlatform=function(a
){var b
=navigator
.userAgent
;return void 0==a
?!0:-1!=b
.indexOf("Android")?0!=(a
&cvox
.PlatformFilter
.ANDROID
):-1!=b
.indexOf("Win")?0!=(a
&cvox
.PlatformFilter
.WINDOWS
):-1!=b
.indexOf("Mac")?0!=(a
&cvox
.PlatformFilter
.MAC
):-1!=b
.indexOf("Linux")?0!=(a
&cvox
.PlatformFilter
.LINUX
):-1!=b
.indexOf("CrOS")?0!=(a
&cvox
.PlatformFilter
.CHROMEOS
):!1};cvox
.KeyMap=function(a
){this.bindings_
=a
;this.commandToKey_
={};this.buildCommandToKey_()};cvox
.KeyMap
.KEYMAP_PATH
="chromevox/background/keymaps/";cvox
.KeyMap
.AVAILABLE_MAP_INFO
={keymap_classic
:{file
:"classic_keymap.json"},keymap_flat
:{file
:"flat_keymap.json"},keymap_experimental
:{file
:"experimental.json"}};cvox
.KeyMap
.DEFAULT_KEYMAP
=0;cvox
.KeyMap
.prototype.length=function(){return this.bindings_
.length
};cvox
.KeyMap
.prototype.keys=function(){return this.bindings_
.map(function(a
){return a
.sequence
})};
47 cvox
.KeyMap
.prototype.bindings=function(){return this.bindings_
};cvox
.KeyMap
.prototype.toJSON=function(){return JSON
.stringify({bindings
:this.bindings_
})};cvox
.KeyMap
.prototype.toLocalStorage=function(){localStorage
.keyBindings
=this.toJSON()};cvox
.KeyMap
.prototype.hasCommand=function(a
){if(null!=this.commandToKey_
)return void 0!=this.commandToKey_
[a
];for(var b
=0;b
<this.bindings_
.length
;b
++){var c
=this.bindings_
[b
];if(c
.command
==a
)return!0}return!1};
48 cvox
.KeyMap
.prototype.hasKey=function(a
){for(var b
=0;b
<this.bindings_
.length
;b
++){var c
=this.bindings_
[b
];if(c
.sequence
.equals(a
))return!0}return!1};cvox
.KeyMap
.prototype.commandForKey=function(a
){if(null!=a
)for(var b
=0;b
<this.bindings_
.length
;b
++){var c
=this.bindings_
[b
];if(c
.sequence
.equals(a
))return c
.command
}return null};
49 cvox
.KeyMap
.prototype.keyForCommand=function(a
){if(null!=this.commandToKey_
)return[this.commandToKey_
[a
]];for(var b
=[],c
=0;c
<this.bindings_
.length
;c
++){var d
=this.bindings_
[c
];d
.command
==a
&&b
.push(d
.sequence
)}return 0<b
.length
?b
:[]};cvox
.KeyMap
.prototype.merge=function(a
){for(var b
=a
.keys(),c
=!0,d
=0;d
<b
.length
;++d
){var e
=b
[d
],f
=a
.commandForKey(e
);"toggleStickyMode"!=f
&&(e
&&f
&&!this.hasKey(e
)&&!this.hasCommand(f
)?this.bind_(f
,e
):c
=!1)}return c
};
50 cvox
.KeyMap
.prototype.rebind=function(a
,b
){return this.hasCommand(a
)&&!this.hasKey(b
)?(this.bind_(a
,b
),!0):!1};cvox
.KeyMap
.prototype.bind_=function(a
,b
){for(var c
=!1,d
=0;d
<this.bindings_
.length
;d
++){var e
=this.bindings_
[d
];e
.command
==a
&&(delete e
.sequence
,e
.sequence
=b
,null!=this.commandToKey_
&&(this.commandToKey_
[e
.command
]=b
),c
=!0)}c
||(e
={command
:a
,sequence
:b
},this.bindings_
.push(e
),this.commandToKey_
[e
.command
]=e
.sequence
)};
51 cvox
.KeyMap
.fromDefaults=function(){return cvox
.KeyMap
.fromPath(cvox
.KeyMap
.KEYMAP_PATH
+cvox
.KeyMap
.AVAILABLE_MAP_INFO
.keymap_classic
.file
)};cvox
.KeyMap
.fromJSON=function(a
){try{var b
=JSON
.parse(a
).bindings
,b
=b
.filter(function(a
){return void 0===a
.sequence
.platformFilter
||cvox
.PlatformUtil
.matchesPlatform(a
.sequence
.platformFilter
)})}catch(c
){return null}if("object"!=typeof b
)return null;for(a
=0;a
<b
.length
;a
++){if(void 0==b
[a
].command
||void 0==b
[a
].sequence
)return null;b
[a
].sequence
=cvox
.KeySequence
.deserialize(b
[a
].sequence
)}return new cvox
.KeyMap(b
)};
52 cvox
.KeyMap
.fromLocalStorage=function(){return localStorage
.keyBindings
?cvox
.KeyMap
.fromJSON(localStorage
.keyBindings
):null};cvox
.KeyMap
.fromPath=function(a
){return cvox
.KeyMap
.fromJSON(cvox
.KeyMap
.readJSON_(a
))};cvox
.KeyMap
.fromCurrentKeyMap=function(){var a
=localStorage
.currentKeyMap
;return a
&&cvox
.KeyMap
.AVAILABLE_MAP_INFO
[a
]?cvox
.KeyMap
.fromPath(cvox
.KeyMap
.KEYMAP_PATH
+cvox
.KeyMap
.AVAILABLE_MAP_INFO
[a
].file
):cvox
.KeyMap
.fromDefaults()};
53 cvox
.KeyMap
.readJSON_=function(a
){var b
=chrome
.extension
.getURL(a
);if(!b
)throw"Invalid path: "+a
;a
=new XMLHttpRequest
;a
.open("GET",b
,!1);a
.send();return a
.responseText
};cvox
.KeyMap
.prototype.resetModifier=function(){localStorage
.cvoxKey
=cvox
.ChromeVox
.modKeyStr
};cvox
.KeyMap
.prototype.buildCommandToKey_=function(){for(var a
=0;a
<this.bindings_
.length
;a
++){var b
=this.bindings_
[a
];void 0==this.commandToKey_
[b
.command
]&&(this.commandToKey_
[b
.command
]=b
.sequence
)}};cvox
.CommandStore
={};cvox
.CommandStore
.categories=function(){var a
={},b
;for(b
in cvox
.CommandStore
.CMD_WHITELIST
){var c
=cvox
.CommandStore
.CMD_WHITELIST
[b
];c
.category
&&(a
[c
.category
]=!0)}b
=[];for(var d
in a
)b
.push(d
);return b
};cvox
.CommandStore
.messageForCommand=function(a
){return(cvox
.CommandStore
.CMD_WHITELIST
[a
]||{}).msgId
};cvox
.CommandStore
.categoryForCommand=function(a
){return(cvox
.CommandStore
.CMD_WHITELIST
[a
]||{}).category
};
54 cvox
.CommandStore
.commandsForCategory=function(a
){var b
=[],c
;for(c
in cvox
.CommandStore
.CMD_WHITELIST
){var d
=cvox
.CommandStore
.CMD_WHITELIST
[c
];a
==d
.category
&&b
.push(c
)}return b
};
55 cvox
.CommandStore
.CMD_WHITELIST
={toggleStickyMode
:{announce
:!1,msgId
:"toggle_sticky_mode",disallowOOBE
:!0,category
:"modifier_keys"},toggleKeyPrefix
:{announce
:!1,skipInput
:!0,msgId
:"prefix_key",disallowOOBE
:!0,category
:"modifier_keys"},passThroughMode
:{announce
:!1,msgId
:"pass_through_key_description",category
:"modifier_keys"},stopSpeech
:{announce
:!1,disallowContinuation
:!0,doDefault
:!0,msgId
:"stop_speech_key",category
:"controlling_speech"},toggleChromeVox
:{announce
:!1,platformFilter
:cvox
.PlatformFilter
.WML
,
56 msgId
:"toggle_chromevox_active",category
:"controlling_speech"},decreaseTtsRate
:{announce
:!1,msgId
:"decrease_tts_rate",category
:"controlling_speech"},increaseTtsRate
:{announce
:!1,msgId
:"increase_tts_rate",category
:"controlling_speech"},decreaseTtsPitch
:{announce
:!1,msgId
:"decrease_tts_pitch",category
:"controlling_speech"},increaseTtsPitch
:{announce
:!1,msgId
:"increase_tts_pitch",category
:"controlling_speech"},decreaseTtsVolume
:{announce
:!1,msgId
:"decrease_tts_volume",category
:"controlling_speech"},
57 increaseTtsVolume
:{announce
:!1,msgId
:"increase_tts_volume",category
:"controlling_speech"},cyclePunctuationEcho
:{announce
:!1,msgId
:"cycle_punctuation_echo",category
:"controlling_speech"},cycleTypingEcho
:{announce
:!1,msgId
:"cycle_typing_echo",category
:"controlling_speech"},toggleEarcons
:{announce
:!0,msgId
:"toggle_earcons",category
:"controlling_speech"},handleTab
:{allowEvents
:!0,msgId
:"handle_tab_next",disallowContinuation
:!0,category
:"navigation"},handleTabPrev
:{allowEvents
:!0,msgId
:"handle_tab_prev",
58 disallowContinuation
:!0,category
:"navigation"},forward
:{forward
:!0,announce
:!0,msgId
:"forward",category
:"navigation"},backward
:{backward
:!0,announce
:!0,msgId
:"backward",category
:"navigation"},right
:{forward
:!0,announce
:!0,msgId
:"right",category
:"navigation"},left
:{backward
:!0,announce
:!0,msgId
:"left",category
:"navigation"},previousGranularity
:{announce
:!0,msgId
:"previous_granularity",category
:"navigation"},nextGranularity
:{announce
:!0,msgId
:"next_granularity",category
:"navigation"},previousCharacter
:{backward
:!0,
59 announce
:!0,msgId
:"previous_character",skipInput
:!0,category
:"navigation"},nextCharacter
:{forward
:!0,announce
:!0,msgId
:"next_character",skipInput
:!0,category
:"navigation"},previousWord
:{backward
:!0,announce
:!0,msgId
:"previous_word",skipInput
:!0,category
:"navigation"},nextWord
:{forward
:!0,announce
:!0,msgId
:"next_word",skipInput
:!0,category
:"navigation"},previousLine
:{backward
:!0,announce
:!0,msgId
:"previous_line",category
:"navigation"},nextLine
:{forward
:!0,announce
:!0,msgId
:"next_line",category
:"navigation"},
60 previousSentence
:{backward
:!0,announce
:!0,msgId
:"previous_sentence",skipInput
:!0,category
:"navigation"},nextSentence
:{forward
:!0,announce
:!0,msgId
:"next_sentence",skipInput
:!0,category
:"navigation"},previousObject
:{backward
:!0,announce
:!0,msgId
:"previous_object",skipInput
:!0,category
:"navigation"},nextObject
:{forward
:!0,announce
:!0,msgId
:"next_object",skipInput
:!0,category
:"navigation"},previousGroup
:{backward
:!0,announce
:!0,msgId
:"previous_group",skipInput
:!0,category
:"navigation"},nextGroup
:{forward
:!0,
61 announce
:!0,msgId
:"next_group",skipInput
:!0,category
:"navigation"},jumpToTop
:{forward
:!0,announce
:!0,msgId
:"jump_to_top",category
:"navigation"},jumpToBottom
:{backward
:!0,announce
:!0,msgId
:"jump_to_bottom",category
:"navigation"},moveToStartOfLine
:{forward
:!0,announce
:!0},moveToEndOfLine
:{backward
:!0,announce
:!0},readFromHere
:{forward
:!0,announce
:!1,msgId
:"read_from_here",category
:"navigation"},performDefaultAction
:{disallowContinuation
:!0,msgId
:"perform_default_action",doDefault
:!0,skipInput
:!0,category
:"navigation"},
62 forceClickOnCurrentItem
:{announce
:!0,disallowContinuation
:!0,allowEvents
:!0,msgId
:"force_click_on_current_item",category
:"navigation"},forceDoubleClickOnCurrentItem
:{announce
:!0,allowEvents
:!0,disallowContinuation
:!0},readLinkURL
:{announce
:!1,msgId
:"read_link_url",category
:"information"},readCurrentTitle
:{announce
:!1,msgId
:"read_current_title",category
:"information"},readCurrentURL
:{announce
:!1,msgId
:"read_current_url",category
:"information"},fullyDescribe
:{announce
:!1,msgId
:"fully_describe",category
:"information"},
63 speakTimeAndDate
:{announce
:!1,msgId
:"speak_time_and_date",category
:"information"},toggleSelection
:{announce
:!0,msgId
:"toggle_selection",category
:"information"},toggleSearchWidget
:{announce
:!1,disallowContinuation
:!0,msgId
:"toggle_search_widget",category
:"information"},toggleKeyboardHelp
:{announce
:!1,disallowContinuation
:!0,msgId
:"show_power_key",category
:"help_commands"},help
:{announce
:!1,msgId
:"help",disallowOOBE
:!0,disallowContinuation
:!0,category
:"help_commands"},contextMenu
:{announce
:!1,disallowContinuation
:!0},
64 showOptionsPage
:{announce
:!1,disallowContinuation
:!0,msgId
:"show_options_page",disallowOOBE
:!0,category
:"help_commands"},showKbExplorerPage
:{announce
:!1,disallowContinuation
:!0,msgId
:"show_kb_explorer_page",disallowOOBE
:!0,category
:"help_commands"},showFormsList
:{announce
:!1,disallowContinuation
:!0,nodeList
:"formField",msgId
:"show_forms_list",category
:"overview"},showHeadingsList
:{announce
:!1,nodeList
:"heading",disallowContinuation
:!0,msgId
:"show_headings_list",category
:"overview"},showLandmarksList
:{announce
:!1,
65 nodeList
:"landmark",disallowContinuation
:!0,msgId
:"show_landmarks_list",category
:"overview"},showLinksList
:{announce
:!1,nodeList
:"link",disallowContinuation
:!0,msgId
:"show_links_list",category
:"overview"},showTablesList
:{announce
:!1,nodeList
:"table",disallowContinuation
:!0,msgId
:"show_tables_list",category
:"overview"},startHistoryRecording
:{announce
:!1},stopHistoryRecording
:{announce
:!1},enableConsoleTts
:{announce
:!1},autorunner
:{announce
:!1},nextArticle
:{forward
:!0,findNext
:"article"},nextButton
:{forward
:!0,
66 findNext
:"button",msgId
:"next_button",category
:"jump_commands"},nextCheckbox
:{forward
:!0,findNext
:"checkbox",msgId
:"next_checkbox",category
:"jump_commands"},nextComboBox
:{forward
:!0,findNext
:"combobox",msgId
:"next_combo_box",category
:"jump_commands"},nextControl
:{forward
:!0,findNext
:"control"},nextEditText
:{forward
:!0,findNext
:"editText",msgId
:"next_edit_text",category
:"jump_commands"},nextFormField
:{forward
:!0,findNext
:"formField",msgId
:"next_form_field",category
:"jump_commands"},nextGraphic
:{forward
:!0,
67 findNext
:"graphic",msgId
:"next_graphic",category
:"jump_commands"},nextHeading
:{forward
:!0,findNext
:"heading",msgId
:"next_heading",category
:"jump_commands"},nextHeading1
:{forward
:!0,findNext
:"heading1",msgId
:"next_heading1",category
:"jump_commands"},nextHeading2
:{forward
:!0,findNext
:"heading2",msgId
:"next_heading2",category
:"jump_commands"},nextHeading3
:{forward
:!0,findNext
:"heading3",msgId
:"next_heading3",category
:"jump_commands"},nextHeading4
:{forward
:!0,findNext
:"heading4",msgId
:"next_heading4",
68 category
:"jump_commands"},nextHeading5
:{forward
:!0,findNext
:"heading5",msgId
:"next_heading5",category
:"jump_commands"},nextHeading6
:{forward
:!0,findNext
:"heading6",msgId
:"next_heading6",category
:"jump_commands"},nextLandmark
:{forward
:!0,findNext
:"landmark",msgId
:"next_landmark",category
:"jump_commands"},nextLink
:{forward
:!0,findNext
:"link",msgId
:"next_link",category
:"jump_commands"},nextList
:{forward
:!0,findNext
:"list",msgId
:"next_list",category
:"jump_commands"},nextListItem
:{forward
:!0,findNext
:"listItem",
69 msgId
:"next_list_item",category
:"jump_commands"},nextMath
:{forward
:!0,findNext
:"math",msgId
:"next_math",category
:"jump_commands"},nextMedia
:{forward
:!0,findNext
:"media",msgId
:"next_media",category
:"jump_commands"},nextRadio
:{forward
:!0,findNext
:"radio",msgId
:"next_radio",category
:"jump_commands"},nextSection
:{forward
:!0,findNext
:"section"},nextSlider
:{forward
:!0,findNext
:"slider"},nextTable
:{forward
:!0,findNext
:"table",msgId
:"next_table",category
:"jump_commands"},nextVisitedLink
:{forward
:!0,findNext
:"visitedLink",
70 msgId
:"next_visited_link",category
:"jump_commands"},previousArticle
:{backward
:!0,findNext
:"article"},previousButton
:{backward
:!0,findNext
:"button",msgId
:"previous_button",category
:"jump_commands"},previousCheckbox
:{backward
:!0,findNext
:"checkbox",msgId
:"previous_checkbox",category
:"jump_commands"},previousComboBox
:{backward
:!0,findNext
:"combobox",msgId
:"previous_combo_box",category
:"jump_commands"},previousControl
:{backward
:!0,findNext
:"control"},previousEditText
:{backward
:!0,findNext
:"editText",
71 msgId
:"previous_edit_text",category
:"jump_commands"},previousFormField
:{backward
:!0,findNext
:"formField",msgId
:"previous_form_field",category
:"jump_commands"},previousGraphic
:{backward
:!0,findNext
:"graphic",msgId
:"previous_graphic",category
:"jump_commands"},previousHeading
:{backward
:!0,findNext
:"heading",msgId
:"previous_heading",category
:"jump_commands"},previousHeading1
:{backward
:!0,findNext
:"heading1",msgId
:"previous_heading1",category
:"jump_commands"},previousHeading2
:{backward
:!0,findNext
:"heading2",
72 msgId
:"previous_heading2",category
:"jump_commands"},previousHeading3
:{backward
:!0,findNext
:"heading3",msgId
:"previous_heading3",category
:"jump_commands"},previousHeading4
:{backward
:!0,findNext
:"heading4",msgId
:"previous_heading4",category
:"jump_commands"},previousHeading5
:{backward
:!0,findNext
:"heading5",msgId
:"previous_heading5",category
:"jump_commands"},previousHeading6
:{backward
:!0,findNext
:"heading6",msgId
:"previous_heading6",category
:"jump_commands"},previousLandmark
:{backward
:!0,findNext
:"landmark",
73 msgId
:"previous_landmark",category
:"jump_commands"},previousLink
:{backward
:!0,findNext
:"link",msgId
:"previous_link",category
:"jump_commands"},previousList
:{backward
:!0,findNext
:"list",msgId
:"previous_list",category
:"jump_commands"},previousListItem
:{backward
:!0,findNext
:"listItem",msgId
:"previous_list_item",category
:"jump_commands"},previousMath
:{backward
:!0,findNext
:"math",msgId
:"previous_math",category
:"jump_commands"},previousMedia
:{backward
:!0,findNext
:"media",msgId
:"previous_media",category
:"jump_commands"},
74 previousRadio
:{backward
:!0,findNext
:"radio",msgId
:"previous_radio",category
:"jump_commands"},previousSection
:{backward
:!0,findNext
:"section"},previousSlider
:{backward
:!0,findNext
:"slider"},previousTable
:{backward
:!0,findNext
:"table",msgId
:"previous_table",category
:"jump_commands"},previousVisitedLink
:{backward
:!0,findNext
:"visitedLink",msgId
:"previous_visited_link",category
:"jump_commands"},announceHeaders
:{announce
:!1,msgId
:"announce_headers",category
:"tables"},speakTableLocation
:{announce
:!1,msgId
:"speak_table_location",
75 category
:"tables"},goToFirstCell
:{announce
:!0,msgId
:"skip_to_beginning",category
:"tables"},goToLastCell
:{announce
:!0,msgId
:"skip_to_end",category
:"tables"},goToRowFirstCell
:{announce
:!0,msgId
:"skip_to_row_beginning",category
:"tables"},goToRowLastCell
:{announce
:!0,msgId
:"skip_to_row_end",category
:"tables"},goToColFirstCell
:{announce
:!0,msgId
:"skip_to_col_beginning",category
:"tables"},goToColLastCell
:{announce
:!0,msgId
:"skip_to_col_end",category
:"tables"},previousRow
:{backward
:!0,announce
:!0,skipInput
:!0},
76 previousCol
:{backward
:!0,announce
:!0,skipInput
:!0},nextRow
:{forward
:!0,announce
:!0,skipInput
:!0},nextCol
:{forward
:!0,announce
:!0,skipInput
:!0},enterShifter
:{announce
:!0,msgId
:"enter_content",category
:"navigation"},exitShifter
:{announce
:!0,msgId
:"exit_content",category
:"navigation"},exitShifterContent
:{announce
:!0},openLongDesc
:{announce
:!1,msgId
:"open_long_desc",category
:"information"},pauseAllMedia
:{announce
:!1,msgId
:"pause_all_media",category
:"information"},toggleSemantics
:{announce
:!1,msgId
:"toggle_semantics",
77 category
:"information"},routing
:{announce
:!0,msgId
:"braille_routing",category
:"braille"},pan_left
:{backward
:!0,announce
:!0,msgId
:"braille_pan_left",category
:"braille"},pan_right
:{forward
:!0,announce
:!0,msgId
:"braille_pan_right",category
:"braille"},line_up
:{backward
:!0,announce
:!0,msgId
:"braille_line_up",category
:"braille"},line_down
:{forward
:!0,announce
:!0,msgId
:"braille_line_down",category
:"braille"},top
:{forward
:!0,announce
:!0,msgId
:"braille_top",category
:"braille"},bottom
:{backward
:!0,announce
:!0,
78 msgId
:"braille_bottom",category
:"braille"},debug
:{announce
:!1},nop
:{announce
:!1}};
79 cvox
.CommandStore
.NODE_INFO_MAP
={checkbox
:{predicate
:"checkboxPredicate",forwardError
:"no_next_checkbox",backwardError
:"no_previous_checkbox",typeMsg
:"aria_role_checkbox"},radio
:{predicate
:"radioPredicate",forwardError
:"no_next_radio_button",backwardError
:"no_previous_radio_button",typeMsg
:"aria_role_radio"},slider
:{predicate
:"sliderPredicate",forwardError
:"no_next_slider",backwardError
:"no_previous_slider",typeMsg
:"aria_role_slider"},graphic
:{predicate
:"graphicPredicate",forwardError
:"no_next_graphic",
80 backwardError
:"no_previous_graphic",typeMsg
:"UNUSED"},article
:{predicate
:"articlePredicate",forwardError
:"no_next_ARTICLE",backwardError
:"no_previous_ARTICLE",typeMsg
:"TAG_ARTICLE"},button
:{predicate
:"buttonPredicate",forwardError
:"no_next_button",backwardError
:"no_previous_button",typeMsg
:"aria_role_button"},combobox
:{predicate
:"comboBoxPredicate",forwardError
:"no_next_combo_box",backwardError
:"no_previous_combo_box",typeMsg
:"aria_role_combobox"},editText
:{predicate
:"editTextPredicate",forwardError
:"no_next_edit_text",
81 backwardError
:"no_previous_edit_text",typeMsg
:"input_type_text"},heading
:{predicate
:"headingPredicate",forwardError
:"no_next_heading",backwardError
:"no_previous_heading",typeMsg
:"aria_role_heading"},heading1
:{predicate
:"heading1Predicate",forwardError
:"no_next_heading_1",backwardError
:"no_previous_heading_1"},heading2
:{predicate
:"heading2Predicate",forwardError
:"no_next_heading_2",backwardError
:"no_previous_heading_2"},heading3
:{predicate
:"heading3Predicate",forwardError
:"no_next_heading_3",backwardError
:"no_previous_heading_3"},
82 heading4
:{predicate
:"heading4Predicate",forwardError
:"no_next_heading_4",backwardError
:"no_previous_heading_4"},heading5
:{predicate
:"heading5Predicate",forwardError
:"no_next_heading_5",backwardError
:"no_previous_heading_5"},heading6
:{predicate
:"heading6Predicate",forwardError
:"no_next_heading_6",backwardError
:"no_previous_heading_6"},link
:{predicate
:"linkPredicate",forwardError
:"no_next_link",backwardError
:"no_previous_link",typeMsg
:"aria_role_link"},table
:{predicate
:"tablePredicate",forwardError
:"no_next_table",
83 backwardError
:"no_previous_table",typeMsg
:"table_strategy"},visitedLink
:{predicate
:"visitedLinkPredicate",forwardError
:"no_next_visited_link",backwardError
:"no_previous_visited_link",typeMsg
:"tag_link"},list
:{predicate
:"listPredicate",forwardError
:"no_next_list",backwardError
:"no_previous_list",typeMsg
:"aria_role_list"},listItem
:{predicate
:"listItemPredicate",forwardError
:"no_next_list_item",backwardError
:"no_previous_list_item",typeMsg
:"aria_role_listitem"},formField
:{predicate
:"formFieldPredicate",
84 forwardError
:"no_next_form_field",backwardError
:"no_previous_form_field",typeMsg
:"aria_role_form"},landmark
:{predicate
:"landmarkPredicate",forwardError
:"no_next_landmark",backwardError
:"no_previous_landmark",typeMsg
:"role_landmark"},math
:{predicate
:"mathPredicate",forwardError
:"no_next_math",backwardError
:"no_previous_math",typeMsg
:"math_expr"},media
:{predicate
:"mediaPredicate",forwardError
:"no_next_media_widget",backwardError
:"no_previous_media_widget"},section
:{predicate
:"sectionPredicate",forwardError
:"no_next_section",
85 backwardError
:"no_previous_section"},control
:{predicate
:"controlPredicate",forwardError
:"no_next_control",backwardError
:"no_previous_control"}};cvox
.Cursor=function(a
,b
,c
){this.node
=a
;this.index
=b
;this.text
=c
};cvox
.Cursor
.prototype.clone=function(){return new cvox
.Cursor(this.node
,this.index
,this.text
)};cvox
.Cursor
.prototype.copyFrom=function(a
){this.node
=a
.node
;this.index
=a
.index
;this.text
=a
.text
};cvox
.Cursor
.prototype.equals=function(a
){return this.node
==a
.node
&&this.index
==a
.index
&&this.text
==a
.text
};goog
.debug
={};goog
.debug
.Error=function(a
){if(Error
.captureStackTrace
)Error
.captureStackTrace(this,goog
.debug
.Error
);else{var b
=Error().stack
;b
&&(this.stack
=b
)}a
&&(this.message
=String(a
))};goog
.inherits(goog
.debug
.Error
,Error
);goog
.debug
.Error
.prototype.name
="CustomError";goog
.dom
={};goog
.dom
.NodeType
={ELEMENT
:1,ATTRIBUTE
:2,TEXT
:3,CDATA_SECTION
:4,ENTITY_REFERENCE
:5,ENTITY
:6,PROCESSING_INSTRUCTION
:7,COMMENT
:8,DOCUMENT
:9,DOCUMENT_TYPE
:10,DOCUMENT_FRAGMENT
:11,NOTATION
:12};goog
.string
={};goog
.string
.Unicode
={NBSP
:"\u00a0"};goog
.string
.startsWith=function(a
,b
){return 0==a
.lastIndexOf(b
,0)};goog
.string
.endsWith=function(a
,b
){var c
=a
.length
-b
.length
;return 0<=c
&&a
.indexOf(b
,c
)==c
};goog
.string
.caseInsensitiveStartsWith=function(a
,b
){return 0==goog
.string
.caseInsensitiveCompare(b
,a
.substr(0,b
.length
))};goog
.string
.caseInsensitiveEndsWith=function(a
,b
){return 0==goog
.string
.caseInsensitiveCompare(b
,a
.substr(a
.length
-b
.length
,b
.length
))};
86 goog
.string
.caseInsensitiveEquals=function(a
,b
){return a
.toLowerCase()==b
.toLowerCase()};goog
.string
.subs=function(a
,b
){for(var c
=a
.split("%s"),d
="",e
=Array
.prototype.slice
.call(arguments
,1);e
.length
&&1<c
.length
;)d
+=c
.shift()+e
.shift();return d
+c
.join("%s")};goog
.string
.collapseWhitespace=function(a
){return a
.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")};goog
.string
.isEmpty=function(a
){return/^[\s\xa0]*$/.test(a
)};goog
.string
.isEmptySafe=function(a
){return goog
.string
.isEmpty(goog
.string
.makeSafe(a
))};
87 goog
.string
.isBreakingWhitespace=function(a
){return!/[^\t\n\r ]/.test(a
)};goog
.string
.isAlpha=function(a
){return!/[^a-zA-Z]/.test(a
)};goog
.string
.isNumeric=function(a
){return!/[^0-9]/.test(a
)};goog
.string
.isAlphaNumeric=function(a
){return!/[^a-zA-Z0-9]/.test(a
)};goog
.string
.isSpace=function(a
){return" "==a
};goog
.string
.isUnicodeChar=function(a
){return 1==a
.length
&&" "<=a
&&"~">=a
||"\u0080"<=a
&&"\ufffd">=a
};goog
.string
.stripNewlines=function(a
){return a
.replace(/(\r\n|\r|\n)+/g," ")};
88 goog
.string
.canonicalizeNewlines=function(a
){return a
.replace(/(\r\n|\r|\n)/g,"\n")};goog
.string
.normalizeWhitespace=function(a
){return a
.replace(/\xa0|\s/g," ")};goog
.string
.normalizeSpaces=function(a
){return a
.replace(/\xa0|[ \t]+/g," ")};goog
.string
.collapseBreakingSpaces=function(a
){return a
.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")};goog
.string
.trim=function(a
){return a
.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};
89 goog
.string
.trimLeft=function(a
){return a
.replace(/^[\s\xa0]+/,"")};goog
.string
.trimRight=function(a
){return a
.replace(/[\s\xa0]+$/,"")};goog
.string
.caseInsensitiveCompare=function(a
,b
){var c
=String(a
).toLowerCase(),d
=String(b
).toLowerCase();return c
<d
?-1:c
==d
?0:1};goog
.string
.numerateCompareRegExp_
=/(\.\d+)|(\d+)|(\D+)/g;
90 goog
.string
.numerateCompare=function(a
,b
){if(a
==b
)return 0;if(!a
)return-1;if(!b
)return 1;for(var c
=a
.toLowerCase().match(goog
.string
.numerateCompareRegExp_
),d
=b
.toLowerCase().match(goog
.string
.numerateCompareRegExp_
),e
=Math
.min(c
.length
,d
.length
),f
=0;f
<e
;f
++){var g
=c
[f
],h
=d
[f
];if(g
!=h
)return c
=parseInt(g
,10),!isNaN(c
)&&(d
=parseInt(h
,10),!isNaN(d
)&&c
-d
)?c
-d
:g
<h
?-1:1}return c
.length
!=d
.length
?c
.length
-d
.length
:a
<b
?-1:1};goog
.string
.urlEncode=function(a
){return encodeURIComponent(String(a
))};
91 goog
.string
.urlDecode=function(a
){return decodeURIComponent(a
.replace(/\+/g," "))};goog
.string
.newLineToBr=function(a
,b
){return a
.replace(/(\r\n|\r|\n)/g,b
?"<br />":"<br>")};
92 goog
.string
.htmlEscape=function(a
,b
){if(b
)return a
.replace(goog
.string
.amperRe_
,"&").replace(goog
.string
.ltRe_
,"<").replace(goog
.string
.gtRe_
,">").replace(goog
.string
.quotRe_
,""").replace(goog
.string
.singleQuoteRe_
,"'");if(!goog
.string
.allRe_
.test(a
))return a
;-1!=a
.indexOf("&")&&(a
=a
.replace(goog
.string
.amperRe_
,"&"));-1!=a
.indexOf("<")&&(a
=a
.replace(goog
.string
.ltRe_
,"<"));-1!=a
.indexOf(">")&&(a
=a
.replace(goog
.string
.gtRe_
,">"));-1!=a
.indexOf('"')&&(a
=a
.replace(goog
.string
.quotRe_
,
93 """));-1!=a
.indexOf("'")&&(a
=a
.replace(goog
.string
.singleQuoteRe_
,"'"));return a
};goog
.string
.amperRe_
=/&/g;goog.string.ltRe_=/</g;goog.string.gtRe_=/>/g;goog.string.quotRe_=/"/g;goog.string.singleQuoteRe_=/'/g;goog.string.allRe_=/[&<>"']/;goog.string.unescapeEntities=function(a){return goog.string.contains(a,"&")?"document"in goog.global?goog.string.unescapeEntitiesUsingDom_(a):goog.string.unescapePureXmlEntities_(a):a};
94 goog.string.unescapeEntitiesWithDocument=function(a,b){return goog.string.contains(a,"&")?goog.string.unescapeEntitiesUsingDom_(a,b):a};
95 goog.string.unescapeEntitiesUsingDom_=function(a,b){var c={"&":"&","<":"<",">":">",""":'"'},d;d=b?b.createElement("div
"):document.createElement("div
");return a.replace(goog.string.HTML_ENTITY_PATTERN_,function(a,b){var g=c[a];if(g)return g;if("#"==b.charAt(0)){var h=Number("0"+b.substr(1));isNaN(h)||(g=String.fromCharCode(h))}g||(d.innerHTML=a+" ",g=d.firstChild.nodeValue.slice(0,-1));return c[a]=g})};
96 goog.string.unescapePureXmlEntities_=function(a){return a.replace(/&([^;]+);/g,function(a,c){switch(c){case "amp
":return"&";case "lt
":return"<";case "gt
":return">";case "quot
":return'"';default:if("#"==c.charAt(0)){var d=Number("0"+c.substr(1));if(!isNaN(d))return String.fromCharCode(d)}return a}})};goog.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g;goog.string.whitespaceEscape=function(a,b){return goog.string.newLineToBr(a.replace(/ /g,"  "),b)};
97 goog.string.stripQuotes=function(a,b){for(var c=b.length,d=0;d<c;d++){var e=1==c?b:b.charAt(d);if(a.charAt(0)==e&&a.charAt(a.length-1)==e)return a.substring(1,a.length-1)}return a};goog.string.truncate=function(a,b,c){c&&(a=goog.string.unescapeEntities(a));a.length>b&&(a=a.substring(0,b-3)+"...");c&&(a=goog.string.htmlEscape(a));return a};
98 goog.string.truncateMiddle=function(a,b,c,d){c&&(a=goog.string.unescapeEntities(a));if(d&&a.length>b){d>b&&(d=b);var e=a.length-d;b-=d;a=a.substring(0,b)+"..."+a.substring(e)}else a.length>b&&(e=Math.floor(b/2),d=a.length-e,e+=b%2,a=a.substring(0,e)+"..."+a.substring(d));c&&(a=goog.string.htmlEscape(a));return a};goog.string.specialEscapeChars_={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\"};goog.string.jsEscapeCache_={"'":"\\'"};
99 goog.string.quote=function(a){a=String(a);if(a.quote)return a.quote();for(var b=['"'],c=0;c<a.length;c++){var d=a.charAt(c),e=d.charCodeAt(0);b[c+1]=goog.string.specialEscapeChars_[d]||(31<e&&127>e?d:goog.string.escapeChar(d))}b.push('"');return b.join("")};goog.string.escapeString=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=goog.string.escapeChar(a.charAt(c));return b.join("")};
100 goog.string.escapeChar=function(a){if(a in goog.string.jsEscapeCache_)return goog.string.jsEscapeCache_[a];if(a in goog.string.specialEscapeChars_)return goog.string.jsEscapeCache_[a]=goog.string.specialEscapeChars_[a];var b=a,c=a.charCodeAt(0);if(31<c&&127>c)b=a;else{if(256>c){if(b="\\x",16>c||256<c)b+="0"}else b="\\u",4096>c&&(b+="0");b+=c.toString(16).toUpperCase()}return goog.string.jsEscapeCache_[a]=b};goog.string.toMap=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=!0;return b};
101 goog.string.contains=function(a,b){return-1!=a.indexOf(b)};goog.string.countOf=function(a,b){return a&&b?a.split(b).length-1:0};goog.string.removeAt=function(a,b,c){var d=a;0<=b&&b<a.length&&0<c&&(d=a.substr(0,b)+a.substr(b+c,a.length-b-c));return d};goog.string.remove=function(a,b){var c=RegExp(goog.string.regExpEscape(b),"");return a.replace(c,"")};goog.string.removeAll=function(a,b){var c=RegExp(goog.string.regExpEscape(b),"g");return a.replace(c,"")};
102 goog.string.regExpEscape=function(a){return String(a).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};goog.string.repeat=function(a,b){return Array(b+1).join(a)};goog.string.padNumber=function(a,b,c){a=goog.isDef(c)?a.toFixed(c):String(a);c=a.indexOf(".");-1==c&&(c=a.length);return goog.string.repeat("0",Math.max(0,b-c))+a};goog.string.makeSafe=function(a){return null==a?"":String(a)};goog.string.buildString=function(a){return Array.prototype.join.call(arguments,"")};
103 goog.string.getRandomString=function(){var a=2147483648;return Math.floor(Math.random()*a).toString(36)+Math.abs(Math.floor(Math.random()*a)^goog.now()).toString(36)};
104 goog.string.compareVersions=function(a,b){for(var c=0,d=goog.string.trim(String(a)).split("."),e=goog.string.trim(String(b)).split("."),f=Math.max(d.length,e.length),g=0;0==c&&g<f;g++){var h=d[g]||"",k=e[g]||"",l=/(\d*)(\D*)/g,m=/(\d*)(\D*)/g;do{var p=l.exec(h)||["","",""],q=m.exec(k)||["","",""];if(0==p[0].length&&0==q[0].length)break;var c=0==p[1].length?0:parseInt(p[1],10),n=0==q[1].length?0:parseInt(q[1],10),c=goog.string.compareElements_(c,n)||goog.string.compareElements_(0==p[2].length,0==q[2].length)||
105 goog.string.compareElements_(p[2],q[2])}while(0==c)}return c};goog.string.compareElements_=function(a,b){return a<b?-1:a>b?1:0};goog.string.HASHCODE_MAX_=4294967296;goog.string.hashCode=function(a){for(var b=0,c=0;c<a.length;++c)b=31*b+a.charCodeAt(c),b%=goog.string.HASHCODE_MAX_;return b};goog.string.uniqueStringCounter_=2147483648*Math.random()|0;goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++};
106 goog.string.toNumber=function(a){var b=Number(a);return 0==b&&goog.string.isEmpty(a)?NaN:b};goog.string.isLowerCamelCase=function(a){return/^[a-z]+([A-Z][a-z]*)*$/.test(a)};goog.string.isUpperCamelCase=function(a){return/^([A-Z][a-z]*)+$/.test(a)};goog.string.toCamelCase=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};goog.string.toSelectorCase=function(a){return String(a).replace(/([A-Z])/g,"-$1").toLowerCase()};
107 goog.string.toTitleCase=function(a,b){var c=goog.isString(b)?goog.string.regExpEscape(b):"\\s",c=c?"|["+c+"]+":"",c=RegExp("(^"+c+")([a-z])","g");return a.replace(c,function(a,b,c){return b+c.toUpperCase()})};goog.string.parseInt=function(a){isFinite(a)&&(a=String(a));return goog.isString(a)?/^\s*-?0x/i.test(a)?parseInt(a,16):parseInt(a,10):NaN};goog.string.splitLimit=function(a,b,c){a=a.split(b);for(var d=[];0<c&&a.length;)d.push(a.shift()),c--;a.length&&d.push(a.join(b));return d};goog.asserts={};goog.asserts.ENABLE_ASSERTS=goog.DEBUG;goog.asserts.AssertionError=function(a,b){b.unshift(a);goog.debug.Error.call(this,goog.string.subs.apply(null,b));b.shift()};goog.inherits(goog.asserts.AssertionError,goog.debug.Error);goog.asserts.AssertionError.prototype.name="AssertionError";goog.asserts.doAssertFailure_=function(a,b,c,d){var e="Assertion failed";if(c)var e=e+(": "+c),f=d;else a&&(e+=": "+a,f=b);throw new goog.asserts.AssertionError(""+e,f||[]);};
108 goog.asserts.assert=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!a&&goog.asserts.doAssertFailure_("",null,b,Array.prototype.slice.call(arguments,2));return a};goog.asserts.fail=function(a,b){if(goog.asserts.ENABLE_ASSERTS)throw new goog.asserts.AssertionError("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1));};
109 goog.asserts.assertNumber=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isNumber(a)&&goog.asserts.doAssertFailure_("Expected number but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};goog.asserts.assertString=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isString(a)&&goog.asserts.doAssertFailure_("Expected string but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};
110 goog.asserts.assertFunction=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isFunction(a)&&goog.asserts.doAssertFailure_("Expected function but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};goog.asserts.assertObject=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isObject(a)&&goog.asserts.doAssertFailure_("Expected object but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};
111 goog.asserts.assertArray=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isArray(a)&&goog.asserts.doAssertFailure_("Expected array but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};goog.asserts.assertBoolean=function(a,b,c){goog.asserts.ENABLE_ASSERTS&&!goog.isBoolean(a)&&goog.asserts.doAssertFailure_("Expected boolean but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};
112 goog.asserts.assertElement=function(a,b,c){!goog.asserts.ENABLE_ASSERTS||goog.isObject(a)&&a.nodeType==goog.dom.NodeType.ELEMENT||goog.asserts.doAssertFailure_("Expected Element but got %s: %s.",[goog.typeOf(a),a],b,Array.prototype.slice.call(arguments,2));return a};goog.asserts.assertInstanceof=function(a,b,c,d){!goog.asserts.ENABLE_ASSERTS||a instanceof b||goog.asserts.doAssertFailure_("instanceof check failed.",null,c,Array.prototype.slice.call(arguments,3));return a};
113 goog.asserts.assertObjectPrototypeIsIntact=function(){for(var a in Object.prototype)goog.asserts.fail(a+" should not be enumerable in Object.prototype.")};goog.array={};goog.NATIVE_ARRAY_PROTOTYPES=goog.TRUSTED_SITE;goog.array.ASSUME_NATIVE_FUNCTIONS=!1;goog.array.peek=function(a){return a[a.length-1]};goog.array.ARRAY_PROTOTYPE_=Array.prototype;
114 goog.array.indexOf=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.indexOf)?function(a,b,c){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(goog.isString(a))return goog.isString(b)&&1==b.length?a.indexOf(b,c):-1;for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1};
115 goog.array.lastIndexOf=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.lastIndexOf)?function(a,b,c){goog.asserts.assert(null!=a.length);c=null==c?a.length-1:c;return goog.array.ARRAY_PROTOTYPE_.lastIndexOf.call(a,b,c)}:function(a,b,c){c=null==c?a.length-1:c;0>c&&(c=Math.max(0,a.length+c));if(goog.isString(a))return goog.isString(b)&&1==b.length?a.lastIndexOf(b,c):-1;for(;0<=c;c--)if(c in a&&a[c]===b)return c;return-1};
116 goog.array.forEach=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.forEach)?function(a,b,c){goog.asserts.assert(null!=a.length);goog.array.ARRAY_PROTOTYPE_.forEach.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,f=0;f<d;f++)f in e&&b.call(c,e[f],f,a)};goog.array.forEachRight=function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,d=d-1;0<=d;--d)d in e&&b.call(c,e[d],d,a)};
117 goog.array.filter=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.filter)?function(a,b,c){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.filter.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=[],f=0,g=goog.isString(a)?a.split(""):a,h=0;h<d;h++)if(h in g){var k=g[h];b.call(c,k,h,a)&&(e[f++]=k)}return e};
118 goog.array.map=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.map)?function(a,b,c){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.map.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=Array(d),f=goog.isString(a)?a.split(""):a,g=0;g<d;g++)g in f&&(e[g]=b.call(c,f[g],g,a));return e};
119 goog.array.reduce=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.reduce)?function(a,b,c,d){goog.asserts.assert(null!=a.length);d&&(b=goog.bind(b,d));return goog.array.ARRAY_PROTOTYPE_.reduce.call(a,b,c)}:function(a,b,c,d){var e=c;goog.array.forEach(a,function(c,g){e=b.call(d,e,c,g,a)});return e};
120 goog.array.reduceRight=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.reduceRight)?function(a,b,c,d){goog.asserts.assert(null!=a.length);d&&(b=goog.bind(b,d));return goog.array.ARRAY_PROTOTYPE_.reduceRight.call(a,b,c)}:function(a,b,c,d){var e=c;goog.array.forEachRight(a,function(c,g){e=b.call(d,e,c,g,a)});return e};
121 goog.array.some=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.some)?function(a,b,c){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.some.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return!0;return!1};
122 goog.array.every=goog.NATIVE_ARRAY_PROTOTYPES&&(goog.array.ASSUME_NATIVE_FUNCTIONS||goog.array.ARRAY_PROTOTYPE_.every)?function(a,b,c){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.every.call(a,b,c)}:function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&!b.call(c,e[f],f,a))return!1;return!0};goog.array.count=function(a,b,c){var d=0;goog.array.forEach(a,function(a,f,g){b.call(c,a,f,g)&&++d},c);return d};
123 goog.array.find=function(a,b,c){b=goog.array.findIndex(a,b,c);return 0>b?null:goog.isString(a)?a.charAt(b):a[b]};goog.array.findIndex=function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,f=0;f<d;f++)if(f in e&&b.call(c,e[f],f,a))return f;return-1};goog.array.findRight=function(a,b,c){b=goog.array.findIndexRight(a,b,c);return 0>b?null:goog.isString(a)?a.charAt(b):a[b]};
124 goog.array.findIndexRight=function(a,b,c){for(var d=a.length,e=goog.isString(a)?a.split(""):a,d=d-1;0<=d;d--)if(d in e&&b.call(c,e[d],d,a))return d;return-1};goog.array.contains=function(a,b){return 0<=goog.array.indexOf(a,b)};goog.array.isEmpty=function(a){return 0==a.length};goog.array.clear=function(a){if(!goog.isArray(a))for(var b=a.length-1;0<=b;b--)delete a[b];a.length=0};goog.array.insert=function(a,b){goog.array.contains(a,b)||a.push(b)};
125 goog.array.insertAt=function(a,b,c){goog.array.splice(a,c,0,b)};goog.array.insertArrayAt=function(a,b,c){goog.partial(goog.array.splice,a,c,0).apply(null,b)};goog.array.insertBefore=function(a,b,c){var d;2==arguments.length||0>(d=goog.array.indexOf(a,c))?a.push(b):goog.array.insertAt(a,b,d)};goog.array.remove=function(a,b){var c=goog.array.indexOf(a,b),d;(d=0<=c)&&goog.array.removeAt(a,c);return d};
126 goog.array.removeAt=function(a,b){goog.asserts.assert(null!=a.length);return 1==goog.array.ARRAY_PROTOTYPE_.splice.call(a,b,1).length};goog.array.removeIf=function(a,b,c){b=goog.array.findIndex(a,b,c);return 0<=b?(goog.array.removeAt(a,b),!0):!1};goog.array.concat=function(a){return goog.array.ARRAY_PROTOTYPE_.concat.apply(goog.array.ARRAY_PROTOTYPE_,arguments)};goog.array.toArray=function(a){var b=a.length;if(0<b){for(var c=Array(b),d=0;d<b;d++)c[d]=a[d];return c}return[]};goog.array.clone=goog.array.toArray;
127 goog.array.extend=function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c],e;if(goog.isArray(d)||(e=goog.isArrayLike(d))&&Object.prototype.hasOwnProperty.call(d,"callee"))a.push.apply(a,d);else if(e)for(var f=a.length,g=d.length,h=0;h<g;h++)a[f+h]=d[h];else a.push(d)}};goog.array.splice=function(a,b,c,d){goog.asserts.assert(null!=a.length);return goog.array.ARRAY_PROTOTYPE_.splice.apply(a,goog.array.slice(arguments,1))};
128 goog.array.slice=function(a,b,c){goog.asserts.assert(null!=a.length);return 2>=arguments.length?goog.array.ARRAY_PROTOTYPE_.slice.call(a,b):goog.array.ARRAY_PROTOTYPE_.slice.call(a,b,c)};goog.array.removeDuplicates=function(a,b,c){b=b||a;var d=function(){return goog.isObject(g)?"o"+goog.getUid(g):(typeof g).charAt(0)+g};c=c||d;for(var d={},e=0,f=0;f<a.length;){var g=a[f++],h=c(g);Object.prototype.hasOwnProperty.call(d,h)||(d[h]=!0,b[e++]=g)}b.length=e};
129 goog.array.binarySearch=function(a,b,c){return goog.array.binarySearch_(a,c||goog.array.defaultCompare,!1,b)};goog.array.binarySelect=function(a,b,c){return goog.array.binarySearch_(a,b,!0,void 0,c)};goog.array.binarySearch_=function(a,b,c,d,e){for(var f=0,g=a.length,h;f<g;){var k=f+g>>1,l;l=c?b.call(e,a[k],k,a):b(d,a[k]);0<l?f=k+1:(g=k,h=!l)}return h?f:~f};goog.array.sort=function(a,b){a.sort(b||goog.array.defaultCompare)};
130 goog.array.stableSort=function(a,b){function c(a,b){return e(a.value,b.value)||a.index-b.index}for(var d=0;d<a.length;d++)a[d]={index:d,value:a[d]};var e=b||goog.array.defaultCompare;goog.array.sort(a,c);for(d=0;d<a.length;d++)a[d]=a[d].value};goog.array.sortObjectsByKey=function(a,b,c){var d=c||goog.array.defaultCompare;goog.array.sort(a,function(a,c){return d(a[b],c[b])})};
131 goog.array.isSorted=function(a,b,c){b=b||goog.array.defaultCompare;for(var d=1;d<a.length;d++){var e=b(a[d-1],a[d]);if(0<e||0==e&&c)return!1}return!0};goog.array.equals=function(a,b,c){if(!goog.isArrayLike(a)||!goog.isArrayLike(b)||a.length!=b.length)return!1;var d=a.length;c=c||goog.array.defaultCompareEquality;for(var e=0;e<d;e++)if(!c(a[e],b[e]))return!1;return!0};
132 goog.array.compare3=function(a,b,c){c=c||goog.array.defaultCompare;for(var d=Math.min(a.length,b.length),e=0;e<d;e++){var f=c(a[e],b[e]);if(0!=f)return f}return goog.array.defaultCompare(a.length,b.length)};goog.array.defaultCompare=function(a,b){return a>b?1:a<b?-1:0};goog.array.defaultCompareEquality=function(a,b){return a===b};goog.array.binaryInsert=function(a,b,c){c=goog.array.binarySearch(a,b,c);return 0>c?(goog.array.insertAt(a,b,-(c+1)),!0):!1};
133 goog.array.binaryRemove=function(a,b,c){b=goog.array.binarySearch(a,b,c);return 0<=b?goog.array.removeAt(a,b):!1};goog.array.bucket=function(a,b,c){for(var d={},e=0;e<a.length;e++){var f=a[e],g=b.call(c,f,e,a);goog.isDef(g)&&(g=d[g]||(d[g]=[]),g.push(f))}return d};goog.array.toObject=function(a,b,c){var d={};goog.array.forEach(a,function(e,f){d[b.call(c,e,f,a)]=e});return d};
134 goog.array.range=function(a,b,c){var d=[],e=0,f=a;c=c||1;void 0!==b&&(e=a,f=b);if(0>c*(f-e))return[];if(0<c)for(a=e;a<f;a+=c)d.push(a);else for(a=e;a>f;a+=c)d.push(a);return d};goog.array.repeat=function(a,b){for(var c=[],d=0;d<b;d++)c[d]=a;return c};goog.array.flatten=function(a){for(var b=[],c=0;c<arguments.length;c++){var d=arguments[c];goog.isArray(d)?b.push.apply(b,goog.array.flatten.apply(null,d)):b.push(d)}return b};
135 goog.array.rotate=function(a,b){goog.asserts.assert(null!=a.length);a.length&&(b%=a.length,0<b?goog.array.ARRAY_PROTOTYPE_.unshift.apply(a,a.splice(-b,b)):0>b&&goog.array.ARRAY_PROTOTYPE_.push.apply(a,a.splice(0,-b)));return a};goog.array.moveItem=function(a,b,c){goog.asserts.assert(0<=b&&b<a.length);goog.asserts.assert(0<=c&&c<a.length);b=goog.array.ARRAY_PROTOTYPE_.splice.call(a,b,1);goog.array.ARRAY_PROTOTYPE_.splice.call(a,c,0,b[0])};
136 goog.array.zip=function(a){if(!arguments.length)return[];for(var b=[],c=0;;c++){for(var d=[],e=0;e<arguments.length;e++){var f=arguments[e];if(c>=f.length)return b;d.push(f[c])}b.push(d)}};goog.array.shuffle=function(a,b){for(var c=b||Math.random,d=a.length-1;0<d;d--){var e=Math.floor(c()*(d+1)),f=a[d];a[d]=a[e];a[e]=f}};goog.math={};goog.math.randomInt=function(a){return Math.floor(Math.random()*a)};goog.math.uniformRandom=function(a,b){return a+Math.random()*(b-a)};goog.math.clamp=function(a,b,c){return Math.min(Math.max(a,b),c)};goog.math.modulo=function(a,b){var c=a%b;return 0>c*b?c+b:c};goog.math.lerp=function(a,b,c){return a+c*(b-a)};goog.math.nearlyEquals=function(a,b,c){return Math.abs(a-b)<=(c||1E-6)};goog.math.standardAngle=function(a){return goog.math.modulo(a,360)};
137 goog.math.toRadians=function(a){return a*Math.PI/180};goog.math.toDegrees=function(a){return 180*a/Math.PI};goog.math.angleDx=function(a,b){return b*Math.cos(goog.math.toRadians(a))};goog.math.angleDy=function(a,b){return b*Math.sin(goog.math.toRadians(a))};goog.math.angle=function(a,b,c,d){return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d-b,c-a)))};goog.math.angleDifference=function(a,b){var c=goog.math.standardAngle(b)-goog.math.standardAngle(a);180<c?c-=360:-180>=c&&(c=360+c);return c};
138 goog.math.sign=function(a){return 0==a?0:0>a?-1:1};goog.math.longestCommonSubsequence=function(a,b,c,d){c=c||function(a,b){return a==b};d=d||function(b){return a[b]};for(var e=a.length,f=b.length,g=[],h=0;h<e+1;h++)g[h]=[],g[h][0]=0;for(var k=0;k<f+1;k++)g[0][k]=0;for(h=1;h<=e;h++)for(k=1;k<=f;k++)c(a[h-1],b[k-1])?g[h][k]=g[h-1][k-1]+1:g[h][k]=Math.max(g[h-1][k],g[h][k-1]);for(var l=[],h=e,k=f;0<h&&0<k;)c(a[h-1],b[k-1])?(l.unshift(d(h-1,k-1)),h--,k--):g[h-1][k]>g[h][k-1]?h--:k--;return l};
139 goog.math.sum=function(a){return goog.array.reduce(arguments,function(a,c){return a+c},0)};goog.math.average=function(a){return goog.math.sum.apply(null,arguments)/arguments.length};goog.math.sampleVariance=function(a){var b=arguments.length;if(2>b)return 0;var c=goog.math.average.apply(null,arguments);return b=goog.math.sum.apply(null,goog.array.map(arguments,function(a){return Math.pow(a-c,2)}))/(b-1)};
140 goog.math.standardDeviation=function(a){return Math.sqrt(goog.math.sampleVariance.apply(null,arguments))};goog.math.isInt=function(a){return isFinite(a)&&0==a%1};goog.math.isFiniteNumber=function(a){return isFinite(a)&&!isNaN(a)};goog.math.safeFloor=function(a,b){goog.asserts.assert(!goog.isDef(b)||0<b);return Math.floor(a+(b||2E-15))};goog.math.safeCeil=function(a,b){goog.asserts.assert(!goog.isDef(b)||0<b);return Math.ceil(a-(b||2E-15))};goog.i18n={};
141 goog.i18n.CompactNumberFormatSymbols_af={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"0"},1E5:{other:"0"},1E6:{other:"0\u00a0m"},1E7:{other:"00\u00a0m"},1E8:{other:"000\u00a0m"},1E9:{other:"0\u00a0mjd"},1E10:{other:"00\u00a0mjd"},1E11:{other:"000\u00a0mjd"},1E12:{other:"0\u00a0bn"},1E13:{other:"00\u00a0bn"},1E14:{other:"000\u00a0bn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 duisend"},1E4:{other:"00 duisend"},1E5:{other:"000 duisend"},1E6:{other:"0 miljoen"},1E7:{other:"00 miljoen"},1E8:{other:"000 miljoen"},
142 1E9:{other:"0 miljard"},1E10:{other:"00 miljard"},1E11:{other:"000 miljard"},1E12:{other:"0 biljoen"},1E13:{other:"00 biljoen"},1E14:{other:"000 biljoen"}}};goog.i18n.CompactNumberFormatSymbols_af_ZA=goog.i18n.CompactNumberFormatSymbols_af;
143 goog.i18n.CompactNumberFormatSymbols_am={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u123a"},1E4:{other:"00\u00a0\u123a"},1E5:{other:"000\u00a0\u123a"},1E6:{other:"0\u00a0\u121c\u1275\u122d"},1E7:{other:"00\u00a0\u121c\u1275\u122d"},1E8:{other:"000\u00a0\u121c\u1275\u122d"},1E9:{other:"0\u00a0\u1262"},1E10:{other:"00\u00a0\u1262"},1E11:{other:"000\u00a0\u1262"},1E12:{other:"0\u00a0\u1275"},1E13:{other:"00\u00a0\u1275"},1E14:{other:"000\u00a0\u1275"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u123a"},
144 1E4:{other:"00 \u123a"},1E5:{other:"000 \u123a"},1E6:{other:"0 \u121a\u120a\u12ee\u1295"},1E7:{other:"00 \u121a\u120a\u12ee\u1295"},1E8:{other:"000 \u121a\u120a\u12ee\u1295"},1E9:{other:"0 \u1262\u120a\u12ee\u1295"},1E10:{other:"00 \u1262\u120a\u12ee\u1295"},1E11:{other:"000 \u1262\u120a\u12ee\u1295"},1E12:{other:"0 \u1275\u122a\u120a\u12ee\u1295"},1E13:{other:"00 \u1275\u122a\u120a\u12ee\u1295"},1E14:{other:"000 \u1275\u122a\u120a\u12ee\u1295"}}};goog.i18n.CompactNumberFormatSymbols_am_ET=goog.i18n.CompactNumberFormatSymbols_am;
145 goog.i18n.CompactNumberFormatSymbols_ar={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0623\u0644\u0641"},1E4:{other:"00\u00a0\u0623\u0644\u0641"},1E5:{other:"000\u00a0\u0623\u0644\u0641"},1E6:{other:"0\u00a0\u0645\u0644\u064a\u0648"},1E7:{other:"00\u00a0\u0645\u0644\u064a\u0648"},1E8:{other:"000\u00a0\u0645\u0644\u064a\u0648"},1E9:{other:"0\u00a0\u0628\u0644\u064a\u0648"},1E10:{other:"00\u00a0\u0628\u0644\u064a\u0648"},1E11:{other:"000\u00a0\u0628\u0644\u064a\u0648"},1E12:{other:"0\u00a0\u062a\u0631\u0644\u064a\u0648"},
146 1E13:{other:"00\u00a0\u062a\u0631\u0644\u064a\u0648"},1E14:{other:"000\u00a0\u062a\u0631\u0644\u064a\u0648"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0623\u0644\u0641"},1E4:{other:"00 \u0623\u0644\u0641"},1E5:{other:"000 \u0623\u0644\u0641"},1E6:{other:"0 \u0645\u0644\u064a\u0648\u0646"},1E7:{other:"00 \u0645\u0644\u064a\u0648\u0646"},1E8:{other:"000 \u0645\u0644\u064a\u0648\u0646"},1E9:{other:"0 \u0628\u0644\u064a\u0648\u0646"},1E10:{other:"00 \u0628\u0644\u064a\u0648\u0646"},1E11:{other:"000 \u0628\u0644\u064a\u0648\u0646"},
147 1E12:{other:"0 \u062a\u0631\u064a\u0644\u064a\u0648\u0646"},1E13:{other:"00 \u062a\u0631\u064a\u0644\u064a\u0648\u0646"},1E14:{other:"000 \u062a\u0631\u064a\u0644\u064a\u0648\u0646"}}};goog.i18n.CompactNumberFormatSymbols_ar_001=goog.i18n.CompactNumberFormatSymbols_ar;
148 goog.i18n.CompactNumberFormatSymbols_bg={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0445\u0438\u043b."},1E4:{other:"00\u00a0\u0445\u0438\u043b."},1E5:{other:"000\u00a0\u0445\u0438\u043b."},1E6:{other:"0\u00a0\u043c\u043b\u043d."},1E7:{other:"00\u00a0\u043c\u043b\u043d."},1E8:{other:"000\u00a0\u043c\u043b\u043d."},1E9:{other:"0\u00a0\u043c\u043b\u0440\u0434."},1E10:{other:"00\u00a0\u043c\u043b\u0440\u0434."},1E11:{other:"000\u00a0\u043c\u043b\u0440\u0434."},1E12:{other:"0\u00a0\u0442\u0440\u043b\u043d."},
149 1E13:{other:"00\u00a0\u0442\u0440\u043b\u043d."},1E14:{other:"000\u00a0\u0442\u0440\u043b\u043d."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0445\u0438\u043b\u044f\u0434\u0438"},1E4:{other:"00 \u0445\u0438\u043b\u044f\u0434\u0438"},1E5:{other:"000 \u0445\u0438\u043b\u044f\u0434\u0438"},1E6:{other:"0 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E7:{other:"00 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E8:{other:"000 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E9:{other:"0 \u043c\u0438\u043b\u0438\u0430\u0440\u0434\u0430"},
150 1E10:{other:"00 \u043c\u0438\u043b\u0438\u0430\u0440\u0434\u0430"},1E11:{other:"000 \u043c\u0438\u043b\u0438\u0430\u0440\u0434\u0430"},1E12:{other:"0 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"},1E13:{other:"00 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"},1E14:{other:"000 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"}}};goog.i18n.CompactNumberFormatSymbols_bg_BG=goog.i18n.CompactNumberFormatSymbols_bg;
151 goog.i18n.CompactNumberFormatSymbols_bn={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"0\u00a0\u09b2\u09be\u0996"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u09b9\u09be\u099c\u09be\u09b0"},1E4:{other:"00 \u09b9\u09be\u099c\u09be\u09b0"},1E5:{other:"0 \u09b2\u09be\u0996"},1E6:{other:"0 \u09ae\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},
152 1E7:{other:"00 \u09ae\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E8:{other:"000 \u09ae\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E9:{other:"0 \u09ac\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E10:{other:"00 \u09ac\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E11:{other:"000 \u09ac\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E12:{other:"0 \u099f\u09cd\u09b0\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E13:{other:"00 \u099f\u09cd\u09b0\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"},1E14:{other:"000 \u099f\u09cd\u09b0\u09bf\u09b2\u09bf\u09af\u09bc\u09a8"}}};
153 goog.i18n.CompactNumberFormatSymbols_bn_BD=goog.i18n.CompactNumberFormatSymbols_bn;goog.i18n.CompactNumberFormatSymbols_br={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};goog.i18n.CompactNumberFormatSymbols_br_FR=goog.i18n.CompactNumberFormatSymbols_br;
154 goog.i18n.CompactNumberFormatSymbols_ca={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0m"},1E4:{other:"00m"},1E5:{other:"000m"},1E6:{other:"0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0000\u00a0M"},1E10:{other:"00mM"},1E11:{other:"000mM"},1E12:{other:"0B"},1E13:{other:"00\u00a0B"},1E14:{other:"000\u00a0B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 milers"},1E4:{other:"00 milers"},1E5:{other:"000 milers"},1E6:{other:"0 milions"},1E7:{other:"00 milions"},1E8:{other:"000 milions"},
155 1E9:{other:"0 milers de milions"},1E10:{other:"00 milers de milions"},1E11:{other:"000 milers de milions"},1E12:{other:"0 bilions"},1E13:{other:"00 bilions"},1E14:{other:"000 bilions"}}};goog.i18n.CompactNumberFormatSymbols_ca_AD=goog.i18n.CompactNumberFormatSymbols_ca;goog.i18n.CompactNumberFormatSymbols_ca_ES=goog.i18n.CompactNumberFormatSymbols_ca;goog.i18n.CompactNumberFormatSymbols_ca_FR=goog.i18n.CompactNumberFormatSymbols_ca;goog.i18n.CompactNumberFormatSymbols_ca_IT=goog.i18n.CompactNumberFormatSymbols_ca;
156 goog.i18n.CompactNumberFormatSymbols_chr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};goog.i18n.CompactNumberFormatSymbols_chr_US=goog.i18n.CompactNumberFormatSymbols_chr;
157 goog.i18n.CompactNumberFormatSymbols_cs={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tis."},1E4:{other:"00\u00a0tis."},1E5:{other:"000\u00a0tis."},1E6:{other:"0\u00a0mil."},1E7:{other:"00\u00a0mil."},1E8:{other:"000\u00a0mil."},1E9:{other:"0\u00a0mld."},1E10:{other:"00\u00a0mld."},1E11:{other:"000\u00a0mld."},1E12:{other:"0\u00a0bil."},1E13:{other:"00\u00a0bil."},1E14:{other:"000\u00a0bil."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tis\u00edc"},1E4:{other:"00 tis\u00edc"},1E5:{other:"000 tis\u00edc"},
158 1E6:{other:"0 milion\u016f"},1E7:{other:"00 milion\u016f"},1E8:{other:"000 milion\u016f"},1E9:{other:"0 miliard"},1E10:{other:"00 miliard"},1E11:{other:"000 miliard"},1E12:{other:"0 bilion\u016f"},1E13:{other:"00 bilion\u016f"},1E14:{other:"000 bilion\u016f"}}};goog.i18n.CompactNumberFormatSymbols_cs_CZ=goog.i18n.CompactNumberFormatSymbols_cs;
159 goog.i18n.CompactNumberFormatSymbols_cy={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 miliwn"},1E7:{other:"00 miliwn"},1E8:{other:"000 miliwn"},1E9:{other:"0 biliwn"},1E10:{other:"00 biliwn"},
160 1E11:{other:"000 biliwn"},1E12:{other:"0 triliwn"},1E13:{other:"00 triliwn"},1E14:{other:"000 triliwn"}}};goog.i18n.CompactNumberFormatSymbols_cy_GB=goog.i18n.CompactNumberFormatSymbols_cy;
161 goog.i18n.CompactNumberFormatSymbols_da={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0td"},1E4:{other:"00\u00a0td"},1E5:{other:"000\u00a0td"},1E6:{other:"0\u00a0mio"},1E7:{other:"00\u00a0mio"},1E8:{other:"000\u00a0mio"},1E9:{other:"0\u00a0mia"},1E10:{other:"00\u00a0mia"},1E11:{other:"000\u00a0mia"},1E12:{other:"0\u00a0bill"},1E13:{other:"00\u00a0bill"},1E14:{other:"000\u00a0bill"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tusind"},1E4:{other:"00 tusind"},1E5:{other:"000 tusind"},1E6:{other:"0 millioner"},
162 1E7:{other:"00 millioner"},1E8:{other:"000 millioner"},1E9:{other:"0 milliarder"},1E10:{other:"00 milliarder"},1E11:{other:"000 milliarder"},1E12:{other:"0 billioner"},1E13:{other:"00 billioner"},1E14:{other:"000 billioner"}}};goog.i18n.CompactNumberFormatSymbols_da_DK=goog.i18n.CompactNumberFormatSymbols_da;goog.i18n.CompactNumberFormatSymbols_da_GL=goog.i18n.CompactNumberFormatSymbols_da;
163 goog.i18n.CompactNumberFormatSymbols_de={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0Tsd"},1E4:{other:"00\u00a0Tsd"},1E5:{other:"000\u00a0Tsd"},1E6:{other:"0\u00a0Mio"},1E7:{other:"00\u00a0Mio"},1E8:{other:"000\u00a0Mio"},1E9:{other:"0\u00a0Mrd"},1E10:{other:"00\u00a0Mrd"},1E11:{other:"000\u00a0Mrd"},1E12:{other:"0\u00a0Bio"},1E13:{other:"00\u00a0Bio"},1E14:{other:"000\u00a0Bio"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 Tausend"},1E4:{other:"00 Tausend"},1E5:{other:"000 Tausend"},1E6:{other:"0 Millionen"},
164 1E7:{other:"00 Millionen"},1E8:{other:"000 Millionen"},1E9:{other:"0 Milliarden"},1E10:{other:"00 Milliarden"},1E11:{other:"000 Milliarden"},1E12:{other:"0 Billionen"},1E13:{other:"00 Billionen"},1E14:{other:"000 Billionen"}}};
165 goog.i18n.CompactNumberFormatSymbols_de_AT={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0Tsd"},1E4:{other:"00\u00a0Tsd"},1E5:{other:"000\u00a0Tsd"},1E6:{other:"0\u00a0Mio"},1E7:{other:"00\u00a0Mio"},1E8:{other:"000\u00a0Mio"},1E9:{other:"0\u00a0Mrd"},1E10:{other:"00\u00a0Mrd"},1E11:{other:"000\u00a0Mrd"},1E12:{other:"0\u00a0Bio"},1E13:{other:"00\u00a0Bio"},1E14:{other:"000\u00a0Bio"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 Tausend"},1E4:{other:"00 Tausend"},1E5:{other:"000 Tausend"},1E6:{other:"0 Millionen"},
166 1E7:{other:"00 Millionen"},1E8:{other:"000 Millionen"},1E9:{other:"0 Milliarden"},1E10:{other:"00 Milliarden"},1E11:{other:"000 Milliarden"},1E12:{other:"0 Billionen"},1E13:{other:"00 Billionen"},1E14:{other:"000 Billionen"}}};goog.i18n.CompactNumberFormatSymbols_de_BE=goog.i18n.CompactNumberFormatSymbols_de;
167 goog.i18n.CompactNumberFormatSymbols_de_CH={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0Tsd"},1E4:{other:"00\u00a0Tsd"},1E5:{other:"000\u00a0Tsd"},1E6:{other:"0\u00a0Mio"},1E7:{other:"00\u00a0Mio"},1E8:{other:"000\u00a0Mio"},1E9:{other:"0\u00a0Mrd"},1E10:{other:"00\u00a0Mrd"},1E11:{other:"000\u00a0Mrd"},1E12:{other:"0\u00a0Bio"},1E13:{other:"00\u00a0Bio"},1E14:{other:"000\u00a0Bio"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 Tausend"},1E4:{other:"00 Tausend"},1E5:{other:"000 Tausend"},1E6:{other:"0 Millionen"},
168 1E7:{other:"00 Millionen"},1E8:{other:"000 Millionen"},1E9:{other:"0 Milliarden"},1E10:{other:"00 Milliarden"},1E11:{other:"000 Milliarden"},1E12:{other:"0 Billionen"},1E13:{other:"00 Billionen"},1E14:{other:"000 Billionen"}}};goog.i18n.CompactNumberFormatSymbols_de_DE=goog.i18n.CompactNumberFormatSymbols_de;goog.i18n.CompactNumberFormatSymbols_de_LU=goog.i18n.CompactNumberFormatSymbols_de;
169 goog.i18n.CompactNumberFormatSymbols_el={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u03c7\u03b9\u03bb."},1E4:{other:"00\u00a0\u03c7\u03b9\u03bb."},1E5:{other:"000\u00a0\u03c7\u03b9\u03bb."},1E6:{other:"0\u00a0\u03b5\u03ba."},1E7:{other:"00\u00a0\u03b5\u03ba."},1E8:{other:"000\u00a0\u03b5\u03ba."},1E9:{other:"0\u00a0\u03b4\u03b9\u03c3."},1E10:{other:"00\u00a0\u03b4\u03b9\u03c3."},1E11:{other:"000\u00a0\u03b4\u03b9\u03c3."},1E12:{other:"0\u00a0\u03c4\u03c1\u03b9\u03c3."},1E13:{other:"00\u00a0\u03c4\u03c1\u03b9\u03c3."},
170 1E14:{other:"000\u00a0\u03c4\u03c1\u03b9\u03c3."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u03c7\u03b9\u03bb\u03b9\u03ac\u03b4\u03b5\u03c2"},1E4:{other:"00 \u03c7\u03b9\u03bb\u03b9\u03ac\u03b4\u03b5\u03c2"},1E5:{other:"000 \u03c7\u03b9\u03bb\u03b9\u03ac\u03b4\u03b5\u03c2"},1E6:{other:"0 \u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E7:{other:"00 \u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E8:{other:"000 \u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},
171 1E9:{other:"0 \u03b4\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E10:{other:"00 \u03b4\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E11:{other:"000 \u03b4\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E12:{other:"0 \u03c4\u03c1\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},1E13:{other:"00 \u03c4\u03c1\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"},
172 1E14:{other:"000 \u03c4\u03c1\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03cd\u03c1\u03b9\u03b1"}}};goog.i18n.CompactNumberFormatSymbols_el_GR=goog.i18n.CompactNumberFormatSymbols_el;
173 goog.i18n.CompactNumberFormatSymbols_en={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
174 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_001=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_AS=goog.i18n.CompactNumberFormatSymbols_en;
175 goog.i18n.CompactNumberFormatSymbols_en_AU={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
176 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_DG=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_Dsrt_US=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_FM=goog.i18n.CompactNumberFormatSymbols_en;
177 goog.i18n.CompactNumberFormatSymbols_en_GB={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
178 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_GU=goog.i18n.CompactNumberFormatSymbols_en;
179 goog.i18n.CompactNumberFormatSymbols_en_IE={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
180 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};
181 goog.i18n.CompactNumberFormatSymbols_en_IN={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
182 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_IO=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_MH=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_MP=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_PR=goog.i18n.CompactNumberFormatSymbols_en;
183 goog.i18n.CompactNumberFormatSymbols_en_PW=goog.i18n.CompactNumberFormatSymbols_en;
184 goog.i18n.CompactNumberFormatSymbols_en_SG={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
185 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_TC=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_UM=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_US=goog.i18n.CompactNumberFormatSymbols_en;goog.i18n.CompactNumberFormatSymbols_en_VG=goog.i18n.CompactNumberFormatSymbols_en;
186 goog.i18n.CompactNumberFormatSymbols_en_VI=goog.i18n.CompactNumberFormatSymbols_en;
187 goog.i18n.CompactNumberFormatSymbols_en_ZA={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 thousand"},1E4:{other:"00 thousand"},1E5:{other:"000 thousand"},1E6:{other:"0 million"},1E7:{other:"00 million"},1E8:{other:"000 million"},1E9:{other:"0 billion"},
188 1E10:{other:"00 billion"},1E11:{other:"000 billion"},1E12:{other:"0 trillion"},1E13:{other:"00 trillion"},1E14:{other:"000 trillion"}}};goog.i18n.CompactNumberFormatSymbols_en_ZW=goog.i18n.CompactNumberFormatSymbols_en;
189 goog.i18n.CompactNumberFormatSymbols_es={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0000\u00a0M"},1E10:{other:"00MRD"},1E11:{other:"000MRD"},1E12:{other:"0B"},1E13:{other:"00B"},1E14:{other:"000B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 millones"},1E7:{other:"00 millones"},1E8:{other:"000 millones"},1E9:{other:"0 mil millones"},
190 1E10:{other:"00 mil millones"},1E11:{other:"000 mil millones"},1E12:{other:"0 billones"},1E13:{other:"00 billones"},1E14:{other:"000 billones"}}};
191 goog.i18n.CompactNumberFormatSymbols_es_419={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"00k"},1E5:{other:"000k"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0k\u00a0M"},1E10:{other:"00k\u00a0M"},1E11:{other:"000k\u00a0M"},1E12:{other:"0\u00a0B"},1E13:{other:"00\u00a0B"},1E14:{other:"000\u00a0B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 millones"},1E7:{other:"00 millones"},1E8:{other:"000 millones"},
192 1E9:{other:"0 mil millones"},1E10:{other:"00 mil millones"},1E11:{other:"000 mil millones"},1E12:{other:"0 billones"},1E13:{other:"00 billones"},1E14:{other:"000 billones"}}};goog.i18n.CompactNumberFormatSymbols_es_EA=goog.i18n.CompactNumberFormatSymbols_es;goog.i18n.CompactNumberFormatSymbols_es_ES=goog.i18n.CompactNumberFormatSymbols_es;goog.i18n.CompactNumberFormatSymbols_es_IC=goog.i18n.CompactNumberFormatSymbols_es;
193 goog.i18n.CompactNumberFormatSymbols_et={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tuh"},1E4:{other:"00\u00a0tuh"},1E5:{other:"000\u00a0tuh"},1E6:{other:"0\u00a0mln"},1E7:{other:"00\u00a0mln"},1E8:{other:"000\u00a0mln"},1E9:{other:"0\u00a0mld"},1E10:{other:"00\u00a0mld"},1E11:{other:"000\u00a0mld"},1E12:{other:"0\u00a0trl"},1E13:{other:"00\u00a0trl"},1E14:{other:"000\u00a0trl"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tuhat"},1E4:{other:"00 tuhat"},1E5:{other:"000 tuhat"},1E6:{other:"0 miljonit"},
194 1E7:{other:"00 miljonit"},1E8:{other:"000 miljonit"},1E9:{other:"0 miljardit"},1E10:{other:"00 miljardit"},1E11:{other:"000 miljardit"},1E12:{other:"0 triljonit"},1E13:{other:"00 triljonit"},1E14:{other:"000 triljonit"}}};goog.i18n.CompactNumberFormatSymbols_et_EE=goog.i18n.CompactNumberFormatSymbols_et;
195 goog.i18n.CompactNumberFormatSymbols_eu={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0000"},1E4:{other:"00000"},1E5:{other:"000000"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0000\u00a0M"},1E10:{other:"00000\u00a0M"},1E11:{other:"000000\u00a0M"},1E12:{other:"0\u00a0B"},1E13:{other:"00\u00a0B"},1E14:{other:"000\u00a0B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0000"},1E4:{other:"00000"},1E5:{other:"000000"},1E6:{other:"0 milioi"},1E7:{other:"00 milioi"},1E8:{other:"000 milioi"},
196 1E9:{other:"0000 milioi"},1E10:{other:"00000 milioi"},1E11:{other:"000000 milioi"},1E12:{other:"0 bilioi"},1E13:{other:"00 bilioi"},1E14:{other:"000 bilioi"}}};goog.i18n.CompactNumberFormatSymbols_eu_ES=goog.i18n.CompactNumberFormatSymbols_eu;
197 goog.i18n.CompactNumberFormatSymbols_fa={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0647\u0632\u0627\u0631"},1E4:{other:"00 \u0647\u0632\u0627\u0631"},1E5:{other:"000 \u0647\u0632\u0627\u0631"},1E6:{other:"0 \u0645\u06cc\u0644\u06cc\u0648\u0646"},
198 1E7:{other:"00 \u0645\u06cc\u0644\u06cc\u0648\u0646"},1E8:{other:"000 \u0645\u06cc\u0644\u06cc\u0648\u0646"},1E9:{other:"0 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"},1E10:{other:"00 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"},1E11:{other:"000 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"},1E12:{other:"0 \u0647\u0632\u0627\u0631 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"},1E13:{other:"00 \u0647\u0632\u0627\u0631 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"},1E14:{other:"000 \u0647\u0632\u0627\u0631 \u0645\u06cc\u0644\u06cc\u0627\u0631\u062f"}}};
199 goog.i18n.CompactNumberFormatSymbols_fa_IR=goog.i18n.CompactNumberFormatSymbols_fa;
200 goog.i18n.CompactNumberFormatSymbols_fi={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0t."},1E4:{other:"00\u00a0t."},1E5:{other:"000\u00a0t."},1E6:{other:"0\u00a0milj."},1E7:{other:"00\u00a0milj."},1E8:{other:"000\u00a0milj."},1E9:{other:"0\u00a0mrd."},1E10:{other:"00\u00a0mrd."},1E11:{other:"000\u00a0mrd."},1E12:{other:"0\u00a0bilj."},1E13:{other:"00\u00a0bilj."},1E14:{other:"000\u00a0bilj."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tuhatta"},1E4:{other:"00 tuhatta"},1E5:{other:"000 tuhatta"},
201 1E6:{other:"0 miljoonaa"},1E7:{other:"00 miljoonaa"},1E8:{other:"000 miljoonaa"},1E9:{other:"0 miljardia"},1E10:{other:"00 miljardia"},1E11:{other:"000 miljardia"},1E12:{other:"0 biljoonaa"},1E13:{other:"00 biljoonaa"},1E14:{other:"000 biljoonaa"}}};goog.i18n.CompactNumberFormatSymbols_fi_FI=goog.i18n.CompactNumberFormatSymbols_fi;
202 goog.i18n.CompactNumberFormatSymbols_fil={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 libo"},1E4:{other:"00 libo"},1E5:{other:"000 libo"},1E6:{other:"0 milyon"},1E7:{other:"00 milyon"},1E8:{other:"000 milyon"},1E9:{other:"0 bilyon"},1E10:{other:"00 bilyon"},
203 1E11:{other:"000 bilyon"},1E12:{other:"0 trilyon"},1E13:{other:"00 trilyon"},1E14:{other:"000 trilyon"}}};goog.i18n.CompactNumberFormatSymbols_fil_PH=goog.i18n.CompactNumberFormatSymbols_fil;
204 goog.i18n.CompactNumberFormatSymbols_fr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0k"},1E4:{other:"00\u00a0k"},1E5:{other:"000\u00a0k"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0\u00a0Md"},1E10:{other:"00\u00a0Md"},1E11:{other:"000\u00a0Md"},1E12:{other:"0\u00a0Bn"},1E13:{other:"00\u00a0Bn"},1E14:{other:"000\u00a0Bn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mille"},1E4:{other:"00 mille"},1E5:{other:"000 mille"},1E6:{other:"0 millions"},1E7:{other:"00 millions"},
205 1E8:{other:"000 millions"},1E9:{other:"0 milliards"},1E10:{other:"00 milliards"},1E11:{other:"000 milliards"},1E12:{other:"0 billions"},1E13:{other:"00 billions"},1E14:{other:"000 billions"}}};goog.i18n.CompactNumberFormatSymbols_fr_BL=goog.i18n.CompactNumberFormatSymbols_fr;
206 goog.i18n.CompactNumberFormatSymbols_fr_CA={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0k"},1E4:{other:"00\u00a0k"},1E5:{other:"000\u00a0k"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0\u00a0Md"},1E10:{other:"00\u00a0Md"},1E11:{other:"000\u00a0Md"},1E12:{other:"0\u00a0Bn"},1E13:{other:"00\u00a0Bn"},1E14:{other:"000\u00a0Bn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mille"},1E4:{other:"00 mille"},1E5:{other:"000 mille"},1E6:{other:"0 millions"},1E7:{other:"00 millions"},
207 1E8:{other:"000 millions"},1E9:{other:"0 milliards"},1E10:{other:"00 milliards"},1E11:{other:"000 milliards"},1E12:{other:"0 billions"},1E13:{other:"00 billions"},1E14:{other:"000 billions"}}};goog.i18n.CompactNumberFormatSymbols_fr_FR=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_GF=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_GP=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_MC=goog.i18n.CompactNumberFormatSymbols_fr;
208 goog.i18n.CompactNumberFormatSymbols_fr_MF=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_MQ=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_PM=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_RE=goog.i18n.CompactNumberFormatSymbols_fr;goog.i18n.CompactNumberFormatSymbols_fr_YT=goog.i18n.CompactNumberFormatSymbols_fr;
209 goog.i18n.CompactNumberFormatSymbols_gl={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0k\u00a0M"},1E10:{other:"00k\u00a0M"},1E11:{other:"000k\u00a0M"},1E12:{other:"0\u00a0B"},1E13:{other:"00\u00a0B"},1E14:{other:"000\u00a0B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 mill\u00f3ns"},1E7:{other:"00 mill\u00f3ns"},1E8:{other:"000 mill\u00f3ns"},
210 1E9:{other:"0 mil mill\u00f3ns"},1E10:{other:"00 mil mill\u00f3ns"},1E11:{other:"000 mil mill\u00f3ns"},1E12:{other:"0 bill\u00f3ns"},1E13:{other:"00 bill\u00f3ns"},1E14:{other:"000 bill\u00f3ns"}}};goog.i18n.CompactNumberFormatSymbols_gl_ES=goog.i18n.CompactNumberFormatSymbols_gl;
211 goog.i18n.CompactNumberFormatSymbols_gsw={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tsd"},1E4:{other:"00\u00a0tsd"},1E5:{other:"000\u00a0tsd"},1E6:{other:"0\u00a0Mio"},1E7:{other:"00\u00a0Mio"},1E8:{other:"000\u00a0Mio"},1E9:{other:"0\u00a0Mrd"},1E10:{other:"00\u00a0Mrd"},1E11:{other:"000\u00a0Mrd"},1E12:{other:"0\u00a0Bio"},1E13:{other:"00\u00a0Bio"},1E14:{other:"000\u00a0Bio"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tausend"},1E4:{other:"00 tausend"},1E5:{other:"000 tausend"},1E6:{other:"0 Millionen"},
212 1E7:{other:"00 Millionen"},1E8:{other:"000 Millionen"},1E9:{other:"0 Milliarden"},1E10:{other:"00 Milliarden"},1E11:{other:"000 Milliarden"},1E12:{other:"0 Billionen"},1E13:{other:"00 Billionen"},1E14:{other:"000 Billionen"}}};goog.i18n.CompactNumberFormatSymbols_gsw_CH=goog.i18n.CompactNumberFormatSymbols_gsw;goog.i18n.CompactNumberFormatSymbols_gsw_LI=goog.i18n.CompactNumberFormatSymbols_gsw;
213 goog.i18n.CompactNumberFormatSymbols_gu={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0ab9\u0a9c\u0abe\u0ab0"},1E4:{other:"00\u00a0\u0ab9\u0a9c\u0abe\u0ab0"},1E5:{other:"0\u00a0\u0ab2\u0abe\u0a96"},1E6:{other:"00\u00a0\u0ab2\u0abe\u0a96"},1E7:{other:"0\u00a0\u0a95\u0ab0\u0acb\u0aa1"},1E8:{other:"00\u00a0\u0a95\u0ab0\u0acb\u0aa1"},1E9:{other:"0\u00a0\u0a85\u0aac\u0a9c"},1E10:{other:"00\u00a0\u0a85\u0aac\u0a9c"},1E11:{other:"0\u00a0\u0aa8\u0abf\u0a96\u0ab0\u0acd\u0ab5"},1E12:{other:"0\u00a0\u0aae\u0ab9\u0abe\u0aaa\u0aa6\u0acd\u0aae"},
214 1E13:{other:"0\u00a0\u0ab6\u0a82\u0a95\u0ac1"},1E14:{other:"0\u00a0\u0a9c\u0ab2\u0aa7\u0abf"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0ab9\u0a9c\u0abe\u0ab0"},1E4:{other:"00 \u0ab9\u0a9c\u0abe\u0ab0"},1E5:{other:"0 \u0ab2\u0abe\u0a96"},1E6:{other:"00 \u0ab2\u0abe\u0a96"},1E7:{other:"0 \u0a95\u0ab0\u0acb\u0aa1"},1E8:{other:"00 \u0a95\u0ab0\u0acb\u0aa1"},1E9:{other:"0 \u0a85\u0aac\u0a9c"},1E10:{other:"00 \u0a85\u0aac\u0a9c"},1E11:{other:"0 \u0aa8\u0abf\u0a96\u0ab0\u0acd\u0ab5"},1E12:{other:"0 \u0aae\u0ab9\u0abe\u0aaa\u0aa6\u0acd\u0aae"},
215 1E13:{other:"0 \u0ab6\u0a82\u0a95\u0ac1"},1E14:{other:"0 \u0a9c\u0ab2\u0aa7\u0abf"}}};goog.i18n.CompactNumberFormatSymbols_gu_IN=goog.i18n.CompactNumberFormatSymbols_gu;goog.i18n.CompactNumberFormatSymbols_haw={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};
216 goog.i18n.CompactNumberFormatSymbols_haw_US=goog.i18n.CompactNumberFormatSymbols_haw;
217 goog.i18n.CompactNumberFormatSymbols_he={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"\u200f0\u00a0\u05d0\u05dc\u05e3"},1E4:{other:"\u200f00\u00a0\u05d0\u05dc\u05e3"},1E5:{other:"\u200f000\u00a0\u05d0\u05dc\u05e3"},1E6:{other:"\u200f0\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E7:{other:"\u200f00\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E8:{other:"\u200f000\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},
218 1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"\u200f0 \u05d0\u05dc\u05e3"},1E4:{other:"\u200f00 \u05d0\u05dc\u05e3"},1E5:{other:"\u200f000 \u05d0\u05dc\u05e3"},1E6:{other:"\u200f0 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E7:{other:"\u200f00 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E8:{other:"\u200f000 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E9:{other:"\u200f0 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},1E10:{other:"\u200f00 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},1E11:{other:"\u200f000 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},
219 1E12:{other:"\u200f0 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"},1E13:{other:"\u200f00 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"},1E14:{other:"\u200f000 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"}}};goog.i18n.CompactNumberFormatSymbols_he_IL=goog.i18n.CompactNumberFormatSymbols_he;
220 goog.i18n.CompactNumberFormatSymbols_hi={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"0"},1E5:{other:"0L"},1E6:{other:"00L"},1E7:{other:"0Cr"},1E8:{other:"00Cr"},1E9:{other:"000Cr"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0939\u091c\u093c\u093e\u0930"},1E4:{other:"00 \u0939\u091c\u093c\u093e\u0930"},1E5:{other:"0 \u0932\u093e\u0916"},1E6:{other:"00 \u0932\u093e\u0916"},1E7:{other:"0 \u0915\u0930\u094b\u0921\u093c"},
221 1E8:{other:"00 \u0915\u0930\u094b\u0921\u093c"},1E9:{other:"0 \u0905\u0930\u092c"},1E10:{other:"00 \u0905\u0930\u092c"},1E11:{other:"0 \u0916\u0930\u092c"},1E12:{other:"00 \u0916\u0930\u092c"},1E13:{other:"000 \u0916\u0930\u092c"},1E14:{other:"0000 \u0916\u0930\u092c"}}};goog.i18n.CompactNumberFormatSymbols_hi_IN=goog.i18n.CompactNumberFormatSymbols_hi;
222 goog.i18n.CompactNumberFormatSymbols_hr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tis."},1E4:{other:"00\u00a0tis."},1E5:{other:"000\u00a0tis."},1E6:{other:"0\u00a0mil."},1E7:{other:"00\u00a0mil."},1E8:{other:"000\u00a0mil."},1E9:{other:"0\u00a0mlr."},1E10:{other:"00\u00a0mlr."},1E11:{other:"000\u00a0mlr."},1E12:{other:"0\u00a0bil."},1E13:{other:"00\u00a0bil."},1E14:{other:"000\u00a0bil."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tisu\u0107a"},1E4:{other:"00 tisu\u0107a"},1E5:{other:"000 tisu\u0107a"},
223 1E6:{other:"0 milijuna"},1E7:{other:"00 milijuna"},1E8:{other:"000 milijuna"},1E9:{other:"0 milijardi"},1E10:{other:"00 milijardi"},1E11:{other:"000 milijardi"},1E12:{other:"0 bilijuna"},1E13:{other:"00 bilijuna"},1E14:{other:"000 bilijuna"}}};goog.i18n.CompactNumberFormatSymbols_hr_HR=goog.i18n.CompactNumberFormatSymbols_hr;
224 goog.i18n.CompactNumberFormatSymbols_hu={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0E"},1E4:{other:"00\u00a0E"},1E5:{other:"000\u00a0E"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0\u00a0Mrd"},1E10:{other:"00\u00a0Mrd"},1E11:{other:"000\u00a0Mrd"},1E12:{other:"0\u00a0B"},1E13:{other:"00\u00a0B"},1E14:{other:"000\u00a0B"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 ezer"},1E4:{other:"00 ezer"},1E5:{other:"000 ezer"},1E6:{other:"0 milli\u00f3"},1E7:{other:"00 milli\u00f3"},
225 1E8:{other:"000 milli\u00f3"},1E9:{other:"0 milli\u00e1rd"},1E10:{other:"00 milli\u00e1rd"},1E11:{other:"000 milli\u00e1rd"},1E12:{other:"0 billi\u00f3"},1E13:{other:"00 billi\u00f3"},1E14:{other:"000 billi\u00f3"}}};goog.i18n.CompactNumberFormatSymbols_hu_HU=goog.i18n.CompactNumberFormatSymbols_hu;
226 goog.i18n.CompactNumberFormatSymbols_id={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"00\u00a0rb"},1E5:{other:"000\u00a0rb"},1E6:{other:"0\u00a0jt"},1E7:{other:"00\u00a0jt"},1E8:{other:"000\u00a0jt"},1E9:{other:"0\u00a0M"},1E10:{other:"00\u00a0M"},1E11:{other:"000\u00a0M"},1E12:{other:"0\u00a0T"},1E13:{other:"00\u00a0T"},1E14:{other:"000\u00a0T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 ribu"},1E4:{other:"00 ribu"},1E5:{other:"000 ribu"},1E6:{other:"0 juta"},1E7:{other:"00 juta"},
227 1E8:{other:"000 juta"},1E9:{other:"0 miliar"},1E10:{other:"00 miliar"},1E11:{other:"000 miliar"},1E12:{other:"0 triliun"},1E13:{other:"00 triliun"},1E14:{other:"000 triliun"}}};goog.i18n.CompactNumberFormatSymbols_id_ID=goog.i18n.CompactNumberFormatSymbols_id;
228 goog.i18n.CompactNumberFormatSymbols_in={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"00\u00a0rb"},1E5:{other:"000\u00a0rb"},1E6:{other:"0\u00a0jt"},1E7:{other:"00\u00a0jt"},1E8:{other:"000\u00a0jt"},1E9:{other:"0\u00a0M"},1E10:{other:"00\u00a0M"},1E11:{other:"000\u00a0M"},1E12:{other:"0\u00a0T"},1E13:{other:"00\u00a0T"},1E14:{other:"000\u00a0T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 ribu"},1E4:{other:"00 ribu"},1E5:{other:"000 ribu"},1E6:{other:"0 juta"},1E7:{other:"00 juta"},
229 1E8:{other:"000 juta"},1E9:{other:"0 miliar"},1E10:{other:"00 miliar"},1E11:{other:"000 miliar"},1E12:{other:"0 triliun"},1E13:{other:"00 triliun"},1E14:{other:"000 triliun"}}};
230 goog.i18n.CompactNumberFormatSymbols_is={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u00fe."},1E4:{other:"00\u00a0\u00fe."},1E5:{other:"000\u00a0\u00fe."},1E6:{other:"0\u00a0m."},1E7:{other:"00\u00a0m."},1E8:{other:"000\u00a0m."},1E9:{other:"0\u00a0ma."},1E10:{other:"00\u00a0ma."},1E11:{other:"000\u00a0ma."},1E12:{other:"0\u00a0bn"},1E13:{other:"00\u00a0bn"},1E14:{other:"000\u00a0bn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u00fe\u00fasund"},1E4:{other:"00 \u00fe\u00fasund"},1E5:{other:"000 \u00fe\u00fasund"},
231 1E6:{other:"0 millj\u00f3nir"},1E7:{other:"00 millj\u00f3nir"},1E8:{other:"000 millj\u00f3nir"},1E9:{other:"0 milljar\u00f0ar"},1E10:{other:"00 milljar\u00f0ar"},1E11:{other:"000 milljar\u00f0ar"},1E12:{other:"0 billj\u00f3nir"},1E13:{other:"00 billj\u00f3nir"},1E14:{other:"000 billj\u00f3nir"}}};goog.i18n.CompactNumberFormatSymbols_is_IS=goog.i18n.CompactNumberFormatSymbols_is;
232 goog.i18n.CompactNumberFormatSymbols_it={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"0"},1E5:{other:"0"},1E6:{other:"0\u00a0Mln"},1E7:{other:"00\u00a0Mln"},1E8:{other:"000\u00a0Mln"},1E9:{other:"0\u00a0Mld"},1E10:{other:"00\u00a0Mld"},1E11:{other:"000\u00a0Mld"},1E12:{other:"0\u00a0Bln"},1E13:{other:"00\u00a0Bln"},1E14:{other:"000\u00a0Bln"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 migliaia"},1E4:{other:"00 migliaia"},1E5:{other:"000 migliaia"},1E6:{other:"0 milioni"},1E7:{other:"00 milioni"},
233 1E8:{other:"000 milioni"},1E9:{other:"0 miliardi"},1E10:{other:"00 miliardi"},1E11:{other:"000 miliardi"},1E12:{other:"0 bilioni"},1E13:{other:"00 bilioni"},1E14:{other:"000 bilioni"}}};goog.i18n.CompactNumberFormatSymbols_it_IT=goog.i18n.CompactNumberFormatSymbols_it;goog.i18n.CompactNumberFormatSymbols_it_SM=goog.i18n.CompactNumberFormatSymbols_it;
234 goog.i18n.CompactNumberFormatSymbols_iw={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"\u200f0\u00a0\u05d0\u05dc\u05e3"},1E4:{other:"\u200f00\u00a0\u05d0\u05dc\u05e3"},1E5:{other:"\u200f000\u00a0\u05d0\u05dc\u05e3"},1E6:{other:"\u200f0\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E7:{other:"\u200f00\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E8:{other:"\u200f000\u00a0\u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},
235 1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"\u200f0 \u05d0\u05dc\u05e3"},1E4:{other:"\u200f00 \u05d0\u05dc\u05e3"},1E5:{other:"\u200f000 \u05d0\u05dc\u05e3"},1E6:{other:"\u200f0 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E7:{other:"\u200f00 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E8:{other:"\u200f000 \u05de\u05d9\u05dc\u05d9\u05d5\u05df"},1E9:{other:"\u200f0 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},1E10:{other:"\u200f00 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},1E11:{other:"\u200f000 \u05de\u05d9\u05dc\u05d9\u05d0\u05e8\u05d3"},
236 1E12:{other:"\u200f0 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"},1E13:{other:"\u200f00 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"},1E14:{other:"\u200f000 \u05d8\u05e8\u05d9\u05dc\u05d9\u05d5\u05df"}}};
237 goog.i18n.CompactNumberFormatSymbols_ja={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u5343"},1E4:{other:"0\u4e07"},1E5:{other:"00\u4e07"},1E6:{other:"000\u4e07"},1E7:{other:"0000\u4e07"},1E8:{other:"0\u5104"},1E9:{other:"00\u5104"},1E10:{other:"000\u5104"},1E11:{other:"0000\u5104"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0\u5343"},1E4:{other:"0\u4e07"},1E5:{other:"00\u4e07"},1E6:{other:"000\u4e07"},1E7:{other:"0000\u4e07"},
238 1E8:{other:"0\u5104"},1E9:{other:"00\u5104"},1E10:{other:"000\u5104"},1E11:{other:"0000\u5104"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}}};goog.i18n.CompactNumberFormatSymbols_ja_JP=goog.i18n.CompactNumberFormatSymbols_ja;
239 goog.i18n.CompactNumberFormatSymbols_kn={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0cb8\u0cbe\u0cb5\u0cbf\u0cb0"},1E4:{other:"00 \u0cb8\u0cbe\u0cb5\u0cbf\u0cb0"},1E5:{other:"000 \u0cb8\u0cbe\u0cb5\u0cbf\u0cb0"},1E6:{other:"0 \u0cae\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},
240 1E7:{other:"00 \u0cae\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},1E8:{other:"000 \u0cae\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},1E9:{other:"0 \u0cac\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},1E10:{other:"00 \u0cac\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},1E11:{other:"000 \u0cac\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd"},1E12:{other:"0 \u0c9f\u0ccd\u0cb0\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd\u200c"},1E13:{other:"00 \u0c9f\u0ccd\u0cb0\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd\u200c"},1E14:{other:"000 \u0c9f\u0ccd\u0cb0\u0cbf\u0cb2\u0cbf\u0caf\u0ca8\u0ccd\u200c"}}};
241 goog.i18n.CompactNumberFormatSymbols_kn_IN=goog.i18n.CompactNumberFormatSymbols_kn;
242 goog.i18n.CompactNumberFormatSymbols_ko={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0000"},1E4:{other:"0\ub9cc"},1E5:{other:"00\ub9cc"},1E6:{other:"000\ub9cc"},1E7:{other:"0000\ub9cc"},1E8:{other:"0\uc5b5"},1E9:{other:"00\uc5b5"},1E10:{other:"000\uc5b5"},1E11:{other:"0000\uc5b5"},1E12:{other:"0\uc870"},1E13:{other:"00\uc870"},1E14:{other:"000\uc870"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0000"},1E4:{other:"0\ub9cc"},1E5:{other:"00\ub9cc"},1E6:{other:"000\ub9cc"},1E7:{other:"0000\ub9cc"},1E8:{other:"0\uc5b5"},
243 1E9:{other:"00\uc5b5"},1E10:{other:"000\uc5b5"},1E11:{other:"0000\uc5b5"},1E12:{other:"0\uc870"},1E13:{other:"00\uc870"},1E14:{other:"000\uc870"}}};goog.i18n.CompactNumberFormatSymbols_ko_KR=goog.i18n.CompactNumberFormatSymbols_ko;
244 goog.i18n.CompactNumberFormatSymbols_ln={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};goog.i18n.CompactNumberFormatSymbols_ln_CD=goog.i18n.CompactNumberFormatSymbols_ln;
245 goog.i18n.CompactNumberFormatSymbols_lt={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0t\u016bkst."},1E4:{other:"00\u00a0t\u016bkst."},1E5:{other:"000\u00a0t\u016bkst."},1E6:{other:"0\u00a0mln."},1E7:{other:"00\u00a0mln."},1E8:{other:"000\u00a0mln."},1E9:{other:"0\u00a0mlrd."},1E10:{other:"00\u00a0mlrd."},1E11:{other:"000\u00a0mlrd."},1E12:{other:"0\u00a0trln."},1E13:{other:"00\u00a0trln."},1E14:{other:"000\u00a0trln."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 t\u016bkstan\u010di\u0173"},
246 1E4:{other:"00 t\u016bkstan\u010di\u0173"},1E5:{other:"000 t\u016bkstan\u010di\u0173"},1E6:{other:"0 milijon\u0173"},1E7:{other:"00 milijon\u0173"},1E8:{other:"000 milijon\u0173"},1E9:{other:"0 milijard\u0173"},1E10:{other:"00 milijard\u0173"},1E11:{other:"000 milijard\u0173"},1E12:{other:"0 trilijon\u0173"},1E13:{other:"00 trilijon\u0173"},1E14:{other:"000 trilijon\u0173"}}};goog.i18n.CompactNumberFormatSymbols_lt_LT=goog.i18n.CompactNumberFormatSymbols_lt;
247 goog.i18n.CompactNumberFormatSymbols_lv={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0t\u016bkst."},1E4:{other:"00\u00a0t\u016bkst."},1E5:{other:"000\u00a0t\u016bkst."},1E6:{other:"0\u00a0milj."},1E7:{other:"00\u00a0milj."},1E8:{other:"000\u00a0milj."},1E9:{other:"0\u00a0mljrd."},1E10:{other:"00\u00a0mljrd."},1E11:{other:"000\u00a0mljrd."},1E12:{other:"0\u00a0trilj."},1E13:{other:"00\u00a0trilj."},1E14:{other:"000\u00a0trilj."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 t\u016bksto\u0161i"},
248 1E4:{other:"00 t\u016bksto\u0161i"},1E5:{other:"000 t\u016bksto\u0161i"},1E6:{other:"0 miljoni"},1E7:{other:"00 miljoni"},1E8:{other:"000 miljoni"},1E9:{other:"0 miljardi"},1E10:{other:"00 miljardi"},1E11:{other:"000 miljardi"},1E12:{other:"0 triljoni"},1E13:{other:"00 triljoni"},1E14:{other:"000 triljoni"}}};goog.i18n.CompactNumberFormatSymbols_lv_LV=goog.i18n.CompactNumberFormatSymbols_lv;
249 goog.i18n.CompactNumberFormatSymbols_ml={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0d06\u0d2f\u0d3f\u0d30\u0d02"},1E4:{other:"00 \u0d06\u0d2f\u0d3f\u0d30\u0d02"},1E5:{other:"000 \u0d06\u0d2f\u0d3f\u0d30\u0d02"},1E6:{other:"0 \u0d26\u0d36\u0d32\u0d15\u0d4d\u0d37\u0d02"},
250 1E7:{other:"00 \u0d26\u0d36\u0d32\u0d15\u0d4d\u0d37\u0d02"},1E8:{other:"000 \u0d26\u0d36\u0d32\u0d15\u0d4d\u0d37\u0d02"},1E9:{other:"0 \u0d32\u0d15\u0d4d\u0d37\u0d02 \u0d15\u0d4b\u0d1f\u0d3f"},1E10:{other:"00 \u0d32\u0d15\u0d4d\u0d37\u0d02 \u0d15\u0d4b\u0d1f\u0d3f"},1E11:{other:"000 \u0d32\u0d15\u0d4d\u0d37\u0d02 \u0d15\u0d4b\u0d1f\u0d3f"},1E12:{other:"0 \u0d1f\u0d4d\u0d30\u0d3f\u0d32\u0d4d\u0d2f\u0d7a"},1E13:{other:"00 \u0d1f\u0d4d\u0d30\u0d3f\u0d32\u0d4d\u0d2f\u0d7a"},1E14:{other:"000 \u0d1f\u0d4d\u0d30\u0d3f\u0d32\u0d4d\u0d2f\u0d7a"}}};
251 goog.i18n.CompactNumberFormatSymbols_ml_IN=goog.i18n.CompactNumberFormatSymbols_ml;
252 goog.i18n.CompactNumberFormatSymbols_mr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0939\u091c\u093e\u0930"},1E4:{other:"00 \u0939\u091c\u093e\u0930"},1E5:{other:"000 \u0939\u091c\u093e\u0930"},1E6:{other:"0 \u0926\u0936\u0932\u0915\u094d\u0937"},
253 1E7:{other:"00 \u0926\u0936\u0932\u0915\u094d\u0937"},1E8:{other:"000 \u0926\u0936\u0932\u0915\u094d\u0937"},1E9:{other:"0 \u092e\u0939\u093e\u092a\u0926\u094d\u092e"},1E10:{other:"00 \u092e\u0939\u093e\u092a\u0926\u094d\u092e"},1E11:{other:"000 \u092e\u0939\u093e\u092a\u0926\u094d\u092e"},1E12:{other:"0 \u0916\u0930\u092c"},1E13:{other:"00 \u0916\u0930\u092c"},1E14:{other:"000 \u0916\u0930\u092c"}}};goog.i18n.CompactNumberFormatSymbols_mr_IN=goog.i18n.CompactNumberFormatSymbols_mr;
254 goog.i18n.CompactNumberFormatSymbols_ms={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0J"},1E7:{other:"00J"},1E8:{other:"000J"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 ribu"},1E4:{other:"00 ribu"},1E5:{other:"000 ribu"},1E6:{other:"0 juta"},1E7:{other:"00 juta"},1E8:{other:"000 juta"},1E9:{other:"0 bilion"},1E10:{other:"00 bilion"},
255 1E11:{other:"000 bilion"},1E12:{other:"0 trilion"},1E13:{other:"00 trilion"},1E14:{other:"000 trilion"}}};goog.i18n.CompactNumberFormatSymbols_ms_Latn_MY=goog.i18n.CompactNumberFormatSymbols_ms;goog.i18n.CompactNumberFormatSymbols_mt={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};
256 goog.i18n.CompactNumberFormatSymbols_mt_MT=goog.i18n.CompactNumberFormatSymbols_mt;
257 goog.i18n.CompactNumberFormatSymbols_nb={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0K"},1E4:{other:"00\u00a0K"},1E5:{other:"000\u00a0K"},1E6:{other:"0\u00a0mill"},1E7:{other:"00\u00a0mill"},1E8:{other:"000\u00a0mill"},1E9:{other:"0\u00a0mrd"},1E10:{other:"00\u00a0mrd"},1E11:{other:"000\u00a0mrd"},1E12:{other:"0\u00a0bill"},1E13:{other:"00\u00a0bill"},1E14:{other:"000\u00a0bill"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tusen"},1E4:{other:"00 tusen"},1E5:{other:"000 tusen"},1E6:{other:"0 millioner"},
258 1E7:{other:"00 millioner"},1E8:{other:"000 millioner"},1E9:{other:"0 milliarder"},1E10:{other:"00 milliarder"},1E11:{other:"000 milliarder"},1E12:{other:"0 billioner"},1E13:{other:"00 billioner"},1E14:{other:"000 billioner"}}};goog.i18n.CompactNumberFormatSymbols_nb_NO=goog.i18n.CompactNumberFormatSymbols_nb;goog.i18n.CompactNumberFormatSymbols_nb_SJ=goog.i18n.CompactNumberFormatSymbols_nb;
259 goog.i18n.CompactNumberFormatSymbols_nl={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0\u00a0mln."},1E7:{other:"00\u00a0mln."},1E8:{other:"000\u00a0mln."},1E9:{other:"0\u00a0mld."},1E10:{other:"00\u00a0mld."},1E11:{other:"000\u00a0mld."},1E12:{other:"0\u00a0bln."},1E13:{other:"00\u00a0bln."},1E14:{other:"000\u00a0bln."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 duizend"},1E4:{other:"00 duizend"},1E5:{other:"000 duizend"},1E6:{other:"0 miljoen"},
260 1E7:{other:"00 miljoen"},1E8:{other:"000 miljoen"},1E9:{other:"0 miljard"},1E10:{other:"00 miljard"},1E11:{other:"000 miljard"},1E12:{other:"0 biljoen"},1E13:{other:"00 biljoen"},1E14:{other:"000 biljoen"}}};goog.i18n.CompactNumberFormatSymbols_nl_NL=goog.i18n.CompactNumberFormatSymbols_nl;
261 goog.i18n.CompactNumberFormatSymbols_no={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0K"},1E4:{other:"00\u00a0K"},1E5:{other:"000\u00a0K"},1E6:{other:"0\u00a0mill"},1E7:{other:"00\u00a0mill"},1E8:{other:"000\u00a0mill"},1E9:{other:"0\u00a0mrd"},1E10:{other:"00\u00a0mrd"},1E11:{other:"000\u00a0mrd"},1E12:{other:"0\u00a0bill"},1E13:{other:"00\u00a0bill"},1E14:{other:"000\u00a0bill"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tusen"},1E4:{other:"00 tusen"},1E5:{other:"000 tusen"},1E6:{other:"0 millioner"},
262 1E7:{other:"00 millioner"},1E8:{other:"000 millioner"},1E9:{other:"0 milliarder"},1E10:{other:"00 milliarder"},1E11:{other:"000 milliarder"},1E12:{other:"0 billioner"},1E13:{other:"00 billioner"},1E14:{other:"000 billioner"}}};goog.i18n.CompactNumberFormatSymbols_or={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0G"},1E10:{other:"00G"},1E11:{other:"000G"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}}};
263 goog.i18n.CompactNumberFormatSymbols_or_IN=goog.i18n.CompactNumberFormatSymbols_or;
264 goog.i18n.CompactNumberFormatSymbols_pl={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tys."},1E4:{other:"00\u00a0tys."},1E5:{other:"000\u00a0tys."},1E6:{other:"0\u00a0mln"},1E7:{other:"00\u00a0mln"},1E8:{other:"000\u00a0mln"},1E9:{other:"0\u00a0mld"},1E10:{other:"00\u00a0mld"},1E11:{other:"000\u00a0mld"},1E12:{other:"0\u00a0bln"},1E13:{other:"00\u00a0bln"},1E14:{other:"000\u00a0bln"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tysi\u0105ca"},1E4:{other:"00 tysi\u0105ca"},1E5:{other:"000 tysi\u0105ca"},
265 1E6:{other:"0 miliona"},1E7:{other:"00 miliona"},1E8:{other:"000 miliona"},1E9:{other:"0 miliarda"},1E10:{other:"00 miliarda"},1E11:{other:"000 miliarda"},1E12:{other:"0 biliona"},1E13:{other:"00 biliona"},1E14:{other:"000 biliona"}}};goog.i18n.CompactNumberFormatSymbols_pl_PL=goog.i18n.CompactNumberFormatSymbols_pl;
266 goog.i18n.CompactNumberFormatSymbols_pt={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0mil"},1E4:{other:"00\u00a0mil"},1E5:{other:"000\u00a0mil"},1E6:{other:"0\u00a0mi"},1E7:{other:"00\u00a0mi"},1E8:{other:"000\u00a0mi"},1E9:{other:"0\u00a0bi"},1E10:{other:"00\u00a0bi"},1E11:{other:"000\u00a0bi"},1E12:{other:"0\u00a0tri"},1E13:{other:"00\u00a0tri"},1E14:{other:"000\u00a0tri"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 milh\u00f5es"},
267 1E7:{other:"00 milh\u00f5es"},1E8:{other:"000 milh\u00f5es"},1E9:{other:"0 bilh\u00f5es"},1E10:{other:"00 bilh\u00f5es"},1E11:{other:"000 bilh\u00f5es"},1E12:{other:"0 trilh\u00f5es"},1E13:{other:"00 trilh\u00f5es"},1E14:{other:"000 trilh\u00f5es"}}};goog.i18n.CompactNumberFormatSymbols_pt_BR=goog.i18n.CompactNumberFormatSymbols_pt;
268 goog.i18n.CompactNumberFormatSymbols_pt_PT={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0mil"},1E4:{other:"00\u00a0mil"},1E5:{other:"000\u00a0mil"},1E6:{other:"0\u00a0M"},1E7:{other:"00\u00a0M"},1E8:{other:"000\u00a0M"},1E9:{other:"0\u00a0MM"},1E10:{other:"00\u00a0MM"},1E11:{other:"000\u00a0MM"},1E12:{other:"0\u00a0Bi"},1E13:{other:"00\u00a0Bi"},1E14:{other:"000\u00a0Bi"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mil"},1E4:{other:"00 mil"},1E5:{other:"000 mil"},1E6:{other:"0 milh\u00f5es"},
269 1E7:{other:"00 milh\u00f5es"},1E8:{other:"000 milh\u00f5es"},1E9:{other:"0 mil milh\u00f5es"},1E10:{other:"00 mil milh\u00f5es"},1E11:{other:"000 mil milh\u00f5es"},1E12:{other:"0 bili\u00f5es"},1E13:{other:"00 bili\u00f5es"},1E14:{other:"000 bili\u00f5es"}}};
270 goog.i18n.CompactNumberFormatSymbols_ro={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0K"},1E4:{other:"00\u00a0K"},1E5:{other:"000\u00a0K"},1E6:{other:"0\u00a0mil."},1E7:{other:"00\u00a0mil."},1E8:{other:"000\u00a0mil."},1E9:{other:"0\u00a0mld."},1E10:{other:"00\u00a0mld."},1E11:{other:"000\u00a0mld."},1E12:{other:"0\u00a0tril."},1E13:{other:"00\u00a0tril."},1E14:{other:"000\u00a0tril."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 de mii"},1E4:{other:"00 de mii"},1E5:{other:"000 de mii"},1E6:{other:"0 de milioane"},
271 1E7:{other:"00 de milioane"},1E8:{other:"000 de milioane"},1E9:{other:"0 de miliarde"},1E10:{other:"00 de miliarde"},1E11:{other:"000 de miliarde"},1E12:{other:"0 de trilioane"},1E13:{other:"00 de trilioane"},1E14:{other:"000 de trilioane"}}};goog.i18n.CompactNumberFormatSymbols_ro_RO=goog.i18n.CompactNumberFormatSymbols_ro;
272 goog.i18n.CompactNumberFormatSymbols_ru={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0442\u044b\u0441."},1E4:{other:"00\u00a0\u0442\u044b\u0441."},1E5:{other:"000\u00a0\u0442\u044b\u0441."},1E6:{other:"0\u00a0\u043c\u043b\u043d"},1E7:{other:"00\u00a0\u043c\u043b\u043d"},1E8:{other:"000\u00a0\u043c\u043b\u043d"},1E9:{other:"0\u00a0\u043c\u043b\u0440\u0434"},1E10:{other:"00\u00a0\u043c\u043b\u0440\u0434"},1E11:{other:"000\u00a0\u043c\u043b\u0440\u0434"},1E12:{other:"0\u00a0\u0442\u0440\u043b\u043d"},
273 1E13:{other:"00\u00a0\u0442\u0440\u043b\u043d"},1E14:{other:"000\u00a0\u0442\u0440\u043b\u043d"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0442\u044b\u0441\u044f\u0447\u0438"},1E4:{other:"00 \u0442\u044b\u0441\u044f\u0447\u0438"},1E5:{other:"000 \u0442\u044b\u0441\u044f\u0447\u0438"},1E6:{other:"0 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430"},1E7:{other:"00 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430"},1E8:{other:"000 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430"},1E9:{other:"0 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u0430"},
274 1E10:{other:"00 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u0430"},1E11:{other:"000 \u043c\u0438\u043b\u043b\u0438\u0430\u0440\u0434\u0430"},1E12:{other:"0 \u0442\u0440\u0438\u043b\u043b\u0438\u043e\u043d\u0430"},1E13:{other:"00 \u0442\u0440\u0438\u043b\u043b\u0438\u043e\u043d\u0430"},1E14:{other:"000 \u0442\u0440\u0438\u043b\u043b\u0438\u043e\u043d\u0430"}}};goog.i18n.CompactNumberFormatSymbols_ru_RU=goog.i18n.CompactNumberFormatSymbols_ru;
275 goog.i18n.CompactNumberFormatSymbols_sk={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tis."},1E4:{other:"00\u00a0tis."},1E5:{other:"000\u00a0tis."},1E6:{other:"0\u00a0mil."},1E7:{other:"00\u00a0mil."},1E8:{other:"000\u00a0mil."},1E9:{other:"0\u00a0mld."},1E10:{other:"00\u00a0mld."},1E11:{other:"000\u00a0mld."},1E12:{other:"0\u00a0bil."},1E13:{other:"00\u00a0bil."},1E14:{other:"000\u00a0bil."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tis\u00edc"},1E4:{other:"00 tis\u00edc"},1E5:{other:"000 tis\u00edc"},
276 1E6:{other:"0 mili\u00f3nov"},1E7:{other:"00 mili\u00f3nov"},1E8:{other:"000 mili\u00f3nov"},1E9:{other:"0 miliard"},1E10:{other:"00 mili\u00e1rd"},1E11:{other:"000 mili\u00e1rd"},1E12:{other:"0 bili\u00f3nov"},1E13:{other:"00 bili\u00f3nov"},1E14:{other:"000 bili\u00f3nov"}}};goog.i18n.CompactNumberFormatSymbols_sk_SK=goog.i18n.CompactNumberFormatSymbols_sk;
277 goog.i18n.CompactNumberFormatSymbols_sl={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tis."},1E4:{other:"00\u00a0tis."},1E5:{other:"000\u00a0tis."},1E6:{other:"0\u00a0mio."},1E7:{other:"00\u00a0mio."},1E8:{other:"000\u00a0mio."},1E9:{other:"0\u00a0mrd."},1E10:{other:"00\u00a0mrd."},1E11:{other:"000\u00a0mrd."},1E12:{other:"0\u00a0bil."},1E13:{other:"00\u00a0bil."},1E14:{other:"000\u00a0bil."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tiso\u010d"},1E4:{other:"00 tiso\u010d"},1E5:{other:"000 tiso\u010d"},
278 1E6:{other:"0 milijonov"},1E7:{other:"00 milijonov"},1E8:{other:"000 milijonov"},1E9:{other:"0 milijard"},1E10:{other:"00 milijard"},1E11:{other:"000 milijard"},1E12:{other:"0 bilijonov"},1E13:{other:"00 bilijonov"},1E14:{other:"000 bilijonov"}}};goog.i18n.CompactNumberFormatSymbols_sl_SI=goog.i18n.CompactNumberFormatSymbols_sl;
279 goog.i18n.CompactNumberFormatSymbols_sq={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0mij\u00eb"},1E4:{other:"00\u00a0mij\u00eb"},1E5:{other:"000\u00a0mij\u00eb"},1E6:{other:"0\u00a0Mln"},1E7:{other:"00\u00a0Mln"},1E8:{other:"000\u00a0Mln"},1E9:{other:"0\u00a0Mld"},1E10:{other:"00\u00a0Mld"},1E11:{other:"000\u00a0Mld"},1E12:{other:"0\u00a0Bln"},1E13:{other:"00\u00a0Bln"},1E14:{other:"000\u00a0Bln"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 mij\u00eb"},1E4:{other:"00 mij\u00eb"},1E5:{other:"000 mij\u00eb"},
280 1E6:{other:"0 milion"},1E7:{other:"00 milion"},1E8:{other:"000 milion"},1E9:{other:"0 miliard"},1E10:{other:"00 miliard"},1E11:{other:"000 miliard"},1E12:{other:"0 bilion"},1E13:{other:"00 bilion"},1E14:{other:"000 bilion"}}};goog.i18n.CompactNumberFormatSymbols_sq_AL=goog.i18n.CompactNumberFormatSymbols_sq;
281 goog.i18n.CompactNumberFormatSymbols_sr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"00\u00a0\u0445\u0438\u0459"},1E5:{other:"000\u00a0\u0445\u0438\u0459"},1E6:{other:"0\u00a0\u043c\u0438\u043b"},1E7:{other:"00\u00a0\u043c\u0438\u043b"},1E8:{other:"000\u00a0\u043c\u0438\u043b"},1E9:{other:"0\u00a0\u043c\u043b\u0440\u0434"},1E10:{other:"00\u00a0\u043c\u043b\u0440\u0434"},1E11:{other:"000\u00a0\u043c\u043b\u0440\u0434"},1E12:{other:"0\u00a0\u0431\u0438\u043b"},1E13:{other:"00\u00a0\u0431\u0438\u043b"},
282 1E14:{other:"000\u00a0\u0431\u0438\u043b"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0445\u0438\u0459\u0430\u0434\u0430"},1E4:{other:"00 \u0445\u0438\u0459\u0430\u0434\u0430"},1E5:{other:"000 \u0445\u0438\u0459\u0430\u0434\u0430"},1E6:{other:"0 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E7:{other:"00 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E8:{other:"000 \u043c\u0438\u043b\u0438\u043e\u043d\u0430"},1E9:{other:"0 \u043c\u0438\u043b\u0438\u0458\u0430\u0440\u0434\u0438"},1E10:{other:"00 \u043c\u0438\u043b\u0438\u0458\u0430\u0440\u0434\u0438"},
283 1E11:{other:"000 \u043c\u0438\u043b\u0438\u0458\u0430\u0440\u0434\u0438"},1E12:{other:"0 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"},1E13:{other:"00 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"},1E14:{other:"000 \u0442\u0440\u0438\u043b\u0438\u043e\u043d\u0430"}}};goog.i18n.CompactNumberFormatSymbols_sr_Cyrl_RS=goog.i18n.CompactNumberFormatSymbols_sr;
284 goog.i18n.CompactNumberFormatSymbols_sv={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0tn"},1E4:{other:"00\u00a0tn"},1E5:{other:"000\u00a0tn"},1E6:{other:"0\u00a0mn"},1E7:{other:"00\u00a0mn"},1E8:{other:"000\u00a0mn"},1E9:{other:"0\u00a0md"},1E10:{other:"00\u00a0md"},1E11:{other:"000\u00a0md"},1E12:{other:"0\u00a0bn"},1E13:{other:"00\u00a0bn"},1E14:{other:"000\u00a0bn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 tusen"},1E4:{other:"00 tusen"},1E5:{other:"000 tusen"},1E6:{other:"0 miljoner"},
285 1E7:{other:"00 miljoner"},1E8:{other:"000 miljoner"},1E9:{other:"0 miljarder"},1E10:{other:"00 miljarder"},1E11:{other:"000 miljarder"},1E12:{other:"0 biljoner"},1E13:{other:"00 biljoner"},1E14:{other:"000 biljoner"}}};goog.i18n.CompactNumberFormatSymbols_sv_SE=goog.i18n.CompactNumberFormatSymbols_sv;
286 goog.i18n.CompactNumberFormatSymbols_sw={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"elfu\u00a00"},1E4:{other:"elfu\u00a000"},1E5:{other:"laki0"},1E6:{other:"M0"},1E7:{other:"M00"},1E8:{other:"M000"},1E9:{other:"B0"},1E10:{other:"B00"},1E11:{other:"B000"},1E12:{other:"T0"},1E13:{other:"T00"},1E14:{other:"T000"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"Elfu 0"},1E4:{other:"Elfu 00"},1E5:{other:"Elfu 000"},1E6:{other:"Milioni 0"},1E7:{other:"Milioni 00"},1E8:{other:"Milioni 000"},1E9:{other:"Bilioni 0"},
287 1E10:{other:"Bilioni 00"},1E11:{other:"Bilioni 000"},1E12:{other:"Trilioni 0"},1E13:{other:"Trilioni 00"},1E14:{other:"Trilioni 000"}}};goog.i18n.CompactNumberFormatSymbols_sw_TZ=goog.i18n.CompactNumberFormatSymbols_sw;
288 goog.i18n.CompactNumberFormatSymbols_ta={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u0b86"},1E4:{other:"00\u0b86"},1E5:{other:"000\u0b86"},1E6:{other:"0\u0bae\u0bbf"},1E7:{other:"00\u0bae\u0bbf"},1E8:{other:"000\u0bae\u0bbf"},1E9:{other:"0\u0baa\u0bbf"},1E10:{other:"00\u0baa\u0bbf"},1E11:{other:"000\u0baa\u0bbf"},1E12:{other:"0\u0b9f\u0bbf"},1E13:{other:"00\u0b9f\u0bbf"},1E14:{other:"000\u0b9f\u0bbf"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0b86\u0baf\u0bbf\u0bb0\u0bae\u0bcd"},1E4:{other:"00 \u0b86\u0baf\u0bbf\u0bb0\u0bae\u0bcd"},
289 1E5:{other:"000 \u0b86\u0baf\u0bbf\u0bb0\u0bae\u0bcd"},1E6:{other:"0 \u0bae\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E7:{other:"00 \u0bae\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E8:{other:"000 \u0bae\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E9:{other:"0 \u0baa\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E10:{other:"00 \u0baa\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E11:{other:"000 \u0baa\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E12:{other:"0 \u0b9f\u0bbf\u0bb0\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},
290 1E13:{other:"00 \u0b9f\u0bbf\u0bb0\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"},1E14:{other:"000 \u0b9f\u0bbf\u0bb0\u0bbf\u0bb2\u0bcd\u0bb2\u0bbf\u0baf\u0ba9\u0bcd"}}};goog.i18n.CompactNumberFormatSymbols_ta_IN=goog.i18n.CompactNumberFormatSymbols_ta;
291 goog.i18n.CompactNumberFormatSymbols_te={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u0c35\u0c47"},1E4:{other:"00\u0c35\u0c47"},1E5:{other:"000\u0c35\u0c47"},1E6:{other:"0\u0c2e\u0c3f"},1E7:{other:"00\u0c2e\u0c3f"},1E8:{other:"000\u0c2e\u0c3f"},1E9:{other:"0\u0c2c\u0c3f"},1E10:{other:"00\u0c2c\u0c3f"},1E11:{other:"000\u0c2c\u0c3f"},1E12:{other:"0\u0c1f\u0c4d\u0c30\u0c3f"},1E13:{other:"00\u0c1f\u0c4d\u0c30\u0c3f"},1E14:{other:"000\u0c1f\u0c4d\u0c30\u0c3f"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0c35\u0c47\u0c32\u0c41"},
292 1E4:{other:"00 \u0c35\u0c47\u0c32\u0c41"},1E5:{other:"000 \u0c35\u0c47\u0c32\u0c41"},1E6:{other:"0 \u0c2e\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E7:{other:"00 \u0c2e\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E8:{other:"000 \u0c2e\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E9:{other:"0 \u0c2c\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E10:{other:"00 \u0c2c\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E11:{other:"000 \u0c2c\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E12:{other:"0 \u0c1f\u0c4d\u0c30\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},
293 1E13:{other:"00 \u0c1f\u0c4d\u0c30\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"},1E14:{other:"000 \u0c1f\u0c4d\u0c30\u0c3f\u0c32\u0c3f\u0c2f\u0c28\u0c4d"}}};goog.i18n.CompactNumberFormatSymbols_te_IN=goog.i18n.CompactNumberFormatSymbols_te;
294 goog.i18n.CompactNumberFormatSymbols_th={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0e1e."},1E4:{other:"0\u00a0\u0e21."},1E5:{other:"0\u00a0\u0e2a."},1E6:{other:"0\u00a0\u0e25."},1E7:{other:"00\u00a0\u0e25."},1E8:{other:"000\u00a0\u0e25."},1E9:{other:"0\u00a0\u0e1e.\u0e25."},1E10:{other:"0\u00a0\u0e21.\u0e25."},1E11:{other:"0\u00a0\u0e2a.\u0e25."},1E12:{other:"0\u00a0\u0e25.\u0e25."},1E13:{other:"00\u00a0\u0e25.\u0e25."},1E14:{other:"000\u00a0\u0e25.\u0e25."}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0e1e\u0e31\u0e19"},
295 1E4:{other:"0 \u0e2b\u0e21\u0e37\u0e48\u0e19"},1E5:{other:"0 \u0e41\u0e2a\u0e19"},1E6:{other:"0 \u0e25\u0e49\u0e32\u0e19"},1E7:{other:"00 \u0e25\u0e49\u0e32\u0e19"},1E8:{other:"000 \u0e25\u0e49\u0e32\u0e19"},1E9:{other:"0 \u0e1e\u0e31\u0e19\u0e25\u0e49\u0e32\u0e19"},1E10:{other:"0 \u0e2b\u0e21\u0e37\u0e48\u0e19\u0e25\u0e49\u0e32\u0e19"},1E11:{other:"0 \u0e41\u0e2a\u0e19\u0e25\u0e49\u0e32\u0e19"},1E12:{other:"0 \u0e25\u0e49\u0e32\u0e19\u0e25\u0e49\u0e32\u0e19"},1E13:{other:"00 \u0e25\u0e49\u0e32\u0e19\u0e25\u0e49\u0e32\u0e19"},
296 1E14:{other:"000 \u0e25\u0e49\u0e32\u0e19\u0e25\u0e49\u0e32\u0e19"}}};goog.i18n.CompactNumberFormatSymbols_th_TH=goog.i18n.CompactNumberFormatSymbols_th;
297 goog.i18n.CompactNumberFormatSymbols_tl={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 libo"},1E4:{other:"00 libo"},1E5:{other:"000 libo"},1E6:{other:"0 milyon"},1E7:{other:"00 milyon"},1E8:{other:"000 milyon"},1E9:{other:"0 bilyon"},1E10:{other:"00 bilyon"},
298 1E11:{other:"000 bilyon"},1E12:{other:"0 trilyon"},1E13:{other:"00 trilyon"},1E14:{other:"000 trilyon"}}};
299 goog.i18n.CompactNumberFormatSymbols_tr={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0"},1E4:{other:"00\u00a0B"},1E5:{other:"000\u00a0B"},1E6:{other:"0\u00a0Mn"},1E7:{other:"00\u00a0Mn"},1E8:{other:"000\u00a0Mn"},1E9:{other:"0\u00a0Mr"},1E10:{other:"00\u00a0Mr"},1E11:{other:"000\u00a0Mr"},1E12:{other:"0\u00a0Tn"},1E13:{other:"00\u00a0Tn"},1E14:{other:"000\u00a0Tn"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 bin"},1E4:{other:"00 bin"},1E5:{other:"000 bin"},1E6:{other:"0 milyon"},1E7:{other:"00 milyon"},
300 1E8:{other:"000 milyon"},1E9:{other:"0 milyar"},1E10:{other:"00 milyar"},1E11:{other:"000 milyar"},1E12:{other:"0 trilyon"},1E13:{other:"00 trilyon"},1E14:{other:"000 trilyon"}}};goog.i18n.CompactNumberFormatSymbols_tr_TR=goog.i18n.CompactNumberFormatSymbols_tr;
301 goog.i18n.CompactNumberFormatSymbols_uk={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u0442\u0438\u0441"},1E4:{other:"00\u00a0\u0442\u0438\u0441"},1E5:{other:"000\u00a0\u0442\u0438\u0441"},1E6:{other:"0\u00a0\u043c\u043b\u043d"},1E7:{other:"00\u00a0\u043c\u043b\u043d"},1E8:{other:"000\u00a0\u043c\u043b\u043d"},1E9:{other:"0\u00a0\u043c\u043b\u0440\u0434"},1E10:{other:"00\u00a0\u043c\u043b\u0440\u0434"},1E11:{other:"000\u00a0\u043c\u043b\u0440\u0434"},1E12:{other:"0\u00a0\u0442\u0440\u043b\u043d"},
302 1E13:{other:"00\u00a0\u0442\u0440\u043b\u043d"},1E14:{other:"000\u00a0\u0442\u0440\u043b\u043d"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u0442\u0438\u0441\u044f\u0447\u0456"},1E4:{other:"00 \u0442\u0438\u0441\u044f\u0447\u0456"},1E5:{other:"000 \u0442\u0438\u0441\u044f\u0447\u0456"},1E6:{other:"0 \u043c\u0456\u043b\u044c\u0439\u043e\u043d\u0430"},1E7:{other:"00 \u043c\u0456\u043b\u044c\u0439\u043e\u043d\u0430"},1E8:{other:"000 \u043c\u0456\u043b\u044c\u0439\u043e\u043d\u0430"},1E9:{other:"0 \u043c\u0456\u043b\u044c\u044f\u0440\u0434\u0430"},
303 1E10:{other:"00 \u043c\u0456\u043b\u044c\u044f\u0440\u0434\u0430"},1E11:{other:"000 \u043c\u0456\u043b\u044c\u044f\u0440\u0434\u0430"},1E12:{other:"0 \u0442\u0440\u0438\u043b\u044c\u0439\u043e\u043d\u0430"},1E13:{other:"00 \u0442\u0440\u0438\u043b\u044c\u0439\u043e\u043d\u0430"},1E14:{other:"000 \u0442\u0440\u0438\u043b\u044c\u0439\u043e\u043d\u0430"}}};goog.i18n.CompactNumberFormatSymbols_uk_UA=goog.i18n.CompactNumberFormatSymbols_uk;
304 goog.i18n.CompactNumberFormatSymbols_ur={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0\u06c1\u0632\u0627\u0631"},1E4:{other:"00\u00a0\u06c1\u0632\u0627\u0631"},1E5:{other:"0\u00a0\u0644\u0627\u06a9\u06be"},1E6:{other:"00\u00a0\u0644\u0627\u06a9\u06be"},1E7:{other:"0\u00a0\u06a9\u0631\u0648\u0691"},1E8:{other:"00\u00a0\u06a9\u0631\u0648\u0691"},1E9:{other:"0\u00a0\u0627\u0631\u0628"},1E10:{other:"00\u00a0\u0627\u0631\u0628"},1E11:{other:"0\u00a0\u06a9\u06be\u0631\u0628"},1E12:{other:"00\u00a0\u06a9\u06be\u0631\u0628"},
305 1E13:{other:"00T"},1E14:{other:"000T"}}};goog.i18n.CompactNumberFormatSymbols_ur_PK=goog.i18n.CompactNumberFormatSymbols_ur;
306 goog.i18n.CompactNumberFormatSymbols_vi={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u00a0N"},1E4:{other:"00\u00a0N"},1E5:{other:"000\u00a0N"},1E6:{other:"0\u00a0Tr"},1E7:{other:"00\u00a0Tr"},1E8:{other:"000\u00a0Tr"},1E9:{other:"0\u00a0T"},1E10:{other:"00\u00a0T"},1E11:{other:"000\u00a0T"},1E12:{other:"0\u00a0NT"},1E13:{other:"00\u00a0NT"},1E14:{other:"000\u00a0NT"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 ngh\u00ecn"},1E4:{other:"00 ngh\u00ecn"},1E5:{other:"000 ngh\u00ecn"},1E6:{other:"0 tri\u1ec7u"},
307 1E7:{other:"00 tri\u1ec7u"},1E8:{other:"000 tri\u1ec7u"},1E9:{other:"0 t\u1ef7"},1E10:{other:"00 t\u1ef7"},1E11:{other:"000 t\u1ef7"},1E12:{other:"0 ngh\u00ecn t\u1ef7"},1E13:{other:"00 ngh\u00ecn t\u1ef7"},1E14:{other:"000 ngh\u00ecn t\u1ef7"}}};goog.i18n.CompactNumberFormatSymbols_vi_VN=goog.i18n.CompactNumberFormatSymbols_vi;
308 goog.i18n.CompactNumberFormatSymbols_zh={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0\u5343"},1E4:{other:"0\u4e07"},1E5:{other:"00\u4e07"},1E6:{other:"000\u4e07"},1E7:{other:"0000\u4e07"},1E8:{other:"0\u4ebf"},1E9:{other:"00\u4ebf"},1E10:{other:"000\u4ebf"},1E11:{other:"0000\u4ebf"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0\u5343"},1E4:{other:"0\u4e07"},1E5:{other:"00\u4e07"},1E6:{other:"000\u4e07"},1E7:{other:"0000\u4e07"},
309 1E8:{other:"0\u4ebf"},1E9:{other:"00\u4ebf"},1E10:{other:"000\u4ebf"},1E11:{other:"0000\u4ebf"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}}};goog.i18n.CompactNumberFormatSymbols_zh_CN=goog.i18n.CompactNumberFormatSymbols_zh;
310 goog.i18n.CompactNumberFormatSymbols_zh_HK={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u5343"},1E4:{other:"0\u842c"},1E5:{other:"00\u842c"},1E6:{other:"000\u842c"},1E7:{other:"0000\u842c"},1E8:{other:"0\u5104"},1E9:{other:"00\u5104"},1E10:{other:"000\u5104"},
311 1E11:{other:"0000\u5104"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}}};goog.i18n.CompactNumberFormatSymbols_zh_Hans_CN=goog.i18n.CompactNumberFormatSymbols_zh;
312 goog.i18n.CompactNumberFormatSymbols_zh_TW={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 \u5343"},1E4:{other:"0\u842c"},1E5:{other:"00\u842c"},1E6:{other:"000\u842c"},1E7:{other:"0000\u842c"},1E8:{other:"0\u5104"},1E9:{other:"00\u5104"},1E10:{other:"000\u5104"},
313 1E11:{other:"0000\u5104"},1E12:{other:"0\u5146"},1E13:{other:"00\u5146"},1E14:{other:"000\u5146"}}};
314 goog.i18n.CompactNumberFormatSymbols_zu={COMPACT_DECIMAL_SHORT_PATTERN:{1E3:{other:"0K"},1E4:{other:"00K"},1E5:{other:"000K"},1E6:{other:"0M"},1E7:{other:"00M"},1E8:{other:"000M"},1E9:{other:"0B"},1E10:{other:"00B"},1E11:{other:"000B"},1E12:{other:"0T"},1E13:{other:"00T"},1E14:{other:"000T"}},COMPACT_DECIMAL_LONG_PATTERN:{1E3:{other:"0 inkulungwane"},1E4:{other:"00 inkulungwane"},1E5:{other:"000 inkulungwane"},1E6:{other:"0 isigidi"},1E7:{other:"00 isigidi"},1E8:{other:"000 isigidi"},1E9:{other:"0 isigidi sezigidi"},
315 1E10:{other:"00 isigidi sezigidi"},1E11:{other:"000 isigidi sezigidi"},1E12:{other:"0 isigidintathu"},1E13:{other:"00 isigidintathu"},1E14:{other:"000 isigidintathu"}}};goog.i18n.CompactNumberFormatSymbols_zu_ZA=goog.i18n.CompactNumberFormatSymbols_zu;goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;"af"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_af);
316 if("af_ZA"==goog.LOCALE||"af-ZA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_af;"am"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_am);if("am_ET"==goog.LOCALE||"am-ET"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_am;"ar"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ar);
317 if("ar_001"==goog.LOCALE||"ar-001"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ar;"bg"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_bg);if("bg_BG"==goog.LOCALE||"bg-BG"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_bg;"bn"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_bn);
318 if("bn_BD"==goog.LOCALE||"bn-BD"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_bn;"br"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_br);if("br_FR"==goog.LOCALE||"br-FR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_br;"ca"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ca);
319 if("ca_AD"==goog.LOCALE||"ca-AD"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ca;if("ca_ES"==goog.LOCALE||"ca-ES"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ca;if("ca_FR"==goog.LOCALE||"ca-FR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ca;if("ca_IT"==goog.LOCALE||"ca-IT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ca;
320 "chr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_chr);if("chr_US"==goog.LOCALE||"chr-US"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_chr;"cs"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_cs);if("cs_CZ"==goog.LOCALE||"cs-CZ"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_cs;
321 "cy"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_cy);if("cy_GB"==goog.LOCALE||"cy-GB"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_cy;"da"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_da);if("da_DK"==goog.LOCALE||"da-DK"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_da;
322 if("da_GL"==goog.LOCALE||"da-GL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_da;"de"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de);if("de_AT"==goog.LOCALE||"de-AT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de_AT;if("de_BE"==goog.LOCALE||"de-BE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de;
323 if("de_CH"==goog.LOCALE||"de-CH"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de_CH;if("de_DE"==goog.LOCALE||"de-DE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de;if("de_LU"==goog.LOCALE||"de-LU"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_de;"el"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_el);
324 if("el_GR"==goog.LOCALE||"el-GR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_el;"en"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en);if("en_001"==goog.LOCALE||"en-001"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_AS"==goog.LOCALE||"en-AS"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;
325 if("en_AU"==goog.LOCALE||"en-AU"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_AU;if("en_DG"==goog.LOCALE||"en-DG"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_Dsrt_US"==goog.LOCALE||"en-Dsrt-US"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_FM"==goog.LOCALE||"en-FM"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;
326 if("en_GB"==goog.LOCALE||"en-GB"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_GB;if("en_GU"==goog.LOCALE||"en-GU"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_IE"==goog.LOCALE||"en-IE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_IE;if("en_IN"==goog.LOCALE||"en-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_IN;
327 if("en_IO"==goog.LOCALE||"en-IO"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_MH"==goog.LOCALE||"en-MH"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_MP"==goog.LOCALE||"en-MP"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_PR"==goog.LOCALE||"en-PR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;
328 if("en_PW"==goog.LOCALE||"en-PW"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_SG"==goog.LOCALE||"en-SG"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_SG;if("en_TC"==goog.LOCALE||"en-TC"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_UM"==goog.LOCALE||"en-UM"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;
329 if("en_US"==goog.LOCALE||"en-US"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_VG"==goog.LOCALE||"en-VG"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_VI"==goog.LOCALE||"en-VI"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;if("en_ZA"==goog.LOCALE||"en-ZA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en_ZA;
330 if("en_ZW"==goog.LOCALE||"en-ZW"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_en;"es"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_es);if("es_419"==goog.LOCALE||"es-419"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_es_419;if("es_EA"==goog.LOCALE||"es-EA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_es;
331 if("es_ES"==goog.LOCALE||"es-ES"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_es;if("es_IC"==goog.LOCALE||"es-IC"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_es;"et"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_et);if("et_EE"==goog.LOCALE||"et-EE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_et;
332 "eu"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_eu);if("eu_ES"==goog.LOCALE||"eu-ES"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_eu;"fa"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fa);if("fa_IR"==goog.LOCALE||"fa-IR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fa;"fi"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fi);
333 if("fi_FI"==goog.LOCALE||"fi-FI"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fi;"fil"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fil);if("fil_PH"==goog.LOCALE||"fil-PH"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fil;"fr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr);
334 if("fr_BL"==goog.LOCALE||"fr-BL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_CA"==goog.LOCALE||"fr-CA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr_CA;if("fr_FR"==goog.LOCALE||"fr-FR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_GF"==goog.LOCALE||"fr-GF"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;
335 if("fr_GP"==goog.LOCALE||"fr-GP"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_MC"==goog.LOCALE||"fr-MC"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_MF"==goog.LOCALE||"fr-MF"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_MQ"==goog.LOCALE||"fr-MQ"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;
336 if("fr_PM"==goog.LOCALE||"fr-PM"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_RE"==goog.LOCALE||"fr-RE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;if("fr_YT"==goog.LOCALE||"fr-YT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_fr;"gl"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gl);
337 if("gl_ES"==goog.LOCALE||"gl-ES"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gl;"gsw"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gsw);if("gsw_CH"==goog.LOCALE||"gsw-CH"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gsw;if("gsw_LI"==goog.LOCALE||"gsw-LI"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gsw;
338 "gu"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gu);if("gu_IN"==goog.LOCALE||"gu-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_gu;"haw"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_haw);if("haw_US"==goog.LOCALE||"haw-US"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_haw;
339 "he"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_he);if("he_IL"==goog.LOCALE||"he-IL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_he;"hi"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hi);if("hi_IN"==goog.LOCALE||"hi-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hi;"hr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hr);
340 if("hr_HR"==goog.LOCALE||"hr-HR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hr;"hu"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hu);if("hu_HU"==goog.LOCALE||"hu-HU"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_hu;"id"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_id);
341 if("id_ID"==goog.LOCALE||"id-ID"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_id;"in"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_in);"is"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_is);if("is_IS"==goog.LOCALE||"is-IS"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_is;"it"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_it);
342 if("it_IT"==goog.LOCALE||"it-IT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_it;if("it_SM"==goog.LOCALE||"it-SM"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_it;"iw"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_iw);"ja"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ja);
343 if("ja_JP"==goog.LOCALE||"ja-JP"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ja;"kn"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_kn);if("kn_IN"==goog.LOCALE||"kn-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_kn;"ko"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ko);
344 if("ko_KR"==goog.LOCALE||"ko-KR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ko;"ln"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ln);if("ln_CD"==goog.LOCALE||"ln-CD"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ln;"lt"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_lt);
345 if("lt_LT"==goog.LOCALE||"lt-LT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_lt;"lv"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_lv);if("lv_LV"==goog.LOCALE||"lv-LV"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_lv;"ml"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ml);
346 if("ml_IN"==goog.LOCALE||"ml-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ml;"mr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_mr);if("mr_IN"==goog.LOCALE||"mr-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_mr;"ms"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ms);
347 if("ms_Latn_MY"==goog.LOCALE||"ms-Latn-MY"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ms;"mt"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_mt);if("mt_MT"==goog.LOCALE||"mt-MT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_mt;"nb"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_nb);
348 if("nb_NO"==goog.LOCALE||"nb-NO"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_nb;if("nb_SJ"==goog.LOCALE||"nb-SJ"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_nb;"nl"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_nl);if("nl_NL"==goog.LOCALE||"nl-NL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_nl;
349 "no"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_no);"or"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_or);if("or_IN"==goog.LOCALE||"or-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_or;"pl"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_pl);if("pl_PL"==goog.LOCALE||"pl-PL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_pl;
350 "pt"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_pt);if("pt_BR"==goog.LOCALE||"pt-BR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_pt;if("pt_PT"==goog.LOCALE||"pt-PT"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_pt_PT;"ro"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ro);
351 if("ro_RO"==goog.LOCALE||"ro-RO"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ro;"ru"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ru);if("ru_RU"==goog.LOCALE||"ru-RU"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ru;"sk"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sk);
352 if("sk_SK"==goog.LOCALE||"sk-SK"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sk;"sl"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sl);if("sl_SI"==goog.LOCALE||"sl-SI"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sl;"sq"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sq);
353 if("sq_AL"==goog.LOCALE||"sq-AL"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sq;"sr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sr);if("sr_Cyrl_RS"==goog.LOCALE||"sr-Cyrl-RS"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sr;"sv"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sv);
354 if("sv_SE"==goog.LOCALE||"sv-SE"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sv;"sw"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sw);if("sw_TZ"==goog.LOCALE||"sw-TZ"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_sw;"ta"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ta);
355 if("ta_IN"==goog.LOCALE||"ta-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ta;"te"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_te);if("te_IN"==goog.LOCALE||"te-IN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_te;"th"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_th);
356 if("th_TH"==goog.LOCALE||"th-TH"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_th;"tl"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_tl);"tr"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_tr);if("tr_TR"==goog.LOCALE||"tr-TR"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_tr;"uk"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_uk);
357 if("uk_UA"==goog.LOCALE||"uk-UA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_uk;"ur"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ur);if("ur_PK"==goog.LOCALE||"ur-PK"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_ur;"vi"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_vi);
358 if("vi_VN"==goog.LOCALE||"vi-VN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_vi;"zh"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zh);if("zh_CN"==goog.LOCALE||"zh-CN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zh;if("zh_HK"==goog.LOCALE||"zh-HK"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zh_HK;
359 if("zh_Hans_CN"==goog.LOCALE||"zh-Hans-CN"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zh;if("zh_TW"==goog.LOCALE||"zh-TW"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zh_TW;"zu"==goog.LOCALE&&(goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zu);if("zu_ZA"==goog.LOCALE||"zu-ZA"==goog.LOCALE)goog.i18n.CompactNumberFormatSymbols=goog.i18n.CompactNumberFormatSymbols_zu;goog.i18n.currency={};goog.i18n.currency.PRECISION_MASK_=7;goog.i18n.currency.POSITION_FLAG_=16;goog.i18n.currency.SPACE_FLAG_=32;goog.i18n.currency.tier2Enabled_=!1;goog.i18n.currency.addTier2Support=function(){if(!goog.i18n.currency.tier2Enabled_){for(var a in goog.i18n.currency.CurrencyInfoTier2)goog.i18n.currency.CurrencyInfo[a]=goog.i18n.currency.CurrencyInfoTier2[a];goog.i18n.currency.tier2Enabled_=!0}};
360 goog.i18n.currency.getGlobalCurrencyPattern=function(a){var b=goog.i18n.currency.CurrencyInfo[a],c=b[0];return a==b[1]?goog.i18n.currency.getCurrencyPattern_(c,b[1]):a+" "+goog.i18n.currency.getCurrencyPattern_(c,b[1])};goog.i18n.currency.getGlobalCurrencySign=function(a){var b=goog.i18n.currency.CurrencyInfo[a];return a==b[1]?a:a+" "+b[1]};goog.i18n.currency.getLocalCurrencyPattern=function(a){a=goog.i18n.currency.CurrencyInfo[a];return goog.i18n.currency.getCurrencyPattern_(a[0],a[1])};
361 goog.i18n.currency.getLocalCurrencySign=function(a){return goog.i18n.currency.CurrencyInfo[a][1]};goog.i18n.currency.getPortableCurrencyPattern=function(a){a=goog.i18n.currency.CurrencyInfo[a];return goog.i18n.currency.getCurrencyPattern_(a[0],a[2])};goog.i18n.currency.getPortableCurrencySign=function(a){return goog.i18n.currency.CurrencyInfo[a][2]};goog.i18n.currency.isPrefixSignPosition=function(a){return 0==(goog.i18n.currency.CurrencyInfo[a][0]&goog.i18n.currency.POSITION_FLAG_)};
362 goog.i18n.currency.getCurrencyPattern_=function(a,b){var c=["#,##0"],d=a&goog.i18n.currency.PRECISION_MASK_;if(0<d){c.push(".");for(var e=0;e<d;e++)c.push("0")}0==(a&goog.i18n.currency.POSITION_FLAG_)?(c.unshift(a&goog.i18n.currency.SPACE_FLAG_?"' ":"'"),c.unshift(b),c.unshift("'")):c.push(a&goog.i18n.currency.SPACE_FLAG_?" '":"'",b,"'");return c.join("")};
363 goog.i18n.currency.adjustPrecision=function(a,b){var c=["0"],d=goog.i18n.currency.CurrencyInfo[b],d=d[0]&goog.i18n.currency.PRECISION_MASK_;if(0<d){c.push(".");for(var e=0;e<d;e++)c.push("0")}return a.replace(/0.00/g,c.join(""))};
364 goog.i18n.currency.CurrencyInfo={AED:[2,"dh","\u062f.\u0625.","DH"],ALL:[0,"Lek","Lek"],AUD:[2,"$","AU$"],BDT:[2,"\u09f3","Tk"],BGN:[2,"lev","lev"],BRL:[2,"R$","R$"],CAD:[2,"$","C$"],CDF:[2,"FrCD","CDF"],CHF:[2,"CHF","CHF"],CLP:[0,"$","CL$"],CNY:[2,"\u00a5","RMB\u00a5"],COP:[0,"$","COL$"],CRC:[0,"\u20a1","CR\u20a1"],CZK:[50,"K\u010d","K\u010d"],DKK:[18,"kr","kr"],DOP:[2,"$","RD$"],EGP:[2,"\u00a3","LE"],ETB:[2,"Birr","Birr"],EUR:[2,"\u20ac","\u20ac"],GBP:[2,"\u00a3","GB\u00a3"],HKD:[2,"$","HK$"],HRK:[2,
365 "kn","kn"],HUF:[0,"Ft","Ft"],IDR:[0,"Rp","Rp"],ILS:[2,"\u20aa","IL\u20aa"],INR:[2,"\u20b9","Rs"],IRR:[0,"Rial","IRR"],ISK:[0,"kr","kr"],JMD:[2,"$","JA$"],JPY:[0,"\u00a5","JP\u00a5"],KRW:[0,"\u20a9","KR\u20a9"],LKR:[2,"Rs","SLRs"],LTL:[2,"Lt","Lt"],LVL:[2,"Ls","Ls"],MNT:[0,"\u20ae","MN\u20ae"],MXN:[2,"$","Mex$"],MYR:[2,"RM","RM"],NOK:[50,"kr","NOkr"],PAB:[2,"B/.","B/."],PEN:[2,"S/.","S/."],PHP:[2,"\u20b1","Php"],PKR:[0,"Rs","PKRs."],PLN:[50,"z\u0142","z\u0142"],RON:[2,"RON","RON"],RSD:[0,"din","RSD"],
366 RUB:[50,"\u0440\u0443\u0431.","\u0440\u0443\u0431."],SAR:[2,"Rial","Rial"],SEK:[2,"kr","kr"],SGD:[2,"$","S$"],THB:[2,"\u0e3f","THB"],TRY:[2,"TL","YTL"],TWD:[2,"NT$","NT$"],TZS:[0,"TSh","TSh"],UAH:[2,"\u20b4","UAH"],USD:[2,"$","US$"],UYU:[2,"$","$U"],VND:[0,"\u20ab","VN\u20ab"],YER:[0,"Rial","Rial"],ZAR:[2,"R","ZAR"]};
367 goog.i18n.currency.CurrencyInfoTier2={AFN:[48,"Af.","AFN"],AMD:[0,"Dram","dram"],AOA:[2,"Kz","Kz"],ARS:[2,"$","AR$"],AWG:[2,"Afl.","Afl."],AZN:[2,"man.","man."],BAM:[2,"KM","KM"],BBD:[2,"$","Bds$"],BHD:[3,"din","din"],BIF:[0,"FBu","FBu"],BMD:[2,"$","BD$"],BND:[2,"$","B$"],BOB:[2,"Bs","Bs"],BSD:[2,"$","BS$"],BTN:[2,"Nu.","Nu."],BWP:[2,"P","pula"],BYR:[0,"BYR","BYR"],BZD:[2,"$","BZ$"],CUC:[1,"$","CUC$"],CUP:[2,"$","CU$"],CVE:[2,"CVE","Esc"],DJF:[0,"Fdj","Fdj"],DZD:[2,"din","din"],ERN:[2,"Nfk","Nfk"],
368 FJD:[2,"$","FJ$"],FKP:[2,"\u00a3","FK\u00a3"],GEL:[2,"GEL","GEL"],GHS:[2,"GHS","GHS"],GIP:[2,"\u00a3","GI\u00a3"],GMD:[2,"GMD","GMD"],GNF:[0,"FG","FG"],GTQ:[2,"Q","GTQ"],GYD:[0,"$","GY$"],HNL:[2,"L","HNL"],HTG:[2,"HTG","HTG"],IQD:[0,"din","IQD"],JOD:[3,"din","JOD"],KES:[2,"Ksh","Ksh"],KGS:[2,"KGS","KGS"],KHR:[2,"Riel","KHR"],KMF:[0,"CF","KMF"],KPW:[0,"\u20a9KP","KPW"],KWD:[3,"din","KWD"],KYD:[2,"$","KY$"],KZT:[2,"\u20b8","KZT"],LAK:[0,"\u20ad","\u20ad"],LBP:[0,"L\u00a3","LBP"],LRD:[2,"$","L$"],LSL:[2,
369 "LSL","LSL"],LYD:[3,"din","LD"],MAD:[2,"dh","MAD"],MDL:[2,"MDL","MDL"],MGA:[0,"Ar","MGA"],MKD:[2,"din","MKD"],MMK:[0,"K","MMK"],MOP:[2,"MOP","MOP$"],MRO:[0,"MRO","MRO"],MUR:[0,"MURs","MURs"],MWK:[2,"MWK","MWK"],MZN:[2,"MTn","MTn"],NAD:[2,"$","N$"],NGN:[2,"\u20a6","NG\u20a6"],NIO:[2,"C$","C$"],NPR:[2,"Rs","NPRs"],NZD:[2,"$","NZ$"],OMR:[3,"Rial","OMR"],PGK:[2,"PGK","PGK"],PYG:[0,"Gs","PYG"],QAR:[2,"Rial","QR"],RWF:[0,"RF","RF"],SBD:[2,"$","SI$"],SCR:[2,"SCR","SCR"],SDG:[2,"SDG","SDG"],SHP:[2,"\u00a3",
370 "SH\u00a3"],SLL:[0,"SLL","SLL"],SOS:[0,"SOS","SOS"],SRD:[2,"$","SR$"],STD:[0,"Db","Db"],SYP:[0,"\u00a3","SY\u00a3"],SZL:[2,"SZL","SZL"],TJS:[2,"Som","TJS"],TND:[3,"din","DT"],TOP:[2,"T$","T$"],TTD:[2,"$","TT$"],UGX:[0,"UGX","UGX"],UZS:[0,"so\u02bcm","UZS"],VEF:[2,"Bs","Bs"],VUV:[0,"VUV","VUV"],WST:[2,"WST","WST"],XAF:[0,"FCFA","FCFA"],XCD:[2,"$","EC$"],XOF:[0,"CFA","CFA"],XPF:[0,"FCFP","FCFP"],ZMK:[0,"ZMK","ZMK"]};goog.i18n.NumberFormatSymbols_af={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"ZAR"};goog.i18n.NumberFormatSymbols_af_ZA=goog.i18n.NumberFormatSymbols_af;
371 goog.i18n.NumberFormatSymbols_am={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"ETB"};goog.i18n.NumberFormatSymbols_am_ET=goog.i18n.NumberFormatSymbols_am;
372 goog.i18n.NumberFormatSymbols_ar={DECIMAL_SEP:"\u066b",GROUP_SEP:"\u066c",PERCENT:"\u066a",ZERO_DIGIT:"\u0660",PLUS_SIGN:"\u200f+",MINUS_SIGN:"\u200f-",EXP_SYMBOL:"\u0627\u0633",PERMILL:"\u0609",INFINITY:"\u221e",NAN:"\u0644\u064a\u0633\u00a0\u0631\u0642\u0645",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"EGP"};goog.i18n.NumberFormatSymbols_ar_001=goog.i18n.NumberFormatSymbols_ar;
373 goog.i18n.NumberFormatSymbols_bg={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"BGN"};goog.i18n.NumberFormatSymbols_bg_BG=goog.i18n.NumberFormatSymbols_bg;
374 goog.i18n.NumberFormatSymbols_bn={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"\u09e6",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u09b8\u0982\u0996\u09cd\u09af\u09be\u00a0\u09a8\u09be",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"#,##,##0.00\u00a4;(#,##,##0.00\u00a4)",DEF_CURRENCY_CODE:"BDT"};goog.i18n.NumberFormatSymbols_bn_BD=goog.i18n.NumberFormatSymbols_bn;
375 goog.i18n.NumberFormatSymbols_br={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"EUR"};goog.i18n.NumberFormatSymbols_br_FR=goog.i18n.NumberFormatSymbols_br;
376 goog.i18n.NumberFormatSymbols_ca={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR"};goog.i18n.NumberFormatSymbols_ca_AD=goog.i18n.NumberFormatSymbols_ca;goog.i18n.NumberFormatSymbols_ca_ES=goog.i18n.NumberFormatSymbols_ca;goog.i18n.NumberFormatSymbols_ca_FR=goog.i18n.NumberFormatSymbols_ca;
377 goog.i18n.NumberFormatSymbols_ca_IT=goog.i18n.NumberFormatSymbols_ca;goog.i18n.NumberFormatSymbols_chr={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"USD"};goog.i18n.NumberFormatSymbols_chr_US=goog.i18n.NumberFormatSymbols_chr;
378 goog.i18n.NumberFormatSymbols_cs={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"CZK"};goog.i18n.NumberFormatSymbols_cs_CZ=goog.i18n.NumberFormatSymbols_cs;
379 goog.i18n.NumberFormatSymbols_cy={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"GBP"};goog.i18n.NumberFormatSymbols_cy_GB=goog.i18n.NumberFormatSymbols_cy;
380 goog.i18n.NumberFormatSymbols_da={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"DKK"};goog.i18n.NumberFormatSymbols_da_DK=goog.i18n.NumberFormatSymbols_da;goog.i18n.NumberFormatSymbols_da_GL=goog.i18n.NumberFormatSymbols_da;
381 goog.i18n.NumberFormatSymbols_de={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR"};
382 goog.i18n.NumberFormatSymbols_de_AT={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"EUR"};goog.i18n.NumberFormatSymbols_de_BE=goog.i18n.NumberFormatSymbols_de;
383 goog.i18n.NumberFormatSymbols_de_CH={DECIMAL_SEP:".",GROUP_SEP:"'",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00;\u00a4-#,##0.00",DEF_CURRENCY_CODE:"CHF
"};goog.i18n.NumberFormatSymbols_de_DE=goog.i18n.NumberFormatSymbols_de;goog.i18n.NumberFormatSymbols_de_LU=goog.i18n.NumberFormatSymbols_de;
384 goog.i18n.NumberFormatSymbols_el={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"e
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_el_GR=goog.i18n.NumberFormatSymbols_el;
385 goog.i18n.NumberFormatSymbols_en={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"USD
"};goog.i18n.NumberFormatSymbols_en_001=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_AS=goog.i18n.NumberFormatSymbols_en;
386 goog.i18n.NumberFormatSymbols_en_AU={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"AUD
"};goog.i18n.NumberFormatSymbols_en_DG=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_Dsrt_US=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_FM=goog.i18n.NumberFormatSymbols_en;
387 goog.i18n.NumberFormatSymbols_en_GB={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"GBP
"};goog.i18n.NumberFormatSymbols_en_GU=goog.i18n.NumberFormatSymbols_en;
388 goog.i18n.NumberFormatSymbols_en_IE={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"EUR
"};
389 goog.i18n.NumberFormatSymbols_en_IN={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_en_IO=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_MH=goog.i18n.NumberFormatSymbols_en;
390 goog.i18n.NumberFormatSymbols_en_MP=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_PR=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_PW=goog.i18n.NumberFormatSymbols_en;
391 goog.i18n.NumberFormatSymbols_en_SG={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"SGD
"};goog.i18n.NumberFormatSymbols_en_TC=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_UM=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_US=goog.i18n.NumberFormatSymbols_en;
392 goog.i18n.NumberFormatSymbols_en_VG=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_VI=goog.i18n.NumberFormatSymbols_en;goog.i18n.NumberFormatSymbols_en_ZA={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"ZAR
"};goog.i18n.NumberFormatSymbols_en_ZW=goog.i18n.NumberFormatSymbols_en;
393 goog.i18n.NumberFormatSymbols_es={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};
394 goog.i18n.NumberFormatSymbols_es_419={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"MXN
"};goog.i18n.NumberFormatSymbols_es_EA=goog.i18n.NumberFormatSymbols_es;goog.i18n.NumberFormatSymbols_es_ES=goog.i18n.NumberFormatSymbols_es;goog.i18n.NumberFormatSymbols_es_IC=goog.i18n.NumberFormatSymbols_es;
395 goog.i18n.NumberFormatSymbols_et={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"\u00d710^",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_et_EE=goog.i18n.NumberFormatSymbols_et;
396 goog.i18n.NumberFormatSymbols_eu={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"%\u00a0#,##0",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_eu_ES=goog.i18n.NumberFormatSymbols_eu;
397 goog.i18n.NumberFormatSymbols_fa={DECIMAL_SEP:"\u066b",GROUP_SEP:"\u066c",PERCENT:"\u066a",ZERO_DIGIT:"\u06f0",PLUS_SIGN:"\u200e+\u200e",MINUS_SIGN:"\u200e\u2212",EXP_SYMBOL:"\u00d7\u06f1\u06f0^",PERMILL:"\u0609",INFINITY:"\u221e",NAN:"\u0646\u0627\u0639\u062f\u062f",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u200e\u00a4#,##0.00",DEF_CURRENCY_CODE:"IRR
"};goog.i18n.NumberFormatSymbols_fa_IR=goog.i18n.NumberFormatSymbols_fa;
398 goog.i18n.NumberFormatSymbols_fi={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"ep
\u00e4luku",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_fi_FI=goog.i18n.NumberFormatSymbols_fi;
399 goog.i18n.NumberFormatSymbols_fil={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"PHP
"};goog.i18n.NumberFormatSymbols_fil_PH=goog.i18n.NumberFormatSymbols_fil;
400 goog.i18n.NumberFormatSymbols_fr={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_fr_BL=goog.i18n.NumberFormatSymbols_fr;
401 goog.i18n.NumberFormatSymbols_fr_CA={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"CAD
"};goog.i18n.NumberFormatSymbols_fr_FR=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_GF=goog.i18n.NumberFormatSymbols_fr;
402 goog.i18n.NumberFormatSymbols_fr_GP=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_MC=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_MF=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_MQ=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_PM=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_RE=goog.i18n.NumberFormatSymbols_fr;goog.i18n.NumberFormatSymbols_fr_YT=goog.i18n.NumberFormatSymbols_fr;
403 goog.i18n.NumberFormatSymbols_gl={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_gl_ES=goog.i18n.NumberFormatSymbols_gl;
404 goog.i18n.NumberFormatSymbols_gsw={DECIMAL_SEP:".",GROUP_SEP:"\u2019",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"CHF
"};goog.i18n.NumberFormatSymbols_gsw_CH=goog.i18n.NumberFormatSymbols_gsw;goog.i18n.NumberFormatSymbols_gsw_LI=goog.i18n.NumberFormatSymbols_gsw;
405 goog.i18n.NumberFormatSymbols_gu={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"\u00a4#,##,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_gu_IN=goog.i18n.NumberFormatSymbols_gu;
406 goog.i18n.NumberFormatSymbols_haw={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"USD
"};goog.i18n.NumberFormatSymbols_haw_US=goog.i18n.NumberFormatSymbols_haw;
407 goog.i18n.NumberFormatSymbols_he={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"\u200e+",MINUS_SIGN:"\u200e-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"ILS
"};goog.i18n.NumberFormatSymbols_he_IL=goog.i18n.NumberFormatSymbols_he;
408 goog.i18n.NumberFormatSymbols_hi={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"\u00a4#,##,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_hi_IN=goog.i18n.NumberFormatSymbols_hi;
409 goog.i18n.NumberFormatSymbols_hr={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"HRK
"};goog.i18n.NumberFormatSymbols_hr_HR=goog.i18n.NumberFormatSymbols_hr;
410 goog.i18n.NumberFormatSymbols_hu={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"HUF
"};goog.i18n.NumberFormatSymbols_hu_HU=goog.i18n.NumberFormatSymbols_hu;
411 goog.i18n.NumberFormatSymbols_id={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"IDR
"};goog.i18n.NumberFormatSymbols_id_ID=goog.i18n.NumberFormatSymbols_id;
412 goog.i18n.NumberFormatSymbols_in={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"IDR
"};
413 goog.i18n.NumberFormatSymbols_is={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"ISK
"};goog.i18n.NumberFormatSymbols_is_IS=goog.i18n.NumberFormatSymbols_is;
414 goog.i18n.NumberFormatSymbols_it={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_it_IT=goog.i18n.NumberFormatSymbols_it;goog.i18n.NumberFormatSymbols_it_SM=goog.i18n.NumberFormatSymbols_it;
415 goog.i18n.NumberFormatSymbols_iw={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"\u200e+",MINUS_SIGN:"\u200e-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"ILS
"};
416 goog.i18n.NumberFormatSymbols_ja={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"JPY
"};goog.i18n.NumberFormatSymbols_ja_JP=goog.i18n.NumberFormatSymbols_ja;
417 goog.i18n.NumberFormatSymbols_kn={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"\u0c88",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_kn_IN=goog.i18n.NumberFormatSymbols_kn;
418 goog.i18n.NumberFormatSymbols_ko={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00;(\u00a4#,##0.00)",DEF_CURRENCY_CODE:"KRW
"};goog.i18n.NumberFormatSymbols_ko_KR=goog.i18n.NumberFormatSymbols_ko;
419 goog.i18n.NumberFormatSymbols_ln={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"CDF
"};goog.i18n.NumberFormatSymbols_ln_CD=goog.i18n.NumberFormatSymbols_ln;
420 goog.i18n.NumberFormatSymbols_lt={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"\u00d710^",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"LTL
"};goog.i18n.NumberFormatSymbols_lt_LT=goog.i18n.NumberFormatSymbols_lt;
421 goog.i18n.NumberFormatSymbols_lv={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"nav
\u00a0skaitlis",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00;(\u00a4#,##0.00)",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_lv_LV=goog.i18n.NumberFormatSymbols_lv;
422 goog.i18n.NumberFormatSymbols_ml={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"#,##,##0.00\u00a4",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_ml_IN=goog.i18n.NumberFormatSymbols_ml;
423 goog.i18n.NumberFormatSymbols_mr={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"\u0966",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"[#E0
]",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_mr_IN=goog.i18n.NumberFormatSymbols_mr;
424 goog.i18n.NumberFormatSymbols_ms={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"MYR
"};goog.i18n.NumberFormatSymbols_ms_Latn_MY=goog.i18n.NumberFormatSymbols_ms;
425 goog.i18n.NumberFormatSymbols_mt={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_mt_MT=goog.i18n.NumberFormatSymbols_mt;
426 goog.i18n.NumberFormatSymbols_nb={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"NOK
"};goog.i18n.NumberFormatSymbols_nb_NO=goog.i18n.NumberFormatSymbols_nb;goog.i18n.NumberFormatSymbols_nb_SJ=goog.i18n.NumberFormatSymbols_nb;
427 goog.i18n.NumberFormatSymbols_nl={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00;\u00a4\u00a0#,##0.00-",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_nl_NL=goog.i18n.NumberFormatSymbols_nl;
428 goog.i18n.NumberFormatSymbols_no={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"NOK
"};
429 goog.i18n.NumberFormatSymbols_or={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_or_IN=goog.i18n.NumberFormatSymbols_or;
430 goog.i18n.NumberFormatSymbols_pl={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"PLN
"};goog.i18n.NumberFormatSymbols_pl_PL=goog.i18n.NumberFormatSymbols_pl;
431 goog.i18n.NumberFormatSymbols_pt={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"BRL
"};goog.i18n.NumberFormatSymbols_pt_BR=goog.i18n.NumberFormatSymbols_pt;
432 goog.i18n.NumberFormatSymbols_pt_PT={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};
433 goog.i18n.NumberFormatSymbols_ro={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"RON
"};goog.i18n.NumberFormatSymbols_ro_RO=goog.i18n.NumberFormatSymbols_ro;
434 goog.i18n.NumberFormatSymbols_ru={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u043d\u0435\u00a0\u0447\u0438\u0441\u043b\u043e",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"RUB
"};goog.i18n.NumberFormatSymbols_ru_RU=goog.i18n.NumberFormatSymbols_ru;
435 goog.i18n.NumberFormatSymbols_sk={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_sk_SK=goog.i18n.NumberFormatSymbols_sk;
436 goog.i18n.NumberFormatSymbols_sl={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"e
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00;(\u00a4#,##0.00)",DEF_CURRENCY_CODE:"EUR
"};goog.i18n.NumberFormatSymbols_sl_SI=goog.i18n.NumberFormatSymbols_sl;
437 goog.i18n.NumberFormatSymbols_sq={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"ALL
"};goog.i18n.NumberFormatSymbols_sq_AL=goog.i18n.NumberFormatSymbols_sq;
438 goog.i18n.NumberFormatSymbols_sr={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"RSD
"};goog.i18n.NumberFormatSymbols_sr_Cyrl_RS=goog.i18n.NumberFormatSymbols_sr;
439 goog.i18n.NumberFormatSymbols_sv={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"\u2212",EXP_SYMBOL:"\u00d710^",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u00a4\u00a4\u00a4",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0\u00a0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"SEK
"};goog.i18n.NumberFormatSymbols_sv_SE=goog.i18n.NumberFormatSymbols_sv;
440 goog.i18n.NumberFormatSymbols_sw={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"TZS
"};goog.i18n.NumberFormatSymbols_sw_TZ=goog.i18n.NumberFormatSymbols_sw;
441 goog.i18n.NumberFormatSymbols_ta={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_ta_IN=goog.i18n.NumberFormatSymbols_ta;
442 goog.i18n.NumberFormatSymbols_te={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"INR
"};goog.i18n.NumberFormatSymbols_te_IN=goog.i18n.NumberFormatSymbols_te;
443 goog.i18n.NumberFormatSymbols_th={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"THB
"};goog.i18n.NumberFormatSymbols_th_TH=goog.i18n.NumberFormatSymbols_th;
444 goog.i18n.NumberFormatSymbols_tl={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"PHP
"};
445 goog.i18n.NumberFormatSymbols_tr={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"%#,##0",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"TRY
"};goog.i18n.NumberFormatSymbols_tr_TR=goog.i18n.NumberFormatSymbols_tr;
446 goog.i18n.NumberFormatSymbols_uk={DECIMAL_SEP:",",GROUP_SEP:"\u00a0",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"\u0415",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u041d\u0435\u00a0\u0447\u0438\u0441\u043b\u043e",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"UAH
"};goog.i18n.NumberFormatSymbols_uk_UA=goog.i18n.NumberFormatSymbols_uk;
447 goog.i18n.NumberFormatSymbols_ur={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"\u200e+",MINUS_SIGN:"\u200e-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00\u200e",DEF_CURRENCY_CODE:"PKR
"};goog.i18n.NumberFormatSymbols_ur_PK=goog.i18n.NumberFormatSymbols_ur;
448 goog.i18n.NumberFormatSymbols_vi={DECIMAL_SEP:",",GROUP_SEP:".",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"#,##0.00\u00a0\u00a4",DEF_CURRENCY_CODE:"VND
"};goog.i18n.NumberFormatSymbols_vi_VN=goog.i18n.NumberFormatSymbols_vi;
449 goog.i18n.NumberFormatSymbols_zh={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4\u00a0#,##0.00",DEF_CURRENCY_CODE:"CNY
"};goog.i18n.NumberFormatSymbols_zh_CN=goog.i18n.NumberFormatSymbols_zh;
450 goog.i18n.NumberFormatSymbols_zh_HK={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u975e\u6578\u503c",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"HKD
"};goog.i18n.NumberFormatSymbols_zh_Hans_CN=goog.i18n.NumberFormatSymbols_zh;
451 goog.i18n.NumberFormatSymbols_zh_TW={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"\u975e\u6578\u503c",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"TWD
"};
452 goog.i18n.NumberFormatSymbols_zu={DECIMAL_SEP:".",GROUP_SEP:",",PERCENT:"%",ZERO_DIGIT:"0",PLUS_SIGN:"+",MINUS_SIGN:"-",EXP_SYMBOL:"E
",PERMILL:"\u2030",INFINITY:"\u221e",NAN:"I
-NaN
",DECIMAL_PATTERN:"#,##0.###",SCIENTIFIC_PATTERN:"#E0
",PERCENT_PATTERN:"#,##0%",CURRENCY_PATTERN:"\u00a4#,##0.00",DEF_CURRENCY_CODE:"ZAR
"};goog.i18n.NumberFormatSymbols_zu_ZA=goog.i18n.NumberFormatSymbols_zu;goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;
453 "af
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_af);if("af_ZA
"==goog.LOCALE||"af
-ZA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_af;"am
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_am);if("am_ET
"==goog.LOCALE||"am
-ET
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_am;"ar
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ar);
454 if("ar_001
"==goog.LOCALE||"ar
-001"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ar;"bg
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_bg);if("bg_BG
"==goog.LOCALE||"bg
-BG
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_bg;"bn
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_bn);if("bn_BD
"==goog.LOCALE||"bn
-BD
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_bn;
455 "br
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_br);if("br_FR
"==goog.LOCALE||"br
-FR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_br;"ca
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ca);if("ca_AD
"==goog.LOCALE||"ca
-AD
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ca;if("ca_ES
"==goog.LOCALE||"ca
-ES
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ca;
456 if("ca_FR
"==goog.LOCALE||"ca
-FR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ca;if("ca_IT
"==goog.LOCALE||"ca
-IT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ca;"chr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_chr);if("chr_US
"==goog.LOCALE||"chr
-US
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_chr;"cs
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_cs);
457 if("cs_CZ
"==goog.LOCALE||"cs
-CZ
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_cs;"cy
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_cy);if("cy_GB
"==goog.LOCALE||"cy
-GB
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_cy;"da
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_da);if("da_DK
"==goog.LOCALE||"da
-DK
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_da;
458 if("da_GL
"==goog.LOCALE||"da
-GL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_da;"de
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de);if("de_AT
"==goog.LOCALE||"de
-AT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de_AT;if("de_BE
"==goog.LOCALE||"de
-BE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de;if("de_CH
"==goog.LOCALE||"de
-CH
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de_CH;
459 if("de_DE
"==goog.LOCALE||"de
-DE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de;if("de_LU
"==goog.LOCALE||"de
-LU
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_de;"el
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_el);if("el_GR
"==goog.LOCALE||"el
-GR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_el;"en
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en);
460 if("en_001
"==goog.LOCALE||"en
-001"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_AS
"==goog.LOCALE||"en
-AS
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_AU
"==goog.LOCALE||"en
-AU
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_AU;if("en_DG
"==goog.LOCALE||"en
-DG
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;
461 if("en_Dsrt_US
"==goog.LOCALE||"en
-Dsrt
-US
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_FM
"==goog.LOCALE||"en
-FM
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_GB
"==goog.LOCALE||"en
-GB
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_GB;if("en_GU
"==goog.LOCALE||"en
-GU
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;
462 if("en_IE
"==goog.LOCALE||"en
-IE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_IE;if("en_IN
"==goog.LOCALE||"en
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_IN;if("en_IO
"==goog.LOCALE||"en
-IO
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_MH
"==goog.LOCALE||"en
-MH
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;
463 if("en_MP
"==goog.LOCALE||"en
-MP
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_PR
"==goog.LOCALE||"en
-PR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_PW
"==goog.LOCALE||"en
-PW
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_SG
"==goog.LOCALE||"en
-SG
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_SG;
464 if("en_TC
"==goog.LOCALE||"en
-TC
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_UM
"==goog.LOCALE||"en
-UM
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_US
"==goog.LOCALE||"en
-US
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_VG
"==goog.LOCALE||"en
-VG
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;
465 if("en_VI
"==goog.LOCALE||"en
-VI
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;if("en_ZA
"==goog.LOCALE||"en
-ZA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en_ZA;if("en_ZW
"==goog.LOCALE||"en
-ZW
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_en;"es
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_es);if("es_419
"==goog.LOCALE||"es
-419"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_es_419;
466 if("es_EA
"==goog.LOCALE||"es
-EA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_es;if("es_ES
"==goog.LOCALE||"es
-ES
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_es;if("es_IC
"==goog.LOCALE||"es
-IC
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_es;"et
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_et);if("et_EE
"==goog.LOCALE||"et
-EE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_et;
467 "eu
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_eu);if("eu_ES
"==goog.LOCALE||"eu
-ES
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_eu;"fa
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fa);if("fa_IR
"==goog.LOCALE||"fa
-IR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fa;"fi
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fi);
468 if("fi_FI
"==goog.LOCALE||"fi
-FI
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fi;"fil
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fil);if("fil_PH
"==goog.LOCALE||"fil
-PH
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fil;"fr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr);if("fr_BL
"==goog.LOCALE||"fr
-BL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;
469 if("fr_CA
"==goog.LOCALE||"fr
-CA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr_CA;if("fr_FR
"==goog.LOCALE||"fr
-FR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_GF
"==goog.LOCALE||"fr
-GF
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_GP
"==goog.LOCALE||"fr
-GP
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;
470 if("fr_MC
"==goog.LOCALE||"fr
-MC
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_MF
"==goog.LOCALE||"fr
-MF
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_MQ
"==goog.LOCALE||"fr
-MQ
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_PM
"==goog.LOCALE||"fr
-PM
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;
471 if("fr_RE
"==goog.LOCALE||"fr
-RE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;if("fr_YT
"==goog.LOCALE||"fr
-YT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_fr;"gl
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gl);if("gl_ES
"==goog.LOCALE||"gl
-ES
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gl;"gsw
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gsw);
472 if("gsw_CH
"==goog.LOCALE||"gsw
-CH
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gsw;if("gsw_LI
"==goog.LOCALE||"gsw
-LI
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gsw;"gu
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gu);if("gu_IN
"==goog.LOCALE||"gu
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_gu;"haw
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_haw);
473 if("haw_US
"==goog.LOCALE||"haw
-US
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_haw;"he
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_he);if("he_IL
"==goog.LOCALE||"he
-IL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_he;"hi
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hi);if("hi_IN
"==goog.LOCALE||"hi
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hi;
474 "hr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hr);if("hr_HR
"==goog.LOCALE||"hr
-HR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hr;"hu
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hu);if("hu_HU
"==goog.LOCALE||"hu
-HU
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_hu;"id
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_id);
475 if("id_ID
"==goog.LOCALE||"id
-ID
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_id;"in"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_in);"is
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_is);if("is_IS
"==goog.LOCALE||"is
-IS
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_is;"it
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_it);
476 if("it_IT
"==goog.LOCALE||"it
-IT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_it;if("it_SM
"==goog.LOCALE||"it
-SM
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_it;"iw
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_iw);"ja
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ja);if("ja_JP
"==goog.LOCALE||"ja
-JP
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ja;
477 "kn
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_kn);if("kn_IN
"==goog.LOCALE||"kn
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_kn;"ko
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ko);if("ko_KR
"==goog.LOCALE||"ko
-KR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ko;"ln
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ln);
478 if("ln_CD
"==goog.LOCALE||"ln
-CD
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ln;"lt
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_lt);if("lt_LT
"==goog.LOCALE||"lt
-LT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_lt;"lv
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_lv);if("lv_LV
"==goog.LOCALE||"lv
-LV
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_lv;
479 "ml
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ml);if("ml_IN
"==goog.LOCALE||"ml
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ml;"mr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_mr);if("mr_IN
"==goog.LOCALE||"mr
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_mr;"ms
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ms);
480 if("ms_Latn_MY
"==goog.LOCALE||"ms
-Latn
-MY
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ms;"mt
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_mt);if("mt_MT
"==goog.LOCALE||"mt
-MT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_mt;"nb
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_nb);if("nb_NO
"==goog.LOCALE||"nb
-NO
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_nb;
481 if("nb_SJ
"==goog.LOCALE||"nb
-SJ
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_nb;"nl
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_nl);if("nl_NL
"==goog.LOCALE||"nl
-NL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_nl;"no
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_no);"or
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_or);
482 if("or_IN
"==goog.LOCALE||"or
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_or;"pl
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_pl);if("pl_PL
"==goog.LOCALE||"pl
-PL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_pl;"pt
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_pt);if("pt_BR
"==goog.LOCALE||"pt
-BR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_pt;
483 if("pt_PT
"==goog.LOCALE||"pt
-PT
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_pt_PT;"ro
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ro);if("ro_RO
"==goog.LOCALE||"ro
-RO
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ro;"ru
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ru);if("ru_RU
"==goog.LOCALE||"ru
-RU
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ru;
484 "sk
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sk);if("sk_SK
"==goog.LOCALE||"sk
-SK
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sk;"sl
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sl);if("sl_SI
"==goog.LOCALE||"sl
-SI
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sl;"sq
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sq);
485 if("sq_AL
"==goog.LOCALE||"sq
-AL
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sq;"sr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sr);if("sr_Cyrl_RS
"==goog.LOCALE||"sr
-Cyrl
-RS
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sr;"sv
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sv);if("sv_SE
"==goog.LOCALE||"sv
-SE
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sv;
486 "sw
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sw);if("sw_TZ
"==goog.LOCALE||"sw
-TZ
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_sw;"ta
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ta);if("ta_IN
"==goog.LOCALE||"ta
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ta;"te
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_te);
487 if("te_IN
"==goog.LOCALE||"te
-IN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_te;"th
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_th);if("th_TH
"==goog.LOCALE||"th
-TH
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_th;"tl
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_tl);"tr
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_tr);
488 if("tr_TR
"==goog.LOCALE||"tr
-TR
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_tr;"uk
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_uk);if("uk_UA
"==goog.LOCALE||"uk
-UA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_uk;"ur
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ur);if("ur_PK
"==goog.LOCALE||"ur
-PK
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_ur;
489 "vi
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_vi);if("vi_VN
"==goog.LOCALE||"vi
-VN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_vi;"zh
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zh);if("zh_CN
"==goog.LOCALE||"zh
-CN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zh;if("zh_HK
"==goog.LOCALE||"zh
-HK
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zh_HK;
490 if("zh_Hans_CN
"==goog.LOCALE||"zh
-Hans
-CN
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zh;if("zh_TW
"==goog.LOCALE||"zh
-TW
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zh_TW;"zu
"==goog.LOCALE&&(goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zu);if("zu_ZA
"==goog.LOCALE||"zu
-ZA
"==goog.LOCALE)goog.i18n.NumberFormatSymbols=goog.i18n.NumberFormatSymbols_zu;goog.i18n.NumberFormat=function(a,b,c){this.intlCurrencyCode_=b||goog.i18n.NumberFormatSymbols.DEF_CURRENCY_CODE;this.currencyStyle_=c||goog.i18n.NumberFormat.CurrencyStyle.LOCAL;this.maximumIntegerDigits_=40;this.minimumIntegerDigits_=1;this.significantDigits_=0;this.maximumFractionDigits_=3;this.minExponentDigits_=this.minimumFractionDigits_=0;this.showTrailingZeros_=this.useSignForPositiveExponent_=!1;this.positiveSuffix_=this.positivePrefix_="";this.negativePrefix_="-";this.negativeSuffix_="";
491 this.multiplier_=1;this.groupingSize_=3;this.useExponentialNotation_=this.decimalSeparatorAlwaysShown_=!1;this.compactStyle_=goog.i18n.NumberFormat.CompactStyle.NONE;this.baseFormattingNumber_=null;"number
"==typeof a?this.applyStandardPattern_(a):this.applyPattern_(a)};goog.i18n.NumberFormat.Format={DECIMAL:1,SCIENTIFIC:2,PERCENT:3,CURRENCY:4,COMPACT_SHORT:5,COMPACT_LONG:6};goog.i18n.NumberFormat.CurrencyStyle={LOCAL:0,PORTABLE:1,GLOBAL:2};goog.i18n.NumberFormat.CompactStyle={NONE:0,SHORT:1,LONG:2};
492 goog.i18n.NumberFormat.enforceAsciiDigits_=!1;goog.i18n.NumberFormat.setEnforceAsciiDigits=function(a){goog.i18n.NumberFormat.enforceAsciiDigits_=a};goog.i18n.NumberFormat.isEnforceAsciiDigits=function(){return goog.i18n.NumberFormat.enforceAsciiDigits_};goog.i18n.NumberFormat.prototype.setMinimumFractionDigits=function(a){if(0<this.significantDigits_&&0<a)throw Error("Can
't combine significant digits and minimum fraction digits");this.minimumFractionDigits_=a;return this};
493 goog.i18n.NumberFormat.prototype.setMaximumFractionDigits=function(a){this.maximumFractionDigits_=a;return this};goog.i18n.NumberFormat.prototype.setSignificantDigits=function(a){if(0<this.minimumFractionDigits_&&0<=a)throw Error("Can't combine significant digits and minimum fraction digits
");this.significantDigits_=a;return this};
494 goog.i18n.NumberFormat.prototype.applyPattern_=function(a){a.replace(/ /g,"\u00a0");var b=[0];this.positivePrefix_=this.parseAffix_(a,b);var c=b[0];this.parseTrunk_(a,b);c=b[0]-c;this.positiveSuffix_=this.parseAffix_(a,b);b[0]<a.length&&a.charAt(b[0])==goog.i18n.NumberFormat.PATTERN_SEPARATOR_?(b[0]++,this.negativePrefix_=this.parseAffix_(a,b),b[0]+=c,this.negativeSuffix_=this.parseAffix_(a,b)):(this.negativePrefix_=this.positivePrefix_+this.negativePrefix_,this.negativeSuffix_+=this.positiveSuffix_)};
495 goog.i18n.NumberFormat.prototype.applyStandardPattern_=function(a){switch(a){case goog.i18n.NumberFormat.Format.DECIMAL:this.applyPattern_(goog.i18n.NumberFormatSymbols.DECIMAL_PATTERN);break;case goog.i18n.NumberFormat.Format.SCIENTIFIC:this.applyPattern_(goog.i18n.NumberFormatSymbols.SCIENTIFIC_PATTERN);break;case goog.i18n.NumberFormat.Format.PERCENT:this.applyPattern_(goog.i18n.NumberFormatSymbols.PERCENT_PATTERN);break;case goog.i18n.NumberFormat.Format.CURRENCY:this.applyPattern_(goog.i18n.currency.adjustPrecision(goog.i18n.NumberFormatSymbols.CURRENCY_PATTERN,
496 this.intlCurrencyCode_));break;case goog.i18n.NumberFormat.Format.COMPACT_SHORT:this.applyCompactStyle_(goog.i18n.NumberFormat.CompactStyle.SHORT);break;case goog.i18n.NumberFormat.Format.COMPACT_LONG:this.applyCompactStyle_(goog.i18n.NumberFormat.CompactStyle.LONG);break;default:throw Error("Unsupported pattern type
.");}};
497 goog.i18n.NumberFormat.prototype.applyCompactStyle_=function(a){this.compactStyle_=a;this.applyPattern_(goog.i18n.NumberFormatSymbols.DECIMAL_PATTERN);this.setMinimumFractionDigits(0);this.setMaximumFractionDigits(2);this.setSignificantDigits(2)};
498 goog.i18n.NumberFormat.prototype.parse=function(a,b){var c=b||[0];if(this.compactStyle_!=goog.i18n.NumberFormat.CompactStyle.NONE)throw Error("Parsing
of compact numbers is unimplemented
");var d=NaN;a=a.replace(/ /g,"\u00a0");var e=a.indexOf(this.positivePrefix_,c[0])==c[0],f=a.indexOf(this.negativePrefix_,c[0])==c[0];e&&f&&(this.positivePrefix_.length>this.negativePrefix_.length?f=!1:this.positivePrefix_.length<this.negativePrefix_.length&&(e=!1));e?c[0]+=this.positivePrefix_.length:f&&(c[0]+=this.negativePrefix_.length);
499 a.indexOf(goog.i18n.NumberFormatSymbols.INFINITY,c[0])==c[0]?(c[0]+=goog.i18n.NumberFormatSymbols.INFINITY.length,d=Infinity):d=this.parseNumber_(a,c);if(e){if(a.indexOf(this.positiveSuffix_,c[0])!=c[0])return NaN;c[0]+=this.positiveSuffix_.length}else if(f){if(a.indexOf(this.negativeSuffix_,c[0])!=c[0])return NaN;c[0]+=this.negativeSuffix_.length}return f?-d:d};
500 goog.i18n.NumberFormat.prototype.parseNumber_=function(a,b){var c=!1,d=!1,e=!1,f=1,g=goog.i18n.NumberFormatSymbols.DECIMAL_SEP,h=goog.i18n.NumberFormatSymbols.GROUP_SEP,k=goog.i18n.NumberFormatSymbols.EXP_SYMBOL;if(this.compactStyle_!=goog.i18n.NumberFormat.CompactStyle.NONE)throw Error("Parsing
of compact style numbers is not implemented
");for(var l="";b[0]<a.length;b[0]++){var m=a.charAt(b[0]),p=this.getDigit_(m);if(0<=p&&9>=p)l+=p,e=!0;else if(m==g.charAt(0)){if(c||d)break;l+=".";c=!0}else if(m==
501 h.charAt(0)&&("\u00a0"!=h.charAt(0)||b[0]+1<a.length&&0<=this.getDigit_(a.charAt(b[0]+1)))){if(c||d)break}else if(m==k.charAt(0)){if(d)break;l+="E
";d=!0}else if("+"==m||"-"==m)l+=m;else if(m==goog.i18n.NumberFormatSymbols.PERCENT.charAt(0)){if(1!=f)break;f=100;if(e){b[0]++;break}}else if(m==goog.i18n.NumberFormatSymbols.PERMILL.charAt(0)){if(1!=f)break;f=1E3;if(e){b[0]++;break}}else break}return parseFloat(l)/f};
502 goog.i18n.NumberFormat.prototype.format=function(a){if(isNaN(a))return goog.i18n.NumberFormatSymbols.NAN;var b=[],c=goog.isNull(this.baseFormattingNumber_)?a:this.baseFormattingNumber_,c=this.getUnitAfterRounding_(c,a);a/=Math.pow(10,c.divisorBase);b.push(c.prefix);var d=0>a||0==a&&0>1/a;b.push(d?this.negativePrefix_:this.positivePrefix_);isFinite(a)?(a*=d?-1:1,a*=this.multiplier_,this.useExponentialNotation_?this.subformatExponential_(a,b):this.subformatFixed_(a,this.minimumIntegerDigits_,b)):b.push(goog.i18n.NumberFormatSymbols.INFINITY);
503 b.push(d?this.negativeSuffix_:this.positiveSuffix_);b.push(c.suffix);return b.join("")};goog.i18n.NumberFormat.prototype.roundNumber_=function(a){var b=Math.pow(10,this.maximumFractionDigits_),c=0>=this.significantDigits_?Math.round(a*b):Math.floor(this.roundToSignificantDigits_(a*b,this.significantDigits_,this.maximumFractionDigits_));isFinite(c)?(a=Math.floor(c/b),b=Math.floor(c-a*b)):b=0;return{intValue:a,fracValue:b}};
504 goog.i18n.NumberFormat.prototype.subformatFixed_=function(a,b,c){if(this.minimumFractionDigits_>this.maximumFractionDigits_)throw Error("Min value must be less than max value
");a=this.roundNumber_(a);var d=Math.pow(10,this.maximumFractionDigits_),e=a.intValue,f=a.fracValue,g=0==e?0:this.intLog10_(e)+1,h=0<this.minimumFractionDigits_||0<f||this.showTrailingZeros_&&g<this.significantDigits_;a=this.minimumFractionDigits_;h&&(a=this.showTrailingZeros_&&0<this.significantDigits_?this.significantDigits_-
505 g:this.minimumFractionDigits_);for(var k="",g=e;1E20<g;)k="0"+k,g=Math.round(g/10);var k=g+k,l=goog.i18n.NumberFormatSymbols.DECIMAL_SEP,m=goog.i18n.NumberFormatSymbols.GROUP_SEP,g=goog.i18n.NumberFormat.enforceAsciiDigits_?48:goog.i18n.NumberFormatSymbols.ZERO_DIGIT.charCodeAt(0),p=k.length;if(0<e||0<b){for(e=p;e<b;e++)c.push(String.fromCharCode(g));for(e=0;e<p;e++)c.push(String.fromCharCode(g+1*k.charAt(e))),1<p-e&&0<this.groupingSize_&&1==(p-e)%this.groupingSize_&&c.push(m)}else h||c.push(String.fromCharCode(g));
506 (this.decimalSeparatorAlwaysShown_||h)&&c.push(l);b=""+(f+d);for(d=b.length;"0"==b.charAt(d-1)&&d>a+1;)d--;for(e=1;e<d;e++)c.push(String.fromCharCode(g+1*b.charAt(e)))};
507 goog.i18n.NumberFormat.prototype.addExponentPart_=function(a,b){b.push(goog.i18n.NumberFormatSymbols.EXP_SYMBOL);0>a?(a=-a,b.push(goog.i18n.NumberFormatSymbols.MINUS_SIGN)):this.useSignForPositiveExponent_&&b.push(goog.i18n.NumberFormatSymbols.PLUS_SIGN);for(var c=""+a,d=goog.i18n.NumberFormat.enforceAsciiDigits_?"0":goog.i18n.NumberFormatSymbols.ZERO_DIGIT,e=c.length;e<this.minExponentDigits_;e++)b.push(d);b.push(c)};
508 goog.i18n.NumberFormat.prototype.subformatExponential_=function(a,b){if(0==a)this.subformatFixed_(a,this.minimumIntegerDigits_,b),this.addExponentPart_(0,b);else{var c=goog.math.safeFloor(Math.log(a)/Math.log(10));a/=Math.pow(10,c);var d=this.minimumIntegerDigits_;if(1<this.maximumIntegerDigits_&&this.maximumIntegerDigits_>this.minimumIntegerDigits_){for(;0!=c%this.maximumIntegerDigits_;)a*=10,c--;d=1}else 1>this.minimumIntegerDigits_?(c++,a/=10):(c-=this.minimumIntegerDigits_-1,a*=Math.pow(10,this.minimumIntegerDigits_-
509 1));this.subformatFixed_(a,d,b);this.addExponentPart_(c,b)}};goog.i18n.NumberFormat.prototype.getDigit_=function(a){a=a.charCodeAt(0);if(48<=a&&58>a)return a-48;var b=goog.i18n.NumberFormatSymbols.ZERO_DIGIT.charCodeAt(0);return b<=a&&a<b+10?a-b:-1};goog.i18n.NumberFormat.PATTERN_ZERO_DIGIT_="0";goog.i18n.NumberFormat.PATTERN_GROUPING_SEPARATOR_=",";goog.i18n.NumberFormat.PATTERN_DECIMAL_SEPARATOR_=".";goog.i18n.NumberFormat.PATTERN_PER_MILLE_="\u2030";goog.i18n.NumberFormat.PATTERN_PERCENT_="%";
510 goog.i18n.NumberFormat.PATTERN_DIGIT_="#";goog.i18n.NumberFormat.PATTERN_SEPARATOR_=";";goog.i18n.NumberFormat.PATTERN_EXPONENT_="E
";goog.i18n.NumberFormat.PATTERN_PLUS_="+";goog.i18n.NumberFormat.PATTERN_MINUS_="-";goog.i18n.NumberFormat.PATTERN_CURRENCY_SIGN_="\u00a4";goog.i18n.NumberFormat.QUOTE_="'";
511 goog.i18n.NumberFormat.prototype.parseAffix_=function(a,b){for(var c="",d=!1,e=a.length;b[0]<e;b[0]++){var f=a.charAt(b[0]);if(f==goog.i18n.NumberFormat.QUOTE_)b[0]+1<e&&a.charAt(b[0]+1)==goog.i18n.NumberFormat.QUOTE_?(b[0]++,c+="'"):d=!d;else if(d)c+=f;else switch(f){case goog.i18n.NumberFormat.PATTERN_DIGIT_:case goog.i18n.NumberFormat.PATTERN_ZERO_DIGIT_:case goog.i18n.NumberFormat.PATTERN_GROUPING_SEPARATOR_:case goog.i18n.NumberFormat.PATTERN_DECIMAL_SEPARATOR_:case goog.i18n.NumberFormat.PATTERN_SEPARATOR_:return c;
512 case goog.i18n.NumberFormat.PATTERN_CURRENCY_SIGN_:if(b[0]+1<e&&a.charAt(b[0]+1)==goog.i18n.NumberFormat.PATTERN_CURRENCY_SIGN_)b[0]++,c+=this.intlCurrencyCode_;else switch(this.currencyStyle_){case goog.i18n.NumberFormat.CurrencyStyle.LOCAL:c+=goog.i18n.currency.getLocalCurrencySign(this.intlCurrencyCode_);break;case goog.i18n.NumberFormat.CurrencyStyle.GLOBAL:c+=goog.i18n.currency.getGlobalCurrencySign(this.intlCurrencyCode_);break;case goog.i18n.NumberFormat.CurrencyStyle.PORTABLE:c+=goog.i18n.currency.getPortableCurrencySign(this.intlCurrencyCode_)}break;
513 case goog.i18n.NumberFormat.PATTERN_PERCENT_:if(1!=this.multiplier_)throw Error("Too many percent
/permill");this.multiplier_=100;c+=goog.i18n.NumberFormatSymbols.PERCENT;break;case goog.i18n.NumberFormat.PATTERN_PER_MILLE_:if(1!=this.multiplier_)throw Error("Too many percent/permill");this.multiplier_=1E3;c+=goog.i18n.NumberFormatSymbols.PERMILL;break;default:c+=f}}return c};
514 goog.i18n.NumberFormat.prototype.parseTrunk_=function(a,b){for(var c=-1,d=0,e=0,f=0,g=-1,h=a.length,k=!0;b[0]<h&&k;b[0]++){var l=a.charAt(b[0]);switch(l){case goog.i18n.NumberFormat.PATTERN_DIGIT_:0<e?f++:d++;0<=g&&0>c&&g++;break;case goog.i18n.NumberFormat.PATTERN_ZERO_DIGIT_:if(0<f)throw Error('Unexpected "0" in pattern "'+a+'"');e++;0<=g&&0>c&&g++;break;case goog.i18n.NumberFormat.PATTERN_GROUPING_SEPARATOR_:g=0;break;case goog.i18n.NumberFormat.PATTERN_DECIMAL_SEPARATOR_:if(0<=c)throw Error('Multiple decimal separators in pattern "'+
515 a+'"');c=d+e+f;break;case goog.i18n.NumberFormat.PATTERN_EXPONENT_:if(this.useExponentialNotation_)throw Error('Multiple exponential symbols in pattern "'+a+'"');this.useExponentialNotation_=!0;this.minExponentDigits_=0;b[0]+1<h&&a.charAt(b[0]+1)==goog.i18n.NumberFormat.PATTERN_PLUS_&&(b[0]++,this.useSignForPositiveExponent_=!0);for(;b[0]+1<h&&a.charAt(b[0]+1)==goog.i18n.NumberFormat.PATTERN_ZERO_DIGIT_;)b[0]++,this.minExponentDigits_++;if(1>d+e||1>this.minExponentDigits_)throw Error('Malformed exponential pattern "'+
516 a+'"');k=!1;break;default:b[0]--,k=!1}}0==e&&0<d&&0<=c&&(e=c,0==e&&e++,f=d-e,d=e-1,e=1);if(0>c&&0<f||0<=c&&(c<d||c>d+e)||0==g)throw Error('Malformed pattern "'+a+'"');f=d+e+f;this.maximumFractionDigits_=0<=c?f-c:0;0<=c&&(this.minimumFractionDigits_=d+e-c,0>this.minimumFractionDigits_&&(this.minimumFractionDigits_=0));e=0<=c?c:f;this.minimumIntegerDigits_=e-d;this.useExponentialNotation_&&(this.maximumIntegerDigits_=d+this.minimumIntegerDigits_,0==this.maximumFractionDigits_&&0==this.minimumIntegerDigits_&&
517 (this.minimumIntegerDigits_=1));this.groupingSize_=Math.max(0,g);this.decimalSeparatorAlwaysShown_=0==c||c==f};goog.i18n.NumberFormat.NULL_UNIT_={prefix:"",suffix:"",divisorBase:0};
518 goog.i18n.NumberFormat.prototype.getUnitFor_=function(a,b){var c=this.compactStyle_==goog.i18n.NumberFormat.CompactStyle.SHORT?goog.i18n.CompactNumberFormatSymbols.COMPACT_DECIMAL_SHORT_PATTERN:goog.i18n.CompactNumberFormatSymbols.COMPACT_DECIMAL_LONG_PATTERN;if(3>a)return goog.i18n.NumberFormat.NULL_UNIT_;a=Math.min(14,a);c=c[Math.pow(10,a)];if(!c)return goog.i18n.NumberFormat.NULL_UNIT_;c=c[b];return c&&"0"!=c?(c=/([^0]*)(0+)(.*)/.exec(c))?{prefix:c[1],suffix:c[3],divisorBase:a-(c[2].length-1)}:
519 goog.i18n.NumberFormat.NULL_UNIT_:goog.i18n.NumberFormat.NULL_UNIT_};
520 goog.i18n.NumberFormat.prototype.getUnitAfterRounding_=function(a,b){if(this.compactStyle_==goog.i18n.NumberFormat.CompactStyle.NONE)return goog.i18n.NumberFormat.NULL_UNIT_;a=Math.abs(a);b=Math.abs(b);var c=this.pluralForm_(a),d=1>=a?0:this.intLog10_(a),c=this.getUnitFor_(d,c).divisorBase,d=b/Math.pow(10,c),d=this.roundNumber_(d),e=a/Math.pow(10,c),e=this.roundNumber_(e),d=this.pluralForm_(d.intValue+d.fracValue);return this.getUnitFor_(c+this.intLog10_(e.intValue),d)};
521 goog.i18n.NumberFormat.prototype.intLog10_=function(a){for(var b=0;1<=(a/=10);)b++;return b};goog.i18n.NumberFormat.prototype.roundToSignificantDigits_=function(a,b,c){if(!a)return a;var d=this.intLog10_(a);b=b-d-1;if(b<-c)return c=Math.pow(10,c),Math.round(a/c)*c;c=Math.pow(10,b);a=Math.round(a*c);return a/c};goog.i18n.NumberFormat.prototype.pluralForm_=function(){return"other
"};goog.i18n.ordinalRules={};goog.i18n.ordinalRules.Keyword={ZERO:"zero
",ONE:"one
",TWO:"two
",FEW:"few
",MANY:"many
",OTHER:"other
"};goog.i18n.ordinalRules.defaultSelect_=function(){return goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.decimals_=function(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1};goog.i18n.ordinalRules.get_vf_=function(a,b){var c=void 0===b?Math.min(goog.i18n.ordinalRules.decimals_(a),3):b,d=Math.pow(10,c),d=(a*d|0)%d;return{v:c,f:d}};
522 goog.i18n.ordinalRules.get_wt_=function(a,b){if(0===b)return{w:0,t:0};for(;0===b%10;)b/=10,a--;return{w:a,t:b}};goog.i18n.ordinalRules.enSelect_=function(a){return 1==a%10&&11!=a%100?goog.i18n.ordinalRules.Keyword.ONE:2==a%10&&12!=a%100?goog.i18n.ordinalRules.Keyword.TWO:3==a%10&&13!=a%100?goog.i18n.ordinalRules.Keyword.FEW:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.svSelect_=function(a){return 1!=a%10&&2!=a%10||11==a%100||12==a%100?goog.i18n.ordinalRules.Keyword.OTHER:goog.i18n.ordinalRules.Keyword.ONE};
523 goog.i18n.ordinalRules.frSelect_=function(a){return 1==a?goog.i18n.ordinalRules.Keyword.ONE:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.huSelect_=function(a){return 1==a||5==a?goog.i18n.ordinalRules.Keyword.ONE:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.zuSelect_=function(a){return 1==a?goog.i18n.ordinalRules.Keyword.ONE:2<=a&&9>=a?goog.i18n.ordinalRules.Keyword.FEW:10<=a&&19>=a||100<=a&&199>=a||1E3<=a&&1999>=a?goog.i18n.ordinalRules.Keyword.MANY:goog.i18n.ordinalRules.Keyword.OTHER};
524 goog.i18n.ordinalRules.mrSelect_=function(a){return 1==a?goog.i18n.ordinalRules.Keyword.ONE:2==a||3==a?goog.i18n.ordinalRules.Keyword.TWO:4==a?goog.i18n.ordinalRules.Keyword.FEW:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.caSelect_=function(a){return 1==a||3==a?goog.i18n.ordinalRules.Keyword.ONE:2==a?goog.i18n.ordinalRules.Keyword.TWO:4==a?goog.i18n.ordinalRules.Keyword.FEW:goog.i18n.ordinalRules.Keyword.OTHER};
525 goog.i18n.ordinalRules.bnSelect_=function(a){return 1==a||5==a||7==a||8==a||9==a||10==a?goog.i18n.ordinalRules.Keyword.ONE:2==a||3==a?goog.i18n.ordinalRules.Keyword.TWO:4==a?goog.i18n.ordinalRules.Keyword.FEW:6==a?goog.i18n.ordinalRules.Keyword.MANY:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.itSelect_=function(a){return 11==a||8==a||80==a||800==a?goog.i18n.ordinalRules.Keyword.MANY:goog.i18n.ordinalRules.Keyword.OTHER};
526 goog.i18n.ordinalRules.guSelect_=function(a){return 1==a?goog.i18n.ordinalRules.Keyword.ONE:2==a||3==a?goog.i18n.ordinalRules.Keyword.TWO:4==a?goog.i18n.ordinalRules.Keyword.FEW:6==a?goog.i18n.ordinalRules.Keyword.MANY:goog.i18n.ordinalRules.Keyword.OTHER};goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;"af
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"am
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
527 "ar
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"bg
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"bn
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.bnSelect_);"br
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ca
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.caSelect_);"chr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
528 "cs
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"cy
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"da
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"de
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);if("de_AT
"==goog.LOCALE||"de
-AT
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;
529 if("de_CH
"==goog.LOCALE||"de
-CH
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;"el
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"en
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_);if("en_AU
"==goog.LOCALE||"en
-AU
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;if("en_GB
"==goog.LOCALE||"en
-GB
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;
530 if("en_IE
"==goog.LOCALE||"en
-IE
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;if("en_IN
"==goog.LOCALE||"en
-IN
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;if("en_ISO
"==goog.LOCALE||"en
-ISO
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;if("en_SG
"==goog.LOCALE||"en
-SG
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;
531 if("en_US
"==goog.LOCALE||"en
-US
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;if("en_ZA
"==goog.LOCALE||"en
-ZA
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.enSelect_;"es
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);if("es_419
"==goog.LOCALE||"es
-419"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;if("es_ES
"==goog.LOCALE||"es
-ES
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;
532 "et
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"eu
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"fa
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"fi
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"fil
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);"fr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);
533 if("fr_CA
"==goog.LOCALE||"fr
-CA
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_;"gl
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"gsw
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"gu
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.guSelect_);"haw
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
534 "he
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"hi
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.guSelect_);"hr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"hu
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.huSelect_);"id
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"in"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
535 "is
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"it
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.itSelect_);"iw
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ja
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"kn
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ko
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
536 "ln
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"lt
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"lv
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ml
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"mo
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);"mr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.mrSelect_);
537 "ms
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);"mt
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"nb
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"nl
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"no
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"or
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
538 "pl
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"pt
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);if("pt_BR
"==goog.LOCALE||"pt
-BR
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;if("pt_PT
"==goog.LOCALE||"pt
-PT
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;"ro
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);
539 "ru
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"sk
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"sl
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"sq
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"sr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"sv
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.svSelect_);
540 "sw
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ta
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"te
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"th
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"tl
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);"tr
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);
541 "uk
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"ur
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);"vi
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.frSelect_);"zh
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_);if("zh_CN
"==goog.LOCALE||"zh
-CN
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;
542 if("zh_HK
"==goog.LOCALE||"zh
-HK
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;if("zh_TW
"==goog.LOCALE||"zh
-TW
"==goog.LOCALE)goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.defaultSelect_;"zu
"==goog.LOCALE&&(goog.i18n.ordinalRules.select=goog.i18n.ordinalRules.zuSelect_);goog.i18n.pluralRules={};goog.i18n.pluralRules.Keyword={ZERO:"zero
",ONE:"one
",TWO:"two
",FEW:"few
",MANY:"many
",OTHER:"other
"};goog.i18n.pluralRules.defaultSelect_=function(){return goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.decimals_=function(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1};goog.i18n.pluralRules.get_vf_=function(a,b){var c=void 0===b?Math.min(goog.i18n.pluralRules.decimals_(a),3):b,d=Math.pow(10,c),d=(a*d|0)%d;return{v:c,f:d}};
543 goog.i18n.pluralRules.get_wt_=function(a,b){if(0===b)return{w:0,t:0};for(;0===b%10;)b/=10,a--;return{w:a,t:b}};goog.i18n.pluralRules.gaSelect_=function(a){return 1==a?goog.i18n.pluralRules.Keyword.ONE:2==a?goog.i18n.pluralRules.Keyword.TWO:3<=a&&6>=a?goog.i18n.pluralRules.Keyword.FEW:7<=a&&10>=a?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
544 goog.i18n.pluralRules.roSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 1==c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:0!=d.v||0==a||1!=a&&1<=a%100&&19>=a%100?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.frSelect_=function(a){a|=0;return 0==a||1==a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
545 goog.i18n.pluralRules.enSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 1==c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.mtSelect_=function(a){return 1==a?goog.i18n.pluralRules.Keyword.ONE:0==a||2<=a%100&&10>=a%100?goog.i18n.pluralRules.Keyword.FEW:11<=a%100&&19>=a%100?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
546 goog.i18n.pluralRules.daSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b),d=goog.i18n.pluralRules.get_wt_(d.v,d.f);return 1==a||0!=d.t&&(0==c||1==c)?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.cySelect_=function(a){return 0==a?goog.i18n.pluralRules.Keyword.ZERO:1==a?goog.i18n.pluralRules.Keyword.ONE:2==a?goog.i18n.pluralRules.Keyword.TWO:3==a?goog.i18n.pluralRules.Keyword.FEW:6==a?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
547 goog.i18n.pluralRules.brSelect_=function(a){return 1==a%10&&11!=a%100&&71!=a%100&&91!=a%100?goog.i18n.pluralRules.Keyword.ONE:2==a%10&&12!=a%100&&72!=a%100&&92!=a%100?goog.i18n.pluralRules.Keyword.TWO:(3<=a%10&&4>=a%10||9==a%10)&&(10>a%100||19<a%100)&&(70>a%100||79<a%100)&&(90>a%100||99<a%100)?goog.i18n.pluralRules.Keyword.FEW:0!=a&&0==a%1E6?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
548 goog.i18n.pluralRules.esSelect_=function(a){return 1==a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.siSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0==a||1==a||0==c&&1==d.f?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
549 goog.i18n.pluralRules.slSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0==d.v&&1==c%100?goog.i18n.pluralRules.Keyword.ONE:0==d.v&&2==c%100?goog.i18n.pluralRules.Keyword.TWO:0==d.v&&3<=c%100&&4>=c%100||0!=d.v?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.tzmSelect_=function(a){return 0<=a&&1>=a||11<=a&&99>=a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
550 goog.i18n.pluralRules.srSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0==d.v&&1==c%10&&11!=c%100||1==d.f%10&&11!=d.f%100?goog.i18n.pluralRules.Keyword.ONE:0==d.v&&2<=c%10&&4>=c%10&&(12>c%100||14<c%100)||2<=d.f%10&&4>=d.f%10&&(12>d.f%100||14<d.f%100)?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.hiSelect_=function(a){var b=a|0;return 0==b||1==a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
551 goog.i18n.pluralRules.mkSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0==d.v&&1==c%10||1==d.f%10?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.arSelect_=function(a){return 0==a?goog.i18n.pluralRules.Keyword.ZERO:1==a?goog.i18n.pluralRules.Keyword.ONE:2==a?goog.i18n.pluralRules.Keyword.TWO:3<=a%100&&10>=a%100?goog.i18n.pluralRules.Keyword.FEW:11<=a%100&&99>=a%100?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
552 goog.i18n.pluralRules.iuSelect_=function(a){return 1==a?goog.i18n.pluralRules.Keyword.ONE:2==a?goog.i18n.pluralRules.Keyword.TWO:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.csSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 1==c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:2<=c&&4>=c&&0==d.v?goog.i18n.pluralRules.Keyword.FEW:0!=d.v?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
553 goog.i18n.pluralRules.pt_PTSelect_=function(a,b){var c=goog.i18n.pluralRules.get_vf_(a,b);return 1==a&&0==c.v?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.beSelect_=function(a){return 1==a%10&&11!=a%100?goog.i18n.pluralRules.Keyword.ONE:2<=a%10&&4>=a%10&&(12>a%100||14<a%100)?goog.i18n.pluralRules.Keyword.FEW:0==a%10||5<=a%10&&9>=a%10||11<=a%100&&14>=a%100?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
554 goog.i18n.pluralRules.akSelect_=function(a){return 0<=a&&1>=a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.ptSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b),e=goog.i18n.pluralRules.get_wt_(d.v,d.f);return 1==c&&0==d.v||0==c&&1==e.t?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
555 goog.i18n.pluralRules.plSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 1==c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:0==d.v&&2<=c%10&&4>=c%10&&(12>c%100||14<c%100)?goog.i18n.pluralRules.Keyword.FEW:0==d.v&&1!=c&&0<=c%10&&1>=c%10||0==d.v&&5<=c%10&&9>=c%10||0==d.v&&12<=c%100&&14>=c%100?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
556 goog.i18n.pluralRules.ruSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0==d.v&&1==c%10&&11!=c%100?goog.i18n.pluralRules.Keyword.ONE:0==d.v&&2<=c%10&&4>=c%10&&(12>c%100||14<c%100)?goog.i18n.pluralRules.Keyword.FEW:0==d.v&&0==c%10||0==d.v&&5<=c%10&&9>=c%10||0==d.v&&11<=c%100&&14>=c%100?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
557 goog.i18n.pluralRules.gvSelect_=function(a){return 1==a%10?goog.i18n.pluralRules.Keyword.ONE:2==a%10?goog.i18n.pluralRules.Keyword.TWO:0==a%100||20==a%100||40==a%100||60==a%100?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.lagSelect_=function(a){var b=a|0;return 0==a?goog.i18n.pluralRules.Keyword.ZERO:0!=b&&1!=b||0==a?goog.i18n.pluralRules.Keyword.OTHER:goog.i18n.pluralRules.Keyword.ONE};
558 goog.i18n.pluralRules.shiSelect_=function(a){var b=a|0;return 0==b||1==a?goog.i18n.pluralRules.Keyword.ONE:2<=a&&10>=a?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.heSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 1==c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:2==c&&0==d.v?goog.i18n.pluralRules.Keyword.TWO:0==d.v&&(0>a||10<a)&&0==a%10?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
559 goog.i18n.pluralRules.isSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b),d=goog.i18n.pluralRules.get_wt_(d.v,d.f);return 0==d.t&&1==c%10&&11!=c%100||0!=d.t?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
560 goog.i18n.pluralRules.ltSelect_=function(a,b){var c=goog.i18n.pluralRules.get_vf_(a,b);return 1==a%10&&(11>a%100||19<a%100)?goog.i18n.pluralRules.Keyword.ONE:2<=a%10&&9>=a%10&&(11>a%100||19<a%100)?goog.i18n.pluralRules.Keyword.FEW:0!=c.f?goog.i18n.pluralRules.Keyword.MANY:goog.i18n.pluralRules.Keyword.OTHER};
561 goog.i18n.pluralRules.gdSelect_=function(a){return 1==a||11==a?goog.i18n.pluralRules.Keyword.ONE:2==a||12==a?goog.i18n.pluralRules.Keyword.TWO:3<=a&&10>=a||13<=a&&19>=a?goog.i18n.pluralRules.Keyword.FEW:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.filSelect_=function(a,b){var c=a|0,d=goog.i18n.pluralRules.get_vf_(a,b);return 0<=c&&1>=c&&0==d.v?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
562 goog.i18n.pluralRules.lvSelect_=function(a,b){var c=goog.i18n.pluralRules.get_vf_(a,b);return 0==a%10||11<=a%100&&19>=a%100||2==c.v&&11<=c.f%100&&19>=c.f%100?goog.i18n.pluralRules.Keyword.ZERO:1==a%10&&11!=a%100||2==c.v&&1==c.f%10&&11!=c.f%100||2!=c.v&&1==c.f%10?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};goog.i18n.pluralRules.kshSelect_=function(a){return 0==a?goog.i18n.pluralRules.Keyword.ZERO:1==a?goog.i18n.pluralRules.Keyword.ONE:goog.i18n.pluralRules.Keyword.OTHER};
563 goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;"af
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"am
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);"ar
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.arSelect_);"bg
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"bn
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);
564 "br
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.brSelect_);"ca
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"chr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"cs
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.csSelect_);"cy
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.cySelect_);"da
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.daSelect_);
565 "de
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);if("de_AT
"==goog.LOCALE||"de
-AT
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("de_CH
"==goog.LOCALE||"de
-CH
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;"el
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"en
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);
566 if("en_AU
"==goog.LOCALE||"en
-AU
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_GB
"==goog.LOCALE||"en
-GB
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_IE
"==goog.LOCALE||"en
-IE
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_IN
"==goog.LOCALE||"en
-IN
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;
567 if("en_ISO
"==goog.LOCALE||"en
-ISO
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_SG
"==goog.LOCALE||"en
-SG
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_US
"==goog.LOCALE||"en
-US
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;if("en_ZA
"==goog.LOCALE||"en
-ZA
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_;"es
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);
568 if("es_419
"==goog.LOCALE||"es
-419"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_;if("es_ES
"==goog.LOCALE||"es
-ES
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_;"et
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"eu
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"fa
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);
569 "fi
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"fil
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.filSelect_);"fr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.frSelect_);if("fr_CA
"==goog.LOCALE||"fr
-CA
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.frSelect_;"gl
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"gsw
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);
570 "gu
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);"haw
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"he
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.heSelect_);"hi
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);"hr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.srSelect_);"hu
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);
571 "id
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);"in"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);"is
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.isSelect_);"it
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"iw
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.heSelect_);"ja
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);
572 "kn
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);"ko
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);"ln
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.akSelect_);"lt
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.ltSelect_);"lv
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.lvSelect_);"ml
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);
573 "mo
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.roSelect_);"mr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);"ms
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);"mt
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.mtSelect_);"nb
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"nl
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);
574 "no
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"or
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"pl
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.plSelect_);"pt
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.ptSelect_);if("pt_BR
"==goog.LOCALE||"pt
-BR
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.ptSelect_;
575 if("pt_PT
"==goog.LOCALE||"pt
-PT
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.pt_PTSelect_;"ro
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.roSelect_);"ru
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.ruSelect_);"sk
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.csSelect_);"sl
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.slSelect_);"sq
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);
576 "sr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.srSelect_);"sv
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"sw
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"ta
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"te
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"th
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);
577 "tl
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.filSelect_);"tr
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.esSelect_);"uk
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.ruSelect_);"ur
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.enSelect_);"vi
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);"zh
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_);
578 if("zh_CN
"==goog.LOCALE||"zh
-CN
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_;if("zh_HK
"==goog.LOCALE||"zh
-HK
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_;if("zh_TW
"==goog.LOCALE||"zh
-TW
"==goog.LOCALE)goog.i18n.pluralRules.select=goog.i18n.pluralRules.defaultSelect_;"zu
"==goog.LOCALE&&(goog.i18n.pluralRules.select=goog.i18n.pluralRules.hiSelect_);goog.i18n.MessageFormat=function(a){this.literals_=[];this.parsedPattern_=[];this.numberFormatter_=new goog.i18n.NumberFormat(goog.i18n.NumberFormat.Format.DECIMAL);this.parsePattern_(a)};goog.i18n.MessageFormat.LITERAL_PLACEHOLDER_="\ufddf_";goog.i18n.MessageFormat.Element_={STRING:0,BLOCK:1};goog.i18n.MessageFormat.BlockType_={PLURAL:0,ORDINAL:1,SELECT:2,SIMPLE:3,STRING:4,UNKNOWN:5};goog.i18n.MessageFormat.OTHER_="other
";goog.i18n.MessageFormat.REGEX_LITERAL_=/'([{}#].*?)'/g;
579 goog.i18n.MessageFormat.REGEX_DOUBLE_APOSTROPHE_=/''/g;goog.i18n.MessageFormat.prototype.format=function(a){return this.format_(a,!1)};goog.i18n.MessageFormat.prototype.format_=function(a,b){if(0==this.parsedPattern_.length)return"";var c=[];this.formatBlock_(this.parsedPattern_,a,b,c);c=c.join("");for(b||goog.asserts.assert(-1==c.search("#"),"Not all
# were replaced
.");0<this.literals_.length;)c=c.replace(this.buildPlaceholder_(this.literals_),this.literals_.pop());return c};
580 goog.i18n.MessageFormat.prototype.formatBlock_=function(a,b,c,d){for(var e=0;e<a.length;e++)switch(a[e].type){case goog.i18n.MessageFormat.BlockType_.STRING:d.push(a[e].value);break;case goog.i18n.MessageFormat.BlockType_.SIMPLE:var f=a[e].value;this.formatSimplePlaceholder_(f,b,d);break;case goog.i18n.MessageFormat.BlockType_.SELECT:f=a[e].value;this.formatSelectBlock_(f,b,c,d);break;case goog.i18n.MessageFormat.BlockType_.PLURAL:f=a[e].value;this.formatPluralOrdinalBlock_(f,b,goog.i18n.pluralRules.select,
581 c,d);break;case goog.i18n.MessageFormat.BlockType_.ORDINAL:f=a[e].value;this.formatPluralOrdinalBlock_(f,b,goog.i18n.ordinalRules.select,c,d);break;default:goog.asserts.fail("Unrecognized block type
.")}};goog.i18n.MessageFormat.prototype.formatSimplePlaceholder_=function(a,b,c){b=b[a];goog.isDef(b)?(this.literals_.push(b),c.push(this.buildPlaceholder_(this.literals_))):c.push("Undefined parameter
- "+a)};
582 goog.i18n.MessageFormat.prototype.formatSelectBlock_=function(a,b,c,d){var e=a.argumentIndex;goog.isDef(b[e])?(e=a[b[e]],goog.isDef(e)||(e=a[goog.i18n.MessageFormat.OTHER_],goog.asserts.assertArray(e,"Invalid option or missing other option
for select block
.")),this.formatBlock_(e,b,c,d)):d.push("Undefined parameter
- "+e)};
583 goog.i18n.MessageFormat.prototype.formatPluralOrdinalBlock_=function(a,b,c,d,e){var f=a.argumentIndex,g=a.argumentOffset,h=+b[f];isNaN(h)?e.push("Undefined or invalid parameter
- "+f):(g=h-g,f=a[b[f]],goog.isDef(f)||(goog.asserts.assert(0<=g,"Argument index smaller than offset
."),c=this.numberFormatter_.getMinimumFractionDigits?c(g,this.numberFormatter_.getMinimumFractionDigits()):c(g),goog.asserts.assertString(c,"Invalid plural key
."),f=a[c],goog.isDef(f)||(f=a[goog.i18n.MessageFormat.OTHER_]),goog.asserts.assertArray(f,
584 "Invalid option or missing other option
for plural block
.")),a=[],this.formatBlock_(f,b,d,a),b=a.join(""),goog.asserts.assertString(b,"Empty block
in plural
."),d?e.push(b):(d=this.numberFormatter_.format(g),e.push(b.replace(/#/g,d))))};goog.i18n.MessageFormat.prototype.parsePattern_=function(a){a&&(a=this.insertPlaceholders_(a),this.parsedPattern_=this.parseBlock_(a))};
585 goog.i18n.MessageFormat.prototype.insertPlaceholders_=function(a){var b=this.literals_,c=goog.bind(this.buildPlaceholder_,this);a=a.replace(goog.i18n.MessageFormat.REGEX_DOUBLE_APOSTROPHE_,function(){b.push("'");return c(b)});return a=a.replace(goog.i18n.MessageFormat.REGEX_LITERAL_,function(a,e){b.push(e);return c(b)})};
586 goog.i18n.MessageFormat.prototype.extractParts_=function(a){var b=0,c=[],d=[],e=/[{}]/g;e.lastIndex=0;for(var f;f=e.exec(a);){var g=f.index;"}"==f[0]?(f=c.pop(),goog.asserts.assert(goog.isDef(f)&&"{"==f,"No matching { for }."),0==c.length&&(f={},f.type=goog.i18n.MessageFormat.Element_.BLOCK,f.value=a.substring(b,g),d.push(f),b=g+1)):(0==c.length&&(b=a.substring(b,g),""!=b&&d.push({type:goog.i18n.MessageFormat.Element_.STRING,value:b}),b=g+1),c.push("{"))}goog.asserts.assert(0==c.length,"There are mismatched { or } in the pattern.");
587 b=a.substring(b);""!=b&&d.push({type:goog.i18n.MessageFormat.Element_.STRING,value:b});return d};goog.i18n.MessageFormat.PLURAL_BLOCK_RE_=/^\s*(\w+)\s*,\s*plural\s*,(?:\s*offset:(\d+))?/;goog.i18n.MessageFormat.ORDINAL_BLOCK_RE_=/^\s*(\w+)\s*,\s*selectordinal\s*,/;goog.i18n.MessageFormat.SELECT_BLOCK_RE_=/^\s*(\w+)\s*,\s*select\s*,/;
588 goog.i18n.MessageFormat.prototype.parseBlockType_=function(a){return goog.i18n.MessageFormat.PLURAL_BLOCK_RE_.test(a)?goog.i18n.MessageFormat.BlockType_.PLURAL:goog.i18n.MessageFormat.ORDINAL_BLOCK_RE_.test(a)?goog.i18n.MessageFormat.BlockType_.ORDINAL:goog.i18n.MessageFormat.SELECT_BLOCK_RE_.test(a)?goog.i18n.MessageFormat.BlockType_.SELECT:/^\s*\w+\s*/.test(a)?goog.i18n.MessageFormat.BlockType_.SIMPLE:goog.i18n.MessageFormat.BlockType_.UNKNOWN};
589 goog.i18n.MessageFormat.prototype.parseBlock_=function(a){var b=[];a=this.extractParts_(a);for(var c=0;c<a.length;c++){var d={};if(goog.i18n.MessageFormat.Element_.STRING==a[c].type)d.type=goog.i18n.MessageFormat.BlockType_.STRING,d.value=a[c].value;else if(goog.i18n.MessageFormat.Element_.BLOCK==a[c].type){var e=this.parseBlockType_(a[c].value);switch(e){case goog.i18n.MessageFormat.BlockType_.SELECT:d.type=goog.i18n.MessageFormat.BlockType_.SELECT;d.value=this.parseSelectBlock_(a[c].value);break;
590 case goog.i18n.MessageFormat.BlockType_.PLURAL:d.type=goog.i18n.MessageFormat.BlockType_.PLURAL;d.value=this.parsePluralBlock_(a[c].value);break;case goog.i18n.MessageFormat.BlockType_.ORDINAL:d.type=goog.i18n.MessageFormat.BlockType_.ORDINAL;d.value=this.parseOrdinalBlock_(a[c].value);break;case goog.i18n.MessageFormat.BlockType_.SIMPLE:d.type=goog.i18n.MessageFormat.BlockType_.SIMPLE;d.value=a[c].value;break;default:goog.asserts.fail("Unknown block type.")}}else goog.asserts.fail("Unknown part of the pattern.");
592 goog.i18n.MessageFormat.prototype.parseSelectBlock_=function(a){var b="",c=goog.i18n.MessageFormat.SELECT_BLOCK_RE_;a=a.replace(c,function(a,c){b=c;return""});c={};c.argumentIndex=b;a=this.extractParts_(a);for(var d=0;d<a.length;){var e=a[d].value;goog.asserts.assertString(e,"Missing select key element.");d++;goog.asserts.assert(d<a.length,"Missing or invalid select value element.");if(goog.i18n.MessageFormat.Element_.BLOCK==a[d].type)var f=this.parseBlock_(a[d].value);else goog.asserts.fail("Expected block type.");c[e.replace(/\s/g,
593 "")]=f;d++}goog.asserts.assertArray(c[goog.i18n.MessageFormat.OTHER_],"Missing other key in select statement.");return c};
594 goog.i18n.MessageFormat.prototype.parsePluralBlock_=function(a){var b="",c=0,d=goog.i18n.MessageFormat.PLURAL_BLOCK_RE_;a=a.replace(d,function(a,d,e){b=d;e&&(c=parseInt(e,10));return""});d={};d.argumentIndex=b;d.argumentOffset=c;a=this.extractParts_(a);for(var e=0;e<a.length;){var f=a[e].value;goog.asserts.assertString(f,"Missing plural key element.");e++;goog.asserts.assert(e<a.length,"Missing or invalid plural value element.");if(goog.i18n.MessageFormat.Element_.BLOCK==a[e].type)var g=this.parseBlock_(a[e].value);
595 else goog.asserts.fail("Expected block type.");d[f.replace(/\s*(?:=)?(\w+)\s*/,"$1")]=g;e++}goog.asserts.assertArray(d[goog.i18n.MessageFormat.OTHER_],"Missing other key in plural statement.");return d};
596 goog.i18n.MessageFormat.prototype.parseOrdinalBlock_=function(a){var b="",c=goog.i18n.MessageFormat.ORDINAL_BLOCK_RE_;a=a.replace(c,function(a,c){b=c;return""});c={};c.argumentIndex=b;c.argumentOffset=0;a=this.extractParts_(a);for(var d=0;d<a.length;){var e=a[d].value;goog.asserts.assertString(e,"Missing ordinal key element.");d++;goog.asserts.assert(d<a.length,"Missing or invalid ordinal value element.");if(goog.i18n.MessageFormat.Element_.BLOCK==a[d].type)var f=this.parseBlock_(a[d].value);else goog.asserts.fail("Expected block type.");
597 c[e.replace(/\s*(?:=)?(\w+)\s*/,"$1")]=f;d++}goog.asserts.assertArray(c[goog.i18n.MessageFormat.OTHER_],"Missing other key in selectordinal statement.");return c};goog.i18n.MessageFormat.prototype.buildPlaceholder_=function(a){goog.asserts.assert(0<a.length,"Literal array is empty.");a=(a.length-1).toString(10);return goog.i18n.MessageFormat.LITERAL_PLACEHOLDER_+a+"_"};cvox.TtsCapturingEventListener=function(){};cvox.TtsInterface=function(){};cvox.TtsInterface.prototype.speak=function(){};cvox.TtsInterface.prototype.isSpeaking=function(){};cvox.TtsInterface.prototype.stop=function(){};cvox.TtsInterface.prototype.increaseOrDecreaseProperty=function(){};cvox.TtsInterface.prototype.getDefaultProperty=function(){};cvox.AbstractTts=function(){this.ttsProperties={};this.propertyDefault={rate:0.5,pitch:0.5,volume:0.5};this.propertyMin={rate:0,pitch:0,volume:0};this.propertyMax={rate:1,pitch:1,volume:1};this.propertyStep={rate:0.1,pitch:0.1,volume:0.1};if(void 0==cvox.AbstractTts.pronunciationDictionaryRegexp_){var a=[],b;for(b in cvox.AbstractTts.PRONUNCIATION_DICTIONARY)a.push(b);a="\\b("+a.join("|")+")\\b";cvox.AbstractTts.pronunciationDictionaryRegexp_=RegExp(a,"ig")}if(void 0==cvox.AbstractTts.substitutionDictionaryRegexp_){var a=
598 [],c;for(c in cvox.AbstractTts.SUBSTITUTION_DICTIONARY)a.push(c);a="("+a.join("|")+")";cvox.AbstractTts.substitutionDictionaryRegexp_=RegExp(a,"ig")}};cvox.AbstractTts.prototype.speak=function(){return this};cvox.AbstractTts.prototype.isSpeaking=function(){return!1};cvox.AbstractTts.prototype.stop=function(){};
599 cvox.AbstractTts.prototype.increaseOrDecreaseProperty=function(a,b){var c=this.propertyMin[a],d=this.propertyMax[a],e=this.propertyStep[a],f=this.ttsProperties[a],f=b?f+e:f-e;this.ttsProperties[a]=Math.max(Math.min(f,d),c)};cvox.AbstractTts.RATE="rate";cvox.AbstractTts.PITCH="pitch";cvox.AbstractTts.VOLUME="volume";cvox.AbstractTts.LANG="lang";cvox.AbstractTts.RELATIVE_RATE="relativeRate";cvox.AbstractTts.RELATIVE_PITCH="relativePitch";cvox.AbstractTts.RELATIVE_VOLUME="relativeVolume";
600 cvox.AbstractTts.COLOR="color";cvox.AbstractTts.FONT_WEIGHT="fontWeight";cvox.AbstractTts.PUNCTUATION_ECHO="punctuationEcho";cvox.AbstractTts.PAUSE="pause";cvox.AbstractTts.PERSONALITY_ANNOTATION={relativePitch:-0.25,color:"yellow",punctuationEcho:"none"};cvox.AbstractTts.PERSONALITY_ANNOUNCEMENT={punctuationEcho:"none"};cvox.AbstractTts.PERSONALITY_SYSTEM_ALERT={punctuationEcho:"none",doNotInterrupt:!0};cvox.AbstractTts.PERSONALITY_ASIDE={relativePitch:-0.1,color:"#669"};
601 cvox.AbstractTts.PERSONALITY_CAPITAL={relativePitch:0.6};cvox.AbstractTts.PERSONALITY_DELETED={punctuationEcho:"none",relativePitch:-0.6};cvox.AbstractTts.PERSONALITY_QUOTE={relativePitch:0.1,color:"#b6b",fontWeight:"bold"};cvox.AbstractTts.PERSONALITY_STRONG={relativePitch:0.1,color:"#b66",fontWeight:"bold"};cvox.AbstractTts.PERSONALITY_EMPHASIS={relativeVolume:0.1,relativeRate:-0.1,color:"#6bb",fontWeight:"bold"};cvox.AbstractTts.DEBUG=!0;cvox.AbstractTts.QUEUE_MODE_FLUSH=0;
602 cvox.AbstractTts.QUEUE_MODE_QUEUE=1;
603 cvox.AbstractTts.CHARACTER_DICTIONARY={" ":"space","`":"backtick","~":"tilde","!":"exclamation","@":"at","#":"pound",$:"dollar","%":"percent","^":"caret","&":"ampersand","*":"asterisk","(":"open_paren",")":"close_paren","-":"dash",_:"underscore","=":"equals","+":"plus","[":"left_bracket","]":"right_bracket","{":"left_brace","}":"right_brace","|":"pipe",";":"semicolon",":":"colon",",":"comma",".":"dot","<":"less_than",">":"greater_than","/":"slash","?":"question_mark",'"':"quote
","'":"apostrophe",
604 "\t":"tab","\r":"return","\n":"new_line","\\":"backslash"};cvox.AbstractTts.PRONUNCIATION_DICTIONARY={admob:"ad-mob",adsense:"ad-sense",adwords:"ad-words",angularjs:"angular j s",bcc:"B C C",cc:"C C",chromevox:"chrome vox",cr48:"C R 48",ctrl:"control",doubleclick:"double-click",gmail:"gee mail",gtalk:"gee talk",http:"H T T P",https:"H T T P S",igoogle:"eye google",pagerank:"page-rank",username:"user-name",www:"W W W",youtube:"you tube"};
605 cvox.AbstractTts.SUBSTITUTION_DICTIONARY={"://":"colon slash slash","\u00bc":"one fourth","\u00bd":"one half","\u200e":"left to right mark","\u2190":"left arrow","\u2191":"up arrow","\u2192":"right arrow","\u2193":"down arrow","\u21d0":"left double arrow","\u21d1":"up double arrow","\u21d2":"right double arrow","\u21d3":"down double arrow","\u21e6":"left arrow","\u21e7":"up arrow","\u21e8":"right arrow","\u21e9":"down arrow","\u2303":"control","\u2318":"command","\u2325":"option","\u25b2":"up triangle",
606 "\u25b3":"up triangle","\u25b4":"up triangle","\u25b5":"up triangle","\u25b6":"right triangle","\u25b7":"right triangle","\u25b8":"right triangle","\u25b9":"right triangle","\u25ba":"right pointer","\u25bb":"right pointer","\u25bc":"down triangle","\u25bd":"down triangle","\u25be":"down triangle","\u25bf":"down triangle","\u25c0":"left triangle","\u25c1":"left triangle","\u25c2":"left triangle","\u25c3":"left triangle","\u25c4":"left pointer","\u25c5":"left pointer","\uf8ff":"apple"};
607 cvox.AbstractTts.repetitionRegexp_=/([-\/\\|!@#$%^&*\(\)=_+\[\]\{\}.?;'":<>])\1{2,}/g;cvox.AbstractTts.repetitionReplace_=function(a){var b=a.length;return" "+(new goog.i18n.MessageFormat(cvox.ChromeVox.msgs.getMsg(cvox.AbstractTts.CHARACTER_DICTIONARY[a[0]]))).format({COUNT:b})+" "};cvox.AbstractTts.prototype.getDefaultProperty=function(a){return this.propertyDefault[a]};cvox.AbstractEarcons=function(){this.enabled=!0};cvox.AbstractEarcons.prototype.playEarcon=function(){};cvox.AbstractEarcons.prototype.playEarconByName=function(a){this.playEarcon(this.getEarconId(a))};
608 cvox.AbstractEarcons.prototype.getEarconId=function(a){this.earconNamesToIds||(this.earconNamesToIds={},this.earconNamesToIds.ALERT_MODAL=cvox.AbstractEarcons.ALERT_MODAL,this.earconNamesToIds.ALERT_NONMODAL=cvox.AbstractEarcons.ALERT_NONMODAL,this.earconNamesToIds.BULLET=cvox.AbstractEarcons.BULLET,this.earconNamesToIds.BUSY_PROGRESS_LOOP=cvox.AbstractEarcons.BUSY_PROGRESS_LOOP,this.earconNamesToIds.BUSY_WORKING_LOOP=cvox.AbstractEarcons.BUSY_WORKING_LOOP,this.earconNamesToIds.BUTTON=cvox.AbstractEarcons.BUTTON,
609 this.earconNamesToIds.CHECK_OFF=cvox.AbstractEarcons.CHECK_OFF,this.earconNamesToIds.CHECK_ON=cvox.AbstractEarcons.CHECK_ON,this.earconNamesToIds.COLLAPSED=cvox.AbstractEarcons.COLLAPSED,this.earconNamesToIds.EDITABLE_TEXT=cvox.AbstractEarcons.EDITABLE_TEXT,this.earconNamesToIds.ELLIPSIS=cvox.AbstractEarcons.ELLIPSIS,this.earconNamesToIds.EXPANDED=cvox.AbstractEarcons.EXPANDED,this.earconNamesToIds.FONT_CHANGE=cvox.AbstractEarcons.FONT_CHANGE,this.earconNamesToIds.INVALID_KEYPRESS=cvox.AbstractEarcons.INVALID_KEYPRESS,
610 this.earconNamesToIds.LINK=cvox.AbstractEarcons.LINK,this.earconNamesToIds.LISTBOX=cvox.AbstractEarcons.LISTBOX,this.earconNamesToIds.LIST_ITEM=cvox.AbstractEarcons.LIST_ITEM,this.earconNamesToIds.LONG_DESC=cvox.AbstractEarcons.LONG_DESC,this.earconNamesToIds.NEW_MAIL=cvox.AbstractEarcons.NEW_MAIL,this.earconNamesToIds.OBJECT_CLOSE=cvox.AbstractEarcons.OBJECT_CLOSE,this.earconNamesToIds.OBJECT_DELETE=cvox.AbstractEarcons.OBJECT_DELETE,this.earconNamesToIds.OBJECT_DESELECT=cvox.AbstractEarcons.OBJECT_DESELECT,
611 this.earconNamesToIds.OBJECT_ENTER=cvox.AbstractEarcons.OBJECT_ENTER,this.earconNamesToIds.OBJECT_EXIT=cvox.AbstractEarcons.OBJECT_EXIT,this.earconNamesToIds.OBJECT_OPEN=cvox.AbstractEarcons.OBJECT_OPEN,this.earconNamesToIds.OBJECT_SELECT=cvox.AbstractEarcons.OBJECT_SELECT,this.earconNamesToIds.PARAGRAPH_BREAK=cvox.AbstractEarcons.PARAGRAPH_BREAK,this.earconNamesToIds.SEARCH_HIT=cvox.AbstractEarcons.SEARCH_HIT,this.earconNamesToIds.SEARCH_MISS=cvox.AbstractEarcons.SEARCH_MISS,this.earconNamesToIds.SECTION=
612 cvox.AbstractEarcons.SECTION,this.earconNamesToIds.SELECTION=cvox.AbstractEarcons.SELECTION,this.earconNamesToIds.SELECTION_REVERSE=cvox.AbstractEarcons.SELECTION_REVERSE,this.earconNamesToIds.SPECIAL_CONTENT=cvox.AbstractEarcons.SPECIAL_CONTENT,this.earconNamesToIds.TASK_SUCCESS=cvox.AbstractEarcons.TASK_SUCCESS,this.earconNamesToIds.WRAP=cvox.AbstractEarcons.WRAP,this.earconNamesToIds.WRAP_EDGE=cvox.AbstractEarcons.WRAP_EDGE);return this.earconNamesToIds[a]};
613 cvox.AbstractEarcons.prototype.toggle=function(){return this.enabled=!this.enabled};cvox.AbstractEarcons.ALERT_MODAL=0;cvox.AbstractEarcons.ALERT_NONMODAL=1;cvox.AbstractEarcons.BULLET=2;cvox.AbstractEarcons.BUSY_PROGRESS_LOOP=3;cvox.AbstractEarcons.BUSY_WORKING_LOOP=4;cvox.AbstractEarcons.BUTTON=5;cvox.AbstractEarcons.CHECK_OFF=6;cvox.AbstractEarcons.CHECK_ON=7;cvox.AbstractEarcons.COLLAPSED=8;cvox.AbstractEarcons.EDITABLE_TEXT=9;cvox.AbstractEarcons.ELLIPSIS=10;cvox.AbstractEarcons.EXPANDED=11;
614 cvox.AbstractEarcons.FONT_CHANGE=12;cvox.AbstractEarcons.INVALID_KEYPRESS=13;cvox.AbstractEarcons.LINK=14;cvox.AbstractEarcons.LISTBOX=15;cvox.AbstractEarcons.LIST_ITEM=16;cvox.AbstractEarcons.LONG_DESC=17;cvox.AbstractEarcons.NEW_MAIL=18;cvox.AbstractEarcons.OBJECT_CLOSE=19;cvox.AbstractEarcons.OBJECT_DELETE=20;cvox.AbstractEarcons.OBJECT_DESELECT=21;cvox.AbstractEarcons.OBJECT_ENTER=22;cvox.AbstractEarcons.OBJECT_EXIT=23;cvox.AbstractEarcons.OBJECT_OPEN=24;cvox.AbstractEarcons.OBJECT_SELECT=25;
615 cvox.AbstractEarcons.PARAGRAPH_BREAK=26;cvox.AbstractEarcons.SEARCH_HIT=27;cvox.AbstractEarcons.SEARCH_MISS=28;cvox.AbstractEarcons.SECTION=29;cvox.AbstractEarcons.SELECTION=30;cvox.AbstractEarcons.SELECTION_REVERSE=31;cvox.AbstractEarcons.SPECIAL_CONTENT=32;cvox.AbstractEarcons.TASK_SUCCESS=33;cvox.AbstractEarcons.WRAP=34;cvox.AbstractEarcons.WRAP_EDGE=35;cvox.AbstractEarcons.earconMap={};cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.ALERT_MODAL]="alert_modal
.ogg
";
616 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.ALERT_NONMODAL]="alert_nonmodal
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BULLET]="bullet
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BUSY_PROGRESS_LOOP]="busy_progress_loop
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BUSY_WORKING_LOOP]="busy_working_loop
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.BUTTON]="button
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.CHECK_OFF]="check_off
.ogg
";
617 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.CHECK_ON]="check_on
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.COLLAPSED]="collapsed
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.EDITABLE_TEXT]="editable_text
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.ELLIPSIS]="ellipsis
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.EXPANDED]="expanded
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.FONT_CHANGE]="font_change
.ogg
";
618 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.INVALID_KEYPRESS]="invalid_keypress
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LINK]="link
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LISTBOX]="listbox
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LIST_ITEM]="bullet
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.LONG_DESC]="long_desc
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.NEW_MAIL]="new_mail
.ogg
";
619 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_CLOSE]="object_close
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_DELETE]="object_delete
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_DESELECT]="object_deselect
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_ENTER]="object_enter
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_EXIT]="object_exit
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_OPEN]="object_open
.ogg
";
620 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.OBJECT_SELECT]="object_select
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.PARAGRAPH_BREAK]="paragraph_break
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SEARCH_HIT]="search_hit
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SEARCH_MISS]="search_miss
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SECTION]="section
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SELECTION]="selection
.ogg
";
621 cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SELECTION_REVERSE]="selection_reverse
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.SPECIAL_CONTENT]="special_content
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.TASK_SUCCESS]="task_success
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.WRAP]="wrap
.ogg
";cvox.AbstractEarcons.earconMap[cvox.AbstractEarcons.WRAP_EDGE]="wrap_edge
.ogg
";cvox.NodeStateUtil={};cvox.NodeStateUtil.expand=function(a){try{return a.map(function(a){if(1>a.length)throw Error("cvox
.NodeState must have at least one entry
");var b=a.slice(1).map(function(a){return"number
"==typeof a?cvox.ChromeVox.msgs.getNumber(a):a});return cvox.ChromeVox.msgs.getMsg(a[0],b)}).join(" ")}catch(b){throw Error("error
: "+b+" state
: "+a);}};cvox.AriaUtil=function(){};cvox.AriaUtil.NO_ROLE_NAME=" ";
622 cvox.AriaUtil.WIDGET_ROLE_TO_NAME={alert:"aria_role_alert
",alertdialog:"aria_role_alertdialog
",button:"aria_role_button
",checkbox:"aria_role_checkbox
",columnheader:"aria_role_columnheader
",combobox:"aria_role_combobox
",dialog:"aria_role_dialog
",grid:"aria_role_grid
",gridcell:"aria_role_gridcell
",link:"aria_role_link
",listbox:"aria_role_listbox
",log:"aria_role_log
",marquee:"aria_role_marquee
",menu:"aria_role_menu
",menubar:"aria_role_menubar
",menuitem:"aria_role_menuitem
",menuitemcheckbox:"aria_role_menuitemcheckbox
",
623 menuitemradio:"aria_role_menuitemradio
",option:cvox.AriaUtil.NO_ROLE_NAME,progressbar:"aria_role_progressbar
",radio:"aria_role_radio
",radiogroup:"aria_role_radiogroup
",rowheader:"aria_role_rowheader
",scrollbar:"aria_role_scrollbar
",slider:"aria_role_slider
",spinbutton:"aria_role_spinbutton
",status:"aria_role_status
",tab:"aria_role_tab
",tabpanel:"aria_role_tabpanel
",textbox:"aria_role_textbox
",timer:"aria_role_timer
",toolbar:"aria_role_toolbar
",tooltip:"aria_role_tooltip
",treeitem:"aria_role_treeitem
"};
624 cvox.AriaUtil.STRUCTURE_ROLE_TO_NAME={article:"aria_role_article
",application:"aria_role_application
",banner:"aria_role_banner
",columnheader:"aria_role_columnheader
",complementary:"aria_role_complementary
",contentinfo:"aria_role_contentinfo
",definition:"aria_role_definition
",directory:"aria_role_directory
",document:"aria_role_document
",form:"aria_role_form
",group:"aria_role_group
",heading:"aria_role_heading
",img:"aria_role_img
",list:"aria_role_list
",listitem:"aria_role_listitem
",main:"aria_role_main
",
625 math:"aria_role_math
",navigation:"aria_role_navigation
",note:"aria_role_note
",region:"aria_role_region
",rowheader:"aria_role_rowheader
",search:"aria_role_search
",separator:"aria_role_separator
"};
626 cvox.AriaUtil.ATTRIBUTE_VALUE_TO_STATUS=[{name:"aria
-autocomplete
",values:{inline:"aria_autocomplete_inline
",list:"aria_autocomplete_list
",both:"aria_autocomplete_both
"}},{name:"aria
-checked
",values:{"true":"aria_checked_true
","false":"aria_checked_false
",mixed:"aria_checked_mixed
"}},{name:"aria
-disabled
",values:{"true":"aria_disabled_true
"}},{name:"aria
-expanded
",values:{"true":"aria_expanded_true
","false":"aria_expanded_false
"}},{name:"aria
-invalid
",values:{"true":"aria_invalid_true
",grammar:"aria_invalid_grammar
",
627 spelling:"aria_invalid_spelling
"}},{name:"aria
-multiline
",values:{"true":"aria_multiline_true
"}},{name:"aria
-multiselectable
",values:{"true":"aria_multiselectable_true
"}},{name:"aria
-pressed
",values:{"true":"aria_pressed_true
","false":"aria_pressed_false
",mixed:"aria_pressed_mixed
"}},{name:"aria
-readonly
",values:{"true":"aria_readonly_true
"}},{name:"aria
-required
",values:{"true":"aria_required_true
"}},{name:"aria
-selected
",values:{"true":"aria_selected_true
","false":"aria_selected_false
"}}];
628 cvox.AriaUtil.isHiddenRecursive=function(a){if(cvox.AriaUtil.isHidden(a))return!0;for(a=a.parentElement;a;){if("true"==a.getAttribute("aria
-hidden
")&&"true"!=a.getAttribute("chromevoxignoreariahidden
"))return!0;a=a.parentElement}return!1};cvox.AriaUtil.isHidden=function(a){return!a||a.getAttribute&&"true"==a.getAttribute("aria
-hidden
")&&"true"!=a.getAttribute("chromevoxignoreariahidden
")?!0:!1};
629 cvox.AriaUtil.isForcedVisibleRecursive=function(a){for(;a;){if(a.getAttribute&&a.hasAttribute("aria
-hidden
")&&"true"!=a.getAttribute("chromevoxignoreariahidden
"))return"false"==a.getAttribute("aria
-hidden
");a=a.parentElement}return!1};cvox.AriaUtil.isLeafElement=function(a){var b=a.getAttribute("role
");a=a.hasAttribute("aria
-label
")&&0<a.getAttribute("aria
-label
").length;return"img
"==b||"progressbar
"==b||a};
630 cvox.AriaUtil.isDescendantOfRole=function(a,b){for(;a;){if(b&&a&&a.getAttribute("role
")==b)return!0;a=a.parentNode}return!1};cvox.AriaUtil.getRoleNameMsgForRole_=function(a){return(a=cvox.AriaUtil.WIDGET_ROLE_TO_NAME[a])?a==cvox.AriaUtil.NO_ROLE_NAME?" ":a:null};cvox.AriaUtil.isButton=function(a){var b=cvox.AriaUtil.getRoleAttribute(a);return"button
"==b||"BUTTON
"==a.tagName?!0:"INPUT
"==a.tagName?"submit
"==a.type||"reset
"==a.type||"button
"==a.type:!1};
631 cvox.AriaUtil.getRoleNameMsg=function(a){var b;if(a&&a.getAttribute){var c=cvox.AriaUtil.getRoleAttribute(a);if("true"==a.getAttribute("aria
-haspopup
")&&cvox.AriaUtil.isButton(a))return"aria_role_popup_button
";c&&((b=cvox.AriaUtil.getRoleNameMsgForRole_(c))||(b=cvox.AriaUtil.STRUCTURE_ROLE_TO_NAME[c]));if("menuitem
"==c){for(a=a.parentElement;a&&(!a.getAttribute||"menu
"!=cvox.AriaUtil.getRoleAttribute(a)&&"menubar
"!=cvox.AriaUtil.getRoleAttribute(a));)a=a.parentElement;a&&"menubar
"==cvox.AriaUtil.getRoleAttribute(a)&&
632 (b=cvox.AriaUtil.getRoleNameMsgForRole_("menu
"))}}b||(b="");return b};cvox.AriaUtil.getRoleName=function(a){var b=cvox.AriaUtil.getRoleNameMsg(a),b=cvox.ChromeVox.msgs.getMsg(b),c=cvox.AriaUtil.getRoleAttribute(a);"heading
"==c&&a.hasAttribute("aria
-level
")&&(b+=" "+a.getAttribute("aria
-level
"));return b?b:""};
633 cvox.AriaUtil.getStateMsgs=function(a,b){var c=[];if(!a||!a.getAttribute)return c;for(var d=0,e;e=cvox.AriaUtil.ATTRIBUTE_VALUE_TO_STATUS[d];d++){var f=a.getAttribute(e.name);(e=e.values[f])&&c.push([e])}if("grid
"==a.getAttribute("role
"))return cvox.AriaUtil.getGridState_(a,a);e=cvox.AriaUtil.getRoleAttribute(a);"true"==a.getAttribute("aria
-haspopup
")&&("menuitem
"==e?c.push(["has_submenu
"]):cvox.AriaUtil.isButton(a)||c.push(["has_popup
"]));if(d=a.getAttribute("aria
-valuetext
"))return c.push([d]),
634 c;var d=a.getAttribute("aria
-valuenow
"),f=a.getAttribute("aria
-valuemin
"),g=a.getAttribute("aria
-valuemax
");if(null!=d&&null!=f&&null!=g&&("scrollbar
"==e||"progressbar
"==e)){var h=Math.round(d/(g-f)*100);c.push(["state_percent
",h]);return c}null!=d&&c.push(["aria_value_now
",d]);null!=f&&c.push(["aria_value_min
",f]);null!=g&&c.push(["aria_value_max
",g]);f=a;d=null;if(cvox.AriaUtil.isCompositeControl(f)&&b)d=cvox.AriaUtil.getActiveDescendant(f);else if(e=cvox.AriaUtil.getRoleAttribute(a),"option
"==
635 e||"menuitem
"==e||"menuitemcheckbox
"==e||"menuitemradio
"==e||"radio
"==e||"tab
"==e||"treeitem
"==e)for(d=a,f=a.parentElement;f&&!cvox.AriaUtil.isCompositeControl(f)&&(!(f=f.parentElement)||"treeitem
"!=cvox.AriaUtil.getRoleAttribute(f)););if(f&&(cvox.AriaUtil.isCompositeControl(f)||"treeitem
"==cvox.AriaUtil.getRoleAttribute(f))&&d){e=cvox.AriaUtil.getRoleAttribute(f);var k;switch(e){case "combobox
":case "listbox
":k=["option
"];break;case "menu
":k=["menuitem
","menuitemcheck
","menuitemradio
"];break;case "radiogroup
":k=
636 ["radio
"];break;case "tablist
":k=["tab
"];break;case "tree
":case "treegrid
":case "treeitem
":k=["treeitem
"]}if(k){var l;e=parseInt(d.getAttribute("aria
-setsize
"),10);isNaN(e)||(h=e);e=parseInt(d.getAttribute("aria
-posinset
"),10);isNaN(e)||(l=e);if(void 0==h||void 0==l)if(k=cvox.AriaUtil.getNextLevel(f,k),void 0==h&&(h=k.length),void 0==l)for(e=0;e<k.length;e++)k[e]==d&&(l=e+1);l&&h&&c.push(["list_position
",l,h])}}return c};
637 cvox.AriaUtil.getGridState_=function(a,b){var c=cvox.AriaUtil.getActiveDescendant(b);if(c)for(var d='*[role~="row
"]',d=b.querySelectorAll(d),e=0;e<d.length;e++)for(var f=d[e].querySelectorAll('*[role~="gridcell
"]'),g=0;g<f.length;g++)if(f[g]==c)return[["aria_role_gridcell_pos
",e+1,g+1]];return[]};cvox.AriaUtil.getActiveDescendantId_=function(a){return a.getAttribute?(a=a.getAttribute("aria
-activedescendant
"))?a:null:null};
638 cvox.AriaUtil.getNextLevel=function(a,b){for(var c=[],d=a.childNodes,e=0;e<d.length;e++)if(!cvox.AriaUtil.isHidden(d[e])&&cvox.DomUtil.isVisible(d[e])){var f=cvox.AriaUtil.getNextLevelItems(d[e],b);0<f.length&&(c=c.concat(f))}return c};
639 cvox.AriaUtil.getNextLevelItems=function(a,b){if(1!=a.nodeType)return[];if(-1!=b.indexOf(cvox.AriaUtil.getRoleAttribute(a)))return[a];var c=a.childNodes,d=c.length;if(0==d)return[];for(var e=[],f=0;f<d;f++){var g=cvox.AriaUtil.getNextLevelItems(c[f],b);0<g.length&&(e=e.concat(g))}return e};cvox.AriaUtil.getActiveDescendant=function(a){for(var b={},c=a;c;){var d=cvox.AriaUtil.getActiveDescendantId_(c);if(!d)break;if(d in b)return null;b[d]=!0;c=document.getElementById(d)}return c==a?null:c};
640 cvox.AriaUtil.isControlWidget=function(a){if(a&&a.getAttribute)switch(a=cvox.AriaUtil.getRoleAttribute(a),a){case "button
":case "checkbox
":case "combobox
":case "listbox
":case "menu
":case "menuitemcheckbox
":case "menuitemradio
":case "radio
":case "slider
":case "progressbar
":case "scrollbar
":case "spinbutton
":case "tab
":case "tablist
":case "textbox
":return!0}return!1};cvox.AriaUtil.isCompositeControl=function(a){if(a&&a.getAttribute)switch(a=cvox.AriaUtil.getRoleAttribute(a),a){case "combobox
":case "grid
":case "listbox
":case "menu
":case "menubar
":case "radiogroup
":case "tablist
":case "tree
":case "treegrid
":return!0}return!1};
641 cvox.AriaUtil.getAriaLive=function(a){if(!a.hasAttribute)return null;var b=a.getAttribute("aria
-live
");if("off
"==b)return null;if(b)return b;a=cvox.AriaUtil.getRoleAttribute(a);switch(a){case "alert
":return"assertive
";case "log
":case "status
":return"polite
";default:return null}};cvox.AriaUtil.getAriaAtomic=function(a){if(!a.hasAttribute)return!1;var b=a.getAttribute("aria
-atomic
");if(b)return"true"===b;a=cvox.AriaUtil.getRoleAttribute(a);return"alert
"==a?!0:!1};
642 cvox.AriaUtil.getAriaBusy=function(a){return a.hasAttribute?(a=a.getAttribute("aria
-busy
"))?"true"===a:!1:!1};cvox.AriaUtil.getAriaRelevant=function(a,b){if(!a.hasAttribute)return!1;var c;c=a.hasAttribute("aria
-relevant
")?a.getAttribute("aria
-relevant
"):"additions text
";"all
"==c&&(c="additions removals text
");c=c.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"").split(" ");return"all
"==b?0<=c.indexOf("additions
")&&0<=c.indexOf("text
")&&0<=c.indexOf("removals
"):0<=c.indexOf(b)};
643 cvox.AriaUtil.getLiveRegions=function(a){var b=[];if(a.querySelectorAll){var c=a.querySelectorAll('[role="alert
"], [role="log
"], [role="marquee
"], [role="status
"], [role="timer
"], [aria-live]');if(c)for(var d=0;d<c.length;d++)b.push(c[d])}for(;a;){if(cvox.AriaUtil.getAriaLive(a)){b.push(a);break}a=a.parentElement}return b};cvox.AriaUtil.isLandmark=function(a){if(!a||!a.getAttribute)return!1;a=cvox.AriaUtil.getRoleAttribute(a);switch(a){case "application
":case "banner
":case "complementary
":case "contentinfo
":case "form
":case "main
":case "navigation
":case "search
":return!0}return!1};
644 cvox.AriaUtil.isGrid=function(a){if(!a||!a.getAttribute)return!1;a=cvox.AriaUtil.getRoleAttribute(a);switch(a){case "grid
":case "treegrid
":return!0}return!1};
645 cvox.AriaUtil.getEarcon=function(a){if(!a||!a.getAttribute)return null;var b=cvox.AriaUtil.getRoleAttribute(a);switch(b){case "button
":return cvox.AbstractEarcons.BUTTON;case "checkbox
":case "radio
":case "menuitemcheckbox
":case "menuitemradio
":return a=a.getAttribute("aria
-checked
"),"true"==a?cvox.AbstractEarcons.CHECK_ON:cvox.AbstractEarcons.CHECK_OFF;case "combobox
":case "listbox
":return cvox.AbstractEarcons.LISTBOX;case "textbox
":return cvox.AbstractEarcons.EDITABLE_TEXT;case "listitem
":return cvox.AbstractEarcons.BULLET;
646 case "link
":return cvox.AbstractEarcons.LINK}return null};cvox.AriaUtil.getRoleAttribute=function(a){if(!a.getAttribute)return"";var b=a.getAttribute("role
");a.hasAttribute("chromevoxoriginalrole
")&&(b=a.getAttribute("chromevoxoriginalrole
"));return b};cvox.AriaUtil.isMath=function(a){if(!a||!a.getAttribute)return!1;a=cvox.AriaUtil.getRoleAttribute(a);return"math
"==a};cvox.DomPredicates={};cvox.DomPredicates.checkboxPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"checkbox
"==a[b].getAttribute("role
")||"INPUT
"==a[b].tagName&&"checkbox
"==a[b].type)return a[b];return null};cvox.DomPredicates.radioPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"radio
"==a[b].getAttribute("role
")||"INPUT
"==a[b].tagName&&"radio
"==a[b].type)return a[b];return null};
647 cvox.DomPredicates.sliderPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"slider
"==a[b].getAttribute("role
")||"INPUT
"==a[b].tagName&&"range
"==a[b].type)return a[b];return null};cvox.DomPredicates.graphicPredicate=function(a){for(var b=0;b<a.length;b++)if("IMG
"==a[b].tagName||"INPUT
"==a[b].tagName&&"img
"==a[b].type)return a[b];return null};
648 cvox.DomPredicates.buttonPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"button
"==a[b].getAttribute("role
")||"BUTTON
"==a[b].tagName||"INPUT
"==a[b].tagName&&"submit
"==a[b].type||"INPUT
"==a[b].tagName&&"button
"==a[b].type||"INPUT
"==a[b].tagName&&"reset
"==a[b].type)return a[b];return null};cvox.DomPredicates.comboBoxPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"combobox
"==a[b].getAttribute("role
")||"SELECT
"==a[b].tagName)return a[b];return null};
649 cvox.DomPredicates.editTextPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"textbox
"==a[b].getAttribute("role
")||"TEXTAREA
"==a[b].tagName||a[b].isContentEditable||"INPUT
"==a[b].tagName&&cvox.DomUtil.isInputTypeText(a[b]))return a[b];return null};cvox.DomPredicates.headingPredicate=function(a){for(var b=0;b<a.length;b++){if(a[b].getAttribute&&"heading
"==a[b].getAttribute("role
"))return a[b];switch(a[b].tagName){case "H1
":case "H2
":case "H3
":case "H4
":case "H5
":case "H6
":return a[b]}}return null};
650 cvox.DomPredicates.heading1Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H1
")};cvox.DomPredicates.heading2Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H2
")};cvox.DomPredicates.heading3Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H3
")};cvox.DomPredicates.heading4Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H4
")};cvox.DomPredicates.heading5Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H5
")};
651 cvox.DomPredicates.heading6Predicate=function(a){return cvox.DomPredicates.containsTagName_(a,"H6
")};cvox.DomPredicates.linkPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"link
"==a[b].getAttribute("role
")||"A
"==a[b].tagName&&a[b].href)return a[b];return null};cvox.DomPredicates.tablePredicate=function(a){return(a=cvox.DomUtil.findTableNodeInList(a,{allowCaptions:!0}))&&!cvox.DomUtil.isLayoutTable(a)?a:null};
652 cvox.DomPredicates.cellPredicate=function(a){for(var b=a.length-1;0<=b;--b){var c=a[b];if("TD
"==c.tagName||"TH
"==c.tagName||c.getAttribute&&"gridcell
"==c.getAttribute("role
"))return c}return null};cvox.DomPredicates.visitedLinkPredicate=function(a){for(var b=a.length-1;0<=b;--b)if(cvox.DomPredicates.linkPredicate([a[b]])&&cvox.ChromeVox.visitedUrls[a[b].href])return a[b]};
653 cvox.DomPredicates.listPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"list
"==a[b].getAttribute("role
")||"UL
"==a[b].tagName||"OL
"==a[b].tagName)return a[b];return null};cvox.DomPredicates.listItemPredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"listitem
"==a[b].getAttribute("role
")||"LI
"==a[b].tagName)return a[b];return null};cvox.DomPredicates.blockquotePredicate=function(a){return cvox.DomPredicates.containsTagName_(a,"BLOCKQUOTE
")};
654 cvox.DomPredicates.formFieldPredicate=function(a){for(var b=0;b<a.length;b++)if(cvox.DomUtil.isControl(a[b]))return a[b];return null};cvox.DomPredicates.landmarkPredicate=function(a){for(var b=0;b<a.length;b++)if(cvox.AriaUtil.isLandmark(a[b]))return a[b];return null};cvox.DomPredicates.containsTagName_=function(a,b){for(var c=a.length;c--;)if(a[c].tagName==b)return a[c];return null};cvox.DomPredicates.mathPredicate=function(a){return cvox.DomUtil.findMathNodeInList(a)};
655 cvox.DomPredicates.sectionPredicate=function(a){for(var b=0;b<a.length;b++){if(cvox.DomUtil.isSemanticElt(a[b])||cvox.AriaUtil.isLandmark(a[b])||a[b].getAttribute&&"heading
"==a[b].getAttribute("role
"))return a[b];switch(a[b].tagName){case "H1
":case "H2
":case "H3
":case "H4
":case "H5
":case "H6
":return a[b]}}return null};
656 cvox.DomPredicates.controlPredicate=function(a){for(var b=0;b<a.length;b++)if(cvox.DomUtil.isControl(a[b])||a[b].getAttribute&&"link
"==a[b].getAttribute("role
")||"A
"==a[b].tagName&&a[b].href)return a[b];return null};cvox.DomPredicates.captionPredicate=function(a){for(var b=0;b<a.length;b++)if("CAPTION
"==a[b].tagName)return a[b];return null};
657 cvox.DomPredicates.articlePredicate=function(a){for(var b=0;b<a.length;b++)if(a[b].getAttribute&&"article
"==a[b].getAttribute("role
")||"ARTICLE
"==a[b].tagName)return a[b];return null};cvox.DomPredicates.mediaPredicate=function(a){for(var b=0;b<a.length;b++)if("AUDIO
"==a[b].tagName||"VIDEO
"==a[b].tagName)return a[b];return null};cvox.DomPredicates.orderedListPredicate=function(a){for(var b=0;b<a.length;b++)if("OL
"==a[b].tagName)return a[b];return null};cvox.XpathUtil=function(){};cvox.XpathUtil.nameSpaces_={xhtml:"http
://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML"};cvox.XpathUtil.resolveNameSpace=function(a){return cvox.XpathUtil.nameSpaces_[a]||null};cvox.XpathUtil.evalXPath=function(a,b){try{var c=b.ownerDocument.evaluate(a,b,cvox.XpathUtil.resolveNameSpace,XPathResult.ORDERED_NODE_ITERATOR_TYPE,null)}catch(d){return[]}for(var e=[],f=c.iterateNext();f;f=c.iterateNext())e.push(f);return e};
658 cvox
.XpathUtil
.getLeafNodes=function(a
){try{var b
=a
.ownerDocument
.evaluate(".//*[count(*)=0]",a
,null,XPathResult
.ORDERED_NODE_ITERATOR_TYPE
,null)}catch(c
){return[]}a
=[];for(var d
=b
.iterateNext();d
;d
=b
.iterateNext())a
.push(d
);return a
};cvox
.XpathUtil
.xpathSupported=function(){return"undefined"==typeof XPathResult
?!1:!0};cvox
.XpathUtil
.evaluateBoolean=function(a
,b
){try{var c
=b
.ownerDocument
.evaluate(a
,b
,cvox
.XpathUtil
.resolveNameSpace
,XPathResult
.BOOLEAN_TYPE
,null)}catch(d
){return!1}return c
.booleanValue
};
659 cvox
.XpathUtil
.evaluateString=function(a
,b
){try{var c
=b
.ownerDocument
.evaluate(a
,b
,cvox
.XpathUtil
.resolveNameSpace
,XPathResult
.STRING_TYPE
,null)}catch(d
){return""}return c
.stringValue
};cvox
.DomUtil=function(){};
660 cvox
.DomUtil
.INPUT_TYPE_TO_INFORMATION_TABLE_MSG
={button
:"input_type_button",checkbox
:"input_type_checkbox",color
:"input_type_color",datetime
:"input_type_datetime","datetime-local":"input_type_datetime_local",date
:"input_type_date",email
:"input_type_email",file
:"input_type_file",image
:"input_type_image",month
:"input_type_month",number
:"input_type_number",password
:"input_type_password",radio
:"input_type_radio",range
:"input_type_range",reset
:"input_type_reset",search
:"input_type_search",submit
:"input_type_submit",
661 tel
:"input_type_tel",text
:"input_type_text",url
:"input_type_url",week
:"input_type_week"};
662 cvox
.DomUtil
.TAG_TO_INFORMATION_TABLE_VERBOSE_MSG
={A
:"tag_link",ARTICLE
:"tag_article",ASIDE
:"tag_aside",AUDIO
:"tag_audio",BUTTON
:"tag_button",FOOTER
:"tag_footer",H1
:"tag_h1",H2
:"tag_h2",H3
:"tag_h3",H4
:"tag_h4",H5
:"tag_h5",H6
:"tag_h6",HEADER
:"tag_header",HGROUP
:"tag_hgroup",LI
:"tag_li",MARK
:"tag_mark",NAV
:"tag_nav",OL
:"tag_ol",SECTION
:"tag_section",SELECT
:"tag_select",TABLE
:"tag_table",TEXTAREA
:"tag_textarea",TIME
:"tag_time",UL
:"tag_ul",VIDEO
:"tag_video"};
663 cvox
.DomUtil
.TAG_TO_INFORMATION_TABLE_BRIEF_MSG
={AUDIO
:"tag_audio",BUTTON
:"tag_button",SELECT
:"tag_select",TABLE
:"tag_table",TEXTAREA
:"tag_textarea",VIDEO
:"tag_video"};cvox
.DomUtil
.FORMATTING_TAGS
="B BIG CITE CODE DFN EM I KBD SAMP SMALL SPAN STRIKE STRONG SUB SUP U VAR".split(" ");
664 cvox
.DomUtil
.isVisible=function(a
,b
){b
=b
||{};"undefined"===typeof b
.checkAncestors
&&(b
.checkAncestors
=!0);"undefined"===typeof b
.checkDescendants
&&(b
.checkDescendants
=!0);if("IFRAME"==a
.tagName
&&!a
.src
)return!1;if(cvox
.AriaUtil
.isForcedVisibleRecursive(a
))return!0;if(b
.checkAncestors
&&cvox
.DomUtil
.hasInvisibleAncestor_(a
))return!1;var c
=b
.checkDescendants
;return cvox
.DomUtil
.hasVisibleNodeSubtree_(a
,c
)?!0:!1};
665 cvox
.DomUtil
.hasInvisibleAncestor_=function(a
){for(;a
=a
.parentElement
;){var b
=document
.defaultView
.getComputedStyle(a
,null);if(cvox
.DomUtil
.isInvisibleStyle(b
,!0))return!0}return!1};
666 cvox
.DomUtil
.hasVisibleNodeSubtree_=function(a
,b
){if(!(a
instanceof Element
)){var c
=document
.defaultView
.getComputedStyle(a
.parentElement
,null);return c
=!cvox
.DomUtil
.isInvisibleStyle(c
)}var c
=document
.defaultView
.getComputedStyle(a
,null),d
=!cvox
.DomUtil
.isInvisibleStyle(c
);if(d
)return!0;c
=cvox
.DomUtil
.isInvisibleStyle(c
,!0);if(!b
||c
)return!1;c
=a
.childNodes
;for(d
=0;d
<c
.length
;d
++){var e
=c
[d
];if(cvox
.DomUtil
.hasVisibleNodeSubtree_(e
,b
))return!0}return!1};
667 cvox
.DomUtil
.isInvisibleStyle=function(a
,b
){return a
?"none"!=a
.display
&&0!=parseFloat(a
.opacity
)&&(b
||"hidden"!=a
.visibility
&&"collapse"!=a
.visibility
)?!1:!0:!1};cvox
.DomUtil
.isDisabled=function(a
){if(a
.disabled
)return!0;for(;a
=a
.parentElement
;)if("FIELDSET"==a
.tagName
&&a
.disabled
)return!0;return!1};cvox
.DomUtil
.isSemanticElt=function(a
){return a
.tagName
&&(a
=a
.tagName
,"SECTION"==a
||"NAV"==a
||"ARTICLE"==a
||"ASIDE"==a
||"HGROUP"==a
||"HEADER"==a
||"FOOTER"==a
||"TIME"==a
||"MARK"==a
)?!0:!1};
668 cvox
.DomUtil
.isLeafNode=function(a
,b
){if(!(a
instanceof Element
))return null==a
.firstChild
;var c
=a
;if(!b
&&!cvox
.DomUtil
.isVisible(c
,{checkAncestors
:!1})||!b
&&cvox
.AriaUtil
.isHidden(c
)||cvox
.AriaUtil
.isLeafElement(c
))return!0;switch(c
.tagName
){case "OBJECT":case "EMBED":case "VIDEO":case "AUDIO":case "IFRAME":case "FRAME":return!0}return cvox
.DomPredicates
.linkPredicate([c
])?!cvox
.DomUtil
.findNode(c
,function(a
){return!!cvox
.DomPredicates
.headingPredicate([a
])}):cvox
.DomUtil
.isLeafLevelControl(c
)||
669 !c
.firstChild
||cvox
.DomUtil
.isMath(c
)?!0:cvox
.DomPredicates
.headingPredicate([c
])?!cvox
.DomUtil
.findNode(c
,function(a
){return!!cvox
.DomPredicates
.controlPredicate([a
])}):!1};cvox
.DomUtil
.isDescendantOf=function(a
,b
,c
){for(;a
;){if(b
&&c
&&a
.tagName
&&a
.tagName
==b
&&a
.className
&&a
.className
==c
||b
&&!c
&&a
.tagName
&&a
.tagName
==b
||!b
&&c
&&a
.className
&&a
.className
==c
)return!0;a
=a
.parentNode
}return!1};cvox
.DomUtil
.isDescendantOfNode=function(a
,b
){for(;a
&&b
;){if(a
.isSameNode(b
))return!0;a
=a
.parentNode
}return!1};
670 cvox
.DomUtil
.collapseWhitespace=function(a
){return a
.replace(/\s+/g," ").replace(/^\s+|\s+$/g,"")};
671 cvox
.DomUtil
.getBaseLabel_=function(a
,b
,c
){var d
="";if(a
.hasAttribute
){if(a
.hasAttribute("aria-labelledby"))for(var e
=a
.getAttribute("aria-labelledby").split(" "),f
,g
=0;f
=e
[g
];g
++)(f
=document
.getElementById(f
))&&(d
+=" "+cvox
.DomUtil
.getName(f
,!0,c
,!0));else if(a
.hasAttribute("aria-label"))d
=a
.getAttribute("aria-label");else if(a
.constructor==HTMLImageElement
)d
=cvox
.DomUtil
.getImageTitle(a
);else if("FIELDSET"==a
.tagName
)for(e
=a
.getElementsByTagName("LEGEND"),d
="",g
=0;f
=e
[g
];g
++)d
+=" "+cvox
.DomUtil
.getName(f
,
672 !0,c
);0==d
.length
&&a
&&a
.id
&&(a
=document
.querySelector('label[for="'+a
.id
+'"]'))&&(d
=cvox
.DomUtil
.getName(a
,b
,c
))}return cvox
.DomUtil
.collapseWhitespace(d
)};cvox
.DomUtil
.getNearestAncestorLabel_=function(a
){for(var b
="";a
&&"LABEL"!=a
.tagName
;)a
=a
.parentElement
;a
&&!a
.hasAttribute("for")&&(b
=cvox
.DomUtil
.getName(a
,!0,!1));return b
};
673 cvox
.DomUtil
.getInputName_=function(a
){var b
="";"image"==a
.type
?b
=cvox
.DomUtil
.getImageTitle(a
):"submit"==a
.type
?b
=a
.hasAttribute("value")?a
.getAttribute("value"):"Submit":"reset"==a
.type
?b
=a
.hasAttribute("value")?a
.getAttribute("value"):"Reset":"button"==a
.type
&&a
.hasAttribute("value")&&(b
=a
.getAttribute("value"));return b
};
674 cvox
.DomUtil
.getName=function(a
,b
,c
,d
){if(!a
||!0==a
.cvoxGetNameMarked
)return"";a
.cvoxGetNameMarked
=!0;b
=cvox
.DomUtil
.getName_(a
,b
,c
,d
);a
.cvoxGetNameMarked
=!1;a
=cvox
.DomUtil
.getPrefixText(a
);return a
+b
};cvox
.DomUtil
.hasChildrenBasedName_=function(a
,b
){return cvox
.DomPredicates
.linkPredicate([a
])||cvox
.DomPredicates
.headingPredicate([a
])||"BUTTON"==a
.tagName
||cvox
.AriaUtil
.isControlWidget(a
)||!cvox
.DomUtil
.isLeafNode(a
,b
)?!0:!1};
675 cvox
.DomUtil
.getName_=function(a
,b
,c
,d
){"undefined"===typeof b
&&(b
=!0);"undefined"===typeof c
&&(c
=!0);if(a
.constructor==Text
)return a
.data
;var e
=cvox
.DomUtil
.getBaseLabel_(a
,b
,c
);0==e
.length
&&cvox
.DomUtil
.isControl(a
)&&(e
=cvox
.DomUtil
.getNearestAncestorLabel_(a
));0==e
.length
&&a
.constructor==HTMLInputElement
&&(e
=cvox
.DomUtil
.getInputName_(a
));return cvox
.DomUtil
.isInputTypeText(a
)&&a
.hasAttribute("placeholder")?(b
=a
.getAttribute("placeholder"),0<e
.length
?0<cvox
.DomUtil
.getValue(a
).length
?e
:e
+" with hint "+
676 b
:b
):0<e
.length
?e
:0==cvox
.DomUtil
.collapseWhitespace(a
.textContent
).length
&&a
.hasAttribute
&&a
.hasAttribute("title")?a
.getAttribute("title"):!b
||cvox
.AriaUtil
.isCompositeControl(a
)?"":cvox
.DomUtil
.hasChildrenBasedName_(a
,d
)?cvox
.DomUtil
.getNameFromChildren(a
,c
,d
):""};
677 cvox
.DomUtil
.getNameFromChildren=function(a
,b
,c
){void 0==b
&&(b
=!0);for(var d
="",e
="",f
=0;f
<a
.childNodes
.length
;f
++){var g
=a
.childNodes
[f
],e
=a
.childNodes
[f
-1]||g
;if(b
||!cvox
.DomUtil
.isControl(g
)){var h
=cvox
.DomUtil
.isVisible(g
,{checkAncestors
:!1});if(c
||h
&&!cvox
.AriaUtil
.isHidden(g
))e
="SPAN"==e
.tagName
||"SPAN"==g
.tagName
||"SPAN"==g
.parentNode
.tagName
?"":" ",d
+=e
+cvox
.DomUtil
.getName(g
,!0,b
)}}return d
};
678 cvox
.DomUtil
.getPrefixText=function(a
,b
){b
=b
||0;for(var c
=cvox
.DomUtil
.getAncestors(a
),d
="",e
=c
=cvox
.DomPredicates
.listItemPredicate(c
);e
&&e
.firstChild
;)e
=e
.firstChild
;c
&&c
.parentNode
&&0==b
&&"OL"==c
.parentNode
.tagName
&&a
==e
&&"none"!=document
.defaultView
.getComputedStyle(c
.parentNode
).listStyleType
&&(d
=cvox
.DomUtil
.toArray(c
.parentNode
.children
).filter(function(a
){return"LI"==a
.tagName
}),d
=d
.indexOf(c
)+1,-1!=document
.defaultView
.getComputedStyle(c
.parentNode
).listStyleType
.indexOf("latin")&&(d
--,d
=
679 String
.fromCharCode(65+d
%26)),d
+=". ");return d
};
680 cvox
.DomUtil
.getControlLabelHeuristics=function(a
){if(a
.hasAttribute
&&(a
.hasAttribute("aria-label")&&""==a
.getAttribute("aria-label")||a
.hasAttribute("aria-title")&&""==a
.getAttribute("aria-title")))return"";for(var b
=cvox
.DomUtil
.previousLeafNode(a
),c
=0;b
&&(!cvox
.DomUtil
.hasContent(b
)||cvox
.DomUtil
.isControl(b
));)b
=cvox
.DomUtil
.previousLeafNode(b
),c
++;for(var c
=cvox
.DomUtil
.directedNextLeafNode(a
),d
=0;c
&&(!cvox
.DomUtil
.hasContent(c
)||cvox
.DomUtil
.isControl(c
));)c
=cvox
.DomUtil
.directedNextLeafNode(c
),
681 d
++;if(b
&&c
){for(var d
=a
,e
=0;d
&&!cvox
.DomUtil
.isDescendantOfNode(b
,d
);)d
=d
.parentNode
,e
++;d
=a
;for(a
=0;d
&&!cvox
.DomUtil
.isDescendantOfNode(c
,d
);)d
=d
.parentNode
,a
++;b
=a
<e
?c
:b
}else b
=b
||c
;return b
?cvox
.DomUtil
.collapseWhitespace(cvox
.DomUtil
.getValue(b
)+" "+cvox
.DomUtil
.getName(b
)):""};
682 cvox
.DomUtil
.getValue=function(a
){var b
=cvox
.AriaUtil
.getActiveDescendant(a
);if(b
)return cvox
.DomUtil
.collapseWhitespace(cvox
.DomUtil
.getValue(b
)+" "+cvox
.DomUtil
.getName(b
));if(a
.constructor==HTMLSelectElement
){var b
="",c
=a
.selectedOptions
?a
.selectedOptions
[0]:null;a
=a
.selectedOptions
?a
.selectedOptions
[a
.selectedOptions
.length
-1]:null;c
&&a
&&c
!=a
?b
=cvox
.ChromeVox
.msgs
.getMsg("selected_options_value",[c
.text
,a
.text
]):c
&&(b
=c
.text
+"");return b
}if(a
.constructor==HTMLTextAreaElement
)return a
.value
;if(a
.constructor==
683 HTMLInputElement
)switch(a
.type
){case "hidden":case "image":case "submit":case "reset":case "button":case "checkbox":case "radio":return"";case "password":return a
.value
.replace(/./g
,"dot ");default:return a
.value
}return a
.isContentEditable
?cvox
.DomUtil
.getNameFromChildren(a
,!0):""};
684 cvox
.DomUtil
.getImageTitle=function(a
){a
.hasAttribute("alt")?a
=a
.alt
:a
.hasAttribute("title")?a
=a
.title
:(a
=a
.src
,"data"!=a
.substring(0,4)?(a
=a
.substring(a
.lastIndexOf("/")+1,a
.lastIndexOf(".")),a
=1<=a
.length
&&16>=a
.length
?a
+" Image":"Image"):a
="Image");return a
};
685 cvox
.DomUtil
.hasContent=function(a
){if(8==a
.nodeType
||cvox
.DomUtil
.isDescendantOf(a
,"HEAD")||cvox
.DomUtil
.isDescendantOf(a
,"SCRIPT")||cvox
.DomUtil
.isDescendantOf(a
,"NOSCRIPT")||cvox
.DomUtil
.isDescendantOf(a
,"NOEMBED")||cvox
.DomUtil
.isDescendantOf(a
,"STYLE")||!cvox
.DomUtil
.isVisible(a
)||cvox
.AriaUtil
.isHidden(a
))return!1;if(cvox
.DomUtil
.isControl(a
)||cvox
.DomUtil
.isDescendantOf(a
,"VIDEO")||cvox
.DomUtil
.isDescendantOf(a
,"AUDIO")||"IFRAME"==a
.tagName
&&a
.src
&&0!=a
.src
.indexOf("javascript:"))return!0;
686 for(var b
="button,input,select,textarea",c
=a
.parentElement
;c
&&"LABEL"!=c
.tagName
;)c
=c
.parentElement
;if(c
){var d
=c
.querySelector(b
);if(c
.hasAttribute("for")){if(c
=c
.getAttribute("for"),(c
=document
.getElementById(c
))&&cvox
.DomUtil
.isControl(c
)&&!d
)return!1}else if(d
)return!1}for(d
=a
.parentElement
;d
&&"LEGEND"!=d
.tagName
;)d
=d
.parentElement
;if(d
){for(c
=d
.parentElement
;c
&&"FIELDSET"!=c
.tagName
;)c
=c
.parentElement
;d
=c
&&c
.querySelector(b
);if(c
&&!d
)return!1}if(cvox
.DomPredicates
.linkPredicate([a
])||"TABLE"==
687 a
.tagName
||cvox
.DomUtil
.isMath(a
)||cvox
.DomPredicates
.headingPredicate([a
]))return!0;b
=cvox
.DomUtil
.getValue(a
)+" "+cvox
.DomUtil
.getName(a
);a
=cvox
.DomUtil
.getState(a
,!0);return b
.match(/^\s+$/)&&""===a
?!1:!0};cvox
.DomUtil
.getAncestors=function(a
){for(var b
=[];a
;)b
.push(a
),a
=a
.parentNode
;for(b
.reverse();b
.length
&&!b
[0].tagName
&&!b
[0].nodeValue
;)b
.shift();return b
};cvox
.DomUtil
.compareAncestors=function(a
,b
){for(var c
=0;a
[c
]&&b
[c
]&&a
[c
]==b
[c
];)c
++;a
[c
]||b
[c
]||(c
=-1);return c
};
688 cvox
.DomUtil
.getUniqueAncestors=function(a
,b
,c
){a
=cvox
.DomUtil
.getAncestors(a
);b
=cvox
.DomUtil
.getAncestors(b
);a
=cvox
.DomUtil
.compareAncestors(a
,b
);a
=b
.slice(a
);return 0==a
.length
&&c
?b
:a
};
689 cvox
.DomUtil
.getRoleMsg=function(a
,b
){var c
;c
=cvox
.AriaUtil
.getRoleNameMsg(a
);c
||("INPUT"==a
.tagName
?c
=cvox
.DomUtil
.INPUT_TYPE_TO_INFORMATION_TABLE_MSG
[a
.type
]:"A"==a
.tagName
&&cvox
.DomUtil
.isInternalLink(a
)?c
="internal_link":"A"==a
.tagName
&&a
.getAttribute("name")?c
="":a
.isContentEditable
?c
="input_type_text":cvox
.DomUtil
.isMath(a
)?c
="math_expr":"TABLE"==a
.tagName
&&cvox
.DomUtil
.isLayoutTable(a
)?c
="":b
==cvox
.VERBOSITY_BRIEF
?c
=cvox
.DomUtil
.TAG_TO_INFORMATION_TABLE_BRIEF_MSG
[a
.tagName
]:(c
=cvox
.DomUtil
.TAG_TO_INFORMATION_TABLE_VERBOSE_MSG
[a
.tagName
],
690 cvox
.DomUtil
.hasLongDesc(a
)&&(c
="image_with_long_desc"),!c
&&a
.onclick
&&(c
="clickable")));return c
};cvox
.DomUtil
.getRole=function(a
,b
){var c
=cvox
.DomUtil
.getRoleMsg(a
,b
)||"",d
=c
&&" "!=c
?cvox
.ChromeVox
.msgs
.getMsg(c
):"";return d
?d
:c
};cvox
.DomUtil
.getListLength=function(a
){var b
=0;for(a
=a
.firstChild
;a
;a
=a
.nextSibling
)if("LI"==a
.tagName
||a
.getAttribute
&&"listitem"==a
.getAttribute("role")){if(a
.hasAttribute("aria-setsize")){var c
=parseInt(a
.getAttribute("aria-setsize"),10);if(!isNaN(c
))return c
}b
++}return b
};
691 cvox
.DomUtil
.getStateMsgs=function(a
,b
){var c
=cvox
.AriaUtil
.getActiveDescendant(a
);if(c
)return cvox
.DomUtil
.getStateMsgs(c
,b
);var c
=[],d
=a
.getAttribute
?a
.getAttribute("role"):"";(c
=cvox
.AriaUtil
.getStateMsgs(a
,b
))||(c
=[]);"INPUT"==a
.tagName
?a
.hasAttribute("aria-checked")||(d
={"checkbox-true":"checkbox_checked_state","checkbox-false":"checkbox_unchecked_state","radio-true":"radio_selected_state","radio-false":"radio_unselected_state"},(d
=d
[a
.type
+"-"+!!a
.checked
])&&c
.push([d
])):"SELECT"==a
.tagName
?
692 a
.selectedOptions
&&1>=a
.selectedOptions
.length
?c
.push(["list_position",cvox
.ChromeVox
.msgs
.getNumber(a
.selectedIndex
+1),cvox
.ChromeVox
.msgs
.getNumber(a
.options
.length
)]):c
.push(["selected_options_state",cvox
.ChromeVox
.msgs
.getNumber(a
.selectedOptions
.length
)]):"UL"!=a
.tagName
&&"OL"!=a
.tagName
&&"list"!=d
||c
.push(["list_with_items",cvox
.ChromeVox
.msgs
.getNumber(cvox
.DomUtil
.getListLength(a
))]);cvox
.DomUtil
.isDisabled(a
)&&c
.push(["aria_disabled_true"]);cvox
.DomPredicates
.linkPredicate([a
])&&cvox
.ChromeVox
.visitedUrls
[a
.href
]&&
693 c
.push(["visited_url"]);a
.accessKey
&&c
.push(["access_key",a
.accessKey
]);return c
};cvox
.DomUtil
.getState=function(a
,b
){return cvox
.NodeStateUtil
.expand(cvox
.DomUtil
.getStateMsgs(a
,b
))};cvox
.DomUtil
.isFocusable=function(a
){return a
&&"number"==typeof a
.tabIndex
&&("A"!=a
.tagName
||a
.hasAttribute("href")||a
.hasAttribute("tabindex"))?0<=a
.tabIndex
||a
.hasAttribute
&&a
.hasAttribute("tabindex")&&"-1"==a
.getAttribute("tabindex")?!0:!1:!1};
694 cvox
.DomUtil
.findFocusableDescendant=function(a
){return a
&&(a
=cvox
.DomUtil
.findNode(a
,cvox
.DomUtil
.isFocusable
))?a
:null};cvox
.DomUtil
.countFocusableDescendants=function(a
){return a
?cvox
.DomUtil
.countNodes(a
,cvox
.DomUtil
.isFocusable
):0};cvox
.DomUtil
.isAttachedToDocument=function(a
){for(;a
;){if(a
.tagName
&&"HTML"==a
.tagName
)return!0;a
=a
.parentNode
}return!1};
695 cvox
.DomUtil
.clickElem=function(a
,b
,c
,d
){var e
=cvox
.AriaUtil
.getActiveDescendant(a
);e
&&(a
=e
);if(c
){c
=null;a
.onclick
&&(c
=a
.onclick
);!c
&&1!=a
.nodeType
&&a
.parentNode
&&a
.parentNode
.onclick
&&(c
=a
.parentNode
.onclick
);e
=!0;if(c
)try{e
=c()}catch(f
){}if(!e
)return}c
=document
.createEvent("MouseEvents");d
=d
?"dblclick":"mousedown";c
.initMouseEvent(d
,!0,!0,document
.defaultView
,1,0,0,0,0,!1,!1,b
,!1,0,null);c
.fromCvox
=!0;try{a
.dispatchEvent(c
)}catch(g
){}c
=document
.createEvent("MouseEvents");c
.initMouseEvent("mouseup",
696 !0,!0,document
.defaultView
,1,0,0,0,0,!1,!1,b
,!1,0,null);c
.fromCvox
=!0;try{a
.dispatchEvent(c
)}catch(h
){}c
=document
.createEvent("MouseEvents");c
.initMouseEvent("click",!0,!0,document
.defaultView
,1,0,0,0,0,!1,!1,b
,!1,0,null);c
.fromCvox
=!0;try{a
.dispatchEvent(c
)}catch(k
){}cvox
.DomUtil
.isInternalLink(a
)&&cvox
.DomUtil
.syncInternalLink(a
)};
697 cvox
.DomUtil
.syncInternalLink=function(a
){var b
=a
.href
.split("#")[1];a
=document
.getElementById(b
);a
||(b
=document
.getElementsByName(b
),0<b
.length
&&(a
=b
[0]));if(a
){var b
=a
.parentNode
,c
=document
.createElement("div");c
.setAttribute("tabindex","-1");b
.insertBefore(c
,a
);c
.setAttribute("chromevoxignoreariahidden",1);c
.focus();cvox
.ChromeVox
.syncToNode(a
,!1)}};
698 cvox
.DomUtil
.isInputTypeText=function(a
){if(!a
||a
.constructor!=HTMLInputElement
)return!1;switch(a
.type
){case "email":case "number":case "password":case "search":case "text":case "tel":case "url":case "":return!0;default:return!1}};cvox
.DomUtil
.isControl=function(a
){if(cvox
.AriaUtil
.isControlWidget(a
)&&cvox
.DomUtil
.isFocusable(a
))return!0;if(a
.tagName
)switch(a
.tagName
){case "BUTTON":case "TEXTAREA":case "SELECT":return!0;case "INPUT":return"hidden"!=a
.type
}return a
.isContentEditable
?!0:!1};
699 cvox
.DomUtil
.isLeafLevelControl=function(a
){return cvox
.DomUtil
.isControl(a
)?!(cvox
.AriaUtil
.isCompositeControl(a
)&&cvox
.DomUtil
.findFocusableDescendant(a
)):!1};cvox
.DomUtil
.getSurroundingControl=function(a
){var b
=null;if(!cvox
.DomUtil
.isControl(a
)&&a
.hasAttribute
&&a
.hasAttribute("role"))for(b
=a
.parentElement
;b
&&!cvox
.AriaUtil
.isCompositeControl(b
);)b
=b
.parentElement
;return b
};
700 cvox
.DomUtil
.directedNextLeafLikeNode=function(a
,b
,c
){if(a
!=document
.body
){for(;!cvox
.DomUtil
.directedNextSibling(a
,b
);){if(!a
)return null;a
=a
.parentNode
;if(a
==document
.body
)return null}cvox
.DomUtil
.directedNextSibling(a
,b
)&&(a
=cvox
.DomUtil
.directedNextSibling(a
,b
))}for(;cvox
.DomUtil
.directedFirstChild(a
,b
)&&!c(a
);)a
=cvox
.DomUtil
.directedFirstChild(a
,b
);return a
==document
.body
?null:a
};cvox
.DomUtil
.directedNextLeafNode=function(a
,b
){b
=!!b
;return cvox
.DomUtil
.directedNextLeafLikeNode(a
,b
,cvox
.DomUtil
.isLeafNode
)};
701 cvox
.DomUtil
.previousLeafNode=function(a
){return cvox
.DomUtil
.directedNextLeafNode(a
,!0)};cvox
.DomUtil
.directedFindFirstNode=function(a
,b
,c
){for(a
=cvox
.DomUtil
.directedFirstChild(a
,b
);a
;){if(c(a
))return a
;var d
=cvox
.DomUtil
.directedFindFirstNode(a
,b
,c
);if(d
)return d
;a
=cvox
.DomUtil
.directedNextSibling(a
,b
)}return null};cvox
.DomUtil
.directedFindDeepestNode=function(a
,b
,c
){var d
=cvox
.DomUtil
.directedFindFirstNode(a
,b
,c
);return d
?cvox
.DomUtil
.directedFindDeepestNode(d
,b
,c
):c(a
)?a
:null};
702 cvox
.DomUtil
.directedFindNextNode=function(a
,b
,c
,d
,e
,f
){e
=!!e
;f
=!!f
;if(!cvox
.DomUtil
.isDescendantOfNode(a
,b
)||a
==b
)return null;for(var g
=cvox
.DomUtil
.directedNextSibling(a
,c
);g
;){if(!f
&&d(g
))return g
;var h
=(f
?cvox
.DomUtil
.directedFindDeepestNode
:cvox
.DomUtil
.directedFindFirstNode
)(g
,c
,d
);if(h
)return h
;if(f
&&d(g
))return g
;g
=cvox
.DomUtil
.directedNextSibling(g
,c
)}a
=a
.parentNode
;return e
&&d(a
)?a
:cvox
.DomUtil
.directedFindNextNode(a
,b
,c
,d
,e
,f
)};
703 cvox
.DomUtil
.getControlValueAndStateString=function(a
){var b
=cvox
.DomUtil
.getSurroundingControl(a
);return b
?cvox
.DomUtil
.collapseWhitespace(cvox
.DomUtil
.getValue(a
)+" "+cvox
.DomUtil
.getName(a
)+" "+cvox
.DomUtil
.getState(a
,!0)):cvox
.DomUtil
.collapseWhitespace(cvox
.DomUtil
.getValue(a
)+" "+cvox
.DomUtil
.getState(a
,!0))};cvox
.DomUtil
.isInternalLink=function(a
){return 1==a
.nodeType
&&(a
=a
.getAttribute("href"))&&-1!=a
.indexOf("#")?(a
=a
.split("#")[0],""==a
||a
==window
.location
.pathname
):!1};
704 cvox
.DomUtil
.getLinkURL=function(a
){if("A"==a
.tagName
){if(a
.getAttribute("href"))return cvox
.DomUtil
.isInternalLink(a
)?cvox
.ChromeVox
.msgs
.getMsg("internal_link"):a
.getAttribute("href")}else if(cvox
.AriaUtil
.getRoleName(a
)==cvox
.ChromeVox
.msgs
.getMsg("aria_role_link"))return cvox
.ChromeVox
.msgs
.getMsg("unknown_link");return""};cvox
.DomUtil
.getContainingTable=function(a
,b
){var c
=cvox
.DomUtil
.getAncestors(a
);return cvox
.DomUtil
.findTableNodeInList(c
,b
)};
705 cvox
.DomUtil
.findTableNodeInList=function(a
,b
){b
=b
||{allowCaptions
:!1};for(var c
=a
.length
-1,d
;d
=a
[c
];c
--)if(d
.constructor!=Text
){if(!b
.allowCaptions
&&"CAPTION"==d
.tagName
)break;if("TABLE"==d
.tagName
||cvox
.AriaUtil
.isGrid(d
))return d
}return null};
706 cvox
.DomUtil
.isLayoutTable=function(a
){if(a
.rows
&&(1==a
.rows
.length
||1==a
.rows
[0].childElementCount
))return!0;if(cvox
.AriaUtil
.isGrid(a
)||cvox
.AriaUtil
.isLandmark(a
)||a
.caption
||a
.summary
||0<cvox
.XpathUtil
.evalXPath("tbody/tr/th",a
).length
&&0<cvox
.XpathUtil
.evalXPath("tbody/tr/td",a
).length
||0<cvox
.XpathUtil
.evalXPath("colgroup",a
).length
||0<cvox
.XpathUtil
.evalXPath("thead",a
).length
||0<cvox
.XpathUtil
.evalXPath("tfoot",a
).length
)return!1;if(0<cvox
.XpathUtil
.evalXPath("tbody/tr/td/embed",a
).length
||
707 0<cvox
.XpathUtil
.evalXPath("tbody/tr/td/object",a
).length
||0<cvox
.XpathUtil
.evalXPath("tbody/tr/td/iframe",a
).length
||0<cvox
.XpathUtil
.evalXPath("tbody/tr/td/applet",a
).length
)return!0;var b
=0;cvox
.DomUtil
.hasBorder(a
)||b
++;6>=a
.rows
.length
&&b
++;12>=cvox
.DomUtil
.countPreviousTags(a
)&&b
++;0<cvox
.XpathUtil
.evalXPath("tbody/tr/td/table",a
).length
&&b
++;return 3<=b
};cvox
.DomUtil
.countPreviousTags=function(a
){var b
=cvox
.DomUtil
.getAncestors(a
);return b
.length
+cvox
.DomUtil
.countPreviousSiblings(a
)};
708 cvox
.DomUtil
.countPreviousSiblings=function(a
){var b
=0;for(a
=a
.previousSibling
;null!=a
;)a
.constructor!=Text
&&b
++,a
=a
.previousSibling
;return b
};cvox
.DomUtil
.hasBorder=function(a
){return a
.frame
?-1==a
.frame
.indexOf("void"):a
.border
?1==a
.border
.length
?"0"!=a
.border
:0!=a
.border
.slice(0,-2):a
.style
.borderStyle
&&"none"==a
.style
.borderStyle
?!1:a
.style
.borderWidth
?0!=a
.style
.borderWidth
.slice(0,-2):a
.style
.borderColor
?!0:!1};
709 cvox
.DomUtil
.getFirstLeafNode=function(){for(var a
=document
.body
;a
&&a
.firstChild
;)a
=a
.firstChild
;for(;a
&&!cvox
.DomUtil
.hasContent(a
);)a
=cvox
.DomUtil
.directedNextLeafNode(a
);return a
};cvox
.DomUtil
.findNode=function(a
,b
){var c
=[],d
=cvox
.DomUtil
.findNodes_(a
,b
,c
,!0,1E4
);return d
?c
[0]:void 0};cvox
.DomUtil
.countNodes=function(a
,b
){var c
=[];cvox
.DomUtil
.findNodes_(a
,b
,c
,!1,1E4
);return c
.length
};
710 cvox
.DomUtil
.findNodes_=function(a
,b
,c
,d
,e
){if(null!=a
||0==e
)for(a
=a
.firstChild
;a
;){if(b(a
)&&(c
.push(a
),d
))return!0;e
-=1;if(cvox
.DomUtil
.findNodes_(a
,b
,c
,d
,e
))return!0;a
=a
.nextSibling
}return!1};cvox
.DomUtil
.toArray=function(a
){for(var b
=[],c
=0;c
<a
.length
;c
++)b
.push(a
[c
]);return b
};
711 cvox
.DomUtil
.shallowChildlessClone=function(a
,b
){if("#text"==a
.nodeName
)return document
.createTextNode(a
.nodeValue
);if("#comment"==a
.nodeName
)return document
.createComment(a
.nodeValue
);for(var c
=document
.createElement(a
.nodeName
),d
=0;d
<a
.attributes
.length
;++d
){var e
=a
.attributes
[d
];b
&&b
[e
.nodeName
]||c
.setAttribute(e
.nodeName
,e
.nodeValue
)}return c
};
712 cvox
.DomUtil
.deepClone=function(a
,b
){for(var c
=cvox
.DomUtil
.shallowChildlessClone(a
,b
),d
=0;d
<a
.childNodes
.length
;++d
)c
.appendChild(cvox
.DomUtil
.deepClone(a
.childNodes
[d
],b
));return c
};cvox
.DomUtil
.directedFirstChild=function(a
,b
){return b
?a
.lastChild
:a
.firstChild
};cvox
.DomUtil
.directedNextSibling=function(a
,b
){return a
?b
?a
.previousSibling
:a
.nextSibling
:null};cvox
.DomUtil
.createSimpleClickFunction=function(a
){var b
=a
.cloneNode(!0);return function(){cvox
.DomUtil
.clickElem(b
,!1,!1)}};
713 cvox
.DomUtil
.addNodeToHead=function(a
,b
){if(!b
||!document
.getElementById(b
)){var c
=document
.head
||document
.body
;c
.appendChild(a
)}};cvox
.DomUtil
.getContainingMath=function(a
){a
=cvox
.DomUtil
.getAncestors(a
);return cvox
.DomUtil
.findMathNodeInList(a
)};cvox
.DomUtil
.findMathNodeInList=function(a
){for(var b
=0,c
;c
=a
[b
];b
++)if(cvox
.DomUtil
.isMath(c
))return c
;return null};cvox
.DomUtil
.isMath=function(a
){return cvox
.DomUtil
.isMathml(a
)||cvox
.DomUtil
.isMathJax(a
)||cvox
.DomUtil
.isMathImg(a
)||cvox
.AriaUtil
.isMath(a
)};
714 cvox
.DomUtil
.ALT_MATH_CLASSES
={tex
:["tex","latex"],asciimath
:["numberedequation","inlineformula","displayformula"]};cvox
.DomUtil
.altMathQuerySelector=function(a
){return(a
=cvox
.DomUtil
.ALT_MATH_CLASSES
[a
])?a
.map(function(a
){return"img."+a
}).join(", "):""};cvox
.DomUtil
.isMathImg=function(a
){if(!a
||!a
.tagName
||!a
.className
||"IMG"!=a
.tagName
)return!1;a
=a
.className
.toLowerCase();return-1!=cvox
.DomUtil
.ALT_MATH_CLASSES
.tex
.indexOf(a
)||-1!=cvox
.DomUtil
.ALT_MATH_CLASSES
.asciimath
.indexOf(a
)};
715 cvox
.DomUtil
.isMathml=function(a
){return a
&&a
.tagName
?"math"==a
.tagName
.toLowerCase():!1};cvox
.DomUtil
.isMathJax=function(a
){function b(a
,b
){return"SPAN"==a
.tagName
&&a
.className
.split(" ").some(function(a
){return a
.toLowerCase()==b
})}return a
&&a
.tagName
&&a
.className
?b(a
,"math")?(a
=cvox
.DomUtil
.getAncestors(a
),a
.some(function(a
){return b(a
,"mathjax")})):!1:!1};cvox
.DomUtil
.getMathSpanId=function(a
){if(a
=document
.getElementById(a
+"-Frame"))if(a
=a
.querySelector("span.math"))return a
.id
};
716 cvox
.DomUtil
.hasLongDesc=function(a
){return a
&&a
.longDesc
?!0:!1};cvox
.DomUtil
.getNodeTagName=function(a
){return a
.nodeType
==Node
.ELEMENT_NODE
?a
.tagName
:""};cvox
.DomUtil
.purgeNodes=function(a
){return cvox
.DomUtil
.toArray(a
).filter(function(a
){return a
.nodeType
!=Node
.TEXT_NODE
||!a
.textContent
.match(/^\s+$/)})};cvox
.DomUtil
.elementToPoint=function(a
){if(!a
)return{x
:0,y
:0};a
.constructor==Text
&&(a
=a
.parentNode
);a
=a
.getBoundingClientRect();return{x
:a
.left
+a
.width
/2,y:a.top+a.height/2}};
717 cvox
.DomUtil
.doesInputSupportSelection=function(a
){return goog
.isDef(a
)&&"INPUT"==a
.tagName
&&"email"!=a
.type
&&"number"!=a
.type
};cvox
.SelectionUtil=function(){};cvox
.SelectionUtil
.cleanUpParagraphForward=function(a
){for(;3==a
.focusNode
.nodeType
;){var b
=a
.focusNode
,c
=a
.focusOffset
;a
.modify("extend","forward","sentence");if(b
==a
.focusNode
&&c
==a
.focusOffset
)return!1}return!0};cvox
.SelectionUtil
.cleanUpParagraphBack=function(a
){for(var b
,c
;3==a
.focusNode
.nodeType
&&(b
=a
.focusNode
,c
=a
.focusOffset
,a
.modify("extend","backward","sentence"),b
!=a
.focusNode
||c
!=a
.focusOffset
););return!0};
718 cvox
.SelectionUtil
.cleanUpSentence=function(a
){for(var b
=!0;b
;)if(3==a
.focusNode
.nodeType
){var c
=a
.focusNode
,d
=a
.focusOffset
;if(0<a
.rangeCount
&&0<a
.getRangeAt(0).endOffset
)if("."==c
.substringData(a
.getRangeAt(0).endOffset
-1,1))break;else if(" "==c
.substringData(a
.getRangeAt(0).endOffset
-1,1))break;else{if(a
.modify("extend","forward","sentence"),c
==a
.focusNode
&&d
==a
.focusOffset
)return!1}else break}else break;return!0};
719 cvox
.SelectionUtil
.findSelPosition=function(a
){if(0==a
.rangeCount
)return[0,0];var b
=a
.getRangeAt(0).getBoundingClientRect();if(!b
)return[0,0];a
=window
.pageYOffset
+b
.top
;b
=window
.pageXOffset
+b
.left
;return[a
,b
]};cvox
.SelectionUtil
.findTopLeftPosition=function(a
){var b
=0,c
=0;if(a
.offsetParent
)for(b
=a
.offsetLeft
,c
=a
.offsetTop
,a
=a
.offsetParent
;null!==a
;)b
+=a
.offsetLeft
,c
+=a
.offsetTop
,a
=a
.offsetParent
;return[c
,b
]};
720 cvox
.SelectionUtil
.isSelectionValid=function(a
){var b
=RegExp(/^\s+$/);return!(b
.test(a
.toString())||""==a
.toString())};cvox
.SelectionUtil
.isRangeValid=function(a
){a
=a
.cloneContents().textContent
;var b
=RegExp(/^\s+$/);return!(b
.test(a
)||""==a
)};cvox
.SelectionUtil
.findPos_=function(a
){var b
=0,c
=0;if(a
.offsetParent
){do b
+=a
.offsetLeft
,c
+=a
.offsetTop
;while(a
=a
.offsetParent
)}return[b
,c
]};
721 cvox
.SelectionUtil
.scrollElementsToView=function(a
){for(;a
&&!a
.getBoundingClientRect
;)a
=a
.parentElement
;if(a
){for(var b
=a
,c
=b
.parentElement
;b
!=document
.body
&&c
;)b
.scrollTop
=b
.offsetTop
,b
.scrollLeft
=b
.offsetLeft
,b
=c
,c
=b
.parentElement
;a
=cvox
.SelectionUtil
.findPos_(a
);window
.scrollTo(a
[0]-window
.innerWidth
/2,a[1]-window.innerHeight/2)}};
722 cvox
.SelectionUtil
.scrollToSelection=function(a
){if(0!=a
.rangeCount
){cvox
.SelectionUtil
.scrollElementsToView(a
.focusNode
);var b
=cvox
.SelectionUtil
.findSelPosition(a
);a
=b
[0];var b
=b
[1],c
=window
.pageYOffset
||document
.documentElement
.scrollTop
||document
.body
.scrollTop
,d
=window
.innerHeight
||document
.documentElement
.clientHeight
||document
.body
.clientHeight
,e
=window
.innerWidth
||document
.documentElement
.innerWidth
||document
.body
.clientWidth
;b
<e
&&(b
=0);c
+d
<a
?(a
-=d
,window
.scroll(b
,a
+100)):a
<c
&&window
.scroll(b
,
723 a
-100)}};cvox
.SelectionUtil
.isAllWs=function(a
){return!/[^\t\n\r ]/.test(a
.data
)};cvox
.SelectionUtil
.isIgnorable=function(a
){return 8==a
.nodeType
||3==a
.nodeType
&&cvox
.SelectionUtil
.isAllWs(a
)};cvox
.SelectionUtil
.nodeBefore=function(a
){for(;a
=a
.previousSibling
;)if(!cvox
.SelectionUtil
.isIgnorable(a
))return a
;return null};cvox
.SelectionUtil
.nodeAfter=function(a
){for(;a
=a
.nextSibling
;)if(!cvox
.SelectionUtil
.isIgnorable(a
))return a
;return null};
724 cvox
.SelectionUtil
.lastChildNode=function(a
){for(a
=a
.lastChild
;a
;){if(!cvox
.SelectionUtil
.isIgnorable(a
))return a
;a
=a
.previousSibling
}return null};cvox
.SelectionUtil
.firstChildNode=function(a
){for(a
=a
.firstChild
;a
;){if(!cvox
.SelectionUtil
.isIgnorable(a
))return a
;a
=a
.nextSibling
}return null};cvox
.SelectionUtil
.dataOf=function(a
){a
=a
.data
;a
=a
.replace(/[\t\n\r ]+/g," ");" "==a
.charAt(0)&&(a
=a
.substring(1,a
.length
));" "==a
.charAt(a
.length
-1)&&(a
=a
.substring(0,a
.length
-1));return a
};
725 cvox
.SelectionUtil
.hasContentWithTag=function(a
,b
){if(!a
||!a
.anchorNode
||!a
.focusNode
)return!1;if(a
.anchorNode
.tagName
&&a
.anchorNode
.tagName
==b
||a
.focusNode
.tagName
&&a
.focusNode
.tagName
==b
||a
.anchorNode
.parentNode
.tagName
&&a
.anchorNode
.parentNode
.tagName
==b
||a
.focusNode
.parentNode
.tagName
&&a
.focusNode
.parentNode
.tagName
==b
)return!0;var c
=a
.getRangeAt(0).cloneContents(),d
=document
.createElement("span");d
.appendChild(c
);return 0<d
.getElementsByTagName(b
).length
};
726 cvox
.SelectionUtil
.selectText=function(a
,b
,c
){var d
=document
.createRange();d
.setStart(a
,b
);d
.setEnd(a
,c
);a
=window
.getSelection();a
.removeAllRanges();a
.addRange(d
)};cvox
.SelectionUtil
.selectAllTextInNode=function(a
){var b
=document
.createRange();b
.setStart(a
,0);b
.setEndAfter(a
);a
=window
.getSelection();a
.removeAllRanges();a
.addRange(b
)};
727 cvox
.SelectionUtil
.collapseToStart=function(a
){var b
=window
.getSelection(),c
=b
.anchorNode
,d
=b
.anchorOffset
;null==c
&&(c
=a
,d
=0);a
=document
.createRange();a
.setStart(c
,d
);a
.setEnd(c
,d
);b
.removeAllRanges();b
.addRange(a
)};cvox
.SelectionUtil
.collapseToEnd=function(a
){var b
=window
.getSelection(),c
=b
.focusNode
,d
=b
.focusOffset
;null==c
&&(c
=a
,d
=0);a
=document
.createRange();a
.setStart(c
,d
);a
.setEnd(c
,d
);b
.removeAllRanges();b
.addRange(a
)};
728 cvox
.SelectionUtil
.getText=function(){var a
=window
.getSelection();if(cvox
.SelectionUtil
.hasContentWithTag(a
,"IMG")){var b
="",a
=a
.getRangeAt(0).cloneContents(),c
=document
.createElement("span");c
.appendChild(a
);for(var a
=cvox
.XpathUtil
.getLeafNodes(c
),c
=0,d
;d
=a
[c
];c
++)b
=b
+" "+cvox
.DomUtil
.getName(d
);return b
}return this.getSelectionText_()};cvox
.SelectionUtil
.getSelectionText_=function(){return""+window
.getSelection()};
729 cvox
.SelectionUtil
.getRangeText=function(a
){return a
?a
.cloneContents().textContent
.replace(/\s+/g," "):""};cvox
.TraverseUtil=function(){};cvox
.TraverseUtil
.getNodeText=function(a
){return a
.constructor==Text
?a
.data
:""};cvox
.TraverseUtil
.treatAsLeafNode=function(a
){return 0==a
.childNodes
.length
||"SELECT"==a
.nodeName
||"listbox"==a
.getAttribute("role")||"OBJECT"==a
.nodeName
};cvox
.TraverseUtil
.isWhitespace=function(a
){return" "==a
||"\n"==a
||"\r"==a
||"\t"==a
};
730 cvox
.TraverseUtil
.setSelection=function(a
,b
){var c
=window
.getSelection();c
.removeAllRanges();var d
=document
.createRange();d
.setStart(a
.node
,a
.index
);d
.setEnd(b
.node
,b
.index
);c
.addRange(d
);return c
};cvox
.TraverseUtil
.isHidden=function(a
){if(a
instanceof HTMLElement
&&"true"==a
.getAttribute("aria-hidden"))return!0;switch(a
.tagName
){case "SCRIPT":case "NOSCRIPT":return!0}return!1};
731 cvox
.TraverseUtil
.forwardsChar=function(a
,b
,c
){for(;;){var d
=null;if(!cvox
.TraverseUtil
.treatAsLeafNode(a
.node
))for(var e
=a
.index
;e
<a
.node
.childNodes
.length
;e
++){var f
=a
.node
.childNodes
[e
];if(cvox
.TraverseUtil
.isHidden(f
))f
instanceof HTMLElement
&&b
.push(f
);else if(cvox
.DomUtil
.isVisible(f
,{checkAncestors
:!1})){d
=f
;break}}if(d
)a
.node
=d
,a
.index
=0,a
.text
=cvox
.TraverseUtil
.getNodeText(a
.node
),a
.node
instanceof HTMLElement
&&b
.push(a
.node
);else{if(a
.index
<a
.text
.length
)return a
.text
[a
.index
++];for(;null!=
732 a
.node
;){d
=null;for(f
=a
.node
.nextSibling
;null!=f
;f
=f
.nextSibling
)if(cvox
.TraverseUtil
.isHidden(f
))f
instanceof HTMLElement
&&b
.push(f
);else if(cvox
.DomUtil
.isVisible(f
,{checkAncestors
:!1})){d
=f
;break}if(d
){a
.node
instanceof HTMLElement
&&c
.push(a
.node
);a
.node
=d
;a
.text
=cvox
.TraverseUtil
.getNodeText(d
);a
.index
=0;a
.node
instanceof HTMLElement
&&b
.push(a
.node
);break}if(a
.node
.parentNode
&&a
.node
.parentNode
.constructor!=HTMLBodyElement
)a
.node
instanceof HTMLElement
&&c
.push(a
.node
),a
.node
=a
.node
.parentNode
,
733 a
.text
=null,a
.index
=0;else return null}}}};
734 cvox
.TraverseUtil
.backwardsChar=function(a
,b
,c
){for(;;){var d
=null;if(!cvox
.TraverseUtil
.treatAsLeafNode(a
.node
))for(var e
=a
.index
-1;0<=e
;e
--){var f
=a
.node
.childNodes
[e
];if(cvox
.TraverseUtil
.isHidden(f
))f
instanceof HTMLElement
&&b
.push(f
);else if(cvox
.DomUtil
.isVisible(f
,{checkAncestors
:!1})){d
=f
;break}}if(d
)a
.node
=d
,a
.text
=cvox
.TraverseUtil
.getNodeText(a
.node
),a
.index
=a
.text
.length
?a
.text
.length
:a
.node
.childNodes
.length
,a
.node
instanceof HTMLElement
&&b
.push(a
.node
);else{if(0<a
.text
.length
&&0<a
.index
)return a
.text
[--a
.index
];
735 for(;;){d
=null;for(f
=a
.node
.previousSibling
;null!=f
;f
=f
.previousSibling
)if(cvox
.TraverseUtil
.isHidden(f
))f
instanceof HTMLElement
&&b
.push(f
);else if(cvox
.DomUtil
.isVisible(f
,{checkAncestors
:!1})){d
=f
;break}if(d
){a
.node
instanceof HTMLElement
&&c
.push(a
.node
);a
.node
=d
;a
.text
=cvox
.TraverseUtil
.getNodeText(d
);a
.index
=a
.text
.length
?a
.text
.length
:a
.node
.childNodes
.length
;a
.node
instanceof HTMLElement
&&b
.push(a
.node
);break}if(a
.node
.parentNode
&&a
.node
.parentNode
.constructor!=HTMLBodyElement
)a
.node
instanceof
736 HTMLElement
&&c
.push(a
.node
),a
.node
=a
.node
.parentNode
,a
.text
=null,a
.index
=0;else return null}}}};
737 cvox
.TraverseUtil
.getNextChar=function(a
,b
,c
,d
,e
){a
.copyFrom(b
);var f
=cvox
.TraverseUtil
.forwardsChar(b
,c
,d
);if(null==f
)return null;for(var g
=cvox
.TraverseUtil
.isWhitespace(f
);cvox
.TraverseUtil
.isWhitespace(f
)||cvox
.TraverseUtil
.isHidden(b
.node
);)if(f
=cvox
.TraverseUtil
.forwardsChar(b
,c
,d
),null==f
)return null;if(e
||!g
)return a
.copyFrom(b
),a
.index
--,f
;for(d
=0;d
<c
.length
;d
++)if(cvox
.TraverseUtil
.isHidden(c
[d
]))return b
.index
--,a
.copyFrom(b
),a
.index
--," ";b
.index
--;return" "};
738 cvox
.TraverseUtil
.getPreviousChar=function(a
,b
,c
,d
,e
){b
.copyFrom(a
);var f
=cvox
.TraverseUtil
.backwardsChar(a
,c
,d
);if(null==f
)return null;for(var g
=cvox
.TraverseUtil
.isWhitespace(f
);cvox
.TraverseUtil
.isWhitespace(f
)||cvox
.TraverseUtil
.isHidden(a
.node
);)if(f
=cvox
.TraverseUtil
.backwardsChar(a
,c
,d
),null==f
)return null;if(e
||!g
)return b
.copyFrom(a
),b
.index
++,f
;for(d
=0;d
<c
.length
;d
++)if(cvox
.TraverseUtil
.isHidden(c
[d
]))return a
.index
++,b
.copyFrom(a
),b
.index
++," ";a
.index
++;return" "};
739 cvox
.TraverseUtil
.getNextWord=function(a
,b
,c
,d
){var e
=b
.clone(),f
=cvox
.TraverseUtil
.forwardsChar(e
,c
,d
);if(null==f
)return null;for(;cvox
.TraverseUtil
.isWhitespace(f
)||cvox
.TraverseUtil
.isHidden(e
.node
);)if(f
=cvox
.TraverseUtil
.forwardsChar(e
,c
,d
),null==f
)return null;a
.copyFrom(e
);a
.index
--;b
.copyFrom(e
);a
=f
;c
=[];d
=[];f
=cvox
.TraverseUtil
.forwardsChar(e
,c
,d
);if(null==f
)return a
;for(;!cvox
.TraverseUtil
.isWhitespace(f
)&&0==c
.length
&&0==d
&&(a
+=f
,b
.copyFrom(e
),f
=cvox
.TraverseUtil
.forwardsChar(e
,c
,d
),null!=
741 cvox
.TraverseUtil
.getPreviousWord=function(a
,b
,c
,d
){var e
=a
.clone(),f
=cvox
.TraverseUtil
.backwardsChar(e
,c
,d
);if(null==f
)return null;for(;cvox
.TraverseUtil
.isWhitespace(f
)||cvox
.TraverseUtil
.isHidden(e
.node
);)if(f
=cvox
.TraverseUtil
.backwardsChar(e
,c
,d
),null==f
)return null;b
.copyFrom(e
);b
.index
++;a
.copyFrom(e
);b
=f
;c
=[];d
=[];f
=cvox
.TraverseUtil
.backwardsChar(e
,c
,d
);if(null==f
)return b
;for(;!cvox
.TraverseUtil
.isWhitespace(f
)&&0==c
.length
&&0==d
.length
&&(b
=f
+b
,a
.copyFrom(e
),f
=cvox
.TraverseUtil
.backwardsChar(e
,c
,
742 d
),null!=f
););return b
};cvox
.TraverseUtil
.includesBreakTagOrSkippedNode=function(a
,b
,c
){for(var d
=0;d
<a
.length
;d
++){if(cvox
.TraverseUtil
.isHidden(a
[d
]))return!0;var e
=window
.getComputedStyle(a
[d
],null);if(e
&&"inline"!=e
.display
||c
[a
[d
].tagName
])return!0}for(d
=0;d
<b
.length
;d
++)if((e
=window
.getComputedStyle(b
[d
],null))&&"inline"!=e
.display
||c
[b
[d
].tagName
])return!0;return!1};
743 cvox
.TraverseUtil
.getNextSentence=function(a
,b
,c
,d
,e
){return cvox
.TraverseUtil
.getNextString(a
,b
,c
,d
,function(a
,b
,c
,d
){return"."==a
.substr(-1)?!0:cvox
.TraverseUtil
.includesBreakTagOrSkippedNode(c
,d
,e
)})};cvox
.TraverseUtil
.getPreviousSentence=function(a
,b
,c
,d
,e
){return cvox
.TraverseUtil
.getPreviousString(a
,b
,c
,d
,function(a
,b
,c
,d
){return"."==b
.substr(-1)?!0:cvox
.TraverseUtil
.includesBreakTagOrSkippedNode(c
,d
,e
)})};
744 cvox
.TraverseUtil
.getNextLine=function(a
,b
,c
,d
,e
){var f
=document
.createRange(),g
=null,h
=b
.clone();return cvox
.TraverseUtil
.getNextString(a
,b
,c
,d
,function(c
,d
,m
,p
){f
.setStart(a
.node
,a
.index
);f
.setEnd(b
.node
,b
.index
);c
=f
.getBoundingClientRect();g
||(g
=c
);if(c
.bottom
!=g
.bottom
&&!cvox
.DomPredicates
.linkPredicate(cvox
.DomUtil
.getAncestors(b
.node
)))return b
.copyFrom(h
),!0;g
=c
;h
.copyFrom(b
);return cvox
.TraverseUtil
.includesBreakTagOrSkippedNode(m
,p
,e
)})};
745 cvox
.TraverseUtil
.getPreviousLine=function(a
,b
,c
,d
,e
){var f
=document
.createRange(),g
=null,h
=a
.clone();return cvox
.TraverseUtil
.getPreviousString(a
,b
,c
,d
,function(c
,d
,m
,p
){f
.setStart(a
.node
,a
.index
);f
.setEnd(b
.node
,b
.index
);c
=f
.getBoundingClientRect();g
||(g
=c
);if(c
.top
!=g
.top
&&!cvox
.DomPredicates
.linkPredicate(cvox
.DomUtil
.getAncestors(a
.node
)))return a
.copyFrom(h
),!0;g
=c
;h
.copyFrom(a
);return cvox
.TraverseUtil
.includesBreakTagOrSkippedNode(m
,p
,e
)})};
746 cvox
.TraverseUtil
.getNextParagraph=function(a
,b
,c
,d
){return cvox
.TraverseUtil
.getNextString(a
,b
,c
,d
,function(a
,b
,c
,d
){for(a
=0;a
<c
.length
;a
++)if(cvox
.TraverseUtil
.isHidden(c
[a
])||(b
=window
.getComputedStyle(c
[a
],null))&&"inline"!=b
.display
)return!0;for(a
=0;a
<d
.length
;a
++)if((b
=window
.getComputedStyle(d
[a
],null))&&"inline"!=b
.display
)return!0;return!1})};
747 cvox
.TraverseUtil
.getPreviousParagraph=function(a
,b
,c
,d
){return cvox
.TraverseUtil
.getPreviousString(a
,b
,c
,d
,function(a
,b
,c
,d
){for(a
=0;a
<c
.length
;a
++)if(cvox
.TraverseUtil
.isHidden(c
[a
])||(b
=window
.getComputedStyle(c
[a
],null))&&"inline"!=b
.display
)return!0;for(a
=0;a
<d
.length
;a
++)if((b
=window
.getComputedStyle(d
[a
],null))&&"inline"!=b
.display
)return!0;return!1})};
748 cvox
.TraverseUtil
.getNextString=function(a
,b
,c
,d
,e
){c
=b
.clone();d
=b
.clone();var f
=[],g
=[],h
="",k
=cvox
.TraverseUtil
.getNextWord(c
,d
,f
,g
);if(null==k
)return null;for(a
.copyFrom(c
);!(h
&&e(h
,k
,f
,g
)||(h
&&(h
+=" "),h
+=k
,b
.copyFrom(d
),f
=[],g
=[],k
=cvox
.TraverseUtil
.getNextWord(c
,d
,f
,g
),null==k
)););return h
};
749 cvox
.TraverseUtil
.getPreviousString=function(a
,b
,c
,d
,e
){c
=a
.clone();d
=a
.clone();var f
=[],g
=[],h
="",k
=cvox
.TraverseUtil
.getPreviousWord(c
,d
,f
,g
);if(null==k
)return null;for(b
.copyFrom(d
);!(h
&&e(h
,k
,f
,g
)||(h
&&(h
=" "+h
),h
=k
+h
,a
.copyFrom(c
),f
=[],g
=[],k
=cvox
.TraverseUtil
.getPreviousWord(c
,d
,f
,g
),null==k
)););return h
};cvox
.CursorSelection=function(a
,b
,c
){this.start
=a
.clone();this.end
=b
.clone();void 0==c
&&(c
=!1);if((this.isReversed_
=c
)&&this.start
.node
.compareDocumentPosition(this.end
.node
)==cvox
.CursorSelection
.BEFORE
||!this.isReversed_
&&this.end
.node
.compareDocumentPosition(this.start
.node
)==cvox
.CursorSelection
.BEFORE
)a
=this.start
,this.start
=this.end
,this.end
=a
};cvox
.CursorSelection
.BEFORE
=4;
750 cvox
.CursorSelection
.prototype.setReversed=function(a
){if(a
==this.isReversed_
)return this;var b
=this.start
;this.start
=this.end
;this.end
=b
;this.isReversed_
=a
;return this};cvox
.CursorSelection
.prototype.isReversed=function(){return this.isReversed_
};cvox
.CursorSelection
.prototype.absStart=function(){return this.isReversed_
?this.end
:this.start
};cvox
.CursorSelection
.prototype.absEnd=function(){return this.isReversed_
?this.start
:this.end
};
751 cvox
.CursorSelection
.prototype.clone=function(){return new cvox
.CursorSelection(this.start
,this.end
,this.isReversed_
)};cvox
.CursorSelection
.prototype.select=function(){var a
=window
.getSelection();a
.removeAllRanges();this.normalize();a
.addRange(this.getRange())};cvox
.CursorSelection
.fromNode=function(a
){if(!a
)return null;var b
=cvox
.TraverseUtil
.getNodeText(a
);return new cvox
.CursorSelection(new cvox
.Cursor(a
,0,b
),new cvox
.Cursor(a
,0,b
))};cvox
.CursorSelection
.fromBody=function(){return cvox
.CursorSelection
.fromNode(document
.body
)};
752 cvox
.CursorSelection
.prototype.getText=function(){return this.start
.equals(this.end
)?cvox
.TraverseUtil
.getNodeText(this.start
.node
):cvox
.SelectionUtil
.getRangeText(this.getRange())};cvox
.CursorSelection
.prototype.getRange=function(){var a
=document
.createRange();this.isReversed_
?(a
.setStart(this.end
.node
,this.end
.index
),a
.setEnd(this.start
.node
,this.start
.index
)):(a
.setStart(this.start
.node
,this.start
.index
),a
.setEnd(this.end
.node
,this.end
.index
));return a
};
753 cvox
.CursorSelection
.prototype.equals=function(a
){return this.start
.equals(a
.start
)&&this.end
.equals(a
.end
)};cvox
.CursorSelection
.prototype.absEquals=function(a
){return this.start
.equals(a
.start
)&&this.end
.equals(a
.end
)||this.end
.equals(a
.start
)&&this.start
.equals(a
.end
)};cvox
.CursorSelection
.prototype.directedBefore=function(a
){var b
=this.start
.node
.compareDocumentPosition(a
.start
.node
)==cvox
.CursorSelection
.BEFORE
;return this.start
.node
==a
.start
.node
||(this.isReversed()?!b
:b
)};
754 cvox
.CursorSelection
.prototype.normalize=function(){if(0==this.absEnd().index
&&this.absEnd().node
){var a
=this.absEnd().node
,b
=document
.createRange();b
.selectNodeContents(a
);this.absEnd().index
=b
.endOffset
}return this};cvox
.CursorSelection
.prototype.collapse=function(){if(this.start
.equals(this.end
))return this;this.end
.copyFrom(this.start
);if(0==this.start
.text
.length
)return this;this.isReversed()?0<this.end
.index
&&this.end
.index
--:this.end
.index
<this.end
.text
.length
&&this.end
.index
++;return this};cvox
.Spannable=function(a
,b
){this.string_
=a
||"";this.spans_
=[];if(goog
.isDef(b
)){var c
=this.string_
.length
;this.spans_
.push({value
:b
,start
:0,end
:c
})}};cvox
.Spannable
.prototype.toString=function(){return this.string_
};cvox
.Spannable
.prototype.getLength=function(){return this.string_
.length
};cvox
.Spannable
.prototype.setSpan=function(a
,b
,c
){this.removeSpan(a
);if(0<=b
&&b
<=c
&&c
<=this.string_
.length
)this.spans_
.push({value
:a
,start
:b
,end
:c
});else throw new RangeError("span out of range");};
755 cvox
.Spannable
.prototype.removeSpan=function(a
){for(var b
=this.spans_
.length
-1;0<=b
;b
--)this.spans_
[b
].value
===a
&&this.spans_
.splice(b
,1)};cvox
.Spannable
.prototype.append=function(a
){if(a
instanceof cvox
.Spannable
){var b
=a
,c
=this.getLength();this.string_
+=b
.string_
;a
.spans_
.forEach(goog
.bind(function(a
){this.setSpan(a
.value
,a
.start
+c
,a
.end
+c
)},this))}else"string"===typeof a
&&(this.string_
+=a
)};
756 cvox
.Spannable
.prototype.getSpanInstanceOf=function(a
){for(var b
=0;b
<this.spans_
.length
;b
++){var c
=this.spans_
[b
];if(c
.value
instanceof a
)return c
.value
}};cvox
.Spannable
.prototype.getSpans=function(a
){for(var b
=[],c
=0;c
<this.spans_
.length
;c
++){var d
=this.spans_
[c
];d
.start
<=a
&&a
<d
.end
&&b
.push(d
.value
)}return b
};cvox
.Spannable
.prototype.getSpanStart=function(a
){for(var b
=0;b
<this.spans_
.length
;b
++){var c
=this.spans_
[b
];if(c
.value
===a
)return c
.start
}};
757 cvox
.Spannable
.prototype.getSpanEnd=function(a
){for(var b
=0;b
<this.spans_
.length
;b
++){var c
=this.spans_
[b
];if(c
.value
===a
)return c
.end
}};
758 cvox
.Spannable
.prototype.substring=function(a
,b
){var c
=goog
.isDef(b
)?b
:this.string_
.length
;if(0>a
||c
>this.string_
.length
||a
>c
)throw new RangeError("substring indices out of range");for(var d
=new cvox
.Spannable(this.string_
.substring(a
,c
)),e
=0;e
<this.spans_
.length
;e
++){var f
=this.spans_
[e
];if(f
.start
<=c
&&f
.end
>=a
){var g
=Math
.max(0,f
.start
-a
),h
=Math
.min(c
-a
,f
.end
-a
);d
.spans_
.push({value
:f
.value
,start
:g
,end
:h
})}}return d
};cvox
.Spannable
.prototype.trimLeft=function(){return this.trim_(!0,!1)};
759 cvox
.Spannable
.prototype.trimRight=function(){return this.trim_(!1,!0)};cvox
.Spannable
.prototype.trim=function(){return this.trim_(!0,!0)};cvox
.Spannable
.prototype.trim_=function(a
,b
){if(!a
&&!b
)return this;if(/^\s*$/.test(this.string_
))return this.substring(0,0);var c
=a
?this.string_
.match(/^\s*/)[0].length
:0,d
=b
?this.string_
.match(/\s*$/).index
:this.string_
.length
;return this.substring(c
,d
)};cvox
.NavBraille=function(a
){this.text
=a
.text
instanceof cvox
.Spannable
?a
.text
:new cvox
.Spannable(a
.text
);this.startIndex
=goog
.isDef(a
.startIndex
)?a
.startIndex
:-1;this.endIndex
=goog
.isDef(a
.endIndex
)?a
.endIndex
:this.startIndex
};cvox
.NavBraille
.fromText=function(a
){return new cvox
.NavBraille({text
:a
})};cvox
.NavBraille
.prototype.isEmpty=function(){return 0==this.text
.getLength()};
760 cvox
.NavBraille
.prototype.toString=function(){return'NavBraille(text="'+this.text
.toString()+'" startIndex="'+this.startIndex
+'" endIndex="'+this.endIndex
+'")'};cvox
.NavBraille
.prototype.write=function(){cvox
.PlatformUtil
.matchesPlatform(cvox
.PlatformFilter
.CHROMEOS
|cvox
.PlatformFilter
.ANDROID
)&&cvox
.ChromeVox
.braille
.write(this)};cvox
.BrailleKeyCommand
={PAN_LEFT
:"pan_left",PAN_RIGHT
:"pan_right",LINE_UP
:"line_up",LINE_DOWN
:"line_down",TOP
:"top",BOTTOM
:"bottom",ROUTING
:"routing",SECONDARY_ROUTING
:"secondary_routing",DOTS
:"dots",STANDARD_KEY
:"standard_key"};cvox
.BrailleKeyEvent
={};cvox
.BrailleInterface=function(){};cvox
.BrailleInterface
.prototype.write=function(){};cvox
.BrailleInterface
.prototype.setCommandListener=function(){};cvox
.AbstractBraille=function(){};cvox
.braille
={};cvox
.braille
.LibLouisNativeClient=function(a
,b
){this.nmfPath_
=a
;this.tablesDir_
=goog
.isDef(b
)?b
:null;this.embedElement_
=null;this.instanceState_
=cvox
.braille
.LibLouisNativeClient
.InstanceState
.NOT_LOADED
;this.pendingTranslators_
=[];this.pendingRpcCallbacks_
={};this.nextMessageId_
=1};cvox
.braille
.LibLouisNativeClient
.InstanceState
={NOT_LOADED
:0,LOADING
:1,LOADED
:2,ERROR
:-1};
761 cvox
.braille
.LibLouisNativeClient
.prototype.attachToElement=function(a
){if(this.isAttached())throw Error("instance already attached");var b
=document
.createElement("embed");b
.src
=this.nmfPath_
;b
.type
="application/x-nacl";b
.width
=0;b
.height
=0;goog
.isNull(this.tablesDir_
)||b
.setAttribute("tablesdir",this.tablesDir_
);b
.addEventListener("load",goog
.bind(this.onInstanceLoad_
,this),!1);b
.addEventListener("error",goog
.bind(this.onInstanceError_
,this),!1);b
.addEventListener("message",goog
.bind(this.onInstanceMessage_
,
762 this),!1);a
.appendChild(b
);this.embedElement_
=b
;this.instanceState_
=cvox
.braille
.LibLouisNativeClient
.InstanceState
.LOADING
};cvox
.braille
.LibLouisNativeClient
.prototype.detach=function(){if(!this.isAttached())throw Error("cannot detach unattached instance");this.embedElement_
.parentNode
.removeChild(this.embedElement_
);this.embedElement_
=null;this.instanceState_
=cvox
.braille
.LibLouisNativeClient
.InstanceState
.NOT_LOADED
};
763 cvox
.braille
.LibLouisNativeClient
.prototype.isAttached=function(){return null!==this.embedElement_
};
764 cvox
.braille
.LibLouisNativeClient
.prototype.getTranslator=function(a
,b
){switch(this.instanceState_
){case cvox
.braille
.LibLouisNativeClient
.InstanceState
.NOT_LOADED
:case cvox
.braille
.LibLouisNativeClient
.InstanceState
.LOADING
:this.pendingTranslators_
.push({tableName
:a
,callback
:b
});break;case cvox
.braille
.LibLouisNativeClient
.InstanceState
.ERROR
:b(null);break;case cvox
.braille
.LibLouisNativeClient
.InstanceState
.LOADED
:this.rpc_("CheckTable",{table_name
:a
},goog
.bind(function(c
){c
.success
?(c
=new cvox
.braille
.LibLouisNativeClient
.Translator(this,
765 a
),b(c
)):b(null)},this))}};cvox
.braille
.LibLouisNativeClient
.prototype.rpc_=function(a
,b
,c
){if(this.instanceState_
!==cvox
.braille
.LibLouisNativeClient
.InstanceState
.LOADED
)throw Error("cannot send RPC: liblouis instance not loaded");var d
=""+this.nextMessageId_
++;b
.message_id
=d
;b
.command
=a
;a
=JSON
.stringify(b
);goog
.DEBUG
&&window
.console
.debug("RPC -> "+a
);this.embedElement_
.postMessage(a
);this.pendingRpcCallbacks_
[d
]=c
};
766 cvox
.braille
.LibLouisNativeClient
.prototype.onInstanceLoad_=function(){window
.console
.info("loaded liblouis Native Client instance");this.instanceState_
=cvox
.braille
.LibLouisNativeClient
.InstanceState
.LOADED
;this.pendingTranslators_
.forEach(goog
.bind(function(a
){this.getTranslator(a
.tableName
,a
.callback
)},this));this.pendingTranslators_
.length
=0};
767 cvox
.braille
.LibLouisNativeClient
.prototype.onInstanceError_=function(){window
.console
.error("failed to load liblouis Native Client instance");this.instanceState_
=cvox
.braille
.LibLouisNativeClient
.InstanceState
.ERROR
;this.pendingTranslators_
.forEach(goog
.bind(function(a
){this.getTranslator(a
.tableName
,a
.callback
)},this));this.pendingTranslators_
.length
=0};
768 cvox
.braille
.LibLouisNativeClient
.prototype.onInstanceMessage_=function(a
){goog
.DEBUG
&&window
.console
.debug("RPC <- "+a
.data
);a
=JSON
.parse(a
.data
);var b
=a
.in_reply_to
;if(goog
.isDef(b
)){goog
.isDef(a
.error
)&&window
.console
.error("liblouis Native Client error",a
.error
);var c
=this.pendingRpcCallbacks_
[b
];goog
.isDef(c
)&&(delete this.pendingRpcCallbacks_
[b
],c(a
))}else window
.console
.warn("liblouis Native Client module sent message with no ID",a
)};
769 cvox
.braille
.LibLouisNativeClient
.Translator=function(a
,b
){this.instance_
=a
;this.tableName_
=b
};
770 cvox
.braille
.LibLouisNativeClient
.Translator
.prototype.translate=function(a
,b
,c
){a
={table_name
:this.tableName_
,text
:a
};goog
.isDef(b
.cursorPosition
)&&(a
.cursor_position
=b
.cursorPosition
);this.instance_
.rpc_("Translate",a
,goog
.bind(function(a
){if(a
.success
&&goog
.isString(a
.cells
)){var b
=this.decodeHexString_(a
.cells
),f
={};goog
.isDef(a
.text_to_braille
)&&(f
.textToBraille
=a
.text_to_braille
);goog
.isDef(a
.braille_to_text
)&&(f
.brailleToText
=a
.braille_to_text
);goog
.isDef(a
.cursor_position
)&&(f
.cursorPosition
=
771 a
.cursor_position
);c(b
,f
)}else c(null,null)},this))};cvox
.braille
.LibLouisNativeClient
.Translator
.prototype.decodeHexString_=function(a
){if(!/^([0-9a-f]{2})*$/i.test(a
))throw Error("invalid hexadecimal string");for(var b
=new Uint8Array(a
.length
/2),c
=0,d
=0;d
<a
.length
;d
+=2)b
[c
++]=parseInt(a
.substring(d
,d
+2),16);return b
.buffer
};cvox
.BrailleDisplayManager=function(){this.translator_
=null;this.content_
=new cvox
.NavBraille({});this.translatedContent_
=new ArrayBuffer(0);this.panPosition_
=0;this.commandListener_=function(){};this.displayState_
={available
:!1,textCellCount
:void 0};this.translatedExtras_
={brailleToText
:[],textToBraille
:[]};if(goog
.isDef(chrome
.brailleDisplayPrivate
)){var a
=goog
.bind(this.onDisplayState_
,this);chrome
.brailleDisplayPrivate
.getDisplayState(a
);chrome
.brailleDisplayPrivate
.onDisplayStateChanged
.addListener(a
);
772 chrome
.brailleDisplayPrivate
.onKeyEvent
.addListener(goog
.bind(this.onKeyEvent_
,this))}};cvox
.BrailleDisplayManager
.CURSOR_DOTS_
=192;cvox
.BrailleDisplayManager
.prototype.setContent=function(a
){this.content_
=a
;this.translateContent_()};cvox
.BrailleDisplayManager
.prototype.setCommandListener=function(a
){this.commandListener_
=a
};cvox
.BrailleDisplayManager
.prototype.setTranslator=function(a
){var b
=null!=this.translator_
;this.translator_
=a
;this.translateContent_();b
&&!this.translator_
&&this.refresh_()};
773 cvox
.BrailleDisplayManager
.prototype.onDisplayState_=function(a
){this.displayState_
=a
;this.panPosition_
=0;this.refresh_()};cvox
.BrailleDisplayManager
.prototype.refresh_=function(){if(this.displayState_
.available
){var a
=this.translatedContent_
.slice(this.panPosition_
,this.panPosition_
+this.displayState_
.textCellCount
);chrome
.brailleDisplayPrivate
.writeDots(a
)}};
774 cvox
.BrailleDisplayManager
.prototype.translateContent_=function(){this.translator_
?this.translator_
.translate(this.content_
.text
.toString(),{},goog
.bind(function(a
,b
){a
=a
||new ArrayBuffer(0);b
=b
||{brailleToText
:[],textToBraille
:[]};var c
=this.content_
.startIndex
,d
=this.content_
.endIndex
;this.panPosition_
=0;if(0<=c
){if(c
>=b
.textToBraille
.length
){var c
=new ArrayBuffer(a
.byteLength
+1),e
=new Uint8Array(c
);e
.set(new Uint8Array(a
));a
=c
;c
=a
.byteLength
-1}else c
=b
.textToBraille
[c
];d
=d
>=b
.textToBraille
.length
?
775 a
.byteLength
:b
.textToBraille
[d
];this.writeCursor_(a
,c
,d
);this.displayState_
.available
&&(d
=this.displayState_
.textCellCount
,this.panPosition_
=Math
.floor(c
/d
)*d
)}this.translatedContent_
=a
;this.translatedExtras_
=b
;this.refresh_()},this)):this.translatedContent_
=new ArrayBuffer(0)};
776 cvox
.BrailleDisplayManager
.prototype.onKeyEvent_=function(a
){switch(a
.command
){case cvox
.BrailleKeyCommand
.ROUTING
:var b
=this.translatedExtras_
.brailleToText
[a
.displayPosition
+this.panPosition_
];goog
.isDef(b
)||(b
=a
.displayPosition
+this.panPosition_
);a
.displayPosition
=b
;case cvox
.BrailleKeyCommand
.LINE_UP
:case cvox
.BrailleKeyCommand
.LINE_DOWN
:case cvox
.BrailleKeyCommand
.TOP
:case cvox
.BrailleKeyCommand
.BOTTOM
:this.commandListener_(a
);break;case cvox
.BrailleKeyCommand
.PAN_LEFT
:this.panLeft_();break;
777 case cvox
.BrailleKeyCommand
.PAN_RIGHT
:this.panRight_()}};cvox
.BrailleDisplayManager
.prototype.panLeft_=function(){0>=this.panPosition_
?this.commandListener_({command
:cvox
.BrailleKeyCommand
.PAN_LEFT
}):(this.panPosition_
=Math
.max(0,this.panPosition_
-this.displayState_
.textCellCount
),this.refresh_())};
778 cvox
.BrailleDisplayManager
.prototype.panRight_=function(){var a
=this.panPosition_
+this.displayState_
.textCellCount
;a
>=this.translatedContent_
.byteLength
?this.commandListener_({command
:cvox
.BrailleKeyCommand
.PAN_RIGHT
}):(this.panPosition_
=a
,this.refresh_())};cvox
.BrailleDisplayManager
.prototype.writeCursor_=function(a
,b
,c
){if(!(0>b
||b
>=a
.byteLength
||c
<b
||c
>a
.byteLength
))for(b
==c
&&(c
=b
+1),a
=new DataView(a
);b
<c
;){var d
=a
.getUint8(b
),d
=d
|cvox
.BrailleDisplayManager
.CURSOR_DOTS_
;a
.setUint8(b
,d
);b
++}};cvox
.BrailleTable
={};cvox
.BrailleTable
.TABLE_PATH
="chromevox/background/braille/tables.json";cvox
.BrailleTable
.getAll=function(a
){var b
=chrome
.extension
.getURL(cvox
.BrailleTable
.TABLE_PATH
);if(!b
)throw"Invalid path: "+cvox
.BrailleTable
.TABLE_PATH
;var c
=new XMLHttpRequest
;c
.open("GET",b
,!0);c
.onreadystatechange=function(){4==c
.readyState
&&200==c
.status
&&a(JSON
.parse(c
.responseText
))};c
.send()};cvox
.BrailleBackground=function(){this.displayManager_
=new cvox
.BrailleDisplayManager
;cvox
.BrailleTable
.getAll(goog
.bind(function(a
){this.tables_
=a
;this.initialize_(0)},this));this.setCommandListener(this.defaultCommandListener_
)};goog
.inherits(cvox
.BrailleBackground
,cvox
.AbstractBraille
);cvox
.BrailleBackground
.prototype.write=function(a
){this.displayManager_
.setContent(a
)};cvox
.BrailleBackground
.prototype.setCommandListener=function(a
){this.displayManager_
.setCommandListener(a
)};
779 cvox
.BrailleBackground
.prototype.refreshTranslator=function(){if(this.liblouis_
){var a
=localStorage
.brailleTable
,b
,c
="brailleTable6"==localStorage
.brailleTableType
?"6":"8",d
=this.tables_
;if(!a
){var a
="en-US-comp8",e
=chrome
.i18n
.getMessage("@@ui_locale").split(/[_-]/),f
=e
[0],g
=e
[1],e
=d
.filter(function(a
){return a
.locale
.split(/[_-]/)[0]==f
});0<e
.length
&&(a
=e
[0].id
,c
=e
[0].dots
,b
=e
[0].fileName
,g
&&(e
=e
.filter(function(a
){return a
.locale
.split(/[_-]/)[1]==g
}),0<e
.length
&&(a
=e
[0].id
,c
=e
[0].dots
,b
=e
[0].fileName
)))}b
||
780 (b
=d
.filter(function(b
){return b
.id
==a
}),b
=b
[0].fileName
);localStorage
.brailleTable
=a
;"6"==c
?(localStorage
.brailleTableType
="brailleTable6",localStorage
.brailleTable6
=a
):(localStorage
.brailleTableType
="brailleTable8",localStorage
.brailleTable8
=a
);localStorage
.brailleTable6
||(localStorage
.brailleTable6
="en-US-g1");localStorage
.brailleTable8
||(localStorage
.brailleTable8
="en-US-comp8");this.liblouis_
.getTranslator(b
,goog
.bind(function(a
){this.displayManager_
.setTranslator(a
)},this))}};
781 cvox
.BrailleBackground
.prototype.initialize_=function(a
){cvox
.ChromeVox
.isChromeOS
&&(5<a
?console
.error("Timeout waiting for document.body; not initializing braille."):document
.body
?(this.liblouis_
=new cvox
.braille
.LibLouisNativeClient(chrome
.extension
.getURL("chromevox/background/braille/liblouis_nacl.nmf"),chrome
.extension
.getURL("chromevox/background/braille/tables")),this.liblouis_
.attachToElement(document
.body
),this.refreshTranslator()):window
.setTimeout(goog
.bind(this.initialize_
,this,++a
),500))};
782 cvox
.BrailleBackground
.prototype.defaultCommandListener_=function(a
){a
={message
:"BRAILLE",args
:a
};cvox
.ExtensionBridge
.send(a
)};cvox
.AbstractHost=function(){};cvox
.AbstractHost
.State
={ACTIVE
:0,INACTIVE
:1,KILLED
:2};cvox
.AbstractHost
.prototype.init=function(){};cvox
.AbstractHost
.prototype.sendToBackgroundPage=function(){};cvox
.AbstractHost
.prototype.getApiSrc=function(){return""};cvox
.AbstractHost
.prototype.getFileSrc=function(){return""};cvox
.AbstractHost
.prototype.hasTtsCallback=function(){return!0};cvox
.AbstractHost
.prototype.mustRedispatchClickEvent=function(){return!1};
783 cvox
.AbstractHost
.prototype.activateOrDeactivateChromeVox=function(a
){this.onStateChanged_(a
?cvox
.AbstractHost
.State
.ACTIVE
:cvox
.AbstractHost
.State
.INACTIVE
)};
784 cvox
.AbstractHost
.prototype.onStateChanged_=function(a
){var b
=a
==cvox
.AbstractHost
.State
.ACTIVE
;if(b
!=cvox
.ChromeVox
.isActive
)switch(cvox
.ChromeVoxEventWatcher
.cleanup(window
),a
){case cvox
.AbstractHost
.State
.ACTIVE
:cvox
.ChromeVox
.isActive
=!0;cvox
.ChromeVox
.navigationManager
.showOrHideIndicator(!0);cvox
.ChromeVoxEventWatcher
.init(window
);document
.activeElement
?(a
=document
.hasFocus()&&!document
.webkitHidden
,cvox
.ApiImplementation
.syncToNode(document
.activeElement
,a
)):cvox
.ChromeVox
.navigationManager
.updateIndicator();
785 break;case cvox
.AbstractHost
.State
.INACTIVE
:cvox
.ChromeVox
.isActive
=!1;cvox
.ChromeVox
.navigationManager
.showOrHideIndicator(!1);cvox
.ChromeVoxEventWatcher
.init(window
);break;case cvox
.AbstractHost
.State
.KILLED
:cvox
.ChromeVox
.isActive
=!1,cvox
.ChromeVox
.navigationManager
.showOrHideIndicator(!1)}};cvox
.MathJaxInterface=function(){};cvox
.MathJaxInterface
.prototype.getAllJax=function(){};cvox
.AbstractMathJax=function(){};cvox
.AbstractMsgs=function(){};cvox
.AbstractMsgs
.prototype.getMsg=function(){};cvox
.AbstractMsgs
.prototype.getNumber=function(){};cvox
.HostFactory=function(){};cvox
.HostFactory
.getHost=function(){return new cvox
.HostFactory
.hostConstructor
};cvox
.HostFactory
.getTts=function(){return new cvox
.HostFactory
.ttsConstructor
};cvox
.HostFactory
.getBraille=function(){return new cvox
.HostFactory
.brailleConstructor
};cvox
.HostFactory
.getMsgs=function(){return new cvox
.HostFactory
.msgsConstructor
};cvox
.HostFactory
.getEarcons=function(){return new cvox
.HostFactory
.earconsConstructor
};cvox
.HostFactory
.getMathJax=function(){return new cvox
.HostFactory
.mathJaxConstructor
};cvox
.ChromeVoxJSON
||(cvox
.ChromeVoxJSON
={});
786 window
.JSON
&&"[object JSON]"==window
.JSON
.toString()?cvox
.ChromeVoxJSON
=window
.JSON:function(){function a(a
){return 10>a
?"0"+a
:a
}function b(a
){e
.lastIndex
=0;return e
.test(a
)?'"'+a
.replace(e
,function(a
){var b
=h
[a
];return"string"===typeof b
?b
:"\\u"+("0000"+a
.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+a
+'"'}function c(a
,d
){var e
,h
,n
,s
,u
=f
,t
,r
=d
[a
];r
&&"object"===typeof r
&&"function"===typeof r
.toJSON
&&(r
=r
.toJSON(a
));"function"===typeof k
&&(r
=k
.call(d
,a
,r
));switch(typeof r
){case "string":return b(r
);
787 case "number":return isFinite(r
)?String(r
):"null";case "boolean":case "null":return String(r
);case "object":if(!r
)return"null";f
+=g
;t
=[];if("[object Array]"===Object
.prototype.toString
.apply(r
)){s
=r
.length
;for(e
=0;e
<s
;e
+=1)t
[e
]=c(e
,r
)||"null";n
=0===t
.length
?"[]":f
?"[\n"+f
+t
.join(",\n"+f
)+"\n"+u
+"]":"["+t
.join(",")+"]";f
=u
;return n
}if(k
&&"object"===typeof k
)for(s
=k
.length
,e
=0;e
<s
;e
+=1)h
=k
[e
],"string"===typeof h
&&(n
=c(h
,r
))&&t
.push(b(h
)+(f
?": ":":")+n
);else for(h
in r
)Object
.hasOwnProperty
.call(r
,h
)&&
788 (n
=c(h
,r
))&&t
.push(b(h
)+(f
?": ":":")+n
);n
=0===t
.length
?"{}":f
?"{\n"+f
+t
.join(",\n"+f
)+"\n"+u
+"}":"{"+t
.join(",")+"}";f
=u
;return n
}}"function"!==typeof Date
.prototype.toJSON
&&(Date
.prototype.toJSON=function(){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+a(this.getUTCMonth()+1)+"-"+a(this.getUTCDate())+"T"+a(this.getUTCHours())+":"+a(this.getUTCMinutes())+":"+a(this.getUTCSeconds())+"Z":"null"},String
.prototype.toJSON
=Number
.prototype.toJSON
=Boolean
.prototype.toJSON=function(){return this.valueOf()});
789 var d
=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,e
=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f
,g
,h
={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k
;"function"!==typeof cvox
.ChromeVoxJSON
.stringify
&&(cvox
.ChromeVoxJSON
.stringify=function(a
,b
,d
){var e
;g
=f
="";if("number"===typeof d
)for(e
=0;e
<d
;e
+=1)g
+=" ";else"string"===typeof d
&&
790 (g
=d
);if((k
=b
)&&"function"!==typeof b
&&("object"!==typeof b
||"number"!==typeof b
.length
))throw Error("JSON.stringify");return c("",{"":a
})});"function"!==typeof cvox
.ChromeVoxJSON
.parse
&&(cvox
.ChromeVoxJSON
.parse=function(a
,b
){function c(a
,d
){var e
,f
,g
=a
[d
];if(g
&&"object"===typeof g
)for(e
in g
)Object
.hasOwnProperty
.call(g
,e
)&&(f
=c(g
,e
),void 0!==f
?g
[e
]=f
:delete g
[e
]);return b
.call(a
,d
,g
)}var e
;a
=String(a
);d
.lastIndex
=0;d
.test(a
)&&(a
=a
.replace(d
,function(a
){return"\\u"+("0000"+a
.charCodeAt(0).toString(16)).slice(-4)}));
791 if(/^[\],:{}\s]*$/.test(a
.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e
=eval("("+a
+")"),"function"===typeof b
?c({"":e
},""):e
;throw new SyntaxError("JSON.parse");})}();cvox
.ExtensionBridge=function(){};cvox
.ExtensionBridge
.init=function(){var a
=cvox
.ExtensionBridge
;a
.messageListeners
=[];a
.disconnectListeners
=[];/^chrome-extension:\/\/.*background\.html$/.test(window
.location
.href
)?(a
.context
=a
.BACKGROUND
,a
.initBackground()):chrome
&&chrome
.extension
&&(a
.context
=a
.CONTENT_SCRIPT
,a
.initContentScript())};cvox
.ExtensionBridge
.BACKGROUND
=0;cvox
.ExtensionBridge
.CONTENT_SCRIPT
=1;cvox
.ExtensionBridge
.PORT_NAME
="cvox.ExtensionBridge.Port";cvox
.ExtensionBridge
.PING_MSG
="cvox.ExtensionBridge.Ping";
792 cvox
.ExtensionBridge
.PONG_MSG
="cvox.ExtensionBridge.Pong";cvox
.ExtensionBridge
.send=function(a
){var b
=cvox
.ExtensionBridge
;switch(b
.context
){case b
.BACKGROUND
:b
.sendBackgroundToContentScript(a
);break;case b
.CONTENT_SCRIPT
:b
.sendContentScriptToBackground(a
)}};cvox
.ExtensionBridge
.addMessageListener=function(a
){cvox
.ExtensionBridge
.messageListeners
.push(a
)};cvox
.ExtensionBridge
.addDisconnectListener=function(a
){cvox
.ExtensionBridge
.disconnectListeners
.push(a
)};
793 cvox
.ExtensionBridge
.removeMessageListeners=function(){cvox
.ExtensionBridge
.messageListeners
.length
=0};cvox
.ExtensionBridge
.uniqueId=function(){var a
=cvox
.ExtensionBridge
;return a
.id_
};
794 cvox
.ExtensionBridge
.initBackground=function(){var a
=cvox
.ExtensionBridge
;a
.portCache_
=[];a
.nextPongId_
=1;a
.id_
=0;var b=function(b
){b
.name
==a
.PORT_NAME
&&(a
.portCache_
.push(b
),b
.onMessage
.addListener(function(d
){if(d
[cvox
.ExtensionBridge
.PING_MSG
])d
={},d
[cvox
.ExtensionBridge
.PONG_MSG
]=a
.nextPongId_
++,b
.postMessage(d
);else for(var e
=0;e
<a
.messageListeners
.length
;e
++)a
.messageListeners
[e
](d
,b
)}),b
.onDisconnect
.addListener(function(){for(var d
=0;d
<a
.portCache_
.length
;d
++)if(a
.portCache_
[d
]==b
){a
.portCache_
.splice(d
,
795 1);break}}))};chrome
.extension
.onConnect
.addListener(b
);chrome
.extension
.onConnectExternal
.addListener(b
)};
796 cvox
.ExtensionBridge
.initContentScript=function(){var a
=cvox
.ExtensionBridge
;a
.connected
=!1;a
.pingAttempts
=0;a
.queuedMessages
=[];a
.id_
=-1;var b=function(b
,d
,e
){if(!b
||!b
.srcFile
){if(b
[cvox
.ExtensionBridge
.PONG_MSG
])a
.gotPongFromBackgroundPage(b
[cvox
.ExtensionBridge
.PONG_MSG
]);else for(d
=0;d
<a
.messageListeners
.length
;d
++)a
.messageListeners
[d
](b
,cvox
.ExtensionBridge
.backgroundPort
);e({})}};chrome
.extension
.onMessage
.addListener(b
);a
.setupBackgroundPort();a
.tryToPingBackgroundPage()};
797 cvox
.ExtensionBridge
.setupBackgroundPort=function(){var a
=cvox
.ExtensionBridge
;a
.backgroundPort
=chrome
.extension
.connect({name
:a
.PORT_NAME
});a
.backgroundPort
.onMessage
.addListener(function(b
){if(b
[cvox
.ExtensionBridge
.PONG_MSG
])a
.gotPongFromBackgroundPage(b
[cvox
.ExtensionBridge
.PONG_MSG
]);else for(var c
=0;c
<a
.messageListeners
.length
;c
++)a
.messageListeners
[c
](b
,a
.backgroundPort
)});a
.backgroundPort
.onDisconnect
.addListener(function(){if(a
.connected
)for(var b
=0;b
<a
.disconnectListeners
.length
;b
++)a
.disconnectListeners
[b
]();
798 else a
.backgroundPort
=null})};cvox
.ExtensionBridge
.tryToPingBackgroundPage=function(){var a
=cvox
.ExtensionBridge
;if(!a
.connected
)if(a
.pingAttempts
++,5<a
.pingAttempts
)for(var b
=0;b
<a
.disconnectListeners
.length
;b
++)a
.disconnectListeners
[b
]();else b
={},b
[cvox
.ExtensionBridge
.PING_MSG
]=1,a
.backgroundPort
||a
.setupBackgroundPort(),a
.backgroundPort
.postMessage(b
),window
.setTimeout(cvox
.ExtensionBridge
.tryToPingBackgroundPage
,500)};
799 cvox
.ExtensionBridge
.gotPongFromBackgroundPage=function(a
){var b
=cvox
.ExtensionBridge
;b
.connected
=!0;b
.id_
=a
;for(console
.log("Got unique id"+b
.id_
);0<b
.queuedMessages
.length
;)b
.sendContentScriptToBackground(b
.queuedMessages
.shift())};cvox
.ExtensionBridge
.sendContentScriptToBackground=function(a
){var b
=cvox
.ExtensionBridge
;b
.connected
?cvox
.ExtensionBridge
.backgroundPort
?cvox
.ExtensionBridge
.backgroundPort
.postMessage(a
):chrome
.extension
.sendMessage(a
):b
.queuedMessages
.push(a
)};
800 cvox
.ExtensionBridge
.sendBackgroundToContentScript=function(a
){chrome
.tabs
.query({active
:!0,lastFocusedWindow
:!0},function(b
){b
&&0<b
.length
?chrome
.tabs
.sendMessage(b
[0].id
,a
):cvox
.ExtensionBridge
.portCache_
.forEach(function(b
){b
.postMessage(a
)})})};cvox
.ExtensionBridge
.init();cvox
.ChromeEarcons=function(){cvox
.AbstractEarcons
.call(this)};goog
.inherits(cvox
.ChromeEarcons
,cvox
.AbstractEarcons
);cvox
.ChromeEarcons
.prototype.playEarcon=function(a
){cvox
.ChromeEarcons
.superClass_
.playEarcon
.call(this,a
);this.enabled
&&cvox
.ExtensionBridge
.send({target
:"EARCON",action
:"play",earcon
:a
})};
801 cvox
.ChromeEarcons
.prototype.toggle=function(){cvox
.ChromeEarcons
.superClass_
.toggle
.call(this);cvox
.ChromeVox
.host
.sendToBackgroundPage({target
:"Prefs",action
:"setPref",pref
:"earcons",value
:this.enabled
});this.enabled
||cvox
.ChromeVox
.host
.sendToBackgroundPage({target
:"Prefs",action
:"setPref",pref
:"useVerboseMode",value
:!0});return this.enabled
};cvox
.HostFactory
.earconsConstructor
=cvox
.ChromeEarcons
;cvox
.BuildInfo
={};cvox
.BuildInfo
.build
="development build";"undefined"!=typeof goog
&&goog
.provide
&&(cvox
.ApiUtil
={});window
.cvox
||(window
.cvox
={});cvox
.ApiUtils=function(){};cvox
.ApiUtils
.nextCvoxId_
=1;
802 cvox
.ApiUtils
.makeNodeReference=function(a
){if(a
.id
&&document
.getElementById(a
.id
)==a
)return{id
:a
.id
};if(a
instanceof HTMLElement
){var b
=cvox
.ApiUtils
.nextCvoxId_
;a
.setAttribute("cvoxid",b
);cvox
.ApiUtils
.nextCvoxId_
=(cvox
.ApiUtils
.nextCvoxId_
+1)%100;return{cvoxid
:b
}}if(a
.parentElement
){for(var c
=a
.parentElement
,d
=-1,b
=0;b
<c
.childNodes
.length
;b
++)if(c
.childNodes
[b
]==a
){d
=b
;break}if(0<=d
)return b
=cvox
.ApiUtils
.nextCvoxId_
,c
.setAttribute("cvoxid",b
),cvox
.ApiUtils
.nextCvoxId_
=(cvox
.ApiUtils
.nextCvoxId_
+
803 1)%100,{cvoxid
:b
,childIndex
:d
}}throw"Cannot reference node: "+a
;};cvox
.ApiUtils
.getNodeFromRef=function(a
){if(a
.id
)return document
.getElementById(a
.id
);if(a
.cvoxid
){var b
='*[cvoxid="'+a
.cvoxid
+'"]';(b
=document
.querySelector(b
))&&b
.removeAttribute
&&b
.removeAttribute("cvoxid");return null!=a
.childIndex
?b
.childNodes
[a
.childIndex
]:b
}throw"Bad node reference: "+cvox
.ChromeVoxJSON
.stringify(a
);};cvox
.ScriptInstaller
={};cvox
.ScriptInstaller
.blacklistPattern
=/chrome:\/\/|chrome-extension:\/\//;
804 cvox
.ScriptInstaller
.installScript=function(a
,b
,c
,d
){if(cvox
.ScriptInstaller
.blacklistPattern
.test(document
.URL
)||document
.querySelector("script["+b
+"]")||!a
)return!1;for(var e
=0,f
;f
=a
[e
];e
++){var g
=new XMLHttpRequest
,h
=f
+"?"+(new Date
).getTime();g
.onreadystatechange=function(){if(4==g
.readyState
){var a
=g
.responseText
,a
=a
+("\n//# sourceURL="+f
+"\n"),c
=document
.createElement("script");c
.type
="text/javascript";c
.setAttribute(b
,"1");c
.textContent
=a
;d
&&c
.setAttribute("chromevoxScriptBase",d
);cvox
.DomUtil
.addNodeToHead(c
)}};
805 try{g
.open("GET",h
,!1),g
.send(null)}catch(k
){return window
.console
.log("Warning: ChromeVox external script loading for "+document
.location
+" stopped after failing to install "+f
),!1}}c
&&c();return!0};cvox
.ApiImplementation=function(){};cvox
.ApiImplementation
.init=function(a
){window
.addEventListener("message",cvox
.ApiImplementation
.portSetup
,!0);var b
=[];b
.push(cvox
.ChromeVox
.host
.getFileSrc("chromevox/injected/api_util.js"));b
.push(cvox
.ChromeVox
.host
.getApiSrc());b
.push(cvox
.ApiImplementation
.siteSpecificScriptLoader
);a
=cvox
.ScriptInstaller
.installScript(b
,"cvoxapi",a
,cvox
.ApiImplementation
.siteSpecificScriptBase
);a
||(window
.location
.href
="javascript:cvox.Api.internalEnable();")};
806 cvox
.ApiImplementation
.portSetup=function(a
){return"cvox.PortSetup"==a
.data
?(cvox
.ApiImplementation
.port
=a
.ports
[0],cvox
.ApiImplementation
.port
.onmessage=function(a
){cvox
.ApiImplementation
.dispatchApiMessage(cvox
.ChromeVoxJSON
.parse(a
.data
))},a
.stopPropagation(),!1):!0};
807 cvox
.ApiImplementation
.dispatchApiMessage=function(a
){var b
;switch(a
.cmd
){case "speak":b
=cvox
.ApiImplementation
.speak
;break;case "speakNodeRef":b
=cvox
.ApiImplementation
.speakNodeRef
;break;case "stop":b
=cvox
.ApiImplementation
.stop
;break;case "playEarcon":b
=cvox
.ApiImplementation
.playEarcon
;break;case "syncToNodeRef":b
=cvox
.ApiImplementation
.syncToNodeRef
;break;case "clickNodeRef":b
=cvox
.ApiImplementation
.clickNodeRef
;break;case "getBuild":b
=cvox
.ApiImplementation
.getBuild
;break;case "getVersion":b
=
808 cvox
.ApiImplementation
.getVersion
;break;case "getCurrentNode":b
=cvox
.ApiImplementation
.getCurrentNode
;break;case "getCvoxModKeys":b
=cvox
.ApiImplementation
.getCvoxModKeys
;break;case "isKeyShortcut":b
=cvox
.ApiImplementation
.isKeyShortcut
;break;case "setKeyEcho":b
=cvox
.ApiImplementation
.setKeyEcho
;break;case "Math.defineRule":b
=cvox
.ApiImplementation
.Math
.defineRule
}if(!b
)throw"Unknown API call: "+a
.cmd
;b
.apply(cvox
.ApiImplementation
,a
.args
)};
809 function setupEndCallback_(a
,b
){var c=function(){cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:b
}))};a
&&(a
.endCallback
=c
)}cvox
.ApiImplementation
.speak=function(a
,b
,c
,d
){cvox
.ChromeVox
.isActive
&&(d
||(d
={}),setupEndCallback_(d
,a
),cvox
.ChromeVox
.tts
.speak(b
,c
,d
))};cvox
.ApiImplementation
.speakNode=function(a
,b
,c
){cvox
.ChromeVox
.isActive
&&cvox
.ChromeVox
.tts
.speak(cvox
.DomUtil
.getName(a
),b
,c
)};
810 cvox
.ApiImplementation
.speakNodeRef=function(a
,b
,c
,d
){b
=cvox
.ApiUtils
.getNodeFromRef(b
);d
||(d
={});setupEndCallback_(d
,a
);cvox
.ApiImplementation
.speakNode(b
,c
,d
)};cvox
.ApiImplementation
.stop=function(){cvox
.ChromeVox
.isActive
&&cvox
.ChromeVox
.tts
.stop()};cvox
.ApiImplementation
.playEarcon=function(a
){cvox
.ChromeVox
.isActive
&&cvox
.ChromeVox
.earcons
.playEarconByName(a
)};cvox
.ApiImplementation
.syncToNodeRef=function(a
,b
){var c
=cvox
.ApiUtils
.getNodeFromRef(a
);cvox
.ApiImplementation
.syncToNode(c
,b
)};
811 cvox
.ApiImplementation
.syncToNode=function(a
,b
,c
){cvox
.ChromeVox
.isActive
&&(void 0==c
&&(c
=cvox
.AbstractTts
.QUEUE_MODE_FLUSH
),cvox
.ChromeVox
.navigationManager
.updateSelToArbitraryNode(a
,!0),cvox
.ChromeVox
.navigationManager
.updateIndicator(),void 0==b
&&(b
=!1),cvox
.AriaUtil
.isHiddenRecursive(a
)&&(b
=!1),b
&&cvox
.ChromeVox
.navigationManager
.speakDescriptionArray(cvox
.ApiImplementation
.getDesc_(a
),c
,null),cvox
.ChromeVox
.navigationManager
.getBraille().write(),cvox
.ChromeVox
.navigationManager
.updatePosition(a
))};
812 cvox
.ApiImplementation
.getCurrentNode=function(a
){var b
=cvox
.ChromeVox
.navigationManager
.getCurrentNode();cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:a
,currentNode
:cvox
.ApiUtils
.makeNodeReference(b
)}))};
813 cvox
.ApiImplementation
.getDesc_=function(a
){if(!a
.hasAttribute("cvoxnodedesc"))return cvox
.ChromeVox
.navigationManager
.getDescription();a
=cvox
.ChromeVoxJSON
.parse(a
.getAttribute("cvoxnodedesc"));for(var b
=[],c
=0;c
<a
.length
;++c
){var d
=a
[c
];b
.push(new cvox
.NavDescription({context
:d
.context
,text
:d
.text
,userValue
:d
.userValue
,annotation
:d
.annotation
}))}return b
};cvox
.ApiImplementation
.clickNodeRef=function(a
,b
){cvox
.DomUtil
.clickElem(cvox
.ApiUtils
.getNodeFromRef(a
),b
,!1)};
814 cvox
.ApiImplementation
.getBuild=function(a
){cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:a
,build
:cvox
.BuildInfo
.build
}))};cvox
.ApiImplementation
.getVersion=function(a
){var b
=cvox
.ChromeVox
.version
;null==b
?window
.setTimeout(function(){cvox
.ApiImplementation
.getVersion(a
)},1E3
):cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:a
,version
:b
}))};
815 cvox
.ApiImplementation
.getCvoxModKeys=function(a
){cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:a
,keyCodes
:cvox
.KeyUtil
.cvoxModKeyCodes()}))};cvox
.ApiImplementation
.isKeyShortcut=function(a
,b
){var c
=cvox
.KeyUtil
.keyEventToKeySequence(b
);cvox
.ApiImplementation
.port
.postMessage(cvox
.ChromeVoxJSON
.stringify({id
:a
,isHandled
:cvox
.ChromeVoxKbHandler
.handlerKeyMap
.hasKey(c
)}))};
816 cvox
.ApiImplementation
.setKeyEcho=function(a
){var b
=cvox
.ChromeVox
.keyEcho
;b
[document
.location
.href
]=a
;cvox
.ChromeVox
.host
.sendToBackgroundPage({target
:"Prefs",action
:"setPref",pref
:"keyEcho",value
:JSON
.stringify(b
)})};cvox
.ApiImplementation
.Math=function(){};cvox
.ApiImplementation
.Math
.defineRule=function(a
,b
,c
,d
,e
){var f
=cvox
.MathmlStore
.getInstance(),g
=Array
.prototype.slice
.call(arguments
,4),g
=[a
,b
,c
,d
].concat(g
);f
.defineRule
.apply(f
,g
)};cvox
.ChromeVoxHTMLDateWidget=function(a
,b
){var c
=this;this.pos_
=0;var d
=2;if("month"==a
.type
||"week"==a
.type
)d
=1;this.maxPos_
=d
;this.dateElem_
=a
;this.dateTts_
=b
;this.pDay_
=this.pWeek_
=this.pMonth_
=this.pYear_
=-1;this.keyListener_=function(a
){c
.eventHandler_(a
)};this.blurListener_=function(){c
.shutdown()};0==this.dateElem_
.value
.length
&&this.forceInitTime_();for(d
=0;d
<this.maxPos_
;d
++){var e
=document
.createEvent("KeyboardEvent");e
.initKeyboardEvent("keydown",!0,!0,window
,"Left",0,!1,!1,!1,!1);this.dateElem_
.dispatchEvent(e
);
817 e
=document
.createEvent("KeyboardEvent");e
.initKeyboardEvent("keyup",!0,!0,window
,"Left",0,!1,!1,!1,!1);this.dateElem_
.dispatchEvent(e
)}this.dateElem_
.addEventListener("keydown",this.keyListener_
,!1);this.dateElem_
.addEventListener("keyup",this.keyListener_
,!1);this.dateElem_
.addEventListener("blur",this.blurListener_
,!1);this.update_(!0)};
818 cvox
.ChromeVoxHTMLDateWidget
.prototype.shutdown=function(){this.dateElem_
.removeEventListener("blur",this.blurListener_
,!1);this.dateElem_
.removeEventListener("keydown",this.keyListener_
,!1);this.dateElem_
.removeEventListener("keyup",this.keyListener_
,!1)};
819 cvox
.ChromeVoxHTMLDateWidget
.prototype.forceInitTime_=function(){var a
=new Date
,b
="",b
=a
.getFullYear()+"",c
=a
.getMonth()+1+"";2>c
.length
&&(c
="0"+c
);var d
=a
.getDate()+"";switch(this.dateElem_
.type
){case "month":b
=b
+"-"+c
;break;case "week":a
.setHours(0,0,0);a
.setDate(a
.getDate()+4-(a
.getDay()||7));c
=new Date(a
.getFullYear(),0,1);a
=Math
.ceil(((a
-c
)/864E5+1)/7)+"";2>a
.length
&&(a
="0"+a
);a
="W"+a
;b
=b
+"-"+a
;break;default:b
=b
+"-"+c
+"-"+d
}this.dateElem_
.setAttribute("value",b
)};
820 cvox
.ChromeVoxHTMLDateWidget
.prototype.handlePosChange_=function(){this.pos_
=Math
.max(this.pos_
,0);this.pos_
=Math
.min(this.pos_
,this.maxPos_
);switch(this.pos_
){case 0:"week"==this.dateElem_
.type
?this.pWeek_
=-1:this.pMonth_
=-1;break;case 1:"date"==this.dateElem_
.type
?this.pDay_
=-1:this.pYear_
=-1;break;case 2:this.pYear_
=-1}};
821 cvox
.ChromeVoxHTMLDateWidget
.prototype.update_=function(a
){var b
=this.dateElem_
.value
.split("-");if(1>b
.length
)this.forceInitTime_();else{var c
=-1,d
=-1,e
=-1,f
=-1,c
=parseInt(b
[0],10);"week"==this.dateElem_
.type
?e
=parseInt(b
[1].replace("W",""),10):"date"==this.dateElem_
.type
?(d
=parseInt(b
[1],10),f
=parseInt(b
[2],10)):d
=parseInt(b
[1],10);b
="";a
&&(b
=cvox
.DomUtil
.getName(this.dateElem_
,!0,!0)+"\n");e
!=this.pWeek_
&&(b
=b
+cvox
.ChromeVox
.msgs
.getMsg("datewidget_week")+e
+"\n",this.pWeek_
=e
);if(d
!=this.pMonth_
){a
=
822 "";switch(d
){case 1:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_january");break;case 2:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_february");break;case 3:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_march");break;case 4:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_april");break;case 5:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_may");break;case 6:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_june");break;case 7:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_july");break;case 8:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_august");
823 break;case 9:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_september");break;case 10:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_october");break;case 11:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_november");break;case 12:a
=cvox
.ChromeVox
.msgs
.getMsg("datewidget_december")}b
=b
+a
+"\n";this.pMonth_
=d
}f
!=this.pDay_
&&(b
=b
+f
+"\n",this.pDay_
=f
);c
!=this.pYear_
&&(b
=b
+c
+"\n",this.pYear_
=c
);0<b
.length
&&this.dateTts_
.speak(b
,0,null)}};
824 cvox
.ChromeVoxHTMLDateWidget
.prototype.eventHandler_=function(a
){var b
=!1;if("keydown"==a
.type
){if(9==a
.keyCode
&&!a
.shiftKey
||39==a
.keyCode
)this.pos_
++,this.handlePosChange_(),b
=!0;if(9==a
.keyCode
&&a
.shiftKey
||37==a
.keyCode
)this.pos_
--,this.handlePosChange_(),b
=!0}this.update_(b
)};cvox
.BrailleTextHandler=function(a
){this.braille_
=a
};cvox
.BrailleTextHandler
.prototype.changed=function(a
,b
,c
,d
){var e
;d
?(e
=cvox
.NavBraille
.fromText(a
),e
.startIndex
=b
,e
.endIndex
=c
):cvox
.ChromeVox
.navigationManager
&&(e
=cvox
.ChromeVox
.navigationManager
.getBraille());e
&&this.braille_
.write(e
)};cvox
.ContentEditableExtractor=function(){this.text_
="";this.end_
=this.start_
=0;this.lines_
={};this.characterToLineMap_
=[]};
825 cvox
.ContentEditableExtractor
.prototype.update=function(a
){for(var b
={0:{startIndex
:0,endIndex
:0}},c
=new cvox
.Cursor(a
,0,""),d
=c
.clone(),e
=document
.createRange(),f
,g
=0,h
=null,k
="",l
=0,m
=-1,p
=-1,q
=window
.getSelection(),n
=new cvox
.Cursor(q
.baseNode
,q
.baseOffset
,""),q
=new cvox
.Cursor(q
.extentNode
,q
.extentOffset
,""),s
=!1,u
=!1;;){f
=[];var t
=[],r
=cvox
.TraverseUtil
.forwardsChar(d
,f
,t
),v
=!1;r
||(v
=!0);for(f
=0;f
<t
.length
&&!v
;f
++)t
[f
]==a
&&(v
=!0);if(v
)break;e
.setStart(c
.node
,c
.index
);e
.setEnd(d
.node
,d
.index
);
826 if((f
=e
.getBoundingClientRect())&&0!=f
.width
&&0!=f
.height
){null!==h
&&f
.bottom
!=h
&&0<l
&&k
.substr(-1).match(/\S/)&&r
.match(/\S/)&&(k
+="\n",l
++);if(c
.node
!=d
.node
&&0<d
.index
&&(e
.setStart(d
.node
,d
.index
-1),f
=e
.getBoundingClientRect(),!f
||0==f
.width
||0==f
.height
))continue;!s
&&-1==m
&&d
.node
==n
.node
&&d
.index
>=n
.index
&&(d
.index
>n
.index
?m
=l
:s
=!0);!u
&&-1==p
&&d
.node
==q
.node
&&d
.index
>=q
.index
&&(d
.index
>q
.index
?p
=l
:u
=!0);null===h
?h
=f
.bottom
:f
.bottom
!=h
&&(b
[g
].endIndex
=l
,g
++,b
[g
]={startIndex
:l
,endIndex
:l
},h
=f
.bottom
);
827 k
+=r
;l
++;c
=d
.clone();s
&&(m
=l
,s
=!1);u
&&(p
=l
,u
=!1)}}b
[g
].endIndex
=l
;a
=[];for(f
=0;f
<=g
;f
++)for(c
=b
[f
].startIndex
;c
<=b
[f
].endIndex
;c
++)a
[c
]=f
;this.text_
=k
;this.characterToLineMap_
=a
;this.lines_
=b
;this.start_
=0<=m
?m
:k
.length
;this.end_
=0<=p
?p
:k
.length
};cvox
.ContentEditableExtractor
.prototype.getText=function(){return this.text_
};cvox
.ContentEditableExtractor
.prototype.getStartIndex=function(){return this.start_
};cvox
.ContentEditableExtractor
.prototype.getEndIndex=function(){return this.end_
};
828 cvox
.ContentEditableExtractor
.prototype.getLineIndex=function(a
){return this.characterToLineMap_
[a
]};cvox
.ContentEditableExtractor
.prototype.getLineStart=function(a
){return this.lines_
[a
].startIndex
};cvox
.ContentEditableExtractor
.prototype.getLineEnd=function(a
){return this.lines_
[a
].endIndex
};cvox
.EditableTextAreaShadow=function(){this.shadowElement_
=document
.createElement("div");this.lines_
={};this.characterToLineMap_
=[]};
829 cvox
.EditableTextAreaShadow
.prototype.update=function(a
){for(document
.body
.appendChild(this.shadowElement_
);this.shadowElement_
.childNodes
.length
;)this.shadowElement_
.removeChild(this.shadowElement_
.childNodes
[0]);this.shadowElement_
.style
.cssText
=window
.getComputedStyle(a
,null).cssText
;this.shadowElement_
.style
.position
="absolute";this.shadowElement_
.style
.top
=-9999;this.shadowElement_
.style
.left
=-9999;this.shadowElement_
.setAttribute("aria-hidden","true");var b
=a
.value
,c
=document
.createTextNode(b
+
830 ".");this.shadowElement_
.appendChild(c
);a
={0:{startIndex
:0,endIndex
:0}};for(var d
=document
.createRange(),e
=0,f
=0,g
=0,h
=null,k
=!1,l
;e
<=b
.length
;){d
.setStart(c
,e
);if(e
+8>b
.length
||0<=b
.substr(e
,8).indexOf("\n"))k
=!0;k
?(e
++,d
.setEnd(c
,e
),l
=d
.getBoundingClientRect()):(d
.setEnd(c
,e
+8),l
=d
.getBoundingClientRect(),l
.bottom
==h
?e
+=8:(l
&&null!==h
&&(k
=!0),e
++,d
.setEnd(c
,e
),l
=d
.getBoundingClientRect()));0<e
&&"\n"==b
[e
-1]?(a
[g
].endIndex
=e
-1,g
++,a
[g
]={startIndex
:e
,endIndex
:e
},h
=null,k
=!1,f
=e
):l
&&null===h
?h
=l
.bottom
:
831 l
&&l
.bottom
!=h
&&(a
[g
].endIndex
=f
,g
++,a
[g
]={startIndex
:f
,endIndex
:f
},h
=l
?l
.bottom
:null,k
=!1);l
&&(f
=e
)}a
[g
].endIndex
=b
.length
;b
=[];for(c
=0;c
<=g
;c
++)for(d
=a
[c
].startIndex
;d
<=a
[c
].endIndex
;d
++)b
[d
]=c
;this.characterToLineMap_
=b
;this.lines_
=a
;document
.body
.removeChild(this.shadowElement_
)};cvox
.EditableTextAreaShadow
.prototype.getLineIndex=function(a
){return this.characterToLineMap_
[a
]};cvox
.EditableTextAreaShadow
.prototype.getLineStart=function(a
){return this.lines_
[a
].startIndex
};
832 cvox
.EditableTextAreaShadow
.prototype.getLineEnd=function(a
){return this.lines_
[a
].endIndex
};cvox
.TextChangeEvent=function(a
,b
,c
,d
){this.value
=a
;this.start
=b
;this.end
=c
;this.triggeredByUser
=d
;this.start
>this.end
&&(a
=this.end
,this.end
=this.start
,this.start
=a
)};cvox
.TypingEcho
={CHARACTER
:0,WORD
:1,CHARACTER_AND_WORD
:2,NONE
:3,COUNT
:4};cvox
.TypingEcho
.cycle=function(a
){return(a
+1)%cvox
.TypingEcho
.COUNT
};cvox
.TypingEcho
.shouldSpeakChar=function(a
){return a
==cvox
.TypingEcho
.CHARACTER_AND_WORD
||a
==cvox
.TypingEcho
.CHARACTER
};cvox
.TextHandlerInterface=function(){};
833 cvox
.TextHandlerInterface
.prototype.changed=function(){};cvox
.ChromeVoxEditableTextBase=function(a
,b
,c
,d
,e
){this.value
=a
;this.start
=b
;this.end
=c
;this.isPassword
=d
;this.tts
=e
;this.multiline
=!1;this.brailleHandler_
=cvox
.ChromeVox
.braille
?new cvox
.BrailleTextHandler(cvox
.ChromeVox
.braille
):void 0};cvox
.ChromeVoxEditableTextBase
.prototype.setup=function(){};cvox
.ChromeVoxEditableTextBase
.prototype.teardown=function(){};cvox
.ChromeVoxEditableTextBase
.useIBeamCursor
=cvox
.ChromeVox
.isMac
;
834 cvox
.ChromeVoxEditableTextBase
.eventTypingEcho
=!1;cvox
.ChromeVoxEditableTextBase
.prototype.maxShortPhraseLen
=60;cvox
.ChromeVoxEditableTextBase
.prototype.isPassword
=!1;cvox
.ChromeVoxEditableTextBase
.prototype.lastChangeDescribed
=!1;cvox
.ChromeVoxEditableTextBase
.prototype.getLineIndex=function(){return 0};cvox
.ChromeVoxEditableTextBase
.prototype.getLineStart=function(){return 0};cvox
.ChromeVoxEditableTextBase
.prototype.getLineEnd=function(){return this.value
.length
};
835 cvox
.ChromeVoxEditableTextBase
.prototype.getLine=function(a
){var b
=this.getLineStart(a
);a
=this.getLineEnd(a
);return this.value
.substr(b
,a
-b
)};cvox
.ChromeVoxEditableTextBase
.prototype.isWordBreakChar=function(a
){return!!a
.match(/^\W$/)};cvox
.ChromeVoxEditableTextBase
.prototype.isLastChar=function(a
){return void 0==this.getLineIndex(a
.start
+1)};
836 cvox
.ChromeVoxEditableTextBase
.prototype.speak=function(a
,b
,c
){if(!this.node
||document
.activeElement
==this.node
){var d
=cvox
.AbstractTts
.QUEUE_MODE_QUEUE
;!0===b
&&(d
=cvox
.AbstractTts
.QUEUE_MODE_FLUSH
);this.tts
.speak(a
,d
,c
||{})}};
837 cvox
.ChromeVoxEditableTextBase
.prototype.changed=function(a
){if(a
.value
!=this.value
||a
.start
!=this.start
||a
.end
!=this.end
||this.isLastChar(a
)){if(a
.value
==this.value
?this.describeSelectionChanged(a
):this.describeTextChanged(a
),this.lastChangeDescribed
=!0,this.value
=a
.value
,this.start
=a
.start
,this.end
=a
.end
,this.brailleHandler_
){var b
=this.getLine(this.getLineIndex(a
.start
)),c
=this.getLineStart(this.getLineIndex(a
.start
)),d
=a
.start
-c
;a
=a
.end
-c
;this.brailleHandler_
.changed(b
,d
,a
,this.multiline
)}}else this.lastChangeDescribed
=
839 cvox
.ChromeVoxEditableTextBase
.prototype.describeSelectionChanged=function(a
){if(this.isPassword
)this.speak((new goog
.i18n
.MessageFormat(cvox
.ChromeVox
.msgs
.getMsg("dot"))).format({COUNT
:1}),a
.triggeredByUser
);else if(a
.start
==a
.end
)if(this.start
!=this.end
)this.speak(cvox
.ChromeVox
.msgs
.getMsg("Unselected"),a
.triggeredByUser
);else if(this.getLineIndex(this.start
)!=this.getLineIndex(a
.start
)){var b
=this.getLine(this.getLineIndex(a
.start
));""==b
?b
=cvox
.ChromeVox
.msgs
.getMsg("text_box_blank"):/^\s+$/.test(b
)&&(b
=
840 cvox
.ChromeVox
.msgs
.getMsg("text_box_whitespace"));this.speak(b
,a
.triggeredByUser
)}else this.start
==a
.start
+1||this.start
==a
.start
-1?cvox
.ChromeVoxEditableTextBase
.useIBeamCursor
?this.speak(this.value
.substr(Math
.min(this.start
,a
.start
),1),a
.triggeredByUser
,{phoneticCharacters
:a
.triggeredByUser
}):a
.start
==this.value
.length
?cvox
.ChromeVox
.verbosity
==cvox
.VERBOSITY_VERBOSE
?this.speak(cvox
.ChromeVox
.msgs
.getMsg("end_of_text_verbose"),a
.triggeredByUser
):this.speak(cvox
.ChromeVox
.msgs
.getMsg("end_of_text_brief"),
841 a
.triggeredByUser
):this.speak(this.value
.substr(a
.start
,1),a
.triggeredByUser
,{phoneticCharacters
:a
.triggeredByUser
}):this.speak(this.value
.substr(Math
.min(this.start
,a
.start
),Math
.abs(this.start
-a
.start
)),a
.triggeredByUser
);else this.start
+1==a
.start
&&this.end
==this.value
.length
&&a
.end
==this.value
.length
?(this.speak(this.value
.substr(this.start
,1),a
.triggeredByUser
),this.speak(this.value
.substr(a
.start
))):this.start
==this.end
?(this.speak(this.value
.substr(a
.start
,a
.end
-a
.start
),a
.triggeredByUser
),
842 this.speak(cvox
.ChromeVox
.msgs
.getMsg("selected"))):this.start
==a
.start
&&this.end
<a
.end
?(this.speak(this.value
.substr(this.end
,a
.end
-this.end
),a
.triggeredByUser
),this.speak(cvox
.ChromeVox
.msgs
.getMsg("added_to_selection"))):this.start
==a
.start
&&this.end
>a
.end
?(this.speak(this.value
.substr(a
.end
,this.end
-a
.end
),a
.triggeredByUser
),this.speak(cvox
.ChromeVox
.msgs
.getMsg("removed_from_selection"))):this.end
==a
.end
&&this.start
>a
.start
?(this.speak(this.value
.substr(a
.start
,this.start
-a
.start
),a
.triggeredByUser
),
843 this.speak(cvox
.ChromeVox
.msgs
.getMsg("added_to_selection"))):this.end
==a
.end
&&this.start
<a
.start
?(this.speak(this.value
.substr(this.start
,a
.start
-this.start
),a
.triggeredByUser
),this.speak(cvox
.ChromeVox
.msgs
.getMsg("removed_from_selection"))):(this.speak(this.value
.substr(a
.start
,a
.end
-a
.start
),a
.triggeredByUser
),this.speak(cvox
.ChromeVox
.msgs
.getMsg("selected")))};
844 cvox
.ChromeVoxEditableTextBase
.prototype.describeTextChanged=function(a
){var b
={};a
.value
.length
<this.value
.length
&&(b
=cvox
.AbstractTts
.PERSONALITY_DELETED
);if(this.isPassword
)this.speak((new goog
.i18n
.MessageFormat(cvox
.ChromeVox
.msgs
.getMsg("dot"))).format({COUNT
:1}),a
.triggeredByUser
,b
);else{var c
=this.value
,d
=c
.length
,e
=a
.value
.length
,f
="",g
=a
.value
,h
=a
.end
;a
.start
<h
&&h
==e
&&(f
=g
.substr(a
.start
),g
=g
.substr(0,a
.start
),h
=a
.start
);var k
=this.start
,l
=d
-this.end
;if(e
>=k
+l
+(h
-a
.start
)&&g
.substr(0,k
)==
845 c
.substr(0,k
)&&g
.substr(e
-l
)==c
.substr(this.end
))this instanceof cvox
.ChromeVoxEditableContentEditable
&&!(e
<d
||this.isWordBreakChar(a
.value
[e
-1]||""))||this.describeTextChangedHelper(a
,k
,l
,f
,b
);else if(k
=a
.start
,l
=e
-h
,this.start
==this.end
&&a
.start
==h
&&g
.substr(0,k
)==c
.substr(0,k
)&&g
.substr(e
-l
)==c
.substr(d
-l
))this.describeTextChangedHelper(a
,k
,l
,f
,b
);else{g
+=f
;if(g
.length
==c
.length
+1||g
.length
+1==c
.length
){if(g
.length
>c
.length
){if(0==g
.indexOf(c
)){this.speak(g
[g
.length
-1],a
.triggeredByUser
,b
);return}if(1==
846 g
.indexOf(c
)){this.speak(g
[0],a
.triggeredByUser
,b
);return}}if(g
.length
<c
.length
){if(0==c
.indexOf(g
)){this.speak(c
[c
.length
-1],a
.triggeredByUser
,b
);return}if(1==c
.indexOf(g
)){this.speak(c
[0],a
.triggeredByUser
,b
);return}}}if(this.multiline
)a
.value
.length
<this.value
.length
&&this.speak(cvox
.ChromeVox
.msgs
.getMsg("text_deleted"),a
.triggeredByUser
,b
);else if(e
<=this.maxShortPhraseLen
)this.describeTextChangedHelper(a
,0,0,"",b
);else{for(k
=0;k
<d
&&k
<e
&&c
[k
]==g
[k
];)k
++;for(;0<k
&&!this.isWordBreakChar(c
[k
-1]);)k
--;
847 for(l
=0;l
<d
-k
&&l
<e
-k
&&c
[d
-l
-1]==g
[e
-l
-1];)l
++;for(;0<l
&&!this.isWordBreakChar(c
[d
-l
]);)l
--;this.describeTextChangedHelper(a
,k
,l
,"",b
)}}}};
848 cvox
.ChromeVoxEditableTextBase
.prototype.describeTextChangedHelper=function(a
,b
,c
,d
,e
){var f
=this.value
.length
,g
=a
.value
.length
,f
=f
-b
-c
,h
=this.value
.substr(b
,f
),k
=g
-b
-c
;c
=a
.value
.substr(b
,k
);var l
="",g
=a
.triggeredByUser
;if(1<k
)l
=c
;else if(1==k
)if((cvox
.ChromeVox
.typingEcho
==cvox
.TypingEcho
.WORD
||cvox
.ChromeVox
.typingEcho
==cvox
.TypingEcho
.CHARACTER_AND_WORD
)&&this.isWordBreakChar(c
)&&0<b
&&!this.isWordBreakChar(a
.value
.substr(b
-1,1))){for(f
=b
;0<f
&&!this.isWordBreakChar(a
.value
[f
-1]);)f
--;f
<b
?l
=a
.value
.substr(f
,
849 b
+1-f
):(l
=c
,g
=!1)}else{if(cvox
.ChromeVox
.typingEcho
==cvox
.TypingEcho
.CHARACTER
||cvox
.ChromeVox
.typingEcho
==cvox
.TypingEcho
.CHARACTER_AND_WORD
)l
=cvox
.ChromeVoxEditableTextBase
.eventTypingEcho
?"":c
}else 1<f
&&!d
?l
=h
+", deleted":1==f
&&(l
=h
);d
&&l
?l
+=", "+d
:d
&&(l
=d
);l
&&this.speak(l
,g
,e
)};cvox
.ChromeVoxEditableElement=function(a
,b
,c
,d
,e
,f
){cvox
.ChromeVoxEditableTextBase
.call(this,b
,c
,d
,e
,f
);this.node
=a
;this.justSpokeDescription_
=!1};goog
.inherits(cvox
.ChromeVoxEditableElement
,cvox
.ChromeVoxEditableTextBase
);
850 cvox
.ChromeVoxEditableElement
.prototype.changed=function(a
){this.justSpokeDescription_
&&this.value
==a
.value
&&(this.value
=a
.value
,this.start
=a
.start
,this.end
=a
.end
,this.justSpokeDescription_
=!1);cvox
.ChromeVoxEditableElement
.superClass_
.changed
.call(this,a
)};cvox
.ChromeVoxEditableHTMLInput=function(a
,b
){this.node
=a
;this.setup();cvox
.ChromeVoxEditableElement
.call(this,a
,a
.value
,a
.selectionStart
,a
.selectionEnd
,"password"===a
.type
,b
)};goog
.inherits(cvox
.ChromeVoxEditableHTMLInput
,cvox
.ChromeVoxEditableElement
);
851 cvox
.ChromeVoxEditableHTMLInput
.prototype.setup=function(){this.node
&&!cvox
.DomUtil
.doesInputSupportSelection(this.node
)&&(this.originalType
=this.node
.type
,this.node
.type
="text")};cvox
.ChromeVoxEditableHTMLInput
.prototype.teardown=function(){this.node
&&this.originalType
&&(this.node
.type
=this.originalType
)};cvox
.ChromeVoxEditableHTMLInput
.prototype.update=function(a
){var b
=this.node
.value
;a
=new cvox
.TextChangeEvent(b
,this.node
.selectionStart
,this.node
.selectionEnd
,a
);this.changed(a
)};
852 cvox
.ChromeVoxEditableTextArea=function(a
,b
){cvox
.ChromeVoxEditableElement
.call(this,a
,a
.value
,a
.selectionStart
,a
.selectionEnd
,!1,b
);this.multiline
=!0;this.shadowIsCurrent_
=!1};goog
.inherits(cvox
.ChromeVoxEditableTextArea
,cvox
.ChromeVoxEditableElement
);cvox
.ChromeVoxEditableTextArea
.prototype.update=function(a
){this.node
.value
!=this.value
&&(this.shadowIsCurrent_
=!1);a
=new cvox
.TextChangeEvent(this.node
.value
,this.node
.selectionStart
,this.node
.selectionEnd
,a
);this.changed(a
)};
853 cvox
.ChromeVoxEditableTextArea
.prototype.getLineIndex=function(a
){return this.getShadow().getLineIndex(a
)};cvox
.ChromeVoxEditableTextArea
.prototype.getLineStart=function(a
){return this.getShadow().getLineStart(a
)};cvox
.ChromeVoxEditableTextArea
.prototype.getLineEnd=function(a
){return this.getShadow().getLineEnd(a
)};
854 cvox
.ChromeVoxEditableTextArea
.prototype.getShadow=function(){var a
=cvox
.ChromeVoxEditableTextArea
.shadow_
;a
||(a
=cvox
.ChromeVoxEditableTextArea
.shadow_
=new cvox
.EditableTextAreaShadow
);this.shadowIsCurrent_
||(a
.update(this.node
),this.shadowIsCurrent_
=!0);return a
};
855 cvox
.ChromeVoxEditableContentEditable=function(a
,b
){cvox
.ChromeVoxEditableElement
.call(this,a
,"",0,0,!1,b
);this.extractorIsCurrent_
=!1;var c
=this.getExtractor();this.value
=c
.getText();this.start
=c
.getStartIndex();this.end
=c
.getEndIndex();this.multiline
=!0};goog
.inherits(cvox
.ChromeVoxEditableContentEditable
,cvox
.ChromeVoxEditableElement
);
856 cvox
.ChromeVoxEditableContentEditable
.prototype.update=function(a
){this.extractorIsCurrent_
=!1;a
=new cvox
.TextChangeEvent(this.getExtractor().getText(),this.getExtractor().getStartIndex(),this.getExtractor().getEndIndex(),a
);this.changed(a
)};cvox
.ChromeVoxEditableContentEditable
.prototype.getLineIndex=function(a
){return this.getExtractor().getLineIndex(a
)};cvox
.ChromeVoxEditableContentEditable
.prototype.getLineStart=function(a
){return this.getExtractor().getLineStart(a
)};
857 cvox
.ChromeVoxEditableContentEditable
.prototype.getLineEnd=function(a
){return this.getExtractor().getLineEnd(a
)};cvox
.ChromeVoxEditableContentEditable
.prototype.getExtractor=function(){var a
=cvox
.ChromeVoxEditableContentEditable
.extractor_
;a
||(a
=cvox
.ChromeVoxEditableContentEditable
.extractor_
=new cvox
.ContentEditableExtractor
);this.extractorIsCurrent_
||(a
.update(this.node
),this.extractorIsCurrent_
=!0);return a
};
858 cvox
.ChromeVoxEditableContentEditable
.prototype.describeSelectionChanged=function(a
){a
.triggeredByUser
&&(this.start
==this.end
&&a
.start
==a
.end
&&1!=Math
.abs(this.start
-a
.start
)&&this.isLastChar(a
)?this.speak(cvox
.ChromeVox
.msgs
.getMsg("text_box_blank"),!0):cvox
.ChromeVoxEditableContentEditable
.superClass_
.describeSelectionChanged
.call(this,a
))};
859 cvox
.ChromeVoxEditableContentEditable
.prototype.isLastChar=function(){var a
=window
.getSelection(),b
=new cvox
.Cursor(a
.baseNode
,a
.baseOffset
,"");return a
.baseNode
==a
.extentNode
&&a
.baseOffset
==a
.extentOffset
&&a
.baseNode
.nodeType
==Node
.ELEMENT_NODE
&&a
.baseNode
.querySelector("BR")&&cvox
.TraverseUtil
.forwardsChar(b
,[],[])?!0:!1};cvox
.ChromeVoxEventSuspender=function(){};cvox
.ChromeVoxEventSuspender
.suspendLevel_
=0;cvox
.ChromeVoxEventSuspender
.enterSuspendEvents=function(){cvox
.ChromeVoxEventSuspender
.suspendLevel_
+=1};cvox
.ChromeVoxEventSuspender
.exitSuspendEvents=function(){cvox
.ChromeVoxEventSuspender
.suspendLevel_
-=1};cvox
.ChromeVoxEventSuspender
.areEventsSuspended=function(){return 0<cvox
.ChromeVoxEventSuspender
.suspendLevel_
};
860 cvox
.ChromeVoxEventSuspender
.withSuspendedEvents=function(a
){return function(){cvox
.ChromeVoxEventSuspender
.enterSuspendEvents();var b
=a
.apply(this,arguments
);cvox
.ChromeVoxEventSuspender
.exitSuspendEvents();return b
}};cvox
.ChromeVoxEventSuspender
.makeSuspendableHandler=function(a
,b
){return function(){return cvox
.ChromeVoxEventSuspender
.areEventsSuspended()?b
:a()}};cvox
.Focuser
={};
861 cvox
.Focuser
.setFocus=function(a
,b
){var c
=window
.getSelection(),d
;0<c
.rangeCount
&&(d
=c
.getRangeAt(0));document
.activeElement
&&!cvox
.DomUtil
.isDescendantOfNode(a
,document
.activeElement
)&&document
.activeElement
.blur();a
&&a
.constructor==HTMLVideoElement
&&(cvox
.DomUtil
.isFocusable(a
)||a
.setAttribute("tabIndex",0));if(b
&&!cvox
.DomUtil
.isFocusable(a
)){var e
=cvox
.DomUtil
.findFocusableDescendant(a
);e
&&(a
=e
)}else for(;a
&&!cvox
.DomUtil
.isFocusable(a
);)a
=a
.parentNode
;cvox
.DomUtil
.isFocusable(a
)?"IFRAME"!=a
.tagName
&&
862 (cvox
.ChromeVoxEventSuspender
.areEventsSuspended()?(cvox
.Focuser
.shouldEnterSuspendEvents_(a
)&&cvox
.ChromeVoxEventSuspender
.enterSuspendEvents(),window
.setTimeout(function(){a
.focus();cvox
.ChromeVoxEventSuspender
.exitSuspendEvents()},0)):window
.setTimeout(function(){a
.focus()},0)):document
.activeElement
&&"BODY"!=document
.activeElement
.tagName
&&document
.activeElement
.blur();cvox
.DomUtil
.isInputTypeText(a
)?a
.select():d
&&(c
.removeAllRanges(),c
.addRange(d
))};
863 cvox
.Focuser
.shouldEnterSuspendEvents_=function(a
){if(a
.constructor&&a
.constructor==HTMLVideoElement
)return!1;if(a
.hasAttribute
)switch(a
.getAttribute("type")){case "time":case "date":case "week":case "month":return!1}return!0};cvox
.ChromeVoxHTMLMediaWidget=function(a
){var b
=this;this.mediaElem_
=a
;this.keyListener_=function(a
){b
.eventHandler_(a
)};this.blurListener_=function(){b
.shutdown()};this.mediaElem_
.addEventListener("keydown",this.keyListener_
,!1);this.mediaElem_
.addEventListener("keyup",this.keyListener_
,!1);this.mediaElem_
.addEventListener("blur",this.blurListener_
,!1)};
864 cvox
.ChromeVoxHTMLMediaWidget
.prototype.shutdown=function(){this.mediaElem_
.removeEventListener("blur",this.blurListener_
,!1);this.mediaElem_
.removeEventListener("keydown",this.keyListener_
,!1);this.mediaElem_
.removeEventListener("keyup",this.keyListener_
,!1)};cvox
.ChromeVoxHTMLMediaWidget
.prototype.jumpToTime_=function(a
){0>a
&&(a
=0);a
>this.mediaElem_
.duration
&&(a
=this.mediaElem_
.duration
);this.mediaElem_
.currentTime
=a
};
865 cvox
.ChromeVoxHTMLMediaWidget
.prototype.setVolume_=function(a
){0>a
&&(a
=0);1<a
&&(a
=1);this.mediaElem_
.volume
=a
};
866 cvox
.ChromeVoxHTMLMediaWidget
.prototype.eventHandler_=function(a
){"keydown"==a
.type
&&(13==a
.keyCode
||32==a
.keyCode
?this.mediaElem_
.paused
?this.mediaElem_
.play():this.mediaElem_
.pause():39==a
.keyCode
?this.jumpToTime_(this.mediaElem_
.currentTime
+this.mediaElem_
.duration
/10):37==a.keyCode?this.jumpToTime_(this.mediaElem_.currentTime-this.mediaElem_.duration/10):38==a
.keyCode
?this.setVolume_(this.mediaElem_
.volume
+0.1):40==a
.keyCode
&&this.setVolume_(this.mediaElem_
.volume
-0.1))};cvox
.ChromeVoxHTMLTimeWidget=function(a
,b
){var c
=this;this.timeElem_
=a
;this.timeTts_
=b
;this.pMinutes_
=this.pHours_
=-1;this.pMilliseconds_
=this.pSeconds_
=0;this.pAmpm_
="";this.pos_
=0;this.maxPos_
=2;this.keyListener_=function(a
){c
.eventHandler_(a
)};this.blurListener_=function(){c
.shutdown()};if(this.timeElem_
.hasAttribute("step")){var d
=this.timeElem_
.getAttribute("step");0<d
&&(this.maxPos_
=1<=d
?3:4)}0==this.timeElem_
.value
.length
&&this.forceInitTime_();for(d
=0;d
<this.maxPos_
;d
++){var e
=document
.createEvent("KeyboardEvent");
867 e
.initKeyboardEvent("keydown",!0,!0,window
,"Left",0,!1,!1,!1,!1);this.timeElem_
.dispatchEvent(e
);e
=document
.createEvent("KeyboardEvent");e
.initKeyboardEvent("keyup",!0,!0,window
,"Left",0,!1,!1,!1,!1);this.timeElem_
.dispatchEvent(e
)}this.timeElem_
.addEventListener("keydown",this.keyListener_
,!1);this.timeElem_
.addEventListener("keyup",this.keyListener_
,!1);this.timeElem_
.addEventListener("blur",this.blurListener_
,!1);this.update_(!0)};
868 cvox
.ChromeVoxHTMLTimeWidget
.prototype.shutdown=function(){this.timeElem_
.removeEventListener("blur",this.blurListener_
,!1);this.timeElem_
.removeEventListener("keydown",this.keyListener_
,!1);this.timeElem_
.removeEventListener("keyup",this.keyListener_
,!1)};cvox
.ChromeVoxHTMLTimeWidget
.prototype.forceInitTime_=function(){this.timeElem_
.setAttribute("value","12:00")};
869 cvox
.ChromeVoxHTMLTimeWidget
.prototype.handlePosChange_=function(){0>this.pos_
&&(this.pos_
=0);this.pos_
>this.maxPos_
&&(this.pos_
=this.maxPos_
);if(this.pos_
==this.maxPos_
)this.pAmpm_
="";else switch(this.pos_
){case 0:this.pHours_
=-1;break;case 1:this.pMinutes_
=-1;break;case 2:this.pSeconds_
=-1;break;case 3:this.pMilliseconds_
=-1}};
870 cvox
.ChromeVoxHTMLTimeWidget
.prototype.update_=function(a
){var b
=this.timeElem_
.value
.split(":");if(1>b
.length
)this.forceInitTime_();else{var c
=b
[0],d
=-1,e
=0,f
=0,g
=cvox
.ChromeVox
.msgs
.getMsg("timewidget_am");1<b
.length
&&(d
=b
[1]);2<b
.length
&&(b
=b
[2].split("."),e
=b
[0],1<b
.length
&&(f
=b
[1]));12<c
&&(c
-=12,g
=cvox
.ChromeVox
.msgs
.getMsg("timewidget_pm"));12==c
&&(g
=cvox
.ChromeVox
.msgs
.getMsg("timewidget_pm"));0==c
&&(c
=12,g
=cvox
.ChromeVox
.msgs
.getMsg("timewidget_am"));b
="";a
&&(b
=cvox
.DomUtil
.getName(this.timeElem_
,
871 !0,!0)+"\n");c
!=this.pHours_
&&(b
=b
+c
+" "+cvox
.ChromeVox
.msgs
.getMsg("timewidget_hours")+"\n",this.pHours_
=c
);d
!=this.pMinutes_
&&(b
=b
+d
+" "+cvox
.ChromeVox
.msgs
.getMsg("timewidget_minutes")+"\n",this.pMinutes_
=d
);e
!=this.pSeconds_
&&(b
=b
+e
+" "+cvox
.ChromeVox
.msgs
.getMsg("timewidget_seconds")+"\n",this.pSeconds_
=e
);f
!=this.pMilliseconds_
&&(b
=b
+f
+" "+cvox
.ChromeVox
.msgs
.getMsg("timewidget_milliseconds")+"\n",this.pMilliseconds_
=f
);g
!=this.pAmpm_
&&(b
+=g
,this.pAmpm_
=g
);0<b
.length
&&this.timeTts_
.speak(b
,
872 0,null)}};cvox
.ChromeVoxHTMLTimeWidget
.prototype.eventHandler_=function(a
){var b
=!1;if("keydown"==a
.type
){if(9==a
.keyCode
&&!a
.shiftKey
||39==a
.keyCode
)this.pos_
++,this.handlePosChange_(),b
=!0;if(9==a
.keyCode
&&a
.shiftKey
||37==a
.keyCode
)this.pos_
--,this.handlePosChange_(),b
=!0}this.update_(b
)};cvox
.ActiveIndicator=function(){this.lastMoveTime_
=0;this.zoom_
=1;this.updateIndicatorTimeoutId_
=this.lastClientRects_
=this.lastSyncTarget_
=this.container_
=null;this.blurred_
=!1;window
.addEventListener("focus",goog
.bind(function(){this.blurred_
=!1;this.container_
&&this.container_
.classList
.remove("cvox_indicator_window_not_focused")},this),!1);window
.addEventListener("blur",goog
.bind(function(){this.blurred_
=!0;this.container_
&&this.container_
.classList
.add("cvox_indicator_window_not_focused")},this),
873 !1)};cvox
.ActiveIndicator
.STYLE
=".cvox_indicator_container { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 2147483647 !important; pointer-events: none !important;}.cvox_indicator_window_not_focused { visibility: hidden !important;}.cvox_indicator_pulsing { -webkit-animation: cvox_indicator_pulsing_animation 0s 2 alternate !important; -webkit-animation-timing-function: ease-in-out !important;}.cvox_indicator_region { opacity: 0 !important; -webkit-transition: opacity 1s !important;}.cvox_indicator_visible { opacity: 1 !important;}.cvox_indicator_container .cvox_indicator_region * { position:absolute !important; box-shadow: 0 0 4px 4px #f7983a !important; border-radius: 6px !important; -webkit-transition: none !important;}.cvox_indicator_animate_normal .cvox_indicator_region * { -webkit-transition: all 0.3s !important;}.cvox_indicator_animate_quick .cvox_indicator_region * { -webkit-transition: all 0.1s !important;}.cvox_indicator_top { border-radius: inherit inherit 0 0 !important;}.cvox_indicator_middle_nw { border-radius: inherit 0 0 0 !important;}.cvox_indicator_middle_ne { border-radius: 0 inherit 0 0 !important;}.cvox_indicator_middle_se { border-radius: 0 0 inherit 0 !important;}.cvox_indicator_middle_sw { border-radius: 0 0 0 inherit !important;}.cvox_indicator_bottom { border-radius: 0 0 inherit inherit !important;}@-webkit-keyframes cvox_indicator_pulsing_animation { 0% {opacity: 1.0} 50% {opacity: 0.5} 100% {opacity: 1.0}}";
874 cvox
.ActiveIndicator
.QUICK_ANIM_DELAY_MS
=100;cvox
.ActiveIndicator
.NORMAL_ANIM_DELAY_MS
=300;cvox
.ActiveIndicator
.MARGIN
=8;cvox
.ActiveIndicator
.prototype.removeFromDom=function(){this.container_
&&this.container_
.parentElement
&&this.container_
.parentElement
.removeChild(this.container_
)};cvox
.ActiveIndicator
.prototype.syncToNode=function(a
){a
&&(a
==document
.body
?this.removeFromDom():this.syncToNodes([a
]))};
875 cvox
.ActiveIndicator
.prototype.syncToNodes=function(a
){var b
=this.clientRectsFromNodes_(a
);this.moveIndicator_(b
,cvox
.ActiveIndicator
.MARGIN
);this.lastSyncTarget_
=a
;this.lastClientRects_
=b
;null!=this.updateIndicatorTimeoutId_
&&(window
.clearTimeout(this.updateIndicatorTimeoutId_
),this.updateIndicatorTimeoutId_
=null)};
876 cvox
.ActiveIndicator
.prototype.syncToRange=function(a
){var b
=cvox
.ActiveIndicator
.MARGIN
;a
.startContainer
==a
.endContainer
&&a
.startOffset
+1==a
.endOffset
&&(b
=1);var c
=a
.getClientRects();this.moveIndicator_(c
,b
);this.lastSyncTarget_
=a
;this.lastClientRects_
=c
;null!=this.updateIndicatorTimeoutId_
&&(window
.clearTimeout(this.updateIndicatorTimeoutId_
),this.updateIndicatorTimeoutId_
=null)};
877 cvox
.ActiveIndicator
.prototype.syncToCursorSelection=function(a
){if(a
.start
.node
==a
.end
.node
&&a
.start
.index
==a
.end
.index
)this.syncToNode(a
.start
.node
);else{var b
=document
.createRange();b
.setStart(a
.start
.node
,a
.start
.index
);b
.setEnd(a
.end
.node
,a
.end
.index
);this.syncToRange(b
)}};cvox
.ActiveIndicator
.prototype.updateIndicatorIfChanged=function(){this.updateIndicatorTimeoutId_
||(this.updateIndicatorTimeoutId_
=window
.setTimeout(goog
.bind(function(){this.handleUpdateIndicatorIfChanged_()},this),100))};
878 cvox
.ActiveIndicator
.prototype.handleUpdateIndicatorIfChanged_=function(){this.updateIndicatorTimeoutId_
=null;if(this.lastSyncTarget_
){var a
;if((a
=this.lastSyncTarget_
instanceof Array
?this.clientRectsFromNodes_(this.lastSyncTarget_
):this.lastSyncTarget_
.getClientRects())&&0!=a
.length
){var b
=!1;if(a
.length
!=this.lastClientRects_
.length
)b
=!0;else for(var c
=0;c
<this.lastClientRects_
.length
;++c
){var d
=this.lastClientRects_
[c
],e
=a
[c
];if(d
.top
!=e
.top
||d
.right
!=e
.right
||d
.bottom
!=e
.bottom
||d
.left
!=d
.left
){b
=
879 !0;break}}b
&&(this.moveIndicator_(a
,cvox
.ActiveIndicator
.MARGIN
),this.lastClientRects_
=a
)}else this.syncToNode(document
.body
)}};cvox
.ActiveIndicator
.prototype.clientRectsFromNodes_=function(a
){for(var b
=[],c
=0;c
<a
.length
;++c
){var d
=a
[c
];if(d
.constructor==Text
){var e
=document
.createRange();e
.selectNode(d
);e
=e
.getClientRects()}else{for(;!d
.getClientRects
;)d
=d
.parentElement
;e
=d
.getClientRects()}for(d
=0;d
<e
.length
;++d
)b
.push(e
[d
])}return b
};
880 cvox
.ActiveIndicator
.prototype.moveIndicator_=function(a
,b
){if(document
.body
.isContentEditable
)this.removeFromDom();else{var c
=a
.length
;if(0!=c
){var d
,e
;"static"!=window
.getComputedStyle(document
.body
,null).position
?(d
=-document
.body
.getBoundingClientRect().left
,e
=-document
.body
.getBoundingClientRect().top
):"static"!=window
.getComputedStyle(document
.documentElement
,null).position
?(d
=-document
.documentElement
.getBoundingClientRect().left
,e
=-document
.documentElement
.getBoundingClientRect().top
):(d
=
881 window
.pageXOffset
,e
=window
.pageYOffset
);for(var f
=[],g
=0;g
<c
;g
++)f
.push(this.inset_(a
[g
],d
,e
,-d
,-e
));if(!this.container_
||!this.container_
.parentElement
){g
=document
.getElementsByClassName("cvox_indicator_container");for(c
=0;d
=g
[c
];c
++)d
.parentNode
&&d
.parentNode
.removeChild(d
);this.container_
=this.createDiv_(document
.body
,"cvox_indicator_container",document
.body
.firstChild
)}g
=document
.createElement("style");g
.id
="cvox_indicator_style";g
.innerHTML
=cvox
.ActiveIndicator
.STYLE
;cvox
.DomUtil
.addNodeToHead(g
,
882 g
.id
);g
=(new Date
).getTime();c
=g
-this.lastMoveTime_
;this.container_
.className
="cvox_indicator_container";document
.hasFocus()&&!this.blurred_
||this.container_
.classList
.add("cvox_indicator_window_not_focused");c
>cvox
.ActiveIndicator
.NORMAL_ANIM_DELAY_MS
?this.container_
.classList
.add("cvox_indicator_animate_normal"):c
>cvox
.ActiveIndicator
.QUICK_ANIM_DELAY_MS
&&this.container_
.classList
.add("cvox_indicator_animate_quick");this.lastMoveTime_
=g
;this.computeZoomLevel_();for(window
.setTimeout(goog
.bind(function(){this.container_
.classList
.add("cvox_indicator_pulsing")},
883 this),0);1<this.container_
.childElementCount
;)this.container_
.removeChild(this.container_
.lastElementChild
);d
=[[f
[0]]];e
=[f
[0]];for(g
=1;g
<f
.length
;g
++){for(var h
=!1,c
=0;c
<d
.length
&&!h
;c
++)this.intersects_(f
[g
],e
[c
])&&(d
[c
].push(f
[g
]),e
[c
]=this.union_(e
[c
],f
[g
]),h
=!0);h
||(d
.push([f
[g
]]),e
.push(f
[g
]))}do for(f
=!1,g
=0;g
<d
.length
-1&&!f
;g
++)for(c
=g
+1;c
<d
.length
&&!f
;c
++)this.intersects_(e
[g
],e
[c
])&&(d
[g
]=d
[g
].concat(d
[c
]),e
[g
]=this.union_(e
[g
],e
[c
]),d
.splice(c
,1),e
.splice(c
,1),f
=!0);while(f
);for(g
=0;g
<
884 d
.length
;g
++)d
[g
].sort(function(a
,b
){return a
.top
!=b
.top
?a
.top
-b
.top
:a
.left
-b
.left
});for(g
=0;g
<d
.length
;g
++)f
=null,0==g
&&1==this.container_
.childElementCount
&&6==this.container_
.children
[0].childElementCount
&&(f
=this.container_
.children
[0]),this.updateIndicatorRegion_(d
[g
],f
,b
)}}};
885 cvox
.ActiveIndicator
.prototype.updateIndicatorRegion_=function(a
,b
,c
){if(b
)var d
=b
.children
[0],e
=b
.children
[1],f
=b
.children
[2],g
=b
.children
[3],h
=b
.children
[4],k
=b
.children
[5];else b
=this.createDiv_(this.container_
,"cvox_indicator_region"),window
.setTimeout(function(){b
.classList
.add("cvox_indicator_visible")},0),d
=this.createDiv_(b
,"cvox_indicator_top"),e
=this.createDiv_(b
,"cvox_indicator_middle_nw"),f
=this.createDiv_(b
,"cvox_indicator_middle_ne"),g
=this.createDiv_(b
,"cvox_indicator_middle_sw"),h
=
886 this.createDiv_(b
,"cvox_indicator_middle_se"),k
=this.createDiv_(b
,"cvox_indicator_bottom");for(var l
=a
[0],m
=Math
.floor((l
.top
+l
.bottom
)/2),p=1,q=a.length;p<q&&a[p].top<m;)l=this.union_(l,a[p]),m=Math.floor((l.top+l.bottom)/2),p
++;if(p
==q
)l
=this.inset_(l
,-c
,-c
,-c
,-c
),a
=Math
.floor((3*l
.top
+1*l
.bottom
)/4),c=Math.floor((2*l.top+2*l.bottom)/4),m
=Math
.floor((1*l
.top
+3*l
.bottom
)/4),this.setElementCoords_(d
,l
.left
,l
.top
,l
.right
,a
,!0,!0,!0,!1),this.setElementCoords_(e
,l
.left
,a
,l
.left
,c
,!0,!0,!1,!1),this.setElementCoords_(g
,
887 l
.left
,c
,l
.left
,m
,!0,!1,!1,!0),this.setElementCoords_(f
,l
.right
,a
,l
.right
,c
,!1,!0,!0,!1),this.setElementCoords_(h
,l
.right
,c
,l
.right
,m
,!1,!1,!0,!0),this.setElementCoords_(k
,l
.left
,m
,l
.right
,l
.bottom
,!0,!1,!0,!0);else{for(var m
=a
[q
-1],n
=Math
.floor((m
.top
+m
.bottom
)/2),q=q-2;0<=q&&a[q].bottom>n;)m=this.union_(m,a[q]),n=Math.floor((m.top+m.bottom)/2),q
--;l
=this.inset_(l
,-c
,-c
,-c
,c
);m
=this.inset_(m
,-c
,c
,-c
,-c
);if(p
>q
)n
=this.union_(l
,m
),n
.top
=l
.bottom
,n
.bottom
=m
.top
,n
.height
=Math
.floor((n
.top
+n
.bottom
)/
888 2);else{n
=a
[p
];for(p
+=1;p
<=q
;)n
=this.union_(n
,a
[p
]),p
++;n
=this.inset_(n
,-c
,-c
,-c
,-c
);n
.left
=Math
.min(n
.left
,l
.left
,m
.left
);n
.right
=Math
.max(n
.right
,l
.right
,m
.right
);n
.width
=n
.right
-n
.left
}l
.right
>n
.right
-40&&(l
.right
=n
.right
,l
.width
=l
.right
-l
.left
);l
.left
<n
.left
+40&&(l
.left
=n
.left
,l
.width
=l
.right
-l
.left
);m
.right
>n
.right
-40&&(m
.right
=n
.right
,m
.width
=m
.right
-m
.left
);m
.left
<n
.left
+40&&(m
.left
=n
.left
,m
.width
=m
.right
-m
.left
);a
=Math
.floor((n
.top
+n
.bottom
)/2);this.setElementRect_(d
,l
,!0,!0,!0,!1);this.setElementRect_(k
,
889 m
,!0,!1,!0,!0);this.setElementCoords_(e
,n
.left
,l
.bottom
,l
.left
,a
,!0,!0,!1,!1);this.setElementCoords_(f
,l
.right
,l
.bottom
,n
.right
,a
,!1,!0,!0,!1);this.setElementCoords_(g
,n
.left
,a
,m
.left
,m
.top
,!0,!1,!1,!0);this.setElementCoords_(h
,m
.right
,a
,n
.right
,m
.top
,!1,!1,!0,!0)}};cvox
.ActiveIndicator
.prototype.intersects_=function(a
,b
){var c
=2*cvox
.ActiveIndicator
.MARGIN
;return b
.left
<=a
.right
+c
&&b
.right
>=a
.left
-c
&&b
.top
<=a
.bottom
+c
&&b
.bottom
>=a
.top
-c
};
890 cvox
.ActiveIndicator
.prototype.union_=function(a
,b
){var c
={left
:Math
.min(a
.left
,b
.left
),top
:Math
.min(a
.top
,b
.top
),right
:Math
.max(a
.right
,b
.right
),bottom
:Math
.max(a
.bottom
,b
.bottom
)};c
.width
=c
.right
-c
.left
;c
.height
=c
.bottom
-c
.top
;return c
};cvox
.ActiveIndicator
.prototype.inset_=function(a
,b
,c
,d
,e
){a
={left
:a
.left
+b
,top
:a
.top
+c
,right
:a
.right
-d
,bottom
:a
.bottom
-e
};a
.width
=a
.right
-a
.left
;a
.height
=a
.bottom
-a
.top
;return a
};
891 cvox
.ActiveIndicator
.prototype.createDiv_=function(a
,b
,c
){var d
=document
.createElement("div");d
.className
=b
;c
?a
.insertBefore(d
,c
):a
.appendChild(d
);return d
};cvox
.ActiveIndicator
.prototype.fixZoom_=function(a
){return(Math
.round(a
*this.zoom_
)+0.1)/this.zoom_};cvox.ActiveIndicator.prototype.fixZoomSum_=function(a,b){var c=Math.round(a*this.zoom_),d=Math.round((a+b)*this.zoom_),c=d-c;return(c+0.1)/this.zoom_
};
892 cvox
.ActiveIndicator
.prototype.setElementCoords_=function(a
,b
,c
,d
,e
,f
,g
,h
,k
){var l
=d
-b
,m
=e
-c
;d
-=b
;e
-=c
;var p
=f
?-20:0,q
=g
?-20:0,n
=h
?20:0,s
=k
?20:0;0==d
&&(h
?(b
-=5,d
+=5):f
&&(d
+=10),s
=q
=10,c
-=10,e
+=20);k
||(e
+=5);g
||(c
-=5,e
+=5,q
+=5,s
+=5);n
=0==n
&&0==l
?1:this.fixZoomSum_(b
,n
+l
);s
=this.fixZoomSum_(c
,s
+m
);a
.style
.left
=this.fixZoom_(b
)+"px";a
.style
.top
=this.fixZoom_(c
)+"px";a
.style
.width
=this.fixZoomSum_(b
,d
)+"px";a
.style
.height
=this.fixZoomSum_(c
,e
)+"px";a
.style
.clip
="rect("+[q
,n
,s
,p
].join("px ")+"px)"};
893 cvox
.ActiveIndicator
.prototype.setElementRect_=function(a
,b
,c
,d
,e
,f
){this.setElementCoords_(a
,b
.left
,b
.top
,b
.right
,b
.bottom
,c
,d
,e
,f
)};
894 cvox
.ActiveIndicator
.prototype.computeZoomLevel_=function(){if(window
.innerHeight
!==this.innerHeight_
||window
.innerWidth
!==this.innerWidth_
){this.innerHeight_
=window
.innerHeight
;this.innerWidth_
=window
.innerWidth
;var a
=document
.createElement("div");a
.innerHTML
="X";a
.setAttribute("style","font: 5000px/1em sans-serif !important; -webkit-text-size-adjust:none !important; visibility:hidden !important; left: -10000px !important; top: -10000px !important; position:absolute !important;");document
.body
.appendChild(a
);
895 var b
=5E3
/a.clientHeight,b=Math.round(500*b)/500;0.1<b
&&10>b
&&(this.zoom_
=b
);a
.parentNode
.removeChild(a
)}};cvox
.NodeBreadcrumb=function(){this.cvTagCounter_
=0};goog
.addSingletonGetter(cvox
.NodeBreadcrumb
);cvox
.NodeBreadcrumb
.TOUCHED_TAG
="chromevoxtag";cvox
.NodeBreadcrumb
.NEEDED_TAG_
="chromevoxneeded";
896 cvox
.NodeBreadcrumb
.prototype.tagCurrentNode=function(){for(var a
,b
=cvox
.ChromeVox
.navigationManager
.getCurrentNode();b
&&!b
.hasAttribute
;)b
=b
.parentNode
;b
?b
.hasAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
)?a
=b
.getAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
):(a
=this.cvTagCounter_
,b
.setAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
,a
),this.cvTagCounter_
++):a
=-1;return a
};
897 cvox
.NodeBreadcrumb
.prototype.smartStart_=function(a
){for(var b
=0;b
<a
.children
.length
;++b
){var c
=a
.children
[b
];this.smartStart_(c
);c
.getAttribute
&&!goog
.isNull(c
.getAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
))&&this.setNeeded_(c
)}};cvox
.NodeBreadcrumb
.prototype.setNeeded_=function(a
){a
&&a
.getAttribute
&&goog
.isNull(a
.getAttribute(cvox
.NodeBreadcrumb
.NEEDED_TAG_
))&&(a
.setAttribute(cvox
.NodeBreadcrumb
.NEEDED_TAG_
,!0),"body"!==a
.nodeName
&&this.setNeeded_(a
.parentElement
))};
898 cvox
.NodeBreadcrumb
.prototype.smartClone_=function(a
){var b
={};b
[cvox
.NodeBreadcrumb
.TOUCHED_TAG
]=!0;b
[cvox
.NodeBreadcrumb
.NEEDED_TAG_
]=!0;if(a
.getAttribute
&&a
.getAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
))return cvox
.DomUtil
.deepClone(a
,b
);for(var b
=cvox
.DomUtil
.shallowChildlessClone(a
,b
),c
=0;c
<a
.childNodes
.length
;++c
){var d
=a
.childNodes
[c
];d
.getAttribute
&&!goog
.isNull(d
.getAttribute(cvox
.NodeBreadcrumb
.NEEDED_TAG_
))&&b
.appendChild(this.smartClone_(d
))}return b
};
899 cvox
.NodeBreadcrumb
.prototype.dumpWalkedDom=function(){this.smartStart_(document
.body
);return this.smartClone_(document
.body
)};cvox
.NodeBreadcrumb
.getCurrentNodeTag=function(){for(var a
=cvox
.ChromeVox
.navigationManager
.getCurrentNode();a
&&!a
.hasAttribute
;)a
=a
.parentNode
;return a
&&a
.hasAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
)?a
.getAttribute(cvox
.NodeBreadcrumb
.TOUCHED_TAG
):-1};cvox
.HistoryEvent=function(a
){this.spoken_
=[];a
?this.userCommand_
=a
.cmd
:this.startTime_
=(new Date
).getTime()};cvox
.HistoryEvent
.prototype.withUserCommand=function(a
){if(this.userCommand_
)return window
.console
.error("Two user commands on "+a
,this),this;this.userCommand_
=a
;return this};cvox
.HistoryEvent
.prototype.speak=function(a
){this.spoken_
.push(a
);return this};
900 cvox
.HistoryEvent
.prototype.done=function(){this.endTime_
=(new Date
).getTime();cvox
.NodeBreadcrumb
.getInstance().tagCurrentNode();window
.console
.log("User command done.",this);return this};cvox
.HistoryEvent
.prototype.outputObject=function(){return{start
:this.startTime_
,end
:this.endTime_
,cmd
:this.userCommand_
,spoken
:this.spoken_
}};
901 cvox
.HistoryEvent
.prototype.outputHTML=function(){var a
=document
.createElement("div");a
.className
="cvoxHistoryEvent";var b
=this.endTime_
-this.startTime_
;a
.innerHTML
=this.userCommand_
+" ("+b
+"ms)";for(b
=0;b
<this.spoken_
.length
;b
++){var c
=document
.createElement("div");c
.className
="cvoxHistoryEventSpoken";c
.innerHTML
=this.spoken_
[b
].substr(0,20);20<this.spoken_
[b
].length
&&(c
.innerHTML
+="...");a
.appendChild(c
)}return a
};
902 cvox
.HistoryEvent
.prototype.outputJs=function(){var a
="this.waitForCalm(this.userCommand, '"+this.userCommand_
+"')";return a
=0<this.spoken_
.length
?a
+("\n .waitForCalm(this.assertSpoken, '"+cvox
.DomUtil
.collapseWhitespace(this.spoken_
.join(" "))+"');\n"):a
+";\n"};cvox
.History=function(){this.recording_
=!1;this.events_
=[];this.styleDiv_
=this.listDiv_
=this.mainDiv_
=this.currentEvent_
=null;this.nodeBreadcrumb_
=cvox
.NodeBreadcrumb
.getInstance()};goog
.addSingletonGetter(cvox
.History
);
903 cvox
.History
.prototype.addListDiv_=function(){this.mainDiv_
=document
.createElement("div");this.mainDiv_
.style
.position
="fixed";this.mainDiv_
.style
.bottom
="0";this.mainDiv_
.style
.right
="0";this.mainDiv_
.style
.zIndex
="999";this.listDiv_
=document
.createElement("div");this.listDiv_
.id
="cvoxEventList";this.mainDiv_
.appendChild(this.listDiv_
);var a
=document
.createElement("div"),b
=document
.createElement("button");b
.onclick
=cvox
.History
.sendToFeedback
;b
.innerHTML
="Create bug";a
.appendChild(b
);this.mainDiv_
.appendChild(a
);
904 a
=document
.createElement("div");b
=document
.createElement("button");b
.onclick
=cvox
.History
.dumpJs
;b
.innerHTML
="Dump test case";a
.appendChild(b
);this.mainDiv_
.appendChild(a
);document
.body
.appendChild(this.mainDiv_
);this.styleDiv_
=document
.createElement("style");this.styleDiv_
.innerHTML
=".cvoxHistoryEventSpoken { color: gray; font-size: 75% }";document
.body
.appendChild(this.styleDiv_
)};
905 cvox
.History
.prototype.removeListDiv_=function(){document
.body
.removeChild(this.mainDiv_
);document
.body
.removeChild(this.styleDiv_
);this.styleDiv_
=this.listDiv_
=this.mainDiv_
=null};
906 cvox
.History
.prototype.addBigTextBox_=function(){function a(a
,b
){var c
=document
.createElement("button");c
.onclick
=b
;c
.innerHTML
=a
;d
.appendChild(c
)}var b
=document
.createElement("div");b
.style
.position
="fixed";b
.style
.top
="0";b
.style
.left
="0";b
.style
.zIndex
="999";var c
=document
.createElement("textarea");c
.style
.width
="500px";c
.style
.height
="500px";c
.innerHTML
=this.dumpJsOutput_();b
.appendChild(c
);var d
=document
.createElement("div");b
.appendChild(d
);a("Close dialog",function(){document
.body
.removeChild(b
)});
907 a("Remove fluff",goog
.bind(function(){c
.innerHTML
=this.dumpJsOutput_(["stopSpeech","toggleKeyPrefix"])},this));document
.body
.appendChild(b
)};cvox
.History
.prototype.startRecording=function(){this.recording_
=!0;this.addListDiv_()};cvox
.History
.prototype.stopRecording=function(){this.recording_
=!1;this.removeListDiv_();this.events_
=[];this.currentEvent_
=null};
908 cvox
.History
.prototype.enterUserCommand=function(a
){this.recording_
&&(this.currentEvent_
&&window
.console
.error("User command "+a
+" overlaps current event",this.currentEvent_
),this.currentEvent_
=(new cvox
.HistoryEvent
).withUserCommand(a
),this.events_
.push(this.currentEvent_
))};cvox
.History
.prototype.exitUserCommand=function(){this.recording_
&&this.currentEvent_
&&(this.currentEvent_
.done(),this.listDiv_
.appendChild(this.currentEvent_
.outputHTML()),this.currentEvent_
=null)};
909 cvox
.History
.prototype.speak=function(a
){if(!this.recording_
)return this;if(!this.currentEvent_
)return window
.console
.error("Speak called outside of a user command."),this;this.currentEvent_
.speak(a
);return this};cvox
.History
.prototype.isSpeaking=function(){return!1};cvox
.History
.prototype.stop=function(){};cvox
.History
.prototype.increaseOrDecreaseProperty=function(){};cvox
.History
.prototype.getDefaultProperty=function(){};
910 cvox
.History
.dumpJs=function(){var a
=cvox
.History
.getInstance();a
.addBigTextBox_();window
.console
.log(a
.dumpJsOutput_())};cvox
.History
.prototype.dumpJsOutput_=function(a
){var b
={};a
&&a
.forEach(function(a
){b
[a
]=1});return["/*DOC: += ",this.nodeBreadcrumb_
.dumpWalkedDom().innerHTML
,"*/\n"].concat(this.events_
.filter(function(a
){return!(a
.userCommand_
in b
)}).map(function(a
){return a
.outputJs()})).join("")};
911 cvox
.History
.sendToFeedback=function(){var a
=cvox
.History
.getInstance(),a
=a
.events_
.map(function(a
){return a
.outputObject()}),b
=document
.createElement("script");b
.type
="text/javascript";b
.src
="https://www.gstatic.com/feedback/api.js";var c
=document
.createElement("script");c
.type
="text/javascript";c
.innerHTML
="userfeedback.api.startFeedback({ productId: '76092' }, { cvoxHistory: "+cvox
.ChromeVoxJSON
.stringify(cvox
.ChromeVoxJSON
.stringify(a
))+" });";b
.onload=function(){document
.body
.appendChild(c
)};
912 document
.body
.appendChild(b
)};cvox
.SpokenMessage=function(){this.raw
=this.id
=this.count
=null};cvox
.SpokenMessages
={};cvox
.SpokenMessages
.messages
=[];cvox
.SpokenMessages
.speakFlush=function(){cvox
.SpokenMessages
.speak(cvox
.AbstractTts
.QUEUE_MODE_FLUSH
)};cvox
.SpokenMessages
.speakQueued=function(){cvox
.SpokenMessages
.speak(cvox
.AbstractTts
.QUEUE_MODE_QUEUE
)};
913 cvox
.SpokenMessages
.speak=function(a
){for(var b
=0;b
<cvox
.SpokenMessages
.messages
.length
;++b
){var c
=cvox
.SpokenMessages
.messages
[b
];if(!c
||!c
.id
&&!c
.raw
)throw"Invalid message received.";var d
="";if(null!=c
.count
)if(0>=c
.count
)try{d
+=cvox
.ChromeVox
.msgs
.getMsg(c
.id
[0]+"_optional_default")}catch(e
){continue}else d
=1==c
.count
?d
+cvox
.ChromeVox
.msgs
.getMsg(c
.id
[0]+"_singular"):d
+cvox
.ChromeVox
.msgs
.getMsg(c
.id
[0]+"_plural",[c
.count
]);else d
=c
.raw
?d
+c
.raw
:d
+cvox
.ChromeVox
.msgs
.getMsg
.apply(cvox
.ChromeVox
.msgs
,
914 c
.id
);cvox
.ChromeVox
.tts
.speak(d
,a
,cvox
.AbstractTts
.PERSONALITY_ANNOUNCEMENT
);a
=cvox
.AbstractTts
.QUEUE_MODE_QUEUE
}cvox
.SpokenMessages
.messages
=[]};cvox
.SpokenMessages
.currentMessage=function(){if(0==cvox
.SpokenMessages
.messages
.length
)throw"Invalid usage of SpokenMessages; start the chain using $m()";return cvox
.SpokenMessages
.messages
[cvox
.SpokenMessages
.messages
.length
-1]};cvox
.SpokenMessages
.withCount=function(a
){cvox
.SpokenMessages
.currentMessage().count
=a
;return cvox
.SpokenMessages
};
915 cvox
.SpokenMessages
.andIndexTotal=function(a
,b
){var c
=new cvox
.SpokenMessage
;c
.raw
=cvox
.ChromeVox
.msgs
.getMsg("index_total",[a
,b
]);cvox
.SpokenMessages
.messages
.push(c
);return cvox
.SpokenMessages
};cvox
.SpokenMessages
.andEnd=function(){return cvox
.SpokenMessages
.andMessage("end")};cvox
.SpokenMessages
.andMessage=function(a
){var b
=new cvox
.SpokenMessage
;b
.id
="string"==typeof a
?[a
]:a
;cvox
.SpokenMessages
.messages
.push(b
);return cvox
.SpokenMessages
};
916 cvox
.SpokenMessages
.andRawMessage=function(a
){var b
=new cvox
.SpokenMessage
;b
.raw
=a
;cvox
.SpokenMessages
.messages
.push(b
);return cvox
.SpokenMessages
};cvox
.SpokenMessages
.andPause=function(){return cvox
.SpokenMessages
.andMessage("pause")};cvox
.$m
=cvox
.SpokenMessages
.andMessage
;cvox
.Widget=function(){this.active
=!1;this.initialNode
=null;cvox
.Widget
.ref_
&&cvox
.Widget
.ref_
.isActive()||(cvox
.Widget
.ref_
=this)};cvox
.Widget
.prototype.isActive=function(){return this.active
};
917 cvox
.Widget
.prototype.show=function(){this.isActive()&&this.hide(!0);this.onKeyDown
=goog
.bind(this.onKeyDown
,this);this.onKeyPress
=goog
.bind(this.onKeyPress
,this);window
.addEventListener("keydown",this.onKeyDown
,!0);window
.addEventListener("keypress",this.onKeyPress
,!0);this.initialNode
=cvox
.ChromeVox
.navigationManager
.getCurrentNode();this.isStickyOn
=cvox
.ChromeVox
.isStickyOn
;cvox
.ChromeVox
.host
.sendToBackgroundPage({target
:"Prefs",action
:"setPref",pref
:"sticky",value
:!1,announce
:!1});this.getNameMsg()&&
918 this.getHelpMsg()&&cvox
.$m(this.getNameMsg()).andPause().andMessage(this.getHelpMsg()).speakFlush();cvox
.ChromeVox
.earcons
.playEarcon(cvox
.AbstractEarcons
.OBJECT_OPEN
);this.active
=!0};
919 cvox
.Widget
.prototype.hide=function(a
){window
.removeEventListener("keypress",this.onKeyPress
,!0);window
.removeEventListener("keydown",this.onKeyDown
,!0);cvox
.ChromeVox
.host
.sendToBackgroundPage({target
:"Prefs",action
:"setPref",pref
:"sticky",value
:this.isStickyOn
,announce
:!1});cvox
.ChromeVox
.earcons
.playEarcon(cvox
.AbstractEarcons
.OBJECT_CLOSE
);a
||(this.initialNode
=1==this.initialNode
.nodeType
?this.initialNode
:this.initialNode
.parentNode
,cvox
.ApiImplementation
.syncToNode(this.initialNode
,!0,cvox
.AbstractTts
.QUEUE_MODE_QUEUE
));
920 this.active
=!1};cvox
.Widget
.prototype.toggle=function(){this.isActive()?this.hide():this.show()};cvox
.Widget
.prototype.onKeyDown=function(a
){if(27==a
.keyCode
)return this.hide(),a
.preventDefault(),!0;if(9==a
.keyCode
)return this.hide(),!0;17==a
.keyCode
&&cvox
.ChromeVox
.tts
.stop();a
.stopPropagation();return!0};cvox
.Widget
.prototype.onKeyPress=function(){return!1};cvox
.Widget
.isActive=function(){return cvox
.Widget
.ref_
&&cvox
.Widget
.ref_
.isActive()||!1};cvox
.NavDescription=function(a
){this.context
=a
.context
?a
.context
:"";this.text
=a
.text
?a
.text
:"";this.userValue
=a
.userValue
?a
.userValue
:"";this.annotation
=a
.annotation
?a
.annotation
:"";this.earcons
=a
.earcons
?a
.earcons
:[];this.personality
=a
.personality
};cvox
.NavDescription
.prototype.isEmpty=function(){return 0==this.context
.length
&&0==this.earcons
.length
&&0==this.text
.length
&&0==this.userValue
.length
&&0==this.annotation
.length
};
921 cvox
.NavDescription
.prototype.toString=function(){return'NavDescription(context="'+this.context
+'" text="'+this.text
+'" userValue="'+this.userValue
+'" annotation="'+this.annotation
+'")'};cvox
.NavDescription
.prototype.pushEarcon=function(a
){this.earcons
.push(a
)};
922 cvox
.NavDescription
.prototype.speak=function(a
,b
,c
){function d(){var a
={},b
=cvox
.AbstractTts
.PERSONALITY_ANNOTATION
,c
;for(c
in b
)a
[c
]=b
[c
];return a
}var e
=[];this.context
&&(e
.push([this.context
,a
,d()]),a
=1);e
.push([this.text
,a
,this.personality
?this.personality
:{}]);a
=1;this.userValue
&&e
.push([this.userValue
,a
,{}]);this.annotation
&&e
.push([this.annotation
,a
,d()]);a
=e
.length
;for(var f
=0;f
<a
;f
++)0==f
&&b
&&(e
[f
][2].startCallback
=b
),f
==a
-1&&c
&&(e
[f
][2].endCallback
=c
),cvox
.ChromeVox
.tts
.speak
.apply(cvox
.ChromeVox
.tts
,
923 e
[f
])};cvox
.NavDescription
.prototype.equals=function(a
){return this.context
==a
.context
&&this.text
==a
.text
&&this.userValue
==a
.userValue
&&this.annotation
==a
.annotation
};cvox
.NavMathDescription=function(a
){cvox
.NavDescription
.call(this,a
);var b
=this.personality
?this.personality
:{},c
={};c
.domain
=a
.domain
?a
.domain
:"";c
.style
=a
.style
?a
.style
:"";b
.math
=c
;this.personality
=b
};goog
.inherits(cvox
.NavMathDescription
,cvox
.NavDescription
);cvox
.SemanticUtil=function(){};cvox
.SemanticUtil
.objectsToKeys=function(a
){a
=Array
.prototype.slice
.call(arguments
,0);var b
=[];return b
.concat
.apply(b
,a
.map(Object
.keys
))};cvox
.SemanticUtil
.objectsToValues=function(a
){a
=Array
.prototype.slice
.call(arguments
,0);var b
=[],c=function(a
){for(var c
in a
)b
.push(a
[c
])};a
.forEach(c
);return b
};
924 cvox
.SemanticUtil
.unicodeToNumber=function(a
){if(!a
||2<a
.length
)return null;if(2==a
.length
){var b
=a
.charCodeAt(0);a
=a
.charCodeAt(1);return 55296<=b
&&56319>=b
&&!isNaN(a
)?1024*(b
-55296)+(a
-56320)+65536:null}return a
.charCodeAt(0)};cvox
.SemanticUtil
.numberToUnicode=function(a
){if(65536<=a
){var b
=(a
-65536)/1024+55296;a
=(a
-65536)%1024+56320;return String
.fromCharCode(b
,a
)}return String
.fromCharCode(a
)};cvox
.SemanticUtil
.tagName=function(a
){return a
.tagName
.toUpperCase()};cvox
.SemanticUtil
.IGNORETAGS
="MERROR MPHANTOM MSPACE MACTION MALIGNGROUP MALIGNMARK MACTION".split(" ");
925 cvox
.SemanticUtil
.EMPTYTAGS
=["MATH","MROW","MPADDED","MSTYLE"];cvox
.SemanticUtil
.purgeNodes=function(a
){for(var b
=[],c
=0,d
;d
=a
[c
];c
++){var e
=cvox
.SemanticUtil
.tagName(d
);-1==cvox
.SemanticUtil
.IGNORETAGS
.indexOf(e
)&&(-1!=cvox
.SemanticUtil
.EMPTYTAGS
.indexOf(e
)&&0==d
.childNodes
.length
||b
.push(d
))}return b
};cvox
.SemanticAttr=function(){this.generalPunctuations
="!\"#%&'*,:;?@\\\u00a1\u00a7\u00b6\u00b7\u00bf\u2017\u2020\u2021\u2022\u2023\u2024\u2025\u2027\u2030\u2031\u2038\u203b\u203c\u203d\u203e\u2041\u2042\u2043\u2047\u2048\u2049\u204b\u204c\u204d\u204e\u204f\u2050\u2051\u2053\u2055\u2056\u2058\u2059\u205a\u205b\u205c\u205d\u205e\ufe10\ufe13\ufe14\ufe15\ufe16\ufe30\ufe45\ufe46\ufe49\ufe4a\ufe4b\ufe4c\ufe50\ufe54\ufe55\ufe56\ufe57\ufe5f\ufe60\ufe61\ufe68\ufe6a\ufe6b\uff01\uff02\uff03\uff05\uff06\uff07\uff0a\uff0c\uff0f\uff1a\uff1b\uff1f\uff20\uff3c".split("");
926 this.invisibleComma_
=cvox
.SemanticUtil
.numberToUnicode(8291);this.generalPunctuations
.push(this.invisibleComma_
);this.ellipses
="\u2026\u22ee\u22ef\u22f0\u22f1\ufe19".split("");this.fullStops
=[".","\ufe52","\uff0e"];this.dashes
="\u2012\u2013\u2014\u2015\u301c\ufe31\ufe32\ufe58".split("");this.primes
="\u2032\u2033\u2034\u2035\u2036\u2037\u2057".split("");this.openClosePairs
={"(":")","[":"]","{":"}","\u2045":"\u2046","\u2329":"\u232a","\u2768":"\u2769","\u276a":"\u276b","\u276c":"\u276d","\u276e":"\u276f",
927 "\u2770":"\u2771","\u2772":"\u2773","\u2774":"\u2775","\u27c5":"\u27c6","\u27e6":"\u27e7","\u27e8":"\u27e9","\u27ea":"\u27eb","\u27ec":"\u27ed","\u27ee":"\u27ef","\u2983":"\u2984","\u2985":"\u2986","\u2987":"\u2988","\u2989":"\u298a","\u298b":"\u298c","\u298d":"\u298e","\u298f":"\u2990","\u2991":"\u2992","\u2993":"\u2994","\u2995":"\u2996","\u2997":"\u2998","\u29d8":"\u29d9","\u29da":"\u29db","\u29fc":"\u29fd","\u2e22":"\u2e23","\u2e24":"\u2e25","\u2e26":"\u2e27","\u2e28":"\u2e29","\u3008":"\u3009",
928 "\u300a":"\u300b","\u300c":"\u300d","\u300e":"\u300f","\u3010":"\u3011","\u3014":"\u3015","\u3016":"\u3017","\u3018":"\u3019","\u301a":"\u301b","\u301d":"\u301e","\ufd3e":"\ufd3f","\ufe17":"\ufe18","\ufe59":"\ufe5a","\ufe5b":"\ufe5c","\ufe5d":"\ufe5e","\uff08":"\uff09","\uff3b":"\uff3d","\uff5b":"\uff5d","\uff5f":"\uff60","\uff62":"\uff63","\u2308":"\u2309","\u230a":"\u230b","\u230c":"\u230d","\u230e":"\u230f","\u231c":"\u231d","\u231e":"\u231f","\u239b":"\u239e","\u239c":"\u239f","\u239d":"\u23a0",
929 "\u23a1":"\u23a4","\u23a2":"\u23a5","\u23a3":"\u23a6","\u23a7":"\u23ab","\u23a8":"\u23ac","\u23a9":"\u23ad","\u23b0":"\u23b1","\u23b8":"\u23b9"};this.topBottomPairs
={"\u23b4":"\u23b5","\u23dc":"\u23dd","\u23de":"\u23df","\u23e0":"\u23e1","\ufe35":"\ufe36","\ufe37":"\ufe38","\ufe39":"\ufe3a","\ufe3b":"\ufe3c","\ufe3d":"\ufe3e","\ufe3f":"\ufe40","\ufe41":"\ufe42","\ufe43":"\ufe44","\ufe47":"\ufe48"};this.leftFences
=cvox
.SemanticUtil
.objectsToKeys(this.openClosePairs
);this.rightFences
=cvox
.SemanticUtil
.objectsToValues(this.openClosePairs
);
930 this.rightFences
.push("\u301f");this.topFences
=cvox
.SemanticUtil
.objectsToKeys(this.topBottomPairs
);this.bottomFences
=cvox
.SemanticUtil
.objectsToValues(this.topBottomPairs
);this.neutralFences
="|\u00a6\u2016\u2758\u2980\u2af4\uffe4\uff5c".split("");this.capitalLatin
="ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("");this.smallLatin
="abcdefghijklmnopqrstuvwxyz\u0131\u0237".split("");this.capitalLatinFullWidth
="\uff21\uff22\uff23\uff24\uff25\uff26\uff27\uff28\uff29\uff2a\uff2b\uff2c\uff2d\uff2e\uff2f\uff30\uff31\uff32\uff33\uff34\uff35\uff36\uff37\uff38\uff39\uff3a".split("");
931 this.smallLatinFullWidth
="\uff41\uff42\uff43\uff44\uff45\uff46\uff47\uff48\uff49\uff4a\uff4b\uff4c\uff4d\uff4e\uff4f\uff50\uff51\uff52\uff53\uff54\uff55\uff56\uff57\uff58\uff59\uff5a".split("");this.capitalLatinBold
="\ud835\udc00 \ud835\udc01 \ud835\udc02 \ud835\udc03 \ud835\udc04 \ud835\udc05 \ud835\udc06 \ud835\udc07 \ud835\udc08 \ud835\udc09 \ud835\udc0a \ud835\udc0b \ud835\udc0c \ud835\udc0d \ud835\udc0e \ud835\udc0f \ud835\udc10 \ud835\udc11 \ud835\udc12 \ud835\udc13 \ud835\udc14 \ud835\udc15 \ud835\udc16 \ud835\udc17 \ud835\udc18 \ud835\udc19".split(" ");
932 this.smallLatinBold
="\ud835\udc1a \ud835\udc1b \ud835\udc1c \ud835\udc1d \ud835\udc1e \ud835\udc1f \ud835\udc20 \ud835\udc21 \ud835\udc22 \ud835\udc23 \ud835\udc24 \ud835\udc25 \ud835\udc26 \ud835\udc27 \ud835\udc28 \ud835\udc29 \ud835\udc2a \ud835\udc2b \ud835\udc2c \ud835\udc2d \ud835\udc2e \ud835\udc2f \ud835\udc30 \ud835\udc31 \ud835\udc32 \ud835\udc33".split(" ");this.capitalLatinItalic
="\ud835\udc34 \ud835\udc35 \ud835\udc36 \ud835\udc37 \ud835\udc38 \ud835\udc39 \ud835\udc3a \ud835\udc3b \ud835\udc3c \ud835\udc3d \ud835\udc3e \ud835\udc3f \ud835\udc40 \ud835\udc41 \ud835\udc42 \ud835\udc43 \ud835\udc44 \ud835\udc45 \ud835\udc46 \ud835\udc47 \ud835\udc48 \ud835\udc49 \ud835\udc4a \ud835\udc4b \ud835\udc4c \ud835\udc4d".split(" ");
933 this.smallLatinItalic
="\ud835\udc4e \ud835\udc4f \ud835\udc50 \ud835\udc51 \ud835\udc52 \ud835\udc53 \ud835\udc54 \u210e \ud835\udc56 \ud835\udc57 \ud835\udc58 \ud835\udc59 \ud835\udc5a \ud835\udc5b \ud835\udc5c \ud835\udc5d \ud835\udc5e \ud835\udc5f \ud835\udc60 \ud835\udc61 \ud835\udc62 \ud835\udc63 \ud835\udc64 \ud835\udc65 \ud835\udc66 \ud835\udc67 \ud835\udea4 \ud835\udea5".split(" ");this.capitalLatinScript
="\ud835\udc9c \u212c \ud835\udc9e \ud835\udc9f \u2130 \u2131 \ud835\udca2 \u210b \u2110 \ud835\udca5 \ud835\udca6 \u2112 \u2133 \ud835\udca9 \ud835\udcaa \ud835\udcab \ud835\udcac \u211b \ud835\udcae \ud835\udcaf \ud835\udcb0 \ud835\udcb1 \ud835\udcb2 \ud835\udcb3 \ud835\udcb4 \ud835\udcb5 \u2118".split(" ");
934 this.smallLatinScript
="\ud835\udcb6 \ud835\udcb7 \ud835\udcb8 \ud835\udcb9 \u212f \ud835\udcbb \u210a \ud835\udcbd \ud835\udcbe \ud835\udcbf \ud835\udcc0 \ud835\udcc1 \ud835\udcc2 \ud835\udcc3 \u2134 \ud835\udcc5 \ud835\udcc6 \ud835\udcc7 \ud835\udcc8 \ud835\udcc9 \ud835\udcca \ud835\udccb \ud835\udccc \ud835\udccd \ud835\udcce \ud835\udccf \u2113".split(" ");this.capitalLatinBoldScript
="\ud835\udcd0 \ud835\udcd1 \ud835\udcd2 \ud835\udcd3 \ud835\udcd4 \ud835\udcd5 \ud835\udcd6 \ud835\udcd7 \ud835\udcd8 \ud835\udcd9 \ud835\udcda \ud835\udcdb \ud835\udcdc \ud835\udcdd \ud835\udcde \ud835\udcdf \ud835\udce0 \ud835\udce1 \ud835\udce2 \ud835\udce3 \ud835\udce4 \ud835\udce5 \ud835\udce6 \ud835\udce7 \ud835\udce8 \ud835\udce9".split(" ");
935 this.smallLatinBoldScript
="\ud835\udcea \ud835\udceb \ud835\udcec \ud835\udced \ud835\udcee \ud835\udcef \ud835\udcf0 \ud835\udcf1 \ud835\udcf2 \ud835\udcf3 \ud835\udcf4 \ud835\udcf5 \ud835\udcf6 \ud835\udcf7 \ud835\udcf8 \ud835\udcf9 \ud835\udcfa \ud835\udcfb \ud835\udcfc \ud835\udcfd \ud835\udcfe \ud835\udcff \ud835\udd00 \ud835\udd01 \ud835\udd02 \ud835\udd03".split(" ");this.capitalLatinFraktur
="\ud835\udd04 \ud835\udd05 \u212d \ud835\udd07 \ud835\udd08 \ud835\udd09 \ud835\udd0a \u210c \u2111 \ud835\udd0d \ud835\udd0e \ud835\udd0f \ud835\udd10 \ud835\udd11 \ud835\udd12 \ud835\udd13 \ud835\udd14 \u211c \ud835\udd16 \ud835\udd17 \ud835\udd18 \ud835\udd19 \ud835\udd1a \ud835\udd1b \ud835\udd1c \u2128".split(" ");
936 this.smallLatinFraktur
="\ud835\udd1e \ud835\udd1f \ud835\udd20 \ud835\udd21 \ud835\udd22 \ud835\udd23 \ud835\udd24 \ud835\udd25 \ud835\udd26 \ud835\udd27 \ud835\udd28 \ud835\udd29 \ud835\udd2a \ud835\udd2b \ud835\udd2c \ud835\udd2d \ud835\udd2e \ud835\udd2f \ud835\udd30 \ud835\udd31 \ud835\udd32 \ud835\udd33 \ud835\udd34 \ud835\udd35 \ud835\udd36 \ud835\udd37".split(" ");this.capitalLatinDoubleStruck
="\ud835\udd38 \ud835\udd39 \u2102 \ud835\udd3b \ud835\udd3c \ud835\udd3d \ud835\udd3e \u210d \ud835\udd40 \ud835\udd41 \ud835\udd42 \ud835\udd43 \ud835\udd44 \u2115 \ud835\udd46 \u2119 \u211a \u211d \ud835\udd4a \ud835\udd4b \ud835\udd4c \ud835\udd4d \ud835\udd4e \ud835\udd4f \ud835\udd50 \u2124".split(" ");
937 this.smallLatinDoubleStruck
="\ud835\udd52 \ud835\udd53 \ud835\udd54 \ud835\udd55 \ud835\udd56 \ud835\udd57 \ud835\udd58 \ud835\udd59 \ud835\udd5a \ud835\udd5b \ud835\udd5c \ud835\udd5d \ud835\udd5e \ud835\udd5f \ud835\udd60 \ud835\udd61 \ud835\udd62 \ud835\udd63 \ud835\udd64 \ud835\udd65 \ud835\udd66 \ud835\udd67 \ud835\udd68 \ud835\udd69 \ud835\udd6a \ud835\udd6b".split(" ");this.capitalLatinBoldFraktur
="\ud835\udd6c \ud835\udd6d \ud835\udd6e \ud835\udd6f \ud835\udd70 \ud835\udd71 \ud835\udd72 \ud835\udd73 \ud835\udd74 \ud835\udd75 \ud835\udd76 \ud835\udd77 \ud835\udd78 \ud835\udd79 \ud835\udd7a \ud835\udd7b \ud835\udd7c \ud835\udd7d \ud835\udd7e \ud835\udd7f \ud835\udd80 \ud835\udd81 \ud835\udd82 \ud835\udd83 \ud835\udd84 \ud835\udd85".split(" ");
938 this.smallLatinBoldFraktur
="\ud835\udd86 \ud835\udd87 \ud835\udd88 \ud835\udd89 \ud835\udd8a \ud835\udd8b \ud835\udd8c \ud835\udd8d \ud835\udd8e \ud835\udd8f \ud835\udd90 \ud835\udd91 \ud835\udd92 \ud835\udd93 \ud835\udd94 \ud835\udd95 \ud835\udd96 \ud835\udd97 \ud835\udd98 \ud835\udd99 \ud835\udd9a \ud835\udd9b \ud835\udd9c \ud835\udd9d \ud835\udd9e \ud835\udd9f".split(" ");this.capitalLatinSansSerif
="\ud835\udda0 \ud835\udda1 \ud835\udda2 \ud835\udda3 \ud835\udda4 \ud835\udda5 \ud835\udda6 \ud835\udda7 \ud835\udda8 \ud835\udda9 \ud835\uddaa \ud835\uddab \ud835\uddac \ud835\uddad \ud835\uddae \ud835\uddaf \ud835\uddb0 \ud835\uddb1 \ud835\uddb2 \ud835\uddb3 \ud835\uddb4 \ud835\uddb5 \ud835\uddb6 \ud835\uddb7 \ud835\uddb8 \ud835\uddb9".split(" ");
939 this.smallLatinSansSerif
="\ud835\uddba \ud835\uddbb \ud835\uddbc \ud835\uddbd \ud835\uddbe \ud835\uddbf \ud835\uddc0 \ud835\uddc1 \ud835\uddc2 \ud835\uddc3 \ud835\uddc4 \ud835\uddc5 \ud835\uddc6 \ud835\uddc7 \ud835\uddc8 \ud835\uddc9 \ud835\uddca \ud835\uddcb \ud835\uddcc \ud835\uddcd \ud835\uddce \ud835\uddcf \ud835\uddd0 \ud835\uddd1 \ud835\uddd2 \ud835\uddd3".split(" ");this.capitalLatinSansSerifBold
="\ud835\uddd4 \ud835\uddd5 \ud835\uddd6 \ud835\uddd7 \ud835\uddd8 \ud835\uddd9 \ud835\uddda \ud835\udddb \ud835\udddc \ud835\udddd \ud835\uddde \ud835\udddf \ud835\udde0 \ud835\udde1 \ud835\udde2 \ud835\udde3 \ud835\udde4 \ud835\udde5 \ud835\udde6 \ud835\udde7 \ud835\udde8 \ud835\udde9 \ud835\uddea \ud835\uddeb \ud835\uddec \ud835\udded".split(" ");
940 this.smallLatinSansSerifBold
="\ud835\uddee \ud835\uddef \ud835\uddf0 \ud835\uddf1 \ud835\uddf2 \ud835\uddf3 \ud835\uddf4 \ud835\uddf5 \ud835\uddf6 \ud835\uddf7 \ud835\uddf8 \ud835\uddf9 \ud835\uddfa \ud835\uddfb \ud835\uddfc \ud835\uddfd \ud835\uddfe \ud835\uddff \ud835\ude00 \ud835\ude01 \ud835\ude02 \ud835\ude03 \ud835\ude04 \ud835\ude05 \ud835\ude06 \ud835\ude07".split(" ");this.capitalLatinSansSerifItalic
="\ud835\ude08 \ud835\ude09 \ud835\ude0a \ud835\ude0b \ud835\ude0c \ud835\ude0d \ud835\ude0e \ud835\ude0f \ud835\ude10 \ud835\ude11 \ud835\ude12 \ud835\ude13 \ud835\ude14 \ud835\ude15 \ud835\ude16 \ud835\ude17 \ud835\ude18 \ud835\ude19 \ud835\ude1a \ud835\ude1b \ud835\ude1c \ud835\ude1d \ud835\ude1e \ud835\ude1f \ud835\ude20 \ud835\ude21".split(" ");
941 this.smallLatinSansSerifItalic
="\ud835\ude22 \ud835\ude23 \ud835\ude24 \ud835\ude25 \ud835\ude26 \ud835\ude27 \ud835\ude28 \ud835\ude29 \ud835\ude2a \ud835\ude2b \ud835\ude2c \ud835\ude2d \ud835\ude2e \ud835\ude2f \ud835\ude30 \ud835\ude31 \ud835\ude32 \ud835\ude33 \ud835\ude34 \ud835\ude35 \ud835\ude36 \ud835\ude37 \ud835\ude38 \ud835\ude39 \ud835\ude3a \ud835\ude3b".split(" ");this.capitalLatinMonospace
="\ud835\ude70 \ud835\ude71 \ud835\ude72 \ud835\ude73 \ud835\ude74 \ud835\ude75 \ud835\ude76 \ud835\ude77 \ud835\ude78 \ud835\ude79 \ud835\ude7a \ud835\ude7b \ud835\ude7c \ud835\ude7d \ud835\ude7e \ud835\ude7f \ud835\ude80 \ud835\ude81 \ud835\ude82 \ud835\ude83 \ud835\ude84 \ud835\ude85 \ud835\ude86 \ud835\ude87 \ud835\ude88 \ud835\ude89".split(" ");
942 this.smallLatinMonospace
="\ud835\ude8a \ud835\ude8b \ud835\ude8c \ud835\ude8d \ud835\ude8e \ud835\ude8f \ud835\ude90 \ud835\ude91 \ud835\ude92 \ud835\ude93 \ud835\ude94 \ud835\ude95 \ud835\ude96 \ud835\ude97 \ud835\ude98 \ud835\ude99 \ud835\ude9a \ud835\ude9b \ud835\ude9c \ud835\ude9d \ud835\ude9e \ud835\ude9f \ud835\udea0 \ud835\udea1 \ud835\udea2 \ud835\udea3".split(" ");this.latinDoubleStruckItalic
=["\u2145","\u2146","\u2147","\u2148","\u2149"];this.capitalGreek
="\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039a\u039b\u039c\u039d\u039e\u039f\u03a0\u03a1\u03a3\u03a4\u03a5\u03a6\u03a7\u03a8\u03a9".split("");
943 this.smallGreek
="\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c2\u03c3\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9".split("");this.capitalGreekBold
="\ud835\udea8 \ud835\udea9 \ud835\udeaa \ud835\udeab \ud835\udeac \ud835\udead \ud835\udeae \ud835\udeaf \ud835\udeb0 \ud835\udeb1 \ud835\udeb2 \ud835\udeb3 \ud835\udeb4 \ud835\udeb5 \ud835\udeb6 \ud835\udeb7 \ud835\udeb8 \ud835\udeba \ud835\udebb \ud835\udebc \ud835\udebd \ud835\udebe \ud835\udebf \ud835\udec0".split(" ");
944 this.smallGreekBold
="\ud835\udec2 \ud835\udec3 \ud835\udec4 \ud835\udec5 \ud835\udec6 \ud835\udec7 \ud835\udec8 \ud835\udec9 \ud835\udeca \ud835\udecb \ud835\udecc \ud835\udecd \ud835\udece \ud835\udecf \ud835\uded0 \ud835\uded1 \ud835\uded2 \ud835\uded3 \ud835\uded4 \ud835\uded5 \ud835\uded6 \ud835\uded7 \ud835\uded8 \ud835\uded9 \ud835\udeda".split(" ");this.capitalGreekItalic
="\ud835\udee2 \ud835\udee3 \ud835\udee4 \ud835\udee5 \ud835\udee6 \ud835\udee7 \ud835\udee8 \ud835\udee9 \ud835\udeea \ud835\udeeb \ud835\udeec \ud835\udeed \ud835\udeee \ud835\udeef \ud835\udef0 \ud835\udef1 \ud835\udef2 \ud835\udef4 \ud835\udef5 \ud835\udef6 \ud835\udef7 \ud835\udef8 \ud835\udef9 \ud835\udefa".split(" ");
945 this.smallGreekItalic
="\ud835\udefc \ud835\udefd \ud835\udefe \ud835\udeff \ud835\udf00 \ud835\udf01 \ud835\udf02 \ud835\udf03 \ud835\udf04 \ud835\udf05 \ud835\udf06 \ud835\udf07 \ud835\udf08 \ud835\udf09 \ud835\udf0a \ud835\udf0b \ud835\udf0c \ud835\udf0d \ud835\udf0e \ud835\udf0f \ud835\udf10 \ud835\udf11 \ud835\udf12 \ud835\udf13 \ud835\udf14".split(" ");this.capitalGreekSansSerifBold
="\ud835\udf56 \ud835\udf57 \ud835\udf58 \ud835\udf59 \ud835\udf5a \ud835\udf5b \ud835\udf5c \ud835\udf5d \ud835\udf5e \ud835\udf5f \ud835\udf60 \ud835\udf61 \ud835\udf62 \ud835\udf63 \ud835\udf64 \ud835\udf65 \ud835\udf66 \ud835\udf68 \ud835\udf69 \ud835\udf6a \ud835\udf6b \ud835\udf6c \ud835\udf6d \ud835\udf6e".split(" ");
946 this.smallGreekSansSerifBold
="\ud835\udf70 \ud835\udf71 \ud835\udf72 \ud835\udf73 \ud835\udf74 \ud835\udf75 \ud835\udf76 \ud835\udf77 \ud835\udf78 \ud835\udf79 \ud835\udf7a \ud835\udf7b \ud835\udf7c \ud835\udf7d \ud835\udf7e \ud835\udf7f \ud835\udf80 \ud835\udf81 \ud835\udf82 \ud835\udf83 \ud835\udf84 \ud835\udf85 \ud835\udf86 \ud835\udf87 \ud835\udf88".split(" ");this.greekDoubleStruck
=["\u213c","\u213d","\u213e","\u213f"];this.hebrewLetters
=["\u2135","\u2136","\u2137","\u2138"];this.additions
="+\u00b1\u2213\u2214\u2227\u2228\u2229\u222a\u228c\u2293\u2294\u229d\u229e\u22a4\u22a5\u22ba\u22bb\u22bc\u22c4\u22ce\u22cf\u22d2\u22d3\u25b3\u25b7\u25bd\u25c1\u2a5e\u2295".split("");
947 this.invisiblePlus_
=cvox
.SemanticUtil
.numberToUnicode(8292);this.additions
.push(this.invisiblePlus_
);this.multiplications
="\u2020\u2021\u2210\u2217\u2218\u2219\u2240\u229a\u229b\u22a0\u22a1\u22c5\u22c6\u22c7\u22c9\u22ca\u22cb\u22cc\u25cb".split("");this.invisibleTimes_
=cvox
.SemanticUtil
.numberToUnicode(8290);this.multiplications
.push(this.invisibleTimes_
);this.subtractions
="-\u2052\u207b\u208b\u2212\u2216\u2238\u2242\u2296\u229f\u2796\u2a29\u2a2a\u2a2b\u2a2c\u2a3a\u2a41\u2a6c\ufe63\uff0d\u2010\u2011".split("");
948 this.divisions
="/\u00f7\u2044\u2215\u2298\u27cc\u29bc\u2a38".split("");this.functionApplication_
=cvox
.SemanticUtil
.numberToUnicode(8289);this.equalities
="=~\u207c\u208c\u223c\u223d\u2243\u2245\u2248\u224a\u224b\u224c\u224d\u224e\u2251\u2252\u2253\u2254\u2255\u2256\u2257\u2258\u2259\u225a\u225b\u225c\u225d\u225e\u225f\u2261\u2263\u29e4\u2a66\u2a6e\u2a6f\u2a70\u2a71\u2a72\u2a73\u2a74\u2a75\u2a76\u2a77\u2a78\u22d5\u2a6d\u2a6a\u2a6b\u2a6c\ufe66\uff1d".split("");this.inequalities
="<>\u2241\u2242\u2244\u2246\u2247\u2249\u224f\u2250\u2260\u2262\u2264\u2265\u2266\u2267\u2268\u2269\u226a\u226b\u226c\u226d\u226e\u226f\u2270\u2271\u2272\u2273\u2274\u2275\u2276\u2277\u2278\u2279\u227a\u227b\u227c\u227d\u227e\u227f\u2280\u2281\u22d6\u22d7\u22d8\u22d9\u22da\u22db\u22dc\u22dd\u22de\u22df\u22e0\u22e1\u22e2\u22e3\u22e4\u22e5\u22e6\u22e7\u22e8\u22e9\u2a79\u2a7a\u2a7b\u2a7c\u2a7d\u2a7e\u2a7f\u2a80\u2a81\u2a82\u2a83\u2a84\u2a85\u2a86\u2a87\u2a88\u2a89\u2a8a\u2a8b\u2a8c\u2a8d\u2a8e\u2a8f\u2a90\u2a91\u2a92\u2a93\u2a94\u2a95\u2a96\u2a97\u2a98\u2a99\u2a9a\u2a9b\u2a9c\u2a9d\u2a9e\u2a9f\u2aa0\u2aa1\u2aa2\u2aa3\u2aa4\u2aa5\u2aa6\u2aa7\u2aa8\u2aa9\u2aaa\u2aab\u2aac\u2aad\u2aae\u2aaf\u2ab0\u2ab1\u2ab2\u2ab3\u2ab4\u2ab5\u2ab6\u2ab7\u2ab8\u2ab9\u2aba\u2abb\u2abc\u2af7\u2af8\u2af9\u2afa\u29c0\u29c1\ufe64\ufe65\uff1c\uff1e".split("");
949 this.relations
=[];this.arrows
="\u2190\u2191\u2192\u2193\u2194\u2195\u2196\u2197\u2198\u2199\u219a\u219b\u219c\u219d\u219e\u219f\u21a0\u21a1\u21a2\u21a3\u21a4\u21a5\u21a6\u21a7\u21a8\u21a9\u21aa\u21ab\u21ac\u21ad\u21ae\u21af\u21b0\u21b1\u21b2\u21b3\u21b4\u21b5\u21b6\u21b7\u21b8\u21b9\u21ba\u21bb\u21c4\u21c5\u21c6\u21c7\u21c8\u21c9\u21ca\u21cd\u21ce\u21cf\u21d0\u21d1\u21d2\u21d3\u21d4\u21d5\u21d6\u21d7\u21d8\u21d9\u21da\u21db\u21dc\u21dd\u21de\u21df\u21e0\u21e1\u21e2\u21e3\u21e4\u21e5\u21e6\u21e7\u21e8\u21e9\u21ea\u21eb\u21ec\u21ed\u21ee\u21ef\u21f0\u21f1\u21f2\u21f3\u21f4\u21f5\u21f6\u21f7\u21f8\u21f9\u21fa\u21fb\u21fc\u21fd\u21fe\u21ff\u2301\u2303\u2304\u2324\u238b\u2794\u2798\u2799\u279a\u279b\u279c\u279d\u279e\u279f\u27a0\u27a1\u27a2\u27a3\u27a4\u27a5\u27a6\u27a7\u27a8\u27a9\u27aa\u27ab\u27ac\u27ad\u27ae\u27af\u27b1\u27b2\u27b3\u27b4\u27b5\u27b6\u27b7\u27b8\u27b9\u27ba\u27bb\u27bc\u27bd\u27be\u27f0\u27f1\u27f2\u27f3\u27f4\u27f5\u27f6\u27f7\u27f8\u27f9\u27fa\u27fb\u27fc\u27fd\u27fe\u27ff\u2900\u2901\u2902\u2903\u2904\u2905\u2906\u2907\u2908\u2909\u290a\u290b\u290c\u290d\u290e\u290f\u2910\u2911\u2912\u2913\u2914\u2915\u2916\u2917\u2918\u2919\u291a\u291b\u291c\u291d\u291e\u291f\u2920\u2921\u2922\u2923\u2924\u2925\u2926\u2927\u2928\u2929\u292a\u292d\u292e\u292f\u2930\u2931\u2932\u2933\u2934\u2935\u2936\u2937\u2938\u2939\u293a\u293b\u293c\u293d\u293e\u293f\u2940\u2941\u2942\u2943\u2944\u2945\u2946\u2947\u2948\u2949\u2970\u2971\u2972\u2973\u2974\u2975\u2976\u2977\u2978\u2979\u297a\u297b\u29b3\u29b4\u29bd\u29ea\u29ec\u29ed\u2a17\u2b00\u2b01\u2b02\u2b03\u2b04\u2b05\u2b06\u2b07\u2b08\u2b09\u2b0a\u2b0b\u2b0c\u2b0d\u2b0e\u2b0f\u2b10\u2b11\u2b30\u2b31\u2b32\u2b33\u2b34\u2b35\u2b36\u2b37\u2b38\u2b39\u2b3a\u2b3b\u2b3c\u2b3d\u2b3e\u2b3f\u2b40\u2b41\u2b42\u2b43\u2b44\u2b45\u2b46\u2b47\u2b48\u2b49\u2b4a\u2b4b\u2b4c\uffe9\uffea\uffeb\uffec\u21bc\u21bd\u21be\u21bf\u21c0\u21c1\u21c2\u21c3\u21cb\u21cc\u294a\u294b\u294c\u294d\u294e\u294f\u2950\u2951\u2952\u2953\u2954\u2955\u2956\u2957\u2958\u2959\u295a\u295b\u295c\u295d\u295e\u295f\u2960\u2961\u2962\u2963\u2964\u2965\u2966\u2967\u2968\u2969\u296a\u296b\u296c\u296d\u296e\u296f\u297c\u297d\u297e\u297f".split("");
950 this.sumOps
="\u2140\u220f\u2210\u2211\u22c0\u22c1\u22c2\u22c3\u2a00\u2a01\u2a02\u2a03\u2a04\u2a05\u2a06\u2a07\u2a08\u2a09\u2a0a\u2a0b\u2afc\u2aff".split("");this.intOps
="\u222b\u222c\u222d\u222e\u222f\u2230\u2231\u2232\u2233\u2a0c\u2a0d\u2a0e\u2a0f\u2a10\u2a11\u2a12\u2a13\u2a14\u2a15\u2a16\u2a17\u2a18\u2a19\u2a1a\u2a1b\u2a1c".split("");this.prefixOps
=["\u2200","\u2203"];this.digitsNormal
="0123456789".split("");this.digitsFullWidth
="\uff10\uff11\uff12\uff13\uff14\uff15\uff16\uff17\uff18\uff19".split("");
951 this.digitsBold
="\ud835\udfce \ud835\udfcf \ud835\udfd0 \ud835\udfd1 \ud835\udfd2 \ud835\udfd3 \ud835\udfd4 \ud835\udfd5 \ud835\udfd6 \ud835\udfd7".split(" ");this.digitsDoubleStruck
="\ud835\udfd8 \ud835\udfd9 \ud835\udfda \ud835\udfdb \ud835\udfdc \ud835\udfdd \ud835\udfde \ud835\udfdf \ud835\udfe0 \ud835\udfe1".split(" ");this.digitsSansSerif
="\ud835\udfe2 \ud835\udfe3 \ud835\udfe4 \ud835\udfe5 \ud835\udfe6 \ud835\udfe7 \ud835\udfe8 \ud835\udfe9 \ud835\udfea \ud835\udfeb".split(" ");this.digitsSansSerifBold
=
952 "\ud835\udfec \ud835\udfed \ud835\udfee \ud835\udfef \ud835\udff0 \ud835\udff1 \ud835\udff2 \ud835\udff3 \ud835\udff4 \ud835\udff5".split(" ");this.digitsMonospace
="\ud835\udff6 \ud835\udff7 \ud835\udff8 \ud835\udff9 \ud835\udffa \ud835\udffb \ud835\udffc \ud835\udffd \ud835\udffe \ud835\udfff".split(" ");this.digitsSuperscript
="\u00b2\u00b3\u00b9\u2070\u2074\u2075\u2076\u2077\u2078\u2079".split("");this.digitsSubscript
="\u2080\u2081\u2082\u2083\u2084\u2085\u2086\u2087\u2088\u2089".split("");this.fractions
=
953 "\u00bc\u00bd\u00be\u2150\u2151\u2152\u2153\u2154\u2155\u2156\u2157\u2158\u2159\u215a\u215b\u215c\u215d\u215e\u215f\u2189".split("");this.enclosedNumbers
="\u2460\u2461\u2462\u2463\u2464\u2465\u2466\u2467\u2468\u2469\u246a\u246b\u246c\u246d\u246e\u246f\u2470\u2471\u2472\u2473\u24ea\u24eb\u24ec\u24ed\u24ee\u24ef\u24f0\u24f1\u24f2\u24f3\u24f4\u24f5\u24f6\u24f7\u24f8\u24f9\u24fa\u24fb\u24fc\u24fd\u24fe\u24ff\u2776\u2777\u2778\u2779\u277a\u277b\u277c\u277d\u277e\u277f\u2780\u2781\u2782\u2783\u2784\u2785\u2786\u2787\u2788\u2789\u278a\u278b\u278c\u278d\u278e\u278f\u2790\u2791\u2792\u2793\u3248\u3249\u324a\u324b\u324c\u324d\u324e\u324f\u3251\u3252\u3253\u3254\u3255\u3256\u3257\u3258\u3259\u325a\u325b\u325c\u325d\u325e\u325f\u32b1\u32b2\u32b3\u32b4\u32b5\u32b6\u32b7\u32b8\u32b9\u32ba\u32bb\u32bc\u32bd\u32be\u32bf".split("");
954 this.fencedNumbers
="\u2474\u2475\u2476\u2477\u2478\u2479\u247a\u247b\u247c\u247d\u247e\u247f\u2480\u2481\u2482\u2483\u2484\u2485\u2486\u2487".split("");this.punctuatedNumbers
="\u2488 \u2489 \u248a \u248b \u248c \u248d \u248e \u248f \u2490 \u2491 \u2492 \u2493 \u2494 \u2495 \u2496 \u2497 \u2498 \u2499 \u249a \u249b \ud83c\udd00 \ud83c\udd01 \ud83c\udd02 \ud83c\udd03 \ud83c\udd04 \ud83c\udd05 \ud83c\udd06 \ud83c\udd07 \ud83c\udd08 \ud83c\udd09 \ud83c\udd0a".split(" ");this.numbers
=this.fractions
.concat(this.digitsSuperscript
,
955 this.digitsSubscript
,this.enclosedNumbers
,this.fencedNumbers
,this.punctuatedNumbers
);this.trigonometricFunctions
="cos cot csc sec sin tan arccos arccot arccsc arcsec arcsin arctan".split(" ");this.hyperbolicFunctions
="cosh coth csch sech sinh tanh arcosh arcoth arcsch arsech arsinh artanh arccosh arccoth arccsch arcsech arcsinh arctanh".split(" ");this.algebraicFunctions
="deg det dim hom ker Tr tr".split(" ");this.elementaryFunctions
="log ln lg exp expt gcd gcd arg im re Pr".split(" ");this.prefixFunctions
=
956 this.trigonometricFunctions
.concat(this.hyperbolicFunctions
,this.algebraicFunctions
,this.elementaryFunctions
);this.limitFunctions
="inf lim liminf limsup max min sup injlim projlim".split(" ");this.infixFunctions
=["mod","rem"];this.symbolSetToSemantic_
=[{set:this.generalPunctuations
,type
:cvox
.SemanticAttr
.Type
.PUNCTUATION
,role
:cvox
.SemanticAttr
.Role
.UNKNOWN
},{set:this.ellipses
,type
:cvox
.SemanticAttr
.Type
.PUNCTUATION
,role
:cvox
.SemanticAttr
.Role
.ELLIPSIS
},{set:this.fullStops
,type
:cvox
.SemanticAttr
.Type
.PUNCTUATION
,
957 role
:cvox
.SemanticAttr
.Role
.FULLSTOP
},{set:this.dashes
,type
:cvox
.SemanticAttr
.Type
.PUNCTUATION
,role
:cvox
.SemanticAttr
.Role
.DASH
},{set:this.primes
,type
:cvox
.SemanticAttr
.Type
.PUNCTUATION
,role
:cvox
.SemanticAttr
.Role
.PRIME
},{set:this.leftFences
,type
:cvox
.SemanticAttr
.Type
.FENCE
,role
:cvox
.SemanticAttr
.Role
.OPEN
},{set:this.rightFences
,type
:cvox
.SemanticAttr
.Type
.FENCE
,role
:cvox
.SemanticAttr
.Role
.CLOSE
},{set:this.topFences
,type
:cvox
.SemanticAttr
.Type
.FENCE
,role
:cvox
.SemanticAttr
.Role
.TOP
},{set:this.bottomFences
,
958 type
:cvox
.SemanticAttr
.Type
.FENCE
,role
:cvox
.SemanticAttr
.Role
.BOTTOM
},{set:this.neutralFences
,type
:cvox
.SemanticAttr
.Type
.FENCE
,role
:cvox
.SemanticAttr
.Role
.NEUTRAL
},{set:this.smallLatin
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.capitalLatin
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.smallLatinFullWidth
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,
959 role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.capitalLatinFullWidth
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.smallLatinBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLD
},{set:this.capitalLatinBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLD
},
960 {set:this.smallLatinItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.ITALIC
},{set:this.capitalLatinItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.ITALIC
},{set:this.smallLatinScript
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SCRIPT
},{set:this.capitalLatinScript
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,
961 font
:cvox
.SemanticAttr
.Font
.SCRIPT
},{set:this.smallLatinBoldScript
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLDSCRIPT
},{set:this.capitalLatinBoldScript
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLDSCRIPT
},{set:this.smallLatinFraktur
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.FRAKTUR
},{set:this.capitalLatinFraktur
,
962 type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.FRAKTUR
},{set:this.smallLatinDoubleStruck
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.DOUBLESTRUCK
},{set:this.capitalLatinDoubleStruck
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.DOUBLESTRUCK
},{set:this.smallLatinBoldFraktur
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,
963 font
:cvox
.SemanticAttr
.Font
.BOLDFRAKTUR
},{set:this.capitalLatinBoldFraktur
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLDFRAKTUR
},{set:this.smallLatinSansSerif
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIF
},{set:this.capitalLatinSansSerif
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIF
},{set:this.smallLatinSansSerifBold
,
964 type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFBOLD
},{set:this.capitalLatinSansSerifBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFBOLD
},{set:this.smallLatinSansSerifItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFITALIC
},{set:this.capitalLatinSansSerifItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,
965 role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFITALIC
},{set:this.smallLatinMonospace
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.MONOSPACE
},{set:this.capitalLatinMonospace
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.MONOSPACE
},{set:this.latinDoubleStruckItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.LATINLETTER
,font
:cvox
.SemanticAttr
.Font
.DOUBLESTRUCKITALIC
},
966 {set:this.smallGreek
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.capitalGreek
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.smallGreekBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.BOLD
},{set:this.capitalGreekBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,
967 font
:cvox
.SemanticAttr
.Font
.BOLD
},{set:this.smallGreekItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.ITALIC
},{set:this.capitalGreekItalic
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.ITALIC
},{set:this.smallGreekSansSerifBold
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFBOLD
},{set:this.capitalGreekSansSerifBold
,
968 type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFBOLD
},{set:this.greekDoubleStruck
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.GREEKLETTER
,font
:cvox
.SemanticAttr
.Font
.DOUBLESTRUCK
},{set:this.hebrewLetters
,type
:cvox
.SemanticAttr
.Type
.IDENTIFIER
,role
:cvox
.SemanticAttr
.Role
.OTHERLETTER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.digitsNormal
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,
969 font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.digitsFullWidth
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,font
:cvox
.SemanticAttr
.Font
.NORMAL
},{set:this.digitsBold
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,font
:cvox
.SemanticAttr
.Font
.BOLD
},{set:this.digitsDoubleStruck
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,font
:cvox
.SemanticAttr
.Font
.DOUBLESTRUCK
},{set:this.digitsSansSerif
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,
970 font
:cvox
.SemanticAttr
.Font
.SANSSERIF
},{set:this.digitsSansSerifBold
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,font
:cvox
.SemanticAttr
.Font
.SANSSERIFBOLD
},{set:this.digitsMonospace
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
,font
:cvox
.SemanticAttr
.Font
.MONOSPACE
},{set:this.numbers
,type
:cvox
.SemanticAttr
.Type
.NUMBER
,role
:cvox
.SemanticAttr
.Role
.INTEGER
},{set:this.additions
,type
:cvox
.SemanticAttr
.Type
.OPERATOR
,role
:cvox
.SemanticAttr
.Role
.ADDITION
},
971 {set:this.multiplications
,type
:cvox
.SemanticAttr
.Type
.OPERATOR
,role
:cvox
.SemanticAttr
.Role
.MULTIPLICATION
},{set:this.subtractions
,type
:cvox
.SemanticAttr
.Type
.OPERATOR
,role
:cvox
.SemanticAttr
.Role
.SUBTRACTION
},{set:this.divisions
,type
:cvox
.SemanticAttr
.Type
.OPERATOR
,role
:cvox
.SemanticAttr
.Role
.DIVISION
},{set:this.prefixOps
,type
:cvox
.SemanticAttr
.Type
.PREFIXOP
,role
:cvox
.SemanticAttr
.Role
.PREFIXFUNC
},{set:this.equalities
,type
:cvox
.SemanticAttr
.Type
.RELATION
,role
:cvox
.SemanticAttr
.Role
.EQUALITY
},{set:this.inequalities
,
972 type
:cvox
.SemanticAttr
.Type
.RELATION
,role
:cvox
.SemanticAttr
.Role
.INEQUALITY
},{set:this.relations
,type
:cvox
.SemanticAttr
.Type
.RELATION
,role
:cvox
.SemanticAttr
.Role
.UNKNOWN
},{set:this.arrows
,type
:cvox
.SemanticAttr
.Type
.RELATION
,role
:cvox
.SemanticAttr
.Role
.ARROW
},{set:this.sumOps
,type
:cvox
.SemanticAttr
.Type
.LARGEOP
,role
:cvox
.SemanticAttr
.Role
.SUM
},{set:this.intOps
,type
:cvox
.SemanticAttr
.Type
.LARGEOP
,role
:cvox
.SemanticAttr
.Role
.INTEGRAL
},{set:this.limitFunctions
,type
:cvox
.SemanticAttr
.Type
.FUNCTION
,role
:cvox
.SemanticAttr
.Role
.LIMFUNC
},
973 {set:this.prefixFunctions
,type
:cvox
.SemanticAttr
.Type
.FUNCTION
,role
:cvox
.SemanticAttr
.Role
.PREFIXFUNC
},{set:this.infixFunctions
,type
:cvox
.SemanticAttr
.Type
.OPERATOR
,role
:cvox
.SemanticAttr
.Role
.MULTIPLICATION
}]};goog
.addSingletonGetter(cvox
.SemanticAttr
);
974 cvox
.SemanticAttr
.Type
={PUNCTUATION
:"punctuation",FENCE
:"fence",NUMBER
:"number",IDENTIFIER
:"identifier",TEXT
:"text",OPERATOR
:"operator",RELATION
:"relation",LARGEOP
:"largeop",FUNCTION
:"function",ACCENT
:"accent",FENCED
:"fenced",FRACTION
:"fraction",PUNCTUATED
:"punctuated",RELSEQ
:"relseq",MULTIREL
:"multirel",INFIXOP
:"infixop",PREFIXOP
:"prefixop",POSTFIXOP
:"postfixop",APPL
:"appl",INTEGRAL
:"integral",BIGOP
:"bigop",SQRT
:"sqrt",ROOT
:"root",LIMUPPER
:"limupper",LIMLOWER
:"limlower",LIMBOTH
:"limboth",SUBSCRIPT
:"subscript",
975 SUPERSCRIPT
:"superscript",UNDERSCORE
:"underscore",OVERSCORE
:"overscore",TABLE
:"table",MULTILINE
:"multiline",MATRIX
:"matrix",VECTOR
:"vector",CASES
:"cases",ROW
:"row",LINE
:"line",CELL
:"cell",UNKNOWN
:"unknown",EMPTY
:"empty"};
976 cvox
.SemanticAttr
.Role
={ELLIPSIS
:"ellipsis",FULLSTOP
:"fullstop",DASH
:"dash",PRIME
:"prime",VBAR
:"vbar",OPENFENCE
:"openfence",CLOSEFENCE
:"closefence",APPLICATION
:"application",OPEN
:"open",CLOSE
:"close",TOP
:"top",BOTTOM
:"bottom",NEUTRAL
:"neutral",LATINLETTER
:"latinletter",GREEKLETTER
:"greekletter",OTHERLETTER
:"otherletter",INTEGER
:"integer",FLOAT
:"float",OTHERNUMBER
:"othernumber",MULTIACCENT
:"multiaccent",OVERACCENT
:"overaccent",UNDERACCENT
:"underaccent",LEFTRIGHT
:"leftright",ABOVEBELOW
:"abovebelow",
977 SEQUENCE
:"sequence",ENDPUNCT
:"endpunct",STARTPUNCT
:"startpunct",NEGATIVE
:"negative",NEGATION
:"negation",MULTIOP
:"multiop",LIMFUNC
:"limit function",INFIXFUNC
:"infix function",PREFIXFUNC
:"prefix function",POSTFIXFUNC
:"postfix function",SUM
:"sum",INTEGRAL
:"integral",ADDITION
:"addition",MULTIPLICATION
:"multiplication",DIVISION
:"division",SUBTRACTION
:"subtraction",IMPLICIT
:"implicit",EQUALITY
:"equality",INEQUALITY
:"inequality",ELEMENT
:"element",BINREL
:"binrel",ARROW
:"arrow",MULTILINE
:"multiline",MATRIX
:"matrix",
978 VECTOR
:"vector",CASES
:"cases",TABLE
:"table",UNKNOWN
:"unknown"};cvox
.SemanticAttr
.Font
={BOLD
:"bold",BOLDFRAKTUR
:"bold-fraktur",BOLDITALIC
:"bold-italic",BOLDSCRIPT
:"bold-script",DOUBLESTRUCK
:"double-struck",DOUBLESTRUCKITALIC
:"double-struck-italic",FRAKTUR
:"fraktur",ITALIC
:"italic",MONOSPACE
:"monospace",NORMAL
:"normal",SCRIPT
:"script",SANSSERIF
:"sans-serif",SANSSERIFITALIC
:"sans-serif-italic",SANSSERIFBOLD
:"sans-serif-bold",SANSSERIFBOLDITALIC
:"sans-serif-bold-italic",UNKNOWN
:"unknown"};
979 cvox
.SemanticAttr
.lookupMeaning=function(a
){return cvox
.SemanticAttr
.getInstance().lookupMeaning_(a
)};cvox
.SemanticAttr
.invisibleTimes=function(){return cvox
.SemanticAttr
.getInstance().invisibleTimes_
};cvox
.SemanticAttr
.invisibleComma=function(){return cvox
.SemanticAttr
.getInstance().invisibleComma_
};cvox
.SemanticAttr
.functionApplication=function(){return cvox
.SemanticAttr
.getInstance().functionApplication_
};
980 cvox
.SemanticAttr
.isMatchingFenceRole=function(a
,b
){return a
==cvox
.SemanticAttr
.Role
.OPEN
&&b
==cvox
.SemanticAttr
.Role
.CLOSE
||a
==cvox
.SemanticAttr
.Role
.NEUTRAL
&&b
==cvox
.SemanticAttr
.Role
.NEUTRAL
||a
==cvox
.SemanticAttr
.Role
.TOP
&&b
==cvox
.SemanticAttr
.Role
.BOTTOM
};cvox
.SemanticAttr
.isMatchingFence=function(a
,b
){return cvox
.SemanticAttr
.getInstance().isMatchingFence_(a
,b
)};cvox
.SemanticAttr
.isOpeningFence=function(a
){return a
==cvox
.SemanticAttr
.Role
.OPEN
||a
==cvox
.SemanticAttr
.Role
.NEUTRAL
};
981 cvox
.SemanticAttr
.isClosingFence=function(a
){return a
==cvox
.SemanticAttr
.Role
.CLOSE
||a
==cvox
.SemanticAttr
.Role
.NEUTRAL
};cvox
.SemanticAttr
.isCharacterD=function(a
){var b
="d \u2146 \uff44 \ud835\udc1d \ud835\udc51 \ud835\udcb9 \ud835\udced \ud835\udd21 \ud835\udd55 \ud835\udd89 \ud835\uddbd \ud835\uddf1 \ud835\ude25 \ud835\ude8d".split(" ");return-1!=b
.indexOf(a
)};
982 cvox
.SemanticAttr
.prototype.isMatchingFence_=function(a
,b
){return-1!=this.neutralFences
.indexOf(a
)?a
==b
:this.openClosePairs
[a
]==b
||this.topBottomPairs
[a
]==b
};
983 cvox
.SemanticAttr
.prototype.lookupMeaning_=function(a
){for(var b
=0,c
;c
=this.symbolSetToSemantic_
[b
];b
++)if(-1!=c
.set.indexOf(a
))return{role
:c
.role
||cvox
.SemanticAttr
.Role
.UNKNOWN
,type
:c
.type
||cvox
.SemanticAttr
.Type
.UNKNOWN
,font
:c
.font
||cvox
.SemanticAttr
.Font
.UNKNOWN
};return{role
:cvox
.SemanticAttr
.Role
.UNKNOWN
,type
:cvox
.SemanticAttr
.Type
.UNKNOWN
,font
:cvox
.SemanticAttr
.Font
.UNKNOWN
}};cvox
.SemanticTree=function(a
){this.idCounter_
=0;this.mathml
=a
;this.root
=this.parseMathml_(a
)};cvox
.SemanticTree
.Node=function(a
){this.id
=a
;this.mathml
=[];this.parent
=null;this.type
=cvox
.SemanticAttr
.Type
.UNKNOWN
;this.role
=cvox
.SemanticAttr
.Role
.UNKNOWN
;this.font
=cvox
.SemanticAttr
.Font
.UNKNOWN
;this.childNodes
=[];this.textContent
="";this.contentNodes
=[]};
984 cvox
.SemanticTree
.Node
.prototype.querySelectorAll=function(a
){for(var b
=[],c
=0,d
;d
=this.childNodes
[c
];c
++)b
=b
.concat(d
.querySelectorAll(a
));a(this)&&b
.unshift(this);return b
};cvox
.SemanticTree
.prototype.xml=function(a
){var b
=new DOMParser
,b
=b
.parseFromString("<stree></stree>","text/xml");a
=this.root
.xml(b
,a
);b
.childNodes
[0].appendChild(a
);return b
.childNodes
[0]};
985 cvox
.SemanticTree
.Node
.prototype.xml=function(a
,b
){var c=function(c
,d
){for(var g
=d
.map(function(c
){return c
.xml(a
,b
)}),h
=a
.createElement(c
),k
=0,l
;l
=g
[k
];k
++)h
.appendChild(l
);return h
},d
=a
.createElement(this.type
);b
||this.xmlAttributes_(d
);d
.textContent
=this.textContent
;0<this.contentNodes
.length
&&d
.appendChild(c("content",this.contentNodes
));0<this.childNodes
.length
&&d
.appendChild(c("children",this.childNodes
));return d
};cvox
.SemanticTree
.prototype.toString=function(a
){var b
=new XMLSerializer
;return b
.serializeToString(this.xml(a
))};
986 cvox
.SemanticTree
.prototype.formatXml=function(a
){a
=this.toString(a
);return cvox
.SemanticTree
.formatXml(a
)};cvox
.SemanticTree
.formatXml=function(a
){var b
=/(>)(<)(\/*)/g;a
=a
.replace(b
,"$1\r\n$2$3");b
=/(>)(.+)(<c)/g;a
=a
.replace(b
,"$1\r\n$2\r\n$3");var c
="",d
="";a
.split("\r\n").forEach(function(a
){a
.match(/.+<\/\w[^>]*>$/)?c
+=d
+a
+"\r\n":a
.match(/^<\/\w/)?d
&&(d
=d
.slice(2),c
+=d
+a
+"\r\n"):a
.match(/^<\w[^>]*[^\/]>.*$/)?(c
+=d
+a
+"\r\n",d
+=" "):c
+=d
+a
+"\r\n"});return c
};
987 cvox
.SemanticTree
.Node
.prototype.toString=function(a
){var b
=new XMLSerializer
,c
=new DOMParser
,c
=c
.parseFromString("","text/xml");return b
.serializeToString(this.xml(c
,a
))};cvox
.SemanticTree
.Node
.prototype.xmlAttributes_=function(a
){a
.setAttribute("role",this.role
);this.font
!=cvox
.SemanticAttr
.Font
.UNKNOWN
&&a
.setAttribute("font",this.font
);a
.setAttribute("id",this.id
)};cvox
.SemanticTree
.prototype.createNode_=function(){return new cvox
.SemanticTree
.Node(this.idCounter_
++)};
988 cvox
.SemanticTree
.Node
.prototype.updateContent_=function(a
){a
=a
.trim();if(this.textContent
!=a
){var b
=cvox
.SemanticAttr
.lookupMeaning(a
);this.textContent
=a
;this.role
=b
.role
;this.type
=b
.type
;this.font
=b
.font
}};cvox
.SemanticTree
.Node
.prototype.addMathmlNodes_=function(a
){for(var b
=0,c
;c
=a
[b
];b
++)-1==this.mathml
.indexOf(c
)&&this.mathml
.push(c
)};cvox
.SemanticTree
.Node
.prototype.appendChild_=function(a
){this.childNodes
.push(a
);this.addMathmlNodes_(a
.mathml
);a
.parent
=this};
989 cvox
.SemanticTree
.Node
.prototype.appendContentNode_=function(a
){a
&&(this.contentNodes
.push(a
),this.addMathmlNodes_(a
.mathml
),a
.parent
=this)};
990 cvox
.SemanticTree
.prototype.parseMathml_=function(a
){var b
=cvox
.DomUtil
.toArray(a
.children
);switch(cvox
.SemanticUtil
.tagName(a
)){case "MATH":case "MROW":case "MPADDED":case "MSTYLE":return b
=cvox
.SemanticUtil
.purgeNodes(b
),1==b
.length
?this.parseMathml_(b
[0]):this.processRow_(this.parseMathmlChildren_(b
));case "MFRAC":return a
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.FRACTION
,[this.parseMathml_(b
[0]),this.parseMathml_(b
[1])],[]),a
.role
=cvox
.SemanticAttr
.Role
.DIVISION
,a
;case "MSUB":case "MSUP":case "MSUBSUP":case "MOVER":case "MUNDER":case "MUNDEROVER":return this.makeLimitNode_(cvox
.SemanticUtil
.tagName(a
),
991 this.parseMathmlChildren_(b
));case "MROOT":return this.makeBranchNode_(cvox
.SemanticAttr
.Type
.ROOT
,[this.parseMathml_(b
[0]),this.parseMathml_(b
[1])],[]);case "MSQRT":return b
=this.parseMathmlChildren_(cvox
.SemanticUtil
.purgeNodes(b
)),this.makeBranchNode_(cvox
.SemanticAttr
.Type
.SQRT
,[this.processRow_(b
)],[]);case "MTABLE":return a
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.TABLE
,this.parseMathmlChildren_(b
),[]),cvox
.SemanticTree
.tableIsMultiline_(a
)&&this.tableToMultiline_(a
),a
;case "MTR":return a
=
992 this.makeBranchNode_(cvox
.SemanticAttr
.Type
.ROW
,this.parseMathmlChildren_(b
),[]),a
.role
=cvox
.SemanticAttr
.Role
.TABLE
,a
;case "MTD":return b
=this.parseMathmlChildren_(cvox
.SemanticUtil
.purgeNodes(b
)),a
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.CELL
,[this.processRow_(b
)],[]),a
.role
=cvox
.SemanticAttr
.Role
.TABLE
,a
;case "MTEXT":return a
=this.makeLeafNode_(a
),a
.type
=cvox
.SemanticAttr
.Type
.TEXT
,a
;case "MI":return a
=this.makeLeafNode_(a
),a
.type
==cvox
.SemanticAttr
.Type
.UNKNOWN
&&(a
.type
=cvox
.SemanticAttr
.Type
.IDENTIFIER
),
993 a
;case "MN":return a
=this.makeLeafNode_(a
),a
.type
==cvox
.SemanticAttr
.Type
.UNKNOWN
&&(a
.type
=cvox
.SemanticAttr
.Type
.NUMBER
),a
;case "MO":return a
=this.makeLeafNode_(a
),a
.type
==cvox
.SemanticAttr
.Type
.UNKNOWN
&&(a
.type
=cvox
.SemanticAttr
.Type
.OPERATOR
),a
;default:return this.makeUnprocessed_(a
)}};cvox
.SemanticTree
.prototype.parseMathmlChildren_=function(a
){for(var b
=[],c
=0,d
;d
=a
[c
];c
++)b
.push(this.parseMathml_(d
));return b
};
994 cvox
.SemanticTree
.prototype.makeUnprocessed_=function(a
){var b
=this.createNode_();b
.mathml
=[a
];return b
};cvox
.SemanticTree
.prototype.makeEmptyNode_=function(){var a
=this.createNode_();a
.type
=cvox
.SemanticAttr
.Type
.EMPTY
;return a
};cvox
.SemanticTree
.prototype.makeLeafNode_=function(a
){var b
=this.createNode_();b
.mathml
=[a
];b
.updateContent_(a
.textContent
);b
.font
=a
.getAttribute("mathvariant")||b
.font
;return b
};
995 cvox
.SemanticTree
.prototype.makeBranchNode_=function(a
,b
,c
,d
){var e
=this.createNode_();d
&&e
.updateContent_(d
);e
.type
=a
;e
.childNodes
=b
;e
.contentNodes
=c
;b
.concat(c
).forEach(function(a
){a
.parent
=e
;e
.addMathmlNodes_(a
.mathml
)});return e
};cvox
.SemanticTree
.prototype.makeImplicitNode_=function(a
){if(1==a
.length
)return a
[0];var b
=this.createNode_();b
.updateContent_(cvox
.SemanticAttr
.invisibleTimes());a
=this.makeInfixNode_(a
,b
);a
.role
=cvox
.SemanticAttr
.Role
.IMPLICIT
;return a
};
996 cvox
.SemanticTree
.prototype.makeInfixNode_=function(a
,b
){return this.makeBranchNode_(cvox
.SemanticAttr
.Type
.INFIXOP
,a
,[b
],b
.textContent
)};cvox
.SemanticTree
.prototype.makeConcatNode_=function(a
,b
,c
){if(0==b
.length
)return a
;var d
=b
.map(function(a
){return a
.textContent
}).join(" ");a
=this.makeBranchNode_(c
,[a
],b
,d
);0<b
.length
&&(a
.role
=cvox
.SemanticAttr
.Role
.MULTIOP
);return a
};
997 cvox
.SemanticTree
.prototype.makePrefixNode_=function(a
,b
){for(var c
=cvox
.SemanticTree
.partitionNodes_(b
,cvox
.SemanticTree
.attrPred_("role","SUBTRACTION")),d
=this.makeConcatNode_(a
,c
.comp
.pop(),cvox
.SemanticAttr
.Type
.PREFIXOP
);0<c
.rel
.length
;)d
=this.makeConcatNode_(d
,[c
.rel
.pop()],cvox
.SemanticAttr
.Type
.PREFIXOP
),d
.role
=cvox
.SemanticAttr
.Role
.NEGATIVE
,d
=this.makeConcatNode_(d
,c
.comp
.pop(),cvox
.SemanticAttr
.Type
.PREFIXOP
);return d
};
998 cvox
.SemanticTree
.prototype.makePostfixNode_=function(a
,b
){return this.makeConcatNode_(a
,b
,cvox
.SemanticAttr
.Type
.POSTFIXOP
)};cvox
.SemanticTree
.prototype.processRow_=function(a
){if(0==a
.length
)return this.makeEmptyNode_();a
=this.getFencesInRow_(a
);a
=this.processTablesInRow_(a
);a
=this.getPunctuationInRow_(a
);a
=this.getFunctionsInRow_(a
);return this.processRelationsInRow_(a
)};
999 cvox
.SemanticTree
.prototype.processRelationsInRow_=function(a
){var b
=cvox
.SemanticTree
.partitionNodes_(a
,cvox
.SemanticTree
.attrPred_("type","RELATION")),c
=b
.rel
[0];if(!c
)return this.processOperationsInRow_(a
);if(1==a
.length
)return a
[0];a
=b
.comp
.map(goog
.bind(this.processOperationsInRow_
,this));return b
.rel
.every(function(a
){return a
.textContent
==c
.textContent
})?this.makeBranchNode_(cvox
.SemanticAttr
.Type
.RELSEQ
,a
,b
.rel
,c
.textContent
):this.makeBranchNode_(cvox
.SemanticAttr
.Type
.MULTIREL
,a
,b
.rel
)};
1000 cvox
.SemanticTree
.prototype.processOperationsInRow_=function(a
){if(0==a
.length
)return this.makeEmptyNode_();if(1==a
.length
)return a
[0];for(var b
=[];0<a
.length
&&a
[0].type
==cvox
.SemanticAttr
.Type
.OPERATOR
;)b
.push(a
.shift());if(0==a
.length
)return this.makePrefixNode_(b
.pop(),b
);if(1==a
.length
)return this.makePrefixNode_(a
[0],b
);a
=cvox
.SemanticTree
.sliceNodes_(a
,cvox
.SemanticTree
.attrPred_("type","OPERATOR"));b
=this.makePrefixNode_(this.makeImplicitNode_(a
.head
),b
);return a
.div
?this.makeOperationsTree_(a
.tail
,
1002 cvox
.SemanticTree
.prototype.makeOperationsTree_=function(a
,b
,c
,d
){d
=d
||[];if(0==a
.length
)return d
.unshift(c
),b
.type
==cvox
.SemanticAttr
.Type
.INFIXOP
?(d
=this.makePostfixNode_(b
.childNodes
.pop(),d
),b
.appendChild_(d
),b
):this.makePostfixNode_(b
,d
);a
=cvox
.SemanticTree
.sliceNodes_(a
,cvox
.SemanticTree
.attrPred_("type","OPERATOR"));if(0==a
.head
.length
)return d
.push(a
.div
),this.makeOperationsTree_(a
.tail
,b
,c
,d
);d
=this.makePrefixNode_(this.makeImplicitNode_(a
.head
),d
);b
=this.appendOperand_(b
,c
,d
);return a
.div
?
1003 this.makeOperationsTree_(a
.tail
,b
,a
.div
,[]):b
};cvox
.SemanticTree
.prototype.appendOperand_=function(a
,b
,c
){return a
.type
!=cvox
.SemanticAttr
.Type
.INFIXOP
?this.makeInfixNode_([a
,c
],b
):this.appendExistingOperator_(a
,b
,c
)?a
:b
.role
==cvox
.SemanticAttr
.Role
.MULTIPLICATION
?this.appendMultiplicativeOp_(a
,b
,c
):this.appendAdditiveOp_(a
,b
,c
)};
1004 cvox
.SemanticTree
.prototype.appendMultiplicativeOp_=function(a
,b
,c
){for(var d
=a
,e
=a
.childNodes
[a
.childNodes
.length
-1];e
&&e
.type
==cvox
.SemanticAttr
.Type
.INFIXOP
;)d
=e
,e
=d
.childNodes
[a
.childNodes
.length
-1];b
=this.makeInfixNode_([d
.childNodes
.pop(),c
],b
);d
.appendChild_(b
);return a
};cvox
.SemanticTree
.prototype.appendAdditiveOp_=function(a
,b
,c
){return this.makeInfixNode_([a
,c
],b
)};
1005 cvox
.SemanticTree
.prototype.appendExistingOperator_=function(a
,b
,c
){if(!a
||a
.type
!=cvox
.SemanticAttr
.Type
.INFIXOP
)return!1;if(a
.textContent
==b
.textContent
)return a
.appendContentNode_(b
),a
.appendChild_(c
),!0;this.appendExistingOperator_(a
.childNodes
[a
.childNodes
.length
-1],b
,c
)};cvox
.SemanticTree
.prototype.getFencesInRow_=function(a
){a
=cvox
.SemanticTree
.partitionNodes_(a
,cvox
.SemanticTree
.attrPred_("type","FENCE"));var b
=a
.comp
.shift();return this.processFences_(a
.rel
,a
.comp
,[],[b
])};
1006 cvox
.SemanticTree
.prototype.processFences_=function(a
,b
,c
,d
){if(0==a
.length
&&0==c
.length
)return d
[0];var e
=cvox
.SemanticTree
.attrPred_("role","OPEN");if(0==a
.length
){for(a
=d
.shift();0<c
.length
;){if(e(c
[0]))b
=c
.shift(),cvox
.SemanticTree
.fenceToPunct_(b
),a
.push(b
);else{c
=cvox
.SemanticTree
.sliceNodes_(c
,e
);var f
=c
.head
.length
-1,g
=this.processNeutralFences_(c
.head
,d
.slice(0,f
));d
=d
.slice(f
);a
.push
.apply(a
,g
);c
.div
&&c
.tail
.unshift(c
.div
);c
=c
.tail
}a
.push
.apply(a
,d
.shift())}return a
}f
=c
[c
.length
-1];g
=a
[0].role
;
1007 if(g
==cvox
.SemanticAttr
.Role
.OPEN
||g
==cvox
.SemanticAttr
.Role
.NEUTRAL
&&(!f
||a
[0].textContent
!=f
.textContent
))return c
.push(a
.shift()),d
.push(b
.shift()),this.processFences_(a
,b
,c
,d
);if(f
&&(g
==cvox
.SemanticAttr
.Role
.CLOSE
&&f
.role
==cvox
.SemanticAttr
.Role
.OPEN
||g
==cvox
.SemanticAttr
.Role
.NEUTRAL
&&a
[0].textContent
==f
.textContent
))return e
=this.makeHorizontalFencedNode_(c
.pop(),a
.shift(),d
.pop()),d
.push(d
.pop().concat([e
],b
.shift())),this.processFences_(a
,b
,c
,d
);if(f
&&g
==cvox
.SemanticAttr
.Role
.CLOSE
&&f
.role
==
1008 cvox
.SemanticAttr
.Role
.NEUTRAL
&&c
.some(e
))return c
=cvox
.SemanticTree
.sliceNodes_(c
,e
,!0),e
=d
.pop(),f
=d
.length
-c
.tail
.length
+1,g
=this.processNeutralFences_(c
.tail
,d
.slice(f
)),d
=d
.slice(0,f
),e
=this.makeHorizontalFencedNode_(c
.div
,a
.shift(),d
.pop().concat(g
,e
)),d
.push(d
.pop().concat([e
],b
.shift())),this.processFences_(a
,b
,c
.head
,d
);e
=a
.shift();cvox
.SemanticTree
.fenceToPunct_(e
);d
.push(d
.pop().concat([e
],b
.shift()));return this.processFences_(a
,b
,c
,d
)};
1009 cvox
.SemanticTree
.prototype.processNeutralFences_=function(a
,b
){if(0==a
.length
)return a
;if(1==a
.length
)return cvox
.SemanticTree
.fenceToPunct_(a
[0]),a
;var c
=a
.shift(),d
=cvox
.SemanticTree
.sliceNodes_(a
,function(a
){return a
.textContent
==c
.textContent
});if(!d
.div
){cvox
.SemanticTree
.fenceToPunct_(c
);var e
=b
.shift();e
.unshift(c
);return e
.concat(this.processNeutralFences_(a
,b
))}var f
=this.combineFencedContent_(c
,d
.div
,d
.head
,b
);return 0<d
.tail
.length
?(e
=f
.shift(),d
=this.processNeutralFences_(d
.tail
,f
),e
.concat(d
)):
1010 f
[0]};cvox
.SemanticTree
.prototype.combineFencedContent_=function(a
,b
,c
,d
){if(0==c
.length
)return a
=this.makeHorizontalFencedNode_(a
,b
,d
.shift()),d
.unshift(a
),d
;var e
=d
.shift(),f
=c
.length
-1,g
=d
.slice(0,f
);d
=d
.slice(f
);f
=d
.shift();c
=this.processNeutralFences_(c
,g
);e
.push
.apply(e
,c
);e
.push
.apply(e
,f
);a
=this.makeHorizontalFencedNode_(a
,b
,e
);0<d
.length
?d
[0].unshift(a
):d
=[[a
]];return d
};
1011 cvox
.SemanticTree
.fenceToPunct_=function(a
){a
.type
=cvox
.SemanticAttr
.Type
.PUNCTUATION
;switch(a
.role
){case cvox
.SemanticAttr
.Role
.NEUTRAL
:a
.role
=cvox
.SemanticAttr
.Role
.VBAR
;break;case cvox
.SemanticAttr
.Role
.OPEN
:a
.role
=cvox
.SemanticAttr
.Role
.OPENFENCE
;break;case cvox
.SemanticAttr
.Role
.CLOSE
:a
.role
=cvox
.SemanticAttr
.Role
.CLOSEFENCE
}};
1012 cvox
.SemanticTree
.prototype.makeHorizontalFencedNode_=function(a
,b
,c
){c
=this.processRow_(c
);b
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.FENCED
,[c
],[a
,b
]);b
.role
=a
.role
==cvox
.SemanticAttr
.Role
.OPEN
?cvox
.SemanticAttr
.Role
.LEFTRIGHT
:a
.role
;return b
};
1013 cvox
.SemanticTree
.prototype.getPunctuationInRow_=function(a
){var b
=cvox
.SemanticTree
.partitionNodes_(a
,function(a
){return cvox
.SemanticTree
.attrPred_("type","PUNCTUATION")(a
)&&!cvox
.SemanticTree
.attrPred_("role","ELLIPSIS")(a
)});if(0==b
.rel
.length
)return a
;a
=[];var c
=b
.comp
.shift();0<c
.length
&&a
.push(this.processRow_(c
));for(var d
=0;0<b
.comp
.length
;)a
.push(b
.rel
[d
++]),c
=b
.comp
.shift(),0<c
.length
&&a
.push(this.processRow_(c
));return[this.makePunctuatedNode_(a
,b
.rel
)]};
1014 cvox
.SemanticTree
.prototype.makePunctuatedNode_=function(a
,b
){var c
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.PUNCTUATED
,a
,b
);c
.role
=1==b
.length
&&a
[0].type
==cvox
.SemanticAttr
.Type
.PUNCTUATION
?cvox
.SemanticAttr
.Role
.STARTPUNCT
:1==b
.length
&&a
[a
.length
-1].type
==cvox
.SemanticAttr
.Type
.PUNCTUATION
?cvox
.SemanticAttr
.Role
.ENDPUNCT
:cvox
.SemanticAttr
.Role
.SEQUENCE
;return c
};
1015 cvox
.SemanticTree
.prototype.makeLimitNode_=function(a
,b
){var c
=b
[0],d
=cvox
.SemanticTree
.attrPred_("type","FUNCTION")(c
),d
=cvox
.SemanticTree
.attrPred_("type","LARGEOP")(c
)||cvox
.SemanticTree
.attrPred_("type","LIMBOTH")(c
)||cvox
.SemanticTree
.attrPred_("type","LIMLOWER")(c
)||cvox
.SemanticTree
.attrPred_("type","LIMUPPER")(c
)||d
&&cvox
.SemanticTree
.attrPred_("role","LIMFUNC")(c
),e
=cvox
.SemanticAttr
.Type
.UNKNOWN
;if(d
)switch(a
){case "MSUB":case "MUNDER":e
=cvox
.SemanticAttr
.Type
.LIMLOWER
;break;case "MSUP":case "MOVER":e
=
1016 cvox
.SemanticAttr
.Type
.LIMUPPER
;break;case "MSUBSUP":case "MUNDEROVER":e
=cvox
.SemanticAttr
.Type
.LIMBOTH
}else switch(a
){case "MSUB":e
=cvox
.SemanticAttr
.Type
.SUBSCRIPT
;break;case "MSUP":e
=cvox
.SemanticAttr
.Type
.SUPERSCRIPT
;break;case "MSUBSUP":d
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.SUBSCRIPT
,[c
,b
[1]],[]);d
.role
=c
.role
;b
=[d
,b
[2]];e
=cvox
.SemanticAttr
.Type
.SUPERSCRIPT
;break;case "MOVER":e
=cvox
.SemanticAttr
.Type
.OVERSCORE
;break;case "MUNDER":e
=cvox
.SemanticAttr
.Type
.UNDERSCORE
;break;default:d
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.UNDERSCORE
,
1017 [c
,b
[1]],[]),d
.role
=c
.role
,b
=[d
,b
[2]],e
=cvox
.SemanticAttr
.Type
.OVERSCORE
}d
=this.makeBranchNode_(e
,b
,[]);d
.role
=c
.role
;return d
};cvox
.SemanticTree
.prototype.getFunctionsInRow_=function(a
,b
){b
=b
||[];if(0==a
.length
)return b
;var c
=a
.shift(),d
=cvox
.SemanticTree
.classifyFunction_(c
,a
);if(!d
)return b
.push(c
),this.getFunctionsInRow_(a
,b
);var e
=this.getFunctionsInRow_(a
,[]),c
=this.getFunctionArgs_(c
,e
,d
);return b
.concat(c
)};
1018 cvox
.SemanticTree
.classifyFunction_=function(a
,b
){if(a
.type
==cvox
.SemanticAttr
.Type
.APPL
||a
.type
==cvox
.SemanticAttr
.Type
.BIGOP
||a
.type
==cvox
.SemanticAttr
.Type
.INTEGRAL
)return"";if(b
[0]&&b
[0].textContent
==cvox
.SemanticAttr
.functionApplication())return b
.shift(),cvox
.SemanticTree
.propagatePrefixFunc_(a
),"prefix";switch(a
.role
){case cvox
.SemanticAttr
.Role
.INTEGRAL
:return"integral";case cvox
.SemanticAttr
.Role
.SUM
:return"bigop";case cvox
.SemanticAttr
.Role
.PREFIXFUNC
:case cvox
.SemanticAttr
.Role
.LIMFUNC
:return"prefix";
1019 default:if(a
.type
==cvox
.SemanticAttr
.Type
.IDENTIFIER
)return"simple"}return""};cvox
.SemanticTree
.propagatePrefixFunc_=function(a
){a
&&(a
.role
=cvox
.SemanticAttr
.Role
.PREFIXFUNC
,cvox
.SemanticTree
.propagatePrefixFunc_(a
.childNodes
[0]))};
1020 cvox
.SemanticTree
.prototype.getFunctionArgs_=function(a
,b
,c
){switch(c
){case "integral":return b
=this.getIntegralArgs_(b
),c
=this.processRow_(b
.integrand
),a
=this.makeIntegralNode_(a
,c
,b
.intvar
),b
.rest
.unshift(a
),b
.rest
;case "prefix":if(b
[0]&&b
[0].type
==cvox
.SemanticAttr
.Type
.FENCED
)return a
=this.makeFunctionNode_(a
,b
.shift()),b
.unshift(a
),b
;case "bigop":b
=cvox
.SemanticTree
.sliceNodes_(b
,cvox
.SemanticTree
.prefixFunctionBoundary_
);var d
=this.processRow_(b
.head
);a
="prefix"==c
?this.makeFunctionNode_(a
,
1021 d
):this.makeBigOpNode_(a
,d
);b
.div
&&b
.tail
.unshift(b
.div
);b
.tail
.unshift(a
);return b
.tail
;case "simple":if(0==b
.length
)return[a
];c
=b
[0];if(c
.type
==cvox
.SemanticAttr
.Type
.FENCED
&&c
.role
!=cvox
.SemanticAttr
.Role
.NEUTRAL
&&this.simpleFunctionHeuristic_(c
))return a
=this.makeFunctionNode_(a
,b
.shift()),b
.unshift(a
),b
;b
.unshift(a
);return b
}};
1022 cvox
.SemanticTree
.prototype.getIntegralArgs_=function(a
,b
){b
=b
||[];if(0==a
.length
)return{integrand
:b
,intvar
:null,rest
:a
};var c
=a
[0];if(cvox
.SemanticTree
.generalFunctionBoundary_(c
))return{integrand
:b
,intvar
:null,rest
:a
};if(cvox
.SemanticTree
.integralDxBoundarySingle_(c
))return{integrand
:b
,intvar
:c
,rest
:a
.slice(1)};if(a
[1]&&cvox
.SemanticTree
.integralDxBoundary_(c
,a
[1])){var d
=this.createNode_();d
.updateContent_(cvox
.SemanticAttr
.invisibleComma());c
=this.makePunctuatedNode_([c
,d
,a
[1]],[d
]);c
.role
=cvox
.SemanticAttr
.Role
.INTEGRAL
;
1023 return{integrand
:b
,intvar
:c
,rest
:a
.slice(2)}}b
.push(a
.shift());return this.getIntegralArgs_(a
,b
)};cvox
.SemanticTree
.prototype.makeFunctionNode_=function(a
,b
){var c
=this.createNode_();c
.updateContent_(cvox
.SemanticAttr
.functionApplication());c
.type
=cvox
.SemanticAttr
.Type
.PUNCTUATION
;c
.role
=cvox
.SemanticAttr
.Role
.APPLICATION
;c
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.APPL
,[a
,b
],[c
]);c
.role
=a
.role
;return c
};
1024 cvox
.SemanticTree
.prototype.makeBigOpNode_=function(a
,b
){var c
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.BIGOP
,[a
,b
],[]);c
.role
=a
.role
;return c
};cvox
.SemanticTree
.prototype.makeIntegralNode_=function(a
,b
,c
){b
=b
||this.makeEmptyNode_();c
=c
||this.makeEmptyNode_();b
=this.makeBranchNode_(cvox
.SemanticAttr
.Type
.INTEGRAL
,[a
,b
,c
],[]);b
.role
=a
.role
;return b
};
1025 cvox
.SemanticTree
.prototype.simpleFunctionHeuristic_=function(a
){a
=a
.childNodes
;if(0==a
.length
)return!0;if(1<a
.length
)return!1;a
=a
[0];return a
.type
!=cvox
.SemanticAttr
.Type
.INFIXOP
||a
.role
==cvox
.SemanticAttr
.Role
.IMPLICIT
&&!a
.childNodes
.some(cvox
.SemanticTree
.attrPred_("type","INFIXOP"))?!0:!1};cvox
.SemanticTree
.prefixFunctionBoundary_=function(a
){return cvox
.SemanticTree
.attrPred_("type","OPERATOR")(a
)||cvox
.SemanticTree
.generalFunctionBoundary_(a
)};
1026 cvox
.SemanticTree
.integralDxBoundary_=function(a
,b
){return!!b
&&cvox
.SemanticTree
.attrPred_("type","IDENTIFIER")(b
)&&cvox
.SemanticAttr
.isCharacterD(a
.textContent
)};cvox
.SemanticTree
.integralDxBoundarySingle_=function(a
){if(cvox
.SemanticTree
.attrPred_("type","IDENTIFIER")(a
)){var b
=a
.textContent
[0];return b
&&a
.textContent
[1]&&cvox
.SemanticAttr
.isCharacterD(b
)}return!1};
1027 cvox
.SemanticTree
.generalFunctionBoundary_=function(a
){return cvox
.SemanticTree
.attrPred_("type","RELATION")(a
)||cvox
.SemanticTree
.attrPred_("type","PUNCTUATION")(a
)};
1028 cvox
.SemanticTree
.prototype.processTablesInRow_=function(a
){a
=cvox
.SemanticTree
.partitionNodes_(a
,cvox
.SemanticTree
.tableIsMatrixOrVector_
);for(var b
=[],c
=0,d
;d
=a
.rel
[c
];c
++)b
=b
.concat(a
.comp
.shift()),b
.push(this.tableToMatrixOrVector_(d
));b
=b
.concat(a
.comp
.shift());a
=cvox
.SemanticTree
.partitionNodes_(b
,cvox
.SemanticTree
.isTableOrMultiline_
);b
=[];for(c
=0;d
=a
.rel
[c
];c
++){var e
=a
.comp
.shift();cvox
.SemanticTree
.tableIsCases_(d
,e
)&&this.tableToCases_(d
,e
.pop());b
=b
.concat(e
);b
.push(d
)}return b
.concat(a
.comp
.shift())};
1029 cvox
.SemanticTree
.isTableOrMultiline_=function(a
){return!!a
&&(cvox
.SemanticTree
.attrPred_("type","TABLE")(a
)||cvox
.SemanticTree
.attrPred_("type","MULTILINE")(a
))};cvox
.SemanticTree
.tableIsMatrixOrVector_=function(a
){return!!a
&&cvox
.SemanticTree
.attrPred_("type","FENCED")(a
)&&cvox
.SemanticTree
.attrPred_("role","LEFTRIGHT")(a
)&&1==a
.childNodes
.length
&&cvox
.SemanticTree
.isTableOrMultiline_(a
.childNodes
[0])};
1030 cvox
.SemanticTree
.prototype.tableToMatrixOrVector_=function(a
){var b
=a
.childNodes
[0],c
=cvox
.SemanticTree
.attrPred_("type","MULTILINE")(b
)?"VECTOR":"MATRIX";b
.type
=cvox
.SemanticAttr
.Type
[c
];a
.contentNodes
.forEach(goog
.bind(b
.appendContentNode_
,b
));a
=0;for(var d
;d
=b
.childNodes
[a
];a
++)cvox
.SemanticTree
.assignRoleToRow_(d
,cvox
.SemanticAttr
.Role
[c
]);return b
};cvox
.SemanticTree
.tableIsCases_=function(a
,b
){return 0<b
.length
&&cvox
.SemanticTree
.attrPred_("role","OPENFENCE")(b
[b
.length
-1])};
1031 cvox
.SemanticTree
.prototype.tableToCases_=function(a
,b
){for(var c
=0,d
;d
=a
.childNodes
[c
];c
++)cvox
.SemanticTree
.assignRoleToRow_(d
,cvox
.SemanticAttr
.Role
.CASES
);a
.type
=cvox
.SemanticAttr
.Type
.CASES
;a
.appendContentNode_(b
);return a
};cvox
.SemanticTree
.tableIsMultiline_=function(a
){return a
.childNodes
.every(function(a
){a
=a
.childNodes
.length
;return 1>=a
})};
1032 cvox
.SemanticTree
.prototype.tableToMultiline_=function(a
){a
.type
=cvox
.SemanticAttr
.Type
.MULTILINE
;for(var b
=0,c
;c
=a
.childNodes
[b
];b
++)cvox
.SemanticTree
.rowToLine_(c
,cvox
.SemanticAttr
.Role
.MULTILINE
)};cvox
.SemanticTree
.rowToLine_=function(a
,b
){b
=b
||cvox
.SemanticAttr
.Role
.UNKNOWN
;cvox
.SemanticTree
.attrPred_("type","ROW")(a
)&&1==a
.childNodes
.length
&&cvox
.SemanticTree
.attrPred_("type","CELL")(a
.childNodes
[0])&&(a
.type
=cvox
.SemanticAttr
.Type
.LINE
,a
.role
=b
,a
.childNodes
=a
.childNodes
[0].childNodes
)};
1033 cvox
.SemanticTree
.assignRoleToRow_=function(a
,b
){if(cvox
.SemanticTree
.attrPred_("type","LINE")(a
))a
.role
=b
;else if(cvox
.SemanticTree
.attrPred_("type","ROW")(a
)){a
.role
=b
;var c
=cvox
.SemanticTree
.attrPred_("type","CELL");a
.childNodes
.forEach(function(a
){c(a
)&&(a
.role
=b
)})}};
1034 cvox
.SemanticTree
.sliceNodes_=function(a
,b
,c
){c
&&a
.reverse();for(var d
=[],e
=0,f
;f
=a
[e
];e
++){if(b(f
))return c
?{head
:a
.slice(e
+1).reverse(),div
:f
,tail
:d
.reverse()}:{head
:d
,div
:f
,tail
:a
.slice(e
+1)};d
.push(f
)}return c
?{head
:[],div
:null,tail
:d
.reverse()}:{head
:d
,div
:null,tail
:[]}};cvox
.SemanticTree
.partitionNodes_=function(a
,b
){var c
=a
,d
=[],e
=[];do{var f
=cvox
.SemanticTree
.sliceNodes_(c
,b
);e
.push(f
.head
);d
.push(f
.div
);c
=f
.tail
}while(f
.div
);d
.pop();return{rel
:d
,comp
:e
}};
1035 cvox
.SemanticTree
.attrPred_=function(a
,b
){return function(c
){var d
;o
:{switch(a
){case "type":d
=cvox
.SemanticAttr
.Type
[b
];break o
;case "role":d
=cvox
.SemanticAttr
.Role
[b
];break o
;case "font":d
=cvox
.SemanticAttr
.Font
[b
];break o
}d
=void 0}return c
[a
]==d
}};cvox
.TraverseMath=function(){this.activeNode
=this.activeMath
=null;this.allTexs_
={};this.allMathjaxs_
={};this.activeMathmlHost
=null;this.allDomains
=[];this.allStyles
=[];this.domain
="default";this.style
="short";cvox
.ChromeVox
.mathJax
&&(this.initializeMathjaxs(),this.initializeAltMaths())};goog
.addSingletonGetter(cvox
.TraverseMath
);cvox
.TraverseMath
.setSemantic_
=!1;cvox
.TraverseMath
.toggleSemantic=function(){return cvox
.TraverseMath
.setSemantic_
=!cvox
.TraverseMath
.setSemantic_
};
1036 cvox
.TraverseMath
.prototype.initialize=function(a
){if(cvox
.DomUtil
.isMathImg(a
)){if(!a
.hasAttribute("cvoxid"))return;a
=a
.getAttribute("cvoxid");a
=this.allTexs_
[a
]}cvox
.DomUtil
.isMathJax(a
)&&(this.activeMathmlHost
=this.allMathjaxs_
[a
.getAttribute("id")]);this.activeMath
=this.activeMathmlHost
||a
;(this.activeNode
=this.activeMathmlHost
||a
)&&cvox
.TraverseMath
.setSemantic_
&&this.activeNode
.nodeType
==Node
.ELEMENT_NODE
&&(this.activeNode
=(new cvox
.SemanticTree(this.activeNode
)).xml())};
1037 cvox
.TraverseMath
.prototype.addMathjax=function(a
,b
){var c
=cvox
.DomUtil
.getMathSpanId(b
);c
?this.allMathjaxs_
[c
]=a
:this.redoMathjaxs(a
,b
)};cvox
.TraverseMath
.prototype.redoMathjaxs=function(a
,b
){var c
=goog
.bind(function(){this.addMathjax(a
,b
)},this);setTimeout(c
,500)};cvox
.TraverseMath
.prototype.initializeMathjaxs=function(){goog
.bind(function(a
,b
){this.addMathjax(a
,b
)},this)};
1038 cvox
.TraverseMath
.prototype.initializeAltMaths=function(){document
.querySelector(cvox
.DomUtil
.altMathQuerySelector("tex")+", "+cvox
.DomUtil
.altMathQuerySelector("asciimath"))&&goog
.bind(function(a
,b
){this.allTexs_
[b
]=a
},this)};cvox
.TraverseMath
.prototype.nextSibling=function(a
){if(!this.activeNode
||!this.activeMath
)return null;var b
=this.activeNode
,b
=a
?b
.previousSibling
:b
.nextSibling
;return b
?this.activeNode
=b
:null};
1039 cvox
.TraverseMath
.prototype.nextParentChild=function(a
){if(!this.activeNode
||!this.activeMath
||this.activeNode
==this.activeMath
&&a
)return null;var b
=this.activeNode
,b
=a
?b
.parentNode
:b
.firstChild
;return b
?this.activeNode
=b
:null};
1040 cvox
.TraverseMath
.prototype.addDomainsAndStyles=function(a
,b
){this.allDomains
.push
.apply(this.allDomains
,a
.filter(goog
.bind(function(a
){return 0>this.allDomains
.indexOf(a
)},this)));this.allStyles
.push
.apply(this.allStyles
,b
.filter(goog
.bind(function(a
){return 0>this.allStyles
.indexOf(a
)},this)))};cvox
.TraverseMath
.prototype.getAttachedActiveNode=function(){var a
=this.activeNode
;if(!a
||a
.nodeType
!=Node
.ELEMENT_NODE
)return null;a
=a
.getAttribute("spanID");return document
.getElementById(a
)};cvox
.MathUtil
={};cvox
.MathUtil
.isMathmlNodeOfClass_=function(a
,b
){return-1!=b
.indexOf(a
.tagName
.toUpperCase())};cvox
.MathUtil
.isMathjaxNodeOfClass_=function(a
,b
){if("SPAN"==a
.tagName
){var c
=a
.className
.split(" ");return c
.some(function(a
){return-1!=b
.indexOf(a
.toUpperCase())})}return!1};cvox
.MathUtil
.isMathNodeOfClass_=function(a
,b
){return a
.nodeType
==Node
.ELEMENT_NODE
&&(cvox
.MathUtil
.isMathmlNodeOfClass_(a
,b
)||cvox
.MathUtil
.isMathjaxNodeOfClass_(a
,b
))};cvox
.MathUtil
.TOKEN_LIST
="MI MN MO MTEXT MSPACE MS".split(" ");
1041 cvox
.MathUtil
.isToken=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.TOKEN_LIST
)};cvox
.MathUtil
.LAYOUT_LIST
="MROW MFRAC MSQRT MROOT MSTYLE MERROR MPADDED MPHANTOM MFENCED MENCLOSE".split(" ");cvox
.MathUtil
.isLayout=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.LAYOUT_LIST
)};cvox
.MathUtil
.SCRIPT_LIST
="MSUB MSUP MSUBSUP MUNDER MOVER MUNDEROVER MMULTISCRIPTS MPRESCRIPTS".split(" ");
1042 cvox
.MathUtil
.isScript=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.SCRIPT_LIST
)};cvox
.MathUtil
.TABLES_LIST
="MTABLE MLABELEDTR MTR MTD MALIGNGROUP MALIGNMARK".split(" ");cvox
.MathUtil
.isTables=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.TABLES_LIST
)};cvox
.MathUtil
.ELEMENTARY_LIST
="MSTACK MLONGDIV MSGROUP MSROW MSCARRIES MSCARRY MSLINE".split(" ");cvox
.MathUtil
.isElementary=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.ELEMENTARY_LIST
)};
1043 cvox
.MathUtil
.MATHML_TAG_LIST
=[cvox
.MathUtil
.TOKEN_LIST
,cvox
.MathUtil
.LAYOUT_LIST
,cvox
.MathUtil
.SCRIPT_LIST
,cvox
.MathUtil
.TABLES_LIST
,cvox
.MathUtil
.ELEMENTARY_LIST
].reduce(function(a
,b
){return a
.concat(b
)});cvox
.MathUtil
.isMathmlTag=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.MATHML_TAG_LIST
)};cvox
.MathUtil
.WHITESPACE_LIST
=["MSROW","MROW","MSPACE","MPHANTOM","MPADDED"];cvox
.MathUtil
.isWhitespace=function(a
){return cvox
.MathUtil
.isMathNodeOfClass_(a
,cvox
.MathUtil
.WHITESPACE_LIST
)};
1044 cvox
.MathUtil
.isNotWhitespace=function(a
){return cvox
.MathUtil
.isMathmlTag(a
)&&!cvox
.MathUtil
.isWhitespace(a
)};cvox
.MathUtil
.union=function(a
,b
){return a
.concat(b
.filter(function(b
){return 0>a
.indexOf(b
)}))};cvox
.SpeechRule=function(a
,b
,c
,d
){this.name
=a
;this.dynamicCstr
=b
;this.precondition
=c
;this.action
=d
};cvox
.SpeechRule
.prototype.toString=function(){var a
=[],b
;for(b
in this.dynamicCstr
)a
.push(this.dynamicCstr
[b
]);return this.name
+" | "+a
.join(".")+" | "+this.precondition
.toString()+" ==> "+this.action
.toString()};cvox
.SpeechRule
.Type
={NODE
:"NODE",MULTI
:"MULTI",TEXT
:"TEXT",PERSONALITY
:"PERSONALITY"};
1045 cvox
.SpeechRule
.Type
.fromString=function(a
){switch(a
){case "[n]":return cvox
.SpeechRule
.Type
.NODE
;case "[m]":return cvox
.SpeechRule
.Type
.MULTI
;case "[t]":return cvox
.SpeechRule
.Type
.TEXT
;case "[p]":return cvox
.SpeechRule
.Type
.PERSONALITY
;default:throw"Parse error: "+a
;}};
1046 cvox
.SpeechRule
.Type
.toString=function(a
){switch(a
){case cvox
.SpeechRule
.Type
.NODE
:return"[n]";case cvox
.SpeechRule
.Type
.MULTI
:return"[m]";case cvox
.SpeechRule
.Type
.TEXT
:return"[t]";case cvox
.SpeechRule
.Type
.PERSONALITY
:return"[p]";default:throw"Unknown type error: "+a
;}};cvox
.SpeechRule
.Component=function(a
){this.type
=a
.type
;this.content
=a
.content
};
1047 cvox
.SpeechRule
.Component
.fromString=function(a
){var b
={};b
.type
=cvox
.SpeechRule
.Type
.fromString(a
.substring(0,3));a
=a
.slice(3).trimLeft();if(!a
)throw new cvox
.SpeechRule
.OutputError("Missing content.");switch(b
.type
){case cvox
.SpeechRule
.Type
.TEXT
:if('"'==a
[0]){var c
=cvox
.SpeechRule
.splitString_(a
,"\\(")[0].trim();if('"'!=c
.slice(-1))throw new cvox
.SpeechRule
.OutputError("Invalid string syntax.");b
.content
=c
;a
=a
.slice(c
.length
).trim();-1==a
.indexOf("(")&&(a
="");break}case cvox
.SpeechRule
.Type
.NODE
:case cvox
.SpeechRule
.Type
.MULTI
:c
=
1048 a
.indexOf(" (");if(-1==c
){b
.content
=a
.trim();a
="";break}b
.content
=a
.substring(0,c
).trim();a
=a
.slice(c
).trimLeft()}b
=new cvox
.SpeechRule
.Component(b
);a
&&b
.addAttributes(a
);return b
};cvox
.SpeechRule
.Component
.prototype.toString=function(){var a
="",a
=a
+cvox
.SpeechRule
.Type
.toString(this.type
),a
=a
+(this.content
?" "+this.content
:""),b
=this.getAttributes();0<b
.length
&&(a
+=" ("+b
.join(", ")+")");return a
};
1049 cvox
.SpeechRule
.Component
.prototype.addAttribute=function(a
){var b
=a
.indexOf(":");-1==b
?this[a
.trim()]="true":this[a
.substring(0,b
).trim()]=a
.slice(b
+1).trim()};cvox
.SpeechRule
.Component
.prototype.addAttributes=function(a
){if("("!=a
[0]||")"!=a
.slice(-1))throw new cvox
.SpeechRule
.OutputError("Invalid attribute expression: "+a
);a
=cvox
.SpeechRule
.splitString_(a
.slice(1,-1),",");for(var b
=0;b
<a
.length
;b
++)this.addAttribute(a
[b
])};
1050 cvox
.SpeechRule
.Component
.prototype.getAttributes=function(){var a
=[],b
;for(b
in this)"content"!=b
&&"type"!=b
&&"function"!=typeof this[b
]&&a
.push(b
+":"+this[b
]);return a
};cvox
.SpeechRule
.Action=function(a
){this.components
=a
};cvox
.SpeechRule
.Action
.fromString=function(a
){a
=cvox
.SpeechRule
.splitString_(a
,";").filter(function(a
){return a
.match(/\S/)}).map(function(a
){return a
.trim()});for(var b
=[],c
=0;c
<a
.length
;c
++){var d
=cvox
.SpeechRule
.Component
.fromString(a
[c
]);d
&&b
.push(d
)}return new cvox
.SpeechRule
.Action(b
)};
1051 cvox
.SpeechRule
.Action
.prototype.toString=function(){var a
=this.components
.map(function(a
){return a
.toString()});return a
.join("; ")};cvox
.SpeechRule
.Precondition=function(a
,b
){this.query
=a
;this.constraints
=b
||[]};cvox
.SpeechRule
.Precondition
.prototype.toString=function(){var a
=this.constraints
.join(", ");return this.query
+", "+a
};
1052 cvox
.SpeechRule
.splitString_=function(a
,b
){for(var c
=[],d
="";""!=a
;){var e
=a
.search(b
);if(-1==e
){if(0!=(a
.match(/"/g)||[]).length%2)throw new cvox.SpeechRule.OutputError("Invalid string in expression: "+a);c.push(d+a);a=d=""}else if(0==(a.substring(0,e).match(/"/g)||[]).length%2)c.push(d+a.substring(0,e)),d="",a=a.substring(e+1);else{var f=a.substring(e).search('"');if(-1==f)throw new cvox.SpeechRule.OutputError("Invalid string in expression: "+a);d+=a.substring(0,e+f+1);a=a.substring(e+f+1)}}d&&
1053 c.push(d);return c};cvox.SpeechRule.DynamicCstrAttrib={STYLE:"style"};cvox.SpeechRule.OutputError=function(a){this.name="RuleError";this.message=a||""};goog.inherits(cvox.SpeechRule.OutputError,Error);cvox.SpeechRuleFunctions=function(){};cvox.SpeechRuleFunctions.Store_=function(a,b){this.prefix_=a;this.store_=b};cvox.SpeechRuleFunctions.Store_.prototype.add=function(a,b){this.checkCustomFunctionSyntax_(a)&&(this.store_[a]=b)};cvox.SpeechRuleFunctions.Store_.prototype.lookup=function(a){return this.store_[a]};cvox.SpeechRuleFunctions.CustomQueries=function(){var a={};cvox.SpeechRuleFunctions.Store_.call(this,"CQF",a)};goog.inherits(cvox.SpeechRuleFunctions.CustomQueries,cvox.SpeechRuleFunctions.Store_);
1054 cvox.SpeechRuleFunctions.CustomStrings=function(){var a={};cvox.SpeechRuleFunctions.Store_.call(this,"CSF",a)};goog.inherits(cvox.SpeechRuleFunctions.CustomStrings,cvox.SpeechRuleFunctions.Store_);cvox.SpeechRuleFunctions.ContextFunctions=function(){var a={};cvox.SpeechRuleFunctions.Store_.call(this,"CTXF",a)};goog.inherits(cvox.SpeechRuleFunctions.ContextFunctions,cvox.SpeechRuleFunctions.Store_);
1055 cvox.SpeechRuleFunctions.Store_.prototype.checkCustomFunctionSyntax_=function(a){var b=RegExp("^"+this.prefix_);return a.match(b)?!0:(console.log("FunctionError: Invalid function name. Expected prefix"+this.prefix_),!1)};cvox.BaseRuleStore=function(){this.customQueries=new cvox.SpeechRuleFunctions.CustomQueries;this.customStrings=new cvox.SpeechRuleFunctions.CustomStrings;this.contextFunctions=new cvox.SpeechRuleFunctions.ContextFunctions;this.speechRules_=[];this.dynamicCstrAttribs=[cvox.SpeechRule.DynamicCstrAttrib.STYLE];this.defaultTtsProps=[]};
1056 cvox.BaseRuleStore.prototype.lookupRule=function(a,b){if(!a||a.nodeType!=Node.ELEMENT_NODE&&a.nodeType!=Node.TEXT_NODE)return null;var c=this.speechRules_.filter(goog.bind(function(c){return this.testDynamicConstraints(b,c)&&this.testPrecondition_(a,c)},this));return 0<c.length?this.pickMostConstraint_(b,c):null};
1057 cvox.BaseRuleStore.prototype.defineRule=function(a,b,c,d,e){try{var f=cvox.SpeechRule.Action.fromString(c),g=Array.prototype.slice.call(arguments,4),h=new cvox.SpeechRule.Precondition(d,g),g={};g[cvox.SpeechRule.DynamicCstrAttrib.STYLE]=b;var k=new cvox.SpeechRule(a,g,h,f)}catch(l){if("RuleError"==l.name)return console.log("Rule Error ",d,"("+b+"):",l.message),null;throw l;}this.addRule(k);return k};cvox.BaseRuleStore.prototype.addRule=function(a){this.speechRules_.unshift(a)};
1058 cvox.BaseRuleStore.prototype.deleteRule=function(a){a=this.speechRules_.indexOf(a);-1!=a&&this.speechRules_.splice(a,1)};cvox.BaseRuleStore.prototype.findRule=function(a){for(var b=0,c;c=this.speechRules_[b];b++)if(a(c))return c;return null};cvox.BaseRuleStore.prototype.findAllRules=function(a){return this.speechRules_.filter(a)};cvox.BaseRuleStore.prototype.evaluateDefault=function(a){return[new cvox.NavDescription({text:a.textContent})]};
1059 cvox.BaseRuleStore.prototype.removeDuplicates=function(a){for(var b=this.speechRules_.length-1,c;c=this.speechRules_[b];b--)c!=a&&cvox.BaseRuleStore.compareDynamicConstraints_(c.dynamicCstr,a.dynamicCstr)&&cvox.BaseRuleStore.comparePreconditions_(c,a)&&this.speechRules_.splice(b,1)};cvox.BaseRuleStore.prototype.applyCustomQuery=function(a,b){var c=this.customQueries.lookup(b);return c?c(a):null};
1060 cvox.BaseRuleStore.prototype.applySelector=function(a,b){var c=this.applyCustomQuery(a,b);return c||cvox.XpathUtil.evalXPath(b,a)};cvox.BaseRuleStore.prototype.applyQuery=function(a,b){var c=this.applySelector(a,b);return 0<c.length?c[0]:null};cvox.BaseRuleStore.prototype.applyConstraint=function(a,b){var c=this.applyQuery(a,b);return!!c||cvox.XpathUtil.evaluateBoolean(b,a)};
1061 cvox.BaseRuleStore.prototype.testDynamicConstraints=function(a,b){var c=Object.keys(a);return c.every(function(c){return a[c]==b.dynamicCstr[c]||"default"==b.dynamicCstr[c]})};cvox.BaseRuleStore.prototype.countMatchingDynamicConstraintValues_=function(a,b){for(var c=0,d=0,e;e=this.dynamicCstrAttribs[d];d++)if(a[e]==b.dynamicCstr[e])c++;else break;return c};
1062 cvox.BaseRuleStore.prototype.pickMostConstraint_=function(a,b){b.sort(goog.bind(function(b,d){var e=this.countMatchingDynamicConstraintValues_(a,b),f=this.countMatchingDynamicConstraintValues_(a,d);return e>f?-1:f>e?1:d.precondition.constraints.length-b.precondition.constraints.length},this));return b[0]};
1063 cvox.BaseRuleStore.prototype.testPrecondition_=function(a,b){var c=b.precondition;return this.applyQuery(a,c.query)===a&&c.constraints.every(goog.bind(function(b){return this.applyConstraint(a,b)},this))};cvox.BaseRuleStore.compareDynamicConstraints_=function(a,b){if(Object.keys(a).length!=Object.keys(b).length)return!1;for(var c in a)if(!b[c]||a[c]!==b[c])return!1;return!0};
1064 cvox.BaseRuleStore.compareStaticConstraints_=function(a,b){if(a.length!=b.length)return!1;for(var c=0,d;d=a[c];c++)if(-1==b.indexOf(d))return!1;return!0};cvox.BaseRuleStore.comparePreconditions_=function(a,b){var c=a.precondition,d=b.precondition;return c.query!=d.query?!1:cvox.BaseRuleStore.compareStaticConstraints_(c.constraints,d.constraints)};cvox.MathStore=function(){cvox.BaseRuleStore.call(this);this.dynamicCstrAttribs=[cvox.SpeechRule.DynamicCstrAttrib.DOMAIN,cvox.SpeechRule.DynamicCstrAttrib.STYLE];this.defaultTtsProps=[cvox.AbstractTts.PITCH,cvox.AbstractTts.RATE]};goog.inherits(cvox.MathStore,cvox.BaseRuleStore);cvox.SpeechRule.DynamicCstrAttrib.DOMAIN="domain";
1065 cvox.MathStore.prototype.defineRule=function(a,b,c,d,e){var f=this.parseDynamicConstraint(b),g=Array.prototype.slice.call(arguments,4),g=cvox.MathStore.superClass_.defineRule.apply(this,[a,f[cvox.SpeechRule.DynamicCstrAttrib.STYLE],c,d].concat(g));g.dynamicCstr=f;this.removeDuplicates(g);return g};
1066 cvox.MathStore.prototype.parseDynamicConstraint=function(a){var b=a.split(".");if(!b[0]||!b[1])throw new cvox.SpeechRule.OutputError("Invalid domain assignment:"+a);return cvox.MathStore.createDynamicConstraint(b[0],b[1])};cvox.MathStore.createDynamicConstraint=function(a,b){var c={};c[cvox.SpeechRule.DynamicCstrAttrib.DOMAIN]=a;c[cvox.SpeechRule.DynamicCstrAttrib.STYLE]=b;return c};
1067 cvox.MathStore.prototype.defineRuleAlias=function(a,b,c){var d=this.findRule(function(b){return b.name==a});if(!d)throw new cvox.SpeechRule.OutputError("Rule with named "+a+" does not exist.");this.addAlias_(d,b,Array.prototype.slice.call(arguments,2))};cvox.MathStore.prototype.addAlias_=function(a,b,c){b=new cvox.SpeechRule.Precondition(b,c);b=new cvox.SpeechRule(a.name,a.dynamicCstr,b,a.action);b.name=a.name;this.addRule(b)};cvox.MathStore.prototype.evaluateDefault=function(a){return this.evaluateString_(a.textContent)};
1068 cvox.MathStore.prototype.evaluateString_=function(a){var b=[];if(a.match(/^\s+$/))return b;a=cvox.MathStore.removeEmpty_(a.replace(/\s/g," ").split(" "));for(var c=0,d;d=a[c];c++)if(1==d.length)b.push(this.evaluate_(d));else if(d.match(/^[a-zA-Z]+$/))b.push(this.evaluate_(d));else for(;d;){var e=d.match(/^\d+/),f=d.match(/^[a-zA-Z]+/);e?(b.push(this.evaluate_(e[0])),d=d.substring(e[0].length)):f?(b.push(this.evaluate_(f[0])),d=d.substring(f[0].length)):(e=d[0],e=e.charCodeAt(0),55296<=e&&56319>=e&&
1069 1<d.length&&!isNaN(d.charCodeAt(1))?(b.push(this.evaluate_(d.slice(0,2))),d=d.substring(2)):(b.push(this.evaluate_(d[0])),d=d.substring(1)))}return b};cvox.MathStore.prototype.evaluate_=function(a){return cvox.ChromeVox.host.mathMap?cvox.ChromeVox.host.mathMap.evaluate(a,cvox.TraverseMath.getInstance().domain,cvox.TraverseMath.getInstance().style):new cvox.NavMathDescription({text:a,domain:cvox.TraverseMath.getInstance().domain,style:cvox.TraverseMath.getInstance().style})};
1070 cvox.MathStore.removeEmpty_=function(a){return a.filter(function(a){return a})};cvox.MathmlStore=function(){cvox.MathStore.call(this)};goog.inherits(cvox.MathmlStore,cvox.MathStore);goog.addSingletonGetter(cvox.MathmlStore);cvox.MathmlStore.prototype.defineDefaultMathmlRule=function(a,b){this.defineRule(a,"default.default",b,"self::mathml:"+a)};cvox.SpeechRuleEngine=function(){this.activeStore_=null;this.dynamicCstr={};this.dynamicCstr[cvox.SpeechRule.DynamicCstrAttrib.STYLE]="short"};goog.addSingletonGetter(cvox.SpeechRuleEngine);cvox.SpeechRuleEngine.prototype.parameterize=function(a){try{a.initialize()}catch(b){if("StoreError"==b.name)console.log("Store Error:",b.message);else throw b;}this.activeStore_=a};cvox.SpeechRuleEngine.prototype.setDynamicConstraint=function(a){a&&(this.dynamicCstr=a)};
1071 cvox.SpeechRuleEngine.prototype.constructString=function(a,b){if(!b)return"";if('"'==b.charAt(0))return b.slice(1,-1);var c=this.activeStore_.customStrings.lookup(b);return c?c(a):cvox.XpathUtil.evaluateString(b,a)};cvox.SpeechRuleEngine.prototype.evaluateNode=function(a){return a?this.evaluateTree_(a):[]};
1072 cvox.SpeechRuleEngine.prototype.evaluateTree_=function(a){var b=this.activeStore_.lookupRule(a,this.dynamicCstr);if(!b)return this.activeStore_.evaluateDefault(a);for(var b=b.action.components,c=[],d=0,e;e=b[d];d++){var f=[],g=e.content||"";switch(e.type){case cvox.SpeechRule.Type.NODE:(g=this.activeStore_.applyQuery(a,g))&&(f=this.evaluateTree_(g));break;case cvox.SpeechRule.Type.MULTI:g=this.activeStore_.applySelector(a,g);0<g.length&&(f=this.evaluateNodeList_(g,e.sepFunc,this.constructString(a,
1073 e.separator),e.ctxtFunc,this.constructString(a,e.context)));break;case cvox.SpeechRule.Type.TEXT:(g=this.constructString(a,g))&&(f=[new cvox.NavDescription({text:g})]);break;default:f=[new cvox.NavDescription({text:g})]}f[0]&&e.context&&e.type!=cvox.SpeechRule.Type.MULTI&&(f[0].context=this.constructString(a,e.context)+(f[0].context||""));c=c.concat(this.addPersonality_(f,e))}return c};
1074 cvox.SpeechRuleEngine.prototype.evaluateNodeList_=function(a,b,c,d,e){if(a==[])return[];var f=c||"",g=e||"";c=(c=this.activeStore_.contextFunctions.lookup(d))?c(a,g):function(){return g};b=(b=this.activeStore_.contextFunctions.lookup(b))?b(a,f):function(){return f};d=[];e=0;for(var h;h=a[e];e++)h=this.evaluateTree_(h),0<h.length&&(h[0].context=c()+(h[0].context||""),d=d.concat(h),e<a.length-1&&(h=b())&&d.push(new cvox.NavDescription({text:h})));return d};
1075 cvox.SpeechRuleEngine.propMap={pitch:cvox.AbstractTts.RELATIVE_PITCH,rate:cvox.AbstractTts.RELATIVE_RATE,volume:cvox.AbstractTts.RELATIVE_VOLUME,pause:cvox.AbstractTts.PAUSE};cvox.SpeechRuleEngine.prototype.addPersonality_=function(a,b){var c={},d;for(d in cvox.SpeechRuleEngine.propMap){var e=parseFloat(b[d]);isNaN(e)||(c[cvox.SpeechRuleEngine.propMap[d]]=e)}a.forEach(goog.bind(function(a){this.addRelativePersonality_(a,c);this.resetPersonality_(a)},this));return a};
1076 cvox.SpeechRuleEngine.prototype.addRelativePersonality_=function(a,b){if(!a.personality)return a.personality=b,a;var c=a.personality,d;for(d in b)c[d]=c[d]&&"number
"==typeof c[d]?c[d]+b[d]:b[d];return a};cvox.SpeechRuleEngine.prototype.resetPersonality_=function(a){if(this.activeStore_.defaultTtsProps)for(var b=0,c;c=this.activeStore_.defaultTtsProps[b];b++)a.personality[c]=cvox.ChromeVox.tts.getDefaultProperty(c)};cvox.SpeechRuleEngine.debugMode=!1;
1077 cvox.SpeechRuleEngine.outputDebug=function(a){if(cvox.SpeechRuleEngine.debugMode){var b=Array.prototype.slice.call(arguments,0);console.log.apply(console,["Speech Rule Engine Debugger
:"].concat(b))}};cvox.SpeechRuleEngine.prototype.toString=function(){var a=this.activeStore_.findAllRules(function(){return!0});return a.map(function(a){return a.toString()}).join("\n")};
1078 cvox.SpeechRuleEngine.debugSpeechRule=function(a,b){var c=cvox.SpeechRuleEngine.getInstance().activeStore_;if(c){var d=a.precondition;cvox.SpeechRuleEngine.outputDebug(d.query,c.applyQuery(b,d.query));d.constraints.forEach(function(a){cvox.SpeechRuleEngine.outputDebug(a,c.applyConstraint(b,a))})}};
1079 cvox.SpeechRuleEngine.debugNamedSpeechRule=function(a,b){for(var c=cvox.SpeechRuleEngine.getInstance().activeStore_,c=c.findAllRules(function(b){return b.name==a}),d=0,e;e=c[d];d++)cvox.SpeechRuleEngine.outputDebug("Rule
",a,"number
",d),cvox.SpeechRuleEngine.debugSpeechRule(e,b)};cvox.AbstractWalker=function(){};cvox.AbstractWalker.prototype.begin=function(a){a=a||{reversed:!1};return this.sync(cvox.CursorSelection.fromBody().setReversed(a.reversed))};cvox.AbstractWalker.prototype.hasAction=function(a){return"function"==typeof this[a]};cvox.AbstractWalker.prototype.performAction=function(a,b){return this.hasAction(a)?this[a](b):null};cvox.AbstractNodeWalker=function(){this.wasBegin_=!1};goog.inherits(cvox.AbstractNodeWalker,cvox.AbstractWalker);cvox.AbstractNodeWalker.prototype.next=function(a){var b=a.isReversed();a=a.end.node||document.body;do if(a=cvox.DomUtil.directedNextLeafLikeNode(a,b,goog.bind(this.stopNodeDescent,this)),!a)return null;while(a&&!cvox.DomUtil.hasContent(a));return cvox.CursorSelection.fromNode(a).setReversed(b)};
1080 cvox.AbstractNodeWalker.prototype.sync=function(a){a=this.privateSync_(a);this.wasBegin_=!1;return a};
1081 cvox.AbstractNodeWalker.prototype.privateSync_=function(a){var b=a.isReversed();if(a.equals(cvox.CursorSelection.fromBody())){if(this.wasBegin_)return cvox.CursorSelection.fromBody().setReversed(b);this.wasBegin_=!0}for(a=a.start.node;a!=document.body&&a.parentNode&&this.stopNodeDescent(a.parentNode);)a=a.parentNode;for(;!this.stopNodeDescent(a);)a=cvox.DomUtil.directedFirstChild(a,b);var c=cvox.CursorSelection.fromNode(a);cvox.DomUtil.hasContent(a)||(c=this.next(cvox.CursorSelection.fromNode(a).setReversed(b)));
1082 return c?c.setReversed(b):this.begin({reversed:b})};cvox.BareObjectWalker=function(){cvox.AbstractNodeWalker.call(this)};goog.inherits(cvox.BareObjectWalker,cvox.AbstractNodeWalker);cvox.BareObjectWalker.prototype.stopNodeDescent=function(a){return cvox.DomUtil.isLeafNode(a)};cvox.AuralStyleConverter={};cvox.AuralStyleUtil={};
1083 cvox.AuralProperty={VOLUME:"VOLUME
",SPEAK:"SPEAK
",PAUSE_BEFORE:"PAUSE_BEFORE
",PAUSE_AFTER:"PAUSE_AFTER
",PAUSE:"PAUSE
",CUE_BEFORE:"CUE_BEFORE
",CUE_AFTER:"CUE_AFTER
",CUE:"CUE
",PLAY_DURING:"PLAY_DURING
",AZIMUTH:"AZIMUTH
",ELEVATION:"ELEVATION
",SPEECH_RATE:"SPEECH_RATE
",VOICE_FAMILY:"VOICE_FAMILY
",PITCH:"PITCH
",PITCH_RANGE:"PITCH_RANGE
",STRESS:"STRESS
",RICHNESS:"RICHNESS
",SPEAK_PUNCTUATION:"SPEAK_PUNCTUATION
",SPEAK_NUMERIAL:"SPEAK_NUMERIAL
",SPEAK_HEADER:"SPEAK_HEADER
",NONE:"NONE
"};
1084 cvox.AuralStyleConverter.identity=function(a){return a};cvox.AuralStyleConverter.propertyTable={VOLUME:"volume
",SPEAK:"no
-op
",PAUSE_BEFORE:"no
-op
",PAUSE_AFTER:"no
-op
",PAUSE:"no
-op
",CUE_BEFORE:"no
-op
",CUE_AFTER:"no
-op
",CUE:"no
-op
",PLAY_DURING:"no
-op
",AZIMUTH:"no
-op
",ELEVATION:"no
-op
",SPEECH_RATE:"relativeRate
",VOICE_FAMILY:"no
-op
",PITCH:"relativePitch
",PITCH_RANGE:"no
-op
",STRESS:"no
-op
",RICHNESS:"no
-op
",SPEAK_PUNCTUATION:"no
-op
",SPEAK_NUMERIAL:"no
-op
",SPEAK_HEADER:"no
-op
",NONE:"no
-op
"};
1085 cvox.AuralStyleConverter.valueTable={VOLUME:cvox.AuralStyleConverter.identity,SPEAK:cvox.AuralStyleConverter.identity,PAUSE_BEFORE:cvox.AuralStyleConverter.identity,PAUSE_AFTER:cvox.AuralStyleConverter.identity,PAUSE:cvox.AuralStyleConverter.identity,CUE_BEFORE:cvox.AuralStyleConverter.identity,CUE_AFTER:cvox.AuralStyleConverter.identity,CUE:cvox.AuralStyleConverter.identity,PLAY_DURING:cvox.AuralStyleConverter.identity,AZIMUTH:cvox.AuralStyleConverter.identity,ELEVATION:cvox.AuralStyleConverter.identity,
1086 SPEECH_RATE:cvox.AuralStyleConverter.identity,VOICE_FAMILY:cvox.AuralStyleConverter.identity,PITCH:cvox.AuralStyleConverter.identity,PITCH_RANGE:cvox.AuralStyleConverter.identity,STRESS:cvox.AuralStyleConverter.identity,RICHNESS:cvox.AuralStyleConverter.identity,SPEAK_PUNCTUATION:cvox.AuralStyleConverter.identity,SPEAK_NUMERIAL:cvox.AuralStyleConverter.identity,SPEAK_HEADER:cvox.AuralStyleConverter.identity,NONE:cvox.AuralStyleConverter.identity};
1087 cvox.AuralStyleConverter.convertRule=function(a,b){return{property:cvox.AuralStyleConverter.propertyTable[a],value:cvox.AuralStyleConverter.valueTable[a](b)}};cvox.AuralStyleConverter.convertStyle=function(a){var b={},c;for(c in a){var d=cvox.AuralStyleConverter.convertRule(c,a[c]);b[d.property]=d.value}return b};cvox.AuralStyleUtil.getStyleForNode=function(a){return(a=cvox.AuralStyleUtil.defaultStyles[a.tagName])?cvox.AuralStyleConverter.convertStyle(a):null};
1088 cvox.AuralStyleUtil.defaultStyles={ARTICLE:{PITCH:-0.1},ASIDE:{PITCH:-0.1},FOOTER:{PITCH:-0.1},H1:{PITCH:-0.3},H2:{PITCH:-0.25},H3:{PITCH:-0.2},H4:{PITCH:-0.15},H5:{PITCH:-0.1},H6:{PITCH:-0.05},HEADER:{PITCH:-0.1},HGROUP:{PITCH:-0.1},MARK:{PITCH:-0.1},NAV:{PITCH:-0.1},SECTION:{PITCH:-0.1},TIME:{PITCH:-0.1}};cvox.EarconUtil={};
1089 cvox.EarconUtil.getEarcon=function(a){var b=cvox.AriaUtil.getEarcon(a);if(null!=b)return b;switch(a.tagName){case "BUTTON
":return cvox.AbstractEarcons.BUTTON;case "A
":if(a.hasAttribute("href
"))return cvox.AbstractEarcons.LINK;break;case "IMG
":if(cvox.DomUtil.hasLongDesc(a))return cvox.AbstractEarcons.LONG_DESC;break;case "LI
":return cvox.AbstractEarcons.LIST_ITEM;case "SELECT
":return cvox.AbstractEarcons.LISTBOX;case "TEXTAREA
":return cvox.AbstractEarcons.EDITABLE_TEXT;case "INPUT
":switch(a.type){case "button
":case "submit
":case "reset
":return cvox.AbstractEarcons.BUTTON;case "checkbox
":case "radio
":return a.checked?
1090 cvox.AbstractEarcons.CHECK_ON:cvox.AbstractEarcons.CHECK_OFF;default:if(cvox.DomUtil.isInputTypeText(a))return cvox.AbstractEarcons.EDITABLE_TEXT}}return null};cvox.DescriptionUtil={};cvox.DescriptionUtil.COLLECTION_NODE_TYPE={H1:!0,H2:!0,H3:!0,H4:!0,H5:!0,H6:!0};
1091 cvox.DescriptionUtil.getControlDescription=function(a,b){var c=[a];if(b&&0<b.length)c=b;else{var d=cvox.DomUtil.getSurroundingControl(a);d&&(c=[d,a])}c=cvox.DescriptionUtil.getDescriptionFromAncestors(c,!0,cvox.VERBOSITY_VERBOSE);if(d){var e=cvox.DomUtil.getName(d);0==e.length&&(e=cvox.DomUtil.getControlLabelHeuristics(d),0<e.length&&(c.context=e+" "+c.context))}else e=cvox.DomUtil.getName(a),0==e.length&&(e=cvox.DomUtil.getControlLabelHeuristics(a),0<e.length&&(c.text=cvox.DomUtil.collapseWhitespace(e))),
1092 d=cvox.DomUtil.getValue(a),0<d.length&&(c.userValue=cvox.DomUtil.collapseWhitespace(d));return c};
1093 cvox.DescriptionUtil.getDescriptionFromAncestors=function(a,b,c){"undefined"===typeof b&&(b=!0);var d=a.length,e="",f="",g="",h="",k=[],l=null;0<d&&(f=cvox.DomUtil.getName(a[d-1],b),g=cvox.DomUtil.getValue(a[d-1]));for(b=d-1;0<=b;b--){var m=a[b],p=m.getAttribute?m.getAttribute("role
"):null;if("dialog
"!=p&&"alertdialog
"!=p){p=cvox.DomUtil.getRole(m,c);l||(l=cvox.AuralStyleUtil.getStyleForNode(m));if(b<d-1&&m.hasAttribute("role
")){var q=cvox.DomUtil.getName(m,!1);q&&(p=q+" "+p)}0<p.length&&(0<e.length||
1094 0<h.length&&1<m.childElementCount?e=p+" "+cvox.DomUtil.getState(m,!1)+" "+e:h=0<h.length?h+(" "+p+" "+cvox.DomUtil.getState(m,!0)):p+" "+cvox.DomUtil.getState(m,!0));m=cvox.EarconUtil.getEarcon(m);null!=m&&-1==k.indexOf(m)&&k.push(m)}}return new cvox.NavDescription({context:cvox.DomUtil.collapseWhitespace(e),text:cvox.DomUtil.collapseWhitespace(f),userValue:cvox.DomUtil.collapseWhitespace(g),annotation:cvox.DomUtil.collapseWhitespace(h),earcons:k,personality:l})};
1095 cvox.DescriptionUtil.getDescriptionFromNavigation=function(a,b,c,d){if(!a||!b)return[];if(cvox.DomUtil.isMath(b)&&!cvox.AriaUtil.isMath(b))return cvox.DescriptionUtil.getMathDescription(b);if(cvox.DescriptionUtil.COLLECTION_NODE_TYPE[b.tagName])return cvox.DescriptionUtil.getCollectionDescription(cvox.CursorSelection.fromNode(a),cvox.CursorSelection.fromNode(b));var e=cvox.DomUtil.getUniqueAncestors(a,b,!0),e=cvox.DescriptionUtil.getDescriptionFromAncestors(e,c,d);a=cvox.DomUtil.getUniqueAncestors(b,
1096 a);cvox.DescriptionUtil.shouldDescribeExit_(a)&&(c=cvox.DescriptionUtil.getDescriptionFromAncestors(a,c,d),c.context&&!e.context&&(e.context=cvox.ChromeVox.msgs.getMsg("exited_container
",[c.context])));return[e]};cvox.DescriptionUtil.getCollectionDescription=function(a,b){var c=cvox.DescriptionUtil.getRawDescriptions_(a,b);cvox.DescriptionUtil.insertCollectionDescription_(c);return c};cvox.DescriptionUtil.subWalker_=new cvox.BareObjectWalker;
1097 cvox.DescriptionUtil.getRawDescriptions_=function(a,b){var c=[];b=b.clone().setReversed(!1);var d=cvox.DescriptionUtil.subWalker_.sync(b).start.node,e=a.end.node,f=cvox.CursorSelection.fromNode(d);if(!f)return[];for(;cvox.DomUtil.isDescendantOfNode(d,b.start.node);){e=cvox.DomUtil.getUniqueAncestors(e,d);cvox.DomUtil.isMath(d)&&!cvox.AriaUtil.isMath(d)?c=c.concat(cvox.DescriptionUtil.getMathDescription(d)):(e=cvox.DescriptionUtil.getDescriptionFromAncestors(e,!0,cvox.ChromeVox.verbosity),c.push(e));
1098 f=cvox.DescriptionUtil.subWalker_.next(f);if(!f)break;e=d;d=f.start.node}return c};
1099 cvox.DescriptionUtil.getFullDescriptionsFromChildren=function(a,b){var c=[];if(!b)return c;var d;if(cvox.DomUtil.isLeafNode(b))return a?d=cvox.DomUtil.getUniqueAncestors(a,b):(d=[],d.push(b)),d=cvox.DescriptionUtil.getDescriptionFromAncestors(d,!0,cvox.ChromeVox.verbosity),c.push(d),c;d=b;var e=cvox.CursorSelection.fromNode(b);if(!e)return c;b=cvox.DescriptionUtil.subWalker_.sync(e).start.node;e=cvox.CursorSelection.fromNode(b);if(!e)return c;for(;cvox.DomUtil.isDescendantOfNode(b,d);){c=c.concat(cvox.DescriptionUtil.getFullDescriptionsFromChildren(a,
1100 b));e=cvox.DescriptionUtil.subWalker_.next(e);if(!e)break;a=b;b=e.start.node}return c};
1101 cvox.DescriptionUtil.insertCollectionDescription_=function(a){var b=cvox.DescriptionUtil.getAnnotations_(a);if(3<=a.length&&0==a[0].context.length&&1==b.length&&0<b[0].length&&cvox.DescriptionUtil.isAnnotationCollection_(b[0])){var b=b[0],c=a[0].context;a[0].context="";for(var d=0;d<a.length;d++)a[d].annotation="";a.splice(0,0,new cvox.NavDescription({context:c,text:"",annotation:cvox.ChromeVox.msgs.getMsg("collection
",[b,cvox.ChromeVox.msgs.getNumber(a.length)])}))}};
1102 cvox.DescriptionUtil.getAnnotations_=function(a){for(var b=[],c=0;c<a.length;++c){var d=a[c];if(-1==b.indexOf(d.annotation)){var e=cvox.ChromeVox.msgs.getMsg("tag_link
");-1!=d.annotation.toLowerCase().indexOf(e.toLowerCase())?-1==b.indexOf(e)&&b.push(e):b.push(d.annotation)}}return b};cvox.DescriptionUtil.isAnnotationCollection_=function(a){return a==cvox.ChromeVox.msgs.getMsg("tag_link
")};cvox.DescriptionUtil.shouldDescribeExit_=function(a){return a.some(function(a){switch(a.tagName){case "TABLE
":case "MATH
":return!0}return cvox.AriaUtil.isLandmark(a)})};
1103 cvox.DescriptionUtil.getMathDescription=function(a){var b=cvox.SpeechRuleEngine.getInstance(),c=cvox.TraverseMath.getInstance();b.parameterize(cvox.MathmlStore.getInstance());c.initialize(a);a=b.evaluateNode(c.activeNode);if(a==[])return[new cvox.NavDescription({text:"empty math
"})];cvox.ChromeVox.verbosity==cvox.VERBOSITY_VERBOSE&&(a[a.length-1].annotation="math
");a[0].pushEarcon(cvox.AbstractEarcons.SPECIAL_CONTENT);return a};cvox.FindUtil={};cvox.FindUtil.objectWalker_=new cvox.BareObjectWalker;cvox.FindUtil.findNext=function(a,b,c){var d=a.isReversed();a=(new cvox.CursorSelection(a.absStart(),a.absStart())).setReversed(d);var e;if(e=b(cvox.DomUtil.getAncestors(a.start.node)))if(a=cvox.CursorSelection.fromNode(e).setReversed(d),c)return a;for(;a;){a=cvox.FindUtil.objectWalker_.next(a);c=null;if(!a||(c=b(cvox.DomUtil.getAncestors(a.start.node))))return c?cvox.CursorSelection.fromNode(c):null;if("IFRAME
"==a.start.node.tagName)return a}return null};cvox.Interframe=function(){};cvox.Interframe.IF_MSG_PREFIX="cvox
.INTERFRAME
:";cvox.Interframe.SET_ID="cvox
.INTERFRAME_SET_ID
";cvox.Interframe.listeners=[];cvox.Interframe.allowAccessToIframeContentWindow=!0;
1104 cvox.Interframe.init=function(){cvox.Interframe.messageListener=function(a){if("string
"===typeof a.data&&0==a.data.indexOf(cvox.Interframe.IF_MSG_PREFIX)){a=a.data.substr(cvox.Interframe.IF_MSG_PREFIX.length);a=cvox.ChromeVoxJSON.parse(a);a.command==cvox.Interframe.SET_ID&&(cvox.Interframe.id=a.id);for(var b=0,c;c=cvox.Interframe.listeners[b];b++)c(a)}return!1};window.addEventListener("message
",cvox.Interframe.messageListener,!0)};
1105 cvox.Interframe.shutdown=function(){window.removeEventListener("message
",cvox.Interframe.messageListener,!0)};cvox.Interframe.addListener=function(a){cvox.Interframe.listeners.push(a)};cvox.Interframe.sendMessageToWindow=function(a,b){var c=cvox.Interframe.IF_MSG_PREFIX+cvox.ChromeVoxJSON.stringify(a,null,null);b.postMessage(c,"*")};
1106 cvox.Interframe.sendMessageToIFrame=function(a,b){if(cvox.Interframe.allowAccessToIframeContentWindow&&b.contentWindow)cvox.Interframe.sendMessageToWindow(a,b.contentWindow);else{var c=cvox.Interframe.IF_MSG_PREFIX+cvox.ChromeVoxJSON.stringify(a,null,null),d=document.createElement("script
");d.type="text
/javascript
";if(b.hasAttribute("id
")&&document.getElementById(b.id)==b)d.innerHTML="document
.getElementById(decodeURI('"+encodeURI(b.id)+"')).contentWindow
.postMessage(decodeURI('"+encodeURI(c)+"'), '*');";
1107 else{var e="cvox_iframe
"+a.id;""===b.className?b.className=e:-1==b.className.indexOf(e)&&(b.className+=" "+e);d.innerHTML="document
.getElementsByClassName(decodeURI('"+encodeURI(e)+"'))[0].contentWindow
.postMessage(decodeURI('"+encodeURI(c)+"'), '*');"}document.head.appendChild(d);window.setTimeout(function(){document.head.removeChild(d)},1E3)}};
1108 cvox.Interframe.sendMessageToParentWindow=function(a){cvox.Interframe.isIframe()&&(a.sourceId=cvox.Interframe.id,window.parent?cvox.Interframe.sendMessageToWindow(a,window.parent):(a=cvox.Interframe.IF_MSG_PREFIX+cvox.ChromeVoxJSON.stringify(a,null,null),window.location.href="javascript
:window
.parent
.postMessage('"+encodeURI(a)+"', '*');"))};cvox.Interframe.sendIdToIFrame=function(a,b){var c={command:cvox.Interframe.SET_ID,id:a};cvox.Interframe.sendMessageToIFrame(c,b)};
1109 cvox.Interframe.isIframe=function(){return window!=window.parent};cvox.Interframe.init();cvox.PageSelection=function(a){this.sel_=a.clone();this.sel_.select();this.wasBegin_=!0};
1110 cvox.PageSelection.prototype.getDescription=function(a,b,c){var d=[];this.sel_.isReversed()!=c.isReversed()?(d=a.getDescription(c,b),d[0].annotation=cvox.ChromeVox.msgs.getMsg("describe_unselected
"),d[0].pushEarcon(cvox.AbstractEarcons.SELECTION_REVERSE)):(d=a.getDescription(b,c),d[0].annotation=cvox.ChromeVox.msgs.getMsg("describe_selected
"),d[0].pushEarcon(cvox.AbstractEarcons.SELECTION),!this.wasBegin_&&this.sel_.absEquals(c.clone().normalize())&&(a=a.getDescription(c,b),a[0].annotation=cvox.ChromeVox.msgs.getMsg("describe_unselected
"),
1111 a[0].pushEarcon(cvox.AbstractEarcons.SELECTION_REVERSE),a[0].pushEarcon(cvox.AbstractEarcons.WRAP),d=a.concat(d)));return d};cvox.PageSelection.prototype.getFullDescription=function(){return[new cvox.NavDescription({text:window.getSelection().toString(),context:cvox.ChromeVox.msgs.getMsg("selection_is
")})]};
1112 cvox.PageSelection.prototype.extend=function(a){this.sel_.directedBefore(a)?this.sel_.end=this.sel_.isReversed()==a.isReversed()?a.end.clone():a.start.clone():this.sel_=a.clone();this.sel_.select();this.wasBegin_=!1;return!this.sel_.absEquals(a)};cvox.BrailleUtil={};cvox.BrailleUtil.ITEM_SEPARATOR=" ";cvox.BrailleUtil.CONTAINER="tag_h1_brl tag_h2_brl tag_h3_brl tag_h4_brl tag_h5_brl tag_h6_brl
".split(" ");
1113 cvox.BrailleUtil.TEMPLATE={base:"c n v r s
",aria_role_alert:"r
: n
",aria_role_button:"[n
]",aria_role_textbox:"n
: v r
",input_type_button:"[n
]",input_type_checkbox:"n (s
)",input_type_email:"n
: v r
",input_type_number:"n
: v r
",input_type_password:"n
: v r
",input_type_search:"n
: v r
",input_type_submit:"[n
]",input_type_text:"n
: v r
",input_type_tel:"n
: v r
",input_type_url:"n
: v r
",tag_button:"[n
]",tag_textarea:"n
: v r
"};cvox.BrailleUtil.ValueSpan=function(a){this.offset=a};
1114 cvox.BrailleUtil.ValueSelectionSpan=function(){};cvox.BrailleUtil.getName=function(a){return a?cvox.DomUtil.getName(a).trim():""};cvox.BrailleUtil.getRoleMsg=function(a){if(!a)return"";(a=cvox.DomUtil.getRoleMsg(a,cvox.VERBOSITY_VERBOSE))&&(a=cvox.DomUtil.collapseWhitespace(a));a&&0<a.length&&cvox.ChromeVox.msgs.getMsg(a+"_brl
")&&(a+="_brl
");return a};cvox.BrailleUtil.getRole=function(a){return a?(a=cvox.BrailleUtil.getRoleMsg(a))?cvox.ChromeVox.msgs.getMsg(a):"":""};
1115 cvox.BrailleUtil.getState=function(a){return a?cvox.NodeStateUtil.expand(cvox.DomUtil.getStateMsgs(a,!0).map(function(a){cvox.ChromeVox.msgs.getMsg(a[0]+"_brl
")&&(a[0]+="_brl
");return a})):""};cvox.BrailleUtil.getContainer=function(a,b){if(!a||!b)return"";for(var c=cvox.DomUtil.getUniqueAncestors(a,b),d=0,e;e=c[d];d++)if((e=cvox.BrailleUtil.getRoleMsg(e))&&-1!=cvox.BrailleUtil.CONTAINER.indexOf(e))return cvox.ChromeVox.msgs.getMsg(e);return""};
1116 cvox.BrailleUtil.getValue=function(a){if(!a)return new cvox.Spannable;var b=new cvox.BrailleUtil.ValueSpan(0);if(cvox.DomUtil.isInputTypeText(a)){var c=a.value;"password
"===a.type&&(c=c.replace(/./g,"*"));b=new cvox.Spannable(c,b);a===document.activeElement&&cvox.DomUtil.doesInputSupportSelection(a)&&b.setSpan(new cvox.BrailleUtil.ValueSelectionSpan,a.selectionStart,a.selectionEnd);return b}if(a instanceof HTMLTextAreaElement){var d=new cvox.EditableTextAreaShadow;d.update(a);var e=d.getLineIndex(a.selectionEnd),
1117 c=d.getLineStart(e),d=d.getLineEnd(e),d=a.value.substring(c,d);b.offset=c;b=new cvox.Spannable(d,b);a===document.activeElement&&(d=Math.max(a.selectionStart-c,0),a=Math.min(a.selectionEnd-c,b.getLength()),b.setSpan(new cvox.BrailleUtil.ValueSelectionSpan,d,a));return b}return new cvox.Spannable(cvox.DomUtil.getValue(a),b)};
1118 cvox.BrailleUtil.getTemplated=function(a,b,c){c=c?c:{};var d=c.roleMsg||(b?cvox.DomUtil.getRoleMsg(b,cvox.VERBOSITY_VERBOSE):""),e=c.role;!e&&c.roleMsg&&(e=cvox.ChromeVox.msgs.getMsg(c.roleMsg+"_brl
")||cvox.ChromeVox.msgs.getMsg(c.roleMsg));for(var e=e||cvox.BrailleUtil.getRole(b),d=cvox.BrailleUtil.TEMPLATE[d]||cvox.BrailleUtil.TEMPLATE.base,f=new cvox.Spannable,g=function(d){switch(d){case "n
":return c.name||cvox.BrailleUtil.getName(b);case "r
":return e;case "s
":return c.state||cvox.BrailleUtil.getState(b);
1119 case "c
":return c.container||cvox.BrailleUtil.getContainer(a,b);case "v
":return c.value||cvox.BrailleUtil.getValue(b);default:return d}},h=0;h<d.length;h++){var k=g(d[h]);f.append(k);k.toString()||" "!=d[h+1]||h++}return f.trimRight()};cvox.BrailleUtil.createValue=function(a,b,c){a=new cvox.Spannable(a,new cvox.BrailleUtil.ValueSpan(0));if(goog.isDef(b)){c=goog.isDef(c)?c:b;if(b>c){var d=b;b=c;c=d}a.setSpan(new cvox.BrailleUtil.ValueSelectionSpan,b,c)}return a};cvox.MathmlStoreUtil={};cvox.MathmlStoreUtil.matchMathjaxToMathml=function(a){var b=cvox.TraverseMath.getInstance().activeMathmlHost;return b.querySelector("#"+a.id)};cvox.MathmlStoreUtil.retrieveMathjaxExtender=function(a){return(a=cvox.MathmlStoreUtil.matchMathjaxToMathml(a))?[a]:[]};cvox.MathmlStoreUtil.retrieveMathjaxLeaf=function(a){return(a=cvox.MathmlStoreUtil.matchMathjaxToMathml(a))?[a]:[]};
1120 cvox.MathmlStoreUtil.checkMathjaxTag=function(a,b){var c=cvox.MathmlStoreUtil.matchMathjaxToMathml(a);return c&&c.tagName.toUpperCase()==b?[c]:[]};cvox.MathmlStoreUtil.checkMathjaxMunder=function(a){return cvox.MathmlStoreUtil.checkMathjaxTag(a,"MUNDER
")};cvox.MathmlStoreUtil.checkMathjaxMover=function(a){return cvox.MathmlStoreUtil.checkMathjaxTag(a,"MOVER
")};cvox.MathmlStoreUtil.checkMathjaxMsub=function(a){return cvox.MathmlStoreUtil.checkMathjaxTag(a,"MSUB
")};
1121 cvox.MathmlStoreUtil.checkMathjaxMsup=function(a){return cvox.MathmlStoreUtil.checkMathjaxTag(a,"MSUP
")};cvox.MathmlStoreUtil.nextSeparatorFunction=function(a){if(a){if(a.match(/^\s+$/))return null;var b=a.replace(/\s/g,"").split("").filter(function(a){return a})}else b=[","];return function(){return 1<b.length?b.shift():b[0]}};cvox.MathmlStoreUtil.mfencedSeparators=function(a,b){var c=cvox.MathmlStoreUtil.nextSeparatorFunction(b);return function(){return c?c():""}};
1122 cvox.MathmlStoreUtil.contentIterator=function(a,b){var c=0<a.length?cvox.XpathUtil.evalXPath("../../content/*",a[0]):[];return function(){var a=c.shift();return b+(a?a.textContent:"")}};cvox.StoreUtil={};cvox.StoreUtil.nodeCounter=function(a,b){var c=a.length,d=0,e=b;b||(e="");return function(){d<c&&(d+=1);return e+" "+d}};cvox.MathmlStoreRules=function(){cvox.MathmlStoreRules.initCustomFunctions_();cvox.MathmlStoreRules.initDefaultRules_();cvox.MathmlStoreRules.initMathjaxRules_();cvox.MathmlStoreRules.initAliases_();cvox.MathmlStoreRules.initSpecializationRules_();cvox.MathmlStoreRules.initSemanticRules_()};goog.addSingletonGetter(cvox.MathmlStoreRules);cvox.MathmlStoreRules.mathStore=cvox.MathmlStore.getInstance();cvox.MathmlStoreRules.mathStore.initialize=cvox.MathmlStoreRules.getInstance;
1123 cvox.MathmlStoreRules.defineDefaultMathmlRule_=goog.bind(cvox.MathmlStoreRules.mathStore.defineDefaultMathmlRule,cvox.MathmlStoreRules.mathStore);cvox.MathmlStoreRules.defineRule_=goog.bind(cvox.MathmlStoreRules.mathStore.defineRule,cvox.MathmlStoreRules.mathStore);cvox.MathmlStoreRules.defineRuleAlias_=goog.bind(cvox.MathmlStoreRules.mathStore.defineRuleAlias,cvox.MathmlStoreRules.mathStore);
1124 cvox.MathmlStoreRules.addContextFunction_=goog.bind(cvox.MathmlStoreRules.mathStore.contextFunctions.add,cvox.MathmlStoreRules.mathStore.contextFunctions);cvox.MathmlStoreRules.addCustomQuery_=goog.bind(cvox.MathmlStoreRules.mathStore.customQueries.add,cvox.MathmlStoreRules.mathStore.customQueries);
1125 cvox.MathmlStoreRules.initCustomFunctions_=function(){(0,cvox.MathmlStoreRules.addContextFunction_)("CTXFnodeCounter",cvox.StoreUtil.nodeCounter);(0,cvox.MathmlStoreRules.addContextFunction_)("CTXFmfSeparators",cvox.MathmlStoreUtil.mfencedSeparators);(0,cvox.MathmlStoreRules.addContextFunction_)("CTXFcontentIterator",cvox.MathmlStoreUtil.contentIterator);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFextender",cvox.MathmlStoreUtil.retrieveMathjaxExtender);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFmathmlmunder",
1126 cvox.MathmlStoreUtil.checkMathjaxMunder);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFmathmlmover",cvox.MathmlStoreUtil.checkMathjaxMover);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFmathmlmsub",cvox.MathmlStoreUtil.checkMathjaxMsub);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFmathmlmsup",cvox.MathmlStoreUtil.checkMathjaxMsup);(0,cvox.MathmlStoreRules.addCustomQuery_)("CQFlookupleaf",cvox.MathmlStoreUtil.retrieveMathjaxLeaf)};
1127 cvox.MathmlStoreRules.initDefaultRules_=function(){(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("math","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mspace","[p] (pause:250)");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mstyle","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mpadded","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("merror","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mphantom","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mtext",
1128 "[t] text(); [p] (pause:200)");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mi","[n] text()");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mo","[n] text() (rate:-0.1)");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mn","[n] text()");(0,cvox.MathmlStoreRules.defineRule_)("mtext-variant","default.default",'[t] "begin"; [t] @mathvariant (pause:150);[t] text() (pause:150); [t] "end"; [t] @mathvariant (pause:200)',"self::mathml:mtext","@mathvariant",'@mathvariant!="normal"');(0,cvox.MathmlStoreRules.defineRule_)("mi-variant",
1129 "default.default","[t] @mathvariant; [n] text()","self::mathml:mi","@mathvariant",'@mathvariant!="normal"');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mi-variant","self::mathml:mn","@mathvariant",'@mathvariant!="normal"');(0,cvox.MathmlStoreRules.defineRule_)("mo-variant","default.default","[t] @mathvariant; [n] text() (rate:-0.1)","self::mathml:mo","@mathvariant",'@mathvariant!="normal"');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("ms",'[t] "string" (pitch:0.5, rate:0.5); [t] text()');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("msup",
1130 '[n] ./*[1]; [t] "super";[n] ./*[2] (pitch:0.35); [p] (pause:300)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("msubsup",'[n] ./*[1]; [t] "sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:200);[t] "super"; [n] ./*[3] (pitch:0.35); [p] (pause:300)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("msub",'[n] ./*[1]; [t] "sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:300)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mover",'[n] ./*[2] (pitch:0.35); [p] (pause:200); [t] "over"; [n] ./*[1]; [p] (pause:400)');
1131 (0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("munder",'[n] ./*[2] (pitch:-0.35); [t] "under"; [n] ./*[1]; [p] (pause:400)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("munderover",'[n] ./*[2] (pitch:-0.35); [t] "under and"; [n] ./*[3] (pitch:0.35); [t] "over"; [n] ./*[1]; [p] (pause:400)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mrow","[m] ./*");(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("msqrt",'[t] "Square root of"; [m] ./* (rate:0.2); [p] (pause:400)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mroot",
1132 '[t] "root of order"; [n] ./*[2]; [t] "of";[n] ./*[1] (rate:0.2); [p] (pause:400)');(0,cvox.MathmlStoreRules.defineDefaultMathmlRule_)("mfrac",' [p] (pause:400); [n] ./*[1] (pitch:0.3); [t] "divided by"; [n] ./*[2] (pitch:-0.3); [p] (pause:400)');(0,cvox.MathmlStoreRules.defineRule_)("mfenced-single","default.default",'[t] @open (context:"opening"); [m] ./* (separator:@separators);[t] @close (context:"closing")',"self::mathml:mfenced","string-length(string(@separators))=1");(0,cvox.MathmlStoreRules.defineRule_)("mfenced-empty",
1133 "default.default",'[t] @open (context:"opening"); [m] ./*;[t] @close (context:"closing")',"self::mathml:mfenced","string-length(string(@separators))=1",'string(@separators)=" "');(0,cvox.MathmlStoreRules.defineRule_)("mfenced-comma","default.default",'[t] @open (context:"opening"); [m] ./* (separator:"comma");[t] @close (context:"closing")',"self::mathml:mfenced");(0,cvox.MathmlStoreRules.defineRule_)("mfenced-multi","default.default",'[t] @open (context:"opening"); [m] ./* (sepFunc:CTXFmfSeparators,separator:@separators); [t] @close (context:"closing")',
1134 "self::mathml:mfenced","string-length(string(@separators))>1");(0,cvox.MathmlStoreRules.defineRule_)("mtable","default.default",'[t] "matrix"; [m] ./* (ctxtFunc:CTXFnodeCounter,context:"row",pause:100)',"self::mathml:mtable");(0,cvox.MathmlStoreRules.defineRule_)("mtr","default.default",'[m] ./* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)',"self::mathml:mtr");(0,cvox.MathmlStoreRules.defineRule_)("mtd","default.default","[m] ./*","self::mathml:mtd");(0,cvox.MathmlStoreRules.defineRule_)("mtable",
1135 "default.superbrief",'[t] count(child::mathml:mtr); [t] "by";[t] count(child::mathml:mtr[1]/mathml:mtd); [t] "matrix";',"self::mathml:mtable");(0,cvox.MathmlStoreRules.defineRule_)("mtable","default.short",'[t] "matrix"; [m] ./*',"self::mathml:mtable");(0,cvox.MathmlStoreRules.defineRule_)("mtr","default.short","[m] ./*","self::mathml:mtr");(0,cvox.MathmlStoreRules.defineRule_)("mtd","default.short",'[t] "Element"; [t] count(./preceding-sibling::mathml:mtd)+1;[t] count(./parent::mathml:mtr/preceding-sibling::mathml:mtr)+1;[p] (pause:500); [m] ./*',
1136 "self::mathml:mtd");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-4","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:200);[t] "right sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:200);[t] "right super"; [n] ./*[3] (pitch:0.35); [p] (pause:300);',"self::mathml:mmultiscripts");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-3-1","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:200);[t] "right super"; [n] ./*[3] (pitch:0.35); [p] (pause:300);',
1137 "self::mathml:mmultiscripts","./mathml:none=./*[2]","./mathml:mprescripts=./*[4]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-3-2","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:200);[t] "right sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:200);',"self::mathml:mmultiscripts","./mathml:none=./*[3]","./mathml:mprescripts=./*[4]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-3-3",
1138 "default.default",'[n] ./*[1]; [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:200);[t] "right sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:200);[t] "right super"; [n] ./*[3] (pitch:0.35); [p] (pause:300);',"self::mathml:mmultiscripts","./mathml:none=./*[5]","./mathml:mprescripts=./*[4]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-3-4","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);[t] "right sub"; [n] ./*[2] (pitch:-0.35); [p] (pause:200);[t] "right super"; [n] ./*[3] (pitch:0.35); [p] (pause:300);',
1139 "self::mathml:mmultiscripts","./mathml:none=./*[6]","./mathml:mprescripts=./*[4]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-2-1","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:300);',"self::mathml:mmultiscripts","./mathml:none=./*[2]","./mathml:none=./*[3]","./mathml:mprescripts=./*[4]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-1-1","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left super"; [n] ./*[6] (pitch:0.35); [p] (pause:300);',
1140 "self::mathml:mmultiscripts","./mathml:none=./*[2]","./mathml:none=./*[3]","./mathml:mprescripts=./*[4]","./mathml:none=./*[5]");(0,cvox.MathmlStoreRules.defineRule_)("mmultiscripts-1-2","default.default",'[n] ./*[1]; [p] (pause:200);[t] "left sub"; [n] ./*[5] (pitch:-0.35); [p] (pause:200);',"self::mathml:mmultiscripts","./mathml:none=./*[2]","./mathml:none=./*[3]","./mathml:mprescripts=./*[4]","./mathml:none=./*[6]")};
1141 cvox.MathmlStoreRules.initMathjaxRules_=function(){(0,cvox.MathmlStoreRules.defineRule_)("mj-math","default.default","[n] ./*[1]/*[1]/*[1]",'self::span[@class="math"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-leaf","default.default","[n] CQFlookupleaf",'self::span[@class="mi"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-leaf",'self::span[@class="mo"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-leaf",'self::span[@class="mn"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-leaf",'self::span[@class="mtext"]');
1142 (0,cvox.MathmlStoreRules.defineRule_)("mj-mo-ext","default.default","[n] CQFextender",'self::span[@class="mo"]',"./*[1]/*[1]/text()","./*[1]/*[2]/text()");(0,cvox.MathmlStoreRules.defineRule_)("mj-texatom","default.default","[n] ./*[1]",'self::span[@class="texatom"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-msubsup","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "sub"; [n] ./*[1]/*[3]/*[1] (pitch:-0.35);[p] (pause:200); [t] "super"; [n] ./*[1]/*[2]/*[1] (pitch:0.35);[p] (pause:300)','self::span[@class="msubsup"]');
1143 (0,cvox.MathmlStoreRules.defineRule_)("mj-msub","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "sub";[n] ./*[1]/*[2]/*[1] (pitch:-0.35); [p] (pause:300)','self::span[@class="msub"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-msup","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "super";[n] ./*[1]/*[2]/*[1] (pitch:0.35); [p] (pause:300)','self::span[@class="msup"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-munderover","default.default",'[n] ./*[1]/*[2]/*[1] (pitch:0.35); [t] "under and";[n] ./*[1]/*[3]/*[1] (pitch:-0.35); [t] "over";[n] ./*[1]/*[1]/*[1]; [p] (pause:400)',
1144 'self::span[@class="munderover"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-munder","default.default",'[n] ./*[1]/*[2]/*[1] (pitch:0.35); [t] "under";[n] ./*[1]/*[1]/*[1]; [p] (pause:400)','self::span[@class="munder"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-mover","default.default",'[n] ./*[1]/*[2]/*[1] (pitch:0.35); [t] "over";[n] ./*[1]/*[1]/*[1]; [p] (pause:400)','self::span[@class="mover"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-mfrac","default.default",'[p] (pause:250); [n] ./*[1]/*[1]/*[1] (pitch:0.3); [p] (pause:250); [t] "divided by"; [n] ./*[1]/*[2]/*[1] (pitch:-0.3);[p] (pause:400)',
1145 'self::span[@class="mfrac"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-msqrt","default.default",'[t] "Square root of";[n] ./*[1]/*[1]/*[1] (rate:0.2); [p] (pause:400)','self::span[@class="msqrt"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-mroot","default.default",'[t] "root of order"; [n] ./*[1]/*[4]/*[1]; [t] "of";[n] ./*[1]/*[1]/*[1] (rate:0.2); [p] (pause:400)','self::span[@class="mroot"]');(0,cvox.MathmlStoreRules.defineRule_)("mj-mfenced","default.default",'[t] "opening"; [n] ./*[1]; [m] ./*[position()>1 and position()<last()]; [t] "closing"; [n] ./*[last()]',
1146 'self::span[@class="mfenced"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-leaf",'self::span[@class="mtable"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-leaf",'self::span[@class="mmultiscripts"]')};
1147 cvox.MathmlStoreRules.initAliases_=function(){(0,cvox.MathmlStoreRules.defineRuleAlias_)("mspace",'self::span[@class="mspace"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mstyle",'self::span[@class="mstyle"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mpadded",'self::span[@class="mpadded"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("merror",'self::span[@class="merror"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mphantom",'self::span[@class="mphantom"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("ms",
1148 'self::span[@class="ms"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mrow",'self::span[@class="mrow"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-msub",'self::span[@class="msubsup"]',"CQFmathmlmsub");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-msup",'self::span[@class="msubsup"]',"CQFmathmlmsup");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-munder",'self::span[@class="munderover"]',"CQFmathmlmunder");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-mover",'self::span[@class="munderover"]',
1150 cvox.MathmlStoreRules.initSpecializationRules_=function(){(0,cvox.MathmlStoreRules.defineRule_)("square","default.default",'[n] ./*[1]; [t] "square" (pitch:0.35); [p] (pause:300)',"self::mathml:msup","./*[2][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("square","self::mathml:msup","./mathml:mrow=./*[2]","count(./*[2]/*)=1","./*[2]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRule_)("cube","default.default",'[n] ./*[1]; [t] "cube" (pitch:0.35); [p] (pause:300)',"self::mathml:msup","./*[2][text()=3]");
1151 (0,cvox.MathmlStoreRules.defineRuleAlias_)("cube","self::mathml:msup","./mathml:mrow=./*[2]","count(./*[2]/*)=1","./*[2]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRule_)("square-sub","default.default",'[n] ./*[1]; [t] "sub"; [n] ./*[2] (pitch:-0.35);[p] (pause:300); [t] "square" (pitch:0.35); [p] (pause:400)',"self::mathml:msubsup","./*[3][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("square-sub","self::mathml:msubsup","./mathml:mrow=./*[3]","count(./*[3]/*)=1","./*[3]/*[1][text()=2]");
1152 (0,cvox.MathmlStoreRules.defineRule_)("cube-sub","default.default",'[n] ./*[1]; [t] "sub"; [n] ./*[2] (pitch:-0.35);[p] (pause:300); [t] "cube" (pitch:0.35); [p] (pause:400)',"self::mathml:msubsup","./*[3][text()=3]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("cube-sub","self::mathml:msubsup","./mathml:mrow=./*[3]","count(./*[3]/*)=1","./*[3]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRule_)("mj-square","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "square" (pitch:0.35); [p] (pause:300)','self::span[@class="msup"]',
1153 "./*[1]/*[2]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-square",'self::span[@class="msup"]','./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',"count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-square",'self::span[@class="msubsup"]',"CQFmathmlmsup","./*[1]/*[2]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-square",'self::span[@class="msubsup"]',"CQFmathmlmsup",'./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',
1154 "count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRule_)("mj-cube","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "cube" (pitch:0.35); [p] (pause:300)','self::span[@class="msup"]',"./*[1]/*[2]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-cube",'self::span[@class="msup"]','./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',"count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-cube",
1155 'self::span[@class="msubsup"]',"CQFmathmlmsup","./*[1]/*[2]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-cube",'self::span[@class="msubsup"]',"CQFmathmlmsup",'./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',"count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRule_)("mj-square-sub","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "sub"; [n] ./*[1]/*[3]/*[1] (pitch:-0.35); [p] (pause:300); [t] "square" (pitch:0.35); [p] (pause:400)','self::span[@class="msubsup"]',
1156 "./*[1]/*[2]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-square-sub",'self::span[@class="msubsup"]','./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',"count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=2]");(0,cvox.MathmlStoreRules.defineRule_)("mj-cube-sub","default.default",'[n] ./*[1]/*[1]/*[1]; [t] "sub"; [n] ./*[1]/*[3]/*[1] (pitch:-0.35); [p] (pause:300); [t] "cube" (pitch:0.35); [p] (pause:400)','self::span[@class="msubsup"]',"./*[1]/*[2]/*[1][text()=3]");(0,cvox.MathmlStoreRules.defineRuleAlias_)("mj-cube-sub",
1157 'self::span[@class="msubsup"]','./*[1]/*[2]/*[1]=./*[1]/*[2]/span[@class="mrow"]',"count(./*[1]/*[2]/*[1]/*)=1","./*[1]/*[2]/*[1]/*[1][text()=3]")};
1158 cvox.MathmlStoreRules.initSemanticRules_=function(){(0,cvox.MathmlStoreRules.defineRule_)("stree","default.default","[n] ./*[1]","self::stree");(0,cvox.MathmlStoreRules.defineRule_)("multrel","default.default",'[t] "multirelation"; [m] children/* (sepFunc:CTXFcontentIterator)',"self::multirel");(0,cvox.MathmlStoreRules.defineRule_)("variable-equality","default.default",'[t] "equation sequence"; [m] ./children/* (context:"part",ctxtFunc:CTXFnodeCounter,separator:./text())','self::relseq[@role="equality"]',
1159 "count(./children/*)>2",'./children/punct[@role="ellipsis"]');(0,cvox.MathmlStoreRules.defineRule_)("multi-equality","default.default",'[t] "equation sequence"; [m] ./children/* (context:"part",ctxtFunc:CTXFnodeCounter,separator:./text())','self::relseq[@role="equality"]',"count(./children/*)>2");(0,cvox.MathmlStoreRules.defineRule_)("multi-equality","default.short",'[t] "equation sequence"; [m] ./children/* (separator:./text())','self::relseq[@role="equality"]',"count(./children/*)>2");(0,cvox.MathmlStoreRules.defineRule_)("equality",
1160 "default.default",'[t] "equation"; [t] "left hand side"; [n] children/*[1];[p] (pause:200); [n] text() (pause:200);[t] "right hand side"; [n] children/*[2]','self::relseq[@role="equality"]',"count(./children/*)=2");(0,cvox.MathmlStoreRules.defineRule_)("simple-equality","default.default","[n] children/*[1]; [p] (pause:200); [n] text() (pause:200);[n] children/*[2]",'self::relseq[@role="equality"]',"count(./children/*)=2","./children/identifier or ./children/number");(0,cvox.MathmlStoreRules.defineRule_)("simple-equality2",
1161 "default.default","[n] children/*[1]; [p] (pause:200); [n] text() (pause:200);[n] children/*[2]",'self::relseq[@role="equality"]',"count(./children/*)=2","./children/function or ./children/appl");(0,cvox.MathmlStoreRules.defineRule_)("multrel","default.default","[m] children/* (separator:./text())","self::relseq");(0,cvox.MathmlStoreRules.defineRule_)("binary-operation","default.default","[m] children/* (separator:text());","self::infixop");(0,cvox.MathmlStoreRules.defineRule_)("variable-addition",
1162 "default.default",'[t] "sum with variable number of summands";[p] (pause:400); [m] children/* (separator:./text())','self::infixop[@role="addition"]',"count(children/*)>2",'children/punct[@role="ellipsis"]');(0,cvox.MathmlStoreRules.defineRule_)("multi-addition","default.default",'[t] "sum with,"; [t] count(./children/*); [t] ", summands";[p] (pause:400); [m] ./children/* (separator:./text())','self::infixop[@role="addition"]',"count(./children/*)>2");(0,cvox.MathmlStoreRules.defineRule_)("prefix",
1163 "default.default",'[t] "prefix"; [n] text(); [t] "of" (pause 150);[n] children/*[1]',"self::prefixop");(0,cvox.MathmlStoreRules.defineRule_)("negative","default.default",'[t] "negative"; [n] children/*[1]',"self::prefixop",'self::prefixop[@role="negative"]');(0,cvox.MathmlStoreRules.defineRule_)("postfix","default.default",'[n] children/*[1]; [t] "postfix"; [n] text() (pause 300)',"self::postfixop");(0,cvox.MathmlStoreRules.defineRule_)("identifier","default.default","[n] text()","self::identifier");
1164 (0,cvox.MathmlStoreRules.defineRule_)("number","default.default","[n] text()","self::number");(0,cvox.MathmlStoreRules.defineRule_)("fraction","default.default",'[p] (pause:250); [n] children/*[1] (pitch:0.3); [p] (pause:250); [t] "divided by"; [n] children/*[2] (pitch:-0.3); [p] (pause:400)',"self::fraction");(0,cvox.MathmlStoreRules.defineRule_)("superscript","default.default",'[n] children/*[1]; [t] "super"; [n] children/*[2] (pitch:0.35);[p] (pause:300)',"self::superscript");(0,cvox.MathmlStoreRules.defineRule_)("subscript",
1165 "default.default",'[n] children/*[1]; [t] "sub"; [n] children/*[2] (pitch:-0.35);[p] (pause:300)',"self::subscript");(0,cvox.MathmlStoreRules.defineRule_)("ellipsis","default.default",'[p] (pause:200); [t] "dot dot dot"; [p] (pause:300)',"self::punct",'self::punct[@role="ellipsis"]');(0,cvox.MathmlStoreRules.defineRule_)("fence-single","default.default","[n] text()","self::punct",'self::punct[@role="openfence"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("fence-single","self::punct",'self::punct[@role="closefence"]');
1166 (0,cvox.MathmlStoreRules.defineRuleAlias_)("fence-single","self::punct",'self::punct[@role="vbar"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("fence-single","self::punct",'self::punct[@role="application"]');(0,cvox.MathmlStoreRules.defineRule_)("omit-punct","default.default","[p] (pause:200);","self::punct");(0,cvox.MathmlStoreRules.defineRule_)("omit-empty","default.default","","self::empty");(0,cvox.MathmlStoreRules.defineRule_)("fences-open-close","default.default",'[p] (pause:100); [t] "open"; [n] children/*[1]; [p] (pause:200);[t] "close"',
1167 'self::fenced[@role="leftright"]');(0,cvox.MathmlStoreRules.defineRule_)("fences-open-close-in-appl","default.default","[p] (pause:100); [n] children/*[1]; [p] (pause:200);",'self::fenced[@role="leftright"]',"./parent::children/parent::appl");(0,cvox.MathmlStoreRules.defineRule_)("fences-neutral","default.default",'[p] (pause:100); [t] "absolute value of"; [n] children/*[1];[p] (pause:350);',"self::fenced",'self::fenced[@role="neutral"]');(0,cvox.MathmlStoreRules.defineRule_)("omit-fences","default.default",
1168 "[p] (pause:500); [n] children/*[1]; [p] (pause:200);","self::fenced");(0,cvox.MathmlStoreRules.defineRule_)("matrix","default.default",'[t] "matrix"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:100)',"self::matrix");(0,cvox.MathmlStoreRules.defineRule_)("matrix-row","default.default",'[m] children/* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)','self::row[@role="matrix"]');(0,cvox.MathmlStoreRules.defineRule_)("matrix-cell","default.default","[n] children/*[1]",'self::cell[@role="matrix"]');
1169 (0,cvox.MathmlStoreRules.defineRule_)("vector","default.default",'[t] "vector"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"element",pause:100)',"self::vector");(0,cvox.MathmlStoreRules.defineRule_)("cases","default.default",'[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100)',"self::cases");(0,cvox.MathmlStoreRules.defineRule_)("cases-row","default.default","[m] children/*",'self::row[@role="cases"]');(0,cvox.MathmlStoreRules.defineRule_)("cases-cell",
1170 "default.default","[n] children/*[1]",'self::cell[@role="cases"]');(0,cvox.MathmlStoreRules.defineRule_)("row","default.default",'[m] ./* (ctxtFunc:CTXFnodeCounter,context:"column",pause:100)','self::row"');(0,cvox.MathmlStoreRules.defineRule_)("cases-end","default.default",'[t] "case statement"; [m] children/* (ctxtFunc:CTXFnodeCounter,context:"case",pause:100);[t] "end cases"',"self::cases","following-sibling::*");(0,cvox.MathmlStoreRules.defineRule_)("multiline","default.default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"line",pause:100)',
1171 "self::multiline");(0,cvox.MathmlStoreRules.defineRule_)("line","default.default","[m] children/*","self::line");(0,cvox.MathmlStoreRules.defineRule_)("table","default.default",'[t] "multiline equation";[m] children/* (ctxtFunc:CTXFnodeCounter,context:"row",pause:200)',"self::table");(0,cvox.MathmlStoreRules.defineRule_)("table-row","default.default","[m] children/* (pause:100)",'self::row[@role="table"]');(0,cvox.MathmlStoreRules.defineRuleAlias_)("cases-cell",'self::cell[@role="table"]');(0,cvox.MathmlStoreRules.defineRule_)("end-punct",
1172 "default.default","[m] children/*; [p] (pause:300)","self::punctuated",'@role="endpunct"');(0,cvox.MathmlStoreRules.defineRule_)("start-punct","default.default","[n] content/*[1]; [p] (pause:200); [m] children/*","self::punctuated",'@role="startpunct"');(0,cvox.MathmlStoreRules.defineRule_)("integral-punct","default.default","[n] children/*[1] (rate:0.2); [n] children/*[3] (rate:0.2)","self::punctuated",'@role="integral"');(0,cvox.MathmlStoreRules.defineRule_)("punctuated","default.default","[m] children/* (pause:100)",
1173 "self::punctuated");(0,cvox.MathmlStoreRules.defineRule_)("function","default.default","[n] text()","self::function");(0,cvox.MathmlStoreRules.defineRule_)("appl","default.default","[n] children/*[1]; [n] content/*[1]; [n] children/*[2]","self::appl");(0,cvox.MathmlStoreRules.defineRule_)("limboth","default.default",'[n] children/*[1]; [t] "from"; [n] children/*[2]; [t] "to";[n] children/*[3]',"self::limboth");(0,cvox.MathmlStoreRules.defineRule_)("sum-only","default.default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[p] (pause 250);',
1174 "self::limboth",'self::limboth[@role="sum"]');(0,cvox.MathmlStoreRules.defineRule_)("limlower","default.default",'[n] children/*[1]; [t] "over"; [n] children/*[2];',"self::limlower");(0,cvox.MathmlStoreRules.defineRule_)("limupper","default.default",'[n] children/*[1]; [t] "under"; [n] children/*[2];',"self::limupper");(0,cvox.MathmlStoreRules.defineRule_)("largeop","default.default","[n] text()","self::largeop");(0,cvox.MathmlStoreRules.defineRule_)("bigop","default.default",'[n] children/*[1]; [p] (pause 100); [t] "over"; [n] children/*[2];[p] (pause 250);',
1175 "self::bigop");(0,cvox.MathmlStoreRules.defineRule_)("integral","default.default","[n] children/*[1]; [p] (pause 100); [n] children/*[2]; [p] (pause 200);[n] children/*[3] (rate:0.35);","self::integral");(0,cvox.MathmlStoreRules.defineRule_)("sqrt","default.default",'[t] "Square root of"; [n] children/*[1] (rate:0.2); [p] (pause:400)',"self::sqrt");(0,cvox.MathmlStoreRules.defineRule_)("square","default.default",'[n] children/*[1]; [t] "square" (pitch:0.35); [p] (pause:300)',"self::superscript","children/*[2][text()=2]");
1176 (0,cvox.MathmlStoreRules.defineRule_)("text-no-mult","default.default","[n] children/*[1]; [p] (pause:200); [n] children/*[2]","self::infixop","children/text")};cvox.AbstractShifter=function(){this.isSubnavigating_=!1};cvox.AbstractShifter.prototype.begin=function(a,b){return this.currentWalker_.begin(b)};cvox.AbstractShifter.prototype.makeLessGranular=function(){this.ensureNotSubnavigating()};cvox.AbstractShifter.prototype.makeMoreGranular=function(){this.ensureNotSubnavigating()};cvox.AbstractShifter.prototype.ensureSubnavigating=function(){!1==this.isSubnavigating_&&(this.makeMoreGranular(),this.isSubnavigating_=!0)};
1177 cvox.AbstractShifter.prototype.ensureNotSubnavigating=function(){!0==this.isSubnavigating_&&(this.isSubnavigating_=!1,this.makeLessGranular())};cvox.AbstractShifter.prototype.isSubnavigating=function(){return this.isSubnavigating_};cvox.AbstractShifter.prototype.hasAction=function(a){return this.currentWalker_.hasAction(a)};cvox.AbstractShifter.prototype.performAction=function(a,b){return this.currentWalker_.performAction(a,b)};cvox.MathShifter=function(a){cvox.AbstractShifter.call(this);this.level_=0;this.bumped_=this.direction_=!1;cvox.TraverseMath.getInstance().initialize(a.start.node)};goog.inherits(cvox.MathShifter,cvox.AbstractShifter);cvox.MathShifter.prototype.next=function(a){var b=a.isReversed();this.bumped_=!cvox.TraverseMath.getInstance().nextSibling(b);return(b=cvox.TraverseMath.getInstance().getAttachedActiveNode())?cvox.CursorSelection.fromNode(b):a};
1178 cvox.MathShifter.prototype.sync=function(a){var b=cvox.TraverseMath.getInstance().getAttachedActiveNode();return b?cvox.CursorSelection.fromNode(b):a};cvox.MathShifter.prototype.getName=function(){return cvox.ChromeVox.msgs.getMsg("math_shifter")};cvox.MathShifter.prototype.getDescription=function(){var a=cvox.SpeechRuleEngine.getInstance().evaluateNode(cvox.TraverseMath.getInstance().activeNode);this.bumped_&&0<a.length&&a[0].pushEarcon(cvox.AbstractEarcons.WRAP_EDGE);return a};
1179 cvox.MathShifter.prototype.getBraille=function(a,b){return new cvox.NavBraille({text:cvox.BrailleUtil.getTemplated(a.start.node,b.start.node)})};cvox.MathShifter.prototype.getGranularityMsg=function(){return this.direction_?"up to level "+this.level_:"down to level "+this.level_};cvox.MathShifter.prototype.makeLessGranular=function(){this.level_=0<this.level_?this.level_-1:0;this.direction_=!0;this.bumped_=!cvox.TraverseMath.getInstance().nextParentChild(!0)};
1180 cvox.MathShifter.prototype.makeMoreGranular=function(){this.direction_=!1;(this.bumped_=!cvox.TraverseMath.getInstance().nextParentChild(!1))||this.level_++};
1181 cvox.MathShifter.create=function(a){if(cvox.DomPredicates.mathPredicate(cvox.DomUtil.getAncestors(a.start.node))){var b=cvox.DomUtil.getContainingMath(a.end.node);cvox.TraverseMath.getInstance().initialize(b);cvox.SpeechRuleEngine.getInstance().parameterize(cvox.MathmlStore.getInstance());b=cvox.MathStore.createDynamicConstraint(cvox.TraverseMath.getInstance().domain,cvox.TraverseMath.getInstance().style);cvox.SpeechRuleEngine.getInstance().setDynamicConstraint(b);return new cvox.MathShifter(a)}return null};cvox.TableUtil={};cvox.TableUtil.checkIfHeader=function(a){return"TH"==a.tagName||a.hasAttribute("scope")||a.hasAttribute("role")&&("rowheader"==a.getAttribute("role")||"columnheader"==a.getAttribute("role"))};
1182 cvox.TableUtil.determineColGroups=function(a){var b=[];if(0==a.length)return b;for(var c=0;c<a.length;c++){var d=a[c],e=cvox.TableUtil.getColNodes(d);if(0<e.length)for(d=0;d<e.length;d++){var f=e[d];if(f.hasAttribute("span"))for(var f=parseInt(f.getAttribute("span"),10),g=0;g<f;g++)b.push(c);else b.push(c)}else if(d.hasAttribute("span"))for(f=parseInt(d.getAttribute("span"),10),g=0;g<f;g++)b.push(c);else b.push(c)}return b};cvox.TableUtil.pushIfNotContained=function(a,b){-1==a.indexOf(b)&&a.push(b)};
1183 cvox.TableUtil.getChildRows=function(a){return cvox.XpathUtil.evalXPath('child::tbody/tr | child::thead/tr | child::*[attribute::role="row"]',a)};cvox.TableUtil.getChildCells=function(a){return cvox.XpathUtil.evalXPath('child::td | child::th | child::*[attribute::role="gridcell"] |child::*[attribute::role="rowheader"] |child::*[attribute::role="columnheader"]',a)};cvox.TableUtil.getCellWithID=function(a,b){return cvox.XpathUtil.evalXPath("id('"+b+"')",a)};
1184 cvox.TableUtil.getColGroups=function(a){return cvox.XpathUtil.evalXPath("child::colgroup",a)};cvox.TableUtil.getColNodes=function(a){return cvox.XpathUtil.evalXPath("child::col",a)};function ShadowTableNode(){}ShadowTableNode.prototype.rowHeaderCells=[];ShadowTableNode.prototype.colHeaderCells=[];cvox.TraverseTable=function(a){this.activeTable_=null;this.shadowTable_=[];this.candidateHeaders_=[];this.idToShadowNode_=[];this.initialize(a)};cvox.TraverseTable.prototype.colCount=null;cvox.TraverseTable.prototype.rowCount=null;cvox.TraverseTable.prototype.tableRowHeaders=null;cvox.TraverseTable.prototype.tableColHeaders=null;
1185 cvox.TraverseTable.prototype.initialize=function(a){a&&a!=this.activeTable_&&(this.activeTable_=a,this.currentCellCursor=null,this.tableRowHeaders=[],this.tableColHeaders=[],this.buildShadowTable_(),this.colCount=this.shadowColCount_(),this.rowCount=this.countRows_(),this.findHeaderCells_(),this.activeTable_.addEventListener("DOMSubtreeModified",goog.bind(function(){this.buildShadowTable_();this.colCount=this.shadowColCount_();this.rowCount=this.countRows_();this.tableRowHeaders=[];this.tableColHeaders=
1186 [];this.findHeaderCells_();0==this.colCount&&0==this.rowCount||null!=this.getCell()||this.attachCursorToNearestCell_()},this),!1))};
1187 cvox.TraverseTable.prototype.findNearestCursor=function(a){for(;a.firstElementChild&&"TABLE"!=a.firstElementChild.tagName&&!cvox.AriaUtil.isGrid(a.firstElementChild);)a=a.firstElementChild;for(;!cvox.DomPredicates.cellPredicate(cvox.DomUtil.getAncestors(a));)if(a=cvox.DomUtil.directedNextLeafNode(a),!cvox.DomUtil.getContainingTable(a,{allowCaptions:!0}))return null;for(var b=0;b<this.rowCount;++b)for(var c=0;c<this.colCount;++c)if(this.shadowTable_[b][c]&&cvox.DomUtil.isDescendantOfNode(a,this.shadowTable_[b][c].activeCell))return[b,
1188 c];return null};cvox.TraverseTable.prototype.attachCursorToNearestCell_=function(){if(this.currentCellCursor){var a=this.currentCellCursor,b=this.shadowTable_[a[0]];if(b)this.currentCellCursor=[a[0],b.length-1];else if(b=this.shadowTable_.length,0==b)this.currentCellCursor=null;else{var c=this.shadowTable_[b-1][a[1]];c?this.currentCellCursor=[b-1,a[1]]:this.goToLastCell()}}else this.goToLastCell()};
1189 cvox.TraverseTable.prototype.buildShadowTable_=function(){this.shadowTable_=[];for(var a=cvox.TableUtil.getChildRows(this.activeTable_),b=null,c=null,d=cvox.TableUtil.getColGroups(this.activeTable_),d=cvox.TableUtil.determineColGroups(d),e=0;e<a.length;e++)this.shadowTable_.push([]);for(e=0;e<a.length;e++)for(var f=cvox.TableUtil.getChildCells(a[e]),g=0,h=0;g<f.length;)if(null==this.shadowTable_[e][h]){var k=f[g],l=1,m=1;k.hasAttribute("colspan")&&(l=parseInt(k.getAttribute("colspan"),10),isNaN(l)||
1190 0>=l)&&(l=1);k.hasAttribute("rowspan")&&(m=parseInt(k.getAttribute("rowspan"),10),isNaN(m)||0>=m)&&(m=1);for(var p=0;p<m;p++)for(var q=0;q<l;q++){var n=new ShadowTableNode;0==p&&0==q?(n.spanned=!1,n.rowSpan=!1,n.colSpan=!1):(n.spanned=!0,n.rowSpan=1<m,n.colSpan=1<l);n.i=e;n.j=h;n.activeCell=k;n.rowHeaderCells=[];n.colHeaderCells=[];n.isRowHeader=!1;n.isColHeader=!1;cvox.TableUtil.checkIfHeader(n.activeCell)?this.candidateHeaders_.push(n):n.activeCell.hasAttribute("headers")&&this.candidateHeaders_.push(n);
1191 null==b?(b=a[e].parentNode,c=0):a[e].parentNode!=b&&(b=a[e].parentNode,c+=1);n.rowGroup=c;n.colGroup=0<d.length?d[h]:0;n.spanned||null!=k.id&&(this.idToShadowNode_[k.id]=n);this.shadowTable_[e+p][h+q]=n}h+=l;g++}else h+=1;return this.shadowTable_};
1192 cvox.TraverseTable.prototype.findHeaderCells_=function(){for(var a=0;a<this.candidateHeaders_.length;a++){var b=this.candidateHeaders_[a],c=b.activeCell,d=null,e=null;if(!b.spanned){"TH"!=c.tagName||c.hasAttribute("scope")?c.hasAttribute("scope")?e=c.getAttribute("scope"):c.hasAttribute("role")&&"rowheader"==c.getAttribute("role")?e="row":c.hasAttribute("role")&&"columnheader"==c.getAttribute("role")&&(e="col"):(0<b.j?"TH"==this.shadowTable_[b.i][b.j-1].activeCell.tagName&&(d="col"):b.j<this.shadowTable_[b.i].length-
1193 1?"TH"==this.shadowTable_[b.i][b.j+1].activeCell.tagName&&(d="col"):d="col",null==d&&(0<b.i?"TH"==this.shadowTable_[b.i-1][b.j].activeCell.tagName&&(d="row"):b.i<this.shadowTable_.length-1?"TH"==this.shadowTable_[b.i+1][b.j].activeCell.tagName&&(d="row"):d="row"));if("row"==e||"row"==d){b.isRowHeader=!0;for(d=b.j;d<this.shadowTable_[b.i].length;d++)e=this.shadowTable_[b.i][d],e.rowHeaderCells.push(c);this.tableRowHeaders.push(c)}else if("col"==e||"col"==d){b.isColHeader=!0;for(e=b.i;e<this.shadowTable_.length;e++){d=
1194 this.shadowTable_[e][b.j];if(null==d)break;d.colHeaderCells.push(c)}this.tableColHeaders.push(c)}else if("rowgroup"==e){b.isRowHeader=!0;for(var f=b.rowGroup,d=b.j+1;d<this.shadowTable_[b.i].length;d++)this.shadowTable_[b.i][d].rowHeaderCells.push(c);for(e=b.i+1;e<this.shadowTable_.length&&this.shadowTable_[e][0].rowGroup==f;e++)for(d=0;d<this.shadowTable_[e].length;d++)this.shadowTable_[e][d].rowHeaderCells.push(c);this.tableRowHeaders.push(c)}else if("colgroup"==e){b.isColHeader=!0;f=b.colGroup;
1195 for(d=b.j+1;d<this.shadowTable_[b.i].length;d++)this.shadowTable_[b.i][d].colGroup==f&&this.shadowTable_[b.i][d].colHeaderCells.push(c);for(e=b.i+1;e<this.shadowTable_.length;e++)for(d=0;d<this.shadowTable_[e].length;d++)this.shadowTable_[e][d].colGroup==f&&this.shadowTable_[e][d].colHeaderCells.push(c);this.tableColHeaders.push(c)}c.hasAttribute("headers")&&this.findAttrbHeaders_(b);c.hasAttribute("aria-describedby")&&this.findAttrbDescribedBy_(b)}}};
1196 cvox.TraverseTable.prototype.findAttrbHeaders_=function(a){for(var b=a.activeCell,c=b.getAttribute("headers").split(" "),d=0;d<c.length;d++)for(var e=cvox.TableUtil.getCellWithID(this.activeTable_,c[d]),f=0;f<e.length&&e[f].id!=b.id;f++){var g=this.idToShadowNode_[e[f].id];if(!cvox.TableUtil.checkIfHeader(g.activeCell)){var h=Math.abs(g.i-a.i),k=Math.abs(g.j-a.j);0==h||h<k?(cvox.TableUtil.pushIfNotContained(a.rowHeaderCells,g.activeCell),cvox.TableUtil.pushIfNotContained(this.tableRowHeaders,g.activeCell)):
1197 (cvox.TableUtil.pushIfNotContained(a.colHeaderCells,g.activeCell),cvox.TableUtil.pushIfNotContained(this.tableColHeaders,g.activeCell))}}};
1198 cvox.TraverseTable.prototype.findAttrbDescribedBy_=function(a){for(var b=a.activeCell,c=b.getAttribute("aria-describedby").split(" "),d=0;d<c.length;d++)for(var e=cvox.TableUtil.getCellWithID(this.activeTable_,c[d]),f=0;f<e.length&&e[f].id!=b.id;f++){var g=this.idToShadowNode_[e[f].id];cvox.TableUtil.checkIfHeader(g.activeCell)||(g.activeCell.hasAttribute("role")&&"rowheader"==g.activeCell.getAttribute("role")?(cvox.TableUtil.pushIfNotContained(a.rowHeaderCells,g.activeCell),cvox.TableUtil.pushIfNotContained(this.tableRowHeaders,
1199 g.activeCell)):g.activeCell.hasAttribute("role")&&"columnheader"==g.activeCell.getAttribute("role")&&(cvox.TableUtil.pushIfNotContained(a.colHeaderCells,g.activeCell),cvox.TableUtil.pushIfNotContained(this.tableColHeaders,g.activeCell)))}};cvox.TraverseTable.prototype.getCell=function(){if(!this.currentCellCursor||!this.shadowTable_)return null;var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a&&a.activeCell};
1200 cvox.TraverseTable.prototype.getCellAt=function(a){return a[0]<this.rowCount&&0<=a[0]&&a[1]<this.colCount&&0<=a[1]&&(a=this.shadowTable_[a[0]][a[1]],null!=a)?a.activeCell:null};cvox.TraverseTable.prototype.getCellRowHeaders=function(){var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a.rowHeaderCells};cvox.TraverseTable.prototype.getCellColHeaders=function(){var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a.colHeaderCells};
1201 cvox.TraverseTable.prototype.isSpanned=function(){var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a.spanned};cvox.TraverseTable.prototype.isRowHeader=function(){var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a.isRowHeader};cvox.TraverseTable.prototype.isColHeader=function(){var a=this.shadowTable_[this.currentCellCursor[0]][this.currentCellCursor[1]];return a.isColHeader};
1202 cvox.TraverseTable.prototype.getCol=function(){for(var a=[],b=0;b<this.shadowTable_.length;b++)if(this.shadowTable_[b][this.currentCellCursor[1]]){var c=this.shadowTable_[b][this.currentCellCursor[1]];if(c.colSpan&&c.rowSpan){var d=a[a.length-1];d!=c.activeCell&&a.push(c.activeCell)}else!c.colSpan&&c.rowSpan||a.push(c.activeCell)}return a};cvox.TraverseTable.prototype.summaryText=function(){return this.activeTable_.hasAttribute("summary")?this.activeTable_.getAttribute("summary"):null};
1203 cvox.TraverseTable.prototype.shadowColCount_=function(){for(var a=0,b=0;b<this.shadowTable_.length;b++)this.shadowTable_[b].length>a&&(a=this.shadowTable_[b].length);return a};cvox.TraverseTable.prototype.countRows_=function(){var a=cvox.TableUtil.getChildRows(this.activeTable_);return a.length};cvox.TraverseTable.prototype.nextRow=function(){return this.currentCellCursor?this.goToRow(this.currentCellCursor[0]+1):this.goToRow(0)};
1204 cvox.TraverseTable.prototype.nextCol=function(){return this.currentCellCursor?this.goToCol(this.currentCellCursor[1]+1):this.goToCol(0)};cvox.TraverseTable.prototype.goToRow=function(a){return null!=this.shadowTable_[a]?(this.currentCellCursor=null==this.currentCellCursor?[a,0]:[a,this.currentCellCursor[1]],!0):!1};cvox.TraverseTable.prototype.goToCol=function(a){if(0>a||a>=this.colCount)return!1;this.currentCellCursor=null==this.currentCellCursor?[0,a]:[this.currentCellCursor[0],a];return!0};
1205 cvox.TraverseTable.prototype.goToCell=function(a){if(a[0]<this.rowCount&&0<=a[0]&&a[1]<this.colCount&&0<=a[1]){var b=this.shadowTable_[a[0]][a[1]];if(null!=b)return this.currentCellCursor=a,!0}return!1};cvox.TraverseTable.prototype.goToLastCell=function(){var a=this.shadowTable_.length;if(0==a)return!1;var b=this.shadowTable_[a-1],a=[a-1,b.length-1],b=this.shadowTable_[a[0]][a[1]];return null!=b?(this.currentCellCursor=a,!0):!1};
1206 cvox.TraverseTable.prototype.goToRowLastCell=function(){var a=this.currentCellCursor[0],a=[a,this.shadowTable_[a].length-1],b=this.shadowTable_[a[0]][a[1]];return null!=b?(this.currentCellCursor=a,!0):!1};cvox.TraverseTable.prototype.goToColLastCell=function(){var a=this.getCol(),a=[a.length-1,this.currentCellCursor[1]],b=this.shadowTable_[a[0]][a[1]];return null!=b?(this.currentCellCursor=a,!0):!1};cvox.TableWalker=function(){this.tt=new cvox.TraverseTable(null)};goog.inherits(cvox.TableWalker,cvox.AbstractWalker);cvox.TableWalker.prototype.next=function(a){return this.nextRow(a)};cvox.TableWalker.prototype.sync=function(a){return this.goTo_(a,goog.bind(function(a){return this.tt.goToCell(a)},this))};
1207 cvox.TableWalker.prototype.getDescription=function(a,b){var c=this.syncPosition_(b);if(!c)return[];this.tt.goToCell(c);c=cvox.DescriptionUtil.getCollectionDescription(a,b);0==c.length&&c.push(new cvox.NavDescription({annotation:cvox.ChromeVox.msgs.getMsg("empty_cell")}));return c};cvox.TableWalker.prototype.getBraille=function(a,b){new cvox.NavBraille({});var c=this.syncPosition_(b);if(c){var d=cvox.BrailleUtil.getTemplated(a.start.node,b.start.node);d.append(" "+ ++c[0]+"/"+ ++c[1])}return new cvox.NavBraille({text:d})};
1208 cvox.TableWalker.prototype.goToFirstCell=function(a){return this.goTo_(a,goog.bind(function(){return this.tt.goToCell([0,0])},this))};cvox.TableWalker.prototype.goToLastCell=function(a){return this.goTo_(a,goog.bind(function(){return this.tt.goToLastCell()},this))};cvox.TableWalker.prototype.goToRowFirstCell=function(a){return this.goTo_(a,goog.bind(function(a){return this.tt.goToCell([a[0],0])},this))};
1209 cvox.TableWalker.prototype.goToRowLastCell=function(a){return this.goTo_(a,goog.bind(function(){return this.tt.goToRowLastCell()},this))};cvox.TableWalker.prototype.goToColFirstCell=function(a){return this.goTo_(a,goog.bind(function(a){return this.tt.goToCell([0,a[1]])},this))};cvox.TableWalker.prototype.goToColLastCell=function(a){return this.goTo_(a,goog.bind(function(){return this.tt.goToColLastCell()},this))};
1210 cvox.TableWalker.prototype.nextRow=function(a){return this.goTo_(a,goog.bind(function(b){return this.tt.goToCell([b[0]+(a.isReversed()?-1:1),b[1]])},this))};cvox.TableWalker.prototype.nextCol=function(a){return this.goTo_(a,goog.bind(function(b){return this.tt.goToCell([b[0],b[1]+(a.isReversed()?-1:1)])},this))};cvox.TableWalker.prototype.announceHeaders=function(a){cvox.ChromeVox.tts.speak(this.getHeaderText_(a),cvox.AbstractTts.QUEUE_MODE_FLUSH,cvox.AbstractTts.PERSONALITY_ANNOTATION);return a};
1211 cvox.TableWalker.prototype.speakTableLocation=function(a){cvox.ChromeVox.navigationManager.speakDescriptionArray(this.getLocationDescription_(a),cvox.AbstractTts.QUEUE_MODE_FLUSH,null);return a};cvox.TableWalker.prototype.exitShifterContent=function(a){a=this.getTableNode_(a);if(!a)return null;a=cvox.DomUtil.directedNextLeafNode(a,!1);return cvox.CursorSelection.fromNode(a)};
1212 cvox.TableWalker.prototype.getHeaderText_=function(a){this.tt.initialize(this.getTableNode_(a));return(a=this.tt.findNearestCursor(a.start.node))&&this.tt.goToCell(a)?this.getRowHeaderText_(a)+" "+this.getColHeaderText_(a):cvox.ChromeVox.msgs.getMsg("not_inside_table")};cvox.TableWalker.prototype.getLocationDescription_=function(a){a=this.getLocationInfo(a);return null==a?null:[new cvox.NavDescription({text:cvox.ChromeVox.msgs.getMsg("table_location",a)})]};
1213 cvox.TableWalker.prototype.getRowHeaderText_=function(a){var b="",c=this.tt.getCellRowHeaders();if(0==c.length)return c=this.tt.getCellAt([a[0],0]),b+=cvox.DomUtil.collapseWhitespace(cvox.DomUtil.getValue(c)+" "+cvox.DomUtil.getName(c)),cvox.ChromeVox.msgs.getMsg("row_header")+b;for(a=0;a<c.length;++a)b+=cvox.DomUtil.collapseWhitespace(cvox.DomUtil.getValue(c[a])+" "+cvox.DomUtil.getName(c[a]));return""==b?cvox.ChromeVox.msgs.getMsg("empty_row_header"):cvox.ChromeVox.msgs.getMsg("row_header")+b};
1214 cvox.TableWalker.prototype.getColHeaderText_=function(a){var b="",c=this.tt.getCellColHeaders();if(0==c.length)return c=this.tt.getCellAt([0,a[1]]),b+=cvox.DomUtil.collapseWhitespace(cvox.DomUtil.getValue(c)+" "+cvox.DomUtil.getName(c)),cvox.ChromeVox.msgs.getMsg("column_header")+b;for(a=0;a<c.length;++a)b+=cvox.DomUtil.collapseWhitespace(cvox.DomUtil.getValue(c[a])+" "+cvox.DomUtil.getName(c[a]));return""==b?cvox.ChromeVox.msgs.getMsg("empty_row_header"):cvox.ChromeVox.msgs.getMsg("column_header")+
1215 b};cvox.TableWalker.prototype.getLocationInfo=function(a){this.tt.initialize(this.getTableNode_(a));return(a=this.tt.findNearestCursor(a.start.node))?[a[0]+1,this.tt.rowCount,a[1]+1,this.tt.colCount].map(function(a){return cvox.ChromeVox.msgs.getNumber(a)}):null};
1216 cvox.TableWalker.prototype.goTo_=function(a,b){this.tt.initialize(this.getTableNode_(a));var c=this.tt.findNearestCursor(a.end.node);if(!c)return null;this.tt.goToCell(c);return b(c)?cvox.CursorSelection.fromNode(this.tt.getCell()).setReversed(a.isReversed()):null};cvox.TableWalker.prototype.getTableNode_=function(a){return cvox.DomUtil.getContainingTable(a.end.node)};cvox.TableWalker.prototype.syncPosition_=function(a){var b=this.getTableNode_(a);this.tt.initialize(b);return this.tt.findNearestCursor(a.end.node)};cvox.ColumnWalker=function(){cvox.TableWalker.call(this)};goog.inherits(cvox.ColumnWalker,cvox.TableWalker);cvox.ColumnWalker.prototype.next=function(a){return this.nextCol(a)};cvox.ColumnWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("column_granularity")};cvox.RowWalker=function(){cvox.TableWalker.call(this)};goog.inherits(cvox.RowWalker,cvox.TableWalker);cvox.RowWalker.prototype.next=function(a){return this.nextRow(a)};cvox.RowWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("row_granularity")};cvox.TableShifter=function(){this.rowWalker_=new cvox.RowWalker;this.columnWalker_=new cvox.ColumnWalker;this.currentWalker_=this.rowWalker_;this.bumpedEdge_=!1;this.begin_=!0;cvox.AbstractShifter.call(this)};goog.inherits(cvox.TableShifter,cvox.AbstractShifter);cvox.TableShifter.prototype.next=function(a){var b=this.currentWalker_.next(a);return b?b:(this.bumpedEdge_=!0,a)};
1217 cvox.TableShifter.prototype.sync=function(a){return"TABLE"==a.start.node.tagName?a.isReversed()?this.currentWalker_.goToLastCell(a):this.currentWalker_.goToFirstCell(a):this.currentWalker_.sync(a)};cvox.TableShifter.prototype.getName=function(){return cvox.ChromeVox.msgs.getMsg("table_shifter")};
1218 cvox.TableShifter.prototype.getDescription=function(a,b){var c=this.currentWalker_.getDescription(a,b);if(0<c.length&&(this.bumpedEdge_&&(c[0].pushEarcon(cvox.AbstractEarcons.WRAP_EDGE),this.bumpedEdge_=!1),this.begin_)){var d=this.currentWalker_.tt.summaryText(),e=this.currentWalker_.getLocationInfo(b);null!=e&&c.push(new cvox.NavDescription({context:cvox.ChromeVox.msgs.getMsg("table_location",e),text:"",annotation:d?d+" ":""}));this.currentWalker_.tt.isSpanned()&&c.push(new cvox.NavDescription({text:"",
1219 annotation:cvox.ChromeVox.msgs.getMsg("spanned")}));this.begin_=!1}return c};cvox.TableShifter.prototype.getBraille=function(a,b){return this.currentWalker_.getBraille(a,b)};cvox.TableShifter.prototype.getGranularityMsg=function(){return this.currentWalker_.getGranularityMsg()};cvox.TableShifter.prototype.makeLessGranular=function(){cvox.TableShifter.superClass_.makeLessGranular.call(this);this.currentWalker_=this.rowWalker_};
1220 cvox.TableShifter.prototype.makeMoreGranular=function(){cvox.TableShifter.superClass_.makeMoreGranular.call(this);this.currentWalker_=this.columnWalker_};cvox.TableShifter.create=function(a){a=cvox.DomUtil.getAncestors(a.start.node);return cvox.DomPredicates.tablePredicate(a)&&!cvox.DomPredicates.captionPredicate(a)?new cvox.TableShifter:null};cvox.NavigationHistory=function(){this.reset_()};cvox.NavigationHistory.MAX_HISTORY_LEN_=30;cvox.NavigationHistory.prototype.reset_=function(){var a=document.body;this.history_=[a];this.arrivedValid_=!0};cvox.NavigationHistory.prototype.update=function(a){var b=this.history_[0];a&&a!=b&&this.history_.unshift(a);this.history_.length>cvox.NavigationHistory.MAX_HISTORY_LEN_&&this.history_.pop();this.arrivedValid_=this.isValidNode_(a)};
1221 cvox.NavigationHistory.prototype.becomeInvalid=function(a){this.clean_();return this.arrivedValid_?!this.isValidNode_(a):(this.arrivedValid_=!0,!1)};cvox.NavigationHistory.prototype.revert=function(a){var b=document.activeElement;b!=document.body&&this.isValidNode_(b)&&this.update(b);if(a)for(;0<this.history_.length;){b=this.history_[0];if(a(b))break;this.history_.shift()}return{current:this.history_[0],previous:this.history_[1]}};
1222 cvox.NavigationHistory.prototype.clean_=function(){for(var a=!1,b=this.history_.length-1;0<=b;b--){var c=this.isValidNode_(this.history_[b]);c||(this.history_.splice(b,1),a=!0)}return a};cvox.NavigationHistory.prototype.isValidNode_=function(a){return cvox.DomUtil.isAttachedToDocument(a)&&cvox.DomUtil.isVisible(a)?!0:!1};cvox.TraverseContent=function(a){this.currentDomObj=null!=a?a:document.body;var b=document.createRange();try{b.selectNode(this.currentDomObj),this.startCursor_=new cvox.Cursor(b.startContainer,b.startOffset,cvox.TraverseUtil.getNodeText(b.startContainer)),this.endCursor_=new cvox.Cursor(b.endContainer,b.endOffset,cvox.TraverseUtil.getNodeText(b.endContainer))}catch(c){window.console.log("Error: Unselectable node:"),window.console.log(a)}};goog.addSingletonGetter(cvox.TraverseContent);
1223 cvox.TraverseContent.prototype.lastSelectionWasWhitespace=!1;cvox.TraverseContent.prototype.skipWhitespace=!1;cvox.TraverseContent.prototype.skipInvalidSelections=!0;cvox.TraverseContent.prototype.breakAtLinks=!0;cvox.TraverseContent.kCharacter="character";cvox.TraverseContent.kWord="word";cvox.TraverseContent.kSentence="sentence";cvox.TraverseContent.kLine="line";cvox.TraverseContent.kParagraph="paragraph";
1224 cvox.TraverseContent.kAllGrains=[cvox.TraverseContent.kParagraph,cvox.TraverseContent.kSentence,cvox.TraverseContent.kLine,cvox.TraverseContent.kWord,cvox.TraverseContent.kCharacter];cvox.TraverseContent.prototype.syncToCursorSelection=function(a){this.startCursor_=a.start.clone();this.endCursor_=a.end.clone()};cvox.TraverseContent.prototype.getCurrentCursorSelection=function(){return new cvox.CursorSelection(this.startCursor_,this.endCursor_)};
1225 cvox.TraverseContent.prototype.updateSelection=function(){cvox.TraverseUtil.setSelection(this.startCursor_,this.endCursor_);cvox.SelectionUtil.scrollToSelection(window.getSelection())};cvox.TraverseContent.prototype.getCurrentRange=function(){var a=document.createRange();try{a.setStart(this.startCursor_.node,this.startCursor_.index),a.setEnd(this.endCursor_.node,this.endCursor_.index)}catch(b){console.log("Invalid range ")}return a};cvox.TraverseContent.prototype.getCurrentText=function(){return cvox.SelectionUtil.getRangeText(this.getCurrentRange())};
1226 cvox.TraverseContent.prototype.collapseToEnd=function(){this.startCursor_=this.endCursor_.clone()};cvox.TraverseContent.prototype.collapseToStart=function(){this.endCursor_=this.startCursor_.clone()};
1227 cvox.TraverseContent.prototype.moveNext=function(a){var b=this.getBreakTags(),c=this.skipWhitespace,d=this.getCurrentRange();cvox.SelectionUtil.isRangeValid(d)||(c=!0);var e=[],f=[];do{a===cvox.TraverseContent.kSentence?d=cvox.TraverseUtil.getNextSentence(this.startCursor_,this.endCursor_,e,f,b):a===cvox.TraverseContent.kWord?d=cvox.TraverseUtil.getNextWord(this.startCursor_,this.endCursor_,e,f):a===cvox.TraverseContent.kCharacter?d=cvox.TraverseUtil.getNextChar(this.startCursor_,this.endCursor_,
1228 e,f,c):a===cvox.TraverseContent.kParagraph?d=cvox.TraverseUtil.getNextParagraph(this.startCursor_,this.endCursor_,e,f):a===cvox.TraverseContent.kLine?d=cvox.TraverseUtil.getNextLine(this.startCursor_,this.endCursor_,e,f,b):(window.console.log('Invalid selection granularity: "'+a+'"'),a=cvox.TraverseContent.kSentence,d=cvox.TraverseUtil.getNextSentence(this.startCursor_,this.endCursor_,e,f,b));if(null==d)return null;var d=this.getCurrentRange(),g=!d.getBoundingClientRect()}while(this.skipInvalidSelections&&
1229 g);if(cvox.SelectionUtil.isRangeValid(d))this.lastSelectionWasWhitespace=!1;else if(this.lastSelectionWasWhitespace||a!=cvox.TraverseContent.kCharacter)for(;!cvox.SelectionUtil.isRangeValid(this.getCurrentRange())&&null!=this.moveNext(a););else this.lastSelectionWasWhitespace=!0;return this.getCurrentText()};
1230 cvox.TraverseContent.prototype.movePrev=function(a){var b=this.getBreakTags(),c=this.skipWhitespace,d=this.getCurrentRange();cvox.SelectionUtil.isRangeValid(d)||(c=!0);var e=[],f=[];do{a===cvox.TraverseContent.kSentence?d=cvox.TraverseUtil.getPreviousSentence(this.startCursor_,this.endCursor_,e,f,b):a===cvox.TraverseContent.kWord?d=cvox.TraverseUtil.getPreviousWord(this.startCursor_,this.endCursor_,e,f):a===cvox.TraverseContent.kCharacter?d=cvox.TraverseUtil.getPreviousChar(this.startCursor_,this.endCursor_,
1231 e,f,c):a===cvox.TraverseContent.kParagraph?d=cvox.TraverseUtil.getPreviousParagraph(this.startCursor_,this.endCursor_,e,f):a===cvox.TraverseContent.kLine?d=cvox.TraverseUtil.getPreviousLine(this.startCursor_,this.endCursor_,e,f,b):(window.console.log('Invalid selection granularity: "'+a+'"'),a=cvox.TraverseContent.kSentence,d=cvox.TraverseUtil.getPreviousSentence(this.startCursor_,this.endCursor_,e,f,b));if(null==d)return null;var d=this.getCurrentRange(),g=!d.getBoundingClientRect()}while(this.skipInvalidSelections&&
1232 g);if(cvox.SelectionUtil.isRangeValid(d))this.lastSelectionWasWhitespace=!1;else if(this.lastSelectionWasWhitespace||a!=cvox.TraverseContent.kCharacter)for(;!cvox.SelectionUtil.isRangeValid(this.getCurrentRange())&&null!=this.movePrev(a););else this.lastSelectionWasWhitespace=!0;return this.getCurrentText()};cvox.TraverseContent.prototype.getBreakTags=function(){return{A:this.breakAtLinks,BR:!0,HR:!0}};
1233 cvox.TraverseContent.prototype.nextElement=function(a,b){null!=b&&(this.currentDomObj=b);var c=this.moveNext(a);return null==c||cvox.DomUtil.isDescendantOfNode(this.startCursor_.node,this.currentDomObj)&&cvox.DomUtil.isDescendantOfNode(this.endCursor_.node,this.currentDomObj)?c:null};
1234 cvox.TraverseContent.prototype.prevElement=function(a,b){null!=b&&(this.currentDomObj=b);var c=this.movePrev(a);return null==c||cvox.DomUtil.isDescendantOfNode(this.startCursor_.node,this.currentDomObj)&&cvox.DomUtil.isDescendantOfNode(this.endCursor_.node,this.currentDomObj)?c:null};cvox.TraverseContent.prototype.reset=function(){window.getSelection().removeAllRanges()};cvox.AbstractSelectionWalker=function(){this.objWalker_=new cvox.BareObjectWalker;this.tc_=cvox.TraverseContent.getInstance();this.grain=""};goog.inherits(cvox.AbstractSelectionWalker,cvox.AbstractWalker);
1235 cvox.AbstractSelectionWalker.prototype.next=function(a){var b=a.isReversed();this.tc_.syncToCursorSelection(a.clone().setReversed(!1));var c=b?this.tc_.prevElement(this.grain):this.tc_.nextElement(this.grain);if(null==c)return this.objWalker_.next(a);var c=this.tc_.getCurrentCursorSelection().setReversed(b),d=this.objWalker_.next(a),d=d?d.setReversed(b):null;return!d||"Text"==c.end.node.constructor.name&&"Text"==d.end.node.constructor.name||cvox.DomUtil.isDescendantOfNode(c.end.node,a.end.node)||
1236 cvox.DomUtil.isDescendantOfNode(c.end.node,d.end.node)?c:d};
1237 cvox.AbstractSelectionWalker.prototype.sync=function(a){var b=a.isReversed(),c=null;if(a.start.equals(a.end)&&"Text"!=a.start.node.constructor.name){for(c=a.start.node;c&&cvox.DomUtil.directedFirstChild(c,b)&&!cvox.TraverseUtil.treatAsLeafNode(c);){for(var d=cvox.DomUtil.directedFirstChild(c,b);d;)if(cvox.DomUtil.isVisible(d,{checkAncestors:!1,checkDescendants:!1})){c=d;break}else d=cvox.DomUtil.directedNextSibling(d,b);if(!d)break}c=cvox.CursorSelection.fromNode(c)}else c=a.clone(),b?c.start=c.end:
1238 c.end=c.start;c=this.next(c.setReversed(!1));d=(d=this.objWalker_.sync(a))?d.setReversed(b):null;if(!c)return d;c.setReversed(b);return!d||"Text"==c.end.node.constructor.name&&"Text"==d.end.node.constructor.name||cvox.DomUtil.isDescendantOfNode(c.end.node,a.end.node)||cvox.DomUtil.isDescendantOfNode(c.end.node,d.end.node)?c:d};
1239 cvox.AbstractSelectionWalker.prototype.getDescription=function(a,b){var c=cvox.DescriptionUtil.getDescriptionFromAncestors(cvox.DomUtil.getUniqueAncestors(a.end.node,b.start.node),!0,cvox.ChromeVox.verbosity);c.text=b.getText()||c.text;return[c]};cvox.AbstractSelectionWalker.prototype.getBraille=function(a,b){var c=b.absStart().node,d=cvox.TraverseUtil.getNodeText(c),e=new cvox.Spannable(d);e.setSpan(c,0,d.length);return new cvox.NavBraille({text:e,startIndex:b.absStart().index,endIndex:b.absEnd().index})};cvox.CharacterWalker=function(){cvox.AbstractSelectionWalker.call(this);this.grain=cvox.TraverseContent.kCharacter};goog.inherits(cvox.CharacterWalker,cvox.AbstractSelectionWalker);cvox.CharacterWalker.prototype.getDescription=function(a,b){var c=cvox.CharacterWalker.superClass_.getDescription.call(this,a,b);c.forEach(function(a){a.personality||(a.personality={});a.personality.phoneticCharacters=!0});return c};cvox.CharacterWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("character_granularity")};cvox.GroupUtil={};cvox.GroupUtil.MAX_CHARCOUNT_=1500;cvox.GroupUtil.BREAKOUT_SELECTOR_='blockquote,button,code,form,frame,h1,h2,h3,h4,h5,h6,hr,iframe,input,object,ol,p,pre,select,table,tr,ul,math,span.math,[role~="alert alertdialog button checkbox combobox dialog log marquee menubar progressbar radio radiogroup scrollbar slider spinbutton status tab tabpanel textbox toolbar tooltip treeitem article document group heading img list math region row separator"]';
1240 cvox.GroupUtil.isLeafNode=function(a){if("LABEL"==a.tagName)return cvox.DomUtil.isLeafNode(a);if(cvox.DomUtil.isLeafNode(a))return!0;if(!cvox.DomUtil.isSemanticElt(a))for(var b=a.querySelectorAll(cvox.GroupUtil.BREAKOUT_SELECTOR_),c=0;c<b.length;++c)if(cvox.DomUtil.hasContent(b[c]))return!1;if(cvox.AriaUtil.isCompositeControl(a)&&!cvox.DomUtil.isFocusable(a))return!1;a=cvox.DomUtil.collapseWhitespace(cvox.DomUtil.getValue(a)+" "+cvox.DomUtil.getName(a));return a.length>cvox.GroupUtil.MAX_CHARCOUNT_||
1241 ""===a.replace(/\s/g,"")?!1:!0};cvox.GroupWalker=function(){cvox.AbstractNodeWalker.call(this)};goog.inherits(cvox.GroupWalker,cvox.AbstractNodeWalker);cvox.GroupWalker.prototype.getDescription=function(a,b){return cvox.DescriptionUtil.getCollectionDescription(a,b)};cvox.GroupWalker.prototype.getBraille=function(){throw"getBraille is unsupported";};cvox.GroupWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("group_strategy")};cvox.GroupWalker.prototype.stopNodeDescent=function(a){return cvox.GroupUtil.isLeafNode(a)};cvox.StructuralLineWalker=function(){cvox.AbstractSelectionWalker.call(this);this.grain=cvox.TraverseContent.kLine};goog.inherits(cvox.StructuralLineWalker,cvox.AbstractSelectionWalker);cvox.StructuralLineWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("structural_line")};
1242 cvox.StructuralLineWalker.prototype.getDescription=function(a,b){var c=cvox.StructuralLineWalker.superClass_.getDescription.call(this,a,b);c[0].text=cvox.DomUtil.getPrefixText(b.absStart().node,b.absStart().index)+c[0].text;return c};
1243 cvox.StructuralLineWalker.prototype.getBraille=function(a,b){var c=cvox.StructuralLineWalker.superClass_.getBraille.call(this,a,b),d=this.objWalker_.sync(b).absStart().node,e=a.absEnd().node,f=void 0;b.start.equals(b.end)||cvox.DomPredicates.editTextPredicate([d])||(f=cvox.DomUtil.getPrefixText(b.absStart().node,b.absStart().index),f+=b.getText());e=cvox.BrailleUtil.getTemplated(e,d,{name:f});e.setSpan(d,0,e.getLength());c.text=e;c.startIndex=0;c.endIndex=0;return c};cvox.LayoutLineWalker=function(){this.subWalker_=new cvox.StructuralLineWalker};goog.inherits(cvox.LayoutLineWalker,cvox.AbstractWalker);cvox.LayoutLineWalker.prototype.next=function(a){var b=new cvox.CursorSelection(a.end,a.end,a.isReversed()),c=this.subWalker_.sync(b);if(!c)return null;b=this.subWalker_.next(b);if(!b)return null;b.setReversed(a.isReversed());return this.extend_(b).setReversed(!1)};
1244 cvox.LayoutLineWalker.prototype.sync=function(a){var b=this.subWalker_.sync(a);if(!b)return null;var c=this.extend_(b),b=this.extend_(b.setReversed(!b.isReversed()));return new cvox.CursorSelection(b.end,c.end,a.isReversed())};
1245 cvox.LayoutLineWalker.prototype.getDescription=function(a,b){var c=[],d=a,e=b.clone().setReversed(!1),f=new cvox.CursorSelection(e.start,e.start),f=this.subWalker_.sync(f);if(!f)return[];if(e.start.node==e.end.node)return this.subWalker_.getDescription(a,b);for(;f&&!f.end.equals(e.end);)c.push.apply(c,this.subWalker_.getDescription(d,f)),d=f,f=this.subWalker_.next(f);f&&c.push.apply(c,this.subWalker_.getDescription(d,f));return c};
1246 cvox.LayoutLineWalker.prototype.getBraille=function(a,b){var c=new cvox.NavBraille({}),d=this.subWalker_.sync(b.clone().setReversed(!1)),e=this.sync(b).setReversed(!1);if(!e||!d)return c;var f=new cvox.CursorSelection(e.start,e.start),f=this.subWalker_.sync(f);if(!f)return c;for(;f&&!f.end.equals(e.end);)this.appendBraille_(a,d,f,c),a=f,f=this.subWalker_.next(f);f&&this.appendBraille_(a,d,f,c);return c};cvox.LayoutLineWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("layout_line")};
1247 cvox.LayoutLineWalker.prototype.isVisualLineBreak_=function(a,b){if(this.wantsOwnLine_(a.end.node)||this.wantsOwnLine_(b.start.node))return!0;var c=a.getRange().getBoundingClientRect(),d=b.getRange().getBoundingClientRect();0==c.width&&0==c.height&&a.end.node.nodeType==Node.ELEMENT_NODE&&(c=a.end.node.getBoundingClientRect());0==d.width&&0==d.height&&b.start.node.nodeType==Node.ELEMENT_NODE&&(d=b.start.node.getBoundingClientRect());return c.bottom!=d.bottom};
1248 cvox.LayoutLineWalker.prototype.wantsOwnLine_=function(a){return a instanceof HTMLTextAreaElement||a.parentNode instanceof HTMLTextAreaElement};cvox.LayoutLineWalker.prototype.extend_=function(a){var b=a,c=a;do b=c,c=this.subWalker_.next(b);while(c&&!this.isVisualLineBreak_(b,c));return new cvox.CursorSelection(a.start,b.end,a.isReversed())};
1249 cvox.LayoutLineWalker.prototype.appendBraille_=function(a,b,c,d){a=this.subWalker_.getBraille(a,c).text;var e=a.getSpanInstanceOf(cvox.BrailleUtil.ValueSelectionSpan);0<d.text.getLength()&&d.text.append(cvox.BrailleUtil.ITEM_SEPARATOR);for(var f=c.start.node;f.parentNode&&cvox.DomUtil.isLeafNode(f.parentNode);)f=f.parentNode;var g=d.text.getLength(),h=g+a.getLength();d.text.append(a.toString());d.text.setSpan(f,g,h);b&&c.absEquals(b)&&(e?(d.startIndex=g+a.getSpanStart(e),d.endIndex=g+a.getSpanEnd(e)):
1250 (d.startIndex=g,d.endIndex=g+1))};cvox.ObjectWalker=function(){cvox.AbstractNodeWalker.call(this)};goog.inherits(cvox.ObjectWalker,cvox.AbstractNodeWalker);cvox.ObjectWalker.prototype.stopNodeDescent=function(a){return cvox.DomUtil.isLeafNode(a)};cvox.AbstractNodeWalker.prototype.getDescription=function(a,b){return cvox.DescriptionUtil.getDescriptionFromNavigation(a.end.node,b.start.node,!0,cvox.ChromeVox.verbosity)};cvox.ObjectWalker.prototype.getBraille=function(){throw"getBraille is unsupported";};
1251 cvox.ObjectWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("object_strategy")};cvox.SentenceWalker=function(){cvox.AbstractSelectionWalker.call(this);this.grain=cvox.TraverseContent.kSentence};goog.inherits(cvox.SentenceWalker,cvox.AbstractSelectionWalker);cvox.SentenceWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("sentence_granularity")};cvox.WordWalker=function(){cvox.AbstractSelectionWalker.call(this);this.grain=cvox.TraverseContent.kWord};goog.inherits(cvox.WordWalker,cvox.AbstractSelectionWalker);cvox.WordWalker.prototype.getGranularityMsg=function(){return cvox.ChromeVox.msgs.getMsg("word_granularity")};cvox.NavigationShifter=function(){this.reset_();cvox.AbstractShifter.call(this)};goog.inherits(cvox.NavigationShifter,cvox.AbstractShifter);cvox.NavigationShifter.GRANULARITIES={CHARACTER:0,WORD:1,LINE:2,SENTENCE:3,OBJECT:4,GROUP:5};cvox.NavigationShifter.prototype.storeOn=function(a){a.granularity=this.getGranularity()};cvox.NavigationShifter.prototype.readFrom=function(a){this.setGranularity(a.granularity)};
1252 cvox.NavigationShifter.prototype.next=function(a){a=this.currentWalker_.next(a);this.currentWalkerIndex_<=cvox.NavigationShifter.GRANULARITIES.LINE&&a&&(cvox.TraverseContent.getInstance().syncToCursorSelection(a.clone().setReversed(!1)),cvox.TraverseContent.getInstance().updateSelection());return a};cvox.NavigationShifter.prototype.sync=function(a){return this.currentWalker_.sync(a)};cvox.NavigationShifter.prototype.getName=function(){return cvox.ChromeVox.msgs.getMsg("navigation_shifter")};
1253 cvox.NavigationShifter.prototype.getDescription=function(a,b){return this.currentWalker_.getDescription(a,b)};cvox.NavigationShifter.prototype.getBraille=function(a,b){return this.lineWalker_.getBraille(a,b)};cvox.NavigationShifter.prototype.getGranularityMsg=function(){return this.currentWalker_.getGranularityMsg()};
1254 cvox.NavigationShifter.prototype.makeMoreGranular=function(){cvox.NavigationShifter.superClass_.makeMoreGranular.call(this);this.currentWalkerIndex_=Math.max(this.currentWalkerIndex_-1,0);cvox.NavigationShifter.allowSentence||this.currentWalkerIndex_!=cvox.NavigationShifter.GRANULARITIES.SENTENCE||this.currentWalkerIndex_--;this.currentWalker_=this.walkers_[this.currentWalkerIndex_]};
1255 cvox.NavigationShifter.prototype.makeLessGranular=function(){cvox.NavigationShifter.superClass_.makeLessGranular.call(this);this.currentWalkerIndex_=Math.min(this.currentWalkerIndex_+1,this.walkers_.length-1);cvox.NavigationShifter.allowSentence||this.currentWalkerIndex_!=cvox.NavigationShifter.GRANULARITIES.SENTENCE||this.currentWalkerIndex_++;this.currentWalker_=this.walkers_[this.currentWalkerIndex_]};
1256 cvox.NavigationShifter.prototype.setGranularity=function(a){this.ensureNotSubnavigating();this.currentWalkerIndex_=a;this.currentWalker_=this.walkers_[this.currentWalkerIndex_]};cvox.NavigationShifter.prototype.getGranularity=function(){var a=this.isSubnavigating();this.ensureNotSubnavigating();var b=this.currentWalkerIndex_;a&&this.ensureSubnavigating();return b};
1257 cvox.NavigationShifter.prototype.hasAction=function(a){return"toggleLineType"==a?!0:cvox.NavigationShifter.superClass_.hasAction.call(this,a)};cvox.NavigationShifter.create=function(){return new cvox.NavigationShifter};
1258 cvox.NavigationShifter.prototype.reset_=function(){this.groupWalker_=new cvox.GroupWalker;this.objectWalker_=new cvox.ObjectWalker;this.sentenceWalker_=new cvox.SentenceWalker;this.lineWalker_=new cvox.LayoutLineWalker;this.wordWalker_=new cvox.WordWalker;this.characterWalker_=new cvox.CharacterWalker;this.walkers_=[this.characterWalker_,this.wordWalker_,this.lineWalker_,this.sentenceWalker_,this.objectWalker_,this.groupWalker_];this.currentWalkerIndex_=this.walkers_.indexOf(this.groupWalker_);this.currentWalker_=
1259 this.walkers_[this.currentWalkerIndex_]};cvox.NavigationShifter.allowSentence=!1;cvox.NavigationSpeaker=function(){this.stopReading=!1;this.id_=1};
1260 cvox.NavigationSpeaker.prototype.speakDescriptionArray=function(a,b,c){a=this.reorderAnnotations(a);this.stopReading=!1;this.id_=(this.id_+1)%1E4;var d=this,e=function(b,g,h){var k=a[b];if(k&&!d.stopReading&&d.id_==h){var l=function(){for(var a=0;a<k.earcons.length;a++)cvox.ChromeVox.earcons.playEarcon(k.earcons[a])},m=function(){e(b+1,cvox.AbstractTts.QUEUE_MODE_QUEUE,h)},p=function(){k.personality&&k.personality[cvox.AbstractTts.PAUSE]&&"number"==typeof k.personality[cvox.AbstractTts.PAUSE]?setTimeout(m,
1261 k.personality[cvox.AbstractTts.PAUSE]):m();b==a.length-1&&c&&c()};k.isEmpty()?(l(),p()):(k.speak(g,l,p),cvox.ChromeVox.host.hasTtsCallback()||(l(),p()))}};e(0,b,this.id_);0==a.length&&c&&c()};cvox.NavigationSpeaker.structuredElement=function(a){switch(a){case "table":case "Math":return!0}return!1};
1262 cvox.NavigationSpeaker.prototype.reorderAnnotations=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c];cvox.NavigationSpeaker.structuredElement(d.annotation)&&(b.push(new cvox.NavDescription({text:"",annotation:d.annotation})),d.annotation="");b.push(d)}return b};cvox.NavigationManager=function(){this.addInterframeListener_();this.reset()};cvox.NavigationManager.prototype.storeOn=function(a){a.reversed=this.isReversed();a.keepReading=this.keepReading_;a.findNext=this.predicate_;this.shifter_.storeOn(a)};cvox.NavigationManager.prototype.readFrom=function(a){this.curSel_.setReversed(a.reversed);this.shifter_.readFrom(a);a.keepReading&&this.startReading(cvox.AbstractTts.QUEUE_MODE_FLUSH)};
1263 cvox.NavigationManager.prototype.reset=function(){this.navSpeaker_=new cvox.NavigationSpeaker;this.shifterTypes_=[cvox.NavigationShifter,cvox.TableShifter,cvox.MathShifter];this.shifterStack_=[];this.shifter_=new cvox.NavigationShifter;this.curSel_=document.activeElement!=document.body?cvox.CursorSelection.fromNode(document.activeElement):this.shifter_.begin(this.curSel_,{reversed:!1});this.prevSel_=this.curSel_.clone();this.ignoreIframesNoMatterWhat_=this.exitedShifter_=this.enteredShifter_=this.pageEndAnnounced_=
1264 this.pageEnd_=this.keepReading_=this.recovered_=this.skipped_=!1;this.pageSel_=null;this.predicate_="";this.saveSel_=null;this.activeIndicator&&this.activeIndicator.removeFromDom();this.activeIndicator=new cvox.ActiveIndicator;this.navigationHistory_=new cvox.NavigationHistory;this.focusRecovery_="chrome:"!=window.location.protocol;this.iframeIdMap={};this.nextIframeId=1;document.activeElement!=document.body&&this.sync();cvox.TraverseMath.getInstance()};
1265 cvox.NavigationManager.prototype.resolve=function(a){if(!this.getFocusRecovery())return!0;var b=this.getCurrentNode();if(!this.navigationHistory_.becomeInvalid(b)||this.hasNext_())return!0;b=this.navigationHistory_.revert(a);if(!b.current)return!0;a=cvox.CursorSelection.fromNode(b.current);b=cvox.CursorSelection.fromNode(b.previous);a=a||cvox.CursorSelection.fromBody();b=b||cvox.CursorSelection.fromBody();a.setReversed(this.isReversed());this.updateSel(a,b);this.recovered_=!0;return!1};
1266 cvox.NavigationManager.prototype.getFocusRecovery=function(){return this.focusRecovery_};cvox.NavigationManager.prototype.setFocusRecovery=function(a){this.focusRecovery_=a};cvox.NavigationManager.prototype.next_=function(a){return this.tryBoundaries_(this.shifter_.next(this.curSel_),a)?(this.pageSel_&&this.pageSel_.extend(this.curSel_),!0):!1};
1267 cvox.NavigationManager.prototype.hasNext_=function(){if(0<this.shifterStack_.length)return!0;var a=this.curSel_.clone(),b=!1,c=new cvox.NavigationShifter;c.setGranularity(this.shifter_.getGranularity());c.sync(a);c.next(a)&&(b=!0);return b};
1268 cvox.NavigationManager.prototype.findNext=function(a,b,c){this.predicate_=b||"";this.resolve();this.shifter_=this.shifterStack_[0]||this.shifter_;this.shifterStack_=[];a=cvox.FindUtil.findNext(this.curSel_,a,c);this.ignoreIframesNoMatterWhat_||this.tryIframe_(a&&a.start.node);a&&this.updateSelToArbitraryNode(a.start.node);this.predicate_="";return a};cvox.NavigationManager.prototype.sync=function(){this.resolve();var a=this.shifter_.sync(this.curSel_);a&&(this.curSel_=a)};
1269 cvox.NavigationManager.prototype.syncAll=function(a){this.sync();this.setFocus(a);this.updateIndicator()};cvox.NavigationManager.prototype.clearPageSel=function(a){var b=!!this.pageSel_;b&&a&&(a=cvox.ChromeVox.msgs.getMsg("clear_page_selection"),cvox.ChromeVox.tts.speak(a,cvox.AbstractTts.QUEUE_MODE_FLUSH,cvox.AbstractTts.PERSONALITY_ANNOTATION));this.pageSel_=null;return b};
1270 cvox.NavigationManager.prototype.togglePageSel=function(){this.pageSel_=this.pageSel_?null:new cvox.PageSelection(this.curSel_.setReversed(!1));return!!this.pageSel_};
1271 cvox.NavigationManager.prototype.getDescription=function(){if(this.getCurrentNode().hasAttribute&&this.getCurrentNode().hasAttribute("cvoxnodedesc")){for(var a=cvox.ChromeVoxJSON.parse(this.getCurrentNode().getAttribute("cvoxnodedesc")),b=[],c=0;c<a.length;++c){var d=a[c];b.push(new cvox.NavDescription({context:d.context,text:d.text,userValue:d.userValue,annotation:d.annotation}))}return b}var e=this.pageSel_?this.pageSel_.getDescription(this.shifter_,this.prevSel_,this.curSel_):this.shifter_.getDescription(this.prevSel_,
1272 this.curSel_),a=[];this.skipped_&&(a.push(cvox.AbstractEarcons.PARAGRAPH_BREAK),this.skipped_=!1);this.recovered_&&(a.push(cvox.AbstractEarcons.FONT_CHANGE),this.recovered_=!1);this.pageEnd_&&(a.push(cvox.AbstractEarcons.WRAP),this.pageEnd_=!1);this.enteredShifter_&&(a.push(cvox.AbstractEarcons.OBJECT_ENTER),this.enteredShifter_=!1);this.exitedShifter_&&(a.push(cvox.AbstractEarcons.OBJECT_EXIT),this.exitedShifter_=!1);0<a.length&&0<e.length&&a.forEach(function(a){e[0].pushEarcon(a)});return e};
1273 cvox.NavigationManager.prototype.getBraille=function(){return cvox.PlatformUtil.matchesPlatform(cvox.PlatformFilter.ANDROID|cvox.PlatformFilter.CHROMEOS)?this.shifter_.getBraille(this.prevSel_,this.curSel_):new cvox.NavBraille({})};
1274 cvox.NavigationManager.prototype.performAction=function(a){switch(a){case "enterShifter":case "enterShifterSilently":for(var b=this.shifterTypes_.length-1,c;c=this.shifterTypes_[b];b--)if((c=c.create(this.curSel_))&&c.getName()!=this.shifter_.getName()){this.shifterStack_.push(this.shifter_);this.shifter_=c;this.sync();this.enteredShifter_="enterShifterSilently"!=a;break}else if(c&&this.shifter_.getName()==c.getName())break;break;case "exitShifter":if(0==this.shifterStack_.length)return!1;this.shifter_=
1275 this.shifterStack_.pop();this.sync();this.exitedShifter_=!0;break;case "exitShifterContent":if(0==this.shifterStack_.length)return!1;this.updateSel(this.shifter_.performAction(a,this.curSel_));this.shifter_=this.shifterStack_.pop()||this.shifter_;this.sync();this.exitedShifter_=!0;break;default:return this.shifter_.hasAction(a)?this.updateSel(this.shifter_.performAction(a,this.curSel_)):!1}return!0};cvox.NavigationManager.prototype.getGranularityMsg=function(){return this.shifter_.getGranularityMsg()};
1276 cvox.NavigationManager.prototype.makeMoreGranular=function(a){this.shifter_.makeMoreGranular();this.sync();this.persistGranularity_(a)};cvox.NavigationManager.prototype.makeLessGranular=function(a){this.shifter_.makeLessGranular();this.sync();this.persistGranularity_(a)};cvox.NavigationManager.prototype.setGranularity=function(a,b,c){!b&&0<this.shifterStack_.length||(this.shifter_=this.shifterStack_.shift()||this.shifter_,this.shifter_.setGranularity(a),this.persistGranularity_(c))};
1277 cvox.NavigationManager.prototype.getGranularity=function(){var a=this.shifterStack_[0]||this.shifter_;return a.getGranularity()};cvox.NavigationManager.prototype.ensureSubnavigating=function(){this.shifter_.isSubnavigating()||(this.shifter_.ensureSubnavigating(),this.sync())};cvox.NavigationManager.prototype.ensureNotSubnavigating=function(){this.shifter_.isSubnavigating()&&(this.shifter_.ensureNotSubnavigating(),this.sync())};
1278 cvox.NavigationManager.prototype.speakDescriptionArray=function(a,b,c,d){d&&a.every(function(a){a.personality||(a.personality=d)});this.navSpeaker_.speakDescriptionArray(a,b,c)};cvox.NavigationManager.prototype.updatePosition=function(a){var b=cvox.ChromeVox.position;b[document.location.href]=cvox.DomUtil.elementToPoint(a);cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"position",value:JSON.stringify(b)})};
1279 cvox.NavigationManager.prototype.finishNavCommand=function(a,b,c,d){if(this.pageEnd_&&!this.pageEndAnnounced_)this.pageEndAnnounced_=!0,cvox.ChromeVox.tts.stop(),cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.WRAP),cvox.ChromeVox.verbosity===cvox.VERBOSITY_VERBOSE&&(a=cvox.ChromeVox.msgs.getMsg("wrapped_to_top"),this.isReversed()&&(a=cvox.ChromeVox.msgs.getMsg("wrapped_to_bottom")),cvox.ChromeVox.tts.speak(a,cvox.AbstractTts.QUEUE_MODE_QUEUE,cvox.AbstractTts.PERSONALITY_ANNOTATION));else{if(this.enteredShifter_||
1280 this.exitedShifter_)a=cvox.ChromeVox.msgs.getMsg("enter_content_say",[this.shifter_.getName()]);var e=cvox.ChromeVox.navigationManager.getDescription();(b=void 0===b?!0:b)&&this.setFocus();this.updateIndicator();b=c||cvox.AbstractTts.QUEUE_MODE_FLUSH;a&&(cvox.ChromeVox.tts.speak(a,b,cvox.AbstractTts.PERSONALITY_ANNOTATION),b=cvox.AbstractTts.QUEUE_MODE_QUEUE);this.speakDescriptionArray(e,b,d||null);this.getBraille().write();this.updatePosition(this.getCurrentNode())}};
1281 cvox.NavigationManager.prototype.navigate=function(a,b){this.pageEndAnnounced_=!1;if(this.pageEnd_)return this.pageEnd_=!1,this.syncToBeginning(a),!0;if(!this.resolve())return!1;this.ensureNotSubnavigating();void 0!==b&&(b!==this.getGranularity()||0<this.shifterStack_.length)&&(this.setGranularity(b,!0),this.sync());return this.next_(!a)};cvox.NavigationManager.prototype.subnavigate=function(){this.pageEndAnnounced_=!1;this.resolve()&&(this.ensureSubnavigating(),this.next_(!0))};
1282 cvox.NavigationManager.prototype.skip=function(){if(!this.keepReading_)return!1;cvox.ChromeVox.host.hasTtsCallback()&&(this.skipped_=!0,this.setReversed(!1),this.startCallbackReading_(cvox.AbstractTts.QUEUE_MODE_FLUSH));return!0};
1283 cvox.NavigationManager.prototype.startReading=function(a){this.keepReading_=!0;cvox.ChromeVox.host.hasTtsCallback()?this.startCallbackReading_(a):this.startNonCallbackReading_(a);this.prevStickyState_=cvox.ChromeVox.isStickyOn;cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"sticky",value:!0,announce:!1})};
1284 cvox.NavigationManager.prototype.stopReading=function(a){this.keepReading_=!1;this.navSpeaker_.stopReading=!0;a&&cvox.ChromeVox.tts.stop();void 0!=this.prevStickyState_&&(cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"sticky",value:this.prevStickyState_,announce:!1}),this.prevStickyState_=void 0)};cvox.NavigationManager.prototype.isReading=function(){return this.keepReading_};
1285 cvox.NavigationManager.prototype.startCallbackReading_=cvox.ChromeVoxEventSuspender.withSuspendedEvents(function(a){this.finishNavCommand("",!0,a,goog.bind(function(){this.next_(!0)&&this.keepReading_&&this.startCallbackReading_(cvox.AbstractTts.QUEUE_MODE_QUEUE)},this))});
1286 cvox.NavigationManager.prototype.startNonCallbackReading_=cvox.ChromeVoxEventSuspender.withSuspendedEvents(function(a){this.keepReading_&&(cvox.ChromeVox.tts.isSpeaking()||(this.finishNavCommand("",!0,a,null),this.next_(!0)||(this.keepReading_=!1)),window.setTimeout(goog.bind(this.startNonCallbackReading_,this),1E3))});
1287 cvox.NavigationManager.prototype.getFullDescription=function(){return this.pageSel_?this.pageSel_.getFullDescription():[cvox.DescriptionUtil.getDescriptionFromAncestors(cvox.DomUtil.getAncestors(this.curSel_.start.node),!0,cvox.ChromeVox.verbosity)]};cvox.NavigationManager.prototype.setFocus=function(a){this.pageSel_||a&&this.curSel_.start.node.constructor==Text||cvox.Focuser.setFocus(this.curSel_.start.node)};cvox.NavigationManager.prototype.getCurrentNode=function(){return this.curSel_.absStart().node};
1288 cvox.NavigationManager.prototype.addInterframeListener_=function(){var a=this;cvox.Interframe.addListener(function(b){if("enterIframe"==b.command||"exitIframe"==b.command)cvox.ChromeVox.serializer.readFrom(b),a.keepReading_||cvox.ChromeVoxEventSuspender.withSuspendedEvents(function(){window.focus();if(b.findNext){var c=b.findNext,d=cvox.DomPredicates[c],c=a.findNext(d,c,!0);if(d&&(!c||"IFRAME"==c.start.node.tagName))return}else if("exitIframe"==b.command)d=b.sourceId,d=a.iframeIdMap[d],c=b.reversed,
1289 d&&a.updateSel(cvox.CursorSelection.fromNode(d)),a.setReversed(c),a.sync(),a.navigate();else if(a.syncToBeginning(),!cvox.DomUtil.hasContent(document.body)){a.tryIframe_(null);return}a.finishNavCommand("",!0)})()})};cvox.NavigationManager.prototype.updateIndicator=function(){this.activeIndicator.syncToCursorSelection(this.curSel_)};cvox.NavigationManager.prototype.updateIndicatorIfChanged=function(){this.activeIndicator.updateIndicatorIfChanged()};
1290 cvox.NavigationManager.prototype.showOrHideIndicator=function(a){a||this.activeIndicator.removeFromDom()};cvox.NavigationManager.prototype.collapseSelection=function(){this.curSel_.collapse()};cvox.NavigationManager.prototype.updateSelToArbitraryNode=function(a,b){a?(this.setGranularity(cvox.NavigationShifter.GRANULARITIES.OBJECT,!0),this.updateSel(cvox.CursorSelection.fromNode(a)),b||this.sync()):this.syncToBeginning()};
1291 cvox.NavigationManager.prototype.updateSel=function(a,b){a&&(this.prevSel_=b||this.curSel_,this.curSel_=a);var c=this.getCurrentNode();this.navigationHistory_.update(c);return!!a};cvox.NavigationManager.prototype.setReversed=function(a){this.curSel_.setReversed(a)};cvox.NavigationManager.prototype.isReversed=function(){return this.curSel_.isReversed()};
1292 cvox.NavigationManager.prototype.tryBoundaries_=function(a,b){b=!!b&&!this.ignoreIframesNoMatterWhat_||!1;this.pageEnd_=!1;if(b&&this.tryIframe_(a&&a.start.node))return!0;if(a)return this.updateSel(a),!0;if(0<this.shifterStack_.length)return!0;this.syncToBeginning(!b);this.clearPageSel(!0);this.stopReading(!0);this.pageEnd_=!0;return!1};
1293 cvox.NavigationManager.prototype.tryIframe_=function(a){if(null==a&&cvox.Interframe.isIframe()){var b={command:"exitIframe",reversed:this.isReversed(),granularity:this.getGranularity()};cvox.ChromeVox.serializer.storeOn(b);cvox.Interframe.sendMessageToParentWindow(b);return!0}if(null==a||"IFRAME"!=a.tagName||!a.src)return!1;var c=void 0;for(b in this.iframeIdMap)if(this.iframeIdMap[b]==a){c=b;break}void 0==c&&(c=this.nextIframeId,this.nextIframeId++,this.iframeIdMap[c]=a,cvox.Interframe.sendIdToIFrame(c,
1294 a));b={command:"enterIframe",id:c};cvox.ChromeVox.serializer.storeOn(b);cvox.Interframe.sendMessageToIFrame(b,a);return!0};cvox.NavigationManager.prototype.syncToBeginning=function(a){var b=this.shifter_.begin(this.curSel_,{reversed:this.curSel_.isReversed()});!a&&this.tryIframe_(b&&b.start.node)||this.updateSel(b)};cvox.NavigationManager.prototype.saveSel=function(){this.saveSel_=this.curSel_};cvox.NavigationManager.prototype.restoreSel=function(){this.curSel_=this.saveSel_||this.curSel_};
1295 cvox.NavigationManager.prototype.persistGranularity_=function(a){(a=void 0===a?!1:a)&&cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"granularity",value:this.getGranularity()})};cvox.SearchWidget=function(){this.txtNode_=this.containerNode_=null;this.PROMPT_="Search:";this.hasMatch_=this.caseSensitive_=!1;cvox.Widget.call(this)};goog.inherits(cvox.SearchWidget,cvox.Widget);goog.addSingletonGetter(cvox.SearchWidget);
1296 cvox.SearchWidget.prototype.show=function(){cvox.SearchWidget.superClass_.show.call(this);this.active=!0;this.hasMatch_=!1;cvox.ChromeVox.navigationManager.setGranularity(cvox.NavigationShifter.GRANULARITIES.OBJECT,!0,!1);cvox.ChromeVox.navigationManager.setReversed(!1);this.focusRecovery_=cvox.ChromeVox.navigationManager.getFocusRecovery();cvox.ChromeVox.navigationManager.setFocusRecovery(!1);var a=this.createContainerNode_();this.containerNode_=a;var b=this.createOverlayNode_();a.appendChild(b);
1297 var c=document.createElement("span");c.innerHTML=this.PROMPT_;b.appendChild(c);this.txtNode_=this.createTextAreaNode_();b.appendChild(this.txtNode_);document.body.appendChild(a);this.txtNode_.focus();window.setTimeout(function(){a.style.opacity="1.0"},0)};
1298 cvox.SearchWidget.prototype.hide=function(a){if(this.isActive()){var b=this.containerNode_;b.style.opacity="0.0";window.setTimeout(function(){document.body.removeChild(b)},1E3);this.txtNode_=null;cvox.SearchWidget.containerNode=null;cvox.ChromeVox.navigationManager.setFocusRecovery(this.focusRecovery_);this.active=!1}cvox.$m("choice_widget_exited").andPause().andMessage(this.getNameMsg()).speakFlush();this.hasMatch_&&a||cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(this.initialNode);cvox.ChromeVoxEventSuspender.withSuspendedEvents(goog.bind(cvox.ChromeVox.navigationManager.syncAll,
1299 cvox.ChromeVox.navigationManager))(!0);cvox.ChromeVox.navigationManager.speakDescriptionArray(cvox.ChromeVox.navigationManager.getDescription(),cvox.AbstractTts.QUEUE_MODE_QUEUE,null,cvox.AbstractTts.PERSONALITY_ANNOUNCEMENT);a=this.textFromCurrentDescription_();cvox.ChromeVox.braille.write(new cvox.NavBraille({text:a,startIndex:0,endIndex:0}));cvox.SearchWidget.superClass_.hide.call(this,!0)};cvox.SearchWidget.prototype.getNameMsg=function(){return["search_widget_intro"]};
1300 cvox.SearchWidget.prototype.getHelpMsg=function(){return"search_widget_intro_help"};
1301 cvox.SearchWidget.prototype.onKeyDown=function(a){if(!this.isActive())return!1;var b=this.txtNode_.value;if(8==a.keyCode)0<b.length?(b=b.substring(0,b.length-1),this.txtNode_.value=b,this.beginSearch_(b)):(cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(this.initialNode),cvox.ChromeVox.navigationManager.syncAll());else if(40==a.keyCode)this.next_(b,!1);else if(38==a.keyCode)this.next_(b,!0);else if(13==a.keyCode)this.hide(!0);else if(27==a.keyCode)this.hide(!1);else if(a.ctrlKey&&67==a.keyCode)this.toggleCaseSensitivity_();
1302 else return cvox.SearchWidget.superClass_.onKeyDown.call(this,a);a.preventDefault();a.stopPropagation();return!0};cvox.SearchWidget.prototype.onKeyPress=function(a){if(!this.isActive())return!1;this.txtNode_.value+=String.fromCharCode(a.charCode);var b=this.txtNode_.value;this.beginSearch_(b);a.preventDefault();a.stopPropagation();return!0};cvox.SearchWidget.prototype.onNavigate=function(){};cvox.SearchWidget.prototype.getPredicate=function(){return null};
1303 cvox.SearchWidget.prototype.createContainerNode_=function(){var a=document.createElement("div");a.id="cvox-search";a.style.position="fixed";a.style.top="50%";a.style.left="50%";a.style["-webkit-transition"]="all 0.3s ease-in";a.style.opacity="0.0";a.style["z-index"]="2147483647";a.setAttribute("aria-hidden","true");return a};
1304 cvox.SearchWidget.prototype.createOverlayNode_=function(){var a=document.createElement("div");a.style.position="relative";a.style.left="-50%";a.style.top="-40px";a.style["line-height"]="1.2em";a.style["font-size"]="20px";a.style.padding="30px";a.style["min-width"]="150px";a.style.color="#fff";a.style["background-color"]="rgba(0, 0, 0, 0.7)";a.style["border-radius"]="10px";return a};
1305 cvox.SearchWidget.prototype.createTextAreaNode_=function(){var a=document.createElement("textarea");a.setAttribute("aria-hidden","true");a.setAttribute("rows","1");a.style.color="#fff";a.style["background-color"]="rgba(0, 0, 0, 0.7)";a.style["vertical-align"]="middle";a.addEventListener("textInput",this.handleSearchChanged_,!1);return a};
1306 cvox.SearchWidget.prototype.toggleCaseSensitivity_=function(){this.caseSensitive_?(cvox.SearchWidget.caseSensitive_=!1,cvox.ChromeVox.tts.speak("Ignoring case.",0,null)):(this.caseSensitive_=!0,cvox.ChromeVox.tts.speak("Case sensitive.",0,null))};
1307 cvox.SearchWidget.prototype.getNextResult_=function(a){var b=cvox.ChromeVox.navigationManager.isReversed();this.caseSensitive_||(a=a.toLowerCase());cvox.ChromeVox.navigationManager.setGranularity(cvox.NavigationShifter.GRANULARITIES.OBJECT,!0,!1);do{if(this.getPredicate()){var c=this.getPredicate()(cvox.DomUtil.getAncestors(cvox.ChromeVox.navigationManager.getCurrentNode()));if(!c)continue}for(var c=cvox.ChromeVox.navigationManager.getDescription(),d=0;d<c.length;d++){var e=this.caseSensitive_?c[d].text:
1308 c[d].text.toLowerCase(),f=e.indexOf(a);-1!=f&&e.length>a.length&&(c[d].text=cvox.DomUtil.collapseWhitespace(e.substring(0,f))+", "+a+", "+e.substring(f+a.length),c[d].text=cvox.DomUtil.collapseWhitespace(c[d].text));if(-1!=f)return c}cvox.ChromeVox.navigationManager.setReversed(b)}while(cvox.ChromeVox.navigationManager.navigate(!0,cvox.NavigationShifter.GRANULARITIES.OBJECT))};cvox.SearchWidget.prototype.beginSearch_=function(a){var b=this.getNextResult_(a);this.outputSearchResult_(b,a);this.onNavigate()};
1309 cvox.SearchWidget.prototype.next_=function(a,b){cvox.ChromeVox.navigationManager.setReversed(!!b);var c=!1;this.getPredicate()?(c=cvox.ChromeVox.navigationManager.findNext(this.getPredicate()),cvox.ChromeVox.navigationManager.setReversed(!!b),c||(cvox.ChromeVox.navigationManager.syncToBeginning(),cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.WRAP),c=!0)):c=cvox.ChromeVox.navigationManager.navigate(!0);c=c?this.getNextResult_(a):null;this.outputSearchResult_(c,a);this.onNavigate();return c};
1310 cvox.SearchWidget.prototype.outputSearchResult_=function(a,b){cvox.ChromeVox.tts.stop();a?(this.hasMatch_=!0,cvox.ChromeVoxEventSuspender.withSuspendedEvents(goog.bind(cvox.ChromeVox.navigationManager.syncAll,cvox.ChromeVox.navigationManager))(!0),cvox.ChromeVox.navigationManager.speakDescriptionArray(a,cvox.AbstractTts.QUEUE_MODE_FLUSH,null,cvox.AbstractTts.PERSONALITY_ANNOUNCEMENT),cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("search_help_item"),cvox.AbstractTts.QUEUE_MODE_QUEUE,cvox.AbstractTts.PERSONALITY_ANNOTATION),
1311 this.outputSearchResultToBraille_(b)):(cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.WRAP),this.hasMatch_=!1)};
1312 cvox.SearchWidget.prototype.outputSearchResultToBraille_=function(a){if(cvox.ChromeVox.braille){var b=this.textFromCurrentDescription_(),c=this.caseSensitive_?b:b.toLowerCase();a=this.caseSensitive_?a:a.toLowerCase();c=c.indexOf(a);if(-1==c)console.log("Search string not in result when preparing for Braille.");else{var d=b.length,b=cvox.ChromeVox.msgs.getMsg("mark_as_search_result_brl",[b]),e=b.length,c=c+(e-d);cvox.ChromeVox.braille.write(new cvox.NavBraille({text:b,startIndex:c+a.length,endIndex:c+
1313 a.length}))}}};cvox.SearchWidget.prototype.textFromCurrentDescription_=function(){for(var a=cvox.ChromeVox.navigationManager.getDescription(),b="",c=0;c<a.length;c++)b+=a[c].text+" ";return b};cvox.SearchWidget.prototype.handleSearchChanged_=function(a){a=a.target.value+a.data;cvox.SearchWidget.prototype.beginSearch_(a)};cvox.OverlayWidget=function(a){cvox.SearchWidget.call(this);this.snippet_=a};goog.inherits(cvox.OverlayWidget,cvox.SearchWidget);
1314 cvox.OverlayWidget.prototype.show=function(){cvox.OverlayWidget.superClass_.show.call(this);var a=document.createElement("DIV");a.innerHTML=this.snippet_;var b=cvox.DomUtil.elementToPoint(cvox.ChromeVox.navigationManager.getCurrentNode());a.style.position="absolute";a.style.left=b.x;a.style.top=b.y;document.body.appendChild(a);cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(a);this.host_=a};cvox.OverlayWidget.prototype.hide=function(){this.host_.remove();cvox.OverlayWidget.superClass_.hide.call(this)};
1315 cvox.OverlayWidget.prototype.onKeyDown=function(a){cvox.OverlayWidget.superClass_.onKeyDown.call(this,a);if(13==a.keyCode||27==a.keyCode)return!0;a=cvox.ChromeVox.navigationManager.isReversed();cvox.DomUtil.isDescendantOfNode(cvox.ChromeVox.navigationManager.getCurrentNode(),this.host_)||(a?cvox.ChromeVox.navigationManager.syncToBeginning():cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(this.host_),this.onNavigate(),cvox.ChromeVox.navigationManager.speakDescriptionArray(cvox.ChromeVox.navigationManager.getDescription(),
1316 0,null))};cvox.KeyboardHelpWidget=function(){cvox.OverlayWidget.call(this,"");this.container_=document.createElement("div");var a=cvox.ChromeVoxKbHandler.handlerKeyMap;a.bindings().forEach(goog.bind(function(a){var c=a.command;a=a.sequence;var d=c;try{var e=cvox.CommandStore.messageForCommand(c);if(!e)return;d=cvox.ChromeVox.msgs.getMsg(e)}catch(f){}e=document.createElement("p");e.id=c;e.setAttribute("role","menuitem");e.textContent=d+" - "+cvox.KeyUtil.keySequenceToString(a,!0);this.container_.appendChild(e)},
1317 this))};goog.inherits(cvox.KeyboardHelpWidget,cvox.OverlayWidget);goog.addSingletonGetter(cvox.KeyboardHelpWidget);cvox.KeyboardHelpWidget.prototype.show=function(){cvox.KeyboardHelpWidget.superClass_.show.call(this);this.host_.appendChild(this.container_)};cvox.KeyboardHelpWidget.prototype.getNameMsg=function(){return["keyboard_help_intro"]};
1318 cvox.KeyboardHelpWidget.prototype.onKeyDown=function(a){if(13==a.keyCode){var b=cvox.ChromeVox.navigationManager.getCurrentNode().parentNode.id;this.hide();cvox.ChromeVoxEventSuspender.withSuspendedEvents(cvox.ChromeVoxUserCommands.commands[b])();a.preventDefault();a.stopPropagation();return!0}return cvox.KeyboardHelpWidget.superClass_.onKeyDown.call(this,a)};goog.object={};goog.object.forEach=function(a,b,c){for(var d in a)b.call(c,a[d],d,a)};goog.object.filter=function(a,b,c){var d={},e;for(e in a)b.call(c,a[e],e,a)&&(d[e]=a[e]);return d};goog.object.map=function(a,b,c){var d={},e;for(e in a)d[e]=b.call(c,a[e],e,a);return d};goog.object.some=function(a,b,c){for(var d in a)if(b.call(c,a[d],d,a))return!0;return!1};goog.object.every=function(a,b,c){for(var d in a)if(!b.call(c,a[d],d,a))return!1;return!0};
1319 goog.object.getCount=function(a){var b=0,c;for(c in a)b++;return b};goog.object.getAnyKey=function(a){for(var b in a)return b};goog.object.getAnyValue=function(a){for(var b in a)return a[b]};goog.object.contains=function(a,b){return goog.object.containsValue(a,b)};goog.object.getValues=function(a){var b=[],c=0,d;for(d in a)b[c++]=a[d];return b};goog.object.getKeys=function(a){var b=[],c=0,d;for(d in a)b[c++]=d;return b};
1320 goog.object.getValueByKeys=function(a,b){for(var c=goog.isArrayLike(b),d=c?b:arguments,c=c?0:1;c<d.length&&(a=a[d[c]],goog.isDef(a));c++);return a};goog.object.containsKey=function(a,b){return b in a};goog.object.containsValue=function(a,b){for(var c in a)if(a[c]==b)return!0;return!1};goog.object.findKey=function(a,b,c){for(var d in a)if(b.call(c,a[d],d,a))return d};goog.object.findValue=function(a,b,c){return(b=goog.object.findKey(a,b,c))&&a[b]};
1321 goog.object.isEmpty=function(a){for(var b in a)return!1;return!0};goog.object.clear=function(a){for(var b in a)delete a[b]};goog.object.remove=function(a,b){var c;(c=b in a)&&delete a[b];return c};goog.object.add=function(a,b,c){if(b in a)throw Error('The object already contains the key "'+b+'"');goog.object.set(a,b,c)};goog.object.get=function(a,b,c){return b in a?a[b]:c};goog.object.set=function(a,b,c){a[b]=c};goog.object.setIfUndefined=function(a,b,c){return b in a?a[b]:a[b]=c};
1322 goog.object.clone=function(a){var b={},c;for(c in a)b[c]=a[c];return b};goog.object.unsafeClone=function(a){var b=goog.typeOf(a);if("object"==b||"array"==b){if(a.clone)return a.clone();var b="array"==b?[]:{},c;for(c in a)b[c]=goog.object.unsafeClone(a[c]);return b}return a};goog.object.transpose=function(a){var b={},c;for(c in a)b[a[c]]=c;return b};goog.object.PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
1323 goog.object.extend=function(a,b){for(var c,d,e=1;e<arguments.length;e++){d=arguments[e];for(c in d)a[c]=d[c];for(var f=0;f<goog.object.PROTOTYPE_FIELDS_.length;f++)c=goog.object.PROTOTYPE_FIELDS_[f],Object.prototype.hasOwnProperty.call(d,c)&&(a[c]=d[c])}};
1324 goog.object.create=function(a){var b=arguments.length;if(1==b&&goog.isArray(arguments[0]))return goog.object.create.apply(null,arguments[0]);if(b%2)throw Error("Uneven number of arguments");for(var c={},d=0;d<b;d+=2)c[arguments[d]]=arguments[d+1];return c};goog.object.createSet=function(a){var b=arguments.length;if(1==b&&goog.isArray(arguments[0]))return goog.object.createSet.apply(null,arguments[0]);for(var c={},d=0;d<b;d++)c[arguments[d]]=!0;return c};
1325 goog.object.createImmutableView=function(a){var b=a;Object.isFrozen&&!Object.isFrozen(a)&&(b=Object.create(a),Object.freeze(b));return b};goog.object.isImmutableView=function(a){return!!Object.isFrozen&&Object.isFrozen(a)};cvox.UserEventDetail=function(a){this.command=this.category="";-1!=cvox.UserEventDetail.JUMP_COMMANDS.indexOf(a.command)&&(this.command=a.command,this.category=cvox.UserEventDetail.Category.JUMP);this.customCommand="";a.customCommand&&(this.customCommand=a.customCommand,this.category=cvox.UserEventDetail.Category.CUSTOM);this.status=cvox.UserEventDetail.Status.PENDING;switch(a.status){case cvox.UserEventDetail.Status.SUCCESS:this.status=cvox.UserEventDetail.Status.SUCCESS;break;case cvox.UserEventDetail.Status.FAILURE:this.status=
1326 cvox.UserEventDetail.Status.FAILURE}this.resultNode=null;a.resultNode&&cvox.DomUtil.isAttachedToDocument(a.resultNode)&&(this.resultNode=a.resultNode)};cvox.UserEventDetail.Category={JUMP:"ATJumpEvent",CUSTOM:"ATCustomEvent"};cvox.UserEventDetail.Status={PENDING:"PENDING",SUCCESS:"SUCCESS",FAILURE:"FAILURE"};cvox.UserEventDetail.JUMP_COMMANDS="nextCheckbox previousCheckbox nextRadio previousRadio nextSlider previousSlider nextGraphic previousGraphic nextButton previousButton nextComboBox previousComboBox nextEditText previousEditText nextHeading previousHeading nextHeading1 previousHeading1 nextHeading2 previousHeading2 nextHeading3 previousHeading3 nextHeading4 previousHeading4 nextHeading5 previousHeading5 nextHeading6 previousHeading6 nextLink previousLink nextMath previousMath nextTable previousTable nextList previousList nextListItem previousListItem nextFormField previousFormField nextLandmark previousLandmark nextSection previousSection nextControl previousControl".split(" ");
1327 cvox.UserEventDetail.prototype.createEventObject=function(){var a=document.createEvent("CustomEvent");a.initCustomEvent(this.category,!0,!0,this);return a};var extractMenuList_=function(a){for(;a!==document;){var b=a.getAttribute("contextMenuActions");if(b)return JSON.parse(b);a=a.parentNode}return null},getCurrentElement_=function(){for(var a=cvox.ChromeVox.navigationManager.getCurrentNode();a.nodeType!==Node.ELEMENT_NODE;)a=a.parentNode;return a};
1328 cvox.ContextMenuWidget=function(){cvox.OverlayWidget.call(this,"");this.container_=document.createElement("div");this.triggerElement_=getCurrentElement_();(this.menuList=extractMenuList_(this.triggerElement_))?this.menuList.forEach(goog.bind(function(a){if(a.desc||a.cmd){var b=a.desc;a=a.cmd;var c=document.createElement("p");c.id=a;c.textContent=b;c.setAttribute("role","menuitem");this.container_.appendChild(c)}},this)):console.log("No context menu found.")};goog.inherits(cvox.ContextMenuWidget,cvox.OverlayWidget);
1329 cvox.ContextMenuWidget.prototype.show=function(){this.menuList&&(cvox.ContextMenuWidget.superClass_.show.call(this),this.host_.appendChild(this.container_))};cvox.ContextMenuWidget.prototype.getNameMsg=function(){return["context_menu_intro"]};
1330 cvox.ContextMenuWidget.prototype.onKeyDown=function(a){if(13==a.keyCode){var b=cvox.ChromeVox.navigationManager.getCurrentNode(),b=b.parentNode.id,b=new cvox.UserEventDetail({customCommand:b}),b=b.createEventObject();this.triggerElement_.dispatchEvent(b);this.hide();a.preventDefault();a.stopPropagation();return!0}return cvox.ContextMenuWidget.superClass_.onKeyDown.call(this,a)};cvox.NodeSearchWidget=function(a,b){this.typeMsg_=a;this.predicate_=b;cvox.SearchWidget.call(this)};goog.inherits(cvox.NodeSearchWidget,cvox.SearchWidget);cvox.NodeSearchWidget.prototype.getNameMsg=function(){return["choice_widget_name",[cvox.ChromeVox.msgs.getMsg(this.typeMsg_)]]};cvox.NodeSearchWidget.prototype.getHelpMsg=function(){return"choice_widget_help"};cvox.NodeSearchWidget.prototype.getPredicate=function(){return this.predicate_};
1331 cvox.NodeSearchWidget.create=function(a,b){return new cvox.NodeSearchWidget(a,b)};cvox.SelectWidget=function(a){cvox.OverlayWidget.call(this,"");this.selectNode_=a};goog.inherits(cvox.SelectWidget,cvox.OverlayWidget);
1332 cvox.SelectWidget.prototype.show=function(){cvox.SelectWidget.superClass_.show.call(this);var a=document.createElement("div");a.setAttribute("role","menu");for(var b=0,c=null;c=this.selectNode_.options[b];b++){var d=document.createElement("p");d.innerHTML=c.innerHTML;d.id=b;d.setAttribute("role","menuitem");a.appendChild(d)}this.host_.appendChild(a);b=this.selectNode_.selectedIndex;"number"==typeof b&&cvox.ChromeVox.syncToNode(a.children[b],!0)};
1333 cvox.SelectWidget.prototype.hide=function(){var a=document.createEvent("Event");a.initEvent("change",!1,!1);this.selectNode_.dispatchEvent(a);cvox.SelectWidget.superClass_.hide.call(this,!0)};cvox.SelectWidget.prototype.onNavigate=function(){var a=this;cvox.ChromeVoxEventSuspender.withSuspendedEvents(function(){var b=cvox.ChromeVox.navigationManager.getCurrentNode().parentNode.id;a.selectNode_.selectedIndex=b})()};cvox.SelectWidget.prototype.getNameMsg=function(){return["aria_role_menu"]};cvox.FocusUtil=function(){};cvox.FocusUtil.INPUT_TYPE_ACCEPTS_SELECTION_TABLE={hidden:!1,text:!0,search:!0,tel:!0,url:!0,email:!0,password:!0,datetime:!1,date:!1,month:!1,week:!1,time:!1,"datetime-local":!1,number:!1,range:!1,color:!1,checkbox:!1,radio:!1,file:!1,submit:!1,image:!1,reset:!1,button:!1};
1334 cvox.FocusUtil.isFocusInTextInputField=function(){var a=document.activeElement;return a?a.isContentEditable||"textbox"==a.getAttribute("role")?!0:"true"==a.getAttribute("readOnly")?!1:"TEXTAREA"===a.tagName||"SELECT"===a.tagName?!0:"INPUT"===a.tagName?a.hasAttribute("type")?(a=a.getAttribute("type").toLowerCase(),cvox.FocusUtil.INPUT_TYPE_ACCEPTS_SELECTION_TABLE[a]):!0:!1:!1};cvox.ConsoleTts=function(){this.enabled_=!1};goog.addSingletonGetter(cvox.ConsoleTts);cvox.ConsoleTts.prototype.speak=function(a,b,c){if(this.enabled_&&window.console){var d="Speak",d=b==cvox.AbstractTts.QUEUE_MODE_FLUSH?d+" (I)":d+" (Q)",d=d+(' "'+a+'"');window.console.log(d);c&&void 0!=c.startCallback&&window.console.log(" using startCallback");c&&void 0!=c.endCallback&&window.console.log(" using endCallback")}return this};cvox.ConsoleTts.prototype.isSpeaking=function(){return!1};
1335 cvox.ConsoleTts.prototype.stop=function(){this.enabled_&&window.console.log("Stop")};cvox.ConsoleTts.prototype.increaseOrDecreaseProperty=function(){};cvox.ConsoleTts.prototype.setEnabled=function(a){this.enabled_=a};cvox.ConsoleTts.prototype.getDefaultProperty=function(){};cvox.SpokenListBuilder=function(){this.list_=[]};cvox.SpokenListBuilder.prototype.flush=function(a){this.list_.push([a,cvox.AbstractTts.QUEUE_MODE_FLUSH]);return this};cvox.SpokenListBuilder.prototype.build=function(){return this.list_};cvox.RunnerInterface=function(){};cvox.RunnerInterface.prototype.setFocus=function(){};cvox.AbstractTestCase=function(){};cvox.CompositeTts=function(){this.ttsEngines_=[]};cvox.CompositeTts.prototype.add=function(a){this.ttsEngines_.push(a);return this};cvox.CompositeTts.prototype.speak=function(a,b,c){this.ttsEngines_.forEach(function(d){d.speak(a,b,c)})};cvox.CompositeTts.prototype.isSpeaking=function(){return this.ttsEngines_.some(function(a){return a.isSpeaking()})};cvox.CompositeTts.prototype.stop=function(){this.ttsEngines_.forEach(function(a){a.stop()})};
1336 cvox.CompositeTts.prototype.increaseOrDecreaseProperty=function(a,b){this.ttsEngines_.forEach(function(c){c.increaseOrDecreaseProperty(a,b)})};cvox.CompositeTts.prototype.getDefaultProperty=function(a){for(var b=0,c;c=this.ttsEngines_[b];b++)if(c=c.getDefaultProperty(a))return c};cvox.TestTts=function(){cvox.AbstractTts.call(this);this.utterances_=[]};goog.inherits(cvox.TestTts,cvox.AbstractTts);cvox.TestTts.prototype.sentinelText_="@@@STOP@@@";cvox.TestTts.prototype.speak=function(a,b,c){this.utterances_.push({text:a,queueMode:b});c&&void 0!=c.endCallback&&(a=this.utterances_.length,this.utterances_[a-1].text!=this.sentinelText_&&c.endCallback())};cvox.HostFactory.ttsConstructor=cvox.TestTts;cvox.AutoRunner=function(){new cvox.TestTts};cvox.AutoRunner.TestSummary=function(a,b,c,d){this.tag=a;this.status=c;this.scope=d};cvox.AutoRunner.PASS="pass";cvox.AutoRunner.FAIL="fail";cvox.AutoRunner.prototype.setFocus=function(a){document.getElementById(a).focus();return this};cvox.ChromeVoxUserCommands={};cvox.ChromeVoxUserCommands.init_=function(){if(!cvox.ChromeVoxUserCommands.commands){cvox.ChromeVoxUserCommands.commands={};for(var a in cvox.CommandStore.CMD_WHITELIST)cvox.ChromeVoxUserCommands.commands[a]=cvox.ChromeVoxUserCommands.createCommand_(a)}};cvox.ChromeVoxUserCommands.wasMouseClicked=!1;cvox.ChromeVoxUserCommands.enableCommandDispatchingToPage=!0;
1337 cvox.ChromeVoxUserCommands.handleTabAction_=function(){cvox.ChromeVox.tts.stop();if(!cvox.ChromeVox.navigationManager.resolve(cvox.DomUtil.isFocusable))return cvox.ChromeVox.navigationManager.setFocus(),!1;var a=cvox.ChromeVoxUserCommands.isFocusedOnLinkControl_();if(a)return!0;var b=a=null,b=window.getSelection();cvox.ChromeVoxUserCommands.wasMouseClicked?cvox.ChromeVoxUserCommands.wasMouseClicked=!1:b=null;null==b||null==b.anchorNode||null==b.focusNode?(a=cvox.ChromeVox.navigationManager.getCurrentNode(),
1338 b=cvox.ChromeVox.navigationManager.getCurrentNode()):(a=b.anchorNode,b=b.focusNode);if(null==a||null==b)return!0;if(cvox.DomUtil.isFocusable(a))return a.focus(),!0;if(cvox.DomUtil.isFocusable(b))return b.focus(),!0;if(cvox.DomUtil.isFocusable(a.parentNode))return a.parentNode.focus(),!0;if(cvox.DomUtil.isFocusable(b.parentNode))return b.parentNode.focus(),!0;b=cvox.ChromeVoxUserCommands.createTabDummySpan_();a.parentNode.insertBefore(b,a);b.focus();return!0};
1339 cvox.ChromeVoxUserCommands.isFocusedOnLinkControl_=function(){var a="A";return document.activeElement.tagName==a||cvox.DomUtil.isControl(document.activeElement)?!0:!1};cvox.ChromeVoxUserCommands.removeTabDummySpan=function(){var a=document.getElementById("ChromeVoxTabDummySpan");a&&document.activeElement!=a&&a.parentNode.removeChild(a)};cvox.ChromeVoxUserCommands.createTabDummySpan_=function(){var a=document.createElement("span");a.id="ChromeVoxTabDummySpan";a.tabIndex=-1;return a};
1340 cvox.ChromeVoxUserCommands.createCommand_=function(a){return goog.bind(function(b){b=cvox.ChromeVoxUserCommands.lookupCommand_(a,b);return cvox.ChromeVoxUserCommands.dispatchCommand_(b)},cvox.ChromeVoxUserCommands)};
1341 cvox.ChromeVoxUserCommands.dispatchCommand_=function(a){if(cvox.Widget.isActive()||!cvox.PlatformUtil.matchesPlatform(a.platformFilter)||a.skipInput&&cvox.FocusUtil.isFocusInTextInputField())return!0;if(cvox.ChromeVoxUserCommands.enableCommandDispatchingToPage&&-1!=cvox.UserEventDetail.JUMP_COMMANDS.indexOf(a.command)){a=new cvox.UserEventDetail({command:a.command});a=a.createEventObject();var b=cvox.ChromeVox.navigationManager.getCurrentNode();b||(b=document.body);b.dispatchEvent(a);return!1}return cvox.ChromeVoxUserCommands.doCommand_(a)};
1342 cvox.ChromeVoxUserCommands.doCommand_=function(a){if(cvox.Widget.isActive()||!cvox.PlatformUtil.matchesPlatform(a.platformFilter)||a.skipInput&&cvox.FocusUtil.isFocusInTextInputField()||a.disallowOOBE&&document.URL.match(/^chrome:\/\/oobe/i))return!0;var b=a.command;a.allowEvents||cvox.ChromeVoxEventSuspender.enterSuspendEvents();a.disallowContinuation&&cvox.ChromeVox.navigationManager.stopReading(!0);a.forward?cvox.ChromeVox.navigationManager.setReversed(!1):a.backward&&cvox.ChromeVox.navigationManager.setReversed(!0);
1343 a.findNext&&(b="find",a.announce=!0);var c="",d="",e=!1;switch(b){case "handleTab":case "handleTabPrev":e=cvox.ChromeVoxUserCommands.handleTabAction_();break;case "forward":case "backward":e=!cvox.ChromeVox.navigationManager.navigate();break;case "right":case "left":cvox.ChromeVox.navigationManager.subnavigate();break;case "find":if(!a.findNext)throw"Invalid find command.";var f=cvox.CommandStore.NODE_INFO_MAP[a.findNext],g=f.predicate,h=cvox.DomPredicates[g],k="",l="";a.forward?(l=cvox.ChromeVox.msgs.getMsg("wrapped_to_top"),
1344 k=cvox.ChromeVox.msgs.getMsg(f.forwardError)):a.backward&&(l=cvox.ChromeVox.msgs.getMsg("wrapped_to_bottom"),k=cvox.ChromeVox.msgs.getMsg(f.backwardError));var f=null,m=a.status||cvox.UserEventDetail.Status.PENDING,p=a.resultNode||null;switch(m){case cvox.UserEventDetail.Status.SUCCESS:p&&cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(p,!0);break;case cvox.UserEventDetail.Status.FAILURE:d=k;break;default:f=cvox.ChromeVox.navigationManager.findNext(h,g),f||(cvox.ChromeVox.navigationManager.saveSel(),
1345 d=l,cvox.ChromeVox.navigationManager.syncToBeginning(),cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.WRAP),f=cvox.ChromeVox.navigationManager.findNext(h,g,!0),f||(d=k,cvox.ChromeVox.navigationManager.restoreSel()))}f&&"IFRAME"==f.start.node.tagName&&(a.announce=!1);break;case "previousGranularity":cvox.ChromeVox.navigationManager.makeLessGranular(!0);d=cvox.ChromeVox.navigationManager.getGranularityMsg();break;case "nextGranularity":cvox.ChromeVox.navigationManager.makeMoreGranular(!0);d=
1346 cvox.ChromeVox.navigationManager.getGranularityMsg();break;case "previousCharacter":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.CHARACTER);break;case "nextCharacter":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.CHARACTER);break;case "previousWord":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.WORD);break;case "nextWord":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.WORD);
1347 break;case "previousSentence":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.SENTENCE);break;case "nextSentence":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.SENTENCE);break;case "previousLine":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.LINE);break;case "nextLine":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.LINE);break;case "previousObject":cvox.ChromeVox.navigationManager.navigate(!1,
1348 cvox.NavigationShifter.GRANULARITIES.OBJECT);break;case "nextObject":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.OBJECT);break;case "previousGroup":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.GROUP);break;case "nextGroup":cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.GROUP);break;case "previousRow":case "previousCol":b="previousRow"==b?"nextRow":"nextCol";case "nextRow":case "nextCol":cvox.ChromeVox.navigationManager.performAction("enterShifterSilently");
1349 cvox.ChromeVox.navigationManager.performAction(b);break;case "moveToStartOfLine":case "moveToEndOfLine":cvox.ChromeVox.navigationManager.setGranularity(cvox.NavigationShifter.GRANULARITIES.LINE);cvox.ChromeVox.navigationManager.sync();cvox.ChromeVox.navigationManager.collapseSelection();break;case "readFromHere":cvox.ChromeVox.navigationManager.setGranularity(cvox.NavigationShifter.GRANULARITIES.OBJECT,!0,!0);cvox.ChromeVox.navigationManager.startReading(cvox.AbstractTts.QUEUE_MODE_FLUSH);break;case "cycleTypingEcho":cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",
1350 action:"setPref",pref:"typingEcho",value:cvox.TypingEcho.cycle(cvox.ChromeVox.typingEcho),announce:!0});break;case "jumpToTop":case cvox.BrailleKeyCommand.TOP:cvox.ChromeVox.navigationManager.syncToBeginning();break;case "jumpToBottom":case cvox.BrailleKeyCommand.BOTTOM:cvox.ChromeVox.navigationManager.syncToBeginning();break;case "stopSpeech":cvox.ChromeVox.navigationManager.stopReading(!0);break;case "toggleKeyboardHelp":cvox.KeyboardHelpWidget.getInstance().toggle();break;case "help":cvox.ChromeVox.tts.stop();
1351 cvox.ChromeVox.host.sendToBackgroundPage({target:"HelpDocs",action:"open"});break;case "contextMenu":g=cvox.ChromeVox.navigationManager.getCurrentNode();"SELECT"!=g.tagName||g.multiple?(g=new cvox.ContextMenuWidget,g.toggle()):(new cvox.SelectWidget(g)).show();break;case "showBookmarkManager":cvox.ChromeVox.host.sendToBackgroundPage({target:"BookmarkManager",action:"open"});break;case "showOptionsPage":cvox.ChromeVox.tts.stop();cvox.ChromeVox.host.sendToBackgroundPage({target:"Options",action:"open"});
1352 break;case "showKbExplorerPage":cvox.ChromeVox.tts.stop();cvox.ChromeVox.host.sendToBackgroundPage({target:"KbExplorer",action:"open"});break;case "readLinkURL":g=document.activeElement;h=window.getSelection().anchorNode;k="";"A"==g.tagName?k=cvox.DomUtil.getLinkURL(g):h&&(k=cvox.DomUtil.getLinkURL(h.parentNode));""!=k?cvox.ChromeVox.tts.speak(k):cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("no_url_found"));break;case "readCurrentTitle":cvox.ChromeVox.tts.speak(document.title);break;case "readCurrentURL":cvox.ChromeVox.tts.speak(document.URL);
1353 break;case "performDefaultAction":cvox.DomPredicates.linkPredicate([document.activeElement])&&cvox.DomUtil.isInternalLink(document.activeElement)&&(cvox.DomUtil.syncInternalLink(document.activeElement),cvox.ChromeVox.navigationManager.sync(),a.announce=!0);break;case "forceClickOnCurrentItem":d=cvox.ChromeVox.msgs.getMsg("element_clicked");g=cvox.ChromeVox.navigationManager.getCurrentNode();cvox.DomUtil.clickElem(g,!1,!1);break;case "forceDoubleClickOnCurrentItem":d=cvox.ChromeVox.msgs.getMsg("element_double_clicked");
1354 g=cvox.ChromeVox.navigationManager.getCurrentNode();cvox.DomUtil.clickElem(g,!1,!1,!0);break;case "toggleChromeVox":cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"active",value:!cvox.ChromeVox.isActive});break;case "fullyDescribe":g=cvox.ChromeVox.navigationManager.getFullDescription();cvox.ChromeVox.navigationManager.speakDescriptionArray(g,cvox.AbstractTts.QUEUE_MODE_FLUSH,null);break;case "speakTimeAndDate":g=new Date;cvox.ChromeVox.tts.speak(g.toLocaleTimeString()+
1355 ", "+g.toLocaleDateString());break;case "toggleSelection":d=cvox.ChromeVox.navigationManager.togglePageSel();d=cvox.ChromeVox.msgs.getMsg(d?"begin_selection":"end_selection");break;case "startHistoryRecording":cvox.History.getInstance().startRecording();break;case "stopHistoryRecording":cvox.History.getInstance().stopRecording();break;case "enableConsoleTts":cvox.ConsoleTts.getInstance().setEnabled(!0);break;case "goToFirstCell":case "goToLastCell":case "goToRowFirstCell":case "goToRowLastCell":case "goToColFirstCell":case "goToColLastCell":case "announceHeaders":case "speakTableLocation":case "exitShifterContent":cvox.DomPredicates.tablePredicate(cvox.DomUtil.getAncestors(cvox.ChromeVox.navigationManager.getCurrentNode()))&&
1356 cvox.ChromeVox.navigationManager.performAction(b)||(c="not_inside_table");break;case "enterShifter":case "exitShifter":cvox.ChromeVox.navigationManager.performAction(b);break;case "decreaseTtsRate":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.RATE,!1);break;case "increaseTtsRate":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.RATE,!0);break;case "decreaseTtsPitch":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.PITCH,!1);break;case "increaseTtsPitch":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.PITCH,
1357 !0);break;case "decreaseTtsVolume":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.VOLUME,!1);break;case "increaseTtsVolume":cvox.ChromeVox.tts.increaseOrDecreaseProperty(cvox.AbstractTts.VOLUME,!0);break;case "cyclePunctuationEcho":cvox.ChromeVox.host.sendToBackgroundPage({target:"TTS",action:"cyclePunctuationEcho"});break;case "toggleStickyMode":cvox.ChromeVox.host.sendToBackgroundPage({target:"Prefs",action:"setPref",pref:"sticky",value:!cvox.ChromeVox.isStickyOn,announce:!0});break;
1358 case "toggleKeyPrefix":cvox.ChromeVox.keyPrefixOn=!cvox.ChromeVox.keyPrefixOn;break;case "passThroughMode":cvox.ChromeVox.passThroughMode=!0;cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("pass_through_key"));break;case "toggleSearchWidget":cvox.SearchWidget.getInstance().toggle();break;case "toggleEarcons":d=cvox.ChromeVox.earcons.toggle()?cvox.ChromeVox.msgs.getMsg("earcons_on"):cvox.ChromeVox.msgs.getMsg("earcons_off");break;case "showHeadingsList":case "showLinksList":case "showFormsList":case "showTablesList":case "showLandmarksList":if(!a.nodeList)break;
1359 g=cvox.CommandStore.NODE_INFO_MAP[a.nodeList];cvox.NodeSearchWidget.create(g.typeMsg,cvox.DomPredicates[g.predicate]).show();break;case "openLongDesc":g=cvox.ChromeVox.navigationManager.getCurrentNode();cvox.DomUtil.hasLongDesc(g)?cvox.ChromeVox.host.sendToBackgroundPage({target:"OpenTab",url:g.longDesc}):cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("no_long_desc"),cvox.AbstractTts.QUEUE_MODE_FLUSH,cvox.AbstractTts.PERSONALITY_ANNOTATION);break;case "pauseAllMedia":k=document.getElementsByTagName("VIDEO");
1360 for(g=0;h=k[g];g++)h.pause();k=document.getElementsByTagName("AUDIO");for(g=0;h=k[g];g++)h.pause();break;case "toggleSemantics":cvox.TraverseMath.toggleSemantic()?cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("semantics_on")):cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("semantics_off"));break;case cvox.BrailleKeyCommand.ROUTING:g=cvox.ChromeVox.navigationManager.getBraille();g=g.text.getSpans(a.displayPosition||0);g=g.filter(function(a){return a instanceof Node})[0];cvox.DomUtil.clickElem(g||
1361 cvox.ChromeVox.navigationManager.getCurrentNode(),!1,!0);break;case cvox.BrailleKeyCommand.PAN_LEFT:case cvox.BrailleKeyCommand.LINE_UP:case cvox.BrailleKeyCommand.PAN_RIGHT:case cvox.BrailleKeyCommand.LINE_DOWN:cvox.ChromeVox.navigationManager.navigate(!1,cvox.NavigationShifter.GRANULARITIES.LINE);break;case "debug":break;case "nop":break;default:throw"Command behavior not defined: "+b;}""!=c?cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg(c),cvox.AbstractTts.QUEUE_MODE_FLUSH,cvox.AbstractTts.PERSONALITY_ANNOTATION):
1362 cvox.ChromeVox.navigationManager.isReading()?a.disallowContinuation?cvox.ChromeVox.navigationManager.stopReading(!0):"readFromHere"!=b&&cvox.ChromeVox.navigationManager.skip():a.announce&&cvox.ChromeVox.navigationManager.finishNavCommand(d);a.allowEvents||cvox.ChromeVoxEventSuspender.exitSuspendEvents();return!!a.doDefault||e};
1363 cvox.ChromeVoxUserCommands.handleChromeVoxUserEvent=function(a){a=new cvox.UserEventDetail(a.detail);a.command&&cvox.ChromeVoxUserCommands.doCommand_(cvox.ChromeVoxUserCommands.lookupCommand_(a.command,a))};cvox.ChromeVoxUserCommands.lookupCommand_=function(a,b){var c=cvox.CommandStore.CMD_WHITELIST[a];if(!c)throw"Invalid command: "+a;c=goog.object.clone(c);c.command=a;b&&goog.object.extend(c,b);return c};cvox.ChromeVoxUserCommands.init_();cvox.ChromeVoxKbHandler={};cvox.ChromeVoxKbHandler.loadKeyToFunctionsTable=function(a){window.JSON&&(cvox.ChromeVoxKbHandler.handlerKeyMap=cvox.KeyMap.fromJSON(a))};cvox.ChromeVoxKbHandler.sortKeyToFunctionsTable_=function(a){function b(a,b){return a[0].length<b[0].length?-1:b[0].length<a[0].length?1:a[0].localeCompare(b[0])}var c=[],d;for(d in a)c.push([d,a[d]]);c.sort(b);return c};
1364 cvox.ChromeVoxKbHandler.basicKeyDownActionsListener=function(a){var b=cvox.KeyUtil.keyEventToKeySequence(a);a=void 0!=cvox.ChromeVoxKbHandler.handlerKeyMap?cvox.ChromeVoxKbHandler.handlerKeyMap.commandForKey(b):null;if(!a)return!cvox.KeyUtil.sequencing;if(!cvox.ChromeVox.isActive&&"toggleChromeVox"!=a)return!0;var c=!0,d=cvox.ChromeVoxUserCommands.commands[a];d?(b=cvox.History.getInstance(),b.enterUserCommand(a),c=d(),b.exitUserCommand(a)):b.cvoxModifier&&(c=!1);cvox.ChromeVox.entireDocumentIsHidden&&
1365 (c=!0);return c};cvox.LiveRegions=function(){};cvox.LiveRegions.pageLoadTime=null;cvox.LiveRegions.INITIAL_SILENCE_MS=2E3;cvox.LiveRegions.lastAnnouncedMap={};cvox.LiveRegions.MAX_DISCARD_DUPS_MS=2E3;cvox.LiveRegions.lastAnnouncedTime=null;cvox.LiveRegions.nodesAlreadyHandled=[];
1366 cvox.LiveRegions.init=function(a,b,c){void 0==b&&(b=cvox.AbstractTts.QUEUE_MODE_FLUSH);cvox.LiveRegions.pageLoadTime=a;if(c||!document.hasFocus())return!1;var d=!1;a=cvox.AriaUtil.getLiveRegions(document.body);for(c=0;c<a.length;c++)cvox.LiveRegions.handleOneChangedNode(a[c],a[c],!1,!1,function(a,c){a||b!=cvox.AbstractTts.QUEUE_MODE_FLUSH||(b=cvox.AbstractTts.QUEUE_MODE_QUEUE);var g=new cvox.NavigationSpeaker;g.speakDescriptionArray(c,b,null);d=!0});cvox.Interframe.addListener(function(a){if("speakLiveRegion"==
1367 a.command)for(var b=document.getElementsByTagName("iframe"),c=0,d;d=b[c];c++)if(d.src==a.src){if(!cvox.DomUtil.isVisible(d))break;d=JSON.parse(a.content);for(var k=[],l=0,m;m=d[l];l++)k.push(new cvox.NavDescription(m));(new cvox.NavigationSpeaker).speakDescriptionArray(k,a.queueMode,null)}});return d};
1368 cvox.LiveRegions.processMutations=function(a,b){cvox.LiveRegions.nodesAlreadyHandled=[];a.forEach(function(a){if(!a.target.hasAttribute||!a.target.hasAttribute("cvoxIgnore")){if(a.addedNodes)for(var d=0;d<a.addedNodes.length;d++)a.addedNodes[d].hasAttribute&&a.addedNodes[d].hasAttribute("cvoxIgnore")||cvox.LiveRegions.handleOneChangedNode(a.addedNodes[d],a.target,!1,!0,b);if(a.removedNodes)for(d=0;d<a.removedNodes.length;d++)a.removedNodes[d].hasAttribute&&a.removedNodes[d].hasAttribute("cvoxIgnore")||
1369 cvox.LiveRegions.handleOneChangedNode(a.removedNodes[d],a.target,!0,!1,b);"characterData"==a.type&&cvox.LiveRegions.handleOneChangedNode(a.target,a.target,!1,!1,b);if("class"==a.attributeName||"style"==a.attributeName||"hidden"==a.attributeName){var e=a.attributeName,d=a.target,f=!cvox.DomUtil.isVisible(d),g=document.createElement("div");g.setAttribute("cvoxIgnore","1");g.setAttribute("class",d.getAttribute("class"));g.setAttribute("style",d.getAttribute("style"));g.setAttribute("hidden",d.getAttribute("hidden"));
1370 g.setAttribute(e,a.oldValue);e=!0;d.parentElement?(d.parentElement.appendChild(g),e=!cvox.DomUtil.isVisible(g),d.parentElement.removeChild(g)):e=!cvox.DomUtil.isVisible(g);!0===e&&!1===f?cvox.LiveRegions.handleOneChangedNode(a.target,a.target,!1,!0,b):!1===e&&!0===f&&cvox.LiveRegions.handleOneChangedNode(a.target,a.target,!0,!1,b)}}});cvox.LiveRegions.nodesAlreadyHandled.length=0};
1371 cvox.LiveRegions.handleOneChangedNode=function(a,b,c,d,e){var f=c?b:a;f instanceof Element||(f=f.parentElement);for(;f&&!cvox.AriaUtil.getAriaLive(f);)f=f.parentElement;if(!f){if(d&&a!=document.body)for(a=cvox.AriaUtil.getLiveRegions(a),d=0;d<a.length;d++)cvox.LiveRegions.handleOneChangedNode(a[d],b,c,!1,e)}else if(!(0<=cvox.LiveRegions.nodesAlreadyHandled.indexOf(a)||(cvox.LiveRegions.nodesAlreadyHandled.push(a),cvox.AriaUtil.getAriaBusy(f)))){if(c){if(!cvox.AriaUtil.getAriaRelevant(f,"removals"))return}else if(!cvox.AriaUtil.getAriaRelevant(f,
1372 "additions"))return;cvox.LiveRegions.announceChange(a,f,c,e)}};
1373 cvox.LiveRegions.announceChange=function(a,b,c,d){var e=new Date-cvox.LiveRegions.pageLoadTime;if(!("alert"!=cvox.AriaUtil.getRoleAttribute(b)&&e<cvox.LiveRegions.INITIAL_SILENCE_MS)&&cvox.DomUtil.isVisible(b)){if(a!=b)for(var f=a.parentElement;f;){(cvox.AriaUtil.getAriaAtomic(f)||cvox.AriaUtil.isLeafElement(f)||cvox.AriaUtil.isControlWidget(f))&&!cvox.AriaUtil.isCompositeControl(f)&&(a=f);if(f==b)break;f=f.parentElement}a=cvox.LiveRegions.getNavDescriptionsRecursive(a);if(0!=a.length){c&&(a=[new cvox.NavDescription({context:cvox.ChromeVox.msgs.getMsg("live_regions_removed"),
1374 text:""})].concat(a));if("alert"==cvox.AriaUtil.getRoleAttribute(b)&&e<cvox.LiveRegions.INITIAL_SILENCE_MS){c="";for(e=0;e<a.length;e++)c+=a[e].text,c+=a[e].userValue;if(""==cvox.DomUtil.collapseWhitespace(c))return}c=new Date;for(var g in cvox.LiveRegions.lastAnnouncedMap)c-cvox.LiveRegions.lastAnnouncedMap[g]>cvox.LiveRegions.MAX_DISCARD_DUPS_MS&&delete cvox.LiveRegions.lastAnnouncedMap[g];g=a.reduce(function(a,b){return a+"|"+b.text},"");cvox.LiveRegions.lastAnnouncedMap[g]||(cvox.LiveRegions.lastAnnouncedMap[g]=
1375 c,b="assertive"==cvox.AriaUtil.getAriaLive(b),cvox.Interframe.isIframe()&&!document.hasFocus()?cvox.Interframe.sendMessageToParentWindow({command:"speakLiveRegion",content:JSON.stringify(a),queueMode:b?0:1,src:window.location.href}):d(b,a))}}};
1376 cvox.LiveRegions.getNavDescriptionsRecursive=function(a){return cvox.AriaUtil.getAriaAtomic(a)||cvox.DomUtil.isLeafNode(a)?(a=cvox.DescriptionUtil.getDescriptionFromAncestors([a],!0,cvox.ChromeVox.verbosity),a.isEmpty()?[]:[a]):cvox.DescriptionUtil.getFullDescriptionsFromChildren(null,a)};cvox.LiveRegionsDeprecated=function(){};cvox.LiveRegionsDeprecated.trackedRegions=[];cvox.LiveRegionsDeprecated.previousRegionValue=[];cvox.LiveRegionsDeprecated.pageLoadTime=null;cvox.LiveRegionsDeprecated.INITIAL_SILENCE_MS=2E3;
1377 cvox.LiveRegionsDeprecated.init=function(a,b,c){void 0==b&&(b=cvox.AbstractTts.QUEUE_MODE_FLUSH);cvox.LiveRegionsDeprecated.pageLoadTime=a;a=!1;for(var d=cvox.AriaUtil.getLiveRegions(document.body),e=0;e<d.length;e++)cvox.LiveRegionsDeprecated.updateLiveRegion(d[e],b,c)&&(a=!0,b=cvox.AbstractTts.QUEUE_MODE_QUEUE);return a};
1378 cvox.LiveRegionsDeprecated.updateLiveRegion=function(a,b,c){if(cvox.AriaUtil.getAriaBusy(a)||!cvox.DomUtil.isVisible(a))return!1;var d=cvox.LiveRegionsDeprecated.trackedRegions.indexOf(a),e;0<=d?e=cvox.LiveRegionsDeprecated.previousRegionValue[d]:(d=cvox.LiveRegionsDeprecated.trackedRegions.length,e=[],cvox.LiveRegionsDeprecated.trackedRegions.push(a),cvox.LiveRegionsDeprecated.previousRegionValue.push([]));var f=cvox.LiveRegionsDeprecated.buildCurrentLiveRegionValue(a),g=new Date-cvox.LiveRegionsDeprecated.pageLoadTime;
1379 if("alert"!=cvox.AriaUtil.getRoleAttribute(a)&&g<cvox.LiveRegionsDeprecated.INITIAL_SILENCE_MS)return cvox.LiveRegionsDeprecated.previousRegionValue[d]=f,!1;if("alert"==cvox.AriaUtil.getRoleAttribute(a)&&g<cvox.LiveRegionsDeprecated.INITIAL_SILENCE_MS){for(var h="",g=0;g<f.length;g++)h+=f[g].text,h+=f[g].userValue;if(""==cvox.DomUtil.collapseWhitespace(h))return cvox.LiveRegionsDeprecated.previousRegionValue[d]=f,!1}for(var k={},g=0;g<e.length;g++)k[e[g].toString()]=!0;for(var l={},g=0;g<f.length;g++)l[f[g].toString()]=
1380 !0;h=[];if(cvox.AriaUtil.getAriaRelevant(a,"additions"))for(g=0;g<f.length;g++)k[f[g].toString()]||h.push(f[g]);k=[];if(cvox.AriaUtil.getAriaRelevant(a,"removals"))for(g=0;g<e.length;g++)l[e[g].toString()]||k.push(e[g]);e=[];e=0==h.length&&0<k.length?[new cvox.NavDescription({context:cvox.ChromeVox.msgs.getMsg("live_regions_removed"),text:""})].concat(k):h;cvox.LiveRegionsDeprecated.previousRegionValue[d]=f;if(c||0==e.length)return!1;a=cvox.AriaUtil.getAriaLive(a);"polite"==a&&(b=cvox.AbstractTts.QUEUE_MODE_QUEUE);
1381 for(g=0;g<e.length;g++)e[g].speak(b),b=cvox.AbstractTts.QUEUE_MODE_QUEUE;return!0};
1382 cvox.LiveRegionsDeprecated.buildCurrentLiveRegionValue=function(a){if(cvox.AriaUtil.getAriaAtomic(a)||cvox.DomUtil.isLeafNode(a)){var b=cvox.DescriptionUtil.getDescriptionFromAncestors([a],!0,cvox.ChromeVox.verbosity);return b.isEmpty()?[]:[b]}var c=[],b=cvox.DescriptionUtil.getDescriptionFromAncestors([a],!1,cvox.ChromeVox.verbosity);b.isEmpty()||c.push(b);for(b=0;b<a.childNodes.length;b++){var d=a.childNodes[b];cvox.DomUtil.isVisible(d,{checkAncestors:!1})&&!cvox.AriaUtil.isHidden(d)&&(d=cvox.LiveRegionsDeprecated.buildCurrentLiveRegionValue(d),
1383 c=c.concat(d))}return c};cvox.ChromeVoxEventWatcherUtil={};cvox.ChromeVoxEventWatcher=function(){};cvox.ChromeVoxEventWatcher.MAX_WAIT_TIME_MS_=50;cvox.ChromeVoxEventWatcher.WAIT_TIME_MS_=10;cvox.ChromeVoxEventWatcher.SUBTREE_MODIFIED_BURST_DURATION_=1E3;cvox.ChromeVoxEventWatcher.SUBTREE_MODIFIED_BURST_COUNT_LIMIT_=3;cvox.ChromeVoxEventWatcher.MAX_LIVE_REGIONS_=5;cvox.ChromeVoxEventWatcher.shouldEchoKeys=!0;cvox.ChromeVoxEventWatcher.processing_=!1;
1384 cvox.ChromeVoxEventWatcher.init=function(a){cvox.ChromeVoxEventWatcher.lastFocusedNode=null;cvox.ChromeVoxEventWatcher.announcedMouseOverNode=null;cvox.ChromeVoxEventWatcher.pendingMouseOverNode=null;cvox.ChromeVoxEventWatcher.mouseOverTimeoutId=null;cvox.ChromeVoxEventWatcher.lastFocusedNodeValue=null;cvox.ChromeVoxEventWatcher.eventToEat=null;cvox.ChromeVoxEventWatcher.currentTextControl=null;cvox.ChromeVoxEventWatcher.currentTextHandler=null;cvox.ChromeVoxEventWatcher.lastKeypressTime=0;cvox.ChromeVoxEventWatcher.listeners_=
1385 [];cvox.ChromeVoxEventWatcher.mutationObserver_=null;cvox.ChromeVoxEventWatcher.focusFollowsMouse=!1;cvox.ChromeVoxEventWatcher.mouseoverDelayMs=500;cvox.ChromeVoxEventWatcher.events_=[];cvox.ChromeVoxEventWatcher.lastEventTime=0;cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime=-1;cvox.ChromeVoxEventWatcher.queueProcessingScheduled_=!1;cvox.ChromeVoxEventWatcher.readyCallbacks_=[];cvox.ChromeVoxEventWatcher.secondPassThroughKeyUp_=!1;cvox.ChromeVox.searchKeyHeld=!1;cvox.ChromeVoxEventWatcher.textMutationObserver_=
1386 null;cvox.ChromeVoxEventWatcher.addEventListeners_(a);cvox.ChromeVoxEventWatcher.lastSubtreeModifiedEventBurstTime_=0;cvox.ChromeVoxEventWatcher.subtreeModifiedEventsCount_=0};cvox.ChromeVoxEventWatcher.storeOn=function(a){a.searchKeyHeld=cvox.ChromeVox.searchKeyHeld};cvox.ChromeVoxEventWatcher.readFrom=function(a){cvox.ChromeVox.searchKeyHeld=a.searchKeyHeld};
1387 cvox.ChromeVoxEventWatcher.addEvent=function(a){if(!cvox.ChromeVox.isActive||document.webkitHidden)return!1;cvox.ChromeVoxEventWatcher.events_.push(a);cvox.ChromeVoxEventWatcher.lastEventTime=(new Date).getTime();-1==cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime&&(cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime=(new Date).getTime());cvox.ChromeVoxEventWatcher.queueProcessingScheduled_||(cvox.ChromeVoxEventWatcher.queueProcessingScheduled_=!0,window.setTimeout(cvox.ChromeVoxEventWatcher.processQueue_,
1388 cvox.ChromeVoxEventWatcher.WAIT_TIME_MS_))};cvox.ChromeVoxEventWatcher.addReadyCallback=function(a){cvox.ChromeVoxEventWatcher.readyCallbacks_.push(a);cvox.ChromeVoxEventWatcher.maybeCallReadyCallbacks_()};cvox.ChromeVoxEventWatcher.hasPendingEvents_=function(){return-1!=cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime||cvox.ChromeVoxEventWatcher.queueProcessingScheduled_};cvox.ChromeVoxEventWatcher.readyCallbackRunning_=!1;
1389 cvox.ChromeVoxEventWatcher.maybeCallReadyCallbacks_=function(){cvox.ChromeVoxEventWatcher.readyCallbackRunning_||(cvox.ChromeVoxEventWatcher.readyCallbackRunning_=!0,window.setTimeout(function(){cvox.ChromeVoxEventWatcher.readyCallbackRunning_=!1;!cvox.ChromeVoxEventWatcher.hasPendingEvents_()&&!cvox.ChromeVoxEventWatcher.queueProcessingScheduled_&&0<cvox.ChromeVoxEventWatcher.readyCallbacks_.length&&(cvox.ChromeVoxEventWatcher.readyCallbacks_.shift()(),cvox.ChromeVoxEventWatcher.maybeCallReadyCallbacks_())},
1391 cvox.ChromeVoxEventWatcher.addEventListeners_=function(a){cvox.ChromeVoxEventWatcher.addEventListener_(a,"keydown",cvox.ChromeVoxEventWatcher.keyDownEventWatcher,!0);if(cvox.ChromeVox.isActive&&!cvox.ChromeVox.entireDocumentIsHidden)if(cvox.ChromeVoxEventWatcher.addEventListener_(a,"keypress",cvox.ChromeVoxEventWatcher.keyPressEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"keyup",cvox.ChromeVoxEventWatcher.keyUpEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,cvox.UserEventDetail.Category.JUMP,
1392 cvox.ChromeVoxUserCommands.handleChromeVoxUserEvent,!1),cvox.ChromeVoxEventWatcher.addEventListener_(a,"focus",cvox.ChromeVoxEventWatcher.focusEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"blur",cvox.ChromeVoxEventWatcher.blurEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"change",cvox.ChromeVoxEventWatcher.changeEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"copy",cvox.ChromeVoxEventWatcher.clipboardEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,
1393 "cut",cvox.ChromeVoxEventWatcher.clipboardEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"paste",cvox.ChromeVoxEventWatcher.clipboardEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"select",cvox.ChromeVoxEventWatcher.selectEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"webkitvisibilitychange",cvox.ChromeVoxEventWatcher.visibilityChangeWatcher,!0),cvox.ChromeVoxEventWatcher.events_=[],cvox.ChromeVoxEventWatcher.queueProcessingScheduled_=!1,cvox.ChromeVoxEventWatcher.addEventListener_(a,
1394 "mouseover",cvox.ChromeVoxEventWatcher.mouseOverEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"mouseout",cvox.ChromeVoxEventWatcher.mouseOutEventWatcher,!0),cvox.ChromeVoxEventWatcher.addEventListener_(a,"click",cvox.ChromeVoxEventWatcher.mouseClickEventWatcher,!0),"undefined"!=typeof WebKitMutationObserver){cvox.ChromeVoxEventWatcher.mutationObserver_=new WebKitMutationObserver(cvox.ChromeVoxEventWatcher.mutationHandler);var b=null;a.documentElement?b=a.documentElement:a.document&&
1395 a.document.documentElement&&(b=a.document.documentElement);b&&cvox.ChromeVoxEventWatcher.mutationObserver_.observe(b,{childList:!0,attributes:!0,characterData:!0,subtree:!0,attributeOldValue:!0,characterDataOldValue:!0})}else cvox.ChromeVoxEventWatcher.addEventListener_(a,"DOMSubtreeModified",cvox.ChromeVoxEventWatcher.subtreeModifiedEventWatcher,!0)};
1396 cvox.ChromeVoxEventWatcher.cleanup=function(a){for(var b=0;b<cvox.ChromeVoxEventWatcher.listeners_.length;b++){var c=cvox.ChromeVoxEventWatcher.listeners_[b];a.removeEventListener(c.type,c.listener,c.useCapture)}cvox.ChromeVoxEventWatcher.listeners_=[];cvox.ChromeVoxEventWatcher.currentDateHandler&&cvox.ChromeVoxEventWatcher.currentDateHandler.shutdown();cvox.ChromeVoxEventWatcher.currentTimeHandler&&cvox.ChromeVoxEventWatcher.currentTimeHandler.shutdown();cvox.ChromeVoxEventWatcher.currentMediaHandler&&
1397 cvox.ChromeVoxEventWatcher.currentMediaHandler.shutdown();cvox.ChromeVoxEventWatcher.mutationObserver_&&cvox.ChromeVoxEventWatcher.mutationObserver_.disconnect();cvox.ChromeVoxEventWatcher.mutationObserver_=null};cvox.ChromeVoxEventWatcher.addEventListener_=function(a,b,c,d){cvox.ChromeVoxEventWatcher.listeners_.push({type:b,listener:c,useCapture:d});a.addEventListener(b,c,d)};cvox.ChromeVoxEventWatcher.getLastFocusedNode=function(){return cvox.ChromeVoxEventWatcher.lastFocusedNode};
1398 cvox.ChromeVoxEventWatcher.setLastFocusedNode_=function(a){cvox.ChromeVoxEventWatcher.lastFocusedNode=a;cvox.ChromeVoxEventWatcher.lastFocusedNodeValue=a?cvox.DomUtil.getControlValueAndStateString(a):null};
1399 cvox.ChromeVoxEventWatcher.mutationHandler=function(a){if(cvox.ChromeVoxEventSuspender.areEventsSuspended())return!0;cvox.ChromeVox.navigationManager.updateIndicatorIfChanged();cvox.LiveRegions.processMutations(a,function(a,c){var d=new window.Event("LiveRegion");d.navDescriptions=c;d.assertive=a;cvox.ChromeVoxEventWatcher.addEvent(d);return!0})};
1400 cvox.ChromeVoxEventWatcher.mouseClickEventWatcher=function(a){cvox.PlatformUtil.matchesPlatform(cvox.PlatformFilter.WML)&&!a.fromCvox&&cvox.ApiImplementation.syncToNode(a.target,!0);return cvox.ChromeVox.host.mustRedispatchClickEvent()&&!a.fromCvox?(cvox.ChromeVoxUserCommands.wasMouseClicked=!0,a.stopPropagation(),a.preventDefault(),cvox.Focuser.setFocus(cvox.ChromeVox.navigationManager.getCurrentNode()),cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("element_clicked"),cvox.AbstractTts.QUEUE_MODE_FLUSH,
1401 cvox.AbstractTts.PERSONALITY_ANNOTATION),a=cvox.ChromeVox.navigationManager.getCurrentNode(),cvox.DomUtil.clickElem(a,!1,!0),!1):cvox.ChromeVoxUserCommands.wasMouseClicked=!0};
1402 cvox.ChromeVoxEventWatcher.mouseOverEventWatcher=function(a){if(!cvox.ChromeVoxEventWatcher.focusFollowsMouse||cvox.DomUtil.isDescendantOfNode(cvox.ChromeVoxEventWatcher.announcedMouseOverNode,a.target)||a.target==cvox.ChromeVoxEventWatcher.pendingMouseOverNode)return!0;cvox.ChromeVoxEventWatcher.pendingMouseOverNode=a.target;cvox.ChromeVoxEventWatcher.mouseOverTimeoutId&&(window.clearTimeout(cvox.ChromeVoxEventWatcher.mouseOverTimeoutId),cvox.ChromeVoxEventWatcher.mouseOverTimeoutId=null);if(a.target.tagName&&
1403 "BODY"==a.target.tagName)return cvox.ChromeVoxEventWatcher.pendingMouseOverNode=null,cvox.ChromeVoxEventWatcher.announcedMouseOverNode=null,!0;cvox.ChromeVoxEventWatcher.mouseOverTimeoutId=window.setTimeout(function(){cvox.ChromeVoxEventWatcher.mouseOverTimeoutId=null;if(a.target==cvox.ChromeVoxEventWatcher.pendingMouseOverNode){cvox.ChromeVox.navigationManager.stopReading(!0);var b=a.target;cvox.Focuser.setFocus(b);cvox.ApiImplementation.syncToNode(b,!0,cvox.AbstractTts.QUEUE_MODE_FLUSH);cvox.ChromeVoxEventWatcher.announcedMouseOverNode=
1404 b}},cvox.ChromeVoxEventWatcher.mouseoverDelayMs);return!0};cvox.ChromeVoxEventWatcher.mouseOutEventWatcher=function(a){a.target==cvox.ChromeVoxEventWatcher.pendingMouseOverNode&&(cvox.ChromeVoxEventWatcher.pendingMouseOverNode=null,cvox.ChromeVoxEventWatcher.mouseOverTimeoutId&&(window.clearTimeout(cvox.ChromeVoxEventWatcher.mouseOverTimeoutId),cvox.ChromeVoxEventWatcher.mouseOverTimeoutId=null));return!0};
1405 cvox.ChromeVoxEventWatcher.focusEventWatcher=function(a){cvox.ChromeVoxUserCommands.removeTabDummySpan();cvox.ChromeVoxEventSuspender.areEventsSuspended()?a.target&&a.target.nodeType==Node.ELEMENT_NODE&&cvox.ChromeVoxEventWatcher.setLastFocusedNode_(a.target):cvox.ChromeVoxEventWatcher.addEvent(a);return!0};
1406 cvox.ChromeVoxEventWatcher.focusHandler=function(a){if(a.target&&a.target.hasAttribute&&"true"==a.target.getAttribute("aria-hidden")&&"true"!=a.target.getAttribute("chromevoxignoreariahidden"))cvox.ChromeVoxEventWatcher.setLastFocusedNode_(null),cvox.ChromeVoxEventWatcher.setUpTextHandler();else if(a.target&&a.target!=window){var b=a.target,c=cvox.DomUtil.getSurroundingControl(b);if(c&&c==cvox.ChromeVoxEventWatcher.lastFocusedNode)cvox.ChromeVoxEventWatcher.handleControlChanged(b);else{c?cvox.ChromeVoxEventWatcher.setLastFocusedNode_(c):
1407 cvox.ChromeVoxEventWatcher.setLastFocusedNode_(b);c=cvox.ChromeVoxEventWatcher.queueMode_();if(cvox.ChromeVoxEventWatcher.getInitialVisibility()||cvox.ChromeVoxEventWatcher.handleDialogFocus(b))c=cvox.AbstractTts.QUEUE_MODE_QUEUE;cvox.ChromeVox.navigationManager.clearPageSel(!0)&&(c=cvox.AbstractTts.QUEUE_MODE_QUEUE);cvox.ApiImplementation.syncToNode(b,!document.webkitHidden,c);if(a.target.constructor==HTMLVideoElement||a.target.constructor==HTMLAudioElement)cvox.ChromeVoxEventWatcher.setUpMediaHandler_();
1408 else{if(a.target.hasAttribute)switch(a=a.target.getAttribute("type"),a){case "time":cvox.ChromeVoxEventWatcher.setUpTimeHandler_();return;case "date":case "month":case "week":cvox.ChromeVoxEventWatcher.setUpDateHandler_();return}cvox.ChromeVoxEventWatcher.setUpTextHandler()}}}else cvox.ChromeVoxEventWatcher.setLastFocusedNode_(null)};
1409 cvox.ChromeVoxEventWatcher.blurEventWatcher=function(a){window.setTimeout(function(){document.activeElement||(cvox.ChromeVoxEventWatcher.setLastFocusedNode_(null),cvox.ChromeVoxEventWatcher.addEvent(a))},0);return!0};
1410 cvox.ChromeVoxEventWatcher.keyDownEventWatcher=function(a){if(cvox.ChromeVox.passThroughMode)return!0;cvox.ChromeVox.isChromeOS&&91==a.keyCode&&(cvox.ChromeVox.searchKeyHeld=!0);a.searchKeyHeld=cvox.ChromeVox.searchKeyHeld&&cvox.ChromeVox.isActive;a.stickyMode=cvox.ChromeVox.isStickyOn&&cvox.ChromeVox.isActive;a.keyPrefix=cvox.ChromeVox.keyPrefixOn&&cvox.ChromeVox.isActive;cvox.ChromeVox.keyPrefixOn=!1;cvox.ChromeVoxEventWatcher.eventToEat=null;if(!cvox.ChromeVoxKbHandler.basicKeyDownActionsListener(a)||
1411 cvox.ChromeVoxEventWatcher.handleControlAction(a))return a.preventDefault(),a.stopPropagation(),cvox.ChromeVoxEventWatcher.eventToEat=a,!1;cvox.ChromeVoxEventWatcher.addEvent(a);return!0};
1412 cvox.ChromeVoxEventWatcher.keyUpEventWatcher=function(a){91==a.keyCode&&(cvox.ChromeVox.searchKeyHeld=!1);return cvox.ChromeVox.passThroughMode?(a.ctrlKey||a.altKey||a.metaKey||a.shiftKey||cvox.ChromeVox.searchKeyHeld||(this.secondPassThroughKeyUp_?(this.secondPassThroughKeyUp_=!1,cvox.ChromeVox.passThroughMode=!1):this.secondPassThroughKeyUp_=!0),!0):cvox.ChromeVoxEventWatcher.eventToEat&&a.keyCode==cvox.ChromeVoxEventWatcher.eventToEat.keyCode?(a.stopPropagation(),a.preventDefault(),!1):!0};
1413 cvox.ChromeVoxEventWatcher.keyPressEventWatcher=function(a){var b=document.location.href,c=cvox.TypingEcho.shouldSpeakChar(cvox.ChromeVox.typingEcho);"undefined"!==typeof cvox.ChromeVox.keyEcho[b]&&(c=cvox.ChromeVox.keyEcho[b]);cvox.ChromeVoxEditableTextBase.eventTypingEcho&&c&&cvox.DomPredicates.editTextPredicate([document.activeElement])&&"password"!==document.activeElement.type&&(b=(new Date).getTime(),150<b-cvox.ChromeVoxEventWatcher.lastKeypressTime&&cvox.ChromeVox.tts.stop(),cvox.ChromeVoxEventWatcher.lastKeypressTime=
1414 b,cvox.ChromeVox.tts.speak(String.fromCharCode(a.charCode),1,{relativeRate:2}));cvox.ChromeVoxEventWatcher.addEvent(a);return cvox.ChromeVoxEventWatcher.eventToEat&&a.keyCode==cvox.ChromeVoxEventWatcher.eventToEat.keyCode?(a.preventDefault(),a.stopPropagation(),!1):!0};cvox.ChromeVoxEventWatcher.changeEventWatcher=function(a){cvox.ChromeVoxEventWatcher.addEvent(a);return!0};
1415 cvox.ChromeVoxEventWatcher.clipboardEventWatcher=function(a){cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg(a.type).toLowerCase());var b="";switch(a.type){case "paste":b=a.clipboardData.getData("text");break;case "copy":case "cut":b=window.getSelection().toString()}cvox.ChromeVox.tts.speak(b,cvox.AbstractTts.QUEUE_MODE_QUEUE);cvox.ChromeVox.navigationManager.clearPageSel();return!0};
1416 cvox.ChromeVoxEventWatcher.changeHandler=function(a){cvox.ChromeVoxEventWatcher.setUpTextHandler()||document.activeElement==a.target&&cvox.ChromeVoxEventWatcher.handleControlChanged(document.activeElement)};cvox.ChromeVoxEventWatcher.selectEventWatcher=function(a){cvox.ChromeVoxEventWatcher.addEvent(a);return!0};cvox.ChromeVoxEventWatcher.subtreeModifiedEventWatcher=function(a){if(!a||!a.target)return!0;cvox.ChromeVoxEventWatcher.addEvent(a);return!0};
1417 cvox.ChromeVoxEventWatcher.visibilityChangeWatcher=function(){cvox.ChromeVoxEventWatcher.initialVisibility=!document.webkitHidden;document.webkitHidden&&cvox.ChromeVox.navigationManager.stopReading(!0)};cvox.ChromeVoxEventWatcher.getInitialVisibility=function(){var a=cvox.ChromeVoxEventWatcher.initialVisibility;cvox.ChromeVoxEventWatcher.initialVisibility=!1;return a};
1418 cvox.ChromeVoxEventWatcher.speakLiveRegion_=function(a,b){var c=cvox.ChromeVoxEventWatcher.queueMode_();a||c!=cvox.AbstractTts.QUEUE_MODE_FLUSH||(c=cvox.AbstractTts.QUEUE_MODE_QUEUE);var d=new cvox.NavigationSpeaker;d.speakDescriptionArray(b,c,null)};
1419 cvox.ChromeVoxEventWatcher.subtreeModifiedHandler=function(a){var b=(new Date).getTime();if(cvox.ChromeVoxEventWatcher.lastSubtreeModifiedEventBurstTime_+cvox.ChromeVoxEventWatcher.SUBTREE_MODIFIED_BURST_DURATION_>b){if(cvox.ChromeVoxEventWatcher.subtreeModifiedEventsCount_++,cvox.ChromeVoxEventWatcher.subtreeModifiedEventsCount_>cvox.ChromeVoxEventWatcher.SUBTREE_MODIFIED_BURST_COUNT_LIMIT_)return}else cvox.ChromeVoxEventWatcher.lastSubtreeModifiedEventBurstTime_=b,cvox.ChromeVoxEventWatcher.subtreeModifiedEventsCount_=
1420 1;if(a&&a.target)for(a=a.target,a=cvox.AriaUtil.getLiveRegions(a),b=0;b<a.length&&b<cvox.ChromeVoxEventWatcher.MAX_LIVE_REGIONS_;b++)cvox.LiveRegionsDeprecated.updateLiveRegion(a[b],cvox.ChromeVoxEventWatcher.queueMode_(),!1)};
1421 cvox.ChromeVoxEventWatcher.setUpTextHandler=function(){var a=document.activeElement;a&&a.hasAttribute&&"true"==a.getAttribute("aria-hidden")&&"true"!=a.getAttribute("chromevoxignoreariahidden")&&(a=null);if(a!=cvox.ChromeVoxEventWatcher.currentTextControl){cvox.ChromeVoxEventWatcher.currentTextControl&&(cvox.ChromeVoxEventWatcher.currentTextControl.removeEventListener("input",cvox.ChromeVoxEventWatcher.changeEventWatcher,!1),cvox.ChromeVoxEventWatcher.currentTextControl.removeEventListener("click",
1422 cvox.ChromeVoxEventWatcher.changeEventWatcher,!1),cvox.ChromeVoxEventWatcher.textMutationObserver_&&(cvox.ChromeVoxEventWatcher.textMutationObserver_.disconnect(),cvox.ChromeVoxEventWatcher.textMutationObserver_=null));cvox.ChromeVoxEventWatcher.currentTextControl=null;cvox.ChromeVoxEventWatcher.currentTextHandler&&(cvox.ChromeVoxEventWatcher.currentTextHandler.teardown(),cvox.ChromeVoxEventWatcher.currentTextHandler=null);if(null==a)return!1;if(a.constructor==HTMLInputElement&&cvox.DomUtil.isInputTypeText(a)&&
1423 cvox.ChromeVoxEventWatcher.shouldEchoKeys)cvox.ChromeVoxEventWatcher.currentTextControl=a,cvox.ChromeVoxEventWatcher.currentTextHandler=new cvox.ChromeVoxEditableHTMLInput(a,cvox.ChromeVox.tts);else if(a.constructor==HTMLTextAreaElement&&cvox.ChromeVoxEventWatcher.shouldEchoKeys)cvox.ChromeVoxEventWatcher.currentTextControl=a,cvox.ChromeVoxEventWatcher.currentTextHandler=new cvox.ChromeVoxEditableTextArea(a,cvox.ChromeVox.tts);else if(a.isContentEditable||"textbox"==a.getAttribute("role"))cvox.ChromeVoxEventWatcher.currentTextControl=
1424 a,cvox.ChromeVoxEventWatcher.currentTextHandler=new cvox.ChromeVoxEditableContentEditable(a,cvox.ChromeVox.tts);cvox.ChromeVoxEventWatcher.currentTextControl&&(cvox.ChromeVoxEventWatcher.currentTextControl.addEventListener("input",cvox.ChromeVoxEventWatcher.changeEventWatcher,!1),cvox.ChromeVoxEventWatcher.currentTextControl.addEventListener("click",cvox.ChromeVoxEventWatcher.changeEventWatcher,!1),window.WebKitMutationObserver&&(cvox.ChromeVoxEventWatcher.textMutationObserver_=new WebKitMutationObserver(cvox.ChromeVoxEventWatcher.onTextMutation),
1425 cvox.ChromeVoxEventWatcher.textMutationObserver_.observe(cvox.ChromeVoxEventWatcher.currentTextControl,{childList:!0,attributes:!0,subtree:!0,attributeOldValue:!1,characterDataOldValue:!1})),cvox.ChromeVoxEventSuspender.areEventsSuspended()||cvox.ChromeVox.navigationManager.updateSel(cvox.CursorSelection.fromNode(cvox.ChromeVoxEventWatcher.currentTextControl)));return null!=cvox.ChromeVoxEventWatcher.currentTextHandler}};
1426 cvox.ChromeVoxEventWatcher.handleTextChanged=function(a){if(cvox.ChromeVoxEventWatcher.currentTextHandler){var b=cvox.ChromeVoxEventWatcher.currentTextHandler;b.update(a);return!0}return!1};cvox.ChromeVoxEventWatcher.onTextMutation=function(){cvox.ChromeVoxEventWatcher.currentTextHandler&&window.setTimeout(function(){cvox.ChromeVoxEventWatcher.handleTextChanged(!1)},cvox.ChromeVoxEventWatcher.MAX_WAIT_TIME_MS_)};
1427 cvox.ChromeVoxEventWatcher.handleControlChanged=function(a){var b=cvox.DomUtil.getControlValueAndStateString(a),c=cvox.DomUtil.getSurroundingControl(a),d=!1;if(a!=cvox.ChromeVoxEventWatcher.lastFocusedNode&&(null==c||c!=cvox.ChromeVoxEventWatcher.lastFocusedNode))cvox.ChromeVoxEventWatcher.setLastFocusedNode_(a);else if(b==cvox.ChromeVoxEventWatcher.lastFocusedNodeValue)return;cvox.ChromeVoxEventWatcher.lastFocusedNodeValue=b;if(cvox.DomPredicates.checkboxPredicate([a])||cvox.DomPredicates.radioPredicate([a]))d=
1428 !0,a.checked?cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.CHECK_ON):cvox.ChromeVox.earcons.playEarcon(cvox.AbstractEarcons.CHECK_OFF);"SELECT"==a.tagName&&(d=!0);if("INPUT"==a.tagName)switch(a.type){case "color":case "datetime":case "datetime-local":case "range":d=!0}a.hasAttribute&&a.hasAttribute("role")&&(d=!0);c&&c!=a&&document.activeElement==a?(cvox.ApiImplementation.syncToNode(a,!0,cvox.AbstractTts.QUEUE_MODE_FLUSH),d=!1):cvox.AriaUtil.getActiveDescendant(a)&&(cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(cvox.AriaUtil.getActiveDescendant(a),
1429 !0),d=!0);d&&!cvox.ChromeVoxEventSuspender.areEventsSuspended()&&(cvox.ChromeVox.tts.speak(b,cvox.ChromeVoxEventWatcher.queueMode_(),null),cvox.NavBraille.fromText(b).write())};
1430 cvox.ChromeVoxEventWatcher.handleControlAction=function(a){if(!cvox.ChromeVox.isActive)return!1;var b=a.target;if("SELECT"==b.tagName&&1>=b.size&&(13==a.keyCode||32==a.keyCode))return a.preventDefault(),a.stopPropagation(),!0;if("INPUT"==b.tagName&&"range"==b.type){var c=parseFloat(b.value),d;b.step&&0<b.step?d=b.step:b.min&&b.max?(d=b.max-b.min,d=2<d&&31>d?1:(b.max-b.min)/10):d=1;if(37==a.keyCode||38==a.keyCode)c-=d;else if(39==a.keyCode||40==a.keyCode)c+=d;b.max&&c>b.max&&(c=b.max);b.min&&c<b.min&&
1431 (c=b.min);b.value=c}return!1};
1432 cvox.ChromeVoxEventWatcher.handleDialogFocus=function(a){for(;a;){if(a.hasAttribute){var b=a.getAttribute("role");if("dialog"==b||"alertdialog"==b)break}a=a.parentElement}if(a==cvox.ChromeVox.navigationManager.currentDialog)return!1;if(cvox.ChromeVox.navigationManager.currentDialog&&!a){if(!cvox.DomUtil.isDescendantOfNode(document.activeElement,cvox.ChromeVox.navigationManager.currentDialog))return cvox.ChromeVox.navigationManager.currentDialog=null,cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("exiting_dialog"),cvox.AbstractTts.QUEUE_MODE_FLUSH,
1433 cvox.AbstractTts.PERSONALITY_ANNOTATION),!0}else if(a)return cvox.ChromeVox.navigationManager.currentDialog=a,cvox.ChromeVox.tts.speak(cvox.ChromeVox.msgs.getMsg("entering_dialog"),cvox.AbstractTts.QUEUE_MODE_FLUSH,cvox.AbstractTts.PERSONALITY_ANNOTATION),a=cvox.DescriptionUtil.getFullDescriptionsFromChildren(null,a),b=new cvox.NavigationSpeaker,b.speakDescriptionArray(a,cvox.AbstractTts.QUEUE_MODE_QUEUE,null),!0;return!1};
1434 cvox.ChromeVoxEventWatcherUtil.shouldWaitToProcess=function(a,b,c){a=c-a;b=c-b;return a<cvox.ChromeVoxEventWatcher.WAIT_TIME_MS_&&b<cvox.ChromeVoxEventWatcher.MAX_WAIT_TIME_MS_};cvox.ChromeVoxEventWatcher.queueMode_=function(){return cvox.ChromeVoxEventWatcher.processing_?cvox.AbstractTts.QUEUE_MODE_QUEUE:cvox.AbstractTts.QUEUE_MODE_FLUSH};
1435 cvox.ChromeVoxEventWatcher.processQueue_=function(){if(0!=cvox.ChromeVoxEventWatcher.events_.length){var a=cvox.ChromeVoxEventWatcher.events_,b=-1,c=0,d,e;for(e=0;d=a[e];e++)"focus"==d.type&&(b=e,c=d.timeStamp);cvox.ChromeVoxEventWatcher.events_=[];for(e=0;d=a[e];e++){var f=a[e-1]||{};!(e>=b||"LiveRegion"==d.type||"DOMSubtreeModified"==d.type)||"focus"==f.type&&"change"==d.type||cvox.ChromeVoxEventWatcher.events_.push(d)}cvox.ChromeVoxEventWatcher.events_.sort(function(a,b){return"LiveRegion"!=b.type&&
1436 "LiveRegion"==a.type||"DOMSubtreeModified"!=b.type&&"DOMSubtreeModified"==a.type?1:-1});a=(new Date).getTime();if(0<=b&&cvox.ChromeVoxEventWatcherUtil.shouldWaitToProcess(c,cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime,a))window.setTimeout(cvox.ChromeVoxEventWatcher.processQueue_,cvox.ChromeVoxEventWatcher.WAIT_TIME_MS_);else{for(e=0;d=cvox.ChromeVoxEventWatcher.events_[e];e++)cvox.ChromeVoxEventWatcher.handleEvent_(d),cvox.ChromeVoxEventWatcher.processing_=!0;cvox.ChromeVoxEventWatcher.processing_=
1437 !1;cvox.ChromeVoxEventWatcher.events_=[];cvox.ChromeVoxEventWatcher.firstUnprocessedEventTime=-1;cvox.ChromeVoxEventWatcher.queueProcessingScheduled_=!1;cvox.ChromeVoxEventWatcher.maybeCallReadyCallbacks_()}}};
1438 cvox.ChromeVoxEventWatcher.handleEvent_=function(a){switch(a.type){case "keydown":cvox.ChromeVoxEventWatcher.setUpTextHandler();if(cvox.ChromeVoxEventWatcher.currentTextControl&&(cvox.ChromeVoxEventWatcher.handleTextChanged(!0),(a=cvox.ChromeVoxEventWatcher.currentTextHandler)&&a.lastChangeDescribed))break;cvox.ChromeVoxEventWatcher.handleControlChanged(document.activeElement);break;case "keypress":cvox.ChromeVoxEventWatcher.setUpTextHandler();break;case "focus":cvox.ChromeVoxEventWatcher.focusHandler(a);
1439 break;case "blur":cvox.ChromeVoxEventWatcher.setUpTextHandler();break;case "change":cvox.ChromeVoxEventWatcher.changeHandler(a);break;case "select":cvox.ChromeVoxEventWatcher.setUpTextHandler();break;case "LiveRegion":cvox.ChromeVoxEventWatcher.speakLiveRegion_(a.assertive,a.navDescriptions);break;case "DOMSubtreeModified":cvox.ChromeVoxEventWatcher.subtreeModifiedHandler(a)}};
1440 cvox.ChromeVoxEventWatcher.setUpTimeHandler_=function(){var a=document.activeElement;a&&a.hasAttribute&&"true"==a.getAttribute("aria-hidden")&&"true"!=a.getAttribute("chromevoxignoreariahidden")&&(a=null);cvox.ChromeVoxEventWatcher.currentTimeHandler=a.constructor==HTMLInputElement&&a.type&&"time"==a.type?new cvox.ChromeVoxHTMLTimeWidget(a,cvox.ChromeVox.tts):null;return null!=cvox.ChromeVoxEventWatcher.currentTimeHandler};
1441 cvox.ChromeVoxEventWatcher.setUpMediaHandler_=function(){var a=document.activeElement;a&&a.hasAttribute&&"true"==a.getAttribute("aria-hidden")&&"true"!=a.getAttribute("chromevoxignoreariahidden")&&(a=null);cvox.ChromeVoxEventWatcher.currentMediaHandler=a.constructor==HTMLVideoElement||a.constructor==HTMLAudioElement?new cvox.ChromeVoxHTMLMediaWidget(a,cvox.ChromeVox.tts):null;return null!=cvox.ChromeVoxEventWatcher.currentMediaHandler};
1442 cvox.ChromeVoxEventWatcher.setUpDateHandler_=function(){var a=document.activeElement;a&&a.hasAttribute&&"true"==a.getAttribute("aria-hidden")&&"true"!=a.getAttribute("chromevoxignoreariahidden")&&(a=null);cvox.ChromeVoxEventWatcher.currentDateHandler=a.constructor!=HTMLInputElement||!a.type||"date"!=a.type&&"month"!=a.type&&"week"!=a.type?null:new cvox.ChromeVoxHTMLDateWidget(a,cvox.ChromeVox.tts);return null!=cvox.ChromeVoxEventWatcher.currentDateHandler};cvox.InitialSpeech={};window.INJECTED_AFTER_LOAD||(window.INJECTED_AFTER_LOAD=!1);
1443 cvox.InitialSpeech.speak=function(){var a=window.INJECTED_AFTER_LOAD;if(!cvox.ChromeVox.isActive||document.webkitHidden)a=!0;window.top==window&&document.title&&!a&&cvox.ChromeVox.tts.speak(document.title,cvox.AbstractTts.QUEUE_MODE_FLUSH);cvox.LiveRegions.init(new Date,cvox.AbstractTts.QUEUE_MODE_QUEUE,a);document.hasFocus()&&document.activeElement==document.body&&cvox.ChromeVox.navigationManager.syncToBeginning();if(cvox.ChromeVox.position[document.location.href]){var b=cvox.ChromeVox.position[document.location.href];
1444 cvox.ChromeVox.navigationManager.updateSelToArbitraryNode(document.elementFromPoint(b.x,b.y))}document.hasFocus()&&(a||cvox.ChromeVoxEventSuspender.withSuspendedEvents(function(){cvox.ChromeVox.navigationManager.finishNavCommand("",!0,cvox.AbstractTts.QUEUE_MODE_QUEUE)})())};cvox.PdfProcessor={};
1445 cvox.PdfProcessor.processEmbeddedPdfs=function(){if("#original"!=window.location.hash)for(var a=document.querySelectorAll('embed[type="application/pdf"]'),b=0;b<a.length;b++){var c=a[b];if("function"===typeof c.accessibility){var d=c.accessibility(),e=cvox.ChromeVoxJSON.parse(d);if(e.loaded)if(e.copyable){var f=document.createElement("DIV"),d=document.createElement("DIV");d.style.position="relative";d.style.background="white";d.style.margin="20pt";d.style.padding="20pt";d.style.border="1px solid #000";
1446 var g=c.src.substr(c.src.lastIndexOf("/")+1);document.title=g;g=cvox.ChromeVox.msgs.getMsg("pdf_header",[g,c.src+"#original"]);d.innerHTML=g;g=d.getElementsByTagName("a")[0];g.addEventListener("click",function(){window.location.href=c.src+"#original";window.location.reload()},!0);f.appendChild(d);f.style.position="relative";f.style.background="#CCC";f.style.paddingTop="1pt";f.style.paddingBottom="1pt";f.style.width="100%";f.style.minHeight="100%";var h=function(a){var b=c.accessibility(a),d=cvox.ChromeVoxJSON.parse(b),
1447 b=document.createElement("DIV"),g=document.createElement("A");g.name="page"+a;b.style.position="relative";b.style.background="white";b.style.margin="auto";b.style.marginTop="20pt";b.style.marginBottom="20pt";b.style.height=d.height+"pt";b.style.width=d.width+"pt";b.style.boxShadow="0pt 0pt 10pt #333";for(var d=d.textBox,q=0;q<d.length;q++){var n=d[q],s=document.createElement("Span");s.style.position="absolute";s.style.left=n.left+"pt";s.style.top=n.top+"pt";s.style.fontSize=0.8*n.height+"pt";for(var u=
1448 0;u<n.textNodes.length;u++){var t=n.textNodes[u];if("text"==t.type)s.appendChild(document.createTextNode(t.text));else if("url"==t.type){var r=document.createElement("A");r.href=t.url;r.appendChild(document.createTextNode(t.text));s.appendChild(r)}}b.appendChild(s)}f.appendChild(g);f.appendChild(b);a<e.numberOfPages-1?window.setTimeout(function(){h(a+1)},0):(c.style.display="none",c.parentNode.appendChild(f),cvox.ChromeVox.navigationManager.reset())};window.setTimeout(function(){h(0)},0)}else cvox.ChromeVox.tts.speak("Unable to access copy-protected PDF. Skipping.");
1449 else window.setTimeout(cvox.PdfProcessor.processEmbeddedPdfs,100)}}};cvox.SearchConstants=function(){};cvox.SearchConstants.KeyCode={UP:38,DOWN:40,PAGE_UP:33,PAGE_DOWN:34,LEFT:37,RIGHT:39,ENTER:13,ESC:27};cvox.SearchUtil=function(){};cvox.SearchUtil.extractURL=function(a){return a&&("A"===a.tagName||(a=a.querySelector("a")))?a.href:null};cvox.SearchUtil.isSearchWidgetActive=function(){return null!==document.querySelector("#cvox-search")};cvox.SearchUtil.addOneWrap=function(a,b){return(a+1)%b};cvox.SearchUtil.subOneWrap=function(a,b){return(a-1+b)%b};
1450 cvox.SearchUtil.clickElem=function(a,b,c,d){var e;o:{e=a;for(var f={},g=e;g;){var h;h=g.getAttribute?(h=g.getAttribute("aria-activedescendant"))?h:null:null;if(!h)break;if(h in f){e=null;break o}f[h]=!0;g=document.getElementById(h)}e=g==e?null:g}e&&(a=e);if(c){c=null;a.onclick&&(c=a.onclick);!c&&1!=a.nodeType&&a.parentNode&&a.parentNode.onclick&&(c=a.parentNode.onclick);e=!0;if(c)try{e=c()}catch(k){}if(!e)return}c=document.createEvent("MouseEvents");d=d?"dblclick":"mousedown";c.initMouseEvent(d,!0,
1451 !0,document.defaultView,1,0,0,0,0,!1,!1,b,!1,0,null);c.fromCvox=!0;try{a.dispatchEvent(c)}catch(l){}c=document.createEvent("MouseEvents");c.initMouseEvent("mouseup",!0,!0,document.defaultView,1,0,0,0,0,!1,!1,b,!1,0,null);c.fromCvox=!0;try{a.dispatchEvent(c)}catch(m){}c=document.createEvent("MouseEvents");c.initMouseEvent("click",!0,!0,document.defaultView,1,0,0,0,0,!1,!1,b,!1,0,null);c.fromCvox=!0;try{a.dispatchEvent(c)}catch(p){}};cvox.AbstractResult=function(){};cvox.AbstractResult.prototype.isType=function(){return!1};cvox.AbstractResult.prototype.speak=function(){return!1};cvox.AbstractResult.prototype.getURL=cvox.SearchUtil.extractURL;cvox.AbstractResult.prototype.getSyncNode=function(a){return a};cvox.SearchResults=function(){};cvox.SearchResults.speakResultBySelectTexts=function(a,b){for(var c=0;c<b.length;c++){var d=b[c];if(d.select)for(var e=a.querySelectorAll(d.select),f=0;f<e.length;f++)cvox.ChromeVox.speakNode(e.item(f),1);d.text&&cvox.ChromeVox.tts.speak(d.text,1)}};cvox.UnknownResult=function(){};goog.inherits(cvox.UnknownResult,cvox.AbstractResult);cvox.NormalResult=function(){};goog.inherits(cvox.NormalResult,cvox.AbstractResult);
1452 cvox.NormalResult.prototype.isType=function(a){return null!==a.querySelector(".rc")};cvox.NormalResult.prototype.speak=function(a){if(!a)return!1;var b=[{select:".rc .r"},{select:".rc .st"},{select:".kv"},{select:".osl"},{select:".sld"},{select:".mrf"}];cvox.SearchResults.speakResultBySelectTexts(a,b);b=a.querySelectorAll(".mas-1st-col div");a=a.querySelectorAll(".mas-col div");for(var c=0;c<b.length;c++)cvox.ChromeVox.speakNode(b.item(c),1),cvox.ChromeVox.speakNode(a.item(c),1);return!0};
1453 cvox.WeatherResult=function(){};goog.inherits(cvox.WeatherResult,cvox.AbstractResult);cvox.WeatherResult.prototype.isType=function(a){return null!==a.querySelector("#wob_wc")};cvox.WeatherResult.speakForecast=function(a){if(a){var b=[{select:".vk_lgy"},{select:"img"},{select:".vk_gy"},{select:".vk_lgy"}];cvox.SearchResults.speakResultBySelectTexts(a,b)}};
1454 cvox.WeatherResult.prototype.speak=function(a){if(!a)return!1;var b=[{text:"The weather forcast for"},{select:".vk_h"},{select:"#wob_dts"},{select:"#wob_dc"},{select:"#wob_tm"},{text:"degrees fahrenheit"},{text:"precipitation is"},{select:"#wob_pp"},{text:"humidity is"},{select:"#wob_hm"},{text:"wind is"},{select:"#wob_ws"}];cvox.SearchResults.speakResultBySelectTexts(a,b);a=a.getElementsByClassName("wob_df");cvox.ChromeVox.tts.speak("Forecasts for this week",1);for(b=0;b<a.length;b++){var c=a.item(b);
1455 cvox.WeatherResult.speakForecast(c)}return!0};cvox.KnowResult=function(){};goog.inherits(cvox.KnowResult,cvox.AbstractResult);cvox.KnowResult.prototype.isType=function(a){return null!==a.querySelector(".kno-ec")};cvox.KnowResult.prototype.speak=function(a){cvox.ChromeVox.speakNode(a,1);return!0};cvox.KnowResult.prototype.getURL=function(a){return cvox.SearchUtil.extractURL(a.querySelector(".q"))};cvox.KnowResult.prototype.getSyncNode=function(a){return a.querySelector(".kno-ecr-pt")};
1456 cvox.CalcResult=function(){};goog.inherits(cvox.CalcResult,cvox.AbstractResult);cvox.CalcResult.prototype.isType=function(a){return null!==a.querySelector("#cwmcwd")};cvox.CalcResult.prototype.speak=function(a){if(!a)return!1;var b=[{select:"#cwles"},{select:"#cwos"}];cvox.SearchResults.speakResultBySelectTexts(a,b);return!0};cvox.GameResult=function(){};goog.inherits(cvox.GameResult,cvox.AbstractResult);cvox.GameResult.prototype.isType=function(a){return null!==a.querySelector(".xpdbox")};
1457 cvox.ImageResult=function(){};goog.inherits(cvox.ImageResult,cvox.AbstractResult);cvox.ImageResult.prototype.isType=function(a){return"rg_di"===a.className};cvox.ImageResult.prototype.speak=function(a){if(!a)return!1;var b=a.querySelector(".rg_meta"),b=b.innerHTML,c=JSON.parse(b),b=[],d=c.fn;d&&b.push({text:d});if(d=c.is){var e=document.createElement("div");e.innerHTML=d;d=e.textContent||e.innerText;b.push({text:d})}(c=c.isu)&&b.push({text:c});cvox.SearchResults.speakResultBySelectTexts(a,b);return!0};
1458 cvox.CategoryResult=function(){};goog.inherits(cvox.CategoryResult,cvox.AbstractResult);cvox.CategoryResult.prototype.isType=function(a){return"rg_fbl nj"===a.className};cvox.CategoryResult.prototype.speak=function(a){if(!a)return!1;a=a.querySelector(".rg_bb_label");cvox.ChromeVox.speakNode(a,1);return!0};cvox.AdResult=function(){};goog.inherits(cvox.AdResult,cvox.AbstractResult);cvox.AdResult.prototype.isType=function(a){return"ads-ad"===a.className};
1459 cvox.AdResult.prototype.speak=function(a){if(!a)return!1;var b=[{select:"h3"},{select:".ads-creative"},{select:".ads-visurl"}];cvox.SearchResults.speakResultBySelectTexts(a,b);return!0};cvox.SearchResults.RESULT_TYPES=[cvox.UnknownResult,cvox.NormalResult,cvox.KnowResult,cvox.WeatherResult,cvox.AdResult,cvox.CalcResult,cvox.GameResult,cvox.ImageResult,cvox.CategoryResult];cvox.Search=function(){};cvox.Search.selectors={};cvox.Search.webSelectors={TOPSTUFF_SELECT:"#topstuff",SPELL_SUGG_SELECT:".ssp",SPELL_CORRECTION_SELECT:".sp_cnt",KNOW_PANEL_SELECT:".knop",RESULT_SELECT:"li.g",RELATED_SELECT:"#brs"};cvox.Search.imageSelectors={IMAGE_CATEGORIES_SELECT:"#ifbc .rg_fbl",IMAGE_RESULT_SELECT:"#rg_s .rg_di"};cvox.Search.results=[];cvox.Search.panes=[];cvox.Search.isPane=!1;cvox.Search.SELECTED_PANE_CLASS="hdtb_mitem hdtb_msel";
1460 cvox.Search.speakSync_=function(){var a=cvox.Search.results[cvox.Search.index],b=cvox.Search.getResultType(a),c=b.speak(a);cvox.ChromeVox.syncToNode(b.getSyncNode(a),!c);cvox.Search.isPane=!1};cvox.Search.syncToIndex=function(){cvox.ChromeVox.tts.stop();var a={endCallback:cvox.Search.speakSync_};0===cvox.Search.index?cvox.ChromeVox.tts.speak("First result",1,a):cvox.Search.index===cvox.Search.results.length-1?cvox.ChromeVox.tts.speak("Last result",1,a):cvox.Search.speakSync_()};
1461 cvox.Search.syncPaneToIndex=function(){var a=cvox.Search.panes[cvox.Search.paneIndex],b=a.querySelector("a");b?cvox.ChromeVox.syncToNode(b,!0):cvox.ChromeVox.syncToNode(a,!0);cvox.Search.isPane=!0};cvox.Search.getResultType=function(a){for(var b=0;b<cvox.SearchResults.RESULT_TYPES.length;b++){var c=new cvox.SearchResults.RESULT_TYPES[b];if(c.isType(a))return c}return new cvox.UnknownResult};
1462 cvox.Search.getPageNumber=function(a){for(var b=document.querySelectorAll("#nav .fl"),c=0;c<b.length;c++){var d=b.item(c);if(d.href===a)return parseInt(d.innerText,10)}return NaN};cvox.Search.navigatePage=function(a){var b=document.getElementsByClassName("navend");a=a?b[1]:b[0];var c=cvox.SearchUtil.extractURL(a);a=function(){window.location=c};a={endCallback:a};c&&(b=cvox.Search.getPageNumber(c),isNaN(b)?cvox.ChromeVox.tts.speak("Unknown page.",0,a):cvox.ChromeVox.tts.speak("Page "+b,0,a))};
1463 cvox.Search.goToPane=function(){var a=cvox.Search.panes[cvox.Search.paneIndex];if(a.className===cvox.Search.SELECTED_PANE_CLASS)cvox.ChromeVox.tts.speak("You are already on that page.");else{var b=a.querySelector("a");cvox.ChromeVox.tts.speak(b.textContent);if(a=cvox.SearchUtil.extractURL(a))window.location=a}};cvox.Search.goToResult=function(){var a=cvox.Search.results[cvox.Search.index],b=cvox.Search.getResultType(a);if(a=b.getURL(a))window.location=a};
1464 cvox.Search.keyhandler=function(a){var b=document.getElementById("gbqfq");if(a.shiftKey||a.altKey||a.ctrlKey)return!1;if(document.activeElement!==b&&!cvox.SearchUtil.isSearchWidgetActive()){switch(a.keyCode){case cvox.SearchConstants.KeyCode.UP:cvox.Search.index=cvox.SearchUtil.subOneWrap(cvox.Search.index,cvox.Search.results.length);cvox.Search.index===cvox.Search.results.length-1&&cvox.ChromeVox.earcons.playEarconByName("WRAP");cvox.Search.syncToIndex();break;case cvox.SearchConstants.KeyCode.DOWN:cvox.Search.index=
1465 cvox.SearchUtil.addOneWrap(cvox.Search.index,cvox.Search.results.length);0===cvox.Search.index&&cvox.ChromeVox.earcons.playEarconByName("WRAP");cvox.Search.syncToIndex();break;case cvox.SearchConstants.KeyCode.PAGE_UP:cvox.Search.navigatePage(!1);break;case cvox.SearchConstants.KeyCode.PAGE_DOWN:cvox.Search.navigatePage(!0);break;case cvox.SearchConstants.KeyCode.LEFT:cvox.Search.paneIndex=cvox.SearchUtil.subOneWrap(cvox.Search.paneIndex,cvox.Search.panes.length);cvox.Search.syncPaneToIndex();break;
1466 case cvox.SearchConstants.KeyCode.RIGHT:cvox.Search.paneIndex=cvox.SearchUtil.addOneWrap(cvox.Search.paneIndex,cvox.Search.panes.length);cvox.Search.syncPaneToIndex();break;case cvox.SearchConstants.KeyCode.ENTER:cvox.Search.isPane?cvox.Search.goToPane():cvox.Search.goToResult();break;default:return!1}a.preventDefault();a.stopPropagation();return!0}return!1};
1467 cvox.Search.addToResultsBySelector=function(a){a=document.querySelectorAll(a);for(var b=0;b<a.length;b++){var c=a.item(b);""!==c.innerHTML&&cvox.Search.results.push(a.item(b))}};cvox.Search.populatePanes=function(){cvox.Search.panes=[];for(var a=document.querySelectorAll(".hdtb_mitem"),b=0;b<a.length;b++)cvox.Search.panes.push(a.item(b))};cvox.Search.populateResults=function(){for(var a in cvox.Search.selectors)cvox.Search.addToResultsBySelector(cvox.Search.selectors[a])};
1468 cvox.Search.populateAdResults=function(){cvox.Search.results=[];cvox.Search.addToResultsBySelector(".ads-ad")};cvox.Search.observeMutation=function(){var a=document.querySelector("#rg_s"),b=new MutationObserver(function(){cvox.Search.results=[];cvox.Search.populateResults()}),c={attributes:!0,childList:!0,characterData:!0};b.observe(a,c)};cvox.Search.getSelectedPaneIndex=function(){for(var a=cvox.Search.panes,b=0;b<a.length;b++)if(a[b].className===cvox.Search.SELECTED_PANE_CLASS)return b;return 0};
1469 cvox.Search.getAncestorResult=function(a){for(;a;){for(var b in cvox.Search.selectors){var c=cvox.Search.selectors[b];if(a.webkitMatchesSelector&&a.webkitMatchesSelector(c))return a}a=a.parentNode}return null};cvox.Search.initialSync=function(){var a=cvox.ChromeVox.navigationManager.getCurrentNode(),a=cvox.Search.getAncestorResult(a);cvox.Search.index=cvox.Search.results.indexOf(a);-1===cvox.Search.index&&(cvox.Search.index=0);0<cvox.Search.results.length&&cvox.Search.syncToIndex()};
1470 cvox.Search.init=function(){cvox.Search.index=0;cvox.ChromeVox.tts.stop();var a=document.getElementsByClassName("hdtb_msel")[0];if(a){a=a.innerHTML;switch(a){case "Web":case "News":cvox.Search.selectors=cvox.Search.webSelectors;break;case "Images":cvox.Search.selectors=cvox.Search.imageSelectors;cvox.Search.observeMutation();break;default:return}cvox.Search.populateResults();cvox.Search.populatePanes();cvox.Search.paneIndex=cvox.Search.getSelectedPaneIndex();cvox.Search.initialSync()}};cvox.SearchTool=function(){};cvox.SearchTool.menus=[];cvox.SearchTool.menuItems=[];cvox.SearchTool.CLEAR_ID="hdtb_rst";cvox.SearchTool.toggleMenu=function(){var a=cvox.SearchTool.menus[cvox.SearchTool.menuIndex],a=a.previousSibling;cvox.DomUtil.clickElem(a,!1,!1,!1)};cvox.SearchTool.syncToMenu=function(){cvox.SearchTool.menuItemIndex=0;cvox.SearchTool.toggleMenu();cvox.SearchTool.populateMenuItems();cvox.SearchTool.syncToMenuItem()};
1471 cvox.SearchTool.syncToMenuItem=function(){var a=cvox.SearchTool.menuItems[cvox.SearchTool.menuItemIndex];cvox.ChromeVox.syncToNode(a,!0)};cvox.SearchTool.populateMenuItems=function(){var a=cvox.SearchTool.menus[cvox.SearchTool.menuIndex];cvox.SearchTool.menuItems=[];if(a.id!==cvox.SearchTool.CLEAR_ID)for(var a=a.querySelectorAll(".hdtbItm"),b=0;b<a.length;b++)cvox.SearchTool.menuItems.push(a.item(b));else cvox.SearchTool.menuItems=[],cvox.SearchTool.menuItems.push(a)};
1472 cvox.SearchTool.populateMenus=function(){for(var a=document.querySelectorAll(".hdtbU"),b=0;b<a.length;b++)cvox.SearchTool.menus.push(a.item(b));(a=document.getElementById(cvox.SearchTool.CLEAR_ID))&&cvox.SearchTool.menus.push(a)};cvox.SearchTool.activateTools=function(){var a=document.querySelector("#hdtbMenus");a.className="hdtb-td-o";cvox.SearchTool.populateMenus();cvox.SearchTool.menuIndex=0;cvox.SearchTool.syncToMenu()};
1473 cvox.SearchTool.gotoMenuItem=function(){var a=cvox.SearchTool.menuItems[cvox.SearchTool.menuItemIndex],b=a.querySelector("#lc-input");if(b)b.focus();else switch(a.id){case cvox.SearchTool.CLEAR_ID:window.location=a.dataset.url;break;case "cdr_opt":a=a.querySelector("#cdrlnk");cvox.DomUtil.clickElem(a,!1,!1,!1);cvox.SearchTool.toggleMenu();break;default:window.location=cvox.SearchUtil.extractURL(a)}};
1474 cvox.SearchTool.keyhandler=function(a){if(cvox.SearchUtil.isSearchWidgetActive())return!1;switch(a.keyCode){case cvox.SearchConstants.KeyCode.UP:cvox.SearchTool.menuItemIndex=cvox.SearchUtil.subOneWrap(cvox.SearchTool.menuItemIndex,cvox.SearchTool.menuItems.length);cvox.SearchTool.syncToMenuItem();break;case cvox.SearchConstants.KeyCode.DOWN:cvox.SearchTool.menuItemIndex=cvox.SearchUtil.addOneWrap(cvox.SearchTool.menuItemIndex,cvox.SearchTool.menuItems.length);cvox.SearchTool.syncToMenuItem();break;
1475 case cvox.SearchConstants.KeyCode.LEFT:cvox.SearchTool.toggleMenu();cvox.SearchTool.menuIndex=cvox.SearchUtil.subOneWrap(cvox.SearchTool.menuIndex,cvox.SearchTool.menus.length);cvox.SearchTool.syncToMenu();break;case cvox.SearchConstants.KeyCode.RIGHT:cvox.SearchTool.toggleMenu();cvox.SearchTool.menuIndex=cvox.SearchUtil.addOneWrap(cvox.SearchTool.menuIndex,cvox.SearchTool.menus.length);cvox.SearchTool.syncToMenu();break;case cvox.SearchConstants.KeyCode.ENTER:cvox.SearchTool.gotoMenuItem();break;
1476 default:return!1}a.preventDefault();a.stopPropagation();return!0};cvox.SearchContextMenu=function(){};var Command={TOOLS:"tools",ADS:"ads",MAIN:"main"};cvox.SearchContextMenu.currState=Command.MAIN;cvox.SearchContextMenu.contextMenuHandler=function(a){a=a.detail.customCommand;switch(a){case Command.TOOLS:cvox.SearchContextMenu.focusTools();break;case Command.ADS:cvox.SearchContextMenu.focusAds();break;case Command.MAIN:cvox.SearchContextMenu.focusMain()}};
1477 cvox.SearchContextMenu.keyhandler=function(a){var b=!1,c=new cvox.KeySequence(a),c=cvox.ChromeVoxKbHandler.handlerKeyMap.commandForKey(c);if(!c||"performDefaultAction"===c)switch(cvox.SearchContextMenu.currState){case Command.TOOLS:b=cvox.SearchTool.keyhandler(a);break;case Command.ADS:case Command.MAIN:b=cvox.Search.keyhandler(a)}return b};
1478 cvox.SearchContextMenu.focusMain=function(){cvox.SearchContextMenu.currState===Command.TOOLS&&cvox.SearchTool.toggleMenu();cvox.Search.populateResults();cvox.Search.index=0;cvox.Search.syncToIndex();cvox.SearchContextMenu.currState=Command.MAIN};
1479 cvox.SearchContextMenu.focusAds=function(){cvox.Search.populateAdResults();0===cvox.Search.results.length?cvox.SearchContextMenu.focusMain():(cvox.Search.index=0,cvox.Search.syncToIndex(),cvox.SearchContextMenu.currState===Command.TOOLS&&cvox.SearchTool.toggleMenu(),cvox.SearchContextMenu.currState=Command.ADS)};cvox.SearchContextMenu.focusTools=function(){cvox.SearchContextMenu.currState!==Command.TOOLS&&(cvox.SearchTool.activateTools(),cvox.SearchContextMenu.currState=Command.TOOLS)};
1480 cvox.SearchContextMenu.init=function(){var a=[{desc:"Main Results",cmd:Command.MAIN},{desc:"Search Tools",cmd:Command.TOOLS},{desc:"Ads",cmd:Command.ADS}],b=document.querySelector("body");b.setAttribute("contextMenuActions",JSON.stringify(a));b.addEventListener("ATCustomEvent",cvox.SearchContextMenu.contextMenuHandler,!0);window.addEventListener("keydown",cvox.SearchContextMenu.keyhandler,!0);cvox.Search.init()};cvox.SearchLoader=function(){};cvox.SearchLoader.onReadyStateChange=function(){"complete"===document.readyState&&"www.google.com"===window.location.host&&"/search"===window.location.pathname&&cvox.SearchContextMenu.init()};cvox.SearchLoader.init=function(){if("complete"!==document.readyState)document.onreadystatechange=cvox.SearchLoader.onReadyStateChange;else cvox.SearchLoader.onReadyStateChange()};cvox.ChromeHost=function(){this.gotPrefsAtLeastOnce_=!1};goog.inherits(cvox.ChromeHost,cvox.AbstractHost);
1481 cvox.ChromeHost.prototype.init=function(){var a=this,b=function(b){b.history&&(cvox.ChromeVox.visitedUrls=b.history);b.keyBindings&&cvox.ChromeVoxKbHandler.loadKeyToFunctionsTable(b.keyBindings);if(b.prefs){b=b.prefs;cvox.ChromeVoxEditableTextBase.useIBeamCursor="true"==b.useIBeamCursor;cvox.ChromeVoxEditableTextBase.eventTypingEcho=!0;cvox.ChromeVoxEventWatcher.focusFollowsMouse="true"==b.focusFollowsMouse;cvox.ChromeVox.version=b.version;cvox.ChromeVox.earcons.enabled=JSON.parse(b.earcons);cvox.ChromeVox.typingEcho=
1482 JSON.parse(b.typingEcho);b.position&&(cvox.ChromeVox.position=JSON.parse(b.position));"undefined"!=b.granularity&&cvox.ChromeVox.navigationManager.setGranularity(JSON.parse(b.granularity));a.activateOrDeactivateChromeVox("true"==b.active);a.activateOrDeactivateStickyMode("true"==b.sticky);a.gotPrefsAtLeastOnce_||cvox.InitialSpeech.speak();a.gotPrefsAtLeastOnce_=!0;cvox.ChromeVox.verbosity="false"==b.useVerboseMode?cvox.VERBOSITY_BRIEF:cvox.VERBOSITY_VERBOSE;b.cvoxKey&&(cvox.ChromeVox.modKeyStr=b.cvoxKey);
1483 var d=b.siteSpecificScriptLoader!=cvox.ApiImplementation.siteSpecificScriptLoader||b.siteSpecificScriptBase!=cvox.ApiImplementation.siteSpecificScriptBase;cvox.ApiImplementation.siteSpecificScriptLoader=b.siteSpecificScriptLoader;cvox.ApiImplementation.siteSpecificScriptBase=b.siteSpecificScriptBase;d&&(b="true"===b.siteSpecificEnhancements?cvox.SearchLoader.init:null,cvox.ApiImplementation.init(b))}};cvox.ExtensionBridge.addMessageListener(b);cvox.ExtensionBridge.addMessageListener(function(a){"DOMAINS_STYLES"==
1484 a.message&&cvox.TraverseMath.getInstance().addDomainsAndStyles(a.domains,a.styles)});cvox.ExtensionBridge.addMessageListener(function(a){var b=a.message;"USER_COMMAND"==b&&(b=a.command,cvox.ChromeVoxUserCommands.commands[b](a))});cvox.ExtensionBridge.send({target:"Prefs",action:"getPrefs"});cvox.ExtensionBridge.send({target:"Data",action:"getHistory"})};cvox.ChromeHost.prototype.sendToBackgroundPage=function(a){cvox.ExtensionBridge.send(a)};cvox.ChromeHost.prototype.getApiSrc=function(){return this.getFileSrc("chromevox/injected/api.js")};
1485 cvox.ChromeHost.prototype.getFileSrc=function(a){return window.chrome.extension.getURL(a)};cvox.ChromeHost.prototype.activateOrDeactivateStickyMode=function(a){cvox.ChromeVox.isStickyOn=a};cvox.HostFactory.hostConstructor=cvox.ChromeHost;cvox.ChromeMsgs=function(){};goog.inherits(cvox.ChromeMsgs,cvox.AbstractMsgs);cvox.ChromeMsgs.NAMESPACE_="chromevox_";cvox.ChromeMsgs.prototype.getMsg=function(a,b){var c=chrome.i18n.getMessage(cvox.ChromeMsgs.NAMESPACE_+a,b);if(void 0==c||""==c)throw Error("Invalid ChromeVox message id: "+a);return c};
1486 cvox.ChromeMsgs.prototype.addTranslatedMessagesToDom=function(a){a=a.querySelectorAll(".i18n");for(var b=0;b<a.length;b++){var c=a[b].getAttribute("msgid");if(!c)throw Error("Element has no msgid attribute: "+a[b]);a[b].textContent=this.getMsg(c);a[b].classList.add("i18n-processed")}};cvox.ChromeMsgs.prototype.getNumber=function(a){return""+a};cvox.HostFactory.msgsConstructor=cvox.ChromeMsgs;cvox.ChromeTtsBase=function(){cvox.AbstractTts.call(this);this.propertyDefault.pitch=1;this.propertyMin.pitch=0.2;this.propertyMax.pitch=2;this.propertyDefault.rate=1;this.propertyMin.rate=0.2;this.propertyMax.rate=5;this.propertyDefault.volume=1;this.propertyMin.volume=0.2;this.propertyMax.volume=1};goog.inherits(cvox.ChromeTtsBase,cvox.AbstractTts);cvox.ChromeTts=function(){cvox.ChromeTtsBase.call(this);this.addBridgeListener()};goog.inherits(cvox.ChromeTts,cvox.ChromeTtsBase);cvox.ChromeTts.callId=1;cvox.ChromeTts.functionMap={};cvox.ChromeTts.prototype.speak=function(a,b,c){c||(c={});cvox.ChromeTts.superClass_.speak.call(this,a,b,c);cvox.ExtensionBridge.send(this.createMessageForProperties_(a,b,c))};cvox.ChromeTts.prototype.isSpeaking=function(){cvox.ChromeTts.superClass_.isSpeaking.call(this);return!1};
1487 cvox.ChromeTts.prototype.stop=function(){cvox.ChromeTts.superClass_.stop.call(this);cvox.ExtensionBridge.send({target:"TTS",action:"stop"})};cvox.ChromeTts.prototype.increaseOrDecreaseProperty=function(a,b){cvox.ExtensionBridge.send({target:"TTS",action:"increaseOrDecrease",property:a,increase:b})};cvox.ChromeTts.prototype.addBridgeListener=function(){cvox.ExtensionBridge.addMessageListener(function(a){var b=a.message;"TTS_CALLBACK"==b&&(a=a.id,b=cvox.ChromeTts.functionMap[a],void 0!=b&&(b(),delete cvox.ChromeTts.functionMap[a]))})};
1488 cvox.ChromeTts.prototype.createMessageForProperties_=function(a,b,c){a={target:"TTS",action:"speak",text:a,queueMode:b,properties:c};void 0!=c.startCallback&&(cvox.ChromeTts.functionMap[cvox.ChromeTts.callId]=c.startCallback,a.startCallbackId=cvox.ChromeTts.callId++);void 0!=c.endCallback&&(cvox.ChromeTts.functionMap[cvox.ChromeTts.callId]=c.endCallback,a.endCallbackId=cvox.ChromeTts.callId++);return a};cvox.HostFactory.ttsConstructor=cvox.ChromeTts;cvox.ChromeVoxPrefs=function(){var a=localStorage.lastRunVersion;a||(a="1.16.0");var b=!0;"1.16.0"==a&&(b=!1);localStorage.lastRunVersion=chrome.app.getDetails().version;this.keyMap_=cvox.KeyMap.fromLocalStorage()||cvox.KeyMap.fromDefaults();this.keyMap_.merge(cvox.KeyMap.fromDefaults());localStorage.position="{}";localStorage.sticky=!1;this.init(b)};
1489 cvox.ChromeVoxPrefs.DEFAULT_PREFS={active:!0,currentKeyMap:cvox.KeyMap.DEFAULT_KEYMAP,cvoxKey:"",earcons:!0,focusFollowsMouse:!1,granularity:void 0,position:"{}",siteSpecificScriptBase:"https://ssl.gstatic.com/accessibility/javascript/ext/",siteSpecificScriptLoader:"https://ssl.gstatic.com/accessibility/javascript/ext/loader.js",sticky:!1,typingEcho:0,useIBeamCursor:cvox.ChromeVox.isMac,useVerboseMode:!0,siteSpecificEnhancements:!0};
1490 cvox.ChromeVoxPrefs.prototype.init=function(){for(var a in cvox.ChromeVoxPrefs.DEFAULT_PREFS)void 0===localStorage[a]&&(localStorage[a]=cvox.ChromeVoxPrefs.DEFAULT_PREFS[a])};cvox.ChromeVoxPrefs.prototype.switchToKeyMap=function(a){localStorage.currentKeyMap=a;this.keyMap_=cvox.KeyMap.fromCurrentKeyMap();this.keyMap_.toLocalStorage();this.keyMap_.resetModifier();this.sendPrefsToAllTabs(!1,!0)};
1491 cvox.ChromeVoxPrefs.prototype.getPrefs=function(){var a={},b;for(b in cvox.ChromeVoxPrefs.DEFAULT_PREFS)a[b]=localStorage[b];a.version=chrome.app.getDetails().version;return a};cvox.ChromeVoxPrefs.prototype.getKeyMap=function(){return this.keyMap_};
1492 cvox.ChromeVoxPrefs.prototype.sendPrefsToAllTabs=function(a,b){var c=this,d={};a&&(d.prefs=c.getPrefs());b&&(d.keyBindings=this.keyMap_.toJSON());chrome.windows.getAll({populate:!0},function(a){for(var b=0;b<a.length;b++)for(var c=a[b].tabs,h=0;h<c.length;h++)chrome.tabs.sendMessage(c[h].id,d)})};cvox.ChromeVoxPrefs.prototype.setPref=function(a,b){localStorage[a]!=b&&(localStorage[a]=b,this.sendPrefsToAllTabs(!0,!1))};
1493 cvox.ChromeVoxPrefs.prototype.setKey=function(a,b){return this.keyMap_.rebind(a,b)?(this.keyMap_.toLocalStorage(),this.sendPrefsToAllTabs(!1,!0),!0):!1};cvox.OptionsPage=function(){};cvox.OptionsPage.KEYCODE_TO_TEXT={};cvox.OptionsPage.TEXT_TO_KEYCODE={};
1494 cvox.OptionsPage.init=function(){cvox.ChromeVox.msgs=cvox.HostFactory.getMsgs();cvox.OptionsPage.prefs=chrome.extension.getBackgroundPage().prefs;cvox.OptionsPage.populateKeyMapSelect();cvox.OptionsPage.addKeys();cvox.OptionsPage.populateVoicesSelect();cvox.BrailleTable.getAll(function(a){cvox.OptionsPage.brailleTables=a;cvox.OptionsPage.populateBrailleTablesSelect()});cvox.ChromeVox.msgs.addTranslatedMessagesToDom(document);cvox.OptionsPage.hidePlatformSpecifics();cvox.OptionsPage.update();document.addEventListener("change",
1495 cvox.OptionsPage.eventListener,!1);document.addEventListener("click",cvox.OptionsPage.eventListener,!1);document.addEventListener("keydown",cvox.OptionsPage.eventListener,!1);cvox.ExtensionBridge.addMessageListener(function(a){(a.keyBindings||a.prefs)&&cvox.OptionsPage.update()});document.getElementById("selectKeys").addEventListener("click",cvox.OptionsPage.reset,!1);cvox.PlatformUtil.matchesPlatform(cvox.PlatformFilter.WML)&&(document.getElementById("version").textContent=chrome.app.getDetails().version)};
1496 cvox.OptionsPage.update=function(){var a=cvox.OptionsPage.prefs.getPrefs(),b;for(b in a)for(var c=document.querySelectorAll('*[name="'+b+'"]'),d=0;d<c.length;d++)cvox.OptionsPage.setValue(c[d],a[b])};
1497 cvox.OptionsPage.populateKeyMapSelect=function(){var a=document.getElementById("cvox_keymaps"),b;for(b in cvox.KeyMap.AVAILABLE_MAP_INFO){var c=document.createElement("option");c.id=b;c.className="i18n";c.setAttribute("msgid",b);cvox.OptionsPage.prefs.getPrefs().currentKeyMap==b&&c.setAttribute("selected","");a.appendChild(c)}a.addEventListener("change",cvox.OptionsPage.reset,!0)};
1498 cvox.OptionsPage.addKeys=function(){var a=document.getElementById("keysContainer"),b=cvox.OptionsPage.prefs.getKeyMap();this.prevTime=(new Date).getTime();this.keyCount=0;a.addEventListener("keypress",goog.bind(function(a){if("cvoxKey"!=a.target.id){this.keyCount++;var b=(new Date).getTime();1E3<b-this.prevTime||2<this.keyCount?("toggleKeyPrefix"==document.activeElement.id?(this.keySequence=new cvox.KeySequence(a,!1),this.keySequence.keys.ctrlKey[0]=!0):this.keySequence=new cvox.KeySequence(a,!0),
1499 this.keyCount=1):this.keySequence.addKeyEvent(a);var c=cvox.KeyUtil.keySequenceToString(this.keySequence,!0),d=c.replace(/\+/g," "+cvox.ChromeVox.msgs.getMsg("then")+" "),d=d.replace(/>/g," "+cvox.ChromeVox.msgs.getMsg("followed_by")+" "),d=d.replace("Cvox"," "+cvox.ChromeVox.msgs.getMsg("modifier_key")+" ");cvox.OptionsPage.prefs.setKey(document.activeElement.id,this.keySequence)?document.activeElement.value=c:d=cvox.ChromeVox.msgs.getMsg("key_conflict",[d]);chrome.extension.getBackgroundPage().speak(d);
1500 this.prevTime=b;a.preventDefault();a.stopPropagation()}},cvox.OptionsPage),!0);for(var c=cvox.CommandStore.categories(),d=0;d<c.length;d++)if("braille"!=c[d]){var e=document.createElement("h3");e.className="i18n";e.setAttribute("msgid",c[d]);e.id=c[d];a.appendChild(e);for(var f=cvox.CommandStore.commandsForCategory(c[d]),g=0;g<f.length;g++){var h=f[g],k=b.keyForCommand(h)[0];if("toggleChromeVox"!=h||!cvox.PlatformUtil.matchesPlatform(cvox.PlatformFilter.CHROMEOS)){e=document.createElement("input");
1501 e.type="text";e.className="key active-key";e.id=h;k=null!=k?cvox.KeyUtil.keySequenceToString(k,!0):"";e.value=k;if("toggleStickyMode"==h||"stopSpeech"==h)e.disabled=!0;(k=cvox.CommandStore.messageForCommand(h))||(k=h);h=document.createElement("label");h.className="i18n";h.setAttribute("msgid",k);h.setAttribute("for",e.id);k=document.createElement("div");k.className="key-container";a.appendChild(k);k.appendChild(e);k.appendChild(h)}}e=document.createElement("br");a.appendChild(e)}null==document.getElementById("cvoxKey")&&
1502 (e=document.createElement("input"),e.type="text",e.className="key",e.id="cvoxKey",h=document.createElement("label"),h.className="i18n",h.setAttribute("msgid","options_cvox_modifier_key"),h.setAttribute("for","cvoxKey"),a=document.getElementById("modifier_keys").nextSibling,b=a.parentNode,b.insertBefore(h,a),b.insertBefore(e,h),a=document.getElementById("cvoxKey"),a.value=localStorage.cvoxKey,a.addEventListener("keydown",function(a){this.modifierSeq_?this.modifierSeq_.addKeyEvent(a):(this.modifierCount_=
1503 0,this.modifierSeq_=new cvox.KeySequence(a,!1));this.modifierSeq_.isAnyModifierActive()?this.modifierCount_++:(9!=a.keyCode&&chrome.extension.getBackgroundPage().speak(cvox.ChromeVox.msgs.getMsg("modifier_entry_error"),0,{}),this.modifierSeq_=null);a.shiftKey||9==a.keyCode||(a.preventDefault(),a.stopPropagation())},!0),a.addEventListener("keyup",function(a){if(this.modifierSeq_){this.modifierCount_--;if(0==this.modifierCount_){var b=cvox.KeyUtil.keySequenceToString(this.modifierSeq_,!0,!0);a.target.value=
1504 b;chrome.extension.getBackgroundPage().speak(cvox.ChromeVox.msgs.getMsg("modifier_entry_set",[b]));localStorage.cvoxKey=b;this.modifierSeq_=null}a.preventDefault();a.stopPropagation()}},!0))};
1505 cvox.OptionsPage.populateVoicesSelect=function(){var a=document.getElementById("voices");chrome.tts.getVoices(function(b){b.forEach(function(b){var d=document.createElement("option");d.voiceName=b.voiceName||"";d.innerText=d.voiceName;localStorage.voiceName==b.voiceName&&d.setAttribute("selected","");a.add(d)})});a.addEventListener("change",function(){var b=a.selectedIndex,b=a.options[b];localStorage.voiceName=b.voiceName},!0)};
1506 cvox.OptionsPage.populateBrailleTablesSelect=function(){if(cvox.ChromeVox.isChromeOS){var a=cvox.OptionsPage.brailleTables,b=JSON.parse(cvox.ChromeVox.msgs.getMsg("locale_dict")),c=function(c,d){for(var e=[],f=localStorage[c.id]||localStorage.brailleTable,g=0,q;q=a[g];g++)if(q.dots===d){var n=document.createElement("option");n.id=q.id;e[q.locale]||(e[q.locale]=0);e[q.locale]++;var s=q.grade;n.textContent=s?cvox.ChromeVox.msgs.getMsg("options_braille_locale_grade",[b[q.locale],s]):b[q.locale];q.id==
1507 f&&n.setAttribute("selected","");c.appendChild(n)}},d=document.getElementById("brailleTable6"),e=document.getElementById("brailleTable8");c(d,"6");c(e,"8");c=function(a){return function(){var b=a.selectedIndex,b=a.options[b];localStorage.brailleTable=b.id;localStorage[a.id]=b.id;b=chrome.extension.getBackgroundPage().braille;b.refreshTranslator()}};d.addEventListener("change",c(d),!0);e.addEventListener("change",c(e),!0);var f=document.getElementById("brailleTableType"),g=function(a){var b=localStorage.brailleTableType||
1508 "brailleTable6";"brailleTable6"==b?(d.removeAttribute("aria-hidden"),d.setAttribute("tabIndex",0),d.style.display="block",a&&d.focus(),e.setAttribute("aria-hidden","true"),e.setAttribute("tabIndex",-1),e.style.display="none",localStorage.brailleTable=localStorage.brailleTable6,localStorage.brailleTableType="brailleTable6",f.textContent=cvox.ChromeVox.msgs.getMsg("options_braille_table_type_6")):(d.setAttribute("aria-hidden","true"),d.setAttribute("tabIndex",-1),d.style.display="none",e.removeAttribute("aria-hidden"),
1509 e.setAttribute("tabIndex",0),e.style.display="block",a&&e.focus(),localStorage.brailleTable=localStorage.brailleTable8,localStorage.brailleTableType="brailleTable8",f.textContent=cvox.ChromeVox.msgs.getMsg("options_braille_table_type_8"));a=chrome.extension.getBackgroundPage().braille;a.refreshTranslator()};g(!1);f.addEventListener("click",function(){var a=localStorage.brailleTableType;localStorage.brailleTableType="brailleTable6"==a?"brailleTable8":"brailleTable6";g(!0)},!0)}};
1510 cvox.OptionsPage.setValue=function(a,b){"INPUT"==a.tagName&&"checkbox"==a.type?a.checked="true"==b:"INPUT"==a.tagName&&"radio"==a.type?a.checked=String(a.value)==b:a.value=b};
1511 cvox.OptionsPage.eventListener=function(a){window.setTimeout(function(){var b=a.target;if(b.classList.contains("pref"))if("INPUT"==b.tagName&&"checkbox"==b.type)cvox.OptionsPage.prefs.setPref(b.name,b.checked);else{if("INPUT"==b.tagName&&"radio"==b.type)for(var c=b.name,c=document.querySelectorAll('*[name="'+c+'"]'),d=0;d<c.length;d++)c[d].checked&&cvox.OptionsPage.prefs.setPref(b.name,c[d].value)}else b.classList.contains("key")&&(c=cvox.KeySequence.fromStr(b.value),"cvoxKey"==b.id?(cvox.OptionsPage.prefs.setPref(b.id,
1512 b.value),cvox.OptionsPage.prefs.sendPrefsToAllTabs(!0,!0)):cvox.OptionsPage.prefs.setKey(b.id,c))},0);return!0};
1513 cvox.OptionsPage.reset=function(){var a=document.getElementById("cvox_keymaps"),a=a.options[a.selectedIndex].id,b=cvox.ChromeVox.msgs,b=cvox.OptionsPage.prefs.getPrefs().currentKeyMap==a?b.getMsg("keymap_reset",[b.getMsg(a)]):b.getMsg("keymap_switch",[b.getMsg(a)]);cvox.OptionsPage.updateStatus_(b);cvox.OptionsPage.prefs.switchToKeyMap(a);document.getElementById("keysContainer").innerHTML="";cvox.OptionsPage.addKeys();cvox.ChromeVox.msgs.addTranslatedMessagesToDom(document)};
1514 cvox.OptionsPage.updateStatus_=function(a){document.getElementById("status").innerText=a};cvox.OptionsPage.hidePlatformSpecifics=function(){if(!cvox.ChromeVox.isChromeOS)for(var a=document.body.querySelectorAll(".chromeos"),b=0,c;c=a[b];b++)c.setAttribute("aria-hidden","true"),c.style.display="none"};document.addEventListener("DOMContentLoaded",function(){cvox.OptionsPage.init()},!1);