slimerjs-firefox
Version:
This repo includes slimerjs as well as downloads a local copy of Firefox.
94 lines • 64.4 kB
JavaScript
function(){return function(){function h(a){return function(){return this[a]}}function aa(a){return function(){return a}}var n=this;
function ba(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";
else if("function"==b&&"undefined"==typeof a.call)return"object";return b}function ca(a){return void 0!==a}function da(a){var b=ba(a);return"array"==b||"object"==b&&"number"==typeof a.length}function p(a){return"string"==typeof a}function ea(a){return"function"==ba(a)}function fa(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}function ga(a,b,c){return a.call.apply(a.bind,arguments)}
function ha(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)}}function ia(a,b,c){ia=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?ga:ha;return ia.apply(null,arguments)}
function ja(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=Array.prototype.slice.call(arguments);b.unshift.apply(b,c);return a.apply(this,b)}}var ka=Date.now||function(){return+new Date};function r(a,b){function c(){}c.prototype=b.prototype;a.Ua=b.prototype;a.prototype=new c};var la=window;function ma(a,b){for(var c=0,d=String(a).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),e=String(b).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),f=Math.max(d.length,e.length),g=0;0==c&&g<f;g++){var k=d[g]||"",t=e[g]||"",z=RegExp("(\\d*)(\\D*)","g"),A=RegExp("(\\d*)(\\D*)","g");do{var q=z.exec(k)||["","",""],l=A.exec(t)||["","",""];if(0==q[0].length&&0==l[0].length)break;c=((0==q[1].length?0:parseInt(q[1],10))<(0==l[1].length?0:parseInt(l[1],10))?-1:(0==q[1].length?0:parseInt(q[1],10))>(0==l[1].length?
0:parseInt(l[1],10))?1:0)||((0==q[2].length)<(0==l[2].length)?-1:(0==q[2].length)>(0==l[2].length)?1:0)||(q[2]<l[2]?-1:q[2]>l[2]?1:0)}while(0==c)}return c}function na(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};var oa=Array.prototype;function s(a,b){for(var c=a.length,d=p(a)?a.split(""):a,e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)}function pa(a,b){for(var c=a.length,d=[],e=0,f=p(a)?a.split(""):a,g=0;g<c;g++)if(g in f){var k=f[g];b.call(void 0,k,g,a)&&(d[e++]=k)}return d}function qa(a,b){for(var c=a.length,d=Array(c),e=p(a)?a.split(""):a,f=0;f<c;f++)f in e&&(d[f]=b.call(void 0,e[f],f,a));return d}
function sa(a,b,c){if(a.reduce)return a.reduce(b,c);var d=c;s(a,function(c,f){d=b.call(void 0,d,c,f,a)});return d}function ta(a,b){for(var c=a.length,d=p(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a))return!0;return!1}function ua(a,b){for(var c=a.length,d=p(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&!b.call(void 0,d[e],e,a))return!1;return!0}
function va(a,b){var c;a:{c=a.length;for(var d=p(a)?a.split(""):a,e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){c=e;break a}c=-1}return 0>c?null:p(a)?a.charAt(c):a[c]}function wa(a,b){var c;a:if(p(a))c=p(b)&&1==b.length?a.indexOf(b,0):-1;else{for(c=0;c<a.length;c++)if(c in a&&a[c]===b)break a;c=-1}return 0<=c}function xa(a){return oa.concat.apply(oa,arguments)}function ya(a,b,c){return 2>=arguments.length?oa.slice.call(a,b):oa.slice.call(a,b,c)};var za={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",
darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",
ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",
lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",
moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",
seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};var Aa="backgroundColor borderTopColor borderRightColor borderBottomColor borderLeftColor color outlineColor".split(" "),Ba=/#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])/,Ca=/^#(?:[0-9a-f]{3}){1,2}$/i,Da=/^(?:rgba)?\((\d{1,3}),\s?(\d{1,3}),\s?(\d{1,3}),\s?(0|1|0\.\d*)\)$/i,Ea=/^(?:rgb)?\((0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2}),\s?(0|[1-9]\d{0,2})\)$/i;function u(a,b){this.code=a;this.state=Fa[a]||Ga;this.message=b||"";var c=this.state.replace(/((?:^|\s+)[a-z])/g,function(a){return a.toUpperCase().replace(/^[\s\xa0]+/g,"")}),d=c.length-5;if(0>d||c.indexOf("Error",d)!=d)c+="Error";this.name=c;c=Error(this.message);c.name=this.name;this.stack=c.stack||""}r(u,Error);
var Ga="unknown error",Fa={15:"element not selectable",11:"element not visible",31:"ime engine activation failed",30:"ime not available",24:"invalid cookie domain",29:"invalid element coordinates",12:"invalid element state",32:"invalid selector",51:"invalid selector",52:"invalid selector",17:"javascript error",405:"unsupported operation",34:"move target out of bounds",27:"no such alert",7:"no such element",8:"no such frame",23:"no such window",28:"script timeout",33:"session not created",10:"stale element reference",
0:"success",21:"timeout",25:"unable to set cookie",26:"unexpected alert open"};Fa[13]=Ga;Fa[9]="unknown command";u.prototype.toString=function(){return this.name+": "+this.message};var Ha,Ia,Ja,Ka,La,Ma;function Na(){return n.navigator?n.navigator.userAgent:null}Ka=Ja=Ia=Ha=!1;var Oa;if(Oa=Na()){var Pa=n.navigator;Ha=0==Oa.indexOf("Opera");Ia=!Ha&&-1!=Oa.indexOf("MSIE");Ja=!Ha&&-1!=Oa.indexOf("WebKit");Ka=!Ha&&!Ja&&"Gecko"==Pa.product}var w=Ha,x=Ia,y=Ka,B=Ja,Qa,Ra=n.navigator;Qa=Ra&&Ra.platform||"";La=-1!=Qa.indexOf("Mac");Ma=-1!=Qa.indexOf("Win");var Sa=-1!=Qa.indexOf("Linux");function Ta(){var a=n.document;return a?a.documentMode:void 0}var Ua;
a:{var Va="",Wa;if(w&&n.opera)var Xa=n.opera.version,Va="function"==typeof Xa?Xa():Xa;else if(y?Wa=/rv\:([^\);]+)(\)|;)/:x?Wa=/MSIE\s+([^\);]+)(\)|;)/:B&&(Wa=/WebKit\/(\S+)/),Wa)var Ya=Wa.exec(Na()),Va=Ya?Ya[1]:"";if(x){var Za=Ta();if(Za>parseFloat(Va)){Ua=String(Za);break a}}Ua=Va}var $a={};function ab(a){return $a[a]||($a[a]=0<=ma(Ua,a))}function C(a){return x&&bb>=a}var eb=n.document,bb=eb&&x?Ta()||("CSS1Compat"==eb.compatMode?parseInt(Ua,10):5):void 0;var fb;!y&&!x||x&&C(9)||y&&ab("1.9.1");x&&ab("9");function D(a,b){this.x=ca(a)?a:0;this.y=ca(b)?b:0}D.prototype.toString=function(){return"("+this.x+", "+this.y+")"};D.prototype.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};D.prototype.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};D.prototype.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};function gb(a,b){this.width=a;this.height=b}gb.prototype.toString=function(){return"("+this.width+" x "+this.height+")"};gb.prototype.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};gb.prototype.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};gb.prototype.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function hb(a,b){var c={},d;for(d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function ib(a,b){var c={},d;for(d in a)c[d]=b.call(void 0,a[d],d,a);return c}function jb(a,b){for(var c in a)if(b.call(void 0,a[c],c,a))return c};var kb=3;function lb(a){a=a.document;a=mb(a)?a.documentElement:a.body;return new gb(a.clientWidth,a.clientHeight)}function F(a){return a?a.parentWindow||a.defaultView:window}function mb(a){return"CSS1Compat"==a.compatMode}function nb(a){for(;a&&1!=a.nodeType;)a=a.previousSibling;return a}
function ob(a,b){if(a.contains&&1==b.nodeType)return a==b||a.contains(b);if("undefined"!=typeof a.compareDocumentPosition)return a==b||Boolean(a.compareDocumentPosition(b)&16);for(;b&&a!=b;)b=b.parentNode;return b==a}
function pb(a,b){if(a==b)return 0;if(a.compareDocumentPosition)return a.compareDocumentPosition(b)&2?1:-1;if(x&&!C(9)){if(9==a.nodeType)return-1;if(9==b.nodeType)return 1}if("sourceIndex"in a||a.parentNode&&"sourceIndex"in a.parentNode){var c=1==a.nodeType,d=1==b.nodeType;if(c&&d)return a.sourceIndex-b.sourceIndex;var e=a.parentNode,f=b.parentNode;return e==f?qb(a,b):!c&&ob(e,b)?-1*rb(a,b):!d&&ob(f,a)?rb(b,a):(c?a.sourceIndex:e.sourceIndex)-(d?b.sourceIndex:f.sourceIndex)}d=G(a);c=d.createRange();
c.selectNode(a);c.collapse(!0);d=d.createRange();d.selectNode(b);d.collapse(!0);return c.compareBoundaryPoints(n.Range.START_TO_END,d)}function rb(a,b){var c=a.parentNode;if(c==b)return-1;for(var d=b;d.parentNode!=c;)d=d.parentNode;return qb(d,a)}function qb(a,b){for(var c=b;c=c.previousSibling;)if(c==a)return-1;return 1}function G(a){return 9==a.nodeType?a:a.ownerDocument||a.document}var sb={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},tb={IMG:" ",BR:"\n"};
function ub(a,b,c){if(!(a.nodeName in sb))if(a.nodeType==kb)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else if(a.nodeName in tb)b.push(tb[a.nodeName]);else for(a=a.firstChild;a;)ub(a,b,c),a=a.nextSibling}function vb(a,b,c){c||(a=a.parentNode);for(c=0;a;){if(b(a))return a;a=a.parentNode;c++}return null}function wb(a){this.C=a||n.document||document}wb.prototype.v=function(a){return p(a)?this.C.getElementById(a):a};
function xb(a){return!B&&mb(a.C)?a.C.documentElement:a.C.body||a.C.documentElement}wb.prototype.contains=ob;var yb,zb,Ab,Bb,Cb,Db,Eb;Eb=Db=Cb=Bb=Ab=zb=yb=!1;var Fb=Na();Fb&&(-1!=Fb.indexOf("Firefox")?yb=!0:-1!=Fb.indexOf("Camino")?zb=!0:-1!=Fb.indexOf("iPhone")||-1!=Fb.indexOf("iPod")?Ab=!0:-1!=Fb.indexOf("iPad")?Bb=!0:-1!=Fb.indexOf("Android")?Cb=!0:-1!=Fb.indexOf("Chrome")?Db=!0:-1!=Fb.indexOf("Safari")&&(Eb=!0));var Gb=yb,Hb=zb,Ib=Ab,Jb=Bb,Kb=Cb,Lb=Db,Mb=Eb;function Nb(a,b,c){this.g=a;this.Ha=b||1;this.p=c||1};var Ob=x&&!C(9),Pb=x&&!C(8);function Qb(a,b,c,d,e){this.g=a;this.nodeName=c;this.nodeValue=d;this.nodeType=2;this.ownerElement=b;this.Sa=e;this.parentNode=b}function Rb(a,b,c){var d=Pb&&"href"==b.nodeName?a.getAttribute(b.nodeName,2):b.nodeValue;return new Qb(b,a,b.nodeName,d,c)};function Sb(a){this.ga=a;this.Q=0}function Tb(a){a=a.match(Ub);for(var b=0;b<a.length;b++)Vb.test(a[b])&&a.splice(b,1);return new Sb(a)}var Ub=RegExp("\\$?(?:(?![0-9-])[\\w-]+:)?(?![0-9-])[\\w-]+|\\/\\/|\\.\\.|::|\\d+(?:\\.\\d*)?|\\.\\d+|\"[^\"]*\"|'[^']*'|[!<>]=|\\s+|.","g"),Vb=/^\s/;function H(a,b){return a.ga[a.Q+(b||0)]}Sb.prototype.next=function(){return this.ga[this.Q++]};Sb.prototype.back=function(){this.Q--};Sb.prototype.empty=function(){return this.ga.length<=this.Q};function I(a){var b=null,c=a.nodeType;1==c&&(b=a.textContent,b=void 0==b||null==b?a.innerText:b,b=void 0==b||null==b?"":b);if("string"!=typeof b)if(Ob&&"title"==a.nodeName.toLowerCase()&&1==c)b=a.text;else if(9==c||1==c){a=9==c?a.documentElement:a.firstChild;for(var c=0,d=[],b="";a;){do 1!=a.nodeType&&(b+=a.nodeValue),Ob&&"title"==a.nodeName.toLowerCase()&&(b+=a.text),d[c++]=a;while(a=a.firstChild);for(;c&&!(a=d[--c].nextSibling););}}else b=a.nodeValue;return""+b}
function Wb(a,b,c){if(null===b)return!0;try{if(!a.getAttribute)return!1}catch(d){return!1}Pb&&"class"==b&&(b="className");return null==c?!!a.getAttribute(b):a.getAttribute(b,2)==c}function Xb(a,b,c,d,e){return(Ob?Yb:Zb).call(null,a,b,p(c)?c:null,p(d)?d:null,e||new J)}
function Yb(a,b,c,d,e){if(a instanceof $b||8==a.f||c&&null===a.f){var f=b.all;if(!f)return e;a=ac(a);if("*"!=a&&(f=b.getElementsByTagName(a),!f))return e;if(c){for(var g=[],k=0;b=f[k++];)Wb(b,c,d)&&g.push(b);f=g}for(k=0;b=f[k++];)"*"==a&&"!"==b.tagName||e.add(b);return e}bc(a,b,c,d,e);return e}
function Zb(a,b,c,d,e){b.getElementsByName&&d&&"name"==c&&!x?(b=b.getElementsByName(d),s(b,function(b){a.matches(b)&&e.add(b)})):b.getElementsByClassName&&d&&"class"==c?(b=b.getElementsByClassName(d),s(b,function(b){b.className==d&&a.matches(b)&&e.add(b)})):a instanceof K?bc(a,b,c,d,e):b.getElementsByTagName&&(b=b.getElementsByTagName(a.getName()),s(b,function(a){Wb(a,c,d)&&e.add(a)}));return e}
function cc(a,b,c,d,e){var f;if((a instanceof $b||8==a.f||c&&null===a.f)&&(f=b.childNodes)){var g=ac(a);if("*"!=g&&(f=pa(f,function(a){return a.tagName&&a.tagName.toLowerCase()==g}),!f))return e;c&&(f=pa(f,function(a){return Wb(a,c,d)}));s(f,function(a){"*"==g&&("!"==a.tagName||"*"==g&&1!=a.nodeType)||e.add(a)});return e}return dc(a,b,c,d,e)}function dc(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)Wb(b,c,d)&&a.matches(b)&&e.add(b);return e}
function bc(a,b,c,d,e){for(b=b.firstChild;b;b=b.nextSibling)Wb(b,c,d)&&a.matches(b)&&e.add(b),bc(a,b,c,d,e)}function ac(a){if(a instanceof K){if(8==a.f)return"!";if(null===a.f)return"*"}return a.getName()};function J(){this.p=this.k=null;this.K=0}function ec(a){this.s=a;this.next=this.F=null}function fc(a,b){if(!a.k)return b;if(!b.k)return a;for(var c=a.k,d=b.k,e=null,f=null,g=0;c&&d;)c.s==d.s||c.s instanceof Qb&&d.s instanceof Qb&&c.s.g==d.s.g?(f=c,c=c.next,d=d.next):0<pb(c.s,d.s)?(f=d,d=d.next):(f=c,c=c.next),(f.F=e)?e.next=f:a.k=f,e=f,g++;for(f=c||d;f;)f.F=e,e=e.next=f,g++,f=f.next;a.p=e;a.K=g;return a}
J.prototype.unshift=function(a){a=new ec(a);a.next=this.k;this.p?this.k.F=a:this.k=this.p=a;this.k=a;this.K++};J.prototype.add=function(a){a=new ec(a);a.F=this.p;this.k?this.p.next=a:this.k=this.p=a;this.p=a;this.K++};function gc(a){return(a=a.k)?a.s:null}J.prototype.r=h("K");function hc(a){return(a=gc(a))?I(a):""}function ic(a,b){return new jc(a,!!b)}function jc(a,b){this.Da=a;this.ha=(this.G=b)?a.p:a.k;this.ba=null}
jc.prototype.next=function(){var a=this.ha;if(null==a)return null;var b=this.ba=a;this.ha=this.G?a.F:a.next;return b.s};jc.prototype.remove=function(){var a=this.Da,b=this.ba;if(!b)throw Error("Next must be called at least once before remove.");var c=b.F,b=b.next;c?c.next=b:a.k=b;b?b.F=c:a.p=c;a.K--;this.ba=null};function L(a){this.j=a;this.l=this.t=!1;this.M=null}function M(a){return"\n "+a.toString().split("\n").join("\n ")}L.prototype.h=h("t");function kc(a,b){a.t=b}function lc(a,b){a.l=b}L.prototype.w=h("M");function N(a,b){var c=a.evaluate(b);return c instanceof J?+hc(c):+c}function O(a,b){var c=a.evaluate(b);return c instanceof J?hc(c):""+c}function mc(a,b){var c=a.evaluate(b);return c instanceof J?!!c.r():!!c};function nc(a,b,c){L.call(this,a.j);this.fa=a;this.ma=b;this.ra=c;this.t=b.h()||c.h();this.l=b.l||c.l;this.fa==oc&&(c.l||c.h()||4==c.j||0==c.j||!b.w()?b.l||(b.h()||4==b.j||0==b.j||!c.w())||(this.M={name:c.w().name,H:b}):this.M={name:b.w().name,H:c})}r(nc,L);
function pc(a,b,c,d,e){b=b.evaluate(d);c=c.evaluate(d);var f;if(b instanceof J&&c instanceof J){e=ic(b);for(d=e.next();d;d=e.next())for(b=ic(c),f=b.next();f;f=b.next())if(a(I(d),I(f)))return!0;return!1}if(b instanceof J||c instanceof J){b instanceof J?e=b:(e=c,c=b);e=ic(e);b=typeof c;for(d=e.next();d;d=e.next()){switch(b){case "number":d=+I(d);break;case "boolean":d=!!I(d);break;case "string":d=I(d);break;default:throw Error("Illegal primitive type for comparison.");}if(a(d,c))return!0}return!1}return e?
"boolean"==typeof b||"boolean"==typeof c?a(!!b,!!c):"number"==typeof b||"number"==typeof c?a(+b,+c):a(b,c):a(+b,+c)}nc.prototype.evaluate=function(a){return this.fa.q(this.ma,this.ra,a)};nc.prototype.toString=function(){var a="Binary Expression: "+this.fa,a=a+M(this.ma);return a+=M(this.ra)};function qc(a,b,c,d){this.Ga=a;this.pa=b;this.j=c;this.q=d}qc.prototype.toString=h("Ga");var rc={};
function P(a,b,c,d){if(rc.hasOwnProperty(a))throw Error("Binary operator already created: "+a);a=new qc(a,b,c,d);return rc[a.toString()]=a}P("div",6,1,function(a,b,c){return N(a,c)/N(b,c)});P("mod",6,1,function(a,b,c){return N(a,c)%N(b,c)});P("*",6,1,function(a,b,c){return N(a,c)*N(b,c)});P("+",5,1,function(a,b,c){return N(a,c)+N(b,c)});P("-",5,1,function(a,b,c){return N(a,c)-N(b,c)});P("<",4,2,function(a,b,c){return pc(function(a,b){return a<b},a,b,c)});
P(">",4,2,function(a,b,c){return pc(function(a,b){return a>b},a,b,c)});P("<=",4,2,function(a,b,c){return pc(function(a,b){return a<=b},a,b,c)});P(">=",4,2,function(a,b,c){return pc(function(a,b){return a>=b},a,b,c)});var oc=P("=",3,2,function(a,b,c){return pc(function(a,b){return a==b},a,b,c,!0)});P("!=",3,2,function(a,b,c){return pc(function(a,b){return a!=b},a,b,c,!0)});P("and",2,2,function(a,b,c){return mc(a,c)&&mc(b,c)});P("or",1,2,function(a,b,c){return mc(a,c)||mc(b,c)});function sc(a,b){if(b.r()&&4!=a.j)throw Error("Primary expression must evaluate to nodeset if filter has predicate(s).");L.call(this,a.j);this.qa=a;this.e=b;this.t=a.h();this.l=a.l}r(sc,L);sc.prototype.evaluate=function(a){a=this.qa.evaluate(a);return tc(this.e,a)};sc.prototype.toString=function(){var a;a="Filter:"+M(this.qa);return a+=M(this.e)};function uc(a,b){if(b.length<a.oa)throw Error("Function "+a.o+" expects at least"+a.oa+" arguments, "+b.length+" given");if(null!==a.ca&&b.length>a.ca)throw Error("Function "+a.o+" expects at most "+a.ca+" arguments, "+b.length+" given");a.Ea&&s(b,function(b,d){if(4!=b.j)throw Error("Argument "+d+" to function "+a.o+" is not of type Nodeset: "+b);});L.call(this,a.j);this.P=a;this.W=b;kc(this,a.t||ta(b,function(a){return a.h()}));lc(this,a.Ca&&!b.length||a.Ba&&!!b.length||ta(b,function(a){return a.l}))}
r(uc,L);uc.prototype.evaluate=function(a){return this.P.q.apply(null,xa(a,this.W))};uc.prototype.toString=function(){var a="Function: "+this.P;if(this.W.length)var b=sa(this.W,function(a,b){return a+M(b)},"Arguments:"),a=a+M(b);return a};function vc(a,b,c,d,e,f,g,k,t){this.o=a;this.j=b;this.t=c;this.Ca=d;this.Ba=e;this.q=f;this.oa=g;this.ca=ca(k)?k:g;this.Ea=!!t}vc.prototype.toString=h("o");var wc={};
function Q(a,b,c,d,e,f,g,k){if(wc.hasOwnProperty(a))throw Error("Function already created: "+a+".");wc[a]=new vc(a,b,c,d,!1,e,f,g,k)}Q("boolean",2,!1,!1,function(a,b){return mc(b,a)},1);Q("ceiling",1,!1,!1,function(a,b){return Math.ceil(N(b,a))},1);Q("concat",3,!1,!1,function(a,b){var c=ya(arguments,1);return sa(c,function(b,c){return b+O(c,a)},"")},2,null);Q("contains",2,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);return-1!=b.indexOf(a)},2);
Q("count",1,!1,!1,function(a,b){return b.evaluate(a).r()},1,1,!0);Q("false",2,!1,!1,aa(!1),0);Q("floor",1,!1,!1,function(a,b){return Math.floor(N(b,a))},1);
Q("id",4,!1,!1,function(a,b){function c(a){if(Ob){var b=e.all[a];if(b){if(b.nodeType&&a==b.id)return b;if(b.length)return va(b,function(b){return a==b.id})}return null}return e.getElementById(a)}var d=a.g,e=9==d.nodeType?d:d.ownerDocument,d=O(b,a).split(/\s+/),f=[];s(d,function(a){(a=c(a))&&!wa(f,a)&&f.push(a)});f.sort(pb);var g=new J;s(f,function(a){g.add(a)});return g},1);Q("lang",2,!1,!1,aa(!1),1);
Q("last",1,!0,!1,function(a){if(1!=arguments.length)throw Error("Function last expects ()");return a.p},0);Q("local-name",3,!1,!0,function(a,b){var c=b?gc(b.evaluate(a)):a.g;return c?c.nodeName.toLowerCase():""},0,1,!0);Q("name",3,!1,!0,function(a,b){var c=b?gc(b.evaluate(a)):a.g;return c?c.nodeName.toLowerCase():""},0,1,!0);Q("namespace-uri",3,!0,!1,aa(""),0,1,!0);Q("normalize-space",3,!1,!0,function(a,b){return(b?O(b,a):I(a.g)).replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")},0,1);
Q("not",2,!1,!1,function(a,b){return!mc(b,a)},1);Q("number",1,!1,!0,function(a,b){return b?N(b,a):+I(a.g)},0,1);Q("position",1,!0,!1,function(a){return a.Ha},0);Q("round",1,!1,!1,function(a,b){return Math.round(N(b,a))},1);Q("starts-with",2,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);return 0==b.lastIndexOf(a,0)},2);Q("string",3,!1,!0,function(a,b){return b?O(b,a):I(a.g)},0,1);Q("string-length",1,!1,!0,function(a,b){return(b?O(b,a):I(a.g)).length},0,1);
Q("substring",3,!1,!1,function(a,b,c,d){c=N(c,a);if(isNaN(c)||Infinity==c||-Infinity==c)return"";d=d?N(d,a):Infinity;if(isNaN(d)||-Infinity===d)return"";c=Math.round(c)-1;var e=Math.max(c,0);a=O(b,a);if(Infinity==d)return a.substring(e);b=Math.round(d);return a.substring(e,c+b)},2,3);Q("substring-after",3,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);c=b.indexOf(a);return-1==c?"":b.substring(c+a.length)},2);
Q("substring-before",3,!1,!1,function(a,b,c){b=O(b,a);a=O(c,a);a=b.indexOf(a);return-1==a?"":b.substring(0,a)},2);Q("sum",1,!1,!1,function(a,b){for(var c=ic(b.evaluate(a)),d=0,e=c.next();e;e=c.next())d+=+I(e);return d},1,1,!0);Q("translate",3,!1,!1,function(a,b,c,d){b=O(b,a);c=O(c,a);var e=O(d,a);a=[];for(d=0;d<c.length;d++){var f=c.charAt(d);f in a||(a[f]=e.charAt(d))}c="";for(d=0;d<b.length;d++)f=b.charAt(d),c+=f in a?a[f]:f;return c},3);Q("true",2,!1,!1,aa(!0),0);function K(a,b){this.ta=a;this.na=ca(b)?b:null;this.f=null;switch(a){case "comment":this.f=8;break;case "text":this.f=kb;break;case "processing-instruction":this.f=7;break;case "node":break;default:throw Error("Unexpected argument");}}function xc(a){return"comment"==a||"text"==a||"processing-instruction"==a||"node"==a}K.prototype.matches=function(a){return null===this.f||this.f==a.nodeType};K.prototype.getName=h("ta");
K.prototype.toString=function(){var a="Kind Test: "+this.ta;null===this.na||(a+=M(this.na));return a};function yc(a){L.call(this,3);this.sa=a.substring(1,a.length-1)}r(yc,L);yc.prototype.evaluate=h("sa");yc.prototype.toString=function(){return"Literal: "+this.sa};function $b(a,b){this.o=a.toLowerCase();this.da=b?b.toLowerCase():"http://www.w3.org/1999/xhtml"}$b.prototype.matches=function(a){var b=a.nodeType;return 1!=b&&2!=b?!1:"*"!=this.o&&this.o!=a.nodeName.toLowerCase()?!1:this.da==(a.namespaceURI?a.namespaceURI.toLowerCase():"http://www.w3.org/1999/xhtml")};$b.prototype.getName=h("o");$b.prototype.toString=function(){return"Name Test: "+("http://www.w3.org/1999/xhtml"==this.da?"":this.da+":")+this.o};function zc(a){L.call(this,1);this.ua=a}r(zc,L);zc.prototype.evaluate=h("ua");zc.prototype.toString=function(){return"Number: "+this.ua};function Ac(a,b){L.call(this,a.j);this.ka=a;this.N=b;this.t=a.h();this.l=a.l;if(1==this.N.length){var c=this.N[0];c.$||c.u!=Bc||(c=c.V,"*"!=c.getName()&&(this.M={name:c.getName(),H:null}))}}r(Ac,L);function Cc(){L.call(this,4)}r(Cc,L);Cc.prototype.evaluate=function(a){var b=new J;a=a.g;9==a.nodeType?b.add(a):b.add(a.ownerDocument);return b};Cc.prototype.toString=aa("Root Helper Expression");function Dc(){L.call(this,4)}r(Dc,L);Dc.prototype.evaluate=function(a){var b=new J;b.add(a.g);return b};
Dc.prototype.toString=aa("Context Helper Expression");
Ac.prototype.evaluate=function(a){var b=this.ka.evaluate(a);if(!(b instanceof J))throw Error("Filter expression must evaluate to nodeset.");a=this.N;for(var c=0,d=a.length;c<d&&b.r();c++){var e=a[c],f=ic(b,e.u.G),g;if(e.h()||e.u!=Ec)if(e.h()||e.u!=Fc)for(g=f.next(),b=e.evaluate(new Nb(g));null!=(g=f.next());)g=e.evaluate(new Nb(g)),b=fc(b,g);else g=f.next(),b=e.evaluate(new Nb(g));else{for(g=f.next();(b=f.next())&&(!g.contains||g.contains(b))&&b.compareDocumentPosition(g)&8;g=b);b=e.evaluate(new Nb(g))}}return b};
Ac.prototype.toString=function(){var a;a="Path Expression:"+M(this.ka);if(this.N.length){var b=sa(this.N,function(a,b){return a+M(b)},"Steps:");a+=M(b)}return a};function Gc(a,b){this.e=a;this.G=!!b}function tc(a,b,c){for(c=c||0;c<a.e.length;c++)for(var d=a.e[c],e=ic(b),f=b.r(),g,k=0;g=e.next();k++){var t=a.G?f-k:k+1;g=d.evaluate(new Nb(g,t,f));if("number"==typeof g)t=t==g;else if("string"==typeof g||"boolean"==typeof g)t=!!g;else if(g instanceof J)t=0<g.r();else throw Error("Predicate.evaluate returned an unexpected type.");t||e.remove()}return b}Gc.prototype.w=function(){return 0<this.e.length?this.e[0].w():null};
Gc.prototype.h=function(){for(var a=0;a<this.e.length;a++){var b=this.e[a];if(b.h()||1==b.j||0==b.j)return!0}return!1};Gc.prototype.r=function(){return this.e.length};Gc.prototype.toString=function(){return sa(this.e,function(a,b){return a+M(b)},"Predicates:")};function Hc(a,b,c,d){L.call(this,4);this.u=a;this.V=b;this.e=c||new Gc([]);this.$=!!d;b=this.e.w();a.Ka&&b&&(a=b.name,a=Ob?a.toLowerCase():a,this.M={name:a,H:b.H});this.t=this.e.h()}r(Hc,L);
Hc.prototype.evaluate=function(a){var b=a.g,c=null,c=this.w(),d=null,e=null,f=0;c&&(d=c.name,e=c.H?O(c.H,a):null,f=1);if(this.$)if(this.h()||this.u!=Ic)if(a=ic((new Hc(Jc,new K("node"))).evaluate(a)),b=a.next())for(c=this.q(b,d,e,f);null!=(b=a.next());)c=fc(c,this.q(b,d,e,f));else c=new J;else c=Xb(this.V,b,d,e),c=tc(this.e,c,f);else c=this.q(a.g,d,e,f);return c};Hc.prototype.q=function(a,b,c,d){a=this.u.P(this.V,a,b,c);return a=tc(this.e,a,d)};
Hc.prototype.toString=function(){var a;a="Step:"+M("Operator: "+(this.$?"//":"/"));this.u.o&&(a+=M("Axis: "+this.u));a+=M(this.V);if(this.e.r()){var b=sa(this.e.e,function(a,b){return a+M(b)},"Predicates:");a+=M(b)}return a};function Kc(a,b,c,d){this.o=a;this.P=b;this.G=c;this.Ka=d}Kc.prototype.toString=h("o");var Lc={};function R(a,b,c,d){if(Lc.hasOwnProperty(a))throw Error("Axis already created: "+a);b=new Kc(a,b,c,!!d);return Lc[a]=b}
R("ancestor",function(a,b){for(var c=new J,d=b;d=d.parentNode;)a.matches(d)&&c.unshift(d);return c},!0);R("ancestor-or-self",function(a,b){var c=new J,d=b;do a.matches(d)&&c.unshift(d);while(d=d.parentNode);return c},!0);
var Bc=R("attribute",function(a,b){var c=new J,d=a.getName();if("style"==d&&b.style&&Ob)return c.add(new Qb(b.style,b,"style",b.style.cssText,b.sourceIndex)),c;var e=b.attributes;if(e)if(a instanceof K&&null===a.f||"*"==d)for(var d=b.sourceIndex,f=0,g;g=e[f];f++)Ob?g.nodeValue&&c.add(Rb(b,g,d)):c.add(g);else(g=e.getNamedItem(d))&&(Ob?g.nodeValue&&c.add(Rb(b,g,b.sourceIndex)):c.add(g));return c},!1),Ic=R("child",function(a,b,c,d,e){return(Ob?cc:dc).call(null,a,b,p(c)?c:null,p(d)?d:null,e||new J)},
!1,!0);R("descendant",Xb,!1,!0);var Jc=R("descendant-or-self",function(a,b,c,d){var e=new J;Wb(b,c,d)&&a.matches(b)&&e.add(b);return Xb(a,b,c,d,e)},!1,!0),Ec=R("following",function(a,b,c,d){var e=new J;do for(var f=b;f=f.nextSibling;)Wb(f,c,d)&&a.matches(f)&&e.add(f),e=Xb(a,f,c,d,e);while(b=b.parentNode);return e},!1,!0);R("following-sibling",function(a,b){for(var c=new J,d=b;d=d.nextSibling;)a.matches(d)&&c.add(d);return c},!1);R("namespace",function(){return new J},!1);
var Mc=R("parent",function(a,b){var c=new J;if(9==b.nodeType)return c;if(2==b.nodeType)return c.add(b.ownerElement),c;var d=b.parentNode;a.matches(d)&&c.add(d);return c},!1),Fc=R("preceding",function(a,b,c,d){var e=new J,f=[];do f.unshift(b);while(b=b.parentNode);for(var g=1,k=f.length;g<k;g++){var t=[];for(b=f[g];b=b.previousSibling;)t.unshift(b);for(var z=0,A=t.length;z<A;z++)b=t[z],Wb(b,c,d)&&a.matches(b)&&e.add(b),e=Xb(a,b,c,d,e)}return e},!0,!0);
R("preceding-sibling",function(a,b){for(var c=new J,d=b;d=d.previousSibling;)a.matches(d)&&c.unshift(d);return c},!0);var Nc=R("self",function(a,b){var c=new J;a.matches(b)&&c.add(b);return c},!1);function Oc(a){L.call(this,1);this.ja=a;this.t=a.h();this.l=a.l}r(Oc,L);Oc.prototype.evaluate=function(a){return-N(this.ja,a)};Oc.prototype.toString=function(){return"Unary Expression: -"+M(this.ja)};function Pc(a){L.call(this,4);this.S=a;kc(this,ta(this.S,function(a){return a.h()}));lc(this,ta(this.S,function(a){return a.l}))}r(Pc,L);Pc.prototype.evaluate=function(a){var b=new J;s(this.S,function(c){c=c.evaluate(a);if(!(c instanceof J))throw Error("Path expression must evaluate to NodeSet.");b=fc(b,c)});return b};Pc.prototype.toString=function(){return sa(this.S,function(a,b){return a+M(b)},"Union Expression:")};function Qc(a,b){this.a=a;this.Fa=b}function Rc(a){for(var b,c=[];;){S(a,"Missing right hand side of binary expression.");b=Sc(a);var d=a.a.next();if(!d)break;var e=(d=rc[d]||null)&&d.pa;if(!e){a.a.back();break}for(;c.length&&e<=c[c.length-1].pa;)b=new nc(c.pop(),c.pop(),b);c.push(b,d)}for(;c.length;)b=new nc(c.pop(),c.pop(),b);return b}function S(a,b){if(a.a.empty())throw Error(b);}function Tc(a,b){var c=a.a.next();if(c!=b)throw Error("Bad token, expected: "+b+" got: "+c);}
function Uc(a){a=a.a.next();if(")"!=a)throw Error("Bad token: "+a);}function Vc(a){a=a.a.next();if(2>a.length)throw Error("Unclosed literal string");return new yc(a)}function Wc(a){var b=a.a.next(),c=b.indexOf(":");if(-1==c)return new $b(b);var d=b.substring(0,c);a=a.Fa(d);if(!a)throw Error("Namespace prefix not declared: "+d);b=b.substr(c+1);return new $b(b,a)}
function Xc(a){var b,c=[],d;if("/"==H(a.a)||"//"==H(a.a)){b=a.a.next();d=H(a.a);if("/"==b&&(a.a.empty()||"."!=d&&".."!=d&&"@"!=d&&"*"!=d&&!/(?![0-9])[\w]/.test(d)))return new Cc;d=new Cc;S(a,"Missing next location step.");b=Yc(a,b);c.push(b)}else{a:{b=H(a.a);d=b.charAt(0);switch(d){case "$":throw Error("Variable reference not allowed in HTML XPath");case "(":a.a.next();b=Rc(a);S(a,'unclosed "("');Tc(a,")");break;case '"':case "'":b=Vc(a);break;default:if(isNaN(+b))if(!xc(b)&&/(?![0-9])[\w]/.test(d)&&
"("==H(a.a,1)){b=a.a.next();b=wc[b]||null;a.a.next();for(d=[];")"!=H(a.a);){S(a,"Missing function argument list.");d.push(Rc(a));if(","!=H(a.a))break;a.a.next()}S(a,"Unclosed function argument list.");Uc(a);b=new uc(b,d)}else{b=null;break a}else b=new zc(+a.a.next())}"["==H(a.a)&&(d=new Gc(Zc(a)),b=new sc(b,d))}if(b)if("/"==H(a.a)||"//"==H(a.a))d=b;else return b;else b=Yc(a,"/"),d=new Dc,c.push(b)}for(;"/"==H(a.a)||"//"==H(a.a);)b=a.a.next(),S(a,"Missing next location step."),b=Yc(a,b),c.push(b);
return new Ac(d,c)}
function Yc(a,b){var c,d,e;if("/"!=b&&"//"!=b)throw Error('Step op should be "/" or "//"');if("."==H(a.a))return d=new Hc(Nc,new K("node")),a.a.next(),d;if(".."==H(a.a))return d=new Hc(Mc,new K("node")),a.a.next(),d;var f;if("@"==H(a.a))f=Bc,a.a.next(),S(a,"Missing attribute name");else if("::"==H(a.a,1)){if(!/(?![0-9])[\w]/.test(H(a.a).charAt(0)))throw Error("Bad token: "+a.a.next());c=a.a.next();f=Lc[c]||null;if(!f)throw Error("No axis with name: "+c);a.a.next();S(a,"Missing node name")}else f=Ic;
c=H(a.a);if(/(?![0-9])[\w]/.test(c.charAt(0)))if("("==H(a.a,1)){if(!xc(c))throw Error("Invalid node type: "+c);c=a.a.next();if(!xc(c))throw Error("Invalid type name: "+c);Tc(a,"(");S(a,"Bad nodetype");e=H(a.a).charAt(0);var g=null;if('"'==e||"'"==e)g=Vc(a);S(a,"Bad nodetype");Uc(a);c=new K(c,g)}else c=Wc(a);else if("*"==c)c=Wc(a);else throw Error("Bad token: "+a.a.next());e=new Gc(Zc(a),f.G);return d||new Hc(f,c,e,"//"==b)}
function Zc(a){for(var b=[];"["==H(a.a);){a.a.next();S(a,"Missing predicate expression.");var c=Rc(a);b.push(c);S(a,"Unclosed predicate expression.");Tc(a,"]")}return b}function Sc(a){if("-"==H(a.a))return a.a.next(),new Oc(Sc(a));var b=Xc(a);if("|"!=H(a.a))a=b;else{for(b=[b];"|"==a.a.next();)S(a,"Missing next union location path."),b.push(Xc(a));a.a.back();a=new Pc(b)}return a};function $c(a){switch(a.nodeType){case 1:return ja(ad,a);case 9:return $c(a.documentElement);case 2:return a.ownerElement?$c(a.ownerElement):bd;case 11:case 10:case 6:case 12:return bd;default:return a.parentNode?$c(a.parentNode):bd}}function bd(){return null}function ad(a,b){if(a.prefix==b)return a.namespaceURI||"http://www.w3.org/1999/xhtml";var c=a.getAttributeNode("xmlns:"+b);return c&&c.specified?c.value||null:a.parentNode&&9!=a.parentNode.nodeType?ad(a.parentNode,b):null};function cd(a,b){if(!a.length)throw Error("Empty XPath expression.");var c=Tb(a);if(c.empty())throw Error("Invalid XPath expression.");b?ea(b)||(b=ia(b.lookupNamespaceURI,b)):b=aa(null);var d=Rc(new Qc(c,b));if(!c.empty())throw Error("Bad token: "+c.next());this.evaluate=function(a,b){var c=d.evaluate(new Nb(a));return new T(c,b)}}
function T(a,b){if(0==b)if(a instanceof J)b=4;else if("string"==typeof a)b=2;else if("number"==typeof a)b=1;else if("boolean"==typeof a)b=3;else throw Error("Unexpected evaluation result.");if(2!=b&&1!=b&&3!=b&&!(a instanceof J))throw Error("value could not be converted to the specified type");this.resultType=b;var c;switch(b){case 2:this.stringValue=a instanceof J?hc(a):""+a;break;case 1:this.numberValue=a instanceof J?+hc(a):+a;break;case 3:this.booleanValue=a instanceof J?0<a.r():!!a;break;case 4:case 5:case 6:case 7:var d=
ic(a);c=[];for(var e=d.next();e;e=d.next())c.push(e instanceof Qb?e.g:e);this.snapshotLength=a.r();this.invalidIteratorState=!1;break;case 8:case 9:d=gc(a);this.singleNodeValue=d instanceof Qb?d.g:d;break;default:throw Error("Unknown XPathResult type.");}var f=0;this.iterateNext=function(){if(4!=b&&5!=b)throw Error("iterateNext called with wrong result type");return f>=c.length?null:c[f++]};this.snapshotItem=function(a){if(6!=b&&7!=b)throw Error("snapshotItem called with wrong result type");return a>=
c.length||0>a?null:c[a]}}T.ANY_TYPE=0;T.NUMBER_TYPE=1;T.STRING_TYPE=2;T.BOOLEAN_TYPE=3;T.UNORDERED_NODE_ITERATOR_TYPE=4;T.ORDERED_NODE_ITERATOR_TYPE=5;T.UNORDERED_NODE_SNAPSHOT_TYPE=6;T.ORDERED_NODE_SNAPSHOT_TYPE=7;T.ANY_UNORDERED_NODE_TYPE=8;T.FIRST_ORDERED_NODE_TYPE=9;function dd(a){this.lookupNamespaceURI=$c(a)}
function ed(a){a=a||n;var b=a.document;b.evaluate||(a.XPathResult=T,b.evaluate=function(a,b,e,f){return(new cd(a,e)).evaluate(b,f)},b.createExpression=function(a,b){return new cd(a,b)},b.createNSResolver=function(a){return new dd(a)})};var U={};U.wa=function(){var a={Va:"http://www.w3.org/2000/svg"};return function(b){return a[b]||null}}();U.q=function(a,b,c){var d=G(a);(x||Kb)&&ed(F(d));try{var e=d.createNSResolver?d.createNSResolver(d.documentElement):U.wa;return x&&!ab(7)?d.evaluate.call(d,b,a,e,c,null):d.evaluate(b,a,e,c,null)}catch(f){if(!y||"NS_ERROR_ILLEGAL_VALUE"!=f.name)throw new u(32,"Unable to locate an element with the xpath expression "+b+" because of the following error:\n"+f);}};
U.Z=function(a,b){if(!a||1!=a.nodeType)throw new u(32,'The result of the xpath expression "'+b+'" is: '+a+". It should be an element.");};U.Ja=function(a,b){var c=function(){var c=U.q(b,a,9);return c?(c=c.singleNodeValue,w?c:c||null):b.selectSingleNode?(c=G(b),c.setProperty&&c.setProperty("SelectionLanguage","XPath"),b.selectSingleNode(a)):null}();null===c||U.Z(c,a);return c};
U.Qa=function(a,b){var c=function(){var c=U.q(b,a,7);if(c){var e=c.snapshotLength;w&&!ca(e)&&U.Z(null,a);for(var f=[],g=0;g<e;++g)f.push(c.snapshotItem(g));return f}return b.selectNodes?(c=G(b),c.setProperty&&c.setProperty("SelectionLanguage","XPath"),b.selectNodes(a)):[]}();s(c,function(b){U.Z(b,a)});return c};function fd(a){return(a=a.exec(Na()))?a[1]:""}var gd=function(){if(Gb)return fd(/Firefox\/([0-9.]+)/);if(x||w)return Ua;if(Lb)return fd(/Chrome\/([0-9.]+)/);if(Mb)return fd(/Version\/([0-9.]+)/);if(Ib||Jb){var a=/Version\/(\S+).*Mobile\/(\S+)/.exec(Na());if(a)return a[1]+"."+a[2]}else{if(Kb)return(a=fd(/Android\s+([0-9.]+)/))?a:fd(/Version\/([0-9.]+)/);if(Hb)return fd(/Camino\/([0-9.]+)/)}return""}();var hd,id;function jd(a){return kd?hd(a):x?0<=ma(bb,a):ab(a)}function ld(a){return kd?id(a):Kb?0<=ma(md,a):0<=ma(gd,a)}
var kd=function(){if(!y)return!1;var a=n.Components;if(!a)return!1;try{if(!a.classes)return!1}catch(b){return!1}var c=a.classes,a=a.interfaces,d=c["@mozilla.org/xpcom/version-comparator;1"].getService(a.nsIVersionComparator),c=c["@mozilla.org/xre/app-info;1"].getService(a.nsIXULAppInfo),e=c.platformVersion,f=c.version;hd=function(a){return 0<=d.ya(e,""+a)};id=function(a){return 0<=d.ya(f,""+a)};return!0}(),nd;if(Kb){var od=/Android\s+([0-9\.]+)/.exec(Na());nd=od?od[1]:"0"}else nd="0";
var md=nd,pd=x&&!C(8),qd=C(9),rd=x&&!C(9),sd=C(10),td=x&&!C(10);Kb&&ld(2.3);Kb&&ld(4);Mb&&ld(6);var ud=x&&-1!=Na().indexOf("IEMobile");function vd(a,b,c,d){this.top=a;this.right=b;this.bottom=c;this.left=d}vd.prototype.toString=function(){return"("+this.top+"t, "+this.right+"r, "+this.bottom+"b, "+this.left+"l)"};vd.prototype.contains=function(a){return this&&a?a instanceof vd?a.left>=this.left&&a.right<=this.right&&a.top>=this.top&&a.bottom<=this.bottom:a.x>=this.left&&a.x<=this.right&&a.y>=this.top&&a.y<=this.bottom:!1};
vd.prototype.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};vd.prototype.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this};
vd.prototype.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};function V(a,b,c,d){this.left=a;this.top=b;this.width=c;this.height=d}V.prototype.toString=function(){return"("+this.left+", "+this.top+" - "+this.width+"w x "+this.height+"h)"};V.prototype.contains=function(a){return a instanceof V?this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height:a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height};
V.prototype.ceil=function(){this.left=Math.ceil(this.left);this.top=Math.ceil(this.top);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};V.prototype.floor=function(){this.left=Math.floor(this.left);this.top=Math.floor(this.top);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};
V.prototype.round=function(){this.left=Math.round(this.left);this.top=Math.round(this.top);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};function wd(a,b){var c=G(a);return c.defaultView&&c.defaultView.getComputedStyle&&(c=c.defaultView.getComputedStyle(a,null))?c[b]||c.getPropertyValue(b)||"":""}function xd(a){a=a?G(a):document;var b;(b=!x)||(b=C(9))||(b=a?new wb(G(a)):fb||(fb=new wb),b=mb(b.C));return b?a.documentElement:a.body}
function yd(a){var b=a.offsetWidth,c=a.offsetHeight,d=B&&!b&&!c;if((!ca(b)||d)&&a.getBoundingClientRect){var e;a:{try{e=a.getBoundingClientRect()}catch(f){e={left:0,top:0,right:0,bottom:0};break a}x&&a.ownerDocument.body&&(a=a.ownerDocument,e.left-=a.documentElement.clientLeft+a.body.clientLeft,e.top-=a.documentElement.clientTop+a.body.clientTop)}return new gb(e.right-e.left,e.bottom-e.top)}return new gb(b,c)}var zd={thin:2,medium:4,thick:6};
function Ad(a,b){if("none"==(a.currentStyle?a.currentStyle[b+"Style"]:null))return 0;var c=a.currentStyle?a.currentStyle[b+"Width"]:null,d;if(c in zd)d=zd[c];else if(/^\d+px?$/.test(c))d=parseInt(c,10);else{d=a.style.left;var e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;a.style.left=c;c=a.style.pixelLeft;a.style.left=d;a.runtimeStyle.left=e;d=c}return d};function Bd(a){var b;a:{a=G(a);try{b=a&&a.activeElement;break a}catch(c){}b=null}return x&&b&&"undefined"===typeof b.nodeType?null:b}function W(a,b){return!!a&&1==a.nodeType&&(!b||a.tagName.toUpperCase()==b)}function Cd(a){return Dd(a,!0)&&Ed(a)&&!(x||w||y&&!jd("1.9.2")?0:"none"==X(a,"pointer-events"))}function Fd(a){return W(a,"OPTION")?!0:W(a,"INPUT")?(a=a.type.toLowerCase(),"checkbox"==a||"radio"==a):!1}
function Gd(a){if(!Fd(a))throw new u(15,"Element is not selectable");var b="selected",c=a.type&&a.type.toLowerCase();if("checkbox"==c||"radio"==c)b="checked";return!!Hd(a,b)}function Hd(a,b){var c;if(c=pd)if(c="value"==b)if(c=W(a,"OPTION"))c=null===Id(a);c?(c=[],ub(a,c,!1),c=c.join("")):c=a[b];return c}var Jd=/[;]+(?=(?:(?:[^"]*"){2})*[^"]*$)(?=(?:(?:[^']*'){2})*[^']*$)(?=(?:[^()]*\([^()]*\))*[^()]*$)/;
function Kd(a){var b=[];s(a.split(Jd),function(a){var d=a.indexOf(":");0<d&&(a=[a.slice(0,d),a.slice(d+1)],2==a.length&&b.push(a[0].toLowerCase(),":",a[1],";"))});b=b.join("");b=";"==b.charAt(b.length-1)?b:b+";";return w?b.replace(/\w+:;/g,""):b}function Id(a){var b;b="value";return"style"==b?Kd(a.style.cssText):pd&&"value"==b&&W(a,"INPUT")?a.value:rd&&!0===a[b]?String(a.getAttribute(b)):(a=a.getAttributeNode(b))&&a.specified?a.value:null}var Ld="BUTTON INPUT OPTGROUP OPTION SELECT TEXTAREA".split(" ");
function Ed(a){var b=a.tagName.toUpperCase();return wa(Ld,b)?Hd(a,"disabled")?!1:a.parentNode&&1==a.parentNode.nodeType&&"OPTGROUP"==b||"OPTION"==b?Ed(a.parentNode):!vb(a,function(a){var b=a.parentNode;if(b&&W(b,"FIELDSET")&&Hd(b,"disabled")){if(!W(a,"LEGEND"))return!0;for(;a=void 0!=a.previousElementSibling?a.previousElementSibling:nb(a.previousSibling);)if(W(a,"LEGEND"))return!0}return!1},!0):!0}
function Md(a){for(a=a.parentNode;a&&1!=a.nodeType&&9!=a.nodeType&&11!=a.nodeType;)a=a.parentNode;return W(a)?a:null}
function X(a,b){var c=na(b);if("float"==c||"cssFloat"==c||"styleFloat"==c)c=rd?"styleFloat":"cssFloat";var d=wd(a,c)||Nd(a,c);if(null===d)d=null;else if(wa(Aa,c)){b:{var e=d.match(Da);if(e){var c=Number(e[1]),f=Number(e[2]),g=Number(e[3]),e=Number(e[4]);if(0<=c&&255>=c&&0<=f&&255>=f&&0<=g&&255>=g&&0<=e&&1>=e){c=[c,f,g,e];break b}}c=null}if(!c){b:{if(g=d.match(Ea))if(c=Number(g[1]),f=Number(g[2]),g=Number(g[3]),0<=c&&255>=c&&0<=f&&255>=f&&0<=g&&255>=g){c=[c,f,g,1];break b}c=null}if(!c)b:{c=d.toLowerCase();
f=za[c.toLowerCase()];if(!f&&(f="#"==c.charAt(0)?c:"#"+c,4==f.length&&(f=f.replace(Ba,"#$1$1$2$2$3$3")),!Ca.test(f))){c=null;break b}c=[parseInt(f.substr(1,2),16),parseInt(f.substr(3,2),16),parseInt(f.substr(5,2),16),1]}}d=c?"rgba("+c.join(", ")+")":d}return d}function Nd(a,b){var c=a.currentStyle||a.style,d=c[b];!ca(d)&&ea(c.getPropertyValue)&&(d=c.getPropertyValue(b));return"inherit"!=d?ca(d)?d:null:(c=Md(a))?Nd(c,b):null}
function Dd(a,b){function c(a){if("none"==X(a,"display"))return!1;a=Md(a);return!a||c(a)}function d(a){var b=Od(a);return 0<b.height&&0<b.width?!0:W(a,"PATH")&&(0<b.height||0<b.width)?(a=X(a,"stroke-width"),!!a&&0<parseInt(a,10)):"hidden"!=X(a,"overflow")&&ta(a.childNodes,function(a){return a.nodeType==kb||W(a)&&d(a)})}function e(a){return Pd(a)==Qd&&ua(a.childNodes,function(a){return!W(a)||e(a)})}if(!W(a))throw Error("Argument to isShown must be of type Element");if(W(a,"OPTION")||W(a,"OPTGROUP")){var f=
vb(a,function(a){return W(a,"SELECT")});return!!f&&Dd(f,!0)}return(f=Rd(a))?!!f.la&&0<f.rect.width&&0<f.rect.height&&Dd(f.la,b):W(a,"INPUT")&&"hidden"==a.type.toLowerCase()||W(a,"NOSCRIPT")||"hidden"==X(a,"visibility")||!c(a)||!b&&0==Sd(a)||!d(a)?!1:!e(a)}var Qd="hidden";
function Pd(a,b){function c(a){var b=X(a,"position");if("fixed"==b)return A=!0,a==k?null:k;for(a=Md(a);a&&a!=k&&(0==X(a,"display").lastIndexOf("inline",0)||"absolute"==b&&"static"==X(a,"position"));)a=Md(a);return a}function d(a){var b=a;if("visible"==z)if(a==k&&t)b=t;else if(a==t)return{x:"visible",y:"visible"};b={x:X(b,"overflow-x"),y:X(b,"overflow-y")};a==k&&(b.x="visible"==b.x?"auto":b.x,b.y="visible"==b.y?"auto":b.y);return b}function e(a){if(a==k){var b=(new wb(g)).C;a=!B&&mb(b)?b.documentElement:
b.body||b.documentElement;b=b.parentWindow||b.defaultView;a=x&&ab("10")&&b.pageYOffset!=a.scrollTop?new D(a.scrollLeft,a.scrollTop):new D(b.pageXOffset||a.scrollLeft,b.pageYOffset||a.scrollTop)}else a=new D(a.scrollLeft,a.scrollTop);return a}for(var f=Td(a,b),g=G(a),k=g.documentElement,t=g.body,z=X(k,"overflow"),A,q=c(a);q;q=c(q)){var l=d(q);if("visible"!=l.x||"visible"!=l.y){var v=Od(q);if(0==v.width||0==v.height)return Qd;var E=f.right<v.left,m=f.bottom<v.top;if(E&&"hidden"==l.x||m&&"hidden"==l.y)return Qd;
if(E&&"visible"!=l.x||m&&"visible"!=l.y){E=e(q);m=f.bottom<v.top-E.y;if(f.right<v.left-E.x&&"visible"!=l.x||m&&"visible"!=l.x)return Qd;f=Pd(q);return f==Qd?Qd:"scroll"}E=f.left>=v.left+v.width;v=f.top>=v.top+v.height;if(E&&"hidden"==l.x||v&&"hidden"==l.y)return Qd;if(E&&"visible"!=l.x||v&&"visible"!=l.y){if(A&&(l=e(q),f.left>=k.scrollWidth-l.x||f.right>=k.scrollHeight-l.y))return Qd;f=Pd(q);return f==Qd?Qd:"scroll"}}}return"none"}var Ud=RegExp("matrix\\(([\\d\\.\\-]+), ([\\d\\.\\-]+), ([\\d\\.\\-]+), ([\\d\\.\\-]+), ([\\d\\.\\-]+)(?:px)?, ([\\d\\.\\-]+)(?:px)?\\)");
function Od(a){function b(a){var c=F(G(a)).getComputedStyle(a,null).MozTransform.match(Ud);if(c){var d=parseFloat(c[1]),e=parseFloat(c[2]),A=parseFloat(c[3]),q=parseFloat(c[4]),l=parseFloat(c[5]),c=parseFloat(c[6]),v=f.left+f.width,E=f.top+f.height,m=f.left*d,d=v*d,ra=f.left*e,e=v*e,cb=f.top*A,A=E*A,db=f.top*q,v=E*q,E=m+cb+l,q=ra+db+c,cb=d+cb+l,db=e+db+c,m=m+A+l,ra=ra+v+c,l=d+A+l,c=e+v+c;f.left=Math.min(E,cb,m,l);f.top=Math.min(q,db,ra,c);l=Math.max(E,cb,m,l);c=Math.max(q,db,ra,c);f.width=l-f.left;
f.height=c-f.top}(a=Md(a))&&b(a)}var c=Rd(a);if(c)return c.rect;if(W(a,"HTML"))return c=G(a),a=lb(F(c)||window),new V(0,0,a.width,a.height);var d;try{d=a.getBoundingClientRect()}catch(e){return new V(0,0,0,0)}var f=new V(d.left,d.top,d.right-d.left,d.bottom-d.top);x&&a.ownerDocument.body&&(c=G(a),f.left-=c.documentElement.clientLeft+c.body.clientLeft,f.top-=c.documentElement.clientTop+c.body.clientTop);w&&(0==f.width&&0<a.offsetWidth&&(f.width=a.offsetWidth),0==f.height&&0<a.offsetHeight&&(f.height=
a.offsetHeight));y&&!jd(12)&&b(a);return f}
function Rd(a){var b=W(a,"MAP");if(!b&&!W(a,"AREA"))return null;var c=b?a:W(a.parentNode,"MAP")?a.parentNode:null,d=null,e=null;if(c&&c.name&&(d=U.Ja('/descendant::*[@usemap = "#'+c.name+'"]',G(c)))&&(e=Od(d),!b&&"default"!=a.shape.toLowerCase())){var f=Vd(a);a=Math.min(Math.max(f.left,0),e.width);b=Math.min(Math.max(f.top,0),e.height);c=Math.min(f.width,e.width-a);f=Math.min(f.height,e.height-b);e=new V(a+e.left,b+e.top,c,f)}return{la:d,rect:e||new V(0,0,0,0)}}
function Vd(a){var b=a.shape.toLowerCase();a=a.coords.split(",");if("rect"==b&&4==a.length){var b=a[0],c=a[1];return new V(b,c,a[2]-b,a[3]-c)}if("circle"==b&&3==a.length)return b=a[2],new V(a[0]-b,a[1]-b,2*b,2*b);if("poly"==b&&2<a.length){for(var b=a[0],c=a[1],d=b,e=c,f=2;f+1<a.length;f+=2)b=Math.min(b,a[f]),d=Math.max(d,a[f]),c=Math.min(c,a[f+1]),e=Math.max(e,a[f+1]);return new V(b,c,d-b,e-c)}return new V(0,0,0,0)}
function Td(a,b){var c;c=Od(a);c=new vd(c.top,c.left+c.width,c.top+c.height,c.left);if(b){var d=b instanceof V?b:new V(b.x,b.y,1,1);c.left=Math.min(Math.max(c.left+d.left,c.left),c.right);c.top=Math.min(Math.max(c.top+d.top,c.top),c.bottom);c.right=Math.min(Math.max(c.left+d.width,c.left),c.right);c.bottom=Math.min(Math.max(c.top+d.height,c.top),c.bottom)}return c}
function Sd(a){if(td){if("relative"==X(a,"position"))return 1;a=X(a,"filter");return(a=a.match(/^alpha\(opacity=(\d*)\)/)||a.match(/^progid:DXImageTransform.Microsoft.Alpha\(Opacity=(\d*)\)/))?Number(a[1])/100:1}return Wd(a)}function Wd(a){var b=1,c=X(a,"opacity");c&&(b=Number(c));(a=Md(a))&&(b*=Wd(a));return b};function Xd(a,b){this.d=la.document.documentElement;this.m=null;var c=Bd(this.d);c&&Yd(this,c);this.R=a||new Zd;this.ia=b||new $d}Xd.prototype.v=h("d");function Yd(a,b){a.d=b;a.m=W(b,"OPTION")?vb(b,function(a){return W(a,"SELECT")}):null}
Xd.prototype.O=function(a,b,c,d,e,f,g){if(!f&&!Cd(this.d))return!1;if(d&&ae!=a&&be!=a)throw new u(12,"Event type does not allow related target: "+a);b={clientX:b.x,clientY:b.y,button:c,altKey:0!=(this.R.T&4),ctrlKey:0!=(this.R.T&2),shiftKey:0!=(this.R.T&1),metaKey:0!=(this.R.T&8),wheelDelta:e||0,relatedTarget:d||null};g=g||1;c=this.d;a!=ce&&a!=de&&g in ee?c=ee[g]:this.m&&(c=fe(this,a));return c?this.ia.O(c,a,b):!0};
Xd.prototype.J=function(a,b,c,d,e,f,g,k){if(!k&&!Cd(this.d))return!1;if(g&&ge!=a&&he!=a)throw new u(12,"Event type does not allow related target: "+a);b={clientX:b.x,clientY:b.y,button:c,altKey:!1,ctrlKey:!1,shiftKey:!1,metaKey:!1,relatedTarget:g||null,width:0,height:0,Ia:0,rotation:0,pointerId:d,La:0,Ma:0,pointerType:e,Aa:f};c=this.m?fe(this,a):this.d;ee[d]&&(c=ee[d]);d=F(G(this.d));var t;d&&a==ie&&(t=d.Element.prototype.msSetPointerCapture,d.Element.prototype.msSetPointerCapture=function(a){ee[a]=
this});a=c?this.ia.J(c,a,b):!0;t&&(d.Element.prototype.msSetPointerCapture=t);return a};function fe(a,b){if(x)switch(b){case ae:case ge:return null;case je:case ke:case