/* Copyright 2007 Google Inc. */ (function() { var ca=navigator,L=Error,v=undefined,qa=encodeURIComponent,H=String,I=window,z=Number,W=Function,w=Math,G=Array;function U(b,c){return b.toString=c}function T(b,c){return b.length=c}function $(b,c){return b.relatedTarget=c}function N(b,c){return b.currentTarget=c}function Z(b,c){return b.left=c}function pa(b,c){return b.target=c}function aa(b,c){return b.remove=c}function oa(b,c){return b.keyCode=c}function V(b,c){return b.type=c}function S(b,c){return b.contains=c}function na(b,c){return b.clear= c}function ba(b,c){return b.visibility=c}var ma="scrollTop",x="object",u="global",j="length",_P="prototype",s="width",P="nodeType",J="document",ja="offsetParent",n="userAgent",l="style",X="capture",ia="nodeName",E="body",r="left",A="target",ga="lastChild",F="focus",fa="keyCode",O="firstChild",la="scrollLeft",da="compatMode",C="bottom",B="type",ea="defaultView",K="parentNode",ha="nextSibling",ka="offsetTop",t="height",Q="clientX",R="clientY",Y="documentElement",D="right",a=a||{};a.global=this;a.La= null;a.jd=function(b,c){var d=b.split("."),e=a[u],g;while(g=d.shift()){if(!d[j]&&a.isDef(c)){e[g]=c}else if(e[g]){e=e[g]}else{e=(e[g]={})}}};a.getObjectByName=function(b){var c=b.split("."),d=a[u];for(var e;e=c.shift();){if(d[e]){d=d[e]}else{return null}}return d};a.globalize=function(b,c){var d=c||a[u];for(var e in b){d[e]=b[e]}};a.V={UNDEFINED:"undefined",NUMBER:"number",STRING:"string",BOOLEAN:"boolean",FUNCTION:"function",OBJECT:"object"};a.isDef=function(b){return typeof b!=a.V.UNDEFINED};a.isArray= function(b){return b instanceof G||a.isObject(b)&&typeof b.join==a.V.FUNCTION&&typeof b.reverse==a.V.FUNCTION};a.isArrayLike=function(b){return a.isObject(b)&&typeof b[j]==a.V.NUMBER};a.isString=function(b){return typeof b==a.V.STRING};a.isFunction=function(b){return typeof b==a.V.FUNCTION||!(!(b&&b.call))};a.isObject=function(b){return b!=null&&typeof b==a.V.OBJECT};a.getHashCode=function(b){if(b.hasOwnProperty&&b.hasOwnProperty(a.sa)){return b[a.sa]}if(!b[a.sa]){b[a.sa]=++a.od}return b[a.sa]};a.sa= "closure_hashCode_";a.od=0;a.bind=function(b,c){var d=b.Zc;if(arguments[j]>2){var e=G[_P].slice.call(arguments,2);if(d){e.unshift.apply(e,d)}d=e}c=b.ad||c;b=b.$c||b;var g,f=c||a[u];if(d){g=function(){var h=G[_P].slice.call(arguments);h.unshift.apply(h,d);return b.apply(f,h)}}else{g=function(){return b.apply(f,arguments)}}g.Zc=d;g.ad=c;g.$c=b;return g};a.mixin=function(b,c){for(var d in c){b[d]=c[d]}};a.now=function(){return(new Date).getTime()};a.globalEval=function(b){if(a[u].execScript){a[u].execScript(b, "JavaScript")}else if(a[u].eval){if(a.La==null){a[u].eval("var _et_ = 1;");if(typeof a[u]._et_!="undefined"){delete a[u]._et_;a.La=true}else{a.La=false}}if(a.La){a[u].eval(b)}else{var c=a[u][J],d=c.createElement("script");V(d,"text/javascript");d.defer=false;d.text=b;c[E].appendChild(d);c[E].removeChild(d)}}else{throw L("goog.globalEval not available");}};a.exportSymbol=function(b,c){a.jd(b,c)};if(!W[_P].apply){W[_P].apply=function(b,c){var d=[],e,g;if(!b)b=a[u];if(!c)c=[];for(var f=0;f1){var c=G[_P].slice.call(arguments,1);c.unshift(this,b);return a.bind.apply(null,c)}else{return a.bind(this,b)}};W[_P].inherits=function(b){a.inherits(this,b)};a.inherits=function(b,c){function d(){}d.prototype=c[_P];b.U=c[_P];b.prototype=new d;b[_P].constructor=b};W[_P].mixin=function(b){a.mixin(this[_P], b)};a.Disposable=function(){};a.Disposable[_P].Ka=false;a.Disposable[_P].L=function(){return this.Ka};a.Disposable[_P].dispose=function(){if(!this.Ka){this.Ka=true}};a.events={};a.events.Event=function(b,c){V(this,b);pa(this,c);N(this,this[A])};a.events.Event.inherits(a.Disposable);a.events.Event[_P].F=false;a.events.Event[_P].Z=true;a.events.Event[_P].stopPropagation=function(){this.F=true};a.events.Event[_P].preventDefault=function(){this.Z=false};a.string={};a.string.canonicalizeNewlines=function(b){return b.replace(/(\r\n|\r|\n)/g,"\n")};a.string.trimLeft=function(b){return b.replace(/^\s+/,"")};a.string.hd=/^[a-zA-Z0-9\-_.!~*'()]*$/;a.string.urlEncode=function(b){b=H(b);if(!a.string.hd.test(b)){return qa(b)}return b};a.string.urlDecode=function(b){return decodeURIComponent(b.replace(/\+/g," "))};a.string.htmlEscape=function(b,c){if(c){return b.replace(a.string.ac,a.string.bc).replace(a.string.Dc,a.string.Ec).replace(a.string.xc,a.string.yc).replace(a.string.Jc, a.string.Kc)}else{if(!a.string.Xc.test(b))return b;if(b.indexOf(a.string.Yc)!=-1){b=b.replace(a.string.ac,a.string.bc)}if(b.indexOf(a.string.qd)!=-1){b=b.replace(a.string.Dc,a.string.Ec)}if(b.indexOf(a.string.md)!=-1){b=b.replace(a.string.xc,a.string.yc)}if(b.indexOf(a.string.vd)!=-1){b=b.replace(a.string.Jc,a.string.Kc)}return b}};a.string.Yc="&";a.string.qd="<";a.string.md=">";a.string.vd='"';a.string.bc="&";a.string.Ec="<";a.string.yc=">";a.string.Kc=""";a.string.ac=/&/g;a.string.Dc= //g;a.string.Jc=/\"/g;a.string.Xc=/[&<>\"]/;a.string.getRandomString=function(){return w.floor(w.random()*2147483648).toString(36)+(w.floor(w.random()*2147483648)^(new Date).getTime()).toString(36)};a.string.compareVersions=function(b,c){var d=0,e=H(b).split("."),g=H(c).split("."),f=w.max(e[j],g[j]);for(var h=0;d==0&&hc){return 1}return 0};a.userAgent={};(function(){var b=false,c=false,d=false,e=false,g=false,f=false,h=false,i=false,p=false,m=false,k=false,q="";if(a[u].navigator){var o=ca[n];b=typeof opera!="undefined";c=!b&&o.indexOf("MSIE")!=-1;d=!b&&o.indexOf("WebKit")!=-1;k=d&&o.indexOf("Mobile")!=-1;e=!b&&ca.product=="Gecko"&&!d;g=e&&ca.vendor=="Camino";f=!b&&o.indexOf("Konqueror")!=-1;h=f||d;var y,M;if(b){y=opera.version()}else{if(e){M=/rv\:([^\);]+)(\)|;)/}else if(c){M=/MSIE\s+([^\);]+)(\)|;)/}else if(d){M=/WebKit\/(\S+)/}else if(f){M= /Konqueror\/([^\);]+)(\)|;)/}if(M){M.test(o);y=RegExp.$1}}q=ca.platform;i=q.indexOf("Mac")!=-1;p=q.indexOf("Win")!=-1;m=q.indexOf("Linux")!=-1}a[n].OPERA=b;a[n].IE=c;a[n].GECKO=e;a[n].CAMINO=g;a[n].SAFARI=d;a[n].VERSION=y;a[n].MOBILE=k})();a[n].compare=function(b,c){return a.string.compareVersions(b,c)};a[n].isVersion=function(b){return a[n].compare(a[n].VERSION,b)>=0};a.events.BrowserEvent=function(b,c){if(b){this.init(b,c)}};a.events.BrowserEvent.inherits(a.events.Event);a.events.BrowserEvent.xd=[1,4,2];V(a.events.BrowserEvent[_P],null);pa(a.events.BrowserEvent[_P],null);N(a.events.BrowserEvent[_P],null);$(a.events.BrowserEvent[_P],null);a.events.BrowserEvent[_P].offsetX=0;a.events.BrowserEvent[_P].offsetY=0;a.events.BrowserEvent[_P].clientX=0;a.events.BrowserEvent[_P].clientY=0;a.events.BrowserEvent[_P].screenX=0;a.events.BrowserEvent[_P].screenY=0;a.events.BrowserEvent[_P].button= 0;oa(a.events.BrowserEvent[_P],0);a.events.BrowserEvent[_P].charCode=0;a.events.BrowserEvent[_P].ctrlKey=false;a.events.BrowserEvent[_P].altKey=false;a.events.BrowserEvent[_P].shiftKey=false;a.events.BrowserEvent[_P].metaKey=false;a.events.BrowserEvent[_P].s=null;a.events.BrowserEvent[_P].init=function(b,c){V(this,b[B]);pa(this,b[A]||b.srcElement);N(this,c);if(b.relatedTarget){$(this,b.relatedTarget)}else if(this[B]==a.events.EventType.MOUSEOVER){$(this,b.fromElement)}else if(this[B]==a.events.EventType.MOUSEOUT){$(this, b.toElement)}else{$(this,null)}this.offsetX=typeof b.layerX=="number"?b.layerX:b.offsetX;this.offsetY=typeof b.layerY=="number"?b.layerY:b.offsetY;this.clientX=typeof b[Q]=="number"?b[Q]:b.pageX;this.clientY=typeof b[R]=="number"?b[R]:b.pageY;this.screenX=b.screenX||0;this.screenY=b.screenY||0;this.button=b.button;oa(this,b[fa]||0);this.charCode=b.charCode||(this[B]==a.events.EventType.KEYPRESS?b[fa]:0);this.ctrlKey=b.ctrlKey;this.altKey=b.altKey;this.shiftKey=b.shiftKey;this.metaKey=b.metaKey;this.s= b;this.Z=null;this.F=null};a.events.BrowserEvent[_P].stopPropagation=function(){this.F=true;if(this.s.stopPropagation){this.s.stopPropagation()}else{this.s.cancelBubble=true}};a.events.BrowserEvent[_P].preventDefault=function(){this.Z=false;if(!this.s.preventDefault){this.s.returnValue=false;try{oa(this.s,-1)}catch(b){}}else{this.s.preventDefault()}};a.events.BrowserEvent[_P].dispose=function(){if(!this.L()){a.events.Event[_P].dispose.call(this);this.s=null}};a.events.Listener=function(){};a.events.Listener.bd=0;a.events.Listener[_P].Ta=null;a.events.Listener[_P].listener=null;a.events.Listener[_P].proxy=null;a.events.Listener[_P].src=null;V(a.events.Listener[_P],null);a.events.Listener[_P].capture=null;a.events.Listener[_P].handler=null;a.events.Listener[_P].key=0;a.events.Listener[_P].removed=false;a.events.Listener[_P].X=false;a.events.Listener[_P].init=function(b,c,d,e,g,f){if(a.isFunction(b)){this.Ta=true}else if(b&&b.z&&a.isFunction(b.z)){this.Ta= false}else{throw L("Invalid listener argument");}this.listener=b;this.proxy=c;this.src=d;V(this,e);this.capture=!(!g);this.handler=f;this.X=false;this.key=++a.events.Listener.bd;this.removed=false};a.events.Listener[_P].z=function(b){if(this.Ta){return this.listener.call(this.handler||this.src,b)}return this.listener.z.call(this.listener,b)};a.array={};a.array.indexOf=function(b,c,d){if(b.indexOf){return b.indexOf(c,d)}if(G.indexOf){return G.indexOf(b,c,d)}if(d==null){d=0}else if(d<0){d=w.max(0,b[j]+d)}for(var e=d;e-1});a.array.insert=function(b,c){if(!a.array.contains(b,c)){b.push(c)}};aa(a.array,function(b,c){var d=a.array.indexOf(b,c),e;if(e=d!=-1){a.array.removeAt(b,d)}return e});a.array.removeAt=function(b,c){return G[_P].splice.call(b,c,1)[j]==1};a.array.clone=function(b){if(a.isArray(b)){return b.concat()}else{var c=[];for(var d=0,e=b[j];d=0;m--){var k=p[m];if((f||c==k[B])&&(h||d==k[X])){a.events.unlistenByKey(k.key);e++}}}}else{a[x].forEach(a.events.I,function(q){for(var o=q[j]-1;o>=0;o--){var y=q[o];if((f||c==y[B])&&(h||d==y[X])){a.events.unlistenByKey(y.key);e++}}})}return e};a.events.qc=function(b,c,d){var e=a.events.i;if(c in e){e=e[c];if(d in e){e=e[d];var g=a.getHashCode(b);if(e[g]){return e[g]}}}return null};a.events.getListener=function(b,c,d,e,g){var f=!(!e),h=a.events.qc(b,c,f);if(h){for(var i= 0;i=0;k--){N(c, g[k]);e&=a.events.fireListeners(g[k],c[B],true,c)&&c.Z!=false}}if(p){if(i){for(var k=0;!c.F&&k=0;o--){N(m,k[o]);f&=a.events.fireListeners(k[o],e,true,m)}for(var o=0;!m.F&&ob.top){d.push(new a.math.Rect(b[r],b.top,b[s],c.top-b.top));e=c.top}if(pb[r]){d.push(new a.math.Rect(b[r],e,c[r]-b[r],g))}if(i=b[r]&&c.x<=b[D]&&c.y>=b.top&&c.y<=b[C]});a.math.Box.distance=function(b,c){if(c.x>=b[r]&&c.x<=b[D]){if(c.y>=b.top&&c.y<=b[C]){return 0}return c.y=b.top&&c.y<=b[C]){return c.x0};a.dom.Wc=a[n].SAFARI&&a[n].compare(a[n].VERSION,"521")<=0;S(a.dom,function(b,c){if(typeof b.contains!="undefined"&&!a.dom.Wc&&c[P]==a.dom.NodeType.ELEMENT){return b==c||b.contains(c)}if(typeof b.compareDocumentPosition!="undefined"){return b==c||Boolean(b.compareDocumentPosition(c)&16)}while(c&&b!=c){c=c[K]}return c==b});a.dom.l=function(b){return b[P]== a.dom.NodeType.DOCUMENT?b:b.ownerDocument||b[J]};a.dom.Ma=function(b){return a[n].SAFARI?b[J]||b.contentWindow[J]:b.contentDocument||b.contentWindow[J]};a.dom.db=function(b,c){if("textContent"in b){b.textContent=c}else if(b[O]&&b[O][P]==a.dom.NodeType.TEXT){while(b[ga]!=b[O]){b.removeChild(b[ga])}b[O].data=c}else{while(b.hasChildNodes()){b.removeChild(b[ga])}var d=a.dom.l(b);b.appendChild(d.createTextNode(c))}};a.dom.pb=function(b,c){var d=[];a.dom.rb(b,c,d,true);return d[j]?d[0]:v};a.dom.qb=function(b, c){var d=[];a.dom.rb(b,c,d,false);return d};a.dom.rb=function(b,c,d,e){if(b!=null){for(var g=0,f;f=b.childNodes[g];g++){if(c(f)){d.push(f);if(e){return}}a.dom.rb(f,c,d,e)}}};a.dom.TAGS_TO_IGNORE={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1};a.dom.PREDEFINED_TAG_VALUES={IMG:" ",BR:"\n"};a.dom.ya=function(b){if(a[n].IE&&"innerText"in b){return a.string.canonicalizeNewlines(b.innerText)}var c=[];a.dom.vc(b,c,true);var d=c.join("").replace(/ +/g," ");if(d!=" "){d=d.replace(/^\s*/,"")}return d};a.dom.vc= function(b,c,d){if(b[ia]in a.dom.TAGS_TO_IGNORE){}else if(b[P]==a.dom.NodeType.TEXT){if(d){c.push(H(b.nodeValue).replace(/(\r\n|\r|\n)/g,""))}else{c.push(b.nodeValue)}}else if(b[ia]in a.dom.PREDEFINED_TAG_VALUES){c.push(a.dom.PREDEFINED_TAG_VALUES[b[ia]])}else{var e=b[O];while(e){a.dom.vc(e,c,d);e=e[ha]}}};a.dom.xb=function(b){return a.dom.ya(b)[j]};a.dom.yb=function(b,c){var d=c||a.dom.l(b)[E],e=[];while(b&&b!=d){var g=b;while(g=g.previousSibling){e.unshift(a.dom.ya(g))}b=b[K]}return a.string.trimLeft(e.join("")).replace(/ +/g, " ")[j]};a.dom.DomHelper=function(b){this.Y=b||a[u][J]||document};a.dom.DomHelper[_P].xa=a.dom.xa;a.dom.DomHelper[_P].M=function(){return this.Y};a.dom.DomHelper[_P].w=function(b){if(a.isString(b)){return this.Y.getElementById(b)}else{return b}};a.dom.DomHelper[_P].ab=a.dom.ab;a.dom.DomHelper[_P].Pa=a.dom.Pa;a.dom.DomHelper[_P].ib=function(b,c){if(a[n].IE&&c&&c.name){b="<"+b+' name="'+a.string.htmlEscape(c.name)+'">'}var d=this.createElement(b);if(c){a.dom.ab(d,c)}if(arguments[j]>2){function e(h){if(h){this.appendChild(d, a.isString(h)?this.createTextNode(h):h)}}for(var g=2;g 2*this.c){this.Ha()}return true}return false});a.structs.Map[_P].Ha=function(){if(this.c!=this.b[j]){var b=0,c=0;while(b0&&b< this.Aa*a.Timer.intervalScale){this.J=this.Fa.setTimeout(this.gb,this.Aa-b);return}this.hc();if(this.enabled){this.J=this.Fa.setTimeout(this.gb,this.Aa);this.Kb=a.now()}}};a.Timer[_P].hc=function(){this.dispatchEvent(a.Timer.TICK)};a.Timer[_P].start=function(){this.enabled=true;if(!this.J){this.J=this.Fa.setTimeout(this.gb,this.Aa);this.Kb=a.now()}};a.Timer[_P].stop=function(){this.enabled=false;this.Fa.clearTimeout(this.J);this.J=null};a.Timer[_P].dispose=function(){if(!this.L()){a.events.EventTarget[_P].dispose.call(this); this.stop();this.Fa=null}};a.Timer.TICK="tick";a.Timer.X=function(b,c,d){if(a.isFunction(b)){if(d){b=a.bind(b,d)}}else if(b&&typeof b.z=="function"){b=a.bind(b.z,b)}else{throw L("Invalid listener argument");}return a.Timer.defaultTimerObject.setTimeout(b,c||0)};na(a.Timer,function(b){a.Timer.defaultTimerObject.clearTimeout(b)});a.style={};a[l].getComputedStyle=function(b,c){var d=a.dom.l(b);if(d[ea]&&d[ea].getComputedStyle){var e=d[ea].getComputedStyle(b,"");if(e){return e[c]}}return null};a[l].getCascadedStyle=function(b,c){return b.currentStyle?b.currentStyle[c]:null};a[l].Oa=function(b,c){return a[l].getComputedStyle(b,c)||a[l].getCascadedStyle(b,c)||b[l][c]};a[l].setPosition=function(b,c,d){var e,g;if(c instanceof a.math.Coordinate){e=c.x;g=c.y}else{e=c;g=d}Z(b[l],typeof e=="number"?w.round(e)+"px":e);b[l].top=typeof g== "number"?w.round(g)+"px":g};a[l].getClientViewportElement=function(b){var c;if(b){if(b[P]==a.dom.NodeType.DOCUMENT){c=b}else{c=a.dom.l(b)}}else{c=a.dom.M()}if(a[n].IE&&c[da]!="CSS1Compat"){return c[E]}return c[Y]};a[l].getPageOffset=function(b){var c=a.dom.l(b),d=a[n].GECKO&&c.getBoxObjectFor&&a[l].Oa(b,"position")=="absolute"&&(b[l].top==""||b[l][r]=="");if(typeof a[l].Yb=="undefined"){a[l].Yb=a[n].CAMINO&&!a[n].isVersion("1.8.0.11")}var e=new a.math.Coordinate(0,0),g=a[l].getClientViewportElement(c); if(b==g){return e}var f=null,h;if(b.getBoundingClientRect){h=b.getBoundingClientRect();var i=g[ma],p=g[la];e.x=h[r]+p;e.y=h.top+i}else if(c.getBoxObjectFor&&!d&&!a[l].Yb){h=c.getBoxObjectFor(b);var m=c.getBoxObjectFor(g);e.x=h.screenX-m.screenX;e.y=h.screenY-m.screenY}else{e.x=b.offsetLeft;e.y=b[ka];f=b[ja];if(f!=b){while(f){e.x+=f.offsetLeft;e.y+=f[ka];f=f[ja]}}if(a[n].OPERA||a[n].SAFARI&&a[l].Oa(b,"position")=="absolute"){e.y-=c[E][ka]}f=b[ja];while(f&&f!=c[E]){e.x-=f[la];if(!a[n].OPERA||f.tagName!= "TR"){e.y-=f[ma]}f=f[ja]}}return e};a[l].getSize=function(b){if(a[l].Oa(b,"display")!="none"){return new a.math.Size(b.offsetWidth,b.offsetHeight)}var c=b[l],d=c.visibility,e=c.position;ba(c,"hidden");c.position="absolute";c.display="";var g=b.offsetWidth,f=b.offsetHeight;c.display="none";c.position=e;ba(c,d);return new a.math.Size(g,f)};a[l].getBounds=function(b){var c=a[l].getPageOffset(b),d=a[l].getSize(b);return new a.math.Rect(c.x,c.y,d[s],d[t])};a[l].showElement=function(b,c){b[l].display=c? "":"none"};a[l].isRightToLeft=function(b){return"rtl"==a[l].Oa(b,"direction")};a.Uri=function(b,c){var d;if(b instanceof a.Uri){this.T(c==null?b.pc():c);this.cb(b.uc());this.eb(b.wc());this.Xa(b.mc());this.$a(b.Ab());this.Za(b.sc());this.bb(b.tc().clone());this.Ya(b.oc())}else if(b&&(d=H(b).match(a.Uri.ld()))){this.T(!(!c));this.cb(d[1],true);this.eb(d[2],true);this.Xa(d[3],true);this.$a(d[4]);this.Za(d[5],true);this.bb(d[6]);this.Ya(d[7],true)}else{this.T(!(!c));this.m=new a.Uri.QueryData(null,this,this.o)}};a.Uri.RANDOM_PARAM="zx";a.Uri[_P].H="";a.Uri[_P].ra="";a.Uri[_P].ba= "";a.Uri[_P].la=null;a.Uri[_P].ka="";a.Uri[_P].m=null;a.Uri[_P].ca="";a.Uri[_P].Ac=false;a.Uri[_P].o=false;U(a.Uri[_P],function(){if(this.h){return this.h}var b=[];if(this.H){b.push(a.Uri.ob(this.H,a.Uri.Lc),":")}if(this.ba){b.push("//");if(this.ra){b.push(a.Uri.ob(this.ra,a.Uri.Lc),"@")}b.push(a.Uri.ic(this.ba));if(this.la!=null){b.push(":",H(this.Ab()))}}if(this.ka){b.push(a.Uri.ob(this.ka,a.Uri.wd))}var c=H(this.m);if(c){b.push("?",c)}if(this.ca){b.push("#",a.Uri.ic(this.ca))}return this.h=b.join("")}); a.Uri[_P].clone=function(){return new a.Uri.create(this.H,this.ra,this.ba,this.la,this.ka,this.m.clone(),this.ca,this.o)};a.Uri[_P].uc=function(){return this.H};a.Uri[_P].cb=function(b,c){this.v();delete this.h;this.H=c?a.Uri.va(b):b;if(this.H){this.H=this.H.replace(/:$/,"")}return this};a.Uri[_P].wc=function(){return this.ra};a.Uri[_P].eb=function(b,c){this.v();delete this.h;this.ra=c?a.Uri.va(b):b;return this};a.Uri[_P].mc=function(){return this.ba};a.Uri[_P].Xa=function(b,c){this.v();delete this.h; this.ba=c?a.Uri.va(b):b;return this};a.Uri[_P].Ab=function(){return this.la};a.Uri[_P].$a=function(b){this.v();delete this.h;if(b){b=z(b);if(isNaN(b)||b<0){throw L("Bad port number "+b);}this.la=b}else{this.la=null}return this};a.Uri[_P].sc=function(){return this.ka};a.Uri[_P].Za=function(b,c){this.v();delete this.h;this.ka=c?a.Uri.va(b):b;return this};a.Uri[_P].bb=function(b){this.v();delete this.h;if(b instanceof a.Uri.QueryData){this.m=b;this.m.Xb=this;this.m.T(this.o)}else{this.m=new a.Uri.QueryData(b, this,this.o)}return this};a.Uri[_P].tc=function(){return this.m};a.Uri[_P].Tb=function(b,c){this.v();delete this.h;this.m.set(b,c);return this};a.Uri[_P].oc=function(){return this.ca};a.Uri[_P].Ya=function(b,c){this.v();delete this.h;this.ca=c?a.Uri.va(b):b;return this};a.Uri[_P].v=function(){if(this.Ac){throw L("Tried to modify a read-only Uri");}};a.Uri[_P].T=function(b){this.o=b;if(this.m){this.m.T(b)}};a.Uri[_P].pc=function(){return this.o};a.Uri.create=function(b,c,d,e,g,f,h,i){var p=new a.Uri(null, i);p.cb(b);p.eb(c);p.Xa(d);p.$a(e);p.Za(g);p.bb(f);p.Ya(h);return p};a.Uri.va=function(b){return b?a.string.urlDecode(b):""};a.Uri.ic=function(b){if(a.isString(b)){return qa(b)}return null};a.Uri.gd=/^[a-zA-Z0-9\-_.!~*'():\/;?]*$/;a.Uri.ob=function(b,c){var d=null;if(a.isString(b)){d=b;if(!a.Uri.gd.test(d)){d=encodeURI(b)}if(d.search(c)>=0){d=d.replace(c,a.Uri.fd)}}return d};a.Uri.fd=function(b){var c=b.charCodeAt(0);return"%"+(c>>4&15).toString(16)+(c&15).toString(16)};a.Uri.Qb=null;a.Uri.ld=function(){if(!a.Uri.Qb){a.Uri.Qb= /^(?:([^:\/?#]+):)?(?:\/\/(?:([^\/?#]*)@)?([^\/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/}return a.Uri.Qb};a.Uri.Lc=/[#\/\?@]/g;a.Uri.wd=/[\#\?]/g;a.Uri.QueryData=function(b,c,d){this.f=new a.structs.Map;this.Xb=c;this.o=!(!d);if(b){var e=b.split("&");for(var g=0;g1?a.string.urlDecode(f[1]):"")}}};a.Uri.QueryData[_P].c=0;a.Uri.QueryData[_P].ea=function(){return this.c};a.Uri.QueryData[_P].add=function(b, c){this.ga();b=this.N(b);if(!this.q(b)){this.f.set(b,c)}else{var d=this.f.get(b);if(a.isArray(d)){d.push(c)}else{this.f.set(b,[d,c])}}this.c++;return this};aa(a.Uri.QueryData[_P],function(b){b=this.N(b);if(this.f.q(b)){this.ga();var c=this.f.get(b);if(a.isArray(c)){this.c-=c[j]}else{this.c--}return this.f.remove(b)}return false});na(a.Uri.QueryData[_P],function(){this.ga();this.f.clear();this.c=0});a.Uri.QueryData[_P].ha=function(){return this.c==0};a.Uri.QueryData[_P].q=function(b){b=this.N(b);return this.f.q(b)}; a.Uri.QueryData[_P].j=function(){var b=this.f.e(),c=this.f.j(),d=[];for(var e=0;e0){b.push("&")}b.push(f, "=",a.string.urlEncode(h[i]));c++}}else{if(c>0){b.push("&")}b.push(f,"=",a.string.urlEncode(h));c++}}return this.h=b.join("")});a.Uri.QueryData[_P].ga=function(){delete this.h;if(this.Xb){delete this.Xb.h}};a.Uri.QueryData[_P].clone=function(){var b=new a.Uri.QueryData;b.f=this.f.clone();return b};a.Uri.QueryData[_P].N=function(b){var c=H(b);if(this.o){c=c.toLowerCase()}return c};a.Uri.QueryData[_P].T=function(b){var c=b&&!this.o;if(c){this.ga();a.structs.forEach(this.f,function(d,e,g){var f=e.toLowerCase(); if(e!=f){this.remove(e);this.add(f,d)}},this)}this.o=b};a.Uri.QueryData[_P].extend=function(b){for(var c=0;cq[s]){if(i&a.ui.Popup.Overflow.ADJUST_X){b.x-=b.x+k[s]-o.x-q[s]}else if(i& a.ui.Popup.Overflow.FAIL_X){return false}}if(b.y+k[t]-o.y>q[t]){if(i&a.ui.Popup.Overflow.ADJUST_Y){b.y-=b.y+k[t]-o.y-q[t]}else if(i&a.ui.Popup.Overflow.FAIL_Y){return false}}if(b.y-o.y<0){if(i&a.ui.Popup.Overflow.ADJUST_Y){b.y-=o.y}else if(i&a.ui.Popup.Overflow.FAIL_Y){return false}}if(b.x-o.x<0){if(i&a.ui.Popup.Overflow.ADJUST_X){b.x-=o.x}else if(i&a.ui.Popup.Overflow.FAIL_X){return false}}}a[l].setPosition(c,b);return true};a.ui.Popup.nc=function(b,c){var d=a[l].isRightToLeft(b);switch(c){case a.ui.Popup.Corner.TOP_LEFT:case a.ui.Popup.Corner.TOP_RIGHT:case a.ui.Popup.Corner.BOTTOM_LEFT:case a.ui.Popup.Corner.BOTTOM_RIGHT:return c; case a.ui.Popup.Corner.TOP_START:return d?a.ui.Popup.Corner.TOP_RIGHT:a.ui.Popup.Corner.TOP_LEFT;case a.ui.Popup.Corner.TOP_END:return d?a.ui.Popup.Corner.TOP_LEFT:a.ui.Popup.Corner.TOP_RIGHT;case a.ui.Popup.Corner.BOTTOM_START:return d?a.ui.Popup.Corner.BOTTOM_RIGHT:a.ui.Popup.Corner.BOTTOM_LEFT;case a.ui.Popup.Corner.BOTTOM_END:return d?a.ui.Popup.Corner.BOTTOM_LEFT:a.ui.Popup.Corner.BOTTOM_RIGHT}};a.ui.Popup.AbstractPosition=function(){};a.ui.Popup.AbstractPosition[_P].reposition=function(b,c, d){};a.ui.Popup.AnchoredPosition=function(b,c){this.element=b;this.corner=c};a.ui.Popup.AnchoredPosition.inherits(a.ui.Popup.AbstractPosition);a.ui.Popup.AnchoredPosition[_P].reposition=function(b,c,d){a.ui.Popup.positionPopup(this.element,this.corner,b,c,null,d)};a.ui.Popup.ViewPortPosition=function(b,c){if(b instanceof a.math.Coordinate){this.coordinate=b}else{this.coordinate=new a.math.Coordinate(b,c)}};a.ui.Popup.ViewPortPosition.inherits(a.ui.Popup.AbstractPosition);a.ui.Popup.ViewPortPosition[_P].reposition= function(b,c,d){var e=a[l].getClientViewportElement(b);a.ui.Popup.positionPopup(e,a.ui.Popup.Corner.TOP_LEFT,b,c,this.coordinate,d)};a.ui.Tooltip=function(b,c,d){this.aa=d||a.dom.xa(b?a.dom.w(b):null);a.ui.Popup.call(this,this.aa.ib("div",{style:"position:absolute;display:none;"}));this.r=new a.math.Coordinate(0,0);this.d=null;this.wa=new a.structs.Set;if(b){this.attach(b)}if(c!=null){this.Rc(c)}};a.ui.Tooltip.inherits(a.ui.Popup);a.ui.Tooltip.Ga=[];a.ui.Tooltip[_P].className="goog-tooltip";a.ui.Tooltip[_P].Tc=500;a.ui.Tooltip[_P].Qa=0;a.ui.Tooltip[_P].ua=null;a.ui.Tooltip[_P].attach=function(b){b=a.dom.w(b);this.wa.add(b);a.events.listen(b, a.events.EventType.MOUSEOVER,this.Db,false,this);a.events.listen(b,a.events.EventType.MOUSEOUT,this.P,false,this);a.events.listen(b,a.events.EventType.MOUSEMOVE,this.O,false,this);a.events.listen(b,a.events.EventType.FOCUS,this.Cb,false,this);a.events.listen(b,a.events.EventType.BLUR,this.P,false,this)};a.ui.Tooltip[_P].detach=function(b){if(b){var c=a.dom.w(b);this.mb(c);this.wa.remove(c)}else{var d=this.wa.e();for(var c,e=0;c=d[e];e++){this.mb(c)}this.wa.clear()}};a.ui.Tooltip[_P].mb=function(b){a.events.unlisten(b, a.events.EventType.MOUSEOVER,this.Db,false,this);a.events.unlisten(b,a.events.EventType.MOUSEOUT,this.P,false,this);a.events.unlisten(b,a.events.EventType.MOUSEMOVE,this.O,false,this);a.events.unlisten(b,a.events.EventType.FOCUS,this.Cb,false,this);a.events.unlisten(b,a.events.EventType.BLUR,this.P,false,this)};a.ui.Tooltip[_P].Nc=function(b){this.Qa=b};a.ui.Tooltip[_P].Rc=function(b){a.dom.db(this.a,b)};a.ui.Tooltip[_P].Pc=function(b){this.a.innerHTML=b};a.ui.Tooltip[_P].na=function(b){if(this.a){a.dom.removeNode(this.a); this.a=null}a.ui.PopupBase[_P].na.call(this,b);if(b){a.dom.appendChild(this.aa.M()[E],b)}};a.ui.Tooltip[_P].B=function(){a.ui.PopupBase[_P].B.call(this);for(var b,c=0;b=a.ui.Tooltip.Ga[c];c++){if(!a.dom.contains(b.a,this.d)){b.oa(false)}}a.array.insert(a.ui.Tooltip.Ga,this);this.a.className=this.className;this.u();a.events.listen(this.a,a.events.EventType.MOUSEOVER,this.za,false,this);a.events.listen(this.a,a.events.EventType.MOUSEOUT,this.fa,false,this);return true};a.ui.Tooltip[_P].C=function(){a.array.remove(a.ui.Tooltip.Ga, this);for(var b,c=0;b=a.ui.Tooltip.Ga[c];c++){if(a.dom.contains(this.a,b.ua)){b.oa(false)}else{b.d=null;b.$()}}a.events.unlisten(this.a,a.events.EventType.MOUSEOVER,this.za,false,this);a.events.unlisten(this.a,a.events.EventType.MOUSEOUT,this.fa,false,this);this.ua=null;a.ui.PopupBase[_P].C.call(this)};a.ui.Tooltip[_P].Fc=function(b,c){if(this.d==b){this.Ic(b,c)}};a.ui.Tooltip[_P].Ic=function(b,c){var d;if(c){d=c}else{var e=new a.math.Coordinate(this.r.x,this.r.y);d=new a.ui.Tooltip.CursorTooltipPosition(e)}this.ua= b;this.setPosition(d);this.oa(true)};a.ui.Tooltip[_P].Ca=function(){if(this.d==null||this.d!=this.a&&!this.wa.contains(this.d)){this.oa(false)}this.u()};a.ui.Tooltip[_P].Db=function(b){this.d=b[A];this.u();if(!this.Gb()){this.Vb(b[A])}};a.ui.Tooltip[_P].O=function(b){var c=a.dom.getWindow(this.aa.M())||I,d=a.dom.getPageScroll(c);this.r.x=b[Q]+d.x;this.r.y=b[R]+d.y};a.ui.Tooltip[_P].Cb=function(b){this.d=b[A];if(!this.Gb()){var c=new a.ui.Tooltip.ElementTooltipPosition(this.d);this.Vb(b[A],c);this.u()}}; a.ui.Tooltip[_P].P=function(b){if(b[A]==this.d){this.d=null}this.$();this.ec()};a.ui.Tooltip[_P].za=function(b){if(this.d!=this.a){this.u();this.d=this.a}};a.ui.Tooltip[_P].fa=function(b){if(this.d==this.a){this.d=null;this.$()}};a.ui.Tooltip[_P].Vb=function(b,c){this.Ub=a.Timer.X(this.Fc.bind(this,b,c),this.Tc)};a.ui.Tooltip[_P].ec=function(){if(this.Ub){a.Timer.clear(this.Ub);this.Ub=null}};a.ui.Tooltip[_P].$=function(){if(!this.Q){this.Q=a.Timer.X(this.Ca,this.Qa,this)}};a.ui.Tooltip[_P].u=function(){if(this.Q){a.Timer.clear(this.Q); this.Q=null}};a.ui.Tooltip[_P].dispose=function(){if(!this.L()){a.events.EventTarget[_P].dispose.call(this);this.detach();if(this.a){a.dom.removeNode(this.a)}this.d=null;this.aa=null;this.a=null}};a.ui.Tooltip.CursorTooltipPosition=function(b,c){a.ui.Popup.ViewPortPosition.call(this,b,c)};a.ui.Tooltip.CursorTooltipPosition.inherits(a.ui.Popup.ViewPortPosition);a.ui.Tooltip.CursorTooltipPosition[_P].reposition=function(b,c,d){var e=a[l].getClientViewportElement(b),g=d?new a.math.Box(d.top+10,d[D], d[C],d[r]+10):new a.math.Box(10,0,0,10),f=a.ui.Popup.positionPopup(e,a.ui.Popup.Corner.TOP_LEFT,b,a.ui.Popup.Corner.TOP_LEFT,this.coordinate,g,a.ui.Popup.Overflow.ADJUST_X|a.ui.Popup.Overflow.FAIL_Y);if(!f){a.ui.Popup.positionPopup(e,a.ui.Popup.Corner.TOP_LEFT,b,a.ui.Popup.Corner.BOTTOM_LEFT,this.coordinate,g,a.ui.Popup.Overflow.ADJUST_X|a.ui.Popup.Overflow.ADJUST_Y)}};a.ui.Tooltip.ElementTooltipPosition=function(b){a.ui.Popup.AnchoredPosition.call(this,b,a.ui.Popup.Corner.BOTTOM_RIGHT)};a.ui.Tooltip.ElementTooltipPosition.inherits(a.ui.Popup.AnchoredPosition); a.ui.Tooltip.ElementTooltipPosition[_P].reposition=function(b,c,d){var e=new a.math.Coordinate(0,0),g=d?new a.math.Box(d.top,d[D],d[C],d[r]-10):new a.math.Box(0,0,0,-10),f=a.ui.Popup.positionPopup(this.element,this.corner,b,c,e,g,a.ui.Popup.Overflow.ADJUST_X|a.ui.Popup.Overflow.FAIL_Y);if(!f){a.ui.Popup.positionPopup(this.element,a.ui.Popup.Corner.TOP_RIGHT,b,a.ui.Popup.Corner.BOTTOM_LEFT,e,g,a.ui.Popup.Overflow.ADJUST_X|a.ui.Popup.Overflow.ADJUST_Y)}};a.ui.AdvancedTooltip=function(b,c,d,e){a.ui.Tooltip.call(this,b,c,d);this.A=e};a.ui.AdvancedTooltip.inherits(a.ui.Tooltip);a.ui.AdvancedTooltip[_P].kb=false;a.ui.AdvancedTooltip[_P].fc=100;a.ui.AdvancedTooltip[_P].Sa=null;a.ui.AdvancedTooltip[_P].k=null;a.ui.AdvancedTooltip[_P].D=null;a.ui.AdvancedTooltip[_P].K=null;a.ui.AdvancedTooltip[_P].pa=false;a.ui.AdvancedTooltip[_P].Oc=function(b){this.Sa=b};a.ui.AdvancedTooltip[_P].Mc=function(b){this.kb=b};a.ui.AdvancedTooltip[_P].B=function(){if(this.A){this.A.info("Tooltip about to be shown.")}var b= a.ui.AdvancedTooltip.U.B.call(this);this.pa=this.kb;a.events.listen(this.aa.M(),a.events.EventType.MOUSEMOVE,this.O,false,this);return b};a.ui.AdvancedTooltip[_P].Da=function(){a.ui.AdvancedTooltip.U.Da.call(this);this.k=a[l].getBounds(this.a).Wb();this.K=a[l].getBounds(this.ua).Wb()};a.ui.AdvancedTooltip[_P].C=function(){a.ui.AdvancedTooltip.U.C.call(this);a.events.unlisten(this.aa.M(),a.events.EventType.MOUSEMOVE,this.O,false,this);this.D=null;this.k=null;this.K=null;this.pa=false};a.ui.AdvancedTooltip[_P].Ca= function(){var b=this.K&&this.K.contains(this.r),c=this.D&&this.D.contains(this.r);if(this.d!=this.a&&!b&&!c){if(a[n].GECKO&&this.r.x==0&&this.r.y==0){return}if(this.A){if(this.d==null){this.A.info("No active element.")}if(this.K||this.D){var d=["Cursor not within the bounding box of either the anchor nor the ","tooltip. Cursor at ",this.r.toString(),", anchor ",this.K?this.K.toString():"-",", tooltip ",this.D?this.D.toString():"-","."];this.A.info(d.join(""))}}this.oa(false)}this.u()};a.ui.AdvancedTooltip[_P].O= function(b){var c=false;if(this.k){var d=new a.math.Coordinate(b[Q],b[R]);if(this.k.contains(d)){c=true}else if(this.pa){var e=a.math.Box.distance(this.k,this.r),g=a.math.Box.distance(this.k,d);c=g'); b.w()[l].zIndex="50000"}b.f_preload=true};a[F].HovercardLauncher.addHovercard=function(b,c,d){var e=new a.ui.AdvancedTooltip(b);e.Oc(new a.math.Box(5,5,5,5));e.Mc(true);e.Qc(new a.math.Box(10,0,0,10));e.Nc(250);e.Wa=function(g){};a.events.listen(b,a.events.EventType.MOUSEOVER,a.bind(a[F].HovercardLauncher.preloadHovercard,null,e,c,d))};a[F].HovercardLauncher.init=function(b){a[F].HovercardLauncher.manifest=b};a.exportSymbol("addHovercard",a[F].HovercardLauncher.addHovercard);a.exportSymbol("_HovercardLauncherComponentInit", a[F].HovercardLauncher.init);if(I._HovercardLauncherManifestInit){I._HovercardLauncherManifestInit()}; })()