var a,COMPILED=true,goog=goog||{};goog.global=this;goog.DEBUG=true;goog.LOCALE="en";goog.evalWorksForGlobals_=null;goog.provide=function(b){if(!COMPILED){if(goog.getObjectByName(b)&&!goog.implicitNamespaces_[b])throw Error('Namespace "'+b+'" already declared.');for(var d=b;d=d.substring(0,d.lastIndexOf("."));)goog.implicitNamespaces_[d]=true}goog.exportPath_(b)};if(!COMPILED)goog.implicitNamespaces_={};
goog.exportPath_=function(b,d,e){b=b.split(".");e=e||goog.global;!(b[0]in e)&&e.execScript&&e.execScript("var "+b[0]);for(var g;b.length&&(g=b.shift());)if(!b.length&&goog.isDef(d))e[g]=d;else e=e[g]?e[g]:(e[g]={})};goog.getObjectByName=function(b,d){b=b.split(".");d=d||goog.global;for(var e;e=b.shift();)if(d[e])d=d[e];else return null;return d};goog.globalize=function(b,d){d=d||goog.global;for(var e in b)d[e]=b[e]};
goog.addDependency=function(b,d,e){if(!COMPILED){var g;b=b.replace(/\\/g,"/");for(var h=goog.dependencies_,k=0;g=d[k];k++){h.nameToPath[g]=b;b in h.pathToNames||(h.pathToNames[b]={});h.pathToNames[b][g]=true}for(g=0;d=e[g];g++){b in h.requires||(h.requires[b]={});h.requires[b][d]=true}}};
goog.require=function(b){if(!COMPILED)if(!goog.getObjectByName(b)){var d=goog.getPathFromDeps_(b);if(d){goog.included_[d]=true;goog.writeScripts_()}else{b="goog.require could not find: "+b;goog.global.console&&goog.global.console.error(b);throw Error(b);}}};goog.basePath="";goog.nullFunction=function(){};goog.identityFunction=function(b){return b};goog.abstractMethod=function(){throw Error("unimplemented abstract method");};
goog.addSingletonGetter=function(b){b.getInstance=function(){return b.instance_||(b.instance_=new b)}};
if(!COMPILED){goog.included_={};goog.dependencies_={pathToNames:{},nameToPath:{},requires:{},visited:{},written:{}};goog.inHtmlDocument_=function(){var b=goog.global.document;return typeof b!="undefined"&&"write"in b};goog.findBasePath_=function(){if(goog.inHtmlDocument_()){var b=goog.global.document;if(goog.global.CLOSURE_BASE_PATH)goog.basePath=goog.global.CLOSURE_BASE_PATH;else{b=b.getElementsByTagName("script");for(var d=b.length-1;d>=0;--d){var e=b[d].src,g=e.length;if(e.substr(g-7)=="base.js"){goog.basePath=
e.substr(0,g-7);return}}}}};goog.writeScriptTag_=function(b){if(goog.inHtmlDocument_()&&!goog.dependencies_.written[b]){goog.dependencies_.written[b]=true;goog.global.document.write('<script type="text/javascript" src="'+b+'"><\/script>')}};goog.writeScripts_=function(){function b(k){if(!(k in g.written)){if(!(k in g.visited)){g.visited[k]=true;if(k in g.requires)for(var o in g.requires[k])if(o in g.nameToPath)b(g.nameToPath[o]);else if(!goog.getObjectByName(o))throw Error("Undefined nameToPath for "+
o);}if(!(k in e)){e[k]=true;d.push(k)}}}var d=[],e={},g=goog.dependencies_;for(var h in goog.included_)g.written[h]||b(h);for(h=0;h<d.length;h++)if(d[h])goog.writeScriptTag_(goog.basePath+d[h]);else throw Error("Undefined script input");};goog.getPathFromDeps_=function(b){return b in goog.dependencies_.nameToPath?goog.dependencies_.nameToPath[b]:null};goog.findBasePath_();goog.global.CLOSURE_NO_DEPS||goog.writeScriptTag_(goog.basePath+"deps.js")}
goog.typeOf=function(b){var d=typeof b;if(d=="object")if(b){if(b instanceof Array||!(b instanceof Object)&&Object.prototype.toString.call(b)=="[object Array]"||typeof b.length=="number"&&typeof b.splice!="undefined"&&typeof b.propertyIsEnumerable!="undefined"&&!b.propertyIsEnumerable("splice"))return"array";if(!(b instanceof Object)&&(Object.prototype.toString.call(b)=="[object Function]"||typeof b.call!="undefined"&&typeof b.propertyIsEnumerable!="undefined"&&!b.propertyIsEnumerable("call")))return"function"}else return"null";
else if(d=="function"&&typeof b.call=="undefined")return"object";return d};goog.propertyIsEnumerableCustom_=function(b,d){if(d in b)for(var e in b)if(e==d&&Object.prototype.hasOwnProperty.call(b,d))return true;return false};goog.propertyIsEnumerable_=function(b,d){return b instanceof Object?Object.prototype.propertyIsEnumerable.call(b,d):goog.propertyIsEnumerableCustom_(b,d)};goog.isDef=function(b){return b!==undefined};goog.isNull=function(b){return b===null};
goog.isDefAndNotNull=function(b){return b!=null};goog.isArray=function(b){return goog.typeOf(b)=="array"};goog.isArrayLike=function(b){var d=goog.typeOf(b);return d=="array"||d=="object"&&typeof b.length=="number"};goog.isDateLike=function(b){return goog.isObject(b)&&typeof b.getFullYear=="function"};goog.isString=function(b){return typeof b=="string"};goog.isBoolean=function(b){return typeof b=="boolean"};goog.isNumber=function(b){return typeof b=="number"};
goog.isFunction=function(b){return goog.typeOf(b)=="function"};goog.isObject=function(b){b=goog.typeOf(b);return b=="object"||b=="array"||b=="function"};goog.getUid=function(b){if(b.hasOwnProperty&&b.hasOwnProperty(goog.UID_PROPERTY_))return b[goog.UID_PROPERTY_];b[goog.UID_PROPERTY_]||(b[goog.UID_PROPERTY_]=++goog.uidCounter_);return b[goog.UID_PROPERTY_]};goog.removeUid=function(b){"removeAttribute"in b&&b.removeAttribute(goog.UID_PROPERTY_);try{delete b[goog.UID_PROPERTY_]}catch(d){}};
goog.UID_PROPERTY_="closure_uid_"+Math.floor(Math.random()*2147483648).toString(36);goog.uidCounter_=0;goog.getHashCode=goog.getUid;goog.removeHashCode=goog.removeUid;goog.cloneObject=function(b){var d=goog.typeOf(b);if(d=="object"||d=="array"){if(b.clone)return b.clone.call(b);d=d=="array"?[]:{};for(var e in b)d[e]=goog.cloneObject(b[e]);return d}return b};
goog.bind=function(b,d){var e=d||goog.global;if(arguments.length>2){var g=Array.prototype.slice.call(arguments,2);return function(){var h=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(h,g);return b.apply(e,h)}}else return function(){return b.apply(e,arguments)}};goog.partial=function(b){var d=Array.prototype.slice.call(arguments,1);return function(){var e=Array.prototype.slice.call(arguments);e.unshift.apply(e,d);return b.apply(this,e)}};
goog.mixin=function(b,d){for(var e in d)b[e]=d[e]};goog.now=Date.now||function(){return+new Date};
goog.globalEval=function(b){if(goog.global.execScript)goog.global.execScript(b,"JavaScript");else if(goog.global.eval){if(goog.evalWorksForGlobals_==null){goog.global.eval("var _et_ = 1;");if(typeof goog.global._et_!="undefined"){delete goog.global._et_;goog.evalWorksForGlobals_=true}else goog.evalWorksForGlobals_=false}if(goog.evalWorksForGlobals_)goog.global.eval(b);else{var d=goog.global.document,e=d.createElement("script");e.type="text/javascript";e.defer=false;e.appendChild(d.createTextNode(b));
d.body.appendChild(e);d.body.removeChild(e)}}else throw Error("goog.globalEval not available");};goog.typedef=true;goog.getCssName=function(b,d){b=b+(d?"-"+d:"");return goog.cssNameMapping_&&b in goog.cssNameMapping_?goog.cssNameMapping_[b]:b};goog.setCssNameMapping=function(b){goog.cssNameMapping_=b};goog.getMsg=function(b,d){d=d||{};for(var e in d)b=b.replace(new RegExp("\\{\\$"+e+"\\}","gi"),d[e]);return b};goog.exportSymbol=function(b,d,e){goog.exportPath_(b,d,e)};
goog.exportProperty=function(b,d,e){b[d]=e};goog.inherits=function(b,d){function e(){}e.prototype=d.prototype;b.superClass_=d.prototype;b.prototype=new e;b.prototype.constructor=b};
goog.base=function(b,d){var e=arguments.callee.caller;if(e.superClass_)return e.superClass_.constructor.apply(b,Array.prototype.slice.call(arguments,1));for(var g=Array.prototype.slice.call(arguments,2),h=false,k=b.constructor;k;k=k.superClass_&&k.superClass_.constructor)if(k.prototype[d]===e)h=true;else if(h)return k.prototype[d].apply(b,g);if(b[d]===e)return b.constructor.prototype[d].apply(b,g);else throw Error("goog.base called from a method of one name to a method of a different name");};var jquery={};
(function(){function b(f,i){i.src?j.ajax({url:i.src,async:false,dataType:"script"}):j.globalEval(i.text||i.textContent||i.innerHTML||"");i.parentNode&&i.parentNode.removeChild(i)}function d(){return+new Date}function e(f,i){return f[0]&&parseInt(j.curCSS(f[0],i,true),10)||0}function g(){return false}function h(){return true}function k(f){var i=RegExp("(^|\\.)"+f.type+"(\\.|$)"),l=true,n=[];j.each(j.data(this,"events").live||[],function(r,u){if(i.test(u.type))(r=j(f.target).closest(u.data)[0])&&n.push({elem:r,
fn:u})});n.sort(function(r,u){return j.data(r.elem,"closest")-j.data(u.elem,"closest")});j.each(n,function(){if(this.fn.call(this.elem,f,this.fn.data)===false)return l=false});return l}function o(f,i){return["live",f,i.replace(/\./g,"`").replace(/ /g,"|")].join(".")}function q(){if(!ba){ba=true;if(document.addEventListener)document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);j.ready()},false);else if(document.attachEvent){document.attachEvent("onreadystatechange",
function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);j.ready()}});document.documentElement.doScroll&&A==A.top&&function(){if(!j.isReady){try{document.documentElement.doScroll("left")}catch(f){setTimeout(arguments.callee,0);return}j.ready()}}()}j.event.add(A,"load",j.ready)}}function x(f,i){var l={};j.each(ca.concat.apply([],ca.slice(0,i)),function(){l[this]=f});return l}var A=this,E=A.jQuery,H=A.$,j=A.jQuery=A.$=function(f,i){return new j.fn.init(f,
i)},N=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,O=/^.[^:#\[\.,]*$/;j.fn=j.prototype={init:function(f,i){f=f||document;if(f.nodeType){this[0]=f;this.length=1;this.context=f;return this}if(typeof f==="string"){var l=N.exec(f);if(l&&(l[1]||!i))if(l[1])f=j.clean([l[1]],i);else{if((i=document.getElementById(l[3]))&&i.id!=l[3])return j().find(f);l=j(i||[]);l.context=document;l.selector=f;return l}else return j(i).find(f)}else if(j.isFunction(f))return j(document).ready(f);if(f.selector&&f.context){this.selector=
f.selector;this.context=f.context}return this.setArray(j.isArray(f)?f:j.makeArray(f))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(f){return f===void 0?Array.prototype.slice.call(this):this[f]},pushStack:function(f,i,l){f=j(f);f.prevObject=this;f.context=this.context;if(i==="find")f.selector=this.selector+(this.selector?" ":"")+l;else if(i)f.selector=this.selector+"."+i+"("+l+")";return f},setArray:function(f){this.length=0;Array.prototype.push.apply(this,f);return this},
each:function(f,i){return j.each(this,f,i)},index:function(f){return j.inArray(f&&f.jquery?f[0]:f,this)},attr:function(f,i,l){var n=f;if(typeof f==="string")if(i===void 0)return this[0]&&j[l||"attr"](this[0],f);else{n={};n[f]=i}return this.each(function(r){for(f in n)j.attr(l?this.style:this,f,j.prop(this,n[f],l,r,f))})},css:function(f,i){if((f=="width"||f=="height")&&parseFloat(i)<0)i=void 0;return this.attr(f,i,"curCSS")},text:function(f){if(typeof f!=="object"&&f!=null)return this.empty().append((this[0]&&
this[0].ownerDocument||document).createTextNode(f));var i="";j.each(f||this,function(){j.each(this.childNodes,function(){if(this.nodeType!=8)i+=this.nodeType!=1?this.nodeValue:j.fn.text([this])})});return i},wrapAll:function(f){if(this[0]){f=j(f,this[0].ownerDocument).clone();this[0].parentNode&&f.insertBefore(this[0]);f.map(function(){for(var i=this;i.firstChild;)i=i.firstChild;return i}).append(this)}return this},wrapInner:function(f){return this.each(function(){j(this).contents().wrapAll(f)})},
wrap:function(f){return this.each(function(){j(this).wrapAll(f)})},append:function(){return this.domManip(arguments,true,function(f){this.nodeType==1&&this.appendChild(f)})},prepend:function(){return this.domManip(arguments,true,function(f){this.nodeType==1&&this.insertBefore(f,this.firstChild)})},before:function(){return this.domManip(arguments,false,function(f){this.parentNode.insertBefore(f,this)})},after:function(){return this.domManip(arguments,false,function(f){this.parentNode.insertBefore(f,
this.nextSibling)})},end:function(){return this.prevObject||j([])},push:[].push,sort:[].sort,splice:[].splice,find:function(f){if(this.length===1){var i=this.pushStack([],"find",f);i.length=0;j.find(f,this[0],i);return i}else return this.pushStack(j.unique(j.map(this,function(l){return j.find(f,l)})),"find",f)},clone:function(f){var i=this.map(function(){if(!j.support.noCloneEvent&&!j.isXMLDoc(this)){var r=this.outerHTML;if(!r){r=this.ownerDocument.createElement("div");r.appendChild(this.cloneNode(true));
r=r.innerHTML}return j.clean([r.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else return this.cloneNode(true)});if(f===true){var l=this.find("*").andSelf(),n=0;i.find("*").andSelf().each(function(){if(this.nodeName===l[n].nodeName){var r=j.data(l[n],"events");for(var u in r)for(var w in r[u])j.event.add(this,u,r[u][w],r[u][w].data);n++}})}return i},filter:function(f){return this.pushStack(j.isFunction(f)&&j.grep(this,function(i,l){return f.call(i,l)})||j.multiFilter(f,j.grep(this,
function(i){return i.nodeType===1})),"filter",f)},closest:function(f){var i=j.expr.match.POS.test(f)?j(f):null,l=0;return this.map(function(){for(var n=this;n&&n.ownerDocument;){if(i?i.index(n)>-1:j(n).is(f)){j.data(n,"closest",l);return n}n=n.parentNode;l++}})},not:function(f){if(typeof f==="string")if(O.test(f))return this.pushStack(j.multiFilter(f,this,true),"not",f);else f=j.multiFilter(f,this);var i=f.length&&f[f.length-1]!==void 0&&!f.nodeType;return this.filter(function(){return i?j.inArray(this,
f)<0:this!=f})},add:function(f){return this.pushStack(j.unique(j.merge(this.get(),typeof f==="string"?j(f):j.makeArray(f))))},is:function(f){return!!f&&j.multiFilter(f,this).length>0},hasClass:function(f){return!!f&&this.is("."+f)},val:function(f){if(f===void 0){var i=this[0];if(i){if(j.nodeName(i,"option"))return(i.attributes.value||{}).specified?i.value:i.text;if(j.nodeName(i,"select")){var l=i.selectedIndex,n=[],r=i.options;i=i.type=="select-one";if(l<0)return null;var u=i?l:0;for(l=i?l+1:r.length;u<
l;u++){var w=r[u];if(w.selected){f=j(w).val();if(i)return f;n.push(f)}}return n}return(i.value||"").replace(/\r/g,"")}}else{if(typeof f==="number")f+="";return this.each(function(){if(this.nodeType==1)if(j.isArray(f)&&/radio|checkbox/.test(this.type))this.checked=j.inArray(this.value,f)>=0||j.inArray(this.name,f)>=0;else if(j.nodeName(this,"select")){var y=j.makeArray(f);j("option",this).each(function(){this.selected=j.inArray(this.value,y)>=0||j.inArray(this.text,y)>=0});if(!y.length)this.selectedIndex=
-1}else this.value=f})}},html:function(f){return f===void 0?this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null:this.empty().append(f)},replaceWith:function(f){return this.after(f).remove()},eq:function(f){return this.slice(f,+f+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(f){return this.pushStack(j.map(this,function(i,l){return f.call(i,l,i)}))},andSelf:function(){return this.add(this.prevObject)},
domManip:function(f,i,l){function n(G,J){return i&&j.nodeName(G,"table")&&j.nodeName(J,"tr")?G.getElementsByTagName("tbody")[0]||G.appendChild(G.ownerDocument.createElement("tbody")):G}if(this[0]){var r=(this[0].ownerDocument||this[0]).createDocumentFragment();f=j.clean(f,this[0].ownerDocument||this[0],r);var u=r.firstChild;if(u)for(var w=0,y=this.length;w<y;w++)l.call(n(this[w],u),this.length>1||w>0?r.cloneNode(true):r);f&&j.each(f,b)}return this}};j.fn.init.prototype=j.fn;j.extend=j.fn.extend=function(){var f=
arguments[0]||{},i=1,l=arguments.length,n=false,r;if(typeof f==="boolean"){n=f;f=arguments[1]||{};i=2}if(typeof f!=="object"&&!j.isFunction(f))f={};if(l==i){f=this;--i}for(;i<l;i++)if((r=arguments[i])!=null)for(var u in r){var w=f[u],y=r[u];if(f!==y)if(n&&y&&typeof y==="object"&&!y.nodeType)f[u]=j.extend(n,w||(y.length!=null?[]:{}),y);else if(y!==void 0)f[u]=y}return f};var T=/z-?index|font-?weight|opacity|zoom|line-?height/i,V=document.defaultView||{},da=Object.prototype.toString;j.extend({noConflict:function(f){A.$=
H;if(f)A.jQuery=E;return j},isFunction:function(f){return da.call(f)==="[object Function]"},isArray:function(f){return da.call(f)==="[object Array]"},isXMLDoc:function(f){return f.nodeType===9&&f.documentElement.nodeName!=="HTML"||!!f.ownerDocument&&j.isXMLDoc(f.ownerDocument)},globalEval:function(f){if(f&&/\S/.test(f)){var i=document.getElementsByTagName("head")[0]||document.documentElement,l=document.createElement("script");l.type="text/javascript";if(j.support.scriptEval)l.appendChild(document.createTextNode(f));
else l.text=f;i.insertBefore(l,i.firstChild);i.removeChild(l)}},nodeName:function(f,i){return f.nodeName&&f.nodeName.toUpperCase()==i.toUpperCase()},each:function(f,i,l){var n,r=0,u=f.length;if(l)if(u===void 0)for(n in f){if(i.apply(f[n],l)===false)break}else for(;r<u;){if(i.apply(f[r++],l)===false)break}else if(u===void 0)for(n in f){if(i.call(f[n],n,f[n])===false)break}else for(l=f[0];r<u&&i.call(l,r,l)!==false;l=f[++r]);return f},prop:function(f,i,l,n,r){if(j.isFunction(i))i=i.call(f,n);return typeof i===
"number"&&l=="curCSS"&&!T.test(r)?i+"px":i},className:{add:function(f,i){j.each((i||"").split(/\s+/),function(l,n){if(f.nodeType==1&&!j.className.has(f.className,n))f.className+=(f.className?" ":"")+n})},remove:function(f,i){if(f.nodeType==1)f.className=i!==void 0?j.grep(f.className.split(/\s+/),function(l){return!j.className.has(i,l)}).join(" "):""},has:function(f,i){return f&&j.inArray(i,(f.className||f).toString().split(/\s+/))>-1}},swap:function(f,i,l){var n={};for(var r in i){n[r]=f.style[r];
f.style[r]=i[r]}l.call(f);for(r in i)f.style[r]=n[r]},css:function(f,i,l,n){if(i=="width"||i=="height"){var r;l={position:"absolute",visibility:"hidden",display:"block"};var u=i=="width"?["Left","Right"]:["Top","Bottom"],w=function(){r=i=="width"?f.offsetWidth:f.offsetHeight;n!=="border"&&j.each(u,function(){n||(r-=parseFloat(j.curCSS(f,"padding"+this,true))||0);if(n==="margin")r+=parseFloat(j.curCSS(f,"margin"+this,true))||0;else r-=parseFloat(j.curCSS(f,"border"+this+"Width",true))||0})};f.offsetWidth!==
0?w():j.swap(f,l,w);return Math.max(0,Math.round(r))}return j.curCSS(f,i,l)},curCSS:function(f,i,l){var n,r=f.style;if(i=="opacity"&&!j.support.opacity){n=j.attr(r,"opacity");return n==""?"1":n}if(i.match(/float/i))i=X;if(!l&&r&&r[i])n=r[i];else if(V.getComputedStyle){if(i.match(/float/i))i="float";i=i.replace(/([A-Z])/g,"-$1").toLowerCase();if(f=V.getComputedStyle(f,null))n=f.getPropertyValue(i);if(i=="opacity"&&n=="")n="1"}else if(f.currentStyle){n=i.replace(/\-(\w)/g,function(u,w){return w.toUpperCase()});
n=f.currentStyle[i]||f.currentStyle[n];if(!/^\d+(px)?$/i.test(n)&&/^\d/.test(n)){i=r.left;l=f.runtimeStyle.left;f.runtimeStyle.left=f.currentStyle.left;r.left=n||0;n=r.pixelLeft+"px";r.left=i;f.runtimeStyle.left=l}}return n},clean:function(f,i,l){i=i||document;if(typeof i.createElement==="undefined")i=i.ownerDocument||i[0]&&i[0].ownerDocument||document;if(!l&&f.length===1&&typeof f[0]==="string"){var n=/^<(\w+)\s*\/?>$/.exec(f[0]);if(n)return[i.createElement(n[1])]}var r=[];n=[];var u=i.createElement("div");
j.each(f,function(w,y){if(typeof y==="number")y+="";if(y){if(typeof y==="string"){y=y.replace(/(<(\w+)[^>]*?)\/>/g,function(I,L,P){return P.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?I:L+"></"+P+">"});w=y.replace(/^\s+/,"").substring(0,10).toLowerCase();var G=!w.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!w.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||w.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!w.indexOf("<tr")&&[2,"<table><tbody>",
"</tbody></table>"]||(!w.indexOf("<td")||!w.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!w.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!j.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];for(u.innerHTML=G[1]+y+G[2];G[0]--;)u=u.lastChild;if(!j.support.tbody){var J=/<tbody/i.test(y);w=!w.indexOf("<table")&&!J?u.firstChild&&u.firstChild.childNodes:G[1]=="<table>"&&!J?u.childNodes:[];for(G=w.length-1;G>=0;--G)j.nodeName(w[G],"tbody")&&
!w[G].childNodes.length&&w[G].parentNode.removeChild(w[G])}!j.support.leadingWhitespace&&/^\s/.test(y)&&u.insertBefore(i.createTextNode(y.match(/^\s*/)[0]),u.firstChild);y=j.makeArray(u.childNodes)}if(y.nodeType)r.push(y);else r=j.merge(r,y)}});if(l){for(f=0;r[f];f++)if(j.nodeName(r[f],"script")&&(!r[f].type||r[f].type.toLowerCase()==="text/javascript"))n.push(r[f].parentNode?r[f].parentNode.removeChild(r[f]):r[f]);else{r[f].nodeType===1&&r.splice.apply(r,[f+1,0].concat(j.makeArray(r[f].getElementsByTagName("script"))));
l.appendChild(r[f])}return n}return r},attr:function(f,i,l){if(!(!f||f.nodeType==3||f.nodeType==8)){var n=!j.isXMLDoc(f),r=l!==void 0;i=n&&j.props[i]||i;if(f.tagName){var u=/href|src|style/.test(i);if(i in f&&n&&!u){if(r){if(i=="type"&&j.nodeName(f,"input")&&f.parentNode)throw"type property can't be changed";f[i]=l}if(j.nodeName(f,"form")&&f.getAttributeNode(i))return f.getAttributeNode(i).nodeValue;if(i=="tabIndex")return(i=f.getAttributeNode("tabIndex"))&&i.specified?i.value:f.nodeName.match(/(button|input|object|select|textarea)/i)?
0:f.nodeName.match(/^(a|area)$/i)&&f.href?0:void 0;return f[i]}if(!j.support.style&&n&&i=="style")return j.attr(f.style,"cssText",l);r&&f.setAttribute(i,""+l);f=!j.support.hrefNormalized&&n&&u?f.getAttribute(i,2):f.getAttribute(i);return f===null?void 0:f}if(!j.support.opacity&&i=="opacity"){if(r){f.zoom=1;f.filter=(f.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(l)+""=="NaN"?"":"alpha(opacity="+l*100+")")}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(f.filter.match(/opacity=([^)]*)/)[1])/
100+"":""}i=i.replace(/-([a-z])/ig,function(w,y){return y.toUpperCase()});if(r)f[i]=l;return f[i]}},trim:function(f){return(f||"").replace(/^\s+|\s+$/g,"")},makeArray:function(f){var i=[];if(f!=null){var l=f.length;if(l==null||typeof f==="string"||j.isFunction(f)||f.setInterval)i[0]=f;else for(;l;)i[--l]=f[l]}return i},inArray:function(f,i){for(var l=0,n=i.length;l<n;l++)if(i[l]===f)return l;return-1},merge:function(f,i){var l=0,n,r=f.length;if(j.support.getAll)for(;(n=i[l++])!=null;)f[r++]=n;else for(;(n=
i[l++])!=null;)if(n.nodeType!=8)f[r++]=n;return f},unique:function(f){var i=[],l={};try{for(var n=0,r=f.length;n<r;n++){var u=j.data(f[n]);if(!l[u]){l[u]=true;i.push(f[n])}}}catch(w){i=f}return i},grep:function(f,i,l){for(var n=[],r=0,u=f.length;r<u;r++)!l!=!i(f[r],r)&&n.push(f[r]);return n},map:function(f,i){for(var l=[],n=0,r=f.length;n<r;n++){var u=i(f[n],n);if(u!=null)l[l.length]=u}return l.concat.apply([],l)}});var U=navigator.userAgent.toLowerCase();j.browser={version:(U.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||
[0,"0"])[1],safari:/webkit/.test(U),opera:/opera/.test(U),msie:/msie/.test(U)&&!/opera/.test(U),mozilla:/mozilla/.test(U)&&!/(compatible|webkit)/.test(U)};j.each({parent:function(f){return f.parentNode},parents:function(f){return j.dir(f,"parentNode")},next:function(f){return j.nth(f,2,"nextSibling")},prev:function(f){return j.nth(f,2,"previousSibling")},nextAll:function(f){return j.dir(f,"nextSibling")},prevAll:function(f){return j.dir(f,"previousSibling")},siblings:function(f){return j.sibling(f.parentNode.firstChild,
f)},children:function(f){return j.sibling(f.firstChild)},contents:function(f){return j.nodeName(f,"iframe")?f.contentDocument||f.contentWindow.document:j.makeArray(f.childNodes)}},function(f,i){j.fn[f]=function(l){var n=j.map(this,i);if(l&&typeof l=="string")n=j.multiFilter(l,n);return this.pushStack(j.unique(n),f,l)}});j.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(f,i){j.fn[f]=function(l){for(var n=[],r=j(l),u=0,w=r.length;u<
w;u++){var y=(u>0?this.clone(true):this).get();j.fn[i].apply(j(r[u]),y);n=n.concat(y)}return this.pushStack(n,f,l)}});j.each({removeAttr:function(f){j.attr(this,f,"");this.nodeType==1&&this.removeAttribute(f)},addClass:function(f){j.className.add(this,f)},removeClass:function(f){j.className.remove(this,f)},toggleClass:function(f,i){if(typeof i!=="boolean")i=!j.className.has(this,f);j.className[i?"add":"remove"](this,f)},remove:function(f){if(!f||j.filter(f,[this]).length){j("*",this).add([this]).each(function(){j.event.remove(this);
j.removeData(this)});this.parentNode&&this.parentNode.removeChild(this)}},empty:function(){for(j(this).children().remove();this.firstChild;)this.removeChild(this.firstChild)}},function(f,i){j.fn[f]=function(){return this.each(i,arguments)}});var R="jQuery"+d(),ha=0,ea={};j.extend({cache:{},data:function(f,i,l){f=f==A?ea:f;var n=f[R];n||(n=f[R]=++ha);if(i&&!j.cache[n])j.cache[n]={};if(l!==void 0)j.cache[n][i]=l;return i?j.cache[n][i]:n},removeData:function(f,i){f=f==A?ea:f;var l=f[R];if(i){if(j.cache[l]){delete j.cache[l][i];
i="";for(i in j.cache[l])break;i||j.removeData(f)}}else{try{delete f[R]}catch(n){f.removeAttribute&&f.removeAttribute(R)}delete j.cache[l]}},queue:function(f,i,l){if(f){i=(i||"fx")+"queue";var n=j.data(f,i);if(!n||j.isArray(l))n=j.data(f,i,j.makeArray(l));else l&&n.push(l)}return n},dequeue:function(f,i){var l=j.queue(f,i),n=l.shift();if(!i||i==="fx")n=l[0];n!==void 0&&n.call(f)}});j.fn.extend({data:function(f,i){var l=f.split(".");l[1]=l[1]?"."+l[1]:"";if(i===void 0){var n=this.triggerHandler("getData"+
l[1]+"!",[l[0]]);if(n===void 0&&this.length)n=j.data(this[0],f);return n===void 0&&l[1]?this.data(l[0]):n}else return this.trigger("setData"+l[1]+"!",[l[0],i]).each(function(){j.data(this,f,i)})},removeData:function(f){return this.each(function(){j.removeData(this,f)})},queue:function(f,i){if(typeof f!=="string"){i=f;f="fx"}if(i===void 0)return j.queue(this[0],f);return this.each(function(){var l=j.queue(this,f,i);f=="fx"&&l.length==1&&l[0].call(this)})},dequeue:function(f){return this.each(function(){j.dequeue(this,
f)})}});(function(){function f(m,p,t,v,z,B){z=m=="previousSibling"&&!B;for(var C=0,K=v.length;C<K;C++){var D=v[C];if(D){if(z&&D.nodeType===1){D.sizcache=t;D.sizset=C}D=D[m];for(var M=false;D;){if(D.sizcache===t){M=v[D.sizset];break}if(D.nodeType===1&&!B){D.sizcache=t;D.sizset=C}if(D.nodeName===p){M=D;break}D=D[m]}v[C]=M}}}function i(m,p,t,v,z,B){z=m=="previousSibling"&&!B;for(var C=0,K=v.length;C<K;C++){var D=v[C];if(D){if(z&&D.nodeType===1){D.sizcache=t;D.sizset=C}D=D[m];for(var M=false;D;){if(D.sizcache===
t){M=v[D.sizset];break}if(D.nodeType===1){if(!B){D.sizcache=t;D.sizset=C}if(typeof p!=="string"){if(D===p){M=true;break}}else if(u.filter(p,[D]).length>0){M=D;break}}D=D[m]}v[C]=M}}}var l=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,n=0,r=Object.prototype.toString,u=function(m,p,t,v){t=t||[];p=p||document;if(p.nodeType!==1&&p.nodeType!==9)return[];if(!m||typeof m!=="string")return t;var z=[],B,C,K,D=true;for(l.lastIndex=0;(B=
l.exec(m))!==null;){z.push(B[1]);if(B[2]){K=RegExp.rightContext;break}}if(z.length>1&&y.exec(m))if(z.length===2&&w.relative[z[0]])B=S(z[0]+z[1],p);else for(B=w.relative[z[0]]?[p]:u(z.shift(),p);z.length;){m=z.shift();if(w.relative[m])m+=z.shift();B=S(m,B)}else{B=v?{expr:z.pop(),set:J(v)}:u.find(z.pop(),z.length===1&&p.parentNode?p.parentNode:p,F(p));B=u.filter(B.expr,B.set);if(z.length>0)C=J(B);else D=false;for(;z.length;){var M=z.pop(),Q=M;if(w.relative[M])Q=z.pop();else M="";if(Q==null)Q=p;w.relative[M](C,
Q,F(p))}}C||(C=B);if(!C)throw"Syntax error, unrecognized expression: "+(M||m);if(r.call(C)==="[object Array]")if(D)if(p.nodeType===1)for(m=0;C[m]!=null;m++){if(C[m]&&(C[m]===true||C[m].nodeType===1&&P(p,C[m])))t.push(B[m])}else for(m=0;C[m]!=null;m++)C[m]&&C[m].nodeType===1&&t.push(B[m]);else t.push.apply(t,C);else J(C,t);if(K){u(K,p,t,v);if(L){hasDuplicate=false;t.sort(L);if(hasDuplicate)for(m=1;m<t.length;m++)t[m]===t[m-1]&&t.splice(m--,1)}}return t};u.matches=function(m,p){return u(m,null,null,
p)};u.find=function(m,p,t){var v,z;if(!m)return[];for(var B=0,C=w.order.length;B<C;B++){var K=w.order[B];if(z=w.match[K].exec(m)){var D=RegExp.leftContext;if(D.substr(D.length-1)!=="\\"){z[1]=(z[1]||"").replace(/\\/g,"");v=w.find[K](z,p,t);if(v!=null){m=m.replace(w.match[K],"");break}}}}v||(v=p.getElementsByTagName("*"));return{set:v,expr:m}};u.filter=function(m,p,t,v){for(var z=m,B=[],C=p,K,D,M=p&&p[0]&&F(p[0]);m&&p.length;){for(var Q in w.filter)if((K=w.match[Q].exec(m))!=null){var ia=w.filter[Q],
W,Y;D=false;if(C==B)B=[];if(w.preFilter[Q])if(K=w.preFilter[Q](K,C,t,B,v,M)){if(K===true)continue}else D=W=true;if(K)for(var Z=0;(Y=C[Z])!=null;Z++)if(Y){W=ia(Y,K,Z,C);var fa=v^!!W;if(t&&W!=null)if(fa)D=true;else C[Z]=false;else if(fa){B.push(Y);D=true}}if(W!==void 0){t||(C=B);m=m.replace(w.match[Q],"");if(!D)return[];break}}if(m==z)if(D==null)throw"Syntax error, unrecognized expression: "+m;else break;z=m}return C};var w=u.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,
CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(m){return m.getAttribute("href")}},
relative:{"+":function(m,p,t){var v=typeof p==="string",z=v&&!/\W/.test(p);v=v&&!z;if(z&&!t)p=p.toUpperCase();t=0;z=m.length;for(var B;t<z;t++)if(B=m[t]){for(;(B=B.previousSibling)&&B.nodeType!==1;);m[t]=v||B&&B.nodeName===p?B||false:B===p}v&&u.filter(p,m,true)},">":function(m,p,t){var v=typeof p==="string";if(v&&!/\W/.test(p)){p=t?p:p.toUpperCase();t=0;for(var z=m.length;t<z;t++){var B=m[t];if(B){v=B.parentNode;m[t]=v.nodeName===p?v:false}}}else{t=0;for(z=m.length;t<z;t++)if(B=m[t])m[t]=v?B.parentNode:
B.parentNode===p;v&&u.filter(p,m,true)}},"":function(m,p,t){var v=n++,z=i;if(!p.match(/\W/)){var B=p=t?p:p.toUpperCase();z=f}z("parentNode",p,v,m,B,t)},"~":function(m,p,t){var v=n++,z=i;if(typeof p==="string"&&!p.match(/\W/)){var B=p=t?p:p.toUpperCase();z=f}z("previousSibling",p,v,m,B,t)}},find:{ID:function(m,p,t){if(typeof p.getElementById!=="undefined"&&!t)return(m=p.getElementById(m[1]))?[m]:[]},NAME:function(m,p){if(typeof p.getElementsByName!=="undefined"){var t=[];p=p.getElementsByName(m[1]);
for(var v=0,z=p.length;v<z;v++)p[v].getAttribute("name")===m[1]&&t.push(p[v]);return t.length===0?null:t}},TAG:function(m,p){return p.getElementsByTagName(m[1])}},preFilter:{CLASS:function(m,p,t,v,z,B){m=" "+m[1].replace(/\\/g,"")+" ";if(B)return m;B=0;for(var C;(C=p[B])!=null;B++)if(C)if(z^(C.className&&(" "+C.className+" ").indexOf(m)>=0))t||v.push(C);else if(t)p[B]=false;return false},ID:function(m){return m[1].replace(/\\/g,"")},TAG:function(m,p){for(var t=0;p[t]===false;t++);return p[t]&&F(p[t])?
m[1]:m[1].toUpperCase()},CHILD:function(m){if(m[1]=="nth"){var p=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[2]=="even"&&"2n"||m[2]=="odd"&&"2n+1"||!/\D/.test(m[2])&&"0n+"+m[2]||m[2]);m[2]=p[1]+(p[2]||1)-0;m[3]=p[3]-0}m[0]=n++;return m},ATTR:function(m,p,t,v,z,B){p=m[1].replace(/\\/g,"");if(!B&&w.attrMap[p])m[1]=w.attrMap[p];if(m[2]==="~=")m[4]=" "+m[4]+" ";return m},PSEUDO:function(m,p,t,v,z){if(m[1]==="not")if(m[3].match(l).length>1||/^\w/.test(m[3]))m[3]=u(m[3],null,null,p);else{m=u.filter(m[3],p,t,true^
z);t||v.push.apply(v,m);return false}else if(w.match.POS.test(m[0])||w.match.CHILD.test(m[0]))return true;return m},POS:function(m){m.unshift(true);return m}},filters:{enabled:function(m){return m.disabled===false&&m.type!=="hidden"},disabled:function(m){return m.disabled===true},checked:function(m){return m.checked===true},selected:function(m){return m.selected===true},parent:function(m){return!!m.firstChild},empty:function(m){return!m.firstChild},has:function(m,p,t){return!!u(t[3],m).length},header:function(m){return/h\d/i.test(m.nodeName)},
text:function(m){return"text"===m.type},radio:function(m){return"radio"===m.type},checkbox:function(m){return"checkbox"===m.type},file:function(m){return"file"===m.type},password:function(m){return"password"===m.type},submit:function(m){return"submit"===m.type},image:function(m){return"image"===m.type},reset:function(m){return"reset"===m.type},button:function(m){return"button"===m.type||m.nodeName.toUpperCase()==="BUTTON"},input:function(m){return/input|select|textarea|button/i.test(m.nodeName)}},
setFilters:{first:function(m,p){return p===0},last:function(m,p,t,v){return p===v.length-1},even:function(m,p){return p%2===0},odd:function(m,p){return p%2===1},lt:function(m,p,t){return p<t[3]-0},gt:function(m,p,t){return p>t[3]-0},nth:function(m,p,t){return t[3]-0==p},eq:function(m,p,t){return t[3]-0==p}},filter:{PSEUDO:function(m,p,t,v){var z=p[1],B=w.filters[z];if(B)return B(m,t,p,v);else if(z==="contains")return(m.textContent||m.innerText||"").indexOf(p[3])>=0;else if(z==="not"){p=p[3];t=0;for(v=
p.length;t<v;t++)if(p[t]===m)return false;return true}},CHILD:function(m,p){var t=p[1],v=m;switch(t){case "only":case "first":for(;v=v.previousSibling;)if(v.nodeType===1)return false;if(t=="first")return true;v=m;case "last":for(;v=v.nextSibling;)if(v.nodeType===1)return false;return true;case "nth":t=p[2];var z=p[3];if(t==1&&z==0)return true;p=p[0];var B=m.parentNode;if(B&&(B.sizcache!==p||!m.nodeIndex)){var C=0;for(v=B.firstChild;v;v=v.nextSibling)if(v.nodeType===1)v.nodeIndex=++C;B.sizcache=p}m=
m.nodeIndex-z;return t==0?m==0:m%t==0&&m/t>=0}},ID:function(m,p){return m.nodeType===1&&m.getAttribute("id")===p},TAG:function(m,p){return p==="*"&&m.nodeType===1||m.nodeName===p},CLASS:function(m,p){return(" "+(m.className||m.getAttribute("class"))+" ").indexOf(p)>-1},ATTR:function(m,p){var t=p[1];m=w.attrHandle[t]?w.attrHandle[t](m):m[t]!=null?m[t]:m.getAttribute(t);t=m+"";var v=p[2];p=p[4];return m==null?v==="!=":v==="="?t===p:v==="*="?t.indexOf(p)>=0:v==="~="?(" "+t+" ").indexOf(p)>=0:!p?t&&m!==
false:v==="!="?t!=p:v==="^="?t.indexOf(p)===0:v==="$="?t.substr(t.length-p.length)===p:v==="|="?t===p||t.substr(0,p.length+1)===p+"-":false},POS:function(m,p,t,v){var z=w.setFilters[p[2]];if(z)return z(m,t,p,v)}}},y=w.match.POS;for(var G in w.match)w.match[G]=RegExp(w.match[G].source+/(?![^\[]*\])(?![^\(]*\))/.source);var J=function(m,p){m=Array.prototype.slice.call(m);if(p){p.push.apply(p,m);return p}return m};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(I){J=function(m,
p){p=p||[];if(r.call(m)==="[object Array]")Array.prototype.push.apply(p,m);else if(typeof m.length==="number")for(var t=0,v=m.length;t<v;t++)p.push(m[t]);else for(t=0;m[t];t++)p.push(m[t]);return p}}var L;if(document.documentElement.compareDocumentPosition)L=function(m,p){m=m.compareDocumentPosition(p)&4?-1:m===p?0:1;if(m===0)hasDuplicate=true;return m};else if("sourceIndex"in document.documentElement)L=function(m,p){m=m.sourceIndex-p.sourceIndex;if(m===0)hasDuplicate=true;return m};else if(document.createRange)L=
function(m,p){var t=m.ownerDocument.createRange(),v=p.ownerDocument.createRange();t.selectNode(m);t.collapse(true);v.selectNode(p);v.collapse(true);m=t.compareBoundaryPoints(Range.START_TO_END,v);if(m===0)hasDuplicate=true;return m};(function(){var m=document.createElement("form"),p="script"+(new Date).getTime();m.innerHTML="<input name='"+p+"'/>";var t=document.documentElement;t.insertBefore(m,t.firstChild);if(document.getElementById(p)){w.find.ID=function(v,z,B){if(typeof z.getElementById!=="undefined"&&
!B)return(z=z.getElementById(v[1]))?z.id===v[1]||typeof z.getAttributeNode!=="undefined"&&z.getAttributeNode("id").nodeValue===v[1]?[z]:void 0:[]};w.filter.ID=function(v,z){var B=typeof v.getAttributeNode!=="undefined"&&v.getAttributeNode("id");return v.nodeType===1&&B&&B.nodeValue===z}}t.removeChild(m)})();(function(){var m=document.createElement("div");m.appendChild(document.createComment(""));if(m.getElementsByTagName("*").length>0)w.find.TAG=function(p,t){t=t.getElementsByTagName(p[1]);if(p[1]===
"*"){p=[];for(var v=0;t[v];v++)t[v].nodeType===1&&p.push(t[v]);t=p}return t};m.innerHTML="<a href='#'></a>";if(m.firstChild&&typeof m.firstChild.getAttribute!=="undefined"&&m.firstChild.getAttribute("href")!=="#")w.attrHandle.href=function(p){return p.getAttribute("href",2)}})();document.querySelectorAll&&function(){var m=u,p=document.createElement("div");p.innerHTML="<p class='TEST'></p>";if(!(p.querySelectorAll&&p.querySelectorAll(".TEST").length===0)){u=function(t,v,z,B){v=v||document;if(!B&&v.nodeType===
9&&!F(v))try{return J(v.querySelectorAll(t),z)}catch(C){}return m(t,v,z,B)};u.find=m.find;u.filter=m.filter;u.selectors=m.selectors;u.matches=m.matches}}();document.getElementsByClassName&&document.documentElement.getElementsByClassName&&function(){var m=document.createElement("div");m.innerHTML="<div class='test e'></div><div class='test'></div>";if(m.getElementsByClassName("e").length!==0){m.lastChild.className="e";if(m.getElementsByClassName("e").length!==1){w.order.splice(1,0,"CLASS");w.find.CLASS=
function(p,t,v){if(typeof t.getElementsByClassName!=="undefined"&&!v)return t.getElementsByClassName(p[1])}}}}();var P=document.compareDocumentPosition?function(m,p){return m.compareDocumentPosition(p)&16}:function(m,p){return m!==p&&(m.contains?m.contains(p):true)},F=function(m){return m.nodeType===9&&m.documentElement.nodeName!=="HTML"||!!m.ownerDocument&&F(m.ownerDocument)},S=function(m,p){var t=[],v="",z;for(p=p.nodeType?[p]:p;z=w.match.PSEUDO.exec(m);){v+=z[0];m=m.replace(w.match.PSEUDO,"")}m=
w.relative[m]?m+"*":m;z=0;for(var B=p.length;z<B;z++)u(m,p[z],t);return u.filter(v,t)};j.find=u;j.filter=u.filter;j.expr=u.selectors;j.expr[":"]=j.expr.filters;u.selectors.filters.hidden=function(m){return m.offsetWidth===0||m.offsetHeight===0};u.selectors.filters.visible=function(m){return m.offsetWidth>0||m.offsetHeight>0};u.selectors.filters.animated=function(m){return j.grep(j.timers,function(p){return m===p.elem}).length};j.multiFilter=function(m,p,t){if(t)m=":not("+m+")";return u.matches(m,
p)};j.dir=function(m,p){var t=[];for(m=m[p];m&&m!=document;){m.nodeType==1&&t.push(m);m=m[p]}return t};j.nth=function(m,p,t){p=p||1;for(var v=0;m;m=m[t])if(m.nodeType==1&&++v==p)break;return m};j.sibling=function(m,p){for(var t=[];m;m=m.nextSibling)m.nodeType==1&&m!=p&&t.push(m);return t}})();j.event={add:function(f,i,l,n){if(!(f.nodeType==3||f.nodeType==8)){if(f.setInterval&&f!=A)f=A;if(!l.guid)l.guid=this.guid++;if(n!==void 0){l=this.proxy(l);l.data=n}var r=j.data(f,"events")||j.data(f,"events",
{}),u=j.data(f,"handle")||j.data(f,"handle",function(){return typeof j!=="undefined"&&!j.event.triggered?j.event.handle.apply(arguments.callee.elem,arguments):void 0});u.elem=f;j.each(i.split(/\s+/),function(w,y){w=y.split(".");y=w.shift();l.type=w.slice().sort().join(".");var G=r[y];j.event.specialAll[y]&&j.event.specialAll[y].setup.call(f,n,w);if(!G){G=r[y]={};if(!j.event.special[y]||j.event.special[y].setup.call(f,n,w)===false)if(f.addEventListener)f.addEventListener(y,u,false);else f.attachEvent&&
f.attachEvent("on"+y,u)}G[l.guid]=l;j.event.global[y]=true});f=null}},guid:1,global:{},remove:function(f,i,l){if(!(f.nodeType==3||f.nodeType==8)){var n=j.data(f,"events"),r;if(n){if(i===void 0||typeof i==="string"&&i.charAt(0)==".")for(var u in n)this.remove(f,u+(i||""));else{if(i.type){l=i.handler;i=i.type}j.each(i.split(/\s+/),function(w,y){w=y.split(".");y=w.shift();var G=RegExp("(^|\\.)"+w.slice().sort().join(".*\\.")+"(\\.|$)");if(n[y]){if(l)delete n[y][l.guid];else for(var J in n[y])G.test(n[y][J].type)&&
delete n[y][J];j.event.specialAll[y]&&j.event.specialAll[y].teardown.call(f,w);for(r in n[y])break;if(!r){if(!j.event.special[y]||j.event.special[y].teardown.call(f,w)===false)if(f.removeEventListener)f.removeEventListener(y,j.data(f,"handle"),false);else f.detachEvent&&f.detachEvent("on"+y,j.data(f,"handle"));r=null;delete n[y]}}})}for(r in n)break;if(!r){if(i=j.data(f,"handle"))i.elem=null;j.removeData(f,"events");j.removeData(f,"handle")}}}},trigger:function(f,i,l,n){var r=f.type||f;if(!n){f=typeof f===
"object"?f[R]?f:j.extend(j.Event(r),f):j.Event(r);if(r.indexOf("!")>=0){f.type=r=r.slice(0,-1);f.exclusive=true}if(!l){f.stopPropagation();this.global[r]&&j.each(j.cache,function(){this.events&&this.events[r]&&j.event.trigger(f,i,this.handle.elem)})}if(!l||l.nodeType==3||l.nodeType==8)return;f.result=void 0;f.target=l;i=j.makeArray(i);i.unshift(f)}f.currentTarget=l;var u=j.data(l,"handle");u&&u.apply(l,i);if((!l[r]||j.nodeName(l,"a")&&r=="click")&&l["on"+r]&&l["on"+r].apply(l,i)===false)f.result=
false;if(!n&&l[r]&&!f.isDefaultPrevented()&&!(j.nodeName(l,"a")&&r=="click")){this.triggered=true;try{l[r]()}catch(w){}}this.triggered=false;if(!f.isPropagationStopped())(l=l.parentNode||l.ownerDocument)&&j.event.trigger(f,i,l,true)},handle:function(f){var i,l;f=arguments[0]=j.event.fix(f||A.event);f.currentTarget=this;l=f.type.split(".");f.type=l.shift();i=!l.length&&!f.exclusive;var n=RegExp("(^|\\.)"+l.slice().sort().join(".*\\.")+"(\\.|$)");l=(j.data(this,"events")||{})[f.type];for(var r in l){var u=
l[r];if(i||n.test(u.type)){f.handler=u;f.data=u.data;u=u.apply(this,arguments);if(u!==void 0){f.result=u;if(u===false){f.preventDefault();f.stopPropagation()}}if(f.isImmediatePropagationStopped())break}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
fix:function(f){if(f[R])return f;var i=f;f=j.Event(i);for(var l=this.props.length,n;l;){n=this.props[--l];f[n]=i[n]}if(!f.target)f.target=f.srcElement||document;if(f.target.nodeType==3)f.target=f.target.parentNode;if(!f.relatedTarget&&f.fromElement)f.relatedTarget=f.fromElement==f.target?f.toElement:f.fromElement;if(f.pageX==null&&f.clientX!=null){i=document.documentElement;l=document.body;f.pageX=f.clientX+(i&&i.scrollLeft||l&&l.scrollLeft||0)-(i.clientLeft||0);f.pageY=f.clientY+(i&&i.scrollTop||
l&&l.scrollTop||0)-(i.clientTop||0)}if(!f.which&&(f.charCode||f.charCode===0?f.charCode:f.keyCode))f.which=f.charCode||f.keyCode;if(!f.metaKey&&f.ctrlKey)f.metaKey=f.ctrlKey;if(!f.which&&f.button)f.which=f.button&1?1:f.button&2?3:f.button&4?2:0;return f},proxy:function(f,i){i=i||function(){return f.apply(this,arguments)};i.guid=f.guid=f.guid||i.guid||this.guid++;return i},special:{ready:{setup:q,teardown:function(){}}},specialAll:{live:{setup:function(f,i){j.event.add(this,i[0],k)},teardown:function(f){if(f.length){var i=
0,l=RegExp("(^|\\.)"+f[0]+"(\\.|$)");j.each(j.data(this,"events").live||{},function(){l.test(this.type)&&i++});i<1&&j.event.remove(this,f[0],k)}}}}};j.Event=function(f){if(!this.preventDefault)return new j.Event(f);if(f&&f.type){this.originalEvent=f;this.type=f.type}else this.type=f;this.timeStamp=d();this[R]=true};j.Event.prototype={preventDefault:function(){this.isDefaultPrevented=h;var f=this.originalEvent;if(f){f.preventDefault&&f.preventDefault();f.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=
h;var f=this.originalEvent;if(f){f.stopPropagation&&f.stopPropagation();f.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=h;this.stopPropagation()},isDefaultPrevented:g,isPropagationStopped:g,isImmediatePropagationStopped:g};var ga=function(f){for(var i=f.relatedTarget;i&&i!=this;)try{i=i.parentNode}catch(l){i=this}if(i!=this){f.type=f.data;j.event.handle.apply(this,arguments)}};j.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(f,i){j.event.special[i]=
{setup:function(){j.event.add(this,f,ga,i)},teardown:function(){j.event.remove(this,f,ga)}}});j.fn.extend({bind:function(f,i,l){return f=="unload"?this.one(f,i,l):this.each(function(){j.event.add(this,f,l||i,l&&i)})},one:function(f,i,l){var n=j.event.proxy(l||i,function(r){j(this).unbind(r,n);return(l||i).apply(this,arguments)});return this.each(function(){j.event.add(this,f,n,l&&i)})},unbind:function(f,i){return this.each(function(){j.event.remove(this,f,i)})},trigger:function(f,i){return this.each(function(){j.event.trigger(f,
i,this)})},triggerHandler:function(f,i){if(this[0]){f=j.Event(f);f.preventDefault();f.stopPropagation();j.event.trigger(f,i,this[0]);return f.result}},toggle:function(f){for(var i=arguments,l=1;l<i.length;)j.event.proxy(f,i[l++]);return this.click(j.event.proxy(f,function(n){this.lastToggle=(this.lastToggle||0)%l;n.preventDefault();return i[this.lastToggle++].apply(this,arguments)||false}))},hover:function(f,i){return this.mouseenter(f).mouseleave(i)},ready:function(f){q();j.isReady?f.call(document,
j):j.readyList.push(f);return this},live:function(f,i){i=j.event.proxy(i);i.guid+=this.selector+f;j(document).bind(o(f,this.selector),this.selector,i);return this},die:function(f,i){j(document).unbind(o(f,this.selector),i?{guid:i.guid+this.selector+f}:null);return this}});j.extend({isReady:false,readyList:[],ready:function(){if(!j.isReady){j.isReady=true;if(j.readyList){j.each(j.readyList,function(){this.call(document,j)});j.readyList=null}j(document).triggerHandler("ready")}}});var ba=false;j.each("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error".split(","),
function(f,i){j.fn[i]=function(l){return l?this.bind(i,l):this.trigger(i)}});j(A).bind("unload",function(){for(var f in j.cache)f!=1&&j.cache[f].handle&&j.event.remove(j.cache[f].handle.elem)});(function(){j.support={};var f=document.documentElement,i=document.createElement("script"),l=document.createElement("div"),n="script"+(new Date).getTime();l.style.display="none";l.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';
var r=l.getElementsByTagName("*"),u=l.getElementsByTagName("a")[0];if(!(!r||!r.length||!u)){j.support={leadingWhitespace:l.firstChild.nodeType==3,tbody:!l.getElementsByTagName("tbody").length,objectAll:!!l.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!l.getElementsByTagName("link").length,style:/red/.test(u.getAttribute("style")),hrefNormalized:u.getAttribute("href")==="/a",opacity:u.style.opacity==="0.5",cssFloat:!!u.style.cssFloat,scriptEval:false,noCloneEvent:true,
boxModel:null};i.type="text/javascript";try{i.appendChild(document.createTextNode("window."+n+"=1;"))}catch(w){}f.insertBefore(i,f.firstChild);if(A[n]){j.support.scriptEval=true;delete A[n]}f.removeChild(i);if(l.attachEvent&&l.fireEvent){l.attachEvent("onclick",function(){j.support.noCloneEvent=false;l.detachEvent("onclick",arguments.callee)});l.cloneNode(true).fireEvent("onclick")}j(function(){var y=document.createElement("div");y.style.width=y.style.paddingLeft="1px";document.body.appendChild(y);
j.boxModel=j.support.boxModel=y.offsetWidth===2;document.body.removeChild(y).style.display="none"})}})();var X=j.support.cssFloat?"cssFloat":"styleFloat";j.props={"for":"htmlFor","class":"className","float":X,cssFloat:X,styleFloat:X,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};j.fn.extend({_load:j.fn.load,load:function(f,i,l){if(typeof f!=="string")return this._load(f);var n=f.indexOf(" ");if(n>=0){var r=f.slice(n,f.length);f=f.slice(0,
n)}n="GET";if(i)if(j.isFunction(i)){l=i;i=null}else if(typeof i==="object"){i=j.param(i);n="POST"}var u=this;j.ajax({url:f,type:n,dataType:"html",data:i,complete:function(w,y){if(y=="success"||y=="notmodified")u.html(r?j("<div/>").append(w.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(r):w.responseText);l&&u.each(l,[w.responseText,y,w])}});return this},serialize:function(){return j.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?
j.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(f,i){f=j(this).val();return f==null?null:j.isArray(f)?j.map(f,function(l){return{name:i.name,value:l}}):{name:i.name,value:f}}).get()}});j.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(f,i){j.fn[i]=function(l){return this.bind(i,l)}});var ja=d();j.extend({get:function(f,
i,l,n){if(j.isFunction(i)){l=i;i=null}return j.ajax({type:"GET",url:f,data:i,success:l,dataType:n})},getScript:function(f,i){return j.get(f,null,i,"script")},getJSON:function(f,i,l){return j.get(f,i,l,"json")},post:function(f,i,l,n){if(j.isFunction(i)){l=i;i={}}return j.ajax({type:"POST",url:f,data:i,success:l,dataType:n})},ajaxSetup:function(f){j.extend(j.ajaxSettings,f)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,
xhr:function(){return A.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(f){function i(){f.success&&f.success(w,u);f.global&&j.event.trigger("ajaxSuccess",[F,f])}function l(){f.complete&&f.complete(F,u);f.global&&j.event.trigger("ajaxComplete",[F,f]);f.global&&!--j.active&&
j.event.trigger("ajaxStop")}f=j.extend(true,f,j.extend(true,{},j.ajaxSettings,f));var n,r=/=\?(&|$)/g,u,w,y=f.type.toUpperCase();if(f.data&&f.processData&&typeof f.data!=="string")f.data=j.param(f.data);if(f.dataType=="jsonp"){if(y=="GET")f.url.match(r)||(f.url+=(f.url.match(/\?/)?"&":"?")+(f.jsonp||"callback")+"=?");else if(!f.data||!f.data.match(r))f.data=(f.data?f.data+"&":"")+(f.jsonp||"callback")+"=?";f.dataType="json"}if(f.dataType=="json"&&(f.data&&f.data.match(r)||f.url.match(r))){n="jsonp"+
ja++;if(f.data)f.data=(f.data+"").replace(r,"="+n+"$1");f.url=f.url.replace(r,"="+n+"$1");f.dataType="script";A[n]=function(v){w=v;i();l();A[n]=void 0;try{delete A[n]}catch(z){}J&&J.removeChild(I)}}if(f.dataType=="script"&&f.cache==null)f.cache=false;if(f.cache===false&&y=="GET"){r=d();var G=f.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+r+"$2");f.url=G+(G==f.url?(f.url.match(/\?/)?"&":"?")+"_="+r:"")}if(f.data&&y=="GET"){f.url+=(f.url.match(/\?/)?"&":"?")+f.data;f.data=null}f.global&&!j.active++&&j.event.trigger("ajaxStart");
r=/^(\w+:)?\/\/([^\/?#]+)/.exec(f.url);if(f.dataType=="script"&&y=="GET"&&r&&(r[1]&&r[1]!=location.protocol||r[2]!=location.host)){var J=document.getElementsByTagName("head")[0],I=document.createElement("script");I.src=f.url;if(f.scriptCharset)I.charset=f.scriptCharset;if(!n){var L=false;I.onload=I.onreadystatechange=function(){if(!L&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){L=true;i();l();I.onload=I.onreadystatechange=null;J.removeChild(I)}}}J.appendChild(I)}else{var P=
false,F=f.xhr();f.username?F.open(y,f.url,f.async,f.username,f.password):F.open(y,f.url,f.async);try{f.data&&F.setRequestHeader("Content-Type",f.contentType);if(f.ifModified)F.setRequestHeader("If-Modified-Since",j.lastModified[f.url]||"Thu, 01 Jan 1970 00:00:00 GMT");F.setRequestHeader("X-Requested-With","XMLHttpRequest");F.setRequestHeader("Accept",f.dataType&&f.accepts[f.dataType]?f.accepts[f.dataType]+", */*":f.accepts._default)}catch(S){}if(f.beforeSend&&f.beforeSend(F,f)===false){f.global&&
!--j.active&&j.event.trigger("ajaxStop");F.abort();return false}f.global&&j.event.trigger("ajaxSend",[F,f]);var m=function(v){if(F.readyState==0){if(p){clearInterval(p);p=null;f.global&&!--j.active&&j.event.trigger("ajaxStop")}}else if(!P&&F&&(F.readyState==4||v=="timeout")){P=true;if(p){clearInterval(p);p=null}u=v=="timeout"?"timeout":!j.httpSuccess(F)?"error":f.ifModified&&j.httpNotModified(F,f.url)?"notmodified":"success";if(u=="success")try{w=j.httpData(F,f.dataType,f)}catch(z){u="parsererror"}if(u==
"success"){var B;try{B=F.getResponseHeader("Last-Modified")}catch(C){}if(f.ifModified&&B)j.lastModified[f.url]=B;n||i()}else j.handleError(f,F,u);l();v&&F.abort();if(f.async)F=null}};if(f.async){var p=setInterval(m,13);f.timeout>0&&setTimeout(function(){F&&!P&&m("timeout")},f.timeout)}try{F.send(f.data)}catch(t){j.handleError(f,F,null,t)}f.async||m();return F}},handleError:function(f,i,l,n){f.error&&f.error(i,l,n);f.global&&j.event.trigger("ajaxError",[i,f,n])},active:0,httpSuccess:function(f){try{return!f.status&&
location.protocol=="file:"||f.status>=200&&f.status<300||f.status==304||f.status==1223}catch(i){}return false},httpNotModified:function(f,i){try{var l=f.getResponseHeader("Last-Modified");return f.status==304||l==j.lastModified[i]}catch(n){}return false},httpData:function(f,i,l){var n=f.getResponseHeader("content-type");f=(n=i=="xml"||!i&&n&&n.indexOf("xml")>=0)?f.responseXML:f.responseText;if(n&&f.documentElement.tagName=="parsererror")throw"parsererror";if(l&&l.dataFilter)f=l.dataFilter(f,i);if(typeof f===
"string"){i=="script"&&j.globalEval(f);if(i=="json")f=A.eval("("+f+")")}return f},param:function(f){function i(r,u){l[l.length]=encodeURIComponent(r)+"="+encodeURIComponent(u)}var l=[];if(j.isArray(f)||f.jquery)j.each(f,function(){i(this.name,this.value)});else for(var n in f)j.isArray(f[n])?j.each(f[n],function(){i(n,this)}):i(n,j.isFunction(f[n])?f[n]():f[n]);return l.join("&").replace(/%20/g,"+")}});var aa={},$,ca=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft",
"marginRight","paddingLeft","paddingRight"],["opacity"]];j.fn.extend({show:function(f,i){if(f)return this.animate(x("show",3),f,i);else{f=0;for(i=this.length;f<i;f++){var l=j.data(this[f],"olddisplay");this[f].style.display=l||"";if(j.css(this[f],"display")==="none"){l=this[f].tagName;var n;if(aa[l])n=aa[l];else{var r=j("<"+l+" />").appendTo("body");n=r.css("display");if(n==="none")n="block";r.remove();aa[l]=n}j.data(this[f],"olddisplay",n)}}f=0;for(i=this.length;f<i;f++)this[f].style.display=j.data(this[f],
"olddisplay")||"";return this}},hide:function(f,i){if(f)return this.animate(x("hide",3),f,i);else{f=0;for(i=this.length;f<i;f++){var l=j.data(this[f],"olddisplay");!l&&l!=="none"&&j.data(this[f],"olddisplay",j.css(this[f],"display"))}f=0;for(i=this.length;f<i;f++)this[f].style.display="none";return this}},_toggle:j.fn.toggle,toggle:function(f,i){var l=typeof f==="boolean";return j.isFunction(f)&&j.isFunction(i)?this._toggle.apply(this,arguments):f==null||l?this.each(function(){var n=l?f:j(this).is(":hidden");
j(this)[n?"show":"hide"]()}):this.animate(x("toggle",3),f,i)},fadeTo:function(f,i,l){return this.animate({opacity:i},f,l)},animate:function(f,i,l,n){var r=j.speed(i,l,n);return this[r.queue===false?"each":"queue"](function(){var u=j.extend({},r),w,y=this.nodeType==1&&j(this).is(":hidden"),G=this;for(w in f){if(f[w]=="hide"&&y||f[w]=="show"&&!y)return u.complete.call(this);if((w=="height"||w=="width")&&this.style){u.display=j.css(this,"display");u.overflow=this.style.overflow}}if(u.overflow!=null)this.style.overflow=
"hidden";u.curAnim=j.extend({},f);j.each(f,function(J,I){var L=new j.fx(G,u,J);if(/toggle|show|hide/.test(I))L[I=="toggle"?y?"show":"hide":I](f);else{var P=I.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),F=L.cur(true)||0;if(P){I=parseFloat(P[2]);var S=P[3]||"px";if(S!="px"){G.style[J]=(I||1)+S;F=(I||1)/L.cur(true)*F;G.style[J]=F+S}if(P[1])I=(P[1]=="-="?-1:1)*I+F;L.custom(F,I,S)}else L.custom(F,I,"")}});return true})},stop:function(f,i){var l=j.timers;f&&this.queue([]);this.each(function(){for(var n=
l.length-1;n>=0;n--)if(l[n].elem==this){i&&l[n](true);l.splice(n,1)}});i||this.dequeue();return this}});j.each({slideDown:x("show",1),slideUp:x("hide",1),slideToggle:x("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(f,i){j.fn[f]=function(l,n){return this.animate(i,l,n)}});j.extend({speed:function(f,i,l){var n=typeof f==="object"?f:{complete:l||!l&&i||j.isFunction(f)&&f,duration:f,easing:l&&i||i&&!j.isFunction(i)&&i};n.duration=j.fx.off?0:typeof n.duration==="number"?n.duration:
j.fx.speeds[n.duration]||j.fx.speeds._default;n.old=n.complete;n.complete=function(){n.queue!==false&&j(this).dequeue();j.isFunction(n.old)&&n.old.call(this)};return n},easing:{linear:function(f,i,l,n){return l+n*f},swing:function(f,i,l,n){return(-Math.cos(f*Math.PI)/2+0.5)*n+l}},timers:[],fx:function(f,i,l){this.options=i;this.elem=f;this.prop=l;if(!i.orig)i.orig={}}});j.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(j.fx.step[this.prop]||j.fx.step._default)(this);
if((this.prop=="height"||this.prop=="width")&&this.elem.style)this.elem.style.display="block"},cur:function(f){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(f=parseFloat(j.css(this.elem,this.prop,f)))&&f>-10000?f:parseFloat(j.curCSS(this.elem,this.prop))||0},custom:function(f,i,l){function n(u){return r.step(u)}this.startTime=d();this.start=f;this.end=i;this.unit=l||this.unit||"px";this.now=this.start;this.pos=this.state=0;var r=
this;n.elem=this.elem;if(n()&&j.timers.push(n)&&!$)$=setInterval(function(){for(var u=j.timers,w=0;w<u.length;w++)u[w]()||u.splice(w--,1);if(!u.length){clearInterval($);$=void 0}},13)},show:function(){this.options.orig[this.prop]=j.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());j(this.elem).show()},hide:function(){this.options.orig[this.prop]=j.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),
0)},step:function(f){var i=d();if(f||i>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();f=this.options.curAnim[this.prop]=true;for(var l in this.options.curAnim)if(this.options.curAnim[l]!==true)f=false;if(f){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(j.css(this.elem,"display")=="none")this.elem.style.display="block"}this.options.hide&&j(this.elem).hide();if(this.options.hide||
this.options.show)for(var n in this.options.curAnim)j.attr(this.elem.style,n,this.options.orig[n]);this.options.complete.call(this.elem)}return false}else{l=i-this.startTime;this.state=l/this.options.duration;this.pos=j.easing[this.options.easing||(j.easing.swing?"swing":"linear")](this.state,l,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};j.extend(j.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(f){j.attr(f.elem.style,
"opacity",f.now)},_default:function(f){if(f.elem.style&&f.elem.style[f.prop]!=null)f.elem.style[f.prop]=f.now+f.unit;else f.elem[f.prop]=f.now}}});j.fn.offset=document.documentElement.getBoundingClientRect?function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return j.offset.bodyOffset(this[0]);var f=this[0].getBoundingClientRect(),i=this[0].ownerDocument,l=i.body;i=i.documentElement;return{top:f.top+(self.pageYOffset||j.boxModel&&i.scrollTop||l.scrollTop)-(i.clientTop||
l.clientTop||0),left:f.left+(self.pageXOffset||j.boxModel&&i.scrollLeft||l.scrollLeft)-(i.clientLeft||l.clientLeft||0)}}:function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return j.offset.bodyOffset(this[0]);j.offset.initialized||j.offset.initialize();var f=this[0],i=f.offsetParent,l=f.ownerDocument,n,r=l.documentElement,u=l.body;l=l.defaultView;n=l.getComputedStyle(f,null);for(var w=f.offsetTop,y=f.offsetLeft;(f=f.parentNode)&&f!==u&&f!==r;){n=l.getComputedStyle(f,
null);w-=f.scrollTop;y-=f.scrollLeft;if(f===i){w+=f.offsetTop;y+=f.offsetLeft;if(j.offset.doesNotAddBorder&&!(j.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(f.tagName))){w+=parseInt(n.borderTopWidth,10)||0;y+=parseInt(n.borderLeftWidth,10)||0}i=f.offsetParent}if(j.offset.subtractsBorderForOverflowNotVisible&&n.overflow!=="visible"){w+=parseInt(n.borderTopWidth,10)||0;y+=parseInt(n.borderLeftWidth,10)||0}n=n}if(n.position==="relative"||n.position==="static"){w+=u.offsetTop;y+=u.offsetLeft}if(n.position===
"fixed"){w+=Math.max(r.scrollTop,u.scrollTop);y+=Math.max(r.scrollLeft,u.scrollLeft)}return{top:w,left:y}};j.offset={initialize:function(){if(!this.initialized){var f=document.body,i=document.createElement("div"),l,n,r,u=f.style.marginTop;l={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(n in l)i.style[n]=l[n];i.innerHTML='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';
f.insertBefore(i,f.firstChild);l=i.firstChild;n=l.firstChild;r=l.nextSibling.firstChild.firstChild;this.doesNotAddBorder=n.offsetTop!==5;this.doesAddBorderForTableAndCells=r.offsetTop===5;l.style.overflow="hidden";l.style.position="relative";this.subtractsBorderForOverflowNotVisible=n.offsetTop===-5;f.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=f.offsetTop===0;f.style.marginTop=u;f.removeChild(i);this.initialized=true}},bodyOffset:function(f){j.offset.initialized||j.offset.initialize();
var i=f.offsetTop,l=f.offsetLeft;if(j.offset.doesNotIncludeMarginInBodyOffset){i+=parseInt(j.curCSS(f,"marginTop",true),10)||0;l+=parseInt(j.curCSS(f,"marginLeft",true),10)||0}return{top:i,left:l}}};j.fn.extend({position:function(){var f;if(this[0]){f=this.offsetParent();var i=this.offset(),l=/^body|html$/i.test(f[0].tagName)?{top:0,left:0}:f.offset();i.top-=e(this,"marginTop");i.left-=e(this,"marginLeft");l.top+=e(f,"borderTopWidth");l.left+=e(f,"borderLeftWidth");f={top:i.top-l.top,left:i.left-
l.left}}return f},offsetParent:function(){for(var f=this[0].offsetParent||document.body;f&&!/^body|html$/i.test(f.tagName)&&j.css(f,"position")=="static";)f=f.offsetParent;return j(f)}});j.each(["Left","Top"],function(f,i){var l="scroll"+i;j.fn[l]=function(n){if(!this[0])return null;return n!==void 0?this.each(function(){this==A||this==document?A.scrollTo(!f?n:j(A).scrollLeft(),f?n:j(A).scrollTop()):(this[l]=n)}):this[0]==A||this[0]==document?self[f?"pageYOffset":"pageXOffset"]||j.boxModel&&document.documentElement[l]||
document.body[l]:this[0][l]}});j.each(["Height","Width"],function(f,i){var l=i.toLowerCase();j.fn["inner"+i]=function(){return this[0]?j.css(this[0],l,false,"padding"):null};j.fn["outer"+i]=function(r){return this[0]?j.css(this[0],l,false,r?"margin":"border"):null};var n=i.toLowerCase();j.fn[n]=function(r){return this[0]==A?document.compatMode=="CSS1Compat"&&document.documentElement["client"+i]||document.body["client"+i]:this[0]==document?Math.max(document.documentElement["client"+i],document.body["scroll"+
i],document.documentElement["scroll"+i],document.body["offset"+i],document.documentElement["offset"+i]):r===void 0?this.length?j.css(this[0],n):null:this.css(n,typeof r==="string"?r:r+"px")}})})();goog.string={};goog.string.Unicode={NBSP:"\u00a0"};goog.string.startsWith=function(b,d){return b.lastIndexOf(d,0)==0};goog.string.endsWith=function(b,d){var e=b.length-d.length;return e>=0&&b.indexOf(d,e)==e};goog.string.caseInsensitiveStartsWith=function(b,d){return goog.string.caseInsensitiveCompare(d,b.substr(0,d.length))==0};goog.string.caseInsensitiveEndsWith=function(b,d){return goog.string.caseInsensitiveCompare(d,b.substr(b.length-d.length,d.length))==0};
goog.string.subs=function(b){for(var d=1;d<arguments.length;d++){var e=String(arguments[d]).replace(/\$/g,"$$$$");b=b.replace(/\%s/,e)}return b};goog.string.collapseWhitespace=function(b){return b.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")};goog.string.isEmpty=function(b){return/^[\s\xa0]*$/.test(b)};goog.string.isEmptySafe=function(b){return goog.string.isEmpty(goog.string.makeSafe(b))};goog.string.isBreakingWhitespace=function(b){return!/[^\t\n\r ]/.test(b)};goog.string.isAlpha=function(b){return!/[^a-zA-Z]/.test(b)};
goog.string.isNumeric=function(b){return!/[^0-9]/.test(b)};goog.string.isAlphaNumeric=function(b){return!/[^a-zA-Z0-9]/.test(b)};goog.string.isSpace=function(b){return b==" "};goog.string.isUnicodeChar=function(b){return b.length==1&&b>=" "&&b<="~"||b>="\u0080"&&b<="\ufffd"};goog.string.stripNewlines=function(b){return b.replace(/(\r\n|\r|\n)+/g," ")};goog.string.canonicalizeNewlines=function(b){return b.replace(/(\r\n|\r|\n)/g,"\n")};
goog.string.normalizeWhitespace=function(b){return b.replace(/\xa0|\s/g," ")};goog.string.normalizeSpaces=function(b){return b.replace(/\xa0|[ \t]+/g," ")};goog.string.trim=function(b){return b.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};goog.string.trimLeft=function(b){return b.replace(/^[\s\xa0]+/,"")};goog.string.trimRight=function(b){return b.replace(/[\s\xa0]+$/,"")};goog.string.caseInsensitiveCompare=function(b,d){b=String(b).toLowerCase();d=String(d).toLowerCase();return b<d?-1:b==d?0:1};
goog.string.numerateCompareRegExp_=/(\.\d+)|(\d+)|(\D+)/g;goog.string.numerateCompare=function(b,d){if(b==d)return 0;if(!b)return-1;if(!d)return 1;for(var e=b.toLowerCase().match(goog.string.numerateCompareRegExp_),g=d.toLowerCase().match(goog.string.numerateCompareRegExp_),h=Math.min(e.length,g.length),k=0;k<h;k++){var o=e[k],q=g[k];if(o!=q){b=parseInt(o,10);if(!isNaN(b)){d=parseInt(q,10);if(!isNaN(d)&&b-d)return b-d}return o<q?-1:1}}if(e.length!=g.length)return e.length-g.length;return b<d?-1:1};
goog.string.encodeUriRegExp_=/^[a-zA-Z0-9\-_.!~*'()]*$/;goog.string.urlEncode=function(b){b=String(b);if(!goog.string.encodeUriRegExp_.test(b))return encodeURIComponent(b);return b};goog.string.urlDecode=function(b){return decodeURIComponent(b.replace(/\+/g," "))};goog.string.newLineToBr=function(b,d){return b.replace(/(\r\n|\r|\n)/g,d?"<br />":"<br>")};
goog.string.htmlEscape=function(b,d){if(d)return b.replace(goog.string.amperRe_,"&amp;").replace(goog.string.ltRe_,"&lt;").replace(goog.string.gtRe_,"&gt;").replace(goog.string.quotRe_,"&quot;");else{if(!goog.string.allRe_.test(b))return b;if(b.indexOf("&")!=-1)b=b.replace(goog.string.amperRe_,"&amp;");if(b.indexOf("<")!=-1)b=b.replace(goog.string.ltRe_,"&lt;");if(b.indexOf(">")!=-1)b=b.replace(goog.string.gtRe_,"&gt;");if(b.indexOf('"')!=-1)b=b.replace(goog.string.quotRe_,"&quot;");return b}};
goog.string.amperRe_=/&/g;goog.string.ltRe_=/</g;goog.string.gtRe_=/>/g;goog.string.quotRe_=/\"/g;goog.string.allRe_=/[&<>\"]/;goog.string.unescapeEntities=function(b){if(goog.string.contains(b,"&"))return"document"in goog.global&&!goog.string.contains(b,"<")?goog.string.unescapeEntitiesUsingDom_(b):goog.string.unescapePureXmlEntities_(b);return b};
goog.string.unescapeEntitiesUsingDom_=function(b){var d=goog.global.document.createElement("a");d.innerHTML=b;d[goog.string.NORMALIZE_FN_]&&d[goog.string.NORMALIZE_FN_]();b=d.firstChild.nodeValue;d.innerHTML="";return b};goog.string.unescapePureXmlEntities_=function(b){return b.replace(/&([^;]+);/g,function(d,e){switch(e){case "amp":return"&";case "lt":return"<";case "gt":return">";case "quot":return'"';default:if(e.charAt(0)=="#"){e=Number("0"+e.substr(1));if(!isNaN(e))return String.fromCharCode(e)}return d}})};
goog.string.NORMALIZE_FN_="normalize";goog.string.whitespaceEscape=function(b,d){return goog.string.newLineToBr(b.replace(/  /g," &#160;"),d)};goog.string.stripQuotes=function(b,d){for(var e=d.length,g=0;g<e;g++){var h=e==1?d:d.charAt(g);if(b.charAt(0)==h&&b.charAt(b.length-1)==h)return b.substring(1,b.length-1)}return b};goog.string.truncate=function(b,d,e){if(e)b=goog.string.unescapeEntities(b);if(b.length>d)b=b.substring(0,d-3)+"...";if(e)b=goog.string.htmlEscape(b);return b};
goog.string.truncateMiddle=function(b,d,e){if(e)b=goog.string.unescapeEntities(b);if(b.length>d){var g=Math.floor(d/2),h=b.length-g;g+=d%2;b=b.substring(0,g)+"..."+b.substring(h)}if(e)b=goog.string.htmlEscape(b);return b};goog.string.jsEscapeCache_={"\u0008":"\\b","\u000c":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\u000b":"\\x0B",'"':'\\"',"'":"\\'","\\":"\\\\"};
goog.string.quote=function(b){b=String(b);if(b.quote)return b.quote();else{for(var d=['"'],e=0;e<b.length;e++)d[e+1]=goog.string.escapeChar(b.charAt(e));d.push('"');return d.join("")}};goog.string.escapeChar=function(b){if(b in goog.string.jsEscapeCache_)return goog.string.jsEscapeCache_[b];var d=b,e=b.charCodeAt(0);if(e>31&&e<127)d=b;else{if(e<256){d="\\x";if(e<16||e>256)d+="0"}else{d="\\u";if(e<4096)d+="0"}d+=e.toString(16).toUpperCase()}return goog.string.jsEscapeCache_[b]=d};
goog.string.toMap=function(b){for(var d={},e=0;e<b.length;e++)d[b.charAt(e)]=true;return d};goog.string.contains=function(b,d){return b.indexOf(d)!=-1};goog.string.removeAt=function(b,d,e){var g=b;if(d>=0&&d<b.length&&e>0)g=b.substr(0,d)+b.substr(d+e,b.length-d-e);return g};goog.string.remove=function(b,d){d=new RegExp(goog.string.regExpEscape(d),"");return b.replace(d,"")};goog.string.removeAll=function(b,d){d=new RegExp(goog.string.regExpEscape(d),"g");return b.replace(d,"")};
goog.string.regExpEscape=function(b){return String(b).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};goog.string.repeat=function(b,d){return(new Array(d+1)).join(b)};goog.string.padNumber=function(b,d,e){b=goog.isDef(e)?b.toFixed(e):String(b);e=b.indexOf(".");if(e==-1)e=b.length;return goog.string.repeat("0",Math.max(0,d-e))+b};goog.string.makeSafe=function(b){return b==null?"":String(b)};goog.string.buildString=function(){return Array.prototype.join.call(arguments,"")};
goog.string.getRandomString=function(){return Math.floor(Math.random()*2147483648).toString(36)+(Math.floor(Math.random()*2147483648)^goog.now()).toString(36)};
goog.string.compareVersions=function(b,d){var e=0;b=goog.string.trim(String(b)).split(".");d=goog.string.trim(String(d)).split(".");for(var g=Math.max(b.length,d.length),h=0;e==0&&h<g;h++){var k=b[h]||"",o=d[h]||"",q=new RegExp("(\\d*)(\\D*)","g"),x=new RegExp("(\\d*)(\\D*)","g");do{var A=q.exec(k)||["","",""],E=x.exec(o)||["","",""];if(A[0].length==0&&E[0].length==0)break;e=A[1].length==0?0:parseInt(A[1],10);var H=E[1].length==0?0:parseInt(E[1],10);e=goog.string.compareElements_(e,H)||goog.string.compareElements_(A[2].length==
0,E[2].length==0)||goog.string.compareElements_(A[2],E[2])}while(e==0)}return e};goog.string.compareElements_=function(b,d){if(b<d)return-1;else if(b>d)return 1;return 0};goog.string.HASHCODE_MAX_=4294967296;goog.string.hashCode=function(b){for(var d=0,e=0;e<b.length;++e){d=31*d+b.charCodeAt(e);d%=goog.string.HASHCODE_MAX_}return d};goog.string.uniqueStringCounter_=Math.random()*2147483648|0;goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++};
goog.string.toNumber=function(b){var d=Number(b);if(d==0&&goog.string.isEmpty(b))return NaN;return d};goog.userAgent={};goog.userAgent.ASSUME_IE=false;goog.userAgent.ASSUME_GECKO=false;goog.userAgent.ASSUME_WEBKIT=false;goog.userAgent.ASSUME_MOBILE_WEBKIT=false;goog.userAgent.ASSUME_OPERA=false;goog.userAgent.BROWSER_KNOWN_=goog.userAgent.ASSUME_IE||goog.userAgent.ASSUME_GECKO||goog.userAgent.ASSUME_MOBILE_WEBKIT||goog.userAgent.ASSUME_WEBKIT||goog.userAgent.ASSUME_OPERA;goog.userAgent.getUserAgentString=function(){return goog.global.navigator?goog.global.navigator.userAgent:null};
goog.userAgent.getNavigator=function(){return goog.global.navigator};
goog.userAgent.init_=function(){goog.userAgent.detectedOpera_=false;goog.userAgent.detectedIe_=false;goog.userAgent.detectedWebkit_=false;goog.userAgent.detectedMobile_=false;goog.userAgent.detectedGecko_=false;var b;if(!goog.userAgent.BROWSER_KNOWN_&&(b=goog.userAgent.getUserAgentString())){var d=goog.userAgent.getNavigator();goog.userAgent.detectedOpera_=b.indexOf("Opera")==0;goog.userAgent.detectedIe_=!goog.userAgent.detectedOpera_&&b.indexOf("MSIE")!=-1;goog.userAgent.detectedWebkit_=!goog.userAgent.detectedOpera_&&
b.indexOf("WebKit")!=-1;goog.userAgent.detectedMobile_=goog.userAgent.detectedWebkit_&&b.indexOf("Mobile")!=-1;goog.userAgent.detectedGecko_=!goog.userAgent.detectedOpera_&&!goog.userAgent.detectedWebkit_&&d.product=="Gecko"}};goog.userAgent.BROWSER_KNOWN_||goog.userAgent.init_();goog.userAgent.OPERA=goog.userAgent.BROWSER_KNOWN_?goog.userAgent.ASSUME_OPERA:goog.userAgent.detectedOpera_;goog.userAgent.IE=goog.userAgent.BROWSER_KNOWN_?goog.userAgent.ASSUME_IE:goog.userAgent.detectedIe_;
goog.userAgent.GECKO=goog.userAgent.BROWSER_KNOWN_?goog.userAgent.ASSUME_GECKO:goog.userAgent.detectedGecko_;goog.userAgent.WEBKIT=goog.userAgent.BROWSER_KNOWN_?goog.userAgent.ASSUME_WEBKIT||goog.userAgent.ASSUME_MOBILE_WEBKIT:goog.userAgent.detectedWebkit_;goog.userAgent.MOBILE=goog.userAgent.ASSUME_MOBILE_WEBKIT||goog.userAgent.detectedMobile_;goog.userAgent.SAFARI=goog.userAgent.WEBKIT;goog.userAgent.determinePlatform_=function(){var b=goog.userAgent.getNavigator();return b&&b.platform||""};
goog.userAgent.PLATFORM=goog.userAgent.determinePlatform_();goog.userAgent.ASSUME_MAC=false;goog.userAgent.ASSUME_WINDOWS=false;goog.userAgent.ASSUME_LINUX=false;goog.userAgent.ASSUME_X11=false;goog.userAgent.PLATFORM_KNOWN_=goog.userAgent.ASSUME_MAC||goog.userAgent.ASSUME_WINDOWS||goog.userAgent.ASSUME_LINUX||goog.userAgent.ASSUME_X11;
goog.userAgent.initPlatform_=function(){goog.userAgent.detectedMac_=goog.string.contains(goog.userAgent.PLATFORM,"Mac");goog.userAgent.detectedWindows_=goog.string.contains(goog.userAgent.PLATFORM,"Win");goog.userAgent.detectedLinux_=goog.string.contains(goog.userAgent.PLATFORM,"Linux");goog.userAgent.detectedX11_=!!goog.userAgent.getNavigator()&&goog.string.contains(goog.userAgent.getNavigator().appVersion||"","X11")};goog.userAgent.PLATFORM_KNOWN_||goog.userAgent.initPlatform_();
goog.userAgent.MAC=goog.userAgent.PLATFORM_KNOWN_?goog.userAgent.ASSUME_MAC:goog.userAgent.detectedMac_;goog.userAgent.WINDOWS=goog.userAgent.PLATFORM_KNOWN_?goog.userAgent.ASSUME_WINDOWS:goog.userAgent.detectedWindows_;goog.userAgent.LINUX=goog.userAgent.PLATFORM_KNOWN_?goog.userAgent.ASSUME_LINUX:goog.userAgent.detectedLinux_;goog.userAgent.X11=goog.userAgent.PLATFORM_KNOWN_?goog.userAgent.ASSUME_X11:goog.userAgent.detectedX11_;
goog.userAgent.determineVersion_=function(){var b="",d;if(goog.userAgent.OPERA&&goog.global.opera){b=goog.global.opera.version;b=typeof b=="function"?b():b}else{if(goog.userAgent.GECKO)d=/rv\:([^\);]+)(\)|;)/;else if(goog.userAgent.IE)d=/MSIE\s+([^\);]+)(\)|;)/;else if(goog.userAgent.WEBKIT)d=/WebKit\/(\S+)/;if(d)b=(b=d.exec(goog.userAgent.getUserAgentString()))?b[1]:""}return b};goog.userAgent.VERSION=goog.userAgent.determineVersion_();
goog.userAgent.compare=function(b,d){return goog.string.compareVersions(b,d)};goog.userAgent.isVersionCache_={};goog.userAgent.isVersion=function(b){return goog.userAgent.isVersionCache_[b]||(goog.userAgent.isVersionCache_[b]=goog.string.compareVersions(goog.userAgent.VERSION,b)>=0)};goog.object={};goog.object.forEach=function(b,d,e){for(var g in b)d.call(e,b[g],g,b)};goog.object.filter=function(b,d,e){var g={};for(var h in b)if(d.call(e,b[h],h,b))g[h]=b[h];return g};goog.object.map=function(b,d,e){var g={};for(var h in b)g[h]=d.call(e,b[h],h,b);return g};goog.object.some=function(b,d,e){for(var g in b)if(d.call(e,b[g],g,b))return true;return false};goog.object.every=function(b,d,e){for(var g in b)if(!d.call(e,b[g],g,b))return false;return true};
goog.object.getCount=function(b){var d=0;for(var e in b)d++;return d};goog.object.getAnyKey=function(b){for(var d in b)return d};goog.object.getAnyValue=function(b){for(var d in b)return b[d]};goog.object.contains=function(b,d){return goog.object.containsValue(b,d)};goog.object.getValues=function(b){var d=[],e=0;for(var g in b)d[e++]=b[g];return d};goog.object.getKeys=function(b){var d=[],e=0;for(var g in b)d[e++]=g;return d};goog.object.containsKey=function(b,d){return d in b};
goog.object.containsValue=function(b,d){for(var e in b)if(b[e]==d)return true;return false};goog.object.findKey=function(b,d,e){for(var g in b)if(d.call(e,b[g],g,b))return g};goog.object.findValue=function(b,d,e){return(d=goog.object.findKey(b,d,e))&&b[d]};goog.object.isEmpty=function(b){for(var d in b)return false;return true};goog.object.clear=function(b){for(var d=goog.object.getKeys(b),e=d.length-1;e>=0;e--)goog.object.remove(b,d[e])};
goog.object.remove=function(b,d){var e;if(e=d in b)delete b[d];return e};goog.object.add=function(b,d,e){if(d in b)throw Error('The object already contains the key "'+d+'"');goog.object.set(b,d,e)};goog.object.get=function(b,d,e){if(d in b)return b[d];return e};goog.object.set=function(b,d,e){b[d]=e};goog.object.setIfUndefined=function(b,d,e){return d in b?b[d]:(b[d]=e)};goog.object.clone=function(b){var d={};for(var e in b)d[e]=b[e];return d};
goog.object.transpose=function(b){var d={};for(var e in b)d[b[e]]=e;return d};goog.object.PROTOTYPE_FIELDS_=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"];goog.object.extend=function(b){for(var d,e,g=1;g<arguments.length;g++){e=arguments[g];for(d in e)b[d]=e[d];for(var h=0;h<goog.object.PROTOTYPE_FIELDS_.length;h++){d=goog.object.PROTOTYPE_FIELDS_[h];if(Object.prototype.hasOwnProperty.call(e,d))b[d]=e[d]}}};
goog.object.create=function(){var b=arguments.length;if(b==1&&goog.isArray(arguments[0]))return goog.object.create.apply(null,arguments[0]);if(b%2)throw Error("Uneven number of arguments");for(var d={},e=0;e<b;e+=2)d[arguments[e]]=arguments[e+1];return d};goog.object.createSet=function(){var b=arguments.length;if(b==1&&goog.isArray(arguments[0]))return goog.object.createSet.apply(null,arguments[0]);for(var d={},e=0;e<b;e++)d[arguments[e]]=true;return d};goog.math={};goog.math.Coordinate=function(b,d){this.x=goog.isDef(b)?b:0;this.y=goog.isDef(d)?d:0};goog.math.Coordinate.prototype.clone=function(){return new goog.math.Coordinate(this.x,this.y)};if(goog.DEBUG)goog.math.Coordinate.prototype.toString=function(){return"("+this.x+", "+this.y+")"};goog.math.Coordinate.equals=function(b,d){if(b==d)return true;if(!b||!d)return false;return b.x==d.x&&b.y==d.y};goog.math.Coordinate.distance=function(b,d){var e=b.x-d.x;b=b.y-d.y;return Math.sqrt(e*e+b*b)};
goog.math.Coordinate.squaredDistance=function(b,d){var e=b.x-d.x;b=b.y-d.y;return e*e+b*b};goog.math.Coordinate.difference=function(b,d){return new goog.math.Coordinate(b.x-d.x,b.y-d.y)};goog.math.Coordinate.sum=function(b,d){return new goog.math.Coordinate(b.x+d.x,b.y+d.y)};goog.math.Box=function(b,d,e,g){this.top=b;this.right=d;this.bottom=e;this.left=g};goog.math.Box.boundingBox=function(){for(var b=new goog.math.Box(arguments[0].y,arguments[0].x,arguments[0].y,arguments[0].x),d=1;d<arguments.length;d++){var e=arguments[d];b.top=Math.min(b.top,e.y);b.right=Math.max(b.right,e.x);b.bottom=Math.max(b.bottom,e.y);b.left=Math.min(b.left,e.x)}return b};goog.math.Box.prototype.clone=function(){return new goog.math.Box(this.top,this.right,this.bottom,this.left)};
if(goog.DEBUG)goog.math.Box.prototype.toString=function(){return"("+this.top+"t, "+this.right+"r, "+this.bottom+"b, "+this.left+"l)"};goog.math.Box.prototype.contains=function(b){return goog.math.Box.contains(this,b)};goog.math.Box.prototype.expand=function(b,d,e,g){if(goog.isObject(b)){this.top-=b.top;this.right+=b.right;this.bottom+=b.bottom;this.left-=b.left}else{this.top-=b;this.right+=d;this.bottom+=e;this.left-=g}return this};
goog.math.Box.equals=function(b,d){if(b==d)return true;if(!b||!d)return false;return b.top==d.top&&b.right==d.right&&b.bottom==d.bottom&&b.left==d.left};goog.math.Box.contains=function(b,d){if(!b||!d)return false;if(d instanceof goog.math.Box)return d.left>=b.left&&d.right<=b.right&&d.top>=b.top&&d.bottom<=b.bottom;return d.x>=b.left&&d.x<=b.right&&d.y>=b.top&&d.y<=b.bottom};
goog.math.Box.distance=function(b,d){if(d.x>=b.left&&d.x<=b.right){if(d.y>=b.top&&d.y<=b.bottom)return 0;return d.y<b.top?b.top-d.y:d.y-b.bottom}if(d.y>=b.top&&d.y<=b.bottom)return d.x<b.left?b.left-d.x:d.x-b.right;return goog.math.Coordinate.distance(d,new goog.math.Coordinate(d.x<b.left?b.left:b.right,d.y<b.top?b.top:b.bottom))};goog.math.Box.intersects=function(b,d){return b.left<=d.right&&d.left<=b.right&&b.top<=d.bottom&&d.top<=b.bottom};goog.array={};goog.array.ArrayLike=goog.typedef;goog.array.peek=function(b){return b[b.length-1]};goog.array.ARRAY_PROTOTYPE_=Array.prototype;goog.array.indexOf=goog.array.ARRAY_PROTOTYPE_.indexOf?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.indexOf.call(b,d,e)}:function(b,d,e){e=e==null?0:e<0?Math.max(0,b.length+e):e;if(goog.isString(b)){if(!goog.isString(d)||d.length!=1)return-1;return b.indexOf(d,e)}for(e=e;e<b.length;e++)if(e in b&&b[e]===d)return e;return-1};
goog.array.lastIndexOf=goog.array.ARRAY_PROTOTYPE_.lastIndexOf?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.lastIndexOf.call(b,d,e==null?b.length-1:e)}:function(b,d,e){e=e==null?b.length-1:e;if(e<0)e=Math.max(0,b.length+e);if(goog.isString(b)){if(!goog.isString(d)||d.length!=1)return-1;return b.lastIndexOf(d,e)}for(e=e;e>=0;e--)if(e in b&&b[e]===d)return e;return-1};
goog.array.forEach=goog.array.ARRAY_PROTOTYPE_.forEach?function(b,d,e){goog.array.ARRAY_PROTOTYPE_.forEach.call(b,d,e)}:function(b,d,e){for(var g=b.length,h=goog.isString(b)?b.split(""):b,k=0;k<g;k++)k in h&&d.call(e,h[k],k,b)};goog.array.forEachRight=function(b,d,e){var g=b.length,h=goog.isString(b)?b.split(""):b;for(g=g-1;g>=0;--g)g in h&&d.call(e,h[g],g,b)};
goog.array.filter=goog.array.ARRAY_PROTOTYPE_.filter?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.filter.call(b,d,e)}:function(b,d,e){for(var g=b.length,h=[],k=0,o=goog.isString(b)?b.split(""):b,q=0;q<g;q++)if(q in o){var x=o[q];if(d.call(e,x,q,b))h[k++]=x}return h};
goog.array.map=goog.array.ARRAY_PROTOTYPE_.map?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.map.call(b,d,e)}:function(b,d,e){for(var g=b.length,h=new Array(g),k=goog.isString(b)?b.split(""):b,o=0;o<g;o++)if(o in k)h[o]=d.call(e,k[o],o,b);return h};goog.array.reduce=function(b,d,e,g){if(b.reduce)return g?b.reduce(goog.bind(d,g),e):b.reduce(d,e);var h=e;goog.array.forEach(b,function(k,o){h=d.call(g,h,k,o,b)});return h};
goog.array.reduceRight=function(b,d,e,g){if(b.reduceRight)return g?b.reduceRight(goog.bind(d,g),e):b.reduceRight(d,e);var h=e;goog.array.forEachRight(b,function(k,o){h=d.call(g,h,k,o,b)});return h};goog.array.some=goog.array.ARRAY_PROTOTYPE_.some?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.some.call(b,d,e)}:function(b,d,e){for(var g=b.length,h=goog.isString(b)?b.split(""):b,k=0;k<g;k++)if(k in h&&d.call(e,h[k],k,b))return true;return false};
goog.array.every=goog.array.ARRAY_PROTOTYPE_.every?function(b,d,e){return goog.array.ARRAY_PROTOTYPE_.every.call(b,d,e)}:function(b,d,e){for(var g=b.length,h=goog.isString(b)?b.split(""):b,k=0;k<g;k++)if(k in h&&!d.call(e,h[k],k,b))return false;return true};goog.array.find=function(b,d,e){d=goog.array.findIndex(b,d,e);return d<0?null:goog.isString(b)?b.charAt(d):b[d]};
goog.array.findIndex=function(b,d,e){for(var g=b.length,h=goog.isString(b)?b.split(""):b,k=0;k<g;k++)if(k in h&&d.call(e,h[k],k,b))return k;return-1};goog.array.findRight=function(b,d,e){d=goog.array.findIndexRight(b,d,e);return d<0?null:goog.isString(b)?b.charAt(d):b[d]};goog.array.findIndexRight=function(b,d,e){var g=b.length,h=goog.isString(b)?b.split(""):b;for(g=g-1;g>=0;g--)if(g in h&&d.call(e,h[g],g,b))return g;return-1};goog.array.contains=function(b,d){return goog.array.indexOf(b,d)>=0};
goog.array.isEmpty=function(b){return b.length==0};goog.array.clear=function(b){if(!goog.isArray(b))for(var d=b.length-1;d>=0;d--)delete b[d];b.length=0};goog.array.insert=function(b,d){goog.array.contains(b,d)||b.push(d)};goog.array.insertAt=function(b,d,e){goog.array.splice(b,e,0,d)};goog.array.insertArrayAt=function(b,d,e){goog.partial(goog.array.splice,b,e,0).apply(null,d)};
goog.array.insertBefore=function(b,d,e){var g;arguments.length==2||(g=goog.array.indexOf(b,e))<0?b.push(d):goog.array.insertAt(b,d,g)};goog.array.remove=function(b,d){d=goog.array.indexOf(b,d);var e;if(e=d>=0)goog.array.removeAt(b,d);return e};goog.array.removeAt=function(b,d){return goog.array.ARRAY_PROTOTYPE_.splice.call(b,d,1).length==1};goog.array.removeIf=function(b,d,e){d=goog.array.findIndex(b,d,e);if(d>=0){goog.array.removeAt(b,d);return true}return false};
goog.array.concat=function(){return goog.array.ARRAY_PROTOTYPE_.concat.apply(goog.array.ARRAY_PROTOTYPE_,arguments)};goog.array.clone=function(b){if(goog.isArray(b))return goog.array.concat(b);else{for(var d=[],e=0,g=b.length;e<g;e++)d[e]=b[e];return d}};goog.array.toArray=function(b){if(goog.isArray(b))return goog.array.concat(b);return goog.array.clone(b)};
goog.array.extend=function(b){for(var d=1;d<arguments.length;d++){var e=arguments[d],g;if(goog.isArray(e)||(g=goog.isArrayLike(e))&&e.hasOwnProperty("callee"))b.push.apply(b,e);else if(g)for(var h=b.length,k=e.length,o=0;o<k;o++)b[h+o]=e[o];else b.push(e)}};goog.array.splice=function(b){return goog.array.ARRAY_PROTOTYPE_.splice.apply(b,goog.array.slice(arguments,1))};
goog.array.slice=function(b,d,e){return arguments.length<=2?goog.array.ARRAY_PROTOTYPE_.slice.call(b,d):goog.array.ARRAY_PROTOTYPE_.slice.call(b,d,e)};goog.array.removeDuplicates=function(b,d){d=d||b;for(var e={},g=0,h=0;h<b.length;){var k=b[h++],o=goog.isObject(k)?goog.getUid(k):k;if(!Object.prototype.hasOwnProperty.call(e,o)){e[o]=true;d[g++]=k}}d.length=g};
goog.array.binarySearch=function(b,d,e){var g=0,h=b.length-1;for(e=e||goog.array.defaultCompare;g<=h;){var k=g+h>>1,o=e(d,b[k]);if(o>0)g=k+1;else if(o<0)h=k-1;else return k}return-(g+1)};goog.array.sort=function(b,d){goog.array.ARRAY_PROTOTYPE_.sort.call(b,d||goog.array.defaultCompare)};
goog.array.stableSort=function(b,d){function e(k,o){return h(k.value,o.value)||k.index-o.index}for(var g=0;g<b.length;g++)b[g]={index:g,value:b[g]};var h=d||goog.array.defaultCompare;goog.array.sort(b,e);for(g=0;g<b.length;g++)b[g]=b[g].value};goog.array.sortObjectsByKey=function(b,d,e){var g=e||goog.array.defaultCompare;goog.array.sort(b,function(h,k){return g(h[d],k[d])})};
goog.array.equals=function(b,d,e){if(!goog.isArrayLike(b)||!goog.isArrayLike(d)||b.length!=d.length)return false;var g=b.length;e=e||goog.array.defaultCompareEquality;for(var h=0;h<g;h++)if(!e(b[h],d[h]))return false;return true};goog.array.compare=function(b,d,e){return goog.array.equals(b,d,e)};goog.array.defaultCompare=function(b,d){return b>d?1:b<d?-1:0};goog.array.defaultCompareEquality=function(b,d){return b===d};
goog.array.binaryInsert=function(b,d,e){e=goog.array.binarySearch(b,d,e);if(e<0){goog.array.insertAt(b,d,-(e+1));return true}return false};goog.array.binaryRemove=function(b,d,e){d=goog.array.binarySearch(b,d,e);return d>=0?goog.array.removeAt(b,d):false};goog.array.bucket=function(b,d){for(var e={},g=0;g<b.length;g++){var h=b[g],k=d(h,g,b);if(goog.isDef(k))(e[k]||(e[k]=[])).push(h)}return e};goog.array.repeat=function(b,d){for(var e=[],g=0;g<d;g++)e[g]=b;return e};
goog.array.flatten=function(){for(var b=[],d=0;d<arguments.length;d++){var e=arguments[d];goog.isArray(e)?b.push.apply(b,goog.array.flatten.apply(null,e)):b.push(e)}return b};goog.array.rotate=function(b,d){if(b.length){d%=b.length;if(d>0)goog.array.ARRAY_PROTOTYPE_.unshift.apply(b,b.splice(-d,d));else d<0&&goog.array.ARRAY_PROTOTYPE_.push.apply(b,b.splice(0,-d))}return b};goog.math.Size=function(b,d){this.width=b;this.height=d};goog.math.Size.equals=function(b,d){if(b==d)return true;if(!b||!d)return false;return b.width==d.width&&b.height==d.height};goog.math.Size.prototype.clone=function(){return new goog.math.Size(this.width,this.height)};if(goog.DEBUG)goog.math.Size.prototype.toString=function(){return"("+this.width+" x "+this.height+")"};a=goog.math.Size.prototype;a.getLongest=function(){return Math.max(this.width,this.height)};
a.getShortest=function(){return Math.min(this.width,this.height)};a.area=function(){return this.width*this.height};a.aspectRatio=function(){return this.width/this.height};a.isEmpty=function(){return!this.area()};a.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};a.fitsInside=function(b){return this.width<=b.width&&this.height<=b.height};a.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};
a.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};a.scale=function(b){this.width*=b;this.height*=b;return this};a.scaleToFit=function(b){return this.scale(this.aspectRatio()>b.aspectRatio()?b.width/this.width:b.height/this.height)};goog.math.Rect=function(b,d,e,g){this.left=b;this.top=d;this.width=e;this.height=g};goog.math.Rect.prototype.clone=function(){return new goog.math.Rect(this.left,this.top,this.width,this.height)};goog.math.Rect.prototype.toBox=function(){return new goog.math.Box(this.top,this.left+this.width,this.top+this.height,this.left)};goog.math.Rect.createFromBox=function(b){return new goog.math.Rect(b.left,b.top,b.right-b.left,b.bottom-b.top)};
if(goog.DEBUG)goog.math.Rect.prototype.toString=function(){return"("+this.left+", "+this.top+" - "+this.width+"w x "+this.height+"h)"};goog.math.Rect.equals=function(b,d){if(b==d)return true;if(!b||!d)return false;return b.left==d.left&&b.width==d.width&&b.top==d.top&&b.height==d.height};
goog.math.Rect.prototype.intersection=function(b){var d=Math.max(this.left,b.left),e=Math.min(this.left+this.width,b.left+b.width);if(d<=e){var g=Math.max(this.top,b.top);b=Math.min(this.top+this.height,b.top+b.height);if(g<=b){this.left=d;this.top=g;this.width=e-d;this.height=b-g;return true}}return false};
goog.math.Rect.intersection=function(b,d){var e=Math.max(b.left,d.left),g=Math.min(b.left+b.width,d.left+d.width);if(e<=g){var h=Math.max(b.top,d.top);b=Math.min(b.top+b.height,d.top+d.height);if(h<=b)return new goog.math.Rect(e,h,g-e,b-h)}return null};goog.math.Rect.intersects=function(b,d){return b.left<=d.left+d.width&&d.left<=b.left+b.width&&b.top<=d.top+d.height&&d.top<=b.top+b.height};goog.math.Rect.prototype.intersects=function(b){return goog.math.Rect.intersects(this,b)};
goog.math.Rect.difference=function(b,d){var e=goog.math.Rect.intersection(b,d);if(!e||!e.height||!e.width)return[b.clone()];e=[];var g=b.top,h=b.height,k=b.left+b.width,o=b.top+b.height,q=d.left+d.width,x=d.top+d.height;if(d.top>b.top){e.push(new goog.math.Rect(b.left,b.top,b.width,d.top-b.top));g=d.top;h-=d.top-b.top}if(x<o){e.push(new goog.math.Rect(b.left,x,b.width,o-x));h=x-g}d.left>b.left&&e.push(new goog.math.Rect(b.left,g,d.left-b.left,h));q<k&&e.push(new goog.math.Rect(q,g,k-q,h));return e};
goog.math.Rect.prototype.difference=function(b){return goog.math.Rect.difference(this,b)};goog.math.Rect.prototype.boundingRect=function(b){var d=Math.max(this.left+this.width,b.left+b.width),e=Math.max(this.top+this.height,b.top+b.height);this.left=Math.min(this.left,b.left);this.top=Math.min(this.top,b.top);this.width=d-this.left;this.height=e-this.top};goog.math.Rect.boundingRect=function(b,d){if(!b||!d)return null;b=b.clone();b.boundingRect(d);return b};
goog.math.Rect.prototype.contains=function(b){return b instanceof goog.math.Rect?this.left<=b.left&&this.left+this.width>=b.left+b.width&&this.top<=b.top&&this.top+this.height>=b.top+b.height:b.x>=this.left&&b.x<=this.left+this.width&&b.y>=this.top&&b.y<=this.top+this.height};goog.math.Rect.prototype.getSize=function(){return new goog.math.Size(this.width,this.height)};goog.dom={};goog.dom.classes={};goog.dom.classes.set=function(b,d){b.className=d};goog.dom.classes.get=function(b){return(b=b.className)&&typeof b.split=="function"?b.split(/\s+/):[]};goog.dom.classes.add=function(b){var d=goog.dom.classes.get(b),e=goog.array.slice(arguments,1);e=goog.dom.classes.add_(d,e);b.className=d.join(" ");return e};goog.dom.classes.remove=function(b){var d=goog.dom.classes.get(b),e=goog.array.slice(arguments,1);e=goog.dom.classes.remove_(d,e);b.className=d.join(" ");return e};
goog.dom.classes.add_=function(b,d){for(var e=0,g=0;g<d.length;g++)if(!goog.array.contains(b,d[g])){b.push(d[g]);e++}return e==d.length};goog.dom.classes.remove_=function(b,d){for(var e=0,g=0;g<b.length;g++)if(goog.array.contains(d,b[g])){goog.array.splice(b,g--,1);e++}return e==d.length};goog.dom.classes.swap=function(b,d,e){for(var g=goog.dom.classes.get(b),h=false,k=0;k<g.length;k++)if(g[k]==d){goog.array.splice(g,k--,1);h=true}if(h){g.push(e);b.className=g.join(" ")}return h};
goog.dom.classes.addRemove=function(b,d,e){var g=goog.dom.classes.get(b);if(goog.isString(d))goog.array.remove(g,d);else goog.isArray(d)&&goog.dom.classes.remove_(g,d);if(goog.isString(e)&&!goog.array.contains(g,e))g.push(e);else goog.isArray(e)&&goog.dom.classes.add_(g,e);b.className=g.join(" ")};goog.dom.classes.has=function(b,d){return goog.array.contains(goog.dom.classes.get(b),d)};goog.dom.classes.enable=function(b,d,e){e?goog.dom.classes.add(b,d):goog.dom.classes.remove(b,d)};
goog.dom.classes.toggle=function(b,d){var e=!goog.dom.classes.has(b,d);goog.dom.classes.enable(b,d,e);return e};goog.dom.TagName={A:"A",ABBR:"ABBR",ACRONYM:"ACRONYM",ADDRESS:"ADDRESS",APPLET:"APPLET",AREA:"AREA",B:"B",BASE:"BASE",BASEFONT:"BASEFONT",BDO:"BDO",BIG:"BIG",BLOCKQUOTE:"BLOCKQUOTE",BODY:"BODY",BR:"BR",BUTTON:"BUTTON",CAPTION:"CAPTION",CENTER:"CENTER",CITE:"CITE",CODE:"CODE",COL:"COL",COLGROUP:"COLGROUP",DD:"DD",DEL:"DEL",DFN:"DFN",DIR:"DIR",DIV:"DIV",DL:"DL",DT:"DT",EM:"EM",FIELDSET:"FIELDSET",FONT:"FONT",FORM:"FORM",FRAME:"FRAME",FRAMESET:"FRAMESET",H1:"H1",H2:"H2",H3:"H3",H4:"H4",H5:"H5",H6:"H6",
HEAD:"HEAD",HR:"HR",HTML:"HTML",I:"I",IFRAME:"IFRAME",IMG:"IMG",INPUT:"INPUT",INS:"INS",ISINDEX:"ISINDEX",KBD:"KBD",LABEL:"LABEL",LEGEND:"LEGEND",LI:"LI",LINK:"LINK",MAP:"MAP",MENU:"MENU",META:"META",NOFRAMES:"NOFRAMES",NOSCRIPT:"NOSCRIPT",OBJECT:"OBJECT",OL:"OL",OPTGROUP:"OPTGROUP",OPTION:"OPTION",P:"P",PARAM:"PARAM",PRE:"PRE",Q:"Q",S:"S",SAMP:"SAMP",SCRIPT:"SCRIPT",SELECT:"SELECT",SMALL:"SMALL",SPAN:"SPAN",STRIKE:"STRIKE",STRONG:"STRONG",STYLE:"STYLE",SUB:"SUB",SUP:"SUP",TABLE:"TABLE",TBODY:"TBODY",
TD:"TD",TEXTAREA:"TEXTAREA",TFOOT:"TFOOT",TH:"TH",THEAD:"THEAD",TITLE:"TITLE",TR:"TR",TT:"TT",U:"U",UL:"UL",VAR:"VAR"};goog.dom.ASSUME_QUIRKS_MODE=false;goog.dom.ASSUME_STANDARDS_MODE=false;goog.dom.COMPAT_MODE_KNOWN_=goog.dom.ASSUME_QUIRKS_MODE||goog.dom.ASSUME_STANDARDS_MODE;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.dom.getDomHelper=function(b){return b?new goog.dom.DomHelper(goog.dom.getOwnerDocument(b)):goog.dom.defaultDomHelper_||(goog.dom.defaultDomHelper_=new goog.dom.DomHelper)};
goog.dom.getDocument=function(){return document};goog.dom.getElement=function(b){return goog.isString(b)?document.getElementById(b):b};goog.dom.$=goog.dom.getElement;goog.dom.getElementsByTagNameAndClass=function(b,d,e){return goog.dom.getElementsByTagNameAndClass_(document,b,d,e)};
goog.dom.getElementsByTagNameAndClass_=function(b,d,e,g){g=g||b;d=d&&d!="*"?d.toUpperCase():"";if(g.querySelectorAll&&(d||e)&&(!goog.userAgent.WEBKIT||goog.dom.isCss1CompatMode_(b)||goog.userAgent.isVersion("528")))return g.querySelectorAll(d+(e?"."+e:""));if(e&&g.getElementsByClassName){b=g.getElementsByClassName(e);if(d){g={};for(var h=0,k=0,o;o=b[k];k++)if(d==o.nodeName)g[h++]=o;g.length=h;return g}else return b}b=g.getElementsByTagName(d||"*");if(e){g={};for(k=h=0;o=b[k];k++){d=o.className;if(typeof d.split==
"function"&&goog.array.contains(d.split(/\s+/),e))g[h++]=o}g.length=h;return g}else return b};goog.dom.$$=goog.dom.getElementsByTagNameAndClass;goog.dom.setProperties=function(b,d){goog.object.forEach(d,function(e,g){if(g=="style")b.style.cssText=e;else if(g=="class")b.className=e;else if(g=="for")b.htmlFor=e;else if(g in goog.dom.DIRECT_ATTRIBUTE_MAP_)b.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[g],e);else b[g]=e})};
goog.dom.DIRECT_ATTRIBUTE_MAP_={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",rowspan:"rowSpan",valign:"vAlign",height:"height",width:"width",usemap:"useMap",frameborder:"frameBorder",type:"type"};goog.dom.getViewportSize=function(b){return goog.dom.getViewportSize_(b||window)};
goog.dom.getViewportSize_=function(b){var d=b.document;if(goog.userAgent.WEBKIT&&!goog.userAgent.isVersion("500")&&!goog.userAgent.MOBILE){if(typeof b.innerHeight=="undefined")b=window;d=b.innerHeight;var e=b.document.documentElement.scrollHeight;if(b==b.top)if(e<d)d-=15;return new goog.math.Size(b.innerWidth,d)}b=goog.dom.isCss1CompatMode_(d)&&(!goog.userAgent.OPERA||goog.userAgent.OPERA&&goog.userAgent.isVersion("9.50"))?d.documentElement:d.body;return new goog.math.Size(b.clientWidth,b.clientHeight)};
goog.dom.getDocumentHeight=function(){return goog.dom.getDocumentHeight_(window)};goog.dom.getDocumentHeight_=function(b){var d=b.document,e=0;if(d){b=goog.dom.getViewportSize_(b).height;e=d.body;var g=d.documentElement;if(goog.dom.isCss1CompatMode_(d)&&g.scrollHeight)e=g.scrollHeight!=b?g.scrollHeight:g.offsetHeight;else{d=g.scrollHeight;var h=g.offsetHeight;if(g.clientHeight!=h){d=e.scrollHeight;h=e.offsetHeight}e=d>b?d>h?d:h:d<h?d:h}}return e};
goog.dom.getPageScroll=function(b){return goog.dom.getDomHelper((b||goog.global||window).document).getDocumentScroll()};goog.dom.getDocumentScroll=function(){return goog.dom.getDocumentScroll_(document)};goog.dom.getDocumentScroll_=function(b){b=goog.dom.getDocumentScrollElement_(b);return new goog.math.Coordinate(b.scrollLeft,b.scrollTop)};goog.dom.getDocumentScrollElement=function(){return goog.dom.getDocumentScrollElement_(document)};
goog.dom.getDocumentScrollElement_=function(b){return!goog.userAgent.WEBKIT&&goog.dom.isCss1CompatMode_(b)?b.documentElement:b.body};goog.dom.getWindow=function(b){return b?goog.dom.getWindow_(b):window};goog.dom.getWindow_=function(b){return b.parentWindow||b.defaultView};goog.dom.createDom=function(){return goog.dom.createDom_(document,arguments)};
goog.dom.createDom_=function(b,d){var e=d[0],g=d[1];if(goog.userAgent.IE&&g&&(g.name||g.type)){e=["<",e];g.name&&e.push(' name="',goog.string.htmlEscape(g.name),'"');if(g.type){e.push(' type="',goog.string.htmlEscape(g.type),'"');g=goog.cloneObject(g);delete g.type}e.push(">");e=e.join("")}var h=b.createElement(e);if(g)if(goog.isString(g))h.className=g;else goog.dom.setProperties(h,g);if(d.length>2){g=function(o){if(o)h.appendChild(goog.isString(o)?b.createTextNode(o):o)};for(e=2;e<d.length;e++){var k=
d[e];goog.isArrayLike(k)&&!goog.dom.isNodeLike(k)?goog.array.forEach(goog.dom.isNodeList(k)?goog.array.clone(k):k,g):g(k)}}return h};goog.dom.$dom=goog.dom.createDom;goog.dom.createElement=function(b){return document.createElement(b)};goog.dom.createTextNode=function(b){return document.createTextNode(b)};goog.dom.createTable=function(b,d,e){return goog.dom.createTable_(document,b,d,!!e)};
goog.dom.createTable_=function(b,d,e,g){for(var h=["<tr>"],k=0;k<e;k++)h.push(g?"<td>&nbsp;</td>":"<td></td>");h.push("</tr>");h=h.join("");e=["<table>"];for(k=0;k<d;k++)e.push(h);e.push("</table>");b=b.createElement(goog.dom.TagName.DIV);b.innerHTML=e.join("");return b.removeChild(b.firstChild)};goog.dom.htmlToDocumentFragment=function(b){return goog.dom.htmlToDocumentFragment_(document,b)};
goog.dom.htmlToDocumentFragment_=function(b,d){var e=b.createElement("div");e.innerHTML=d;if(e.childNodes.length==1)return e.removeChild(e.firstChild);else{for(b=b.createDocumentFragment();e.firstChild;)b.appendChild(e.firstChild);return b}};goog.dom.getCompatMode=function(){return goog.dom.isCss1CompatMode()?"CSS1Compat":"BackCompat"};goog.dom.isCss1CompatMode=function(){return goog.dom.isCss1CompatMode_(document)};
goog.dom.isCss1CompatMode_=function(b){if(goog.dom.COMPAT_MODE_KNOWN_)return goog.dom.ASSUME_STANDARDS_MODE;return b.compatMode=="CSS1Compat"};goog.dom.canHaveChildren=function(b){if(b.nodeType!=goog.dom.NodeType.ELEMENT)return false;if("canHaveChildren"in b)return b.canHaveChildren;switch(b.tagName){case goog.dom.TagName.APPLET:case goog.dom.TagName.AREA:case goog.dom.TagName.BASE:case goog.dom.TagName.BR:case goog.dom.TagName.COL:case goog.dom.TagName.FRAME:case goog.dom.TagName.HR:case goog.dom.TagName.IMG:case goog.dom.TagName.INPUT:case goog.dom.TagName.IFRAME:case goog.dom.TagName.ISINDEX:case goog.dom.TagName.LINK:case goog.dom.TagName.NOFRAMES:case goog.dom.TagName.NOSCRIPT:case goog.dom.TagName.META:case goog.dom.TagName.OBJECT:case goog.dom.TagName.PARAM:case goog.dom.TagName.SCRIPT:case goog.dom.TagName.STYLE:return false}return true};
goog.dom.appendChild=function(b,d){b.appendChild(d)};goog.dom.removeChildren=function(b){for(var d;d=b.firstChild;)b.removeChild(d)};goog.dom.insertSiblingBefore=function(b,d){d.parentNode&&d.parentNode.insertBefore(b,d)};goog.dom.insertSiblingAfter=function(b,d){d.parentNode&&d.parentNode.insertBefore(b,d.nextSibling)};goog.dom.removeNode=function(b){return b&&b.parentNode?b.parentNode.removeChild(b):null};goog.dom.replaceNode=function(b,d){var e=d.parentNode;e&&e.replaceChild(b,d)};
goog.dom.flattenElement=function(b){var d,e=b.parentNode;if(e&&e.nodeType!=goog.dom.NodeType.DOCUMENT_FRAGMENT)if(b.removeNode)return b.removeNode(false);else{for(;d=b.firstChild;)e.insertBefore(d,b);return goog.dom.removeNode(b)}};goog.dom.getFirstElementChild=function(b){return goog.dom.getNextElementNode_(b.firstChild,true)};goog.dom.getLastElementChild=function(b){return goog.dom.getNextElementNode_(b.lastChild,false)};
goog.dom.getNextElementSibling=function(b){return goog.dom.getNextElementNode_(b.nextSibling,true)};goog.dom.getPreviousElementSibling=function(b){return goog.dom.getNextElementNode_(b.previousSibling,false)};goog.dom.getNextElementNode_=function(b,d){for(;b&&b.nodeType!=goog.dom.NodeType.ELEMENT;)b=d?b.nextSibling:b.previousSibling;return b};goog.dom.getNextNode=function(b){if(!b)return null;if(b.firstChild)return b.firstChild;for(;b&&!b.nextSibling;)b=b.parentNode;return b?b.nextSibling:null};
goog.dom.getPreviousNode=function(b){if(!b)return null;if(!b.previousSibling)return b.parentNode;for(b=b.previousSibling;b&&b.lastChild;)b=b.lastChild;return b};goog.dom.isNodeLike=function(b){return goog.isObject(b)&&b.nodeType>0};goog.dom.contains=function(b,d){if(b.contains&&d.nodeType==goog.dom.NodeType.ELEMENT)return b==d||b.contains(d);if(typeof b.compareDocumentPosition!="undefined")return b==d||Boolean(b.compareDocumentPosition(d)&16);for(;d&&b!=d;)d=d.parentNode;return d==b};
goog.dom.compareNodeOrder=function(b,d){if(b==d)return 0;if(b.compareDocumentPosition)return b.compareDocumentPosition(d)&2?1:-1;if("sourceIndex"in b||b.parentNode&&"sourceIndex"in b.parentNode){var e=b.nodeType==goog.dom.NodeType.ELEMENT,g=d.nodeType==goog.dom.NodeType.ELEMENT;if(e&&g)return b.sourceIndex-d.sourceIndex;else{var h=b.parentNode,k=d.parentNode;if(h==k)return goog.dom.compareSiblingOrder_(b,d);if(!e&&goog.dom.contains(h,d))return-1*goog.dom.compareParentsDescendantNodeIe_(b,d);if(!g&&
goog.dom.contains(k,b))return goog.dom.compareParentsDescendantNodeIe_(d,b);return(e?b.sourceIndex:h.sourceIndex)-(g?d.sourceIndex:k.sourceIndex)}}g=goog.dom.getOwnerDocument(b);e=g.createRange();e.selectNode(b);e.collapse(true);b=g.createRange();b.selectNode(d);b.collapse(true);return e.compareBoundaryPoints(goog.global.Range.START_TO_END,b)};
goog.dom.compareParentsDescendantNodeIe_=function(b,d){var e=b.parentNode;if(e==d)return-1;for(d=d;d.parentNode!=e;)d=d.parentNode;return goog.dom.compareSiblingOrder_(d,b)};goog.dom.compareSiblingOrder_=function(b,d){for(d=d;d=d.previousSibling;)if(d==b)return-1;return 1};
goog.dom.findCommonAncestor=function(){var b,d=arguments.length;if(d){if(d==1)return arguments[0]}else return null;var e=[],g=Infinity;for(b=0;b<d;b++){for(var h=[],k=arguments[b];k;){h.unshift(k);k=k.parentNode}e.push(h);g=Math.min(g,h.length)}h=null;for(b=0;b<g;b++){k=e[0][b];for(var o=1;o<d;o++)if(k!=e[o][b])return h;h=k}return h};goog.dom.getOwnerDocument=function(b){return b.nodeType==goog.dom.NodeType.DOCUMENT?b:b.ownerDocument||b.document};
goog.dom.getFrameContentDocument=function(b){return goog.userAgent.WEBKIT?b.document||b.contentWindow.document:b.contentDocument||b.contentWindow.document};goog.dom.getFrameContentWindow=function(b){return b.contentWindow||goog.dom.getWindow_(goog.dom.getFrameContentDocument(b))};
goog.dom.setTextContent=function(b,d){if("textContent"in b)b.textContent=d;else if(b.firstChild&&b.firstChild.nodeType==goog.dom.NodeType.TEXT){for(;b.lastChild!=b.firstChild;)b.removeChild(b.lastChild);b.firstChild.data=d}else{goog.dom.removeChildren(b);var e=goog.dom.getOwnerDocument(b);b.appendChild(e.createTextNode(d))}};goog.dom.getOuterHtml=function(b){if("outerHTML"in b)return b.outerHTML;else{var d=goog.dom.getOwnerDocument(b).createElement("div");d.appendChild(b.cloneNode(true));return d.innerHTML}};
goog.dom.findNode=function(b,d){var e=[];return goog.dom.findNodes_(b,d,e,true)?e[0]:undefined};goog.dom.findNodes=function(b,d){var e=[];goog.dom.findNodes_(b,d,e,false);return e};goog.dom.findNodes_=function(b,d,e,g){if(b!=null)for(var h=0,k;k=b.childNodes[h];h++){if(d(k)){e.push(k);if(g)return true}if(goog.dom.findNodes_(k,d,e,g))return true}return false};goog.dom.TAGS_TO_IGNORE_={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1};goog.dom.PREDEFINED_TAG_VALUES_={IMG:" ",BR:"\n"};
goog.dom.isFocusableTabIndex=function(b){var d=b.getAttributeNode("tabindex");if(d&&d.specified){b=b.tabIndex;return goog.isNumber(b)&&b>=0}return false};goog.dom.setFocusableTabIndex=function(b,d){if(d)b.tabIndex=0;else b.removeAttribute("tabIndex")};
goog.dom.getTextContent=function(b){if(goog.userAgent.IE&&"innerText"in b)b=goog.string.canonicalizeNewlines(b.innerText);else{var d=[];goog.dom.getTextContent_(b,d,true);b=d.join("")}b=b.replace(/\xAD/g,"");b=b.replace(/ +/g," ");if(b!=" ")b=b.replace(/^\s*/,"");return b};goog.dom.getRawTextContent=function(b){var d=[];goog.dom.getTextContent_(b,d,false);return d.join("")};
goog.dom.getTextContent_=function(b,d,e){if(!(b.nodeName in goog.dom.TAGS_TO_IGNORE_))if(b.nodeType==goog.dom.NodeType.TEXT)e?d.push(String(b.nodeValue).replace(/(\r\n|\r|\n)/g,"")):d.push(b.nodeValue);else if(b.nodeName in goog.dom.PREDEFINED_TAG_VALUES_)d.push(goog.dom.PREDEFINED_TAG_VALUES_[b.nodeName]);else for(b=b.firstChild;b;){goog.dom.getTextContent_(b,d,e);b=b.nextSibling}};goog.dom.getNodeTextLength=function(b){return goog.dom.getTextContent(b).length};
goog.dom.getNodeTextOffset=function(b,d){d=d||goog.dom.getOwnerDocument(b).body;for(var e=[];b&&b!=d;){for(var g=b;g=g.previousSibling;)e.unshift(goog.dom.getTextContent(g));b=b.parentNode}return goog.string.trimLeft(e.join("")).replace(/ +/g," ").length};
goog.dom.getNodeAtOffset=function(b,d,e){b=[b];for(var g=0,h;b.length>0&&g<d;){h=b.pop();if(!(h.nodeName in goog.dom.TAGS_TO_IGNORE_))if(h.nodeType==goog.dom.NodeType.TEXT){var k=h.nodeValue.replace(/(\r\n|\r|\n)/g,"").replace(/ +/g," ");g+=k.length}else if(h.nodeName in goog.dom.PREDEFINED_TAG_VALUES_)g+=goog.dom.PREDEFINED_TAG_VALUES_[h.nodeName].length;else for(k=h.childNodes.length-1;k>=0;k--)b.push(h.childNodes[k])}if(goog.isObject(e)){e.remainder=h?h.nodeValue.length+d-g-1:0;e.node=h}return h};
goog.dom.isNodeList=function(b){if(b&&typeof b.length=="number")if(goog.isObject(b))return typeof b.item=="function"||typeof b.item=="string";else if(goog.isFunction(b))return typeof b.item=="function";return false};goog.dom.getAncestorByTagNameAndClass=function(b,d,e){var g=d?d.toUpperCase():null;return goog.dom.getAncestor(b,function(h){return(!g||h.nodeName==g)&&(!e||goog.dom.classes.has(h,e))},true)};
goog.dom.getAncestor=function(b,d,e,g){if(!e)b=b.parentNode;e=g==null;for(var h=0;b&&(e||h<=g);){if(d(b))return b;b=b.parentNode;h++}return null};goog.dom.DomHelper=function(b){this.document_=b||goog.global.document||document};a=goog.dom.DomHelper.prototype;a.getDomHelper=goog.dom.getDomHelper;a.setDocument=function(b){this.document_=b};a.getDocument=function(){return this.document_};a.getElement=function(b){return goog.isString(b)?this.document_.getElementById(b):b};a.$=goog.dom.DomHelper.prototype.getElement;
a.getElementsByTagNameAndClass=function(b,d,e){return goog.dom.getElementsByTagNameAndClass_(this.document_,b,d,e)};a.$$=goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;a.setProperties=goog.dom.setProperties;a.getViewportSize=function(b){return goog.dom.getViewportSize(b||this.getWindow())};a.getDocumentHeight=function(){return goog.dom.getDocumentHeight_(this.getWindow())};a.createDom=function(){return goog.dom.createDom_(this.document_,arguments)};a.$dom=goog.dom.DomHelper.prototype.createDom;
a.createElement=function(b){return this.document_.createElement(b)};a.createTextNode=function(b){return this.document_.createTextNode(b)};a.createTable=function(b,d,e){return goog.dom.createTable_(this.document_,b,d,!!e)};a.htmlToDocumentFragment=function(b){return goog.dom.htmlToDocumentFragment_(this.document_,b)};a.getCompatMode=function(){return this.isCss1CompatMode()?"CSS1Compat":"BackCompat"};a.isCss1CompatMode=function(){return goog.dom.isCss1CompatMode_(this.document_)};a.getWindow=function(){return goog.dom.getWindow_(this.document_)};
a.getDocumentScrollElement=function(){return goog.dom.getDocumentScrollElement_(this.document_)};a.getDocumentScroll=function(){return goog.dom.getDocumentScroll_(this.document_)};a.appendChild=goog.dom.appendChild;a.removeChildren=goog.dom.removeChildren;a.insertSiblingBefore=goog.dom.insertSiblingBefore;a.insertSiblingAfter=goog.dom.insertSiblingAfter;a.removeNode=goog.dom.removeNode;a.replaceNode=goog.dom.replaceNode;a.flattenElement=goog.dom.flattenElement;a.getFirstElementChild=goog.dom.getFirstElementChild;
a.getLastElementChild=goog.dom.getLastElementChild;a.getNextElementSibling=goog.dom.getNextElementSibling;a.getPreviousElementSibling=goog.dom.getPreviousElementSibling;a.getNextNode=goog.dom.getNextNode;a.getPreviousNode=goog.dom.getPreviousNode;a.isNodeLike=goog.dom.isNodeLike;a.contains=goog.dom.contains;a.getOwnerDocument=goog.dom.getOwnerDocument;a.getFrameContentDocument=goog.dom.getFrameContentDocument;a.getFrameContentWindow=goog.dom.getFrameContentWindow;a.setTextContent=goog.dom.setTextContent;
a.findNode=goog.dom.findNode;a.findNodes=goog.dom.findNodes;a.getTextContent=goog.dom.getTextContent;a.getNodeTextLength=goog.dom.getNodeTextLength;a.getNodeTextOffset=goog.dom.getNodeTextOffset;a.getAncestorByTagNameAndClass=goog.dom.getAncestorByTagNameAndClass;a.getAncestor=goog.dom.getAncestor;goog.style={};goog.style.setStyle=function(b,d,e){goog.isString(d)?goog.style.setStyle_(b,e,d):goog.object.forEach(d,goog.partial(goog.style.setStyle_,b))};goog.style.setStyle_=function(b,d,e){b.style[goog.style.toCamelCase(e)]=d};goog.style.getStyle=function(b,d){return b.style[goog.style.toCamelCase(d)]};goog.style.getComputedStyle=function(b,d){var e=goog.dom.getOwnerDocument(b);if(e.defaultView&&e.defaultView.getComputedStyle)if(b=e.defaultView.getComputedStyle(b,""))return b[d];return null};
goog.style.getCascadedStyle=function(b,d){return b.currentStyle?b.currentStyle[d]:null};goog.style.getStyle_=function(b,d){return goog.style.getComputedStyle(b,d)||goog.style.getCascadedStyle(b,d)||b.style[d]};goog.style.getComputedPosition=function(b){return goog.style.getStyle_(b,"position")};goog.style.getBackgroundColor=function(b){return goog.style.getStyle_(b,"backgroundColor")};goog.style.getComputedOverflowX=function(b){return goog.style.getStyle_(b,"overflowX")};
goog.style.getComputedOverflowY=function(b){return goog.style.getStyle_(b,"overflowY")};goog.style.getComputedZIndex=function(b){return goog.style.getStyle_(b,"zIndex")};goog.style.getComputedTextAlign=function(b){return goog.style.getStyle_(b,"textAlign")};goog.style.getComputedCursor=function(b){return goog.style.getStyle_(b,"cursor")};
goog.style.setPosition=function(b,d,e){var g,h=goog.userAgent.GECKO&&(goog.userAgent.MAC||goog.userAgent.X11)&&goog.userAgent.isVersion("1.9");if(d instanceof goog.math.Coordinate){g=d.x;d=d.y}else{g=d;d=e}b.style.left=typeof g=="number"?(h?Math.round(g):g)+"px":g;b.style.top=typeof d=="number"?(h?Math.round(d):d)+"px":d};goog.style.getPosition=function(b){return new goog.math.Coordinate(b.offsetLeft,b.offsetTop)};
goog.style.getClientViewportElement=function(b){b=b?b.nodeType==goog.dom.NodeType.DOCUMENT?b:goog.dom.getOwnerDocument(b):goog.dom.getDocument();if(goog.userAgent.IE&&!goog.dom.getDomHelper(b).isCss1CompatMode())return b.body;return b.documentElement};goog.style.getBoundingClientRect_=function(b){var d=b.getBoundingClientRect();if(goog.userAgent.IE){b=b.ownerDocument;d.left-=b.documentElement.clientLeft+b.body.clientLeft;d.top-=b.documentElement.clientTop+b.body.clientTop}return d};
goog.style.getOffsetParent=function(b){if(goog.userAgent.IE)return b.offsetParent;var d=goog.dom.getOwnerDocument(b),e=goog.style.getStyle_(b,"position"),g=e=="fixed"||e=="absolute";for(b=b.parentNode;b&&b!=d;b=b.parentNode){e=goog.style.getStyle_(b,"position");g=g&&e=="static"&&b!=d.documentElement&&b!=d.body;if(!g&&(b.scrollWidth>b.clientWidth||b.scrollHeight>b.clientHeight||e=="fixed"||e=="absolute"))return b}return null};
goog.style.getVisibleRectForElement=function(b){var d=new goog.math.Box(0,Infinity,Infinity,0),e=goog.dom.getDomHelper(b),g=e.getDocument().body,h=e.getDocumentScrollElement(),k;for(b=b;b=goog.style.getOffsetParent(b);)if((!goog.userAgent.IE||b.clientWidth!=0)&&(!goog.userAgent.WEBKIT||b.clientHeight!=0||b!=g)&&(b.scrollWidth!=b.clientWidth||b.scrollHeight!=b.clientHeight)&&goog.style.getStyle_(b,"overflow")!="visible"){var o=goog.style.getPageOffset(b),q=goog.style.getClientLeftTop(b);o.x+=q.x;o.y+=
q.y;d.top=Math.max(d.top,o.y);d.right=Math.min(d.right,o.x+b.clientWidth);d.bottom=Math.min(d.bottom,o.y+b.clientHeight);d.left=Math.max(d.left,o.x);k=k||b!=h}g=h.scrollLeft;h=h.scrollTop;if(goog.userAgent.WEBKIT){d.left+=g;d.top+=h}else{d.left=Math.max(d.left,g);d.top=Math.max(d.top,h)}if(!k||goog.userAgent.WEBKIT){d.right+=g;d.bottom+=h}e=e.getViewportSize();d.right=Math.min(d.right,g+e.width);d.bottom=Math.min(d.bottom,h+e.height);return d.top>=0&&d.left>=0&&d.bottom>d.top&&d.right>d.left?d:null};
goog.style.scrollIntoContainerView=function(b,d,e){var g=goog.style.getPageOffset(b),h=goog.style.getPageOffset(d),k=goog.style.getBorderBox(d),o=g.x-h.x-k.left;g=g.y-h.y-k.top;h=d.clientWidth-b.offsetWidth;b=d.clientHeight-b.offsetHeight;if(e){d.scrollLeft+=o-h/2;d.scrollTop+=g-b/2}else{d.scrollLeft+=Math.min(o,Math.max(o-h,0));d.scrollTop+=Math.min(g,Math.max(g-b,0))}};
goog.style.getClientLeftTop=function(b){if(goog.userAgent.GECKO&&!goog.userAgent.isVersion("1.9")){var d=parseFloat(goog.style.getComputedStyle(b,"borderLeftWidth"));if(goog.style.isRightToLeft(b)){var e=b.offsetWidth-b.clientWidth-d-parseFloat(goog.style.getComputedStyle(b,"borderRightWidth"));d+=e}return new goog.math.Coordinate(d,parseFloat(goog.style.getComputedStyle(b,"borderTopWidth")))}return new goog.math.Coordinate(b.clientLeft,b.clientTop)};
goog.style.getPageOffset=function(b){var d,e=goog.dom.getOwnerDocument(b),g=goog.style.getStyle_(b,"position"),h=goog.userAgent.GECKO&&e.getBoxObjectFor&&!b.getBoundingClientRect&&g=="absolute"&&(d=e.getBoxObjectFor(b))&&(d.screenX<0||d.screenY<0),k=new goog.math.Coordinate(0,0),o=goog.style.getClientViewportElement(e);if(b==o)return k;if(b.getBoundingClientRect){d=goog.style.getBoundingClientRect_(b);b=goog.dom.getDomHelper(e).getDocumentScroll();k.x=d.left+b.x;k.y=d.top+b.y}else if(e.getBoxObjectFor&&
!h){d=e.getBoxObjectFor(b);b=e.getBoxObjectFor(o);k.x=d.screenX-b.screenX;k.y=d.screenY-b.screenY}else{d=b;do{k.x+=d.offsetLeft;k.y+=d.offsetTop;if(d!=b){k.x+=d.clientLeft||0;k.y+=d.clientTop||0}if(goog.userAgent.WEBKIT&&goog.style.getComputedPosition(d)=="fixed"){k.x+=e.body.scrollLeft;k.y+=e.body.scrollTop;break}d=d.offsetParent}while(d&&d!=b);if(goog.userAgent.OPERA||goog.userAgent.WEBKIT&&g=="absolute")k.y-=e.body.offsetTop;for(d=b;(d=goog.style.getOffsetParent(d))&&d!=e.body&&d!=o;){k.x-=d.scrollLeft;
if(!goog.userAgent.OPERA||d.tagName!="TR")k.y-=d.scrollTop}}return k};goog.style.getPageOffsetLeft=function(b){return goog.style.getPageOffset(b).x};goog.style.getPageOffsetTop=function(b){return goog.style.getPageOffset(b).y};
goog.style.getFramedPageOffset=function(b,d){var e=new goog.math.Coordinate(0,0),g=goog.dom.getWindow(goog.dom.getOwnerDocument(b));b=b;do{var h=g==d?goog.style.getPageOffset(b):goog.style.getClientPosition(b);e.x+=h.x;e.y+=h.y}while(g&&g!=d&&(b=g.frameElement)&&(g=g.parent));return e};
goog.style.translateRectForAnotherFrame=function(b,d,e){if(d.getDocument()!=e.getDocument()){var g=d.getDocument().body;e=goog.style.getFramedPageOffset(g,e.getWindow());e=goog.math.Coordinate.difference(e,goog.style.getPageOffset(g));if(goog.userAgent.IE&&!d.isCss1CompatMode())e=goog.math.Coordinate.difference(e,d.getDocumentScroll());b.left+=e.x;b.top+=e.y}};
goog.style.getRelativePosition=function(b,d){b=goog.style.getClientPosition(b);d=goog.style.getClientPosition(d);return new goog.math.Coordinate(b.x-d.x,b.y-d.y)};goog.style.getClientPosition=function(b){var d=new goog.math.Coordinate;if(b.nodeType==goog.dom.NodeType.ELEMENT)if(b.getBoundingClientRect){var e=goog.style.getBoundingClientRect_(b);d.x=e.left;d.y=e.top}else{e=goog.dom.getDomHelper(b).getDocumentScroll();b=goog.style.getPageOffset(b);d.x=b.x-e.x;d.y=b.y-e.y}else{d.x=b.clientX;d.y=b.clientY}return d};
goog.style.setPageOffset=function(b,d,e){var g=goog.style.getPageOffset(b);if(d instanceof goog.math.Coordinate){e=d.y;d=d.x}goog.style.setPosition(b,b.offsetLeft+(d-g.x),b.offsetTop+(e-g.y))};goog.style.setSize=function(b,d,e){if(d instanceof goog.math.Size){e=d.height;d=d.width}else{if(e==undefined)throw Error("missing height argument");e=e}b.style.width=typeof d=="number"?Math.round(d)+"px":d;b.style.height=typeof e=="number"?Math.round(e)+"px":e};
goog.style.getSize=function(b){var d=goog.userAgent.OPERA&&!goog.userAgent.isVersion("10");if(goog.style.getStyle_(b,"display")!="none")return d?new goog.math.Size(b.offsetWidth||b.clientWidth,b.offsetHeight||b.clientHeight):new goog.math.Size(b.offsetWidth,b.offsetHeight);var e=b.style,g=e.display,h=e.visibility,k=e.position;e.visibility="hidden";e.position="absolute";e.display="inline";if(d){d=b.offsetWidth||b.clientWidth;b=b.offsetHeight||b.clientHeight}else{d=b.offsetWidth;b=b.offsetHeight}e.display=
g;e.position=k;e.visibility=h;return new goog.math.Size(d,b)};goog.style.getBounds=function(b){var d=goog.style.getPageOffset(b);b=goog.style.getSize(b);return new goog.math.Rect(d.x,d.y,b.width,b.height)};goog.style.toCamelCaseCache_={};goog.style.toCamelCase=function(b){return goog.style.toCamelCaseCache_[b]||(goog.style.toCamelCaseCache_[b]=String(b).replace(/\-([a-z])/g,function(d,e){return e.toUpperCase()}))};goog.style.toSelectorCaseCache_={};
goog.style.toSelectorCase=function(b){return goog.style.toSelectorCaseCache_[b]||(goog.style.toSelectorCaseCache_[b]=b.replace(/([A-Z])/g,"-$1").toLowerCase())};goog.style.getOpacity=function(b){var d=b.style;b="";if("opacity"in d)b=d.opacity;else if("MozOpacity"in d)b=d.MozOpacity;else if("filter"in d)if(d=d.filter.match(/alpha\(opacity=([\d.]+)\)/))b=String(d[1]/100);return b==""?b:Number(b)};
goog.style.setOpacity=function(b,d){b=b.style;if("opacity"in b)b.opacity=d;else if("MozOpacity"in b)b.MozOpacity=d;else if("filter"in b)b.filter=d===""?"":"alpha(opacity="+d*100+")"};goog.style.setTransparentBackgroundImage=function(b,d){b=b.style;if(goog.userAgent.IE&&!goog.userAgent.isVersion("8"))b.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+d+'", sizingMethod="crop")';else{b.backgroundImage="url("+d+")";b.backgroundPosition="top left";b.backgroundRepeat="no-repeat"}};
goog.style.clearTransparentBackgroundImage=function(b){b=b.style;if("filter"in b)b.filter="";else b.backgroundImage="none"};goog.style.showElement=function(b,d){b.style.display=d?"":"none"};goog.style.isElementShown=function(b){return b.style.display!="none"};
goog.style.installStyles=function(b,d){d=goog.dom.getDomHelper(d);var e=null;if(goog.userAgent.IE){e=d.getDocument().createStyleSheet();goog.style.setStyles(e,b)}else{var g=d.getElementsByTagNameAndClass("head")[0];if(!g){e=d.getElementsByTagNameAndClass("body")[0];g=d.createDom("head");e.parentNode.insertBefore(g,e)}e=d.createDom("style");goog.style.setStyles(e,b);d.appendChild(g,e)}return e};goog.style.uninstallStyles=function(b){goog.dom.removeNode(b.ownerNode||b.owningElement||b)};
goog.style.setStyles=function(b,d){if(goog.userAgent.IE)b.cssText=d;else b[goog.userAgent.WEBKIT?"innerText":"innerHTML"]=d};goog.style.setPreWrap=function(b){b=b.style;if(goog.userAgent.IE&&!goog.userAgent.isVersion("8")){b.whiteSpace="pre";b.wordWrap="break-word"}else b.whiteSpace=goog.userAgent.GECKO?"-moz-pre-wrap":goog.userAgent.OPERA?"-o-pre-wrap":"pre-wrap"};
goog.style.setInlineBlock=function(b){b=b.style;b.position="relative";if(goog.userAgent.IE&&!goog.userAgent.isVersion("8")){b.zoom="1";b.display="inline"}else b.display=goog.userAgent.GECKO?goog.userAgent.isVersion("1.9a")?"inline-block":"-moz-inline-box":"inline-block"};goog.style.isRightToLeft=function(b){return"rtl"==goog.style.getStyle_(b,"direction")};goog.style.unselectableStyle_=goog.userAgent.GECKO?"MozUserSelect":goog.userAgent.WEBKIT?"WebkitUserSelect":null;
goog.style.isUnselectable=function(b){if(goog.style.unselectableStyle_)return b.style[goog.style.unselectableStyle_].toLowerCase()=="none";else if(goog.userAgent.IE||goog.userAgent.OPERA)return b.getAttribute("unselectable")=="on";return false};
goog.style.setUnselectable=function(b,d,e){e=!e?b.getElementsByTagName("*"):null;var g=goog.style.unselectableStyle_;if(g){d=d?"none":"";b.style[g]=d;if(e){b=0;for(var h;h=e[b];b++)h.style[g]=d}}else if(goog.userAgent.IE||goog.userAgent.OPERA){d=d?"on":"";b.setAttribute("unselectable",d);if(e)for(b=0;h=e[b];b++)h.setAttribute("unselectable",d)}};goog.style.getBorderBoxSize=function(b){return new goog.math.Size(b.offsetWidth,b.offsetHeight)};
goog.style.setBorderBoxSize=function(b,d){var e=goog.dom.getOwnerDocument(b),g=goog.dom.getDomHelper(e).isCss1CompatMode();if(goog.userAgent.IE&&(!g||!goog.userAgent.isVersion("8"))){e=b.style;if(g){g=goog.style.getPaddingBox(b);b=goog.style.getBorderBox(b);e.pixelWidth=d.width-b.left-g.left-g.right-b.right;e.pixelHeight=d.height-b.top-g.top-g.bottom-b.bottom}else{e.pixelWidth=d.width;e.pixelHeight=d.height}}else goog.style.setBoxSizingSize_(b,d,"border-box")};
goog.style.getContentBoxSize=function(b){var d=goog.dom.getOwnerDocument(b),e=goog.userAgent.IE&&b.currentStyle;if(e&&goog.dom.getDomHelper(d).isCss1CompatMode()&&e.width!="auto"&&e.height!="auto"&&!e.boxSizing){d=goog.style.getIePixelValue_(b,e.width,"width","pixelWidth");b=goog.style.getIePixelValue_(b,e.height,"height","pixelHeight");return new goog.math.Size(d,b)}else{e=goog.style.getBorderBoxSize(b);d=goog.style.getPaddingBox(b);b=goog.style.getBorderBox(b);return new goog.math.Size(e.width-
b.left-d.left-d.right-b.right,e.height-b.top-d.top-d.bottom-b.bottom)}};
goog.style.setContentBoxSize=function(b,d){var e=goog.dom.getOwnerDocument(b),g=goog.dom.getDomHelper(e).isCss1CompatMode();if(goog.userAgent.IE&&(!g||!goog.userAgent.isVersion("8"))){e=b.style;if(g){e.pixelWidth=d.width;e.pixelHeight=d.height}else{g=goog.style.getPaddingBox(b);b=goog.style.getBorderBox(b);e.pixelWidth=d.width+b.left+g.left+g.right+b.right;e.pixelHeight=d.height+b.top+g.top+g.bottom+b.bottom}}else goog.style.setBoxSizingSize_(b,d,"content-box")};
goog.style.setBoxSizingSize_=function(b,d,e){b=b.style;if(goog.userAgent.GECKO)b.MozBoxSizing=e;else if(goog.userAgent.WEBKIT)b.WebkitBoxSizing=e;else if(goog.userAgent.OPERA&&!goog.userAgent.isVersion("9.50"))e?b.setProperty("box-sizing",e):b.removeProperty("box-sizing");else b.boxSizing=e;b.width=d.width+"px";b.height=d.height+"px"};
goog.style.getIePixelValue_=function(b,d,e,g){if(/^\d+px?$/.test(d))return parseInt(d,10);else{var h=b.style[e],k=b.runtimeStyle[e];b.runtimeStyle[e]=b.currentStyle[e];b.style[e]=d;d=b.style[g];b.style[e]=h;b.runtimeStyle[e]=k;return d}};goog.style.getIePixelDistance_=function(b,d){return goog.style.getIePixelValue_(b,goog.style.getCascadedStyle(b,d),"left","pixelLeft")};
goog.style.getBox_=function(b,d){if(goog.userAgent.IE){var e=goog.style.getIePixelDistance_(b,d+"Left"),g=goog.style.getIePixelDistance_(b,d+"Right"),h=goog.style.getIePixelDistance_(b,d+"Top");b=goog.style.getIePixelDistance_(b,d+"Bottom");return new goog.math.Box(h,g,b,e)}else{e=goog.style.getComputedStyle(b,d+"Left");g=goog.style.getComputedStyle(b,d+"Right");h=goog.style.getComputedStyle(b,d+"Top");b=goog.style.getComputedStyle(b,d+"Bottom");return new goog.math.Box(parseFloat(h),parseFloat(g),
parseFloat(b),parseFloat(e))}};goog.style.getPaddingBox=function(b){return goog.style.getBox_(b,"padding")};goog.style.getMarginBox=function(b){return goog.style.getBox_(b,"margin")};goog.style.ieBorderWidthKeywords_={thin:2,medium:4,thick:6};
goog.style.getIePixelBorder_=function(b,d){if(goog.style.getCascadedStyle(b,d+"Style")=="none")return 0;d=goog.style.getCascadedStyle(b,d+"Width");if(d in goog.style.ieBorderWidthKeywords_)return goog.style.ieBorderWidthKeywords_[d];return goog.style.getIePixelValue_(b,d,"left","pixelLeft")};
goog.style.getBorderBox=function(b){if(goog.userAgent.IE){var d=goog.style.getIePixelBorder_(b,"borderLeft"),e=goog.style.getIePixelBorder_(b,"borderRight"),g=goog.style.getIePixelBorder_(b,"borderTop");b=goog.style.getIePixelBorder_(b,"borderBottom");return new goog.math.Box(g,e,b,d)}else{d=goog.style.getComputedStyle(b,"borderLeftWidth");e=goog.style.getComputedStyle(b,"borderRightWidth");g=goog.style.getComputedStyle(b,"borderTopWidth");b=goog.style.getComputedStyle(b,"borderBottomWidth");return new goog.math.Box(parseFloat(g),
parseFloat(e),parseFloat(b),parseFloat(d))}};goog.style.getFontFamily=function(b){var d=goog.dom.getOwnerDocument(b),e="";if(d.createTextRange){e=d.body.createTextRange();e.moveToElementText(b);e=e.queryCommandValue("FontName")}if(!e){e=goog.style.getStyle_(b,"fontFamily");if(goog.userAgent.OPERA&&goog.userAgent.LINUX)e=e.replace(/ \[[^\]]*\]/,"")}b=e.split(",");if(b.length>1)e=b[0];return goog.string.stripQuotes(e,"\"'")};goog.style.lengthUnitRegex_=/[^\d]+$/;
goog.style.getLengthUnits=function(b){return(b=b.match(goog.style.lengthUnitRegex_))&&b[0]||null};goog.style.ABSOLUTE_CSS_LENGTH_UNITS_={cm:1,"in":1,mm:1,pc:1,pt:1};goog.style.CONVERTIBLE_RELATIVE_CSS_UNITS_={em:1,ex:1};
goog.style.getFontSize=function(b){var d=goog.style.getStyle_(b,"fontSize"),e=goog.style.getLengthUnits(d);if(d&&"px"==e)return parseInt(d,10);if(goog.userAgent.IE)if(e in goog.style.ABSOLUTE_CSS_LENGTH_UNITS_)return goog.style.getIePixelValue_(b,d,"left","pixelLeft");else if(b.parentNode&&b.parentNode.nodeType==goog.dom.NodeType.ELEMENT&&e in goog.style.CONVERTIBLE_RELATIVE_CSS_UNITS_){b=b.parentNode;e=goog.style.getStyle_(b,"fontSize");return goog.style.getIePixelValue_(b,d==e?"1em":d,"left","pixelLeft")}e=
goog.dom.createDom("span",{style:"visibility:hidden;position:absolute;line-height:0;padding:0;margin:0;border:0;height:1em;"});goog.dom.appendChild(b,e);d=e.offsetHeight;goog.dom.removeNode(e);return d};goog.style.parseStyleAttribute=function(b){var d={};goog.array.forEach(b.split(/\s*;\s*/),function(e){e=e.split(/\s*:\s*/);if(e.length==2)d[goog.style.toCamelCase(e[0].toLowerCase())]=e[1]});return d};
goog.style.toStyleAttribute=function(b){var d=[];goog.object.forEach(b,function(e,g){d.push(goog.style.toSelectorCase(g),":",e,";")});return d.join("")};goog.style.setFloat=function(b,d){b.style[goog.userAgent.IE?"styleFloat":"cssFloat"]=d};goog.style.getFloat=function(b){return b.style[goog.userAgent.IE?"styleFloat":"cssFloat"]||""};
goog.style.getScrollbarWidth=function(){var b=goog.dom.createElement("div");b.style.cssText="visibility:hidden;overflow:scroll;position:absolute;top:0;width:100px;height:100px";goog.dom.appendChild(goog.dom.getDocument().body,b);var d=b.offsetWidth-b.clientWidth;goog.dom.removeNode(b);return d};goog.debug={};goog.debug.errorHandlerWeakDep={protectEntryPoint:function(b){return b}};goog.events={};goog.events.EventWrapper=function(){};goog.events.EventWrapper.prototype.listen=function(){};goog.events.EventWrapper.prototype.unlisten=function(){};goog.Disposable=function(){};a=goog.Disposable.prototype;a.disposed_=false;a.isDisposed=function(){return this.disposed_};a.getDisposed=goog.Disposable.prototype.isDisposed;a.dispose=function(){if(!this.disposed_){this.disposed_=true;this.disposeInternal()}};a.disposeInternal=function(){};goog.dispose=function(b){b&&typeof b.dispose=="function"&&b.dispose()};goog.events.Event=function(b,d){goog.Disposable.call(this);this.type=b;this.currentTarget=this.target=d};goog.inherits(goog.events.Event,goog.Disposable);a=goog.events.Event.prototype;a.disposeInternal=function(){delete this.type;delete this.target;delete this.currentTarget};a.propagationStopped_=false;a.returnValue_=true;a.stopPropagation=function(){this.propagationStopped_=true};a.preventDefault=function(){this.returnValue_=false};goog.events.Event.stopPropagation=function(b){b.stopPropagation()};
goog.events.Event.preventDefault=function(b){b.preventDefault()};goog.events.BrowserEvent=function(b,d){b&&this.init(b,d)};goog.inherits(goog.events.BrowserEvent,goog.events.Event);goog.events.BrowserEvent.MouseButton={LEFT:0,MIDDLE:1,RIGHT:2};goog.events.BrowserEvent.IEButtonMap_=[1,4,2];a=goog.events.BrowserEvent.prototype;a.target=null;a.relatedTarget=null;a.offsetX=0;a.offsetY=0;a.clientX=0;a.clientY=0;a.screenX=0;a.screenY=0;a.button=0;a.keyCode=0;a.charCode=0;a.ctrlKey=false;a.altKey=false;a.shiftKey=false;a.metaKey=false;a.platformModifierKey=false;
a.event_=null;
a.init=function(b,d){var e=this.type=b.type;this.target=b.target||b.srcElement;this.currentTarget=d;if(d=b.relatedTarget){if(goog.userAgent.GECKO)try{d=d.nodeName&&d}catch(g){d=null}}else if(e=="mouseover")d=b.fromElement;else if(e=="mouseout")d=b.toElement;this.relatedTarget=d;this.offsetX=b.offsetX!==undefined?b.offsetX:b.layerX;this.offsetY=b.offsetY!==undefined?b.offsetY:b.layerY;this.clientX=b.clientX!==undefined?b.clientX:b.pageX;this.clientY=b.clientY!==undefined?b.clientY:b.pageY;this.screenX=
b.screenX||0;this.screenY=b.screenY||0;this.button=b.button;this.keyCode=b.keyCode||0;this.charCode=b.charCode||(e=="keypress"?b.keyCode:0);this.ctrlKey=b.ctrlKey;this.altKey=b.altKey;this.shiftKey=b.shiftKey;this.metaKey=b.metaKey;this.platformModifierKey=goog.userAgent.MAC?b.metaKey:b.ctrlKey;this.event_=b;delete this.returnValue_;delete this.propagationStopped_};
a.isButton=function(b){return goog.userAgent.IE?this.type=="click"?b==goog.events.BrowserEvent.MouseButton.LEFT:!!(this.event_.button&goog.events.BrowserEvent.IEButtonMap_[b]):this.event_.button==b};a.stopPropagation=function(){this.propagationStopped_=true;if(this.event_.stopPropagation)this.event_.stopPropagation();else this.event_.cancelBubble=true};goog.events.BrowserEvent.IE7_SET_KEY_CODE_TO_PREVENT_DEFAULT_=goog.userAgent.IE&&!goog.userAgent.isVersion("8");
goog.events.BrowserEvent.prototype.preventDefault=function(){this.returnValue_=false;var b=this.event_;if(b.preventDefault)b.preventDefault();else{b.returnValue=false;if(goog.events.BrowserEvent.IE7_SET_KEY_CODE_TO_PREVENT_DEFAULT_)try{if(b.ctrlKey||b.keyCode>=112&&b.keyCode<=123)b.keyCode=-1}catch(d){}}};goog.events.BrowserEvent.prototype.getBrowserEvent=function(){return this.event_};
goog.events.BrowserEvent.prototype.disposeInternal=function(){goog.events.BrowserEvent.superClass_.disposeInternal.call(this);this.relatedTarget=this.currentTarget=this.target=this.event_=null};goog.events.Listener=function(){};goog.events.Listener.counter_=0;a=goog.events.Listener.prototype;a.key=0;a.removed=false;a.callOnce=false;
a.init=function(b,d,e,g,h,k){if(goog.isFunction(b))this.isFunctionListener_=true;else if(b&&b.handleEvent&&goog.isFunction(b.handleEvent))this.isFunctionListener_=false;else throw Error("Invalid listener argument");this.listener=b;this.proxy=d;this.src=e;this.type=g;this.capture=!!h;this.handler=k;this.callOnce=false;this.key=++goog.events.Listener.counter_;this.removed=false};
a.handleEvent=function(b){if(this.isFunctionListener_)return this.listener.call(this.handler||this.src,b);return this.listener.handleEvent.call(this.listener,b)};goog.userAgent.jscript={};goog.userAgent.jscript.ASSUME_NO_JSCRIPT=false;goog.userAgent.jscript.init_=function(){goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_="ScriptEngine"in goog.global&&goog.global.ScriptEngine()=="JScript";goog.userAgent.jscript.DETECTED_VERSION_=goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_?goog.global.ScriptEngineMajorVersion()+"."+goog.global.ScriptEngineMinorVersion()+"."+goog.global.ScriptEngineBuildVersion():"0"};goog.userAgent.jscript.ASSUME_NO_JSCRIPT||goog.userAgent.jscript.init_();
goog.userAgent.jscript.HAS_JSCRIPT=goog.userAgent.jscript.ASSUME_NO_JSCRIPT?false:goog.userAgent.jscript.DETECTED_HAS_JSCRIPT_;goog.userAgent.jscript.VERSION=goog.userAgent.jscript.ASSUME_NO_JSCRIPT?"0":goog.userAgent.jscript.DETECTED_VERSION_;goog.userAgent.jscript.isVersion=function(b){return goog.string.compareVersions(goog.userAgent.jscript.VERSION,b)>=0};goog.structs={};goog.structs.SimplePool=function(b,d){goog.Disposable.call(this);this.maxCount_=d;this.freeQueue_=[];this.createInitial_(b)};goog.inherits(goog.structs.SimplePool,goog.Disposable);a=goog.structs.SimplePool.prototype;a.createObjectFn_=null;a.disposeObjectFn_=null;a.setCreateObjectFn=function(b){this.createObjectFn_=b};a.setDisposeObjectFn=function(b){this.disposeObjectFn_=b};a.getObject=function(){if(this.freeQueue_.length)return this.freeQueue_.pop();return this.createObject()};
a.releaseObject=function(b){this.freeQueue_.length<this.maxCount_?this.freeQueue_.push(b):this.disposeObject(b)};a.createInitial_=function(b){if(b>this.maxCount_)throw Error("[goog.structs.SimplePool] Initial cannot be greater than max");for(var d=0;d<b;d++)this.freeQueue_.push(this.createObject())};a.createObject=function(){return this.createObjectFn_?this.createObjectFn_():{}};
a.disposeObject=function(b){if(this.disposeObjectFn_)this.disposeObjectFn_(b);else if(goog.isFunction(b.dispose))b.dispose();else for(var d in b)delete b[d]};a.disposeInternal=function(){goog.structs.SimplePool.superClass_.disposeInternal.call(this);for(var b=this.freeQueue_;b.length;)this.disposeObject(b.pop());delete this.freeQueue_};goog.events.pools={};
(function(){function b(){return{count_:0,remaining_:0}}function d(){return[]}function e(){var j=function(N){return o.call(j.src,j.key,N)};return j}function g(){return new goog.events.Listener}function h(){return new goog.events.BrowserEvent}var k=goog.userAgent.jscript.HAS_JSCRIPT&&!goog.userAgent.jscript.isVersion("5.7"),o;goog.events.pools.setProxyCallbackFunction=function(j){o=j};if(k){goog.events.pools.getObject=function(){return q.getObject()};goog.events.pools.releaseObject=function(j){q.releaseObject(j)};
goog.events.pools.getArray=function(){return x.getObject()};goog.events.pools.releaseArray=function(j){x.releaseObject(j)};goog.events.pools.getProxy=function(){return A.getObject()};goog.events.pools.releaseProxy=function(){A.releaseObject(e())};goog.events.pools.getListener=function(){return E.getObject()};goog.events.pools.releaseListener=function(j){E.releaseObject(j)};goog.events.pools.getEvent=function(){return H.getObject()};goog.events.pools.releaseEvent=function(j){H.releaseObject(j)};var q=
new goog.structs.SimplePool(0,600);q.setCreateObjectFn(b);var x=new goog.structs.SimplePool(0,600);x.setCreateObjectFn(d);var A=new goog.structs.SimplePool(0,600);A.setCreateObjectFn(e);var E=new goog.structs.SimplePool(0,600);E.setCreateObjectFn(g);var H=new goog.structs.SimplePool(0,600);H.setCreateObjectFn(h)}else{goog.events.pools.getObject=b;goog.events.pools.releaseObject=goog.nullFunction;goog.events.pools.getArray=d;goog.events.pools.releaseArray=goog.nullFunction;goog.events.pools.getProxy=
e;goog.events.pools.releaseProxy=goog.nullFunction;goog.events.pools.getListener=g;goog.events.pools.releaseListener=goog.nullFunction;goog.events.pools.getEvent=h;goog.events.pools.releaseEvent=goog.nullFunction}})();goog.events.listeners_={};goog.events.listenerTree_={};goog.events.sources_={};goog.events.onString_="on";goog.events.onStringMap_={};goog.events.keySeparator_="_";
goog.events.listen=function(b,d,e,g,h){if(d)if(goog.isArray(d)){for(var k=0;k<d.length;k++)goog.events.listen(b,d[k],e,g,h);return null}else{g=!!g;var o=goog.events.listenerTree_;d in o||(o[d]=goog.events.pools.getObject());o=o[d];if(!(g in o)){o[g]=goog.events.pools.getObject();o.count_++}o=o[g];var q=goog.getUid(b),x;o.remaining_++;if(o[q]){x=o[q];for(k=0;k<x.length;k++){o=x[k];if(o.listener==e&&o.handler==h){if(o.removed)break;return x[k].key}}}else{x=o[q]=goog.events.pools.getArray();o.count_++}k=
goog.events.pools.getProxy();k.src=b;o=goog.events.pools.getListener();o.init(e,k,b,d,g,h);e=o.key;k.key=e;x.push(o);goog.events.listeners_[e]=o;goog.events.sources_[q]||(goog.events.sources_[q]=goog.events.pools.getArray());goog.events.sources_[q].push(o);if(b.addEventListener){if(b==goog.global||!b.customEvent_)b.addEventListener(d,k,g)}else b.attachEvent(goog.events.getOnString_(d),k);return e}else throw Error("Invalid event type");};
goog.events.listenOnce=function(b,d,e,g,h){if(goog.isArray(d)){for(var k=0;k<d.length;k++)goog.events.listenOnce(b,d[k],e,g,h);return null}b=goog.events.listen(b,d,e,g,h);goog.events.listeners_[b].callOnce=true;return b};goog.events.listenWithWrapper=function(b,d,e,g,h){d.listen(b,e,g,h)};
goog.events.unlisten=function(b,d,e,g,h){if(goog.isArray(d)){for(var k=0;k<d.length;k++)goog.events.unlisten(b,d[k],e,g,h);return null}g=!!g;b=goog.events.getListeners_(b,d,g);if(!b)return false;for(k=0;k<b.length;k++)if(b[k].listener==e&&b[k].capture==g&&b[k].handler==h)return goog.events.unlistenByKey(b[k].key);return false};
goog.events.unlistenByKey=function(b){if(!goog.events.listeners_[b])return false;var d=goog.events.listeners_[b];if(d.removed)return false;var e=d.src,g=d.type,h=d.proxy,k=d.capture;if(e.removeEventListener){if(e==goog.global||!e.customEvent_)e.removeEventListener(g,h,k)}else e.detachEvent&&e.detachEvent(goog.events.getOnString_(g),h);e=goog.getUid(e);h=goog.events.listenerTree_[g][k][e];if(goog.events.sources_[e]){var o=goog.events.sources_[e];goog.array.remove(o,d);o.length==0&&delete goog.events.sources_[e]}d.removed=
true;h.needsCleanup_=true;goog.events.cleanUp_(g,k,e,h);delete goog.events.listeners_[b];return true};goog.events.unlistenWithWrapper=function(b,d,e,g,h){d.unlisten(b,e,g,h)};
goog.events.cleanUp_=function(b,d,e,g){if(!g.locked_)if(g.needsCleanup_){for(var h=0,k=0;h<g.length;h++)if(g[h].removed){var o=g[h].proxy;o.src=null;goog.events.pools.releaseProxy(o);goog.events.pools.releaseListener(g[h])}else{if(h!=k)g[k]=g[h];k++}g.length=k;g.needsCleanup_=false;if(k==0){goog.events.pools.releaseArray(g);delete goog.events.listenerTree_[b][d][e];goog.events.listenerTree_[b][d].count_--;if(goog.events.listenerTree_[b][d].count_==0){goog.events.pools.releaseObject(goog.events.listenerTree_[b][d]);
delete goog.events.listenerTree_[b][d];goog.events.listenerTree_[b].count_--}if(goog.events.listenerTree_[b].count_==0){goog.events.pools.releaseObject(goog.events.listenerTree_[b]);delete goog.events.listenerTree_[b]}}}};
goog.events.removeAll=function(b,d,e){var g=0,h=b==null,k=d==null,o=e==null;e=!!e;if(h)goog.object.forEach(goog.events.sources_,function(x){for(var A=x.length-1;A>=0;A--){var E=x[A];if((k||d==E.type)&&(o||e==E.capture)){goog.events.unlistenByKey(E.key);g++}}});else{b=goog.getUid(b);if(goog.events.sources_[b]){b=goog.events.sources_[b];for(h=b.length-1;h>=0;h--){var q=b[h];if((k||d==q.type)&&(o||e==q.capture)){goog.events.unlistenByKey(q.key);g++}}}}return g};
goog.events.getListeners=function(b,d,e){return goog.events.getListeners_(b,d,e)||[]};goog.events.getListeners_=function(b,d,e){var g=goog.events.listenerTree_;if(d in g){g=g[d];if(e in g){g=g[e];b=goog.getUid(b);if(g[b])return g[b]}}return null};goog.events.getListener=function(b,d,e,g,h){g=!!g;if(b=goog.events.getListeners_(b,d,g))for(d=0;d<b.length;d++)if(b[d].listener==e&&b[d].capture==g&&b[d].handler==h)return b[d];return null};
goog.events.hasListener=function(b,d,e){b=goog.getUid(b);var g=goog.events.sources_[b];if(g){var h=goog.isDef(d),k=goog.isDef(e);if(h&&k){g=goog.events.listenerTree_[d];return!!g&&!!g[e]&&b in g[e]}else return h||k?goog.array.some(g,function(o){return h&&o.type==d||k&&o.capture==e}):true}return false};goog.events.expose=function(b){var d=[];for(var e in b)b[e]&&b[e].id?d.push(e+" = "+b[e]+" ("+b[e].id+")"):d.push(e+" = "+b[e]);return d.join("\n")};
goog.events.EventType={CLICK:"click",DBLCLICK:"dblclick",MOUSEDOWN:"mousedown",MOUSEUP:"mouseup",MOUSEOVER:"mouseover",MOUSEOUT:"mouseout",MOUSEMOVE:"mousemove",SELECTSTART:"selectstart",KEYPRESS:"keypress",KEYDOWN:"keydown",KEYUP:"keyup",BLUR:"blur",FOCUS:"focus",DEACTIVATE:"deactivate",FOCUSIN:goog.userAgent.IE?"focusin":"DOMFocusIn",FOCUSOUT:goog.userAgent.IE?"focusout":"DOMFocusOut",CHANGE:"change",SELECT:"select",SUBMIT:"submit",CONTEXTMENU:"contextmenu",DRAGSTART:"dragstart",ERROR:"error",HASHCHANGE:"hashchange",
HELP:"help",LOAD:"load",LOSECAPTURE:"losecapture",READYSTATECHANGE:"readystatechange",RESIZE:"resize",SCROLL:"scroll",UNLOAD:"unload"};goog.events.getOnString_=function(b){if(b in goog.events.onStringMap_)return goog.events.onStringMap_[b];return goog.events.onStringMap_[b]=goog.events.onString_+b};goog.events.fireListeners=function(b,d,e,g){var h=goog.events.listenerTree_;if(d in h){h=h[d];if(e in h)return goog.events.fireListeners_(h[e],b,d,e,g)}return true};
goog.events.fireListeners_=function(b,d,e,g,h){var k=1;d=goog.getUid(d);if(b[d]){b.remaining_--;b=b[d];if(b.locked_)b.locked_++;else b.locked_=1;try{for(var o=b.length,q=0;q<o;q++){var x=b[q];if(x&&!x.removed)k&=goog.events.fireListener(x,h)!==false}}finally{b.locked_--;goog.events.cleanUp_(e,g,d,b)}}return Boolean(k)};goog.events.fireListener=function(b,d){d=b.handleEvent(d);b.callOnce&&goog.events.unlistenByKey(b.key);return d};goog.events.getTotalListenerCount=function(){return goog.object.getCount(goog.events.listeners_)};
goog.events.dispatchEvent=function(b,d){if(goog.isString(d))d=new goog.events.Event(d,b);else if(d instanceof goog.events.Event)d.target=d.target||b;else{var e=d;d=new goog.events.Event(d.type,b);goog.object.extend(d,e)}e=1;var g,h=d.type,k=goog.events.listenerTree_;if(!(h in k))return true;k=k[h];h=true in k;var o;if(h){g=[];for(o=b;o;o=o.getParentEventTarget())g.push(o);o=k[true];o.remaining_=o.count_;for(var q=g.length-1;!d.propagationStopped_&&q>=0&&o.remaining_;q--){d.currentTarget=g[q];e&=goog.events.fireListeners_(o,
g[q],d.type,true,d)&&d.returnValue_!=false}}if(false in k){o=k[false];o.remaining_=o.count_;if(h)for(q=0;!d.propagationStopped_&&q<g.length&&o.remaining_;q++){d.currentTarget=g[q];e&=goog.events.fireListeners_(o,g[q],d.type,false,d)&&d.returnValue_!=false}else for(b=b;!d.propagationStopped_&&b&&o.remaining_;b=b.getParentEventTarget()){d.currentTarget=b;e&=goog.events.fireListeners_(o,b,d.type,false,d)&&d.returnValue_!=false}}return Boolean(e)};
goog.events.protectBrowserEventEntryPoint=function(b,d){goog.events.handleBrowserEvent_=b.protectEntryPoint(goog.events.handleBrowserEvent_,d);goog.events.pools.setProxyCallbackFunction(goog.events.handleBrowserEvent_)};
goog.events.handleBrowserEvent_=function(b,d){if(!goog.events.listeners_[b])return true;b=goog.events.listeners_[b];var e=b.type,g=goog.events.listenerTree_;if(!(e in g))return true;g=g[e];var h,k;if(goog.userAgent.IE){h=d||goog.getObjectByName("window.event");d=true in g;var o=false in g;if(d){if(goog.events.isMarkedIeEvent_(h))return true;goog.events.markIeEvent_(h)}var q=goog.events.pools.getEvent();q.init(h,this);h=true;try{if(d){for(var x=goog.events.pools.getArray(),A=q.currentTarget;A;A=A.parentNode)x.push(A);
k=g[true];k.remaining_=k.count_;for(var E=x.length-1;!q.propagationStopped_&&E>=0&&k.remaining_;E--){q.currentTarget=x[E];h&=goog.events.fireListeners_(k,x[E],e,true,q)}if(o){k=g[false];k.remaining_=k.count_;for(E=0;!q.propagationStopped_&&E<x.length&&k.remaining_;E++){q.currentTarget=x[E];h&=goog.events.fireListeners_(k,x[E],e,false,q)}}}else h=goog.events.fireListener(b,q)}finally{if(x){x.length=0;goog.events.pools.releaseArray(x)}q.dispose();goog.events.pools.releaseEvent(q)}return h}k=new goog.events.BrowserEvent(d,
this);try{h=goog.events.fireListener(b,k)}finally{k.dispose()}return h};goog.events.pools.setProxyCallbackFunction(goog.events.handleBrowserEvent_);goog.events.markIeEvent_=function(b){var d=false;if(b.keyCode==0)try{b.keyCode=-1;return}catch(e){d=true}if(d||b.returnValue==undefined)b.returnValue=true};goog.events.isMarkedIeEvent_=function(b){return b.keyCode<0||b.returnValue!=undefined};goog.events.uniqueIdCounter_=0;goog.events.getUniqueId=function(b){return b+"_"+goog.events.uniqueIdCounter_++};goog.events.EventHandler=function(b){this.handler_=b};goog.inherits(goog.events.EventHandler,goog.Disposable);goog.events.EventHandler.KEY_POOL_INITIAL_COUNT=0;goog.events.EventHandler.KEY_POOL_MAX_COUNT=100;goog.events.EventHandler.keyPool_=new goog.structs.SimplePool(goog.events.EventHandler.KEY_POOL_INITIAL_COUNT,goog.events.EventHandler.KEY_POOL_MAX_COUNT);goog.events.EventHandler.keys_=null;goog.events.EventHandler.key_=null;a=goog.events.EventHandler.prototype;
a.listen=function(b,d,e,g,h){if(goog.isArray(d))for(var k=0;k<d.length;k++)this.listen(b,d[k],e,g,h);else this.recordListenerKey_(goog.events.listen(b,d,e||this,g||false,h||this.handler_||this));return this};a.listenOnce=function(b,d,e,g,h){if(goog.isArray(d))for(var k=0;k<d.length;k++)this.listenOnce(b,d[k],e,g,h);else this.recordListenerKey_(goog.events.listenOnce(b,d,e||this,g||false,h||this.handler_||this));return this};
a.listenWithWrapper=function(b,d,e,g,h){d.listen(b,e,g,h||this.handler_,this);return this};a.recordListenerKey_=function(b){if(this.keys_)this.keys_[b]=true;else if(this.key_){this.keys_=goog.events.EventHandler.keyPool_.getObject();this.keys_[this.key_]=true;this.key_=null;this.keys_[b]=true}else this.key_=b};
a.unlisten=function(b,d,e,g,h){if(this.key_||this.keys_)if(goog.isArray(d))for(var k=0;k<d.length;k++)this.unlisten(b,d[k],e,g,h);else if(b=goog.events.getListener(b,d,e||this,g||false,h||this.handler_||this)){b=b.key;goog.events.unlistenByKey(b);if(this.keys_)goog.object.remove(this.keys_,b);else if(this.key_==b)this.key_=null}return this};a.unlistenWithWrapper=function(b,d,e,g,h){d.unlisten(b,e,g,h||this.handler_,this);return this};
a.removeAll=function(){if(this.keys_){for(var b in this.keys_){goog.events.unlistenByKey(b);delete this.keys_[b]}goog.events.EventHandler.keyPool_.releaseObject(this.keys_);this.keys_=null}else this.key_&&goog.events.unlistenByKey(this.key_)};a.disposeInternal=function(){goog.events.EventHandler.superClass_.disposeInternal.call(this);this.removeAll()};a.handleEvent=function(){throw Error("EventHandler.handleEvent not implemented");};goog.ui={};goog.ui.IdGenerator=function(){};goog.addSingletonGetter(goog.ui.IdGenerator);goog.ui.IdGenerator.prototype.nextId_=0;goog.ui.IdGenerator.prototype.getNextUniqueId=function(){return":"+(this.nextId_++).toString(36)};goog.ui.IdGenerator.instance=goog.ui.IdGenerator.getInstance();goog.events.EventTarget=function(){goog.Disposable.call(this)};goog.inherits(goog.events.EventTarget,goog.Disposable);a=goog.events.EventTarget.prototype;a.customEvent_=true;a.parentEventTarget_=null;a.getParentEventTarget=function(){return this.parentEventTarget_};a.setParentEventTarget=function(b){this.parentEventTarget_=b};a.addEventListener=function(b,d,e,g){goog.events.listen(this,b,d,e,g)};a.removeEventListener=function(b,d,e,g){goog.events.unlisten(this,b,d,e,g)};
a.dispatchEvent=function(b){return goog.events.dispatchEvent(this,b)};a.disposeInternal=function(){goog.events.EventTarget.superClass_.disposeInternal.call(this);goog.events.removeAll(this);this.parentEventTarget_=null};goog.ui.Component=function(b){goog.events.EventTarget.call(this);this.dom_=b||goog.dom.getDomHelper();this.rightToLeft_=goog.ui.Component.defaultRightToLeft_};goog.inherits(goog.ui.Component,goog.events.EventTarget);goog.ui.Component.prototype.idGenerator_=goog.ui.IdGenerator.getInstance();goog.ui.Component.defaultRightToLeft_=null;
goog.ui.Component.EventType={BEFORE_SHOW:"beforeshow",SHOW:"show",HIDE:"hide",DISABLE:"disable",ENABLE:"enable",HIGHLIGHT:"highlight",UNHIGHLIGHT:"unhighlight",ACTIVATE:"activate",DEACTIVATE:"deactivate",SELECT:"select",UNSELECT:"unselect",CHECK:"check",UNCHECK:"uncheck",FOCUS:"focus",BLUR:"blur",OPEN:"open",CLOSE:"close",ENTER:"enter",LEAVE:"leave",ACTION:"action",CHANGE:"change"};
goog.ui.Component.Error={NOT_SUPPORTED:"Method not supported",DECORATE_INVALID:"Invalid element to decorate",ALREADY_RENDERED:"Component already rendered",PARENT_UNABLE_TO_BE_SET:"Unable to set parent component",CHILD_INDEX_OUT_OF_BOUNDS:"Child component index out of bounds",NOT_OUR_CHILD:"Child is not in parent component",NOT_IN_DOCUMENT:"Operation not supported while component is not in document",STATE_INVALID:"Invalid component state"};
goog.ui.Component.State={ALL:255,DISABLED:1,HOVER:2,ACTIVE:4,SELECTED:8,CHECKED:16,FOCUSED:32,OPENED:64};
goog.ui.Component.getStateTransitionEvent=function(b,d){switch(b){case goog.ui.Component.State.DISABLED:return d?goog.ui.Component.EventType.DISABLE:goog.ui.Component.EventType.ENABLE;case goog.ui.Component.State.HOVER:return d?goog.ui.Component.EventType.HIGHLIGHT:goog.ui.Component.EventType.UNHIGHLIGHT;case goog.ui.Component.State.ACTIVE:return d?goog.ui.Component.EventType.ACTIVATE:goog.ui.Component.EventType.DEACTIVATE;case goog.ui.Component.State.SELECTED:return d?goog.ui.Component.EventType.SELECT:
goog.ui.Component.EventType.UNSELECT;case goog.ui.Component.State.CHECKED:return d?goog.ui.Component.EventType.CHECK:goog.ui.Component.EventType.UNCHECK;case goog.ui.Component.State.FOCUSED:return d?goog.ui.Component.EventType.FOCUS:goog.ui.Component.EventType.BLUR;case goog.ui.Component.State.OPENED:return d?goog.ui.Component.EventType.OPEN:goog.ui.Component.EventType.CLOSE;default:}throw Error(goog.ui.Component.Error.STATE_INVALID);};
goog.ui.Component.setDefaultRightToLeft=function(b){goog.ui.Component.defaultRightToLeft_=b};a=goog.ui.Component.prototype;a.id_=null;a.dom_=null;a.inDocument_=false;a.element_=null;a.rightToLeft_=null;a.model_=null;a.parent_=null;a.children_=null;a.childIndex_=null;a.wasDecorated_=false;a.getId=function(){return this.id_||(this.id_=this.idGenerator_.getNextUniqueId())};
a.setId=function(b){if(this.parent_&&this.parent_.childIndex_){goog.object.remove(this.parent_.childIndex_,this.id_);goog.object.add(this.parent_.childIndex_,b,this)}this.id_=b};a.getElement=function(){return this.element_};a.setElementInternal=function(b){this.element_=b};a.getHandler=function(){return this.googUiComponentHandler_||(this.googUiComponentHandler_=new goog.events.EventHandler(this))};
a.setParent=function(b){if(this==b)throw Error(goog.ui.Component.Error.PARENT_UNABLE_TO_BE_SET);if(b&&this.parent_&&this.id_&&this.parent_.getChild(this.id_)&&this.parent_!=b)throw Error(goog.ui.Component.Error.PARENT_UNABLE_TO_BE_SET);this.parent_=b;goog.ui.Component.superClass_.setParentEventTarget.call(this,b)};a.getParent=function(){return this.parent_};
a.setParentEventTarget=function(b){if(this.parent_&&this.parent_!=b)throw Error(goog.ui.Component.Error.NOT_SUPPORTED);goog.ui.Component.superClass_.setParentEventTarget.call(this,b)};a.getDomHelper=function(){return this.dom_};a.isInDocument=function(){return this.inDocument_};a.createDom=function(){this.element_=this.dom_.createElement("div")};a.render=function(b){this.render_(b)};a.renderBefore=function(b){this.render_(b.parentNode,b)};
a.render_=function(b,d){if(this.inDocument_)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.element_||this.createDom();b?b.insertBefore(this.element_,d||null):this.dom_.getDocument().body.appendChild(this.element_);if(!this.parent_||this.parent_.isInDocument())this.enterDocument()};
a.decorate=function(b){if(this.inDocument_)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);else if(b&&this.canDecorate(b)){this.wasDecorated_=true;if(!this.dom_||this.dom_.getDocument()!=goog.dom.getOwnerDocument(b))this.dom_=goog.dom.getDomHelper(b);this.decorateInternal(b);this.enterDocument()}else throw Error(goog.ui.Component.Error.DECORATE_INVALID);};a.canDecorate=function(){return true};a.wasDecorated=function(){return this.wasDecorated_};a.decorateInternal=function(b){this.element_=b};
a.enterDocument=function(){this.inDocument_=true;this.forEachChild(function(b){!b.isInDocument()&&b.getElement()&&b.enterDocument()})};a.exitDocument=function(){this.forEachChild(function(b){b.isInDocument()&&b.exitDocument()});this.googUiComponentHandler_&&this.googUiComponentHandler_.removeAll();this.inDocument_=false};
a.disposeInternal=function(){goog.ui.Component.superClass_.disposeInternal.call(this);this.inDocument_&&this.exitDocument();if(this.googUiComponentHandler_){this.googUiComponentHandler_.dispose();delete this.googUiComponentHandler_}this.forEachChild(function(b){b.dispose()});!this.wasDecorated_&&this.element_&&goog.dom.removeNode(this.element_);this.parent_=this.model_=this.element_=this.childIndex_=this.children_=null};a.makeId=function(b){return this.getId()+"."+b};a.getModel=function(){return this.model_};
a.setModel=function(b){this.model_=b};a.getFragmentFromId=function(b){return b.substring(this.getId().length+1)};a.getElementByFragment=function(b){if(!this.inDocument_)throw Error(goog.ui.Component.Error.NOT_IN_DOCUMENT);return this.dom_.getElement(this.makeId(b))};a.addChild=function(b,d){this.addChildAt(b,this.getChildCount(),d)};
a.addChildAt=function(b,d,e){if(b.inDocument_&&(e||!this.inDocument_))throw Error(goog.ui.Component.Error.ALREADY_RENDERED);if(d<0||d>this.getChildCount())throw Error(goog.ui.Component.Error.CHILD_INDEX_OUT_OF_BOUNDS);if(!this.childIndex_||!this.children_){this.childIndex_={};this.children_=[]}if(b.getParent()==this){goog.object.set(this.childIndex_,b.getId(),b);goog.array.remove(this.children_,b)}else goog.object.add(this.childIndex_,b.getId(),b);b.setParent(this);goog.array.insertAt(this.children_,
b,d);if(b.inDocument_&&this.inDocument_&&b.getParent()==this){e=this.getContentElement();e.insertBefore(b.getElement(),e.childNodes[d]||null)}else if(e){this.element_||this.createDom();d=this.getChildAt(d+1);b.render_(this.getContentElement(),d?d.element_:null)}else this.inDocument_&&!b.inDocument_&&b.element_&&b.enterDocument()};a.getContentElement=function(){return this.element_};
a.isRightToLeft=function(){if(this.rightToLeft_==null)this.rightToLeft_=goog.style.isRightToLeft(this.inDocument_?this.element_:this.dom_.getDocument().body);return this.rightToLeft_};a.setRightToLeft=function(b){if(this.inDocument_)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.rightToLeft_=b};a.hasChildren=function(){return!!this.children_&&this.children_.length!=0};a.getChildCount=function(){return this.children_?this.children_.length:0};
a.getChildIds=function(){var b=[];this.forEachChild(function(d){b.push(d.getId())});return b};a.getChild=function(b){return this.childIndex_&&b?goog.object.get(this.childIndex_,b)||null:null};a.getChildAt=function(b){return this.children_?this.children_[b]||null:null};a.forEachChild=function(b,d){this.children_&&goog.array.forEach(this.children_,b,d)};a.indexOfChild=function(b){return this.children_&&b?goog.array.indexOf(this.children_,b):-1};
a.removeChild=function(b,d){if(b){var e=goog.isString(b)?b:b.getId();b=this.getChild(e);if(e&&b){goog.object.remove(this.childIndex_,e);goog.array.remove(this.children_,b);if(d){b.exitDocument();b.element_&&goog.dom.removeNode(b.element_)}b.setParent(null)}}if(!b)throw Error(goog.ui.Component.Error.NOT_OUR_CHILD);return b};a.removeChildAt=function(b,d){return this.removeChild(this.getChildAt(b),d)};a.removeChildren=function(b){for(;this.hasChildren();)this.removeChildAt(0,b)};goog.ui.ControlContent=goog.typedef;goog.dom.a11y={};goog.dom.a11y.State={ACTIVEDESCENDANT:"activedescendant",AUTOCOMPLETE:"autocomplete",CHECKED:"checked",DISABLED:"disabled",EXPANDED:"expanded",HASPOPUP:"haspopup",LABELLEDBY:"labelledby",LEVEL:"level",PRESSED:"pressed",SELECTED:"selected",VALUEMAX:"valuemax",VALUEMIN:"valuemin",VALUENOW:"valuenow",VALUETEXT:"valuetext"};
goog.dom.a11y.Role={BUTTON:"button",CHECKBOX:"checkbox",COMBOBOX:"combobox",DIALOG:"dialog",LINK:"link",LISTBOX:"listbox",MAIN:"main",MENU:"menu",MENUBAR:"menubar",MENU_ITEM:"menuitem",MENU_ITEM_CHECKBOX:"menuitemcheckbox",MENU_ITEM_RADIO:"menuitemradio",NAVIGATION:"navigation",OPTION:"option",GROUP:"group",SLIDER:"slider",TAB:"tab",TAB_LIST:"tablist",TAB_PANEL:"tabpanel",TOOLBAR:"toolbar"};
goog.dom.a11y.setRole=function(b,d){if(goog.userAgent.GECKO||goog.dom.a11y.noBrowserCheck_){b.setAttribute("role",d);b.roleName=d}};goog.dom.a11y.getRole=function(b){return b.roleName||""};goog.dom.a11y.setState=function(b,d,e){if(goog.userAgent.GECKO||goog.dom.a11y.noBrowserCheck_)b.setAttribute("aria-"+d,e)};goog.dom.a11y.getState=function(b,d){return b.getAttribute("aria-"+d)||""};goog.dom.a11y.getNoBrowserCheck=function(){return!!goog.dom.a11y.noBrowserCheck_};
goog.dom.a11y.setNoBrowserCheck=function(b){goog.dom.a11y.noBrowserCheck_=b};goog.dom.a11y.getActiveDescendant=function(b){var d=goog.dom.a11y.getState(b,goog.dom.a11y.State.ACTIVEDESCENDANT);return goog.dom.getOwnerDocument(b).getElementById(d)};goog.dom.a11y.setActiveDescendant=function(b,d){goog.dom.a11y.setState(b,goog.dom.a11y.State.ACTIVEDESCENDANT,d?d.id:"")};goog.ui.ControlRenderer=function(){};goog.addSingletonGetter(goog.ui.ControlRenderer);goog.ui.ControlRenderer.getCustomRenderer=function(b,d){b=new b;b.getCssClass=function(){return d};return b};goog.ui.ControlRenderer.CSS_CLASS="goog-control";goog.ui.ControlRenderer.IE6_CLASS_COMBINATIONS=[];a=goog.ui.ControlRenderer.prototype;a.getAriaRole=function(){};a.createDom=function(b){return b.getDomHelper().createDom("div",this.getClassNames(b).join(" "),b.getContent())};a.getContentElement=function(b){return b};
a.enableClassName=function(b,d,e){if(b=b.getElement?b.getElement():b)if(goog.userAgent.IE&&!goog.userAgent.isVersion("7")){var g=this.getAppliedCombinedClassNames_(goog.dom.classes.get(b),d);g.push(d);goog.partial(e?goog.dom.classes.add:goog.dom.classes.remove,b).apply(null,g)}else goog.dom.classes.enable(b,d,e)};a.enableExtraClassName=function(b,d,e){this.enableClassName(b,d,e)};a.canDecorate=function(){return true};
a.decorate=function(b,d){d.id&&b.setId(d.id);var e=this.getContentElement(d);e&&e.firstChild?b.setContentInternal(e.firstChild.nextSibling?goog.array.clone(e.childNodes):e.firstChild):b.setContentInternal(null);var g=0,h=this.getCssClass(),k=this.getStructuralCssClass(),o=false,q=false;e=false;var x=goog.dom.classes.get(d);goog.array.forEach(x,function(E){if(!o&&E==h){o=true;if(k==h)q=true}else if(!q&&E==k)q=true;else g|=this.getStateFromClass(E)},this);b.setStateInternal(g);if(!o){x.push(h);if(k==
h)q=true}q||x.push(k);(b=b.getExtraClassNames())&&x.push.apply(x,b);if(goog.userAgent.IE&&!goog.userAgent.isVersion("7")){var A=this.getAppliedCombinedClassNames_(x);if(A.length>0){x.push.apply(x,A);e=true}}if(!o||!q||b||e)goog.dom.classes.set(d,x.join(" "));return d};a.initializeDom=function(b){b.isRightToLeft()&&this.setRightToLeft(b.getElement(),true);b.isEnabled()&&this.setFocusable(b,b.isVisible())};
a.setAriaRole=function(b){if(goog.userAgent.GECKO){var d=this.getAriaRole();d&&goog.dom.a11y.setRole(b,d)}};a.setAllowTextSelection=function(b,d){goog.style.setUnselectable(b,!d,!goog.userAgent.IE&&!goog.userAgent.OPERA)};a.setRightToLeft=function(b,d){this.enableClassName(b,this.getStructuralCssClass()+"-rtl",d)};a.isFocusable=function(b){var d;if(b.isSupportedState(goog.ui.Component.State.FOCUSED)&&(d=b.getKeyEventTarget()))return goog.dom.isFocusableTabIndex(d);return false};
a.setFocusable=function(b,d){var e;if(b.isSupportedState(goog.ui.Component.State.FOCUSED)&&(e=b.getKeyEventTarget())){if(!d&&b.isFocused()){try{e.blur()}catch(g){}b.isFocused()&&b.handleBlur(null)}goog.dom.isFocusableTabIndex(e)!=d&&goog.dom.setFocusableTabIndex(e,d)}};a.setVisible=function(b,d){goog.style.showElement(b,d)};a.setState=function(b,d,e){var g=b.getElement();if(g){var h=this.getClassForState(d);h&&this.enableClassName(b,h,e);this.updateAriaState(g,d,e)}};
a.updateAriaState=function(b,d,e){if(goog.userAgent.GECKO){if(!goog.ui.ControlRenderer.ARIA_STATE_MAP_)goog.ui.ControlRenderer.ARIA_STATE_MAP_=goog.object.create(goog.ui.Component.State.DISABLED,goog.dom.a11y.State.DISABLED,goog.ui.Component.State.ACTIVE,goog.dom.a11y.State.PRESSED,goog.ui.Component.State.SELECTED,goog.dom.a11y.State.SELECTED,goog.ui.Component.State.CHECKED,goog.dom.a11y.State.CHECKED,goog.ui.Component.State.OPENED,goog.dom.a11y.State.EXPANDED);(d=goog.ui.ControlRenderer.ARIA_STATE_MAP_[d])&&
goog.dom.a11y.setState(b,d,e)}};a.setContent=function(b,d){var e=this.getContentElement(b);if(e){goog.dom.removeChildren(e);if(d)if(goog.isString(d))goog.dom.setTextContent(e,d);else{b=function(g){if(g){var h=goog.dom.getOwnerDocument(e);e.appendChild(goog.isString(g)?h.createTextNode(g):g)}};if(goog.isArray(d))goog.array.forEach(d,b);else goog.isArrayLike(d)&&!("nodeType"in d)?goog.array.forEach(goog.array.clone(d),b):b(d)}}};a.getKeyEventTarget=function(b){return b.getElement()};a.getCssClass=function(){return goog.ui.ControlRenderer.CSS_CLASS};
a.getIe6ClassCombinations=function(){return[]};a.getStructuralCssClass=function(){return this.getCssClass()};a.getClassNames=function(b){var d=this.getCssClass(),e=[d],g=this.getStructuralCssClass();g!=d&&e.push(g);d=this.getClassNamesForState(b.getState());e.push.apply(e,d);(b=b.getExtraClassNames())&&e.push.apply(e,b);goog.userAgent.IE&&!goog.userAgent.isVersion("7")&&e.push.apply(e,this.getAppliedCombinedClassNames_(e));return e};
a.getAppliedCombinedClassNames_=function(b,d){var e=[];if(d)b=b.concat([d]);goog.array.forEach(this.getIe6ClassCombinations(),function(g){if(goog.array.every(g,goog.partial(goog.array.contains,b))&&(!d||goog.array.contains(g,d)))e.push(g.join("_"))});return e};a.getClassNamesForState=function(b){for(var d=[];b;){var e=b&-b;d.push(this.getClassForState(e));b&=~e}return d};a.getClassForState=function(b){this.classByState_||this.createClassByStateMap_();return this.classByState_[b]};
a.getStateFromClass=function(b){this.stateByClass_||this.createStateByClassMap_();b=parseInt(this.stateByClass_[b],10);return isNaN(b)?0:b};
a.createClassByStateMap_=function(){var b=this.getStructuralCssClass();this.classByState_=goog.object.create(goog.ui.Component.State.DISABLED,b+"-disabled",goog.ui.Component.State.HOVER,b+"-hover",goog.ui.Component.State.ACTIVE,b+"-active",goog.ui.Component.State.SELECTED,b+"-selected",goog.ui.Component.State.CHECKED,b+"-checked",goog.ui.Component.State.FOCUSED,b+"-focused",goog.ui.Component.State.OPENED,b+"-open")};
a.createStateByClassMap_=function(){this.classByState_||this.createClassByStateMap_();this.stateByClass_=goog.object.transpose(this.classByState_)};goog.ui.registry={};goog.ui.registry.getDefaultRenderer=function(b){for(var d;b;){d=goog.getUid(b);if(d=goog.ui.registry.defaultRenderers_[d])break;b=b.superClass_?b.superClass_.constructor:null}if(d)return goog.isFunction(d.getInstance)?d.getInstance():new d;return null};
goog.ui.registry.setDefaultRenderer=function(b,d){if(!goog.isFunction(b))throw Error("Invalid component class "+b);if(!goog.isFunction(d))throw Error("Invalid renderer class "+d);b=goog.getUid(b);goog.ui.registry.defaultRenderers_[b]=d};goog.ui.registry.getDecoratorByClassName=function(b){return b in goog.ui.registry.decoratorFunctions_?goog.ui.registry.decoratorFunctions_[b]():null};
goog.ui.registry.setDecoratorByClassName=function(b,d){if(!b)throw Error("Invalid class name "+b);if(!goog.isFunction(d))throw Error("Invalid decorator function "+d);goog.ui.registry.decoratorFunctions_[b]=d};goog.ui.registry.getDecorator=function(b){for(var d=goog.dom.classes.get(b),e=0,g=d.length;e<g;e++)if(b=goog.ui.registry.getDecoratorByClassName(d[e]))return b;return null};goog.ui.registry.reset=function(){goog.ui.registry.defaultRenderers_={};goog.ui.registry.decoratorFunctions_={}};
goog.ui.registry.defaultRenderers_={};goog.ui.registry.decoratorFunctions_={};goog.ui.decorate=function(b){var d=goog.ui.registry.getDecorator(b);d&&d.decorate(b);return d};goog.events.KeyCodes={MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,QUESTION_MARK:63,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,CONTEXT_MENU:93,NUM_ZERO:96,
NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SEMICOLON:186,DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,WIN_IME:229};
goog.events.KeyCodes.isTextModifyingKeyEvent=function(b){if(b.altKey&&!b.ctrlKey||b.metaKey||b.keyCode>=goog.events.KeyCodes.F1&&b.keyCode<=goog.events.KeyCodes.F12)return false;switch(b.keyCode){case goog.events.KeyCodes.ALT:case goog.events.KeyCodes.SHIFT:case goog.events.KeyCodes.CTRL:case goog.events.KeyCodes.PAUSE:case goog.events.KeyCodes.CAPS_LOCK:case goog.events.KeyCodes.ESC:case goog.events.KeyCodes.PAGE_UP:case goog.events.KeyCodes.PAGE_DOWN:case goog.events.KeyCodes.HOME:case goog.events.KeyCodes.END:case goog.events.KeyCodes.LEFT:case goog.events.KeyCodes.RIGHT:case goog.events.KeyCodes.UP:case goog.events.KeyCodes.DOWN:case goog.events.KeyCodes.INSERT:case goog.events.KeyCodes.NUMLOCK:case goog.events.KeyCodes.CONTEXT_MENU:case goog.events.KeyCodes.PRINT_SCREEN:return false;
default:return true}};goog.events.KeyCodes.firesKeyPressEvent=function(b,d,e,g,h){if(!goog.userAgent.IE&&!(goog.userAgent.WEBKIT&&goog.userAgent.isVersion("525")))return true;if(goog.userAgent.MAC&&h)return goog.events.KeyCodes.isCharacterKey(b);if(h&&!g)return false;if(goog.userAgent.IE&&!e&&(d==goog.events.KeyCodes.CTRL||d==goog.events.KeyCodes.ALT))return false;if(goog.userAgent.IE&&g&&d==b)return false;switch(b){case goog.events.KeyCodes.ENTER:return true;case goog.events.KeyCodes.ESC:return!goog.userAgent.WEBKIT}return goog.events.KeyCodes.isCharacterKey(b)};
goog.events.KeyCodes.isCharacterKey=function(b){if(b>=goog.events.KeyCodes.ZERO&&b<=goog.events.KeyCodes.NINE)return true;if(b>=goog.events.KeyCodes.NUM_ZERO&&b<=goog.events.KeyCodes.NUM_MULTIPLY)return true;if(b>=goog.events.KeyCodes.A&&b<=goog.events.KeyCodes.Z)return true;switch(b){case goog.events.KeyCodes.SPACE:case goog.events.KeyCodes.QUESTION_MARK:case goog.events.KeyCodes.NUM_PLUS:case goog.events.KeyCodes.NUM_MINUS:case goog.events.KeyCodes.NUM_PERIOD:case goog.events.KeyCodes.NUM_DIVISION:case goog.events.KeyCodes.SEMICOLON:case goog.events.KeyCodes.DASH:case goog.events.KeyCodes.EQUALS:case goog.events.KeyCodes.COMMA:case goog.events.KeyCodes.PERIOD:case goog.events.KeyCodes.SLASH:case goog.events.KeyCodes.APOSTROPHE:case goog.events.KeyCodes.SINGLE_QUOTE:case goog.events.KeyCodes.OPEN_SQUARE_BRACKET:case goog.events.KeyCodes.BACKSLASH:case goog.events.KeyCodes.CLOSE_SQUARE_BRACKET:return true;
default:return false}};goog.events.KeyHandler=function(b){goog.events.EventTarget.call(this);b&&this.attach(b)};goog.inherits(goog.events.KeyHandler,goog.events.EventTarget);a=goog.events.KeyHandler.prototype;a.element_=null;a.keyPressKey_=null;a.keyDownKey_=null;a.keyUpKey_=null;a.lastKey_=-1;a.keyCode_=-1;goog.events.KeyHandler.EventType={KEY:"key"};
goog.events.KeyHandler.safariKey_={"3":goog.events.KeyCodes.ENTER,"12":goog.events.KeyCodes.NUMLOCK,"63232":goog.events.KeyCodes.UP,"63233":goog.events.KeyCodes.DOWN,"63234":goog.events.KeyCodes.LEFT,"63235":goog.events.KeyCodes.RIGHT,"63236":goog.events.KeyCodes.F1,"63237":goog.events.KeyCodes.F2,"63238":goog.events.KeyCodes.F3,"63239":goog.events.KeyCodes.F4,"63240":goog.events.KeyCodes.F5,"63241":goog.events.KeyCodes.F6,"63242":goog.events.KeyCodes.F7,"63243":goog.events.KeyCodes.F8,"63244":goog.events.KeyCodes.F9,
"63245":goog.events.KeyCodes.F10,"63246":goog.events.KeyCodes.F11,"63247":goog.events.KeyCodes.F12,"63248":goog.events.KeyCodes.PRINT_SCREEN,"63272":goog.events.KeyCodes.DELETE,"63273":goog.events.KeyCodes.HOME,"63275":goog.events.KeyCodes.END,"63276":goog.events.KeyCodes.PAGE_UP,"63277":goog.events.KeyCodes.PAGE_DOWN,"63289":goog.events.KeyCodes.NUMLOCK,"63302":goog.events.KeyCodes.INSERT};
goog.events.KeyHandler.keyIdentifier_={Up:goog.events.KeyCodes.UP,Down:goog.events.KeyCodes.DOWN,Left:goog.events.KeyCodes.LEFT,Right:goog.events.KeyCodes.RIGHT,Enter:goog.events.KeyCodes.ENTER,F1:goog.events.KeyCodes.F1,F2:goog.events.KeyCodes.F2,F3:goog.events.KeyCodes.F3,F4:goog.events.KeyCodes.F4,F5:goog.events.KeyCodes.F5,F6:goog.events.KeyCodes.F6,F7:goog.events.KeyCodes.F7,F8:goog.events.KeyCodes.F8,F9:goog.events.KeyCodes.F9,F10:goog.events.KeyCodes.F10,F11:goog.events.KeyCodes.F11,F12:goog.events.KeyCodes.F12,
"U+007F":goog.events.KeyCodes.DELETE,Home:goog.events.KeyCodes.HOME,End:goog.events.KeyCodes.END,PageUp:goog.events.KeyCodes.PAGE_UP,PageDown:goog.events.KeyCodes.PAGE_DOWN,Insert:goog.events.KeyCodes.INSERT};goog.events.KeyHandler.mozKeyCodeToKeyCodeMap_={61:187,59:186};goog.events.KeyHandler.USES_KEYDOWN_=goog.userAgent.IE||goog.userAgent.WEBKIT&&goog.userAgent.isVersion("525");a=goog.events.KeyHandler.prototype;
a.handleKeyDown_=function(b){if(goog.events.KeyHandler.USES_KEYDOWN_&&!goog.events.KeyCodes.firesKeyPressEvent(b.keyCode,this.lastKey_,b.shiftKey,b.ctrlKey,b.altKey))this.handleEvent(b);else this.keyCode_=goog.userAgent.GECKO&&b.keyCode in goog.events.KeyHandler.mozKeyCodeToKeyCodeMap_?goog.events.KeyHandler.mozKeyCodeToKeyCodeMap_[b.keyCode]:b.keyCode};a.handleKeyup_=function(){this.keyCode_=this.lastKey_=-1};
a.handleEvent=function(b){var d=b.getBrowserEvent(),e,g;if(goog.userAgent.IE&&b.type==goog.events.EventType.KEYPRESS){e=this.keyCode_;g=e!=goog.events.KeyCodes.ENTER&&e!=goog.events.KeyCodes.ESC?d.keyCode:0}else if(goog.userAgent.WEBKIT&&b.type==goog.events.EventType.KEYPRESS){e=this.keyCode_;g=d.charCode>=0&&d.charCode<63232&&goog.events.KeyCodes.isCharacterKey(e)?d.charCode:0}else if(goog.userAgent.OPERA){e=this.keyCode_;g=goog.events.KeyCodes.isCharacterKey(e)?d.keyCode:0}else{e=d.keyCode||this.keyCode_;
g=d.charCode||0;if(goog.userAgent.MAC&&g==goog.events.KeyCodes.QUESTION_MARK&&!e)e=goog.events.KeyCodes.SLASH}var h=e,k=d.keyIdentifier;if(e)if(e>=63232&&e in goog.events.KeyHandler.safariKey_)h=goog.events.KeyHandler.safariKey_[e];else{if(e==25&&b.shiftKey)h=9}else if(k&&k in goog.events.KeyHandler.keyIdentifier_)h=goog.events.KeyHandler.keyIdentifier_[k];b=h==this.lastKey_;this.lastKey_=h;d=new goog.events.KeyEvent(h,g,b,d);try{this.dispatchEvent(d)}finally{d.dispose()}};a.getElement=function(){return this.element_};
a.attach=function(b){this.keyUpKey_&&this.detach();this.element_=b;this.keyPressKey_=goog.events.listen(this.element_,goog.events.EventType.KEYPRESS,this);this.keyDownKey_=goog.events.listen(this.element_,goog.events.EventType.KEYDOWN,this.handleKeyDown_,false,this);this.keyUpKey_=goog.events.listen(this.element_,goog.events.EventType.KEYUP,this.handleKeyup_,false,this)};
a.detach=function(){if(this.keyPressKey_){goog.events.unlistenByKey(this.keyPressKey_);goog.events.unlistenByKey(this.keyDownKey_);goog.events.unlistenByKey(this.keyUpKey_);this.keyUpKey_=this.keyDownKey_=this.keyPressKey_=null}this.element_=null;this.lastKey_=-1};a.disposeInternal=function(){goog.events.KeyHandler.superClass_.disposeInternal.call(this);this.detach()};
goog.events.KeyEvent=function(b,d,e,g){goog.events.BrowserEvent.call(this,g);this.type=goog.events.KeyHandler.EventType.KEY;this.keyCode=b;this.charCode=d;this.repeat=e};goog.inherits(goog.events.KeyEvent,goog.events.BrowserEvent);goog.ui.Control=function(b,d,e){goog.ui.Component.call(this,e);this.renderer_=d||goog.ui.registry.getDefaultRenderer(this.constructor);this.setContentInternal(b)};goog.inherits(goog.ui.Control,goog.ui.Component);goog.ui.Control.registerDecorator=goog.ui.registry.setDecoratorByClassName;goog.ui.Control.getDecorator=goog.ui.registry.getDecorator;goog.ui.Control.decorate=goog.ui.decorate;a=goog.ui.Control.prototype;a.content_=null;a.state_=0;
a.supportedStates_=goog.ui.Component.State.DISABLED|goog.ui.Component.State.HOVER|goog.ui.Component.State.ACTIVE|goog.ui.Component.State.FOCUSED;a.autoStates_=goog.ui.Component.State.ALL;a.statesWithTransitionEvents_=0;a.visible_=true;a.extraClassNames_=null;a.handleMouseEvents_=true;a.allowTextSelection_=false;a.isHandleMouseEvents=function(){return this.handleMouseEvents_};
a.setHandleMouseEvents=function(b){this.isInDocument()&&b!=this.handleMouseEvents_&&this.enableMouseEventHandling_(b);this.handleMouseEvents_=b};a.getKeyEventTarget=function(){return this.renderer_.getKeyEventTarget(this)};a.getKeyHandler=function(){return this.keyHandler_||(this.keyHandler_=new goog.events.KeyHandler)};a.getRenderer=function(){return this.renderer_};
a.setRenderer=function(b){if(this.isInDocument())throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.getElement()&&this.setElementInternal(null);this.renderer_=b};a.getExtraClassNames=function(){return this.extraClassNames_};a.addClassName=function(b){if(b){if(this.extraClassNames_)goog.array.contains(this.extraClassNames_,b)||this.extraClassNames_.push(b);else this.extraClassNames_=[b];this.renderer_.enableExtraClassName(this,b,true)}};
a.removeClassName=function(b){if(b&&this.extraClassNames_){goog.array.remove(this.extraClassNames_,b);if(this.extraClassNames_.length==0)this.extraClassNames_=null;this.renderer_.enableExtraClassName(this,b,false)}};a.enableClassName=function(b,d){d?this.addClassName(b):this.removeClassName(b)};
a.createDom=function(){var b=this.renderer_.createDom(this);this.setElementInternal(b);this.renderer_.setAriaRole(b);this.isAllowTextSelection()||this.renderer_.setAllowTextSelection(b,false);this.isVisible()||this.renderer_.setVisible(b,false)};a.getContentElement=function(){return this.renderer_.getContentElement(this.getElement())};a.canDecorate=function(b){return this.renderer_.canDecorate(b)};
a.decorateInternal=function(b){b=this.renderer_.decorate(this,b);this.setElementInternal(b);this.renderer_.setAriaRole(b);this.isAllowTextSelection()||this.renderer_.setAllowTextSelection(b,false);this.visible_=b.style.display!="none"};
a.enterDocument=function(){goog.ui.Control.superClass_.enterDocument.call(this);this.renderer_.initializeDom(this);if(this.supportedStates_&~goog.ui.Component.State.DISABLED){this.isHandleMouseEvents()&&this.enableMouseEventHandling_(true);if(this.isSupportedState(goog.ui.Component.State.FOCUSED)){var b=this.getKeyEventTarget();if(b){var d=this.getKeyHandler();d.attach(b);this.getHandler().listen(d,goog.events.KeyHandler.EventType.KEY,this.handleKeyEvent).listen(b,goog.events.EventType.FOCUS,this.handleFocus).listen(b,
goog.events.EventType.BLUR,this.handleBlur)}}}};
a.enableMouseEventHandling_=function(b){var d=this.getHandler(),e=this.getElement();if(b){d.listen(e,goog.events.EventType.MOUSEOVER,this.handleMouseOver).listen(e,goog.events.EventType.MOUSEDOWN,this.handleMouseDown).listen(e,goog.events.EventType.MOUSEUP,this.handleMouseUp).listen(e,goog.events.EventType.MOUSEOUT,this.handleMouseOut);goog.userAgent.IE&&d.listen(e,goog.events.EventType.DBLCLICK,this.handleDblClick)}else{d.unlisten(e,goog.events.EventType.MOUSEOVER,this.handleMouseOver).unlisten(e,
goog.events.EventType.MOUSEDOWN,this.handleMouseDown).unlisten(e,goog.events.EventType.MOUSEUP,this.handleMouseUp).unlisten(e,goog.events.EventType.MOUSEOUT,this.handleMouseOut);goog.userAgent.IE&&d.unlisten(e,goog.events.EventType.DBLCLICK,this.handleDblClick)}};a.exitDocument=function(){goog.ui.Control.superClass_.exitDocument.call(this);this.keyHandler_&&this.keyHandler_.detach();this.isVisible()&&this.isEnabled()&&this.renderer_.setFocusable(this,false)};
a.disposeInternal=function(){goog.ui.Control.superClass_.disposeInternal.call(this);if(this.keyHandler_){this.keyHandler_.dispose();delete this.keyHandler_}delete this.renderer_;this.extraClassNames_=this.content_=null};a.getContent=function(){return this.content_};a.setContent=function(b){this.renderer_.setContent(this.getElement(),b);this.setContentInternal(b)};a.setContentInternal=function(b){this.content_=b};
a.getCaption=function(){var b=this.getContent();if(!b||goog.isString(b))return b;return(b=goog.isArray(b)?goog.array.map(b,goog.dom.getTextContent).join(""):goog.dom.getTextContent(b))&&goog.string.trim(b)};a.setCaption=function(b){this.setContent(b)};a.setRightToLeft=function(b){goog.ui.Control.superClass_.setRightToLeft.call(this,b);var d=this.getElement();d&&this.renderer_.setRightToLeft(d,b)};a.isAllowTextSelection=function(){return this.allowTextSelection_};
a.setAllowTextSelection=function(b){this.allowTextSelection_=b;var d=this.getElement();d&&this.renderer_.setAllowTextSelection(d,b)};a.isVisible=function(){return this.visible_};a.setVisible=function(b,d){if(d||this.visible_!=b&&this.dispatchEvent(b?goog.ui.Component.EventType.SHOW:goog.ui.Component.EventType.HIDE)){(d=this.getElement())&&this.renderer_.setVisible(d,b);this.isEnabled()&&this.renderer_.setFocusable(this,b);this.visible_=b;return true}return false};a.isEnabled=function(){return!this.hasState(goog.ui.Component.State.DISABLED)};
a.isParentDisabled_=function(){var b=this.getParent();return!!b&&typeof b.isEnabled=="function"&&!b.isEnabled()};a.setEnabled=function(b){if(!this.isParentDisabled_()&&this.isTransitionAllowed(goog.ui.Component.State.DISABLED,!b)){if(!b){this.setActive(false);this.setHighlighted(false)}this.isVisible()&&this.renderer_.setFocusable(this,b);this.setState(goog.ui.Component.State.DISABLED,!b)}};a.isHighlighted=function(){return this.hasState(goog.ui.Component.State.HOVER)};
a.setHighlighted=function(b){this.isTransitionAllowed(goog.ui.Component.State.HOVER,b)&&this.setState(goog.ui.Component.State.HOVER,b)};a.isActive=function(){return this.hasState(goog.ui.Component.State.ACTIVE)};a.setActive=function(b){this.isTransitionAllowed(goog.ui.Component.State.ACTIVE,b)&&this.setState(goog.ui.Component.State.ACTIVE,b)};a.isSelected=function(){return this.hasState(goog.ui.Component.State.SELECTED)};
a.setSelected=function(b){this.isTransitionAllowed(goog.ui.Component.State.SELECTED,b)&&this.setState(goog.ui.Component.State.SELECTED,b)};a.isChecked=function(){return this.hasState(goog.ui.Component.State.CHECKED)};a.setChecked=function(b){this.isTransitionAllowed(goog.ui.Component.State.CHECKED,b)&&this.setState(goog.ui.Component.State.CHECKED,b)};a.isFocused=function(){return this.hasState(goog.ui.Component.State.FOCUSED)};
a.setFocused=function(b){this.isTransitionAllowed(goog.ui.Component.State.FOCUSED,b)&&this.setState(goog.ui.Component.State.FOCUSED,b)};a.isOpen=function(){return this.hasState(goog.ui.Component.State.OPENED)};a.setOpen=function(b){this.isTransitionAllowed(goog.ui.Component.State.OPENED,b)&&this.setState(goog.ui.Component.State.OPENED,b)};a.getState=function(){return this.state_};a.hasState=function(b){return!!(this.state_&b)};
a.setState=function(b,d){if(this.isSupportedState(b)&&d!=this.hasState(b)){this.renderer_.setState(this,b,d);this.state_=d?this.state_|b:this.state_&~b}};a.setStateInternal=function(b){this.state_=b};a.isSupportedState=function(b){return!!(this.supportedStates_&b)};
a.setSupportedState=function(b,d){if(this.isInDocument()&&this.hasState(b)&&!d)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);!d&&this.hasState(b)&&this.setState(b,false);this.supportedStates_=d?this.supportedStates_|b:this.supportedStates_&~b};a.isAutoState=function(b){return!!(this.autoStates_&b)&&this.isSupportedState(b)};a.setAutoStates=function(b,d){this.autoStates_=d?this.autoStates_|b:this.autoStates_&~b};
a.isDispatchTransitionEvents=function(b){return!!(this.statesWithTransitionEvents_&b)&&this.isSupportedState(b)};a.setDispatchTransitionEvents=function(b,d){this.statesWithTransitionEvents_=d?this.statesWithTransitionEvents_|b:this.statesWithTransitionEvents_&~b};a.isTransitionAllowed=function(b,d){return this.isSupportedState(b)&&this.hasState(b)!=d&&(!(this.statesWithTransitionEvents_&b)||this.dispatchEvent(goog.ui.Component.getStateTransitionEvent(b,d)))&&!this.isDisposed()};
a.handleMouseOver=function(b){!goog.ui.Control.isMouseEventWithinElement_(b,this.getElement())&&this.dispatchEvent(goog.ui.Component.EventType.ENTER)&&this.isEnabled()&&this.isAutoState(goog.ui.Component.State.HOVER)&&this.setHighlighted(true)};
a.handleMouseOut=function(b){if(!goog.ui.Control.isMouseEventWithinElement_(b,this.getElement())&&this.dispatchEvent(goog.ui.Component.EventType.LEAVE)){this.isAutoState(goog.ui.Component.State.ACTIVE)&&this.setActive(false);this.isAutoState(goog.ui.Component.State.HOVER)&&this.setHighlighted(false)}};goog.ui.Control.isMouseEventWithinElement_=function(b,d){return!!b.relatedTarget&&goog.dom.contains(d,b.relatedTarget)};a=goog.ui.Control.prototype;
a.handleMouseDown=function(b){if(this.isEnabled()){this.isAutoState(goog.ui.Component.State.HOVER)&&this.setHighlighted(true);if(b.isButton(goog.events.BrowserEvent.MouseButton.LEFT)){this.isAutoState(goog.ui.Component.State.ACTIVE)&&this.setActive(true);this.renderer_.isFocusable(this)&&this.getKeyEventTarget().focus()}}!this.isAllowTextSelection()&&b.isButton(goog.events.BrowserEvent.MouseButton.LEFT)&&b.preventDefault()};
a.handleMouseUp=function(b){if(this.isEnabled()){this.isAutoState(goog.ui.Component.State.HOVER)&&this.setHighlighted(true);this.isActive()&&this.performActionInternal(b)&&this.isAutoState(goog.ui.Component.State.ACTIVE)&&this.setActive(false)}};a.handleDblClick=function(b){this.isEnabled()&&this.performActionInternal(b)};
a.performActionInternal=function(b){this.isAutoState(goog.ui.Component.State.CHECKED)&&this.setChecked(!this.isChecked());this.isAutoState(goog.ui.Component.State.SELECTED)&&this.setSelected(true);this.isAutoState(goog.ui.Component.State.OPENED)&&this.setOpen(!this.isOpen());var d=new goog.events.Event(goog.ui.Component.EventType.ACTION,this);if(b)for(var e=["altKey","ctrlKey","metaKey","shiftKey"],g,h=0;g=e[h];h++)d[g]=b[g];return this.dispatchEvent(d)};
a.handleFocus=function(){this.isAutoState(goog.ui.Component.State.FOCUSED)&&this.setFocused(true)};a.handleBlur=function(){this.isAutoState(goog.ui.Component.State.ACTIVE)&&this.setActive(false);this.isAutoState(goog.ui.Component.State.FOCUSED)&&this.setFocused(false)};a.handleKeyEvent=function(b){if(this.isVisible()&&this.isEnabled()&&this.handleKeyEventInternal(b)){b.preventDefault();b.stopPropagation();return true}return false};
a.handleKeyEventInternal=function(b){return b.keyCode==goog.events.KeyCodes.ENTER&&this.performActionInternal(b)};goog.ui.registry.setDefaultRenderer(goog.ui.Control,goog.ui.ControlRenderer);goog.ui.registry.setDecoratorByClassName(goog.ui.ControlRenderer.CSS_CLASS,function(){return new goog.ui.Control(null)});goog.ui.MenuItemRenderer=function(){goog.ui.ControlRenderer.call(this);this.classNameCache_=[]};goog.inherits(goog.ui.MenuItemRenderer,goog.ui.ControlRenderer);goog.addSingletonGetter(goog.ui.MenuItemRenderer);goog.ui.MenuItemRenderer.CSS_CLASS="goog-menuitem";goog.ui.MenuItemRenderer.CompositeCssClassIndex_={HOVER:0,CHECKBOX:1,CONTENT:2};a=goog.ui.MenuItemRenderer.prototype;
a.getCompositeCssClass_=function(b){var d=this.classNameCache_[b];if(!d){switch(b){case goog.ui.MenuItemRenderer.CompositeCssClassIndex_.HOVER:d=this.getStructuralCssClass()+"-highlight";break;case goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CHECKBOX:d=this.getStructuralCssClass()+"-checkbox";break;case goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CONTENT:d=this.getStructuralCssClass()+"-content";break}this.classNameCache_[b]=d}return d};a.getAriaRole=function(){return goog.dom.a11y.Role.MENU_ITEM};
a.createDom=function(b){var d=b.getDomHelper().createDom("div",this.getClassNames(b).join(" "),this.createContent(b.getContent(),b.getDomHelper()));this.setEnableCheckBoxStructure(b,d,b.isSupportedState(goog.ui.Component.State.SELECTED)||b.isSupportedState(goog.ui.Component.State.CHECKED));return d};a.getContentElement=function(b){return b&&b.firstChild};
a.decorate=function(b,d){this.hasContentStructure(d)||d.appendChild(this.createContent(d.childNodes,b.getDomHelper()));if(goog.dom.classes.has(d,"goog-option")){b.setCheckable(true);this.setCheckable(b,d,true)}return goog.ui.MenuItemRenderer.superClass_.decorate.call(this,b,d)};
a.setContent=function(b,d){var e=this.getContentElement(b),g=this.hasCheckBoxStructure(b)?e.firstChild:null;goog.ui.MenuItemRenderer.superClass_.setContent.call(this,b,d);if(g&&!this.hasCheckBoxStructure(b))e.insertBefore(g,e.firstChild||null)};a.hasContentStructure=function(b){b=goog.dom.getFirstElementChild(b);var d=this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CONTENT);return!!b&&b.className.indexOf(d)!=-1};
a.createContent=function(b,d){var e=this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CONTENT);return d.createDom("div",e,b)};a.setSelectable=function(b,d,e){if(d){goog.dom.a11y.setRole(d,e?goog.dom.a11y.Role.MENU_ITEM_RADIO:this.getAriaRole());this.setEnableCheckBoxStructure(b,d,e)}};a.setCheckable=function(b,d,e){if(d){goog.dom.a11y.setRole(d,e?goog.dom.a11y.Role.MENU_ITEM_CHECKBOX:this.getAriaRole());this.setEnableCheckBoxStructure(b,d,e)}};
a.hasCheckBoxStructure=function(b){if(b=this.getContentElement(b)){b=b.firstChild;var d=this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CHECKBOX);return!!b&&!!b.className&&b.className.indexOf(d)!=-1}return false};
a.setEnableCheckBoxStructure=function(b,d,e){if(e!=this.hasCheckBoxStructure(d)){goog.dom.classes.enable(d,"goog-option",e);d=this.getContentElement(d);if(e){e=this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.CHECKBOX);d.insertBefore(b.getDomHelper().createDom("div",e),d.firstChild||null)}else d.removeChild(d.firstChild)}};
a.getClassForState=function(b){switch(b){case goog.ui.Component.State.HOVER:return this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.HOVER);case goog.ui.Component.State.CHECKED:case goog.ui.Component.State.SELECTED:return"goog-option-selected";default:return goog.ui.MenuItemRenderer.superClass_.getClassForState.call(this,b)}};
a.getStateFromClass=function(b){var d=this.getCompositeCssClass_(goog.ui.MenuItemRenderer.CompositeCssClassIndex_.HOVER);switch(b){case "goog-option-selected":return goog.ui.Component.State.CHECKED;case d:return goog.ui.Component.State.HOVER;default:return goog.ui.MenuItemRenderer.superClass_.getStateFromClass.call(this,b)}};a.getCssClass=function(){return goog.ui.MenuItemRenderer.CSS_CLASS};goog.ui.MenuItem=function(b,d,e,g){goog.ui.Control.call(this,b,g||goog.ui.MenuItemRenderer.getInstance(),e);this.setValue(d)};goog.inherits(goog.ui.MenuItem,goog.ui.Control);goog.ui.MenuItem.prototype.getValue=function(){var b=this.getModel();return b!=null?b:this.getCaption()};goog.ui.MenuItem.prototype.setValue=function(b){this.setModel(b)};
goog.ui.MenuItem.prototype.setSelectable=function(b){this.setSupportedState(goog.ui.Component.State.SELECTED,b);this.isChecked()&&!b&&this.setChecked(false);var d=this.getElement();d&&this.renderer_.setSelectable(this,d,b)};goog.ui.MenuItem.prototype.setCheckable=function(b){this.setSupportedState(goog.ui.Component.State.CHECKED,b);var d=this.getElement();d&&this.renderer_.setCheckable(this,d,b)};goog.ui.registry.setDecoratorByClassName(goog.ui.MenuItemRenderer.CSS_CLASS,function(){return new goog.ui.MenuItem(null)});goog.events.InputHandler=function(b){goog.events.EventTarget.call(this);this.element_=b;b=goog.userAgent.IE?"propertychange":goog.userAgent.WEBKIT&&b.tagName=="TEXTAREA"&&!goog.userAgent.isVersion("531")?"keypress":"input";this.listenKey_=goog.events.listen(this.element_,b,this)};goog.inherits(goog.events.InputHandler,goog.events.EventTarget);goog.events.InputHandler.EventType={INPUT:"input"};
goog.events.InputHandler.prototype.handleEvent=function(b){b=b.getBrowserEvent();if(b.type=="propertychange"&&b.propertyName=="value"||b.type=="input"||b.type=="keypress"){if(goog.userAgent.IE||goog.userAgent.OPERA){var d=b.srcElement;if(d!=goog.dom.getOwnerDocument(d).activeElement)return}b=new goog.events.BrowserEvent(b);b.type=goog.events.InputHandler.EventType.INPUT;try{this.dispatchEvent(b)}finally{b.dispose()}}};
goog.events.InputHandler.prototype.disposeInternal=function(){goog.events.InputHandler.superClass_.disposeInternal.call(this);goog.events.unlistenByKey(this.listenKey_);delete this.element_};goog.Timer=function(b,d){goog.events.EventTarget.call(this);this.interval_=b||1;this.timerObject_=d||goog.Timer.defaultTimerObject;this.boundTick_=goog.bind(this.tick_,this);this.last_=goog.now()};goog.inherits(goog.Timer,goog.events.EventTarget);goog.Timer.MAX_TIMEOUT_=2147483647;goog.Timer.prototype.enabled=false;goog.Timer.defaultTimerObject=goog.global.window;goog.Timer.intervalScale=0.8;a=goog.Timer.prototype;a.timer_=null;a.getInterval=function(){return this.interval_};
a.setInterval=function(b){this.interval_=b;if(this.timer_&&this.enabled){this.stop();this.start()}else this.timer_&&this.stop()};a.tick_=function(){if(this.enabled){var b=goog.now()-this.last_;if(b>0&&b<this.interval_*goog.Timer.intervalScale)this.timer_=this.timerObject_.setTimeout(this.boundTick_,this.interval_-b);else{this.dispatchTick();if(this.enabled){this.timer_=this.timerObject_.setTimeout(this.boundTick_,this.interval_);this.last_=goog.now()}}}};a.dispatchTick=function(){this.dispatchEvent(goog.Timer.TICK)};
a.start=function(){this.enabled=true;if(!this.timer_){this.timer_=this.timerObject_.setTimeout(this.boundTick_,this.interval_);this.last_=goog.now()}};a.stop=function(){this.enabled=false;if(this.timer_){this.timerObject_.clearTimeout(this.timer_);this.timer_=null}};a.disposeInternal=function(){goog.Timer.superClass_.disposeInternal.call(this);this.stop();delete this.timerObject_};goog.Timer.TICK="tick";
goog.Timer.callOnce=function(b,d,e){if(goog.isFunction(b)){if(e)b=goog.bind(b,e)}else if(b&&typeof b.handleEvent=="function")b=goog.bind(b.handleEvent,b);else throw Error("Invalid listener argument");return d>goog.Timer.MAX_TIMEOUT_?-1:goog.Timer.defaultTimerObject.setTimeout(b,d||0)};goog.Timer.clear=function(b){goog.Timer.defaultTimerObject.clearTimeout(b)};goog.ui.LabelInput=function(b,d){goog.ui.Component.call(this,d);this.label_=b||""};goog.inherits(goog.ui.LabelInput,goog.ui.Component);a=goog.ui.LabelInput.prototype;a.ffKeyRestoreValue_=null;a.createDom=function(){this.setElementInternal(this.getDomHelper().createDom("input",{type:"text"}))};a.decorateInternal=function(b){goog.ui.LabelInput.superClass_.decorateInternal.call(this,b);if(!this.label_)this.label_=b.getAttribute("label")||""};
a.enterDocument=function(){goog.ui.LabelInput.superClass_.enterDocument.call(this);this.attachEvents_();this.check_();this.getElement().labelInput_=this};a.exitDocument=function(){goog.ui.LabelInput.superClass_.exitDocument.call(this);this.detachEvents_();this.getElement().labelInput_=null};
a.attachEvents_=function(){var b=new goog.events.EventHandler(this);b.listen(this.getElement(),goog.events.EventType.FOCUS,this.handleFocus_);b.listen(this.getElement(),goog.events.EventType.BLUR,this.handleBlur_);goog.userAgent.GECKO&&b.listen(this.getElement(),[goog.events.EventType.KEYPRESS,goog.events.EventType.KEYDOWN,goog.events.EventType.KEYUP],this.handleEscapeKeys_);var d=goog.dom.getOwnerDocument(this.getElement());d=goog.dom.getWindow(d);b.listen(d,goog.events.EventType.LOAD,this.handleWindowLoad_);
this.eventHandler_=b;this.attachEventsToForm_()};a.attachEventsToForm_=function(){if(!this.formAttached_&&this.eventHandler_&&this.getElement().form){this.eventHandler_.listen(this.getElement().form,goog.events.EventType.SUBMIT,this.handleFormSubmit_);this.formAttached_=true}};a.detachEvents_=function(){if(this.eventHandler_){this.eventHandler_.dispose();this.eventHandler_=null}};a.disposeInternal=function(){goog.ui.LabelInput.superClass_.disposeInternal.call(this);this.detachEvents_()};
a.LABEL_CLASS_NAME="label-input-label";a.handleFocus_=function(){this.hasFocus_=true;goog.dom.classes.remove(this.getElement(),this.LABEL_CLASS_NAME);if(!this.hasChanged()&&!this.inFocusAndSelect_){var b=this,d=function(){b.getElement().value=""};goog.userAgent.IE?goog.Timer.callOnce(d,10):d()}};a.handleBlur_=function(){this.ffKeyRestoreValue_=null;this.hasFocus_=false;this.check_()};
a.handleEscapeKeys_=function(b){if(b.keyCode==27){if(b.type==goog.events.EventType.KEYDOWN)this.ffKeyRestoreValue_=this.getElement().value;else if(b.type==goog.events.EventType.KEYPRESS)this.getElement().value=this.ffKeyRestoreValue_;else if(b.type==goog.events.EventType.KEYUP)this.ffKeyRestoreValue_=null;b.preventDefault()}};a.handleFormSubmit_=function(){if(!this.hasChanged()){this.getElement().value="";goog.Timer.callOnce(this.handleAfterSubmit_,10,this)}};
a.handleAfterSubmit_=function(){if(!this.hasChanged())this.getElement().value=this.label_};a.handleWindowLoad_=function(){this.check_()};a.hasChanged=function(){return this.getElement().value!=""&&this.getElement().value!=this.label_};a.clear=function(){this.getElement().value="";if(this.ffKeyRestoreValue_!=null)this.ffKeyRestoreValue_=""};a.setValue=function(b){if(this.ffKeyRestoreValue_!=null)this.ffKeyRestoreValue_=b;this.getElement().value=b;this.check_()};
a.getValue=function(){if(this.ffKeyRestoreValue_!=null)return this.ffKeyRestoreValue_;return this.hasChanged()?this.getElement().value:""};a.check_=function(){this.attachEventsToForm_();if(this.hasChanged())goog.dom.classes.remove(this.getElement(),this.LABEL_CLASS_NAME);else{!this.inFocusAndSelect_&&!this.hasFocus_&&goog.dom.classes.add(this.getElement(),this.LABEL_CLASS_NAME);goog.Timer.callOnce(this.restoreLabel_,10,this)}};
a.focusAndSelect=function(){var b=this.hasChanged();this.inFocusAndSelect_=true;this.getElement().focus();if(!b)this.getElement().value=this.label_;this.getElement().select();goog.Timer.callOnce(this.focusAndSelect_,10,this)};a.focusAndSelect_=function(){this.inFocusAndSelect_=false};a.restoreLabel_=function(){if(this.getElement()&&!this.hasChanged()&&!this.hasFocus_)this.getElement().value=this.label_};goog.positioning={};goog.positioning.Corner={TOP_LEFT:0,TOP_RIGHT:2,BOTTOM_LEFT:1,BOTTOM_RIGHT:3,TOP_START:4,TOP_END:6,BOTTOM_START:5,BOTTOM_END:7};goog.positioning.CornerBit={BOTTOM:1,RIGHT:2,FLIP_RTL:4};goog.positioning.Overflow={IGNORE:0,ADJUST_X:1,FAIL_X:2,ADJUST_Y:4,FAIL_Y:8,RESIZE_WIDTH:16,RESIZE_HEIGHT:32};goog.positioning.OverflowStatus={NONE:0,ADJUSTED_X:1,ADJUSTED_Y:2,WIDTH_ADJUSTED:4,HEIGHT_ADJUSTED:8,FAILED_LEFT:16,FAILED_RIGHT:32,FAILED_TOP:64,FAILED_BOTTOM:128,FAILED_OUTSIDE_VIEWPORT:256};
goog.positioning.OverflowStatus.FAILED=goog.positioning.OverflowStatus.FAILED_LEFT|goog.positioning.OverflowStatus.FAILED_RIGHT|goog.positioning.OverflowStatus.FAILED_TOP|goog.positioning.OverflowStatus.FAILED_BOTTOM|goog.positioning.OverflowStatus.FAILED_OUTSIDE_VIEWPORT;goog.positioning.OverflowStatus.FAILED_HORIZONTAL=goog.positioning.OverflowStatus.FAILED_LEFT|goog.positioning.OverflowStatus.FAILED_RIGHT;
goog.positioning.OverflowStatus.FAILED_VERTICAL=goog.positioning.OverflowStatus.FAILED_TOP|goog.positioning.OverflowStatus.FAILED_BOTTOM;
goog.positioning.positionAtAnchor=function(b,d,e,g,h,k,o,q){var x,A=e.offsetParent;if(A){var E=A.tagName==goog.dom.TagName.HTML||A.tagName==goog.dom.TagName.BODY;if(!E||goog.style.getComputedPosition(A)!="static"){x=goog.style.getPageOffset(A);E||(x=goog.math.Coordinate.difference(x,new goog.math.Coordinate(A.scrollLeft,A.scrollTop)))}}A=goog.positioning.getVisiblePart_(b);goog.style.translateRectForAnotherFrame(A,goog.dom.getDomHelper(b),goog.dom.getDomHelper(e));b=goog.positioning.getEffectiveCorner(b,
d);d=new goog.math.Coordinate(b&goog.positioning.CornerBit.RIGHT?A.left+A.width:A.left,b&goog.positioning.CornerBit.BOTTOM?A.top+A.height:A.top);if(x)d=goog.math.Coordinate.difference(d,x);if(h){d.x+=(b&goog.positioning.CornerBit.RIGHT?-1:1)*h.x;d.y+=(b&goog.positioning.CornerBit.BOTTOM?-1:1)*h.y}var H;if(o)if((H=goog.style.getVisibleRectForElement(e))&&x){H.top=Math.max(0,H.top-x.y);H.right-=x.x;H.bottom-=x.y;H.left=Math.max(0,H.left-x.x)}return goog.positioning.positionAtCoordinate(d,e,g,k,H,o,
q)};goog.positioning.getVisiblePart_=function(b){var d=goog.style.getBounds(b);(b=goog.style.getVisibleRectForElement(b))&&d.intersection(goog.math.Rect.createFromBox(b));return d};
goog.positioning.positionAtCoordinate=function(b,d,e,g,h,k,o){b=b.clone();var q=goog.positioning.OverflowStatus.NONE;e=goog.positioning.getEffectiveCorner(d,e);var x=goog.style.getSize(d);o=o?o.clone():x;if(g||e!=goog.positioning.Corner.TOP_LEFT){if(e&goog.positioning.CornerBit.RIGHT)b.x-=o.width+(g?g.right:0);else if(g)b.x+=g.left;if(e&goog.positioning.CornerBit.BOTTOM)b.y-=o.height+(g?g.bottom:0);else if(g)b.y+=g.top}if(k){q=h?goog.positioning.adjustForViewport(b,o,h,k):goog.positioning.OverflowStatus.FAILED_OUTSIDE_VIEWPORT;
if(q&goog.positioning.OverflowStatus.FAILED)return q}goog.style.setPosition(d,b);goog.math.Size.equals(x,o)||goog.style.setSize(d,o);return q};
goog.positioning.adjustForViewport=function(b,d,e,g){var h=goog.positioning.OverflowStatus.NONE;if(b.x<e.left&&g&goog.positioning.Overflow.ADJUST_X){b.x=e.left;h|=goog.positioning.OverflowStatus.ADJUSTED_X}if(b.x<e.left&&b.x+d.width>e.right&&g&goog.positioning.Overflow.RESIZE_WIDTH){d.width-=b.x+d.width-e.right;h|=goog.positioning.OverflowStatus.WIDTH_ADJUSTED}if(b.x+d.width>e.right&&g&goog.positioning.Overflow.ADJUST_X){b.x=Math.max(e.right-d.width,e.left);h|=goog.positioning.OverflowStatus.ADJUSTED_X}if(g&
goog.positioning.Overflow.FAIL_X)h|=(b.x<e.left?goog.positioning.OverflowStatus.FAILED_LEFT:0)|(b.x+d.width>e.right?goog.positioning.OverflowStatus.FAILED_RIGHT:0);if(b.y<e.top&&g&goog.positioning.Overflow.ADJUST_Y){b.y=e.top;h|=goog.positioning.OverflowStatus.ADJUSTED_Y}if(b.y>=e.top&&b.y+d.height>e.bottom&&g&goog.positioning.Overflow.RESIZE_HEIGHT){d.height-=b.y+d.height-e.bottom;h|=goog.positioning.OverflowStatus.HEIGHT_ADJUSTED}if(b.y+d.height>e.bottom&&g&goog.positioning.Overflow.ADJUST_Y){b.y=
Math.max(e.bottom-d.height,e.top);h|=goog.positioning.OverflowStatus.ADJUSTED_Y}if(g&goog.positioning.Overflow.FAIL_Y)h|=(b.y<e.top?goog.positioning.OverflowStatus.FAILED_TOP:0)|(b.y+d.height>e.bottom?goog.positioning.OverflowStatus.FAILED_BOTTOM:0);return h};goog.positioning.getEffectiveCorner=function(b,d){return(d&goog.positioning.CornerBit.FLIP_RTL&&goog.style.isRightToLeft(b)?d^goog.positioning.CornerBit.RIGHT:d)&~goog.positioning.CornerBit.FLIP_RTL};
goog.positioning.flipCornerHorizontal=function(b){return b^goog.positioning.CornerBit.RIGHT};goog.positioning.flipCornerVertical=function(b){return b^goog.positioning.CornerBit.BOTTOM};goog.positioning.flipCorner=function(b){return b^goog.positioning.CornerBit.BOTTOM^goog.positioning.CornerBit.RIGHT};goog.positioning.AbstractPosition=function(){};goog.positioning.AbstractPosition.prototype.reposition=function(){};goog.positioning.AnchoredPosition=function(b,d){this.element=b;this.corner=d};goog.inherits(goog.positioning.AnchoredPosition,goog.positioning.AbstractPosition);goog.positioning.AnchoredPosition.prototype.reposition=function(b,d,e){goog.positioning.positionAtAnchor(this.element,this.corner,b,d,undefined,e)};goog.positioning.AnchoredViewportPosition=function(b,d,e){goog.positioning.AnchoredPosition.call(this,b,d);this.adjust_=e};goog.inherits(goog.positioning.AnchoredViewportPosition,goog.positioning.AnchoredPosition);
goog.positioning.AnchoredViewportPosition.prototype.reposition=function(b,d,e,g){var h=goog.positioning.positionAtAnchor(this.element,this.corner,b,d,null,e,goog.positioning.Overflow.FAIL_X|goog.positioning.Overflow.FAIL_Y,g);if(h&goog.positioning.OverflowStatus.FAILED){var k=this.corner,o=d;if(h&goog.positioning.OverflowStatus.FAILED_HORIZONTAL){k=goog.positioning.flipCornerHorizontal(k);o=goog.positioning.flipCornerHorizontal(o)}if(h&goog.positioning.OverflowStatus.FAILED_VERTICAL){k=goog.positioning.flipCornerVertical(k);
o=goog.positioning.flipCornerVertical(o)}h=goog.positioning.positionAtAnchor(this.element,k,b,o,null,e,goog.positioning.Overflow.FAIL_X|goog.positioning.Overflow.FAIL_Y,g);if(h&goog.positioning.OverflowStatus.FAILED)this.adjust_?goog.positioning.positionAtAnchor(this.element,this.corner,b,d,null,e,goog.positioning.Overflow.ADJUST_X|goog.positioning.Overflow.ADJUST_Y,g):goog.positioning.positionAtAnchor(this.element,this.corner,b,d,null,e,goog.positioning.Overflow.IGNORE,g)}};goog.positioning.MenuAnchoredPosition=function(b,d,e,g){goog.positioning.AnchoredViewportPosition.call(this,b,d,e);this.resize_=g};goog.inherits(goog.positioning.MenuAnchoredPosition,goog.positioning.AnchoredViewportPosition);
goog.positioning.MenuAnchoredPosition.prototype.reposition=function(b,d,e,g){this.resize_?goog.positioning.positionAtAnchor(this.element,this.corner,b,d,null,e,goog.positioning.Overflow.ADJUST_X|goog.positioning.Overflow.RESIZE_HEIGHT,g):goog.positioning.MenuAnchoredPosition.superClass_.reposition.call(this,b,d,e,g)};goog.positioning.ClientPosition=function(b,d){this.coordinate=b instanceof goog.math.Coordinate?b:new goog.math.Coordinate(b,d)};goog.inherits(goog.positioning.ClientPosition,goog.positioning.AbstractPosition);goog.positioning.ClientPosition.prototype.reposition=function(b,d,e,g){var h=goog.style.getClientViewportElement(b),k=new goog.math.Coordinate(this.coordinate.x+h.scrollLeft,this.coordinate.y+h.scrollTop);goog.positioning.positionAtAnchor(h,goog.positioning.Corner.TOP_LEFT,b,d,k,e,null,g)};goog.positioning.ViewportClientPosition=function(b,d){goog.positioning.ClientPosition.call(this,b,d)};goog.inherits(goog.positioning.ViewportClientPosition,goog.positioning.ClientPosition);
goog.positioning.ViewportClientPosition.prototype.reposition=function(b,d,e,g){var h=goog.style.getClientViewportElement(b);h=goog.style.getVisibleRectForElement(h);var k=goog.dom.getDomHelper(b).getDocumentScrollElement();k=new goog.math.Coordinate(this.coordinate.x+k.scrollLeft,this.coordinate.y+k.scrollTop);var o=goog.positioning.Overflow.FAIL_X|goog.positioning.Overflow.FAIL_Y,q=d,x=goog.positioning.positionAtCoordinate(k,b,q,e,h,o,g);if((x&goog.positioning.OverflowStatus.FAILED)!=0){if(x&goog.positioning.OverflowStatus.FAILED_LEFT||
x&goog.positioning.OverflowStatus.FAILED_RIGHT)q=goog.positioning.flipCornerHorizontal(q);if(x&goog.positioning.OverflowStatus.FAILED_TOP||x&goog.positioning.OverflowStatus.FAILED_BOTTOM)q=goog.positioning.flipCornerVertical(q);x=goog.positioning.positionAtCoordinate(k,b,q,e,h,o,g);(x&goog.positioning.OverflowStatus.FAILED)!=0&&goog.positioning.positionAtCoordinate(k,b,d,e,h,undefined,g)}};goog.ui.PopupBase=function(b,d){this.handler_=new goog.events.EventHandler(this);this.setElement(b||null);d&&this.setType(d)};goog.inherits(goog.ui.PopupBase,goog.events.EventTarget);goog.ui.PopupBase.Type={TOGGLE_DISPLAY:"toggle_display",MOVE_OFFSCREEN:"move_offscreen"};a=goog.ui.PopupBase.prototype;a.element_=null;a.autoHide_=true;a.autoHideRegion_=null;a.isVisible_=false;a.shouldHideAsync_=false;a.lastShowTime_=-1;a.lastHideTime_=-1;a.hideOnEscape_=false;a.enableCrossIframeDismissal_=true;
a.type_=goog.ui.PopupBase.Type.TOGGLE_DISPLAY;goog.ui.PopupBase.EventType={BEFORE_SHOW:"beforeshow",SHOW:"show",BEFORE_HIDE:"beforehide",HIDE:"hide"};goog.ui.PopupBase.DEBOUNCE_DELAY_MS=150;a=goog.ui.PopupBase.prototype;a.getType=function(){return this.type_};a.setType=function(b){this.type_=b};a.shouldHideAsync=function(){return this.shouldHideAsync_};a.setShouldHideAsync=function(b){this.shouldHideAsync_=b};a.getElement=function(){return this.element_};
a.setElement=function(b){this.ensureNotVisible_();this.element_=b};a.getAutoHide=function(){return this.autoHide_};a.setAutoHide=function(b){this.ensureNotVisible_();this.autoHide_=b};a.getHideOnEscape=function(){return this.hideOnEscape_};a.setHideOnEscape=function(b){this.ensureNotVisible_();this.hideOnEscape_=b};a.getEnableCrossIframeDismissal=function(){return this.enableCrossIframeDismissal_};a.setEnableCrossIframeDismissal=function(b){this.enableCrossIframeDismissal_=b};
a.getAutoHideRegion=function(){return this.autoHideRegion_};a.setAutoHideRegion=function(b){this.autoHideRegion_=b};a.getLastShowTime=function(){return this.lastShowTime_};a.getLastHideTime=function(){return this.lastHideTime_};a.ensureNotVisible_=function(){if(this.isVisible_)throw Error("Can not change this state of the popup while showing.");};a.isVisible=function(){return this.isVisible_};a.isOrWasRecentlyVisible=function(){return this.isVisible_||goog.now()-this.lastHideTime_<goog.ui.PopupBase.DEBOUNCE_DELAY_MS};
a.setVisible=function(b){b?this.show_():this.hide_()};a.reposition=goog.nullFunction;
a.show_=function(){if(!this.isVisible_)if(this.onBeforeShow()){if(!this.element_)throw Error("Caller must call setElement before trying to show the popup");this.reposition();var b=goog.dom.getOwnerDocument(this.element_);this.hideOnEscape_&&this.handler_.listen(b,goog.events.EventType.KEYDOWN,this.onDocumentKeyDown_,true);if(this.autoHide_){this.handler_.listen(b,goog.events.EventType.MOUSEDOWN,this.onDocumentMouseDown_,true);if(goog.userAgent.IE){for(var d=b.activeElement;d&&d.nodeName=="IFRAME";){try{var e=
goog.dom.getFrameContentDocument(d)}catch(g){break}b=e;d=b.activeElement}this.handler_.listen(b,goog.events.EventType.MOUSEDOWN,this.onDocumentMouseDown_,true);this.handler_.listen(b,goog.events.EventType.DEACTIVATE,this.onDocumentBlur_)}else this.handler_.listen(b,goog.events.EventType.BLUR,this.onDocumentBlur_)}if(this.type_==goog.ui.PopupBase.Type.TOGGLE_DISPLAY)this.showPopupElement();else this.type_==goog.ui.PopupBase.Type.MOVE_OFFSCREEN&&this.reposition();this.isVisible_=true;this.onShow_()}};
a.hide_=function(b){if(!this.isVisible_||!this.onBeforeHide_(b))return false;this.handler_&&this.handler_.removeAll();if(this.type_==goog.ui.PopupBase.Type.TOGGLE_DISPLAY)this.shouldHideAsync_?goog.Timer.callOnce(this.hidePopupElement_,0,this):this.hidePopupElement_();else this.type_==goog.ui.PopupBase.Type.MOVE_OFFSCREEN&&this.moveOffscreen_();this.isVisible_=false;this.onHide_(b);return true};
a.showPopupElement=function(){this.element_.style.visibility="visible";goog.style.showElement(this.element_,true)};a.hidePopupElement_=function(){this.element_.style.visibility="hidden";goog.style.showElement(this.element_,false)};a.moveOffscreen_=function(){this.element_.style.left="-200px";this.element_.style.top="-200px"};a.onBeforeShow=function(){return this.dispatchEvent(goog.ui.PopupBase.EventType.BEFORE_SHOW)};a.onShow_=function(){this.lastShowTime_=goog.now();this.lastHideTime_=-1;this.dispatchEvent(goog.ui.PopupBase.EventType.SHOW)};
a.onBeforeHide_=function(b){return this.dispatchEvent({type:goog.ui.PopupBase.EventType.BEFORE_HIDE,target:b})};a.onHide_=function(b){this.lastHideTime_=goog.now();this.dispatchEvent({type:goog.ui.PopupBase.EventType.HIDE,target:b})};a.onDocumentMouseDown_=function(b){b=b.target;if(!goog.dom.contains(this.element_,b)&&(!this.autoHideRegion_||goog.dom.contains(this.autoHideRegion_,b))&&!this.shouldDebounce_())this.hide_(b)};
a.onDocumentKeyDown_=function(b){if(b.keyCode==goog.events.KeyCodes.ESC)if(this.hide_(b.target)){b.preventDefault();b.stopPropagation()}};a.onDocumentBlur_=function(b){if(this.enableCrossIframeDismissal_){var d=goog.dom.getOwnerDocument(this.element_);if(goog.userAgent.IE||goog.userAgent.OPERA){if((b=d.activeElement)&&goog.dom.contains(this.element_,b))return}else if(b.target!=d)return;this.shouldDebounce_()||this.hide_()}};a.shouldDebounce_=function(){return goog.now()-this.lastShowTime_<goog.ui.PopupBase.DEBOUNCE_DELAY_MS};
a.disposeInternal=function(){goog.ui.PopupBase.superClass_.disposeInternal.call(this);this.handler_.dispose();delete this.element_;delete this.handler_};goog.iter={};goog.iter.Iterable=goog.typedef;goog.iter.StopIteration="StopIteration"in goog.global?goog.global.StopIteration:Error("StopIteration");goog.iter.Iterator=function(){};goog.iter.Iterator.prototype.next=function(){throw goog.iter.StopIteration;};goog.iter.Iterator.prototype.__iterator__=function(){return this};
goog.iter.toIterator=function(b){if(b instanceof goog.iter.Iterator)return b;if(typeof b.__iterator__=="function")return b.__iterator__(false);if(goog.isArrayLike(b)){var d=0,e=new goog.iter.Iterator;e.next=function(){for(;;){if(d>=b.length)throw goog.iter.StopIteration;if(d in b)return b[d++];else d++}};return e}throw Error("Not implemented");};
goog.iter.forEach=function(b,d,e){if(goog.isArrayLike(b))try{goog.array.forEach(b,d,e)}catch(g){if(g!==goog.iter.StopIteration)throw g;}else{b=goog.iter.toIterator(b);try{for(;;)d.call(e,b.next(),undefined,b)}catch(h){if(h!==goog.iter.StopIteration)throw h;}}};goog.iter.filter=function(b,d,e){b=goog.iter.toIterator(b);var g=new goog.iter.Iterator;g.next=function(){for(;;){var h=b.next();if(d.call(e,h,undefined,b))return h}};return g};
goog.iter.range=function(b,d,e){var g=0,h=b,k=e||1;if(arguments.length>1){g=b;h=d}if(k==0)throw Error("Range step argument must not be zero");var o=new goog.iter.Iterator;o.next=function(){if(k>0&&g>=h||k<0&&g<=h)throw goog.iter.StopIteration;var q=g;g+=k;return q};return o};goog.iter.join=function(b,d){return goog.iter.toArray(b).join(d)};
goog.iter.map=function(b,d,e){b=goog.iter.toIterator(b);var g=new goog.iter.Iterator;g.next=function(){for(;;){var h=b.next();return d.call(e,h,undefined,b)}};return g};goog.iter.reduce=function(b,d,e,g){var h=e;goog.iter.forEach(b,function(k){h=d.call(g,h,k)});return h};goog.iter.some=function(b,d,e){b=goog.iter.toIterator(b);try{for(;;)if(d.call(e,b.next(),undefined,b))return true}catch(g){if(g!==goog.iter.StopIteration)throw g;}return false};
goog.iter.every=function(b,d,e){b=goog.iter.toIterator(b);try{for(;;)if(!d.call(e,b.next(),undefined,b))return false}catch(g){if(g!==goog.iter.StopIteration)throw g;}return true};goog.iter.chain=function(){var b=arguments,d=b.length,e=0,g=new goog.iter.Iterator;g.next=function(){try{if(e>=d)throw goog.iter.StopIteration;return goog.iter.toIterator(b[e]).next()}catch(h){if(h!==goog.iter.StopIteration||e>=d)throw h;else{e++;return this.next()}}};return g};
goog.iter.dropWhile=function(b,d,e){b=goog.iter.toIterator(b);var g=new goog.iter.Iterator,h=true;g.next=function(){for(;;){var k=b.next();if(!(h&&d.call(e,k,undefined,b))){h=false;return k}}};return g};goog.iter.takeWhile=function(b,d,e){b=goog.iter.toIterator(b);var g=new goog.iter.Iterator,h=true;g.next=function(){for(;;)if(h){var k=b.next();if(d.call(e,k,undefined,b))return k;else h=false}else throw goog.iter.StopIteration;};return g};
goog.iter.toArray=function(b){if(goog.isArrayLike(b))return goog.array.toArray(b);b=goog.iter.toIterator(b);var d=[];goog.iter.forEach(b,function(e){d.push(e)});return d};
goog.iter.equals=function(b,d){b=goog.iter.toIterator(b);d=goog.iter.toIterator(d);var e,g;try{for(;;){e=g=false;var h=b.next();e=true;var k=d.next();g=true;if(h!=k)return false}}catch(o){if(o!==goog.iter.StopIteration)throw o;else{if(e&&!g)return false;if(!g)try{d.next();return false}catch(q){if(q!==goog.iter.StopIteration)throw q;return true}}}return false};goog.iter.nextOrValue=function(b,d){try{return goog.iter.toIterator(b).next()}catch(e){if(e!=goog.iter.StopIteration)throw e;return d}};goog.structs.getCount=function(b){if(typeof b.getCount=="function")return b.getCount();if(goog.isArrayLike(b)||goog.isString(b))return b.length;return goog.object.getCount(b)};goog.structs.getValues=function(b){if(typeof b.getValues=="function")return b.getValues();if(goog.isString(b))return b.split("");if(goog.isArrayLike(b)){for(var d=[],e=b.length,g=0;g<e;g++)d.push(b[g]);return d}return goog.object.getValues(b)};
goog.structs.getKeys=function(b){if(typeof b.getKeys=="function")return b.getKeys();if(typeof b.getValues!="function"){if(goog.isArrayLike(b)||goog.isString(b)){var d=[];b=b.length;for(var e=0;e<b;e++)d.push(e);return d}return goog.object.getKeys(b)}};
goog.structs.contains=function(b,d){if(typeof b.contains=="function")return b.contains(d);if(typeof b.containsValue=="function")return b.containsValue(d);if(goog.isArrayLike(b)||goog.isString(b))return goog.array.contains(b,d);return goog.object.containsValue(b,d)};goog.structs.isEmpty=function(b){if(typeof b.isEmpty=="function")return b.isEmpty();if(goog.isArrayLike(b)||goog.isString(b))return goog.array.isEmpty(b);return goog.object.isEmpty(b)};
goog.structs.clear=function(b){if(typeof b.clear=="function")b.clear();else goog.isArrayLike(b)?goog.array.clear(b):goog.object.clear(b)};goog.structs.forEach=function(b,d,e){if(typeof b.forEach=="function")b.forEach(d,e);else if(goog.isArrayLike(b)||goog.isString(b))goog.array.forEach(b,d,e);else for(var g=goog.structs.getKeys(b),h=goog.structs.getValues(b),k=h.length,o=0;o<k;o++)d.call(e,h[o],g&&g[o],b)};
goog.structs.filter=function(b,d,e){if(typeof b.filter=="function")return b.filter(d,e);if(goog.isArrayLike(b)||goog.isString(b))return goog.array.filter(b,d,e);var g,h=goog.structs.getKeys(b),k=goog.structs.getValues(b),o=k.length;if(h){g={};for(var q=0;q<o;q++)if(d.call(e,k[q],h[q],b))g[h[q]]=k[q]}else{g=[];for(q=0;q<o;q++)d.call(e,k[q],undefined,b)&&g.push(k[q])}return g};
goog.structs.map=function(b,d,e){if(typeof b.map=="function")return b.map(d,e);if(goog.isArrayLike(b)||goog.isString(b))return goog.array.map(b,d,e);var g,h=goog.structs.getKeys(b),k=goog.structs.getValues(b),o=k.length;if(h){g={};for(var q=0;q<o;q++)g[h[q]]=d.call(e,k[q],h[q],b)}else{g=[];for(q=0;q<o;q++)g[q]=d.call(e,k[q],undefined,b)}return g};
goog.structs.some=function(b,d,e){if(typeof b.some=="function")return b.some(d,e);if(goog.isArrayLike(b)||goog.isString(b))return goog.array.some(b,d,e);for(var g=goog.structs.getKeys(b),h=goog.structs.getValues(b),k=h.length,o=0;o<k;o++)if(d.call(e,h[o],g&&g[o],b))return true;return false};
goog.structs.every=function(b,d,e){if(typeof b.every=="function")return b.every(d,e);if(goog.isArrayLike(b)||goog.isString(b))return goog.array.every(b,d,e);for(var g=goog.structs.getKeys(b),h=goog.structs.getValues(b),k=h.length,o=0;o<k;o++)if(!d.call(e,h[o],g&&g[o],b))return false;return true};goog.structs.Map=function(b){this.map_={};this.keys_=[];var d=arguments.length;if(d>1){if(d%2)throw Error("Uneven number of arguments");for(var e=0;e<d;e+=2)this.set(arguments[e],arguments[e+1])}else b&&this.addAll(b)};a=goog.structs.Map.prototype;a.count_=0;a.version_=0;a.getCount=function(){return this.count_};a.getValues=function(){this.cleanupKeysArray_();for(var b=[],d=0;d<this.keys_.length;d++)b.push(this.map_[this.keys_[d]]);return b};a.getKeys=function(){this.cleanupKeysArray_();return this.keys_.concat()};
a.containsKey=function(b){return goog.structs.Map.hasKey_(this.map_,b)};a.containsValue=function(b){for(var d=0;d<this.keys_.length;d++){var e=this.keys_[d];if(goog.structs.Map.hasKey_(this.map_,e)&&this.map_[e]==b)return true}return false};a.equals=function(b,d){if(this===b)return true;if(this.count_!=b.getCount())return false;d=d||goog.structs.Map.defaultEquals;this.cleanupKeysArray_();for(var e,g=0;e=this.keys_[g];g++)if(!d(this.get(e),b.get(e)))return false;return true};
goog.structs.Map.defaultEquals=function(b,d){return b===d};a=goog.structs.Map.prototype;a.isEmpty=function(){return this.count_==0};a.clear=function(){this.map_={};this.version_=this.count_=this.keys_.length=0};a.remove=function(b){if(goog.structs.Map.hasKey_(this.map_,b)){delete this.map_[b];this.count_--;this.version_++;this.keys_.length>2*this.count_&&this.cleanupKeysArray_();return true}return false};
a.cleanupKeysArray_=function(){if(this.count_!=this.keys_.length){for(var b=0,d=0;b<this.keys_.length;){var e=this.keys_[b];if(goog.structs.Map.hasKey_(this.map_,e))this.keys_[d++]=e;b++}this.keys_.length=d}if(this.count_!=this.keys_.length){var g={};for(d=b=0;b<this.keys_.length;){e=this.keys_[b];if(!goog.structs.Map.hasKey_(g,e)){this.keys_[d++]=e;g[e]=1}b++}this.keys_.length=d}};a.get=function(b,d){if(goog.structs.Map.hasKey_(this.map_,b))return this.map_[b];return d};
a.set=function(b,d){if(!goog.structs.Map.hasKey_(this.map_,b)){this.count_++;this.keys_.push(b);this.version_++}this.map_[b]=d};a.addAll=function(b){var d;if(b instanceof goog.structs.Map){d=b.getKeys();b=b.getValues()}else{d=goog.object.getKeys(b);b=goog.object.getValues(b)}for(var e=0;e<d.length;e++)this.set(d[e],b[e])};a.clone=function(){return new goog.structs.Map(this)};a.transpose=function(){for(var b=new goog.structs.Map,d=0;d<this.keys_.length;d++){var e=this.keys_[d];b.set(this.map_[e],e)}return b};
a.getKeyIterator=function(){return this.__iterator__(true)};a.getValueIterator=function(){return this.__iterator__(false)};a.__iterator__=function(b){this.cleanupKeysArray_();var d=0,e=this.keys_,g=this.map_,h=this.version_,k=this,o=new goog.iter.Iterator;o.next=function(){for(;;){if(h!=k.version_)throw Error("The map has changed since the iterator was created");if(d>=e.length)throw goog.iter.StopIteration;var q=e[d++];return b?q:g[q]}};return o};
goog.structs.Map.hasKey_=function(b,d){return Object.prototype.hasOwnProperty.call(b,d)};goog.ui.MenuSeparatorRenderer=function(){goog.ui.ControlRenderer.call(this)};goog.inherits(goog.ui.MenuSeparatorRenderer,goog.ui.ControlRenderer);goog.addSingletonGetter(goog.ui.MenuSeparatorRenderer);goog.ui.MenuSeparatorRenderer.CSS_CLASS="goog-menuseparator";goog.ui.MenuSeparatorRenderer.prototype.createDom=function(b){return b.getDomHelper().createDom("div",this.getCssClass())};
goog.ui.MenuSeparatorRenderer.prototype.decorate=function(b,d){if(d.tagName=="HR"){var e=d;d=this.createDom(b);goog.dom.insertSiblingBefore(d,e);goog.dom.removeNode(e)}else goog.dom.classes.add(d,this.getCssClass());return d};goog.ui.MenuSeparatorRenderer.prototype.setContent=function(){};goog.ui.MenuSeparatorRenderer.prototype.getCssClass=function(){return goog.ui.MenuSeparatorRenderer.CSS_CLASS};goog.ui.Separator=function(b,d){goog.ui.Control.call(this,null,b||goog.ui.MenuSeparatorRenderer.getInstance(),d);this.setSupportedState(goog.ui.Component.State.DISABLED,false);this.setSupportedState(goog.ui.Component.State.HOVER,false);this.setSupportedState(goog.ui.Component.State.ACTIVE,false);this.setSupportedState(goog.ui.Component.State.FOCUSED,false);this.setStateInternal(goog.ui.Component.State.DISABLED)};goog.inherits(goog.ui.Separator,goog.ui.Control);
goog.ui.Separator.prototype.enterDocument=function(){goog.ui.Separator.superClass_.enterDocument.call(this);goog.dom.a11y.setRole(this.getElement(),"separator")};goog.ui.registry.setDecoratorByClassName(goog.ui.MenuSeparatorRenderer.CSS_CLASS,function(){return new goog.ui.Separator});goog.ui.ContainerRenderer=function(){};goog.addSingletonGetter(goog.ui.ContainerRenderer);goog.ui.ContainerRenderer.getCustomRenderer=function(b,d){b=new b;b.getCssClass=function(){return d};return b};goog.ui.ContainerRenderer.CSS_CLASS="goog-container";a=goog.ui.ContainerRenderer.prototype;a.getAriaRole=function(){};a.hasTabIndex=function(b){if(b){var d=b.getAttributeNode("tabindex");if(d&&d.specified){b=b.tabIndex;return goog.isNumber(b)&&b>=0}}return false};
a.enableTabIndex=function(b,d){if(b)b.tabIndex=d?0:-1};a.createDom=function(b){return b.getDomHelper().createDom("div",this.getClassNames(b).join(" "))};a.getContentElement=function(b){return b};a.canDecorate=function(b){return b.tagName=="DIV"};
a.decorate=function(b,d){d.id&&b.setId(d.id);var e=this.getCssClass(),g=false,h=goog.dom.classes.get(d);h&&goog.array.forEach(h,function(k){if(k==e)g=true;else k&&this.setStateFromClassName(b,k,e)},this);g||goog.dom.classes.add(d,e);this.decorateChildren(b,d);return d};a.setStateFromClassName=function(b,d,e){if(d==e+"-disabled")b.setEnabled(false);else if(d==e+"-horizontal")b.setOrientation(goog.ui.Container.Orientation.HORIZONTAL);else d==e+"-vertical"&&b.setOrientation(goog.ui.Container.Orientation.VERTICAL)};
a.decorateChildren=function(b,d){if(d)for(var e=d.firstChild,g;e&&e.parentNode==d;){g=e.nextSibling;if(e.nodeType==goog.dom.NodeType.ELEMENT){var h=this.getDecoratorForChild(e);if(h){h.setElementInternal(e);b.isEnabled()||h.setEnabled(false);b.addChild(h);h.decorate(e)}}else if(!e.nodeValue||goog.string.trim(e.nodeValue)=="")d.removeChild(e);e=g}};a.getDecoratorForChild=function(b){return goog.ui.registry.getDecorator(b)};
a.initializeDom=function(b){b=b.getElement();goog.style.setUnselectable(b,true,goog.userAgent.GECKO);if(goog.userAgent.IE)b.hideFocus=true;var d=this.getAriaRole();d&&goog.dom.a11y.setRole(b,d)};a.getKeyEventTarget=function(b){return b.getElement()};a.getCssClass=function(){return goog.ui.ContainerRenderer.CSS_CLASS};
a.getClassNames=function(b){var d=this.getCssClass(),e=b.getOrientation()==goog.ui.Container.Orientation.HORIZONTAL;e=[d,e?d+"-horizontal":d+"-vertical"];b.isEnabled()||e.push(d+"-disabled");return e};a.getDefaultOrientation=function(){return goog.ui.Container.Orientation.VERTICAL};goog.ui.MenuRenderer=function(){goog.ui.ContainerRenderer.call(this)};goog.inherits(goog.ui.MenuRenderer,goog.ui.ContainerRenderer);goog.addSingletonGetter(goog.ui.MenuRenderer);goog.ui.MenuRenderer.CSS_CLASS="goog-menu";a=goog.ui.MenuRenderer.prototype;a.getAriaRole=function(){return goog.dom.a11y.Role.MENU};a.canDecorate=function(b){return b.tagName=="UL"||goog.ui.MenuRenderer.superClass_.canDecorate.call(this,b)};
a.getDecoratorForChild=function(b){return b.tagName=="HR"?new goog.ui.Separator:goog.ui.MenuRenderer.superClass_.getDecoratorForChild.call(this,b)};a.containsElement=function(b,d){return goog.dom.contains(b.getElement(),d)};a.getCssClass=function(){return goog.ui.MenuRenderer.CSS_CLASS};a.initializeDom=function(b){goog.ui.MenuRenderer.superClass_.initializeDom.call(this,b);b=b.getElement();goog.dom.a11y.setState(b,goog.dom.a11y.State.HASPOPUP,"true")};goog.ui.MenuSeparator=function(b){goog.ui.Separator.call(this,goog.ui.MenuSeparatorRenderer.getInstance(),b)};goog.inherits(goog.ui.MenuSeparator,goog.ui.Separator);goog.ui.registry.setDecoratorByClassName(goog.ui.MenuSeparatorRenderer.CSS_CLASS,function(){return new goog.ui.Separator});goog.ui.Container=function(b,d,e){goog.ui.Component.call(this,e);this.renderer_=d||goog.ui.ContainerRenderer.getInstance();this.orientation_=b||this.renderer_.getDefaultOrientation()};goog.inherits(goog.ui.Container,goog.ui.Component);goog.ui.Container.EventType={AFTER_SHOW:"aftershow"};goog.ui.Container.Orientation={HORIZONTAL:"horizontal",VERTICAL:"vertical"};a=goog.ui.Container.prototype;a.keyEventTarget_=null;a.keyHandler_=null;a.renderer_=null;a.orientation_=null;a.visible_=true;a.enabled_=true;
a.focusable_=true;a.highlightedIndex_=-1;a.openItem_=null;a.mouseButtonPressed_=false;a.allowFocusableChildren_=false;a.childElementIdMap_=null;a.getKeyEventTarget=function(){return this.keyEventTarget_||this.renderer_.getKeyEventTarget(this)};
a.setKeyEventTarget=function(b){if(this.focusable_){var d=this.getKeyEventTarget(),e=this.isInDocument();this.keyEventTarget_=b;var g=this.getKeyEventTarget();if(e){this.keyEventTarget_=d;this.enableFocusHandling_(false);this.keyEventTarget_=b;this.getKeyHandler().attach(g);this.enableFocusHandling_(true)}}else throw Error("Can't set key event target for container that doesn't support keyboard focus!");};a.getKeyHandler=function(){return this.keyHandler_||(this.keyHandler_=new goog.events.KeyHandler(this.getKeyEventTarget()))};
a.getRenderer=function(){return this.renderer_};a.setRenderer=function(b){if(this.getElement())throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.renderer_=b};a.createDom=function(){this.setElementInternal(this.renderer_.createDom(this))};a.getContentElement=function(){return this.renderer_.getContentElement(this.getElement())};a.canDecorate=function(b){return this.renderer_.canDecorate(b)};
a.decorateInternal=function(b){this.setElementInternal(this.renderer_.decorate(this,b));if(b.style.display=="none")this.visible_=false};
a.enterDocument=function(){goog.ui.Container.superClass_.enterDocument.call(this);this.forEachChild(function(d){d.isInDocument()&&this.registerChildId_(d)},this);var b=this.getElement();this.renderer_.initializeDom(this);this.setVisible(this.visible_,true);this.getHandler().listen(this,goog.ui.Component.EventType.ENTER,this.handleEnterItem).listen(this,goog.ui.Component.EventType.HIGHLIGHT,this.handleHighlightItem).listen(this,goog.ui.Component.EventType.UNHIGHLIGHT,this.handleUnHighlightItem).listen(this,
goog.ui.Component.EventType.OPEN,this.handleOpenItem).listen(this,goog.ui.Component.EventType.CLOSE,this.handleCloseItem).listen(b,goog.events.EventType.MOUSEDOWN,this.handleMouseDown).listen(goog.dom.getOwnerDocument(b),goog.events.EventType.MOUSEUP,this.handleDocumentMouseUp).listen(b,[goog.events.EventType.MOUSEDOWN,goog.events.EventType.MOUSEUP,goog.events.EventType.MOUSEOVER,goog.events.EventType.MOUSEOUT],this.handleChildMouseEvents);this.isFocusable()&&this.enableFocusHandling_(true)};
a.enableFocusHandling_=function(b){var d=this.getHandler(),e=this.getKeyEventTarget();b?d.listen(e,goog.events.EventType.FOCUS,this.handleFocus).listen(e,goog.events.EventType.BLUR,this.handleBlur).listen(this.getKeyHandler(),goog.events.KeyHandler.EventType.KEY,this.handleKeyEvent):d.unlisten(e,goog.events.EventType.FOCUS,this.handleFocus).unlisten(e,goog.events.EventType.BLUR,this.handleBlur).unlisten(this.getKeyHandler(),goog.events.KeyHandler.EventType.KEY,this.handleKeyEvent)};
a.exitDocument=function(){this.setHighlightedIndex(-1);this.openItem_&&this.openItem_.setOpen(false);this.mouseButtonPressed_=false;goog.ui.Container.superClass_.exitDocument.call(this)};a.disposeInternal=function(){goog.ui.Container.superClass_.disposeInternal.call(this);if(this.keyHandler_){this.keyHandler_.dispose();this.keyHandler_=null}this.renderer_=this.openItem_=this.childElementIdMap_=null};a.handleEnterItem=function(){return true};
a.handleHighlightItem=function(b){var d=this.indexOfChild(b.target);if(d>-1&&d!=this.highlightedIndex_){var e=this.getHighlighted();e&&e.setHighlighted(false);this.highlightedIndex_=d;e=this.getHighlighted();this.isMouseButtonPressed()&&e.setActive(true);if(this.openItem_&&e!=this.openItem_)e.isSupportedState(goog.ui.Component.State.OPENED)?e.setOpen(true):this.openItem_.setOpen(false)}goog.dom.a11y.setState(this.getElement(),goog.dom.a11y.State.ACTIVEDESCENDANT,b.target.getElement().id)};
a.handleUnHighlightItem=function(b){if(b.target==this.getHighlighted())this.highlightedIndex_=-1;goog.dom.a11y.setState(this.getElement(),goog.dom.a11y.State.ACTIVEDESCENDANT,"")};a.handleOpenItem=function(b){if((b=b.target)&&b!=this.openItem_&&b.getParent()==this){this.openItem_&&this.openItem_.setOpen(false);this.openItem_=b}};a.handleCloseItem=function(b){if(b.target==this.openItem_)this.openItem_=null};
a.handleMouseDown=function(b){this.enabled_&&this.setMouseButtonPressed(true);var d=this.getKeyEventTarget();this.renderer_.hasTabIndex(d)?d.focus():b.preventDefault()};a.handleDocumentMouseUp=function(){this.setMouseButtonPressed(false)};
a.handleChildMouseEvents=function(b){var d=this.getOwnerControl(b.target);if(d)switch(b.type){case goog.events.EventType.MOUSEDOWN:d.handleMouseDown(b);break;case goog.events.EventType.MOUSEUP:d.handleMouseUp(b);break;case goog.events.EventType.MOUSEOVER:d.handleMouseOver(b);break;case goog.events.EventType.MOUSEOUT:d.handleMouseOut(b);break}};
a.getOwnerControl=function(b){if(this.childElementIdMap_)for(var d=this.getElement();b&&b.parentNode&&b!=d;){var e=b.id;if(e in this.childElementIdMap_)return this.childElementIdMap_[e];b=b.parentNode}return null};a.handleFocus=function(){};a.handleBlur=function(){this.setHighlightedIndex(-1);this.setMouseButtonPressed(false);this.openItem_&&this.openItem_.setOpen(false)};
a.handleKeyEvent=function(b){if(this.isEnabled()&&this.getChildCount()!=0&&this.handleKeyEventInternal(b)){b.preventDefault();b.stopPropagation();return true}return false};
a.handleKeyEventInternal=function(b){var d=this.getHighlighted();if(d&&typeof d.handleKeyEvent=="function"&&d.handleKeyEvent(b))return true;if(this.openItem_&&this.openItem_!=d&&typeof this.openItem_.handleKeyEvent=="function"&&this.openItem_.handleKeyEvent(b))return true;switch(b.keyCode){case goog.events.KeyCodes.ESC:if(this.isFocusable())this.getKeyEventTarget().blur();else return false;break;case goog.events.KeyCodes.HOME:this.highlightFirst();break;case goog.events.KeyCodes.END:this.highlightLast();
break;case goog.events.KeyCodes.UP:if(this.orientation_==goog.ui.Container.Orientation.VERTICAL)this.highlightPrevious();else return false;break;case goog.events.KeyCodes.LEFT:if(this.orientation_==goog.ui.Container.Orientation.HORIZONTAL)this.isRightToLeft()?this.highlightNext():this.highlightPrevious();else return false;break;case goog.events.KeyCodes.DOWN:if(this.orientation_==goog.ui.Container.Orientation.VERTICAL)this.highlightNext();else return false;break;case goog.events.KeyCodes.RIGHT:if(this.orientation_==
goog.ui.Container.Orientation.HORIZONTAL)this.isRightToLeft()?this.highlightPrevious():this.highlightNext();else return false;break;default:return false}return true};a.registerChildId_=function(b){var d=b.getElement();d=d.id||(d.id=b.getId());if(!this.childElementIdMap_)this.childElementIdMap_={};this.childElementIdMap_[d]=b};a.addChild=function(b,d){goog.ui.Container.superClass_.addChild.call(this,b,d)};
a.addChildAt=function(b,d,e){b.setDispatchTransitionEvents(goog.ui.Component.State.HOVER,true);b.setDispatchTransitionEvents(goog.ui.Component.State.OPENED,true);if(this.isFocusable()||!this.isFocusableChildrenAllowed())b.setSupportedState(goog.ui.Component.State.FOCUSED,false);b.setHandleMouseEvents(false);goog.ui.Container.superClass_.addChildAt.call(this,b,d,e);e&&this.isInDocument()&&this.registerChildId_(b);d<=this.highlightedIndex_&&this.highlightedIndex_++};
a.removeChild=function(b,d){var e=this.indexOfChild(b);if(e!=-1)if(e==this.highlightedIndex_)b.setHighlighted(false);else e<this.highlightedIndex_&&this.highlightedIndex_--;(e=b.getElement())&&e.id&&goog.object.remove(this.childElementIdMap_,e.id);b=goog.ui.Container.superClass_.removeChild.call(this,b,d);b.setHandleMouseEvents(true);return b};a.getOrientation=function(){return this.orientation_};
a.setOrientation=function(b){if(this.getElement())throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.orientation_=b};a.isVisible=function(){return this.visible_};
a.setVisible=function(b,d){if(d||this.visible_!=b&&this.dispatchEvent(b?goog.ui.Component.EventType.SHOW:goog.ui.Component.EventType.HIDE)){this.visible_=b;var e=this.getElement();if(e){goog.style.showElement(e,b);this.isFocusable()&&this.renderer_.enableTabIndex(this.getKeyEventTarget(),this.enabled_&&this.visible_);this.visible_&&!d&&this.dispatchEvent(goog.ui.Container.EventType.AFTER_SHOW)}return true}return false};a.isEnabled=function(){return this.enabled_};
a.setEnabled=function(b){if(this.enabled_!=b&&this.dispatchEvent(b?goog.ui.Component.EventType.ENABLE:goog.ui.Component.EventType.DISABLE)){if(b){this.enabled_=true;this.forEachChild(function(d){if(d.wasDisabled)delete d.wasDisabled;else d.setEnabled(true)})}else{this.forEachChild(function(d){if(d.isEnabled())d.setEnabled(false);else d.wasDisabled=true});this.enabled_=false;this.setMouseButtonPressed(false)}this.isFocusable()&&this.renderer_.enableTabIndex(this.getKeyEventTarget(),b&&this.visible_)}};
a.isFocusable=function(){return this.focusable_};a.setFocusable=function(b){b!=this.focusable_&&this.isInDocument()&&this.enableFocusHandling_(b);this.focusable_=b;this.enabled_&&this.visible_&&this.renderer_.enableTabIndex(this.getKeyEventTarget(),b)};a.isFocusableChildrenAllowed=function(){return this.allowFocusableChildren_};a.setFocusableChildrenAllowed=function(b){this.allowFocusableChildren_=b};a.getHighlightedIndex=function(){return this.highlightedIndex_};
a.setHighlightedIndex=function(b){if(b=this.getChildAt(b))b.setHighlighted(true);else this.highlightedIndex_>-1&&this.getHighlighted().setHighlighted(false)};a.setHighlighted=function(b){this.setHighlightedIndex(this.indexOfChild(b))};a.getHighlighted=function(){return this.getChildAt(this.highlightedIndex_)};a.highlightFirst=function(){this.highlightHelper(function(b,d){return(b+1)%d},this.getChildCount()-1)};a.highlightLast=function(){this.highlightHelper(function(b,d){b--;return b<0?d-1:b},0)};
a.highlightNext=function(){this.highlightHelper(function(b,d){return(b+1)%d},this.highlightedIndex_)};a.highlightPrevious=function(){this.highlightHelper(function(b,d){b--;return b<0?d-1:b},this.highlightedIndex_)};a.highlightHelper=function(b,d){d=d<0?this.indexOfChild(this.openItem_):d;var e=this.getChildCount();d=b(d,e);for(var g=0;g<=e;){var h=this.getChildAt(d);if(h&&this.canHighlightItem(h)){this.setHighlightedIndexFromKeyEvent(d);return true}g++;d=b(d,e)}return false};
a.canHighlightItem=function(b){return b.isVisible()&&b.isEnabled()&&b.isSupportedState(goog.ui.Component.State.HOVER)};a.setHighlightedIndexFromKeyEvent=function(b){this.setHighlightedIndex(b)};a.isMouseButtonPressed=function(){return this.mouseButtonPressed_};a.setMouseButtonPressed=function(b){this.mouseButtonPressed_=b};goog.ui.Menu=function(b,d){goog.ui.Container.call(this,goog.ui.Container.Orientation.VERTICAL,d||goog.ui.MenuRenderer.getInstance(),b);this.setFocusable(false)};goog.inherits(goog.ui.Menu,goog.ui.Container);goog.ui.Menu.EventType={BEFORE_SHOW:goog.ui.Component.EventType.BEFORE_SHOW,SHOW:goog.ui.Component.EventType.SHOW,BEFORE_HIDE:goog.ui.Component.EventType.HIDE,HIDE:goog.ui.Component.EventType.HIDE};goog.ui.Menu.CSS_CLASS=goog.ui.MenuRenderer.CSS_CLASS;a=goog.ui.Menu.prototype;
a.allowAutoFocus_=true;a.allowHighlightDisabled_=false;a.getCssClass=function(){return this.getRenderer().getCssClass()};a.containsElement=function(b){if(this.getRenderer().containsElement(this,b))return true;for(var d=0,e=this.getChildCount();d<e;d++){var g=this.getChildAt(d);if(typeof g.containsElement=="function"&&g.containsElement(b))return true}return false};a.addItem=function(b){this.addChild(b,true)};a.addItemAt=function(b,d){this.addChildAt(b,d,true)};
a.removeItem=function(b){(b=this.removeChild(b,true))&&b.dispose()};a.removeItemAt=function(b){(b=this.removeChildAt(b,true))&&b.dispose()};a.getItemAt=function(b){return this.getChildAt(b)};a.getItemCount=function(){return this.getChildCount()};a.getItems=function(){return this.children_||[]};a.setPosition=function(b,d){var e=this.isVisible();e||goog.style.showElement(this.getElement(),true);goog.style.setPageOffset(this.getElement(),b,d);e||goog.style.showElement(this.getElement(),false)};
a.getPosition=function(){return this.isVisible()?goog.style.getPageOffset(this.getElement()):null};a.setAllowAutoFocus=function(b){(this.allowAutoFocus_=b)&&this.setFocusable(true)};a.getAllowAutoFocus=function(){return this.allowAutoFocus_};a.setAllowHighlightDisabled=function(b){this.allowHighlightDisabled_=b};a.getAllowHighlightDisabled=function(){return this.allowHighlightDisabled_};
a.setVisible=function(b,d){(d=goog.ui.Menu.superClass_.setVisible.call(this,b,d))&&b&&this.isInDocument()&&this.allowAutoFocus_&&this.getKeyEventTarget().focus();return d};a.handleEnterItem=function(b){this.allowAutoFocus_&&this.getKeyEventTarget().focus();return goog.ui.Menu.superClass_.handleEnterItem.call(this,b)};
a.highlightNextPrefix=function(b){var d=new RegExp("^"+goog.string.regExpEscape(b),"i");return this.highlightHelper(function(e,g){var h=e<0?0:e,k=false;do{++e;if(e==g){e=0;k=true}var o=this.getChildAt(e).getCaption();if(o&&o.match(d))return e}while(!k||e!=h);return null},this.getHighlightedIndex())};a.canHighlightItem=function(b){return(this.allowHighlightDisabled_||b.isEnabled())&&b.isVisible()&&b.isSupportedState(goog.ui.Component.State.HOVER)};goog.ui.PopupMenu=function(b,d){goog.ui.Menu.call(this,b,d);this.setAllowAutoFocus(true);this.setVisible(false,true);this.targets_=new goog.structs.Map};goog.inherits(goog.ui.PopupMenu,goog.ui.Menu);a=goog.ui.PopupMenu.prototype;a.toggleMode_=false;a.lastHide_=0;a.currentAnchor_=null;a.decorateInternal=function(b){goog.ui.PopupMenu.superClass_.decorateInternal.call(this,b);(b=b.getAttribute("for")||b.htmlFor)&&this.attach(this.getDomHelper().getElement(b),goog.positioning.Corner.BOTTOM_LEFT)};
a.enterDocument=function(){goog.ui.PopupMenu.superClass_.enterDocument.call(this);goog.structs.forEach(this.targets_,this.attachEvent_,this);var b=this.getHandler();b.listen(this,goog.ui.Component.EventType.ACTION,this.onAction_);b.listen(this.getDomHelper().getDocument(),goog.events.EventType.MOUSEDOWN,this.onDocClick,true);goog.userAgent.WEBKIT&&b.listen(this.getDomHelper().getDocument(),goog.events.EventType.CONTEXTMENU,this.onDocClick,true)};
a.attach=function(b,d,e,g,h){if(!this.isAttachTarget(b)){b=this.createAttachTarget(b,d,e,g,h);this.isInDocument()&&this.attachEvent_(b)}};a.createAttachTarget=function(b,d,e,g,h){if(!b)return null;d={element_:b,targetCorner_:d,menuCorner_:e,eventType_:g?goog.events.EventType.CONTEXTMENU:goog.events.EventType.MOUSEDOWN,margin_:h};this.targets_.set(goog.getUid(b),d);return d};a.getAttachTarget=function(b){return b?this.targets_.get(goog.getUid(b)):null};
a.isAttachTarget=function(b){return b?this.targets_.containsKey(goog.getUid(b)):false};a.getAttachedElement=function(){return this.currentAnchor_};a.attachEvent_=function(b){this.getHandler().listen(b.element_,b.eventType_,this.onTargetClick_)};a.detachAll=function(){if(this.isInDocument())for(var b=this.targets_.getKeys(),d=0;d<b.length;d++)this.detachEvent_(this.targets_.get(b[d]));this.targets_.clear()};
a.detach=function(b){if(!this.isAttachTarget(b))throw Error("Menu not attached to provided element, unable to detach.");b=goog.getUid(b);this.isInDocument()&&this.detachEvent_(this.targets_.get(b));this.targets_.remove(b)};a.detachEvent_=function(b){this.getHandler().unlisten(b.element_,b.eventType_,this.onTargetClick_)};a.setToggleMode=function(b){this.toggleMode_=b};a.getToggleMode=function(){return this.toggleMode_};
a.showWithPosition=function(b,d,e,g){var h=this.isVisible();if((h||this.wasRecentlyHidden())&&this.toggleMode_)this.hide();else{this.currentAnchor_=g||null;if(this.dispatchEvent(goog.ui.Component.EventType.BEFORE_SHOW)){d=typeof d!="undefined"?d:goog.positioning.Corner.TOP_START;if(!h)this.getElement().style.visibility="hidden";goog.style.showElement(this.getElement(),true);b.reposition(this.getElement(),d,e);if(!h)this.getElement().style.visibility="visible";this.setHighlightedIndex(-1);this.setVisible(true)}}};
a.showMenu=function(b,d,e){this.showWithPosition(goog.isDef(b.targetCorner_)?new goog.positioning.AnchoredViewportPosition(b.element_,b.targetCorner_,true):new goog.positioning.ViewportClientPosition(d,e),b.menuCorner_,b.margin_,b.element_)};a.showAt=function(b,d,e){this.showWithPosition(new goog.positioning.ViewportClientPosition(b,d),e)};a.showAtElement=function(b,d,e){this.showWithPosition(new goog.positioning.MenuAnchoredPosition(b,d,true),e,null,b)};
a.hide=function(){this.setVisible(false);if(!this.isVisible()){this.lastHide_=goog.now();this.currentAnchor_=null}};a.wasRecentlyHidden=function(){return goog.now()-this.lastHide_<goog.ui.PopupBase.DEBOUNCE_DELAY_MS};a.onAction_=function(){this.hide()};a.onTargetClick_=function(b){for(var d=this.targets_.getKeys(),e=0;e<d.length;e++){var g=this.targets_.get(d[e]);if(g.element_==b.currentTarget){this.showMenu(g,b.clientX,b.clientY);b.preventDefault();b.stopPropagation();return}}};
a.onDocClick=function(b){this.isVisible()&&!this.containsElement(b.target)&&this.hide()};a.handleBlur=function(b){goog.ui.PopupMenu.superClass_.handleBlur.call(this,b);this.hide()};a.disposeInternal=function(){goog.ui.PopupMenu.superClass_.disposeInternal.call(this);if(this.targets_){this.targets_.clear();delete this.targets_}};jquery.watermark={};
(function(b){var d=["Page_ClientValidate"],e=false;b.extend(b.expr[":"],{data:function(g,h,k){if(h=/^((?:[^=!^$*]|[!^$*](?!=))+)(?:([!^$*]?=)(.*))?$/.exec(k[3])){g=b(g).data(h[1]);if(g!==void 0){if(h[2]){g=""+g;switch(h[2]){case "=":return g==h[3];case "!=":return g!=h[3];case "^=":return g.slice(0,h[3].length)==h[3];case "$=":return g.slice(-h[3].length)==h[3];case "*=":return g.indexOf(h[3])!==-1}}return true}}return false}});b.watermark={version:"3.0.3",options:{className:"watermark",useNative:true},
hide:function(g){b(g).filter(":data(watermark)").each(function(){b.watermark._hide(b(this))})},_hide:function(g,h){if(g.val()==g.data("watermarkText")){g.val("");if(g.data("watermarkPassword"))if(g.attr("type")==="text"){var k=g.data("watermarkPassword"),o=g.parent();o[0].removeChild(g[0]);o[0].appendChild(k[0]);g=k}if(g.data("watermarkMaxLength")){g.attr("maxLength",g.data("watermarkMaxLength"));g.removeData("watermarkMaxLength")}if(h){g.attr("autocomplete","off");window.setTimeout(function(){g.select()},
0)}}g.removeClass(g.data("watermarkClass"))},show:function(g){b(g).filter(":data(watermark)").each(function(){b.watermark._show(b(this))})},_show:function(g){var h=g.val(),k=g.data("watermarkText"),o=g.attr("type");if((h.length==0||h==k)&&!g.data("watermarkFocus")){e=true;if(g.data("watermarkPassword"))if(o==="password"){h=g.data("watermarkPassword");var q=g.parent();q[0].removeChild(g[0]);q[0].appendChild(h[0]);g=h;g.attr("maxLength",k.length)}if(o==="text"||o==="search"){o=g.attr("maxLength");if(o>
0&&k.length>o){g.data("watermarkMaxLength",o);g.attr("maxLength",k.length)}}g.addClass(g.data("watermarkClass"));g.val(k)}else b.watermark._hide(g)},hideAll:function(){if(e){b.watermark.hide(":text,:password,:search,textarea");e=false}},showAll:function(){b.watermark.show(":text,:password,:search,textarea")}};b.fn.watermark=function(g,h){var k=typeof g==="string",o;if(typeof h==="object"){o=typeof h.className==="string";h=b.extend({},b.watermark.options,h)}else if(typeof h==="string"){o=true;h=b.extend({},
b.watermark.options,{className:h})}else h=b.watermark.options;if(typeof h.useNative!=="function")h.useNative=h.useNative?function(){return true}:function(){return false};return this.each(function(){var q=b(this);if(q.is(":text,:password,:search,textarea")){if(q.data("watermark")){if(k||o){b.watermark._hide(q);k&&q.data("watermarkText",g);o&&q.data("watermarkClass",h.className)}}else{if(h.useNative.call(this,q))if((""+q.css("-webkit-appearance")).replace("undefined","")!==""&&q.attr("tagName")!=="TEXTAREA"){k&&
q.attr("placeholder",g);return}q.data("watermarkText",k?g:"");q.data("watermarkClass",h.className);q.data("watermark",1);if(q.attr("type")==="password"){var x=q.wrap("<span>").parent(),A=b(x.html().replace(/type=["']?password["']?/i,'type="text"'));A.data("watermarkText",q.data("watermarkText"));A.data("watermarkClass",q.data("watermarkClass"));A.data("watermark",1);A.attr("maxLength",g.length);A.focus(function(){b.watermark._hide(A,true)}).bind("dragenter",function(){b.watermark._hide(A)}).bind("dragend",
function(){window.setTimeout(function(){A.blur()},1)});q.blur(function(){b.watermark._show(q)}).bind("dragleave",function(){b.watermark._show(q)});A.data("watermarkPassword",q);q.data("watermarkPassword",A)}else q.focus(function(){q.data("watermarkFocus",1);b.watermark._hide(q,true)}).blur(function(){q.data("watermarkFocus",0);b.watermark._show(q)}).bind("dragenter",function(){b.watermark._hide(q)}).bind("dragleave",function(){b.watermark._show(q)}).bind("dragend",function(){window.setTimeout(function(){b.watermark._show(q)},
1)}).bind("drop",function(H){H=H.originalEvent.dataTransfer.getData("Text");q.val().replace(H,"")===q.data("watermarkText")&&q.val(H);q.focus()});if(this.form){x=this.form;var E=b(x);if(!E.data("watermarkSubmit")){E.submit(b.watermark.hideAll);if(x.submit){E.data("watermarkSubmit",x.submit);x.submit=function(H,j){return function(){var N=j.data("watermarkSubmit");b.watermark.hideAll();N.apply?N.apply(H,Array.prototype.slice.call(arguments)):N()}}(x,E)}else{E.data("watermarkSubmit",1);x.submit=function(H){return function(){b.watermark.hideAll();
delete H.submit;H.submit()}}(x)}}}}b.watermark._show(q)}}).end()};d.length&&b(function(){var g,h,k;for(g=d.length-1;g>=0;g--){h=d[g];k=window[h];if(typeof k==="function")window[h]=function(o){return function(){b.watermark.hideAll();o.apply(null,Array.prototype.slice.call(arguments))}}(k)}})})(jQuery);jquery.tweet={};
(function(b){b.fn.tweet=function(d){function e(o){return Date.parse(o.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i,"$1,$2$4$3"))}function g(o){var q=e(o);q=parseInt(((arguments.length>1?arguments[1]:new Date).getTime()-q)/1E3);var x="";return x=q<60?q+" seconds ago":q<120?"1 minute ago":q<2700?parseInt(q/60,10).toString()+" minutes ago":q<7200?"1 hour ago":q<86400?""+parseInt(q/3600,10).toString()+" hours ago":q<172800?"1 day ago":parseInt(q/86400,10).toString()+" days ago"}function h(){var o=
"https:"==document.location.protocol?"https:":"http:";if(k.list)return o+"//"+k.twitter_api_url+"/1/"+k.username[0]+"/lists/"+k.list+"/statuses.json?per_page="+k.count+"&callback=?";else if(k.query==null&&k.username.length==1)return o+"//"+k.twitter_api_url+"/1/statuses/user_timeline.json?screen_name="+k.username[0]+"&count="+k.count+"&include_rts=1&callback=?";else{var q=k.query||"from:"+k.username.join(" OR from:");return o+"//"+k.twitter_search_url+"/search.json?&q="+encodeURIComponent(q)+"&rpp="+
k.count+"&callback=?"}}var k={username:["twitter"],list:null,avatar_size:32,count:4,intro_text:null,outro_text:null,join_text:null,loading_text:"Loading Twitter feed...",auto_join_text_default:"i said,",auto_join_text_ed:"i",auto_join_text_ing:"i am",auto_join_text_reply:"i replied to",auto_join_text_url:"i was looking at",loading_text:null,query:null,refresh_interval:null,twitter_url:"twitter.com",twitter_api_url:"api.twitter.com",twitter_search_url:"search.twitter.com"};d&&b.extend(k,d);b.fn.extend({linkUrl:function(){var o=
[],q=/((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/gi;this.each(function(){o.push(this.replace(q,'<a href="$1">$1</a>'))});return b(o)},linkUser:function(){var o=[],q=/[\@]+([A-Za-z0-9-_]+)/gi;this.each(function(){o.push(this.replace(q,'<a href="http://'+k.twitter_url+'/$1">@$1</a>'))});return b(o)},linkHash:function(){var o=[],q=/(?:^| )[\#]+([A-Za-z0-9-_]+)/gi;this.each(function(){o.push(this.replace(q,' <a href="http://'+k.twitter_search_url+"/search?q=&tag=$1&lang=all&from="+
k.username.join("%2BOR%2B")+'">#$1</a>'))});return b(o)},capAwesome:function(){var o=[];this.each(function(){o.push(this.replace(/\b(awesome)\b/gi,'<span class="awesome">$1</span>'))});return b(o)},capEpic:function(){var o=[];this.each(function(){o.push(this.replace(/\b(epic)\b/gi,'<span class="epic">$1</span>'))});return b(o)},makeHeart:function(){var o=[];this.each(function(){o.push(this.replace(/(&lt;)+[3]/gi,"<tt class='heart'>&#x2665;</tt>"))});return b(o)}});return this.each(function(o,q){var x=
b('<ul class="tweet_list">').appendTo(q),A='<p class="tweet_intro">'+k.intro_text+"</p>",E='<p class="tweet_outro">'+k.outro_text+"</p>",H=b('<p class="loading">'+k.loading_text+"</p>");if(typeof k.username=="string")k.username=[k.username];k.loading_text&&b(q).append(H);b(q).bind("load",function(){b.getJSON(h(),function(j){k.loading_text&&H.remove();k.intro_text&&x.before(A);x.empty();j=j.results||j;b.each(j,function(N,O){var T=k.join_text=="auto"?O.text.match(/^(@([A-Za-z0-9-_]+)) .*/i)?k.auto_join_text_reply:
O.text.match(/(^\w+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+) .*/i)?k.auto_join_text_url:O.text.match(/^((\w+ed)|just) .*/im)?k.auto_join_text_ed:O.text.match(/^(\w*ing) .*/i)?k.auto_join_text_ing:k.auto_join_text_default:k.join_text;N=O.from_user||O.user.screen_name;T='<span class="tweet_join"> '+T+" </span>";T=k.join_text?T:" ";var V='<a class="tweet_avatar" href="http://'+k.twitter_url+"/"+N+'"><img src="'+(O.profile_image_url||O.user.profile_image_url)+'" height="'+k.avatar_size+'" width="'+
k.avatar_size+'" alt="'+N+'\'s avatar" title="'+N+'\'s avatar" border="0"/></a>';V=k.avatar_size?V:"";N='<span class="tweet_time"><a href="http://'+k.twitter_url+"/"+N+"/statuses/"+O.id_str+'" title="view tweet on twitter">'+g(O.created_at)+"</a></span>";O='<span class="tweet_text">'+b([O.text]).linkUrl().linkUser().linkHash().makeHeart().capAwesome().capEpic()[0]+"</span>";x.append("<li>"+V+N+T+O+"</li>");x.children("li:first").addClass("tweet_first");x.children("li:odd").addClass("tweet_even");
x.children("li:even").addClass("tweet_odd")});k.outro_text&&x.after(E);b(q).trigger("loaded").trigger(j.length==0?"empty":"full");k.refresh_interval&&window.setTimeout(function(){b(q).trigger("load")},1E3*k.refresh_interval)})}).trigger("load")})}})(jQuery);goog.json={};goog.json.isValid_=function(b){if(/^\s*$/.test(b))return false;return/^[\],:{}\s\u2028\u2029]*$/.test(b.replace(/\\["\\\/bfnrtu]/g,"@").replace(/"[^"\\\n\r\u2028\u2029\x00-\x08\x10-\x1f\x80-\x9f]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:[\s\u2028\u2029]*\[)+/g,""))};goog.json.parse=function(b){b=String(b);if(goog.json.isValid_(b))try{return eval("("+b+")")}catch(d){}throw Error("Invalid JSON string: "+b);};
goog.json.unsafeParse=function(b){return eval("("+b+")")};goog.json.serialize=function(b){return(new goog.json.Serializer).serialize(b)};goog.json.Serializer=function(){};goog.json.Serializer.prototype.serialize=function(b){var d=[];this.serialize_(b,d);return d.join("")};
goog.json.Serializer.prototype.serialize_=function(b,d){switch(typeof b){case "string":this.serializeString_(b,d);break;case "number":this.serializeNumber_(b,d);break;case "boolean":d.push(b);break;case "undefined":d.push("null");break;case "object":if(b==null){d.push("null");break}if(goog.isArray(b)){this.serializeArray_(b,d);break}this.serializeObject_(b,d);break;case "function":break;default:throw Error("Unknown type: "+typeof b);}};
goog.json.Serializer.charToJsonCharCache_={'"':'\\"',"\\":"\\\\","/":"\\/","\u0008":"\\b","\u000c":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\u000b":"\\u000b"};goog.json.Serializer.charsToReplace_=/\uffff/.test("\uffff")?/[\\\"\x00-\x1f\x7f-\uffff]/g:/[\\\"\x00-\x1f\x7f-\xff]/g;
goog.json.Serializer.prototype.serializeString_=function(b,d){d.push('"',b.replace(goog.json.Serializer.charsToReplace_,function(e){if(e in goog.json.Serializer.charToJsonCharCache_)return goog.json.Serializer.charToJsonCharCache_[e];var g=e.charCodeAt(0),h="\\u";if(g<16)h+="000";else if(g<256)h+="00";else if(g<4096)h+="0";return goog.json.Serializer.charToJsonCharCache_[e]=h+g.toString(16)}),'"')};goog.json.Serializer.prototype.serializeNumber_=function(b,d){d.push(isFinite(b)&&!isNaN(b)?b:"null")};
goog.json.Serializer.prototype.serializeArray_=function(b,d){var e=b.length;d.push("[");for(var g="",h=0;h<e;h++){d.push(g);this.serialize_(b[h],d);g=","}d.push("]")};goog.json.Serializer.prototype.serializeObject_=function(b,d){d.push("{");var e="";for(var g in b)if(b.hasOwnProperty(g)){var h=b[g];if(typeof h!="function"){d.push(e);this.serializeString_(g,d);d.push(":");this.serialize_(h,d);e=","}}d.push("}")};goog.structs.Set=function(b){this.map_=new goog.structs.Map;b&&this.addAll(b)};goog.structs.Set.getKey_=function(b){var d=typeof b;return d=="object"&&b||d=="function"?"o"+goog.getUid(b):d.substr(0,1)+b};a=goog.structs.Set.prototype;a.getCount=function(){return this.map_.getCount()};a.add=function(b){this.map_.set(goog.structs.Set.getKey_(b),b)};a.addAll=function(b){b=goog.structs.getValues(b);for(var d=b.length,e=0;e<d;e++)this.add(b[e])};
a.removeAll=function(b){b=goog.structs.getValues(b);for(var d=b.length,e=0;e<d;e++)this.remove(b[e])};a.remove=function(b){return this.map_.remove(goog.structs.Set.getKey_(b))};a.clear=function(){this.map_.clear()};a.isEmpty=function(){return this.map_.isEmpty()};a.contains=function(b){return this.map_.containsKey(goog.structs.Set.getKey_(b))};a.containsAll=function(b){return goog.structs.every(b,this.contains,this)};
a.intersection=function(b){var d=new goog.structs.Set;b=goog.structs.getValues(b);for(var e=0;e<b.length;e++){var g=b[e];this.contains(g)&&d.add(g)}return d};a.getValues=function(){return this.map_.getValues()};a.clone=function(){return new goog.structs.Set(this)};a.equals=function(b){return this.getCount()==goog.structs.getCount(b)&&this.isSubsetOf(b)};
a.isSubsetOf=function(b){var d=goog.structs.getCount(b);if(this.getCount()>d)return false;if(!(b instanceof goog.structs.Set)&&d>5)b=new goog.structs.Set(b);return goog.structs.every(this,function(e){return goog.structs.contains(b,e)})};a.__iterator__=function(){return this.map_.__iterator__(false)};goog.debug.catchErrors=function(b,d,e){e=e||goog.global;var g=e.onerror;e.onerror=function(h,k,o){g&&g(h,k,o);k=String(k).split(/[\/\\]/).pop();b({message:h,fileName:k,line:o});return Boolean(d)}};goog.debug.expose=function(b,d){if(typeof b=="undefined")return"undefined";if(b==null)return"NULL";var e=[];for(var g in b)if(!(!d&&goog.isFunction(b[g]))){var h=g+" = ";try{h+=b[g]}catch(k){h+="*** "+k+" ***"}e.push(h)}return e.join("\n")};
goog.debug.deepExpose=function(b,d){var e=new goog.structs.Set,g=[],h=function(k,o){var q=o+"  ",x=function(H){return H.replace(/\n/g,"\n"+o)};try{if(goog.isDef(k))if(goog.isNull(k))g.push("NULL");else if(goog.isString(k))g.push('"'+x(k)+'"');else if(goog.isFunction(k))g.push(x(String(k)));else if(goog.isObject(k))if(e.contains(k))g.push("*** reference loop detected ***");else{e.add(k);g.push("{");for(var A in k)if(!(!d&&goog.isFunction(k[A]))){g.push("\n");g.push(q);g.push(A+" = ");h(k[A],q)}g.push("\n"+
o+"}")}else g.push(k);else g.push("undefined")}catch(E){g.push("*** "+E+" ***")}};h(b,"");return g.join("")};goog.debug.exposeArray=function(b){for(var d=[],e=0;e<b.length;e++)goog.isArray(b[e])?d.push(goog.debug.exposeArray(b[e])):d.push(b[e]);return"[ "+d.join(", ")+" ]"};
goog.debug.exposeException=function(b,d){try{var e=goog.debug.normalizeErrorObject(b);return"Message: "+goog.string.htmlEscape(e.message)+'\nUrl: <a href="view-source:'+e.fileName+'" target="_new">'+e.fileName+"</a>\nLine: "+e.lineNumber+"\n\nBrowser stack:\n"+goog.string.htmlEscape(e.stack+"-> ")+"[end]\n\nJS stack traversal:\n"+goog.string.htmlEscape(goog.debug.getStacktrace(d)+"-> ")}catch(g){return"Exception trying to expose exception! You win, we lose. "+g}};
goog.debug.normalizeErrorObject=function(b){var d=goog.getObjectByName("window.location.href");return typeof b=="string"?{message:b,name:"Unknown error",lineNumber:"Not available",fileName:d,stack:"Not available"}:!b.lineNumber||!b.fileName||!b.stack?{message:b.message,name:b.name,lineNumber:b.lineNumber||b.line||"Not available",fileName:b.fileName||b.filename||b.sourceURL||d,stack:b.stack||"Not available"}:b};
goog.debug.enhanceError=function(b,d){var e=typeof b=="string"?Error(b):b;if(!e.stack)e.stack=goog.debug.getStacktrace(arguments.callee.caller);if(d){for(var g=0;e["message"+g];)++g;e["message"+g]=String(d)}return e};
goog.debug.getStacktraceSimple=function(b){for(var d=[],e=arguments.callee.caller,g=0;e&&(!b||g<b);){d.push(goog.debug.getFunctionName(e));d.push("()\n");try{e=e.caller}catch(h){d.push("[exception trying to get caller]\n");break}g++;if(g>=goog.debug.MAX_STACK_DEPTH){d.push("[...long stack...]");break}}b&&g>=b?d.push("[...reached max depth limit...]"):d.push("[end]");return d.join("")};goog.debug.MAX_STACK_DEPTH=50;
goog.debug.getStacktrace=function(b){return goog.debug.getStacktraceHelper_(b||arguments.callee.caller,[])};
goog.debug.getStacktraceHelper_=function(b,d){var e=[];if(goog.array.contains(d,b))e.push("[...circular reference...]");else if(b&&d.length<goog.debug.MAX_STACK_DEPTH){e.push(goog.debug.getFunctionName(b)+"(");for(var g=b.arguments,h=0;h<g.length;h++){h>0&&e.push(", ");var k;k=g[h];switch(typeof k){case "object":k=k?"object":"null";break;case "string":k=k;break;case "number":k=String(k);break;case "boolean":k=k?"true":"false";break;case "function":k=(k=goog.debug.getFunctionName(k))?k:"[fn]";break;
case "undefined":default:k=typeof k;break}if(k.length>40)k=k.substr(0,40)+"...";e.push(k)}d.push(b);e.push(")\n");try{e.push(goog.debug.getStacktraceHelper_(b.caller,d))}catch(o){e.push("[exception trying to get caller]\n")}}else b?e.push("[...long stack...]"):e.push("[end]");return e.join("")};goog.debug.getFunctionName=function(b){b=String(b);if(!goog.debug.fnNameCache_[b]){var d=/function ([^\(]+)/.exec(b);goog.debug.fnNameCache_[b]=d?d[1]:"[Anonymous]"}return goog.debug.fnNameCache_[b]};
goog.debug.makeWhitespaceVisible=function(b){return b.replace(/ /g,"[_]").replace(/\f/g,"[f]").replace(/\n/g,"[n]\n").replace(/\r/g,"[r]").replace(/\t/g,"[t]")};goog.debug.fnNameCache_={};goog.debug.LogRecord=function(b,d,e,g,h){this.sequenceNumber_=typeof h=="number"?h:goog.debug.LogRecord.nextSequenceNumber_++;this.time_=g||goog.now();this.level_=b;this.msg_=d;this.loggerName_=e};goog.debug.LogRecord.prototype.exception_=null;goog.debug.LogRecord.prototype.exceptionText_=null;goog.debug.LogRecord.nextSequenceNumber_=0;a=goog.debug.LogRecord.prototype;a.getLoggerName=function(){return this.loggerName_};a.getException=function(){return this.exception_};
a.setException=function(b){this.exception_=b};a.getExceptionText=function(){return this.exceptionText_};a.setExceptionText=function(b){this.exceptionText_=b};a.setLoggerName=function(b){this.loggerName_=b};a.getLevel=function(){return this.level_};a.setLevel=function(b){this.level_=b};a.getMessage=function(){return this.msg_};a.setMessage=function(b){this.msg_=b};a.getMillis=function(){return this.time_};a.setMillis=function(b){this.time_=b};a.getSequenceNumber=function(){return this.sequenceNumber_};goog.debug.Logger=function(b){this.name_=b;this.parent_=null;this.children_={};this.handlers_=[]};goog.debug.Logger.prototype.level_=null;goog.debug.Logger.Level=function(b,d){this.name=b;this.value=d};goog.debug.Logger.Level.prototype.toString=function(){return this.name};goog.debug.Logger.Level.OFF=new goog.debug.Logger.Level("OFF",Infinity);goog.debug.Logger.Level.SHOUT=new goog.debug.Logger.Level("SHOUT",1200);goog.debug.Logger.Level.SEVERE=new goog.debug.Logger.Level("SEVERE",1E3);
goog.debug.Logger.Level.WARNING=new goog.debug.Logger.Level("WARNING",900);goog.debug.Logger.Level.INFO=new goog.debug.Logger.Level("INFO",800);goog.debug.Logger.Level.CONFIG=new goog.debug.Logger.Level("CONFIG",700);goog.debug.Logger.Level.FINE=new goog.debug.Logger.Level("FINE",500);goog.debug.Logger.Level.FINER=new goog.debug.Logger.Level("FINER",400);goog.debug.Logger.Level.FINEST=new goog.debug.Logger.Level("FINEST",300);goog.debug.Logger.Level.ALL=new goog.debug.Logger.Level("ALL",0);
goog.debug.Logger.Level.PREDEFINED_LEVELS=[goog.debug.Logger.Level.OFF,goog.debug.Logger.Level.SHOUT,goog.debug.Logger.Level.SEVERE,goog.debug.Logger.Level.WARNING,goog.debug.Logger.Level.INFO,goog.debug.Logger.Level.CONFIG,goog.debug.Logger.Level.FINE,goog.debug.Logger.Level.FINER,goog.debug.Logger.Level.FINEST,goog.debug.Logger.Level.ALL];goog.debug.Logger.Level.predefinedLevelsCache_=null;
goog.debug.Logger.Level.createPredefinedLevelsCache_=function(){goog.debug.Logger.Level.predefinedLevelsCache_={};for(var b=0,d;d=goog.debug.Logger.Level.PREDEFINED_LEVELS[b];b++){goog.debug.Logger.Level.predefinedLevelsCache_[d.value]=d;goog.debug.Logger.Level.predefinedLevelsCache_[d.name]=d}};
goog.debug.Logger.Level.getPredefinedLevel=function(b){goog.debug.Logger.Level.predefinedLevelsCache_||goog.debug.Logger.Level.createPredefinedLevelsCache_();return goog.debug.Logger.Level.predefinedLevelsCache_[b]||null};
goog.debug.Logger.Level.getPredefinedLevelByValue=function(b){goog.debug.Logger.Level.predefinedLevelsCache_||goog.debug.Logger.Level.createPredefinedLevelsCache_();if(b in goog.debug.Logger.Level.predefinedLevelsCache_)return goog.debug.Logger.Level.predefinedLevelsCache_[b];for(var d=0;d<goog.debug.Logger.Level.PREDEFINED_LEVELS.length;++d){var e=goog.debug.Logger.Level.PREDEFINED_LEVELS[d];if(e.value<=b)return e}return null};goog.debug.Logger.getLogger=function(b){return goog.debug.LogManager.getLogger(b)};
a=goog.debug.Logger.prototype;a.getName=function(){return this.name_};a.addHandler=function(b){this.handlers_.push(b)};a.removeHandler=function(b){return goog.array.remove(this.handlers_,b)};a.getParent=function(){return this.parent_};a.getChildren=function(){return this.children_};a.setLevel=function(b){this.level_=b};a.getLevel=function(){return this.level_};a.getEffectiveLevel=function(){if(this.level_)return this.level_;if(this.parent_)return this.parent_.getEffectiveLevel();return null};
a.isLoggable=function(b){if(this.level_)return b.value>=this.level_.value;if(this.parent_)return this.parent_.isLoggable(b);return false};a.log=function(b,d,e){this.isLoggable(b)&&this.logRecord(this.getLogRecord(b,d,e))};a.getLogRecord=function(b,d,e){var g=new goog.debug.LogRecord(b,String(d),this.name_);if(e){g.setException(e);g.setExceptionText(goog.debug.exposeException(e,arguments.callee.caller))}return g};a.shout=function(b,d){this.log(goog.debug.Logger.Level.SHOUT,b,d)};
a.severe=function(b,d){this.log(goog.debug.Logger.Level.SEVERE,b,d)};a.warning=function(b,d){this.log(goog.debug.Logger.Level.WARNING,b,d)};a.info=function(b,d){this.log(goog.debug.Logger.Level.INFO,b,d)};a.config=function(b,d){this.log(goog.debug.Logger.Level.CONFIG,b,d)};a.fine=function(b,d){this.log(goog.debug.Logger.Level.FINE,b,d)};a.finer=function(b,d){this.log(goog.debug.Logger.Level.FINER,b,d)};a.finest=function(b,d){this.log(goog.debug.Logger.Level.FINEST,b,d)};
a.logRecord=function(b){if(this.isLoggable(b.getLevel()))for(var d=this;d;){d.callPublish_(b);d=d.getParent()}};a.callPublish_=function(b){for(var d=0;d<this.handlers_.length;d++)this.handlers_[d](b)};a.setParent_=function(b){this.parent_=b};a.addChild_=function(b,d){this.children_[b]=d};goog.debug.LogManager={};goog.debug.LogManager.loggers_={};goog.debug.LogManager.rootLogger_=null;
goog.debug.LogManager.initialize=function(){if(!goog.debug.LogManager.rootLogger_){goog.debug.LogManager.rootLogger_=new goog.debug.Logger("");goog.debug.LogManager.loggers_[""]=goog.debug.LogManager.rootLogger_;goog.debug.LogManager.rootLogger_.setLevel(goog.debug.Logger.Level.CONFIG)}};goog.debug.LogManager.getLoggers=function(){return goog.debug.LogManager.loggers_};goog.debug.LogManager.getRoot=function(){goog.debug.LogManager.initialize();return goog.debug.LogManager.rootLogger_};
goog.debug.LogManager.getLogger=function(b){goog.debug.LogManager.initialize();return b in goog.debug.LogManager.loggers_?goog.debug.LogManager.loggers_[b]:goog.debug.LogManager.createLogger_(b)};goog.debug.LogManager.createFunctionForCatchErrors=function(b){return function(d){(b||goog.debug.LogManager.getRoot()).severe("Error: "+d.message+" ("+d.fileName+" @ Line: "+d.line+")")}};
goog.debug.LogManager.createLogger_=function(b){var d=new goog.debug.Logger(b),e=b.split("."),g=e[e.length-1];e.length-=1;e=e.join(".");e=goog.debug.LogManager.getLogger(e);e.addChild_(g,d);d.setParent_(e);return goog.debug.LogManager.loggers_[b]=d};goog.net={};goog.net.XhrMonitor_=function(){if(goog.userAgent.GECKO){this.contextsToXhr_={};this.xhrToContexts_={};this.stack_=[]}};goog.net.XhrMonitor_.getKey=function(b){return goog.isString(b)?b:goog.isObject(b)?goog.getUid(b):""};a=goog.net.XhrMonitor_.prototype;a.logger_=goog.debug.Logger.getLogger("goog.net.xhrMonitor");a.enabled_=goog.userAgent.GECKO;a.setEnabled=function(b){this.enabled_=goog.userAgent.GECKO&&b};
a.pushContext=function(b){if(this.enabled_){var d=goog.net.XhrMonitor_.getKey(b);this.logger_.finest("Pushing context: "+b+" ("+d+")");this.stack_.push(d)}};a.popContext=function(){if(this.enabled_){var b=this.stack_.pop();this.logger_.finest("Popping context: "+b);this.updateDependentContexts_(b)}};a.isContextSafe=function(b){if(!this.enabled_)return true;var d=this.contextsToXhr_[goog.net.XhrMonitor_.getKey(b)];this.logger_.fine("Context is safe : "+b+" - "+d);return!d};
a.markXhrOpen=function(b){if(this.enabled_){b=goog.getUid(b);this.logger_.fine("Opening XHR : "+b);for(var d=0;d<this.stack_.length;d++){var e=this.stack_[d];this.addToMap_(this.contextsToXhr_,e,b);this.addToMap_(this.xhrToContexts_,b,e)}}};a.markXhrClosed=function(b){if(this.enabled_){b=goog.getUid(b);this.logger_.fine("Closing XHR : "+b);delete this.xhrToContexts_[b];for(var d in this.contextsToXhr_){goog.array.remove(this.contextsToXhr_[d],b);this.contextsToXhr_[d].length==0&&delete this.contextsToXhr_[d]}}};
a.updateDependentContexts_=function(b){var d=this.xhrToContexts_[b],e=this.contextsToXhr_[b];if(d&&e){this.logger_.finest("Updating dependent contexts");goog.array.forEach(d,function(g){goog.array.forEach(e,function(h){this.addToMap_(this.contextsToXhr_,g,h);this.addToMap_(this.xhrToContexts_,h,g)},this)},this)}};a.addToMap_=function(b,d,e){b[d]||(b[d]=[]);goog.array.contains(b[d],e)||b[d].push(e)};goog.net.xhrMonitor=new goog.net.XhrMonitor_;goog.net.ErrorCode={NO_ERROR:0,ACCESS_DENIED:1,FILE_NOT_FOUND:2,FF_SILENT_ERROR:3,CUSTOM_ERROR:4,EXCEPTION:5,HTTP_ERROR:6,ABORT:7,TIMEOUT:8,OFFLINE:9};
goog.net.ErrorCode.getDebugMessage=function(b){switch(b){case goog.net.ErrorCode.NO_ERROR:return"No Error";case goog.net.ErrorCode.ACCESS_DENIED:return"Access denied to content document";case goog.net.ErrorCode.FILE_NOT_FOUND:return"File not found";case goog.net.ErrorCode.FF_SILENT_ERROR:return"Firefox silently errored";case goog.net.ErrorCode.CUSTOM_ERROR:return"Application custom error";case goog.net.ErrorCode.EXCEPTION:return"An exception occurred";case goog.net.ErrorCode.HTTP_ERROR:return"Http response at 400 or 500 level";
case goog.net.ErrorCode.ABORT:return"Request was aborted";case goog.net.ErrorCode.TIMEOUT:return"Request timed out";case goog.net.ErrorCode.OFFLINE:return"The resource is not available offline";default:return"Unrecognized error code"}};goog.net.XmlHttp=function(){return goog.net.XmlHttp.factory_()};goog.net.XmlHttp.getOptions=function(){return goog.net.XmlHttp.cachedOptions_||(goog.net.XmlHttp.cachedOptions_=goog.net.XmlHttp.optionsFactory_())};goog.net.XmlHttp.factory_=null;goog.net.XmlHttp.optionsFactory_=null;goog.net.XmlHttp.cachedOptions_=null;goog.net.XmlHttp.setFactory=function(b,d){goog.net.XmlHttp.factory_=b;goog.net.XmlHttp.optionsFactory_=d;goog.net.XmlHttp.cachedOptions_=null};
goog.net.XmlHttp.defaultFactory_=function(){var b=goog.net.XmlHttp.getProgId_();return b?new ActiveXObject(b):new XMLHttpRequest};goog.net.XmlHttp.defaultOptionsFactory_=function(){var b={};if(goog.net.XmlHttp.getProgId_()){b[goog.net.XmlHttp.OptionType.USE_NULL_FUNCTION]=true;b[goog.net.XmlHttp.OptionType.LOCAL_REQUEST_ERROR]=true}return b};goog.net.XmlHttp.setFactory(goog.net.XmlHttp.defaultFactory_,goog.net.XmlHttp.defaultOptionsFactory_);goog.net.XmlHttp.OptionType={USE_NULL_FUNCTION:0,LOCAL_REQUEST_ERROR:1};
goog.net.XmlHttp.ReadyState={UNINITIALIZED:0,LOADING:1,LOADED:2,INTERACTIVE:3,COMPLETE:4};goog.net.XmlHttp.ieProgId_=null;
goog.net.XmlHttp.getProgId_=function(){if(!goog.net.XmlHttp.ieProgId_&&typeof XMLHttpRequest=="undefined"&&typeof ActiveXObject!="undefined"){for(var b=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"],d=0;d<b.length;d++){var e=b[d];try{new ActiveXObject(e);return goog.net.XmlHttp.ieProgId_=e}catch(g){}}throw Error("Could not create ActiveXObject. ActiveX might be disabled, or MSXML might not be installed");}return goog.net.XmlHttp.ieProgId_};goog.net.EventType={COMPLETE:"complete",SUCCESS:"success",ERROR:"error",ABORT:"abort",READY:"ready",READY_STATE_CHANGE:"readystatechange",TIMEOUT:"timeout",INCREMENTAL_DATA:"incrementaldata",PROGRESS:"progress"};goog.net.XhrIo=function(){goog.events.EventTarget.call(this);this.headers=new goog.structs.Map};goog.inherits(goog.net.XhrIo,goog.events.EventTarget);goog.net.XhrIo.prototype.logger_=goog.debug.Logger.getLogger("goog.net.XhrIo");goog.net.XhrIo.CONTENT_TYPE_HEADER="Content-Type";goog.net.XhrIo.FORM_CONTENT_TYPE="application/x-www-form-urlencoded;charset=utf-8";goog.net.XhrIo.sendInstances_=[];
goog.net.XhrIo.send=function(b,d,e,g,h,k){var o=new goog.net.XhrIo;goog.net.XhrIo.sendInstances_.push(o);d&&goog.events.listen(o,goog.net.EventType.COMPLETE,d);goog.events.listen(o,goog.net.EventType.READY,goog.partial(goog.net.XhrIo.cleanupSend_,o));k&&o.setTimeoutInterval(k);o.send(b,e,g,h)};goog.net.XhrIo.cleanup=function(){for(var b=goog.net.XhrIo.sendInstances_;b.length;)b.pop().dispose()};
goog.net.XhrIo.protectEntryPoints=function(b,d){goog.net.XhrIo.prototype.onReadyStateChangeEntryPoint_=b.protectEntryPoint(goog.net.XhrIo.prototype.onReadyStateChangeEntryPoint_,d)};goog.net.XhrIo.cleanupSend_=function(b){b.dispose();goog.array.remove(goog.net.XhrIo.sendInstances_,b)};a=goog.net.XhrIo.prototype;a.active_=false;a.xhr_=null;a.xhrOptions_=null;a.lastUri_="";a.lastMethod_="";a.lastErrorCode_=goog.net.ErrorCode.NO_ERROR;a.lastError_="";a.errorDispatched_=false;a.inSend_=false;
a.inOpen_=false;a.inAbort_=false;a.timeoutInterval_=0;a.timeoutId_=null;a.getTimeoutInterval=function(){return this.timeoutInterval_};a.setTimeoutInterval=function(b){this.timeoutInterval_=Math.max(0,b)};
a.send=function(b,d,e,g){if(this.active_)throw Error("[goog.net.XhrIo] Object is active with another request");d=d||"GET";this.lastUri_=b;this.lastError_="";this.lastErrorCode_=goog.net.ErrorCode.NO_ERROR;this.lastMethod_=d;this.errorDispatched_=false;this.active_=true;this.xhr_=this.createXhr();this.xhrOptions_=goog.net.XmlHttp.getOptions();goog.net.xhrMonitor.markXhrOpen(this.xhr_);this.xhr_.onreadystatechange=goog.bind(this.onReadyStateChange_,this);try{this.logger_.fine(this.formatMsg_("Opening Xhr"));
this.inOpen_=true;this.xhr_.open(d,b,true);this.inOpen_=false}catch(h){this.logger_.fine(this.formatMsg_("Error opening Xhr: "+h.message));this.error_(goog.net.ErrorCode.EXCEPTION,h);return}b=e||"";var k=this.headers.clone();g&&goog.structs.forEach(g,function(q,x){k.set(x,q)});d=="POST"&&!k.containsKey(goog.net.XhrIo.CONTENT_TYPE_HEADER)&&k.set(goog.net.XhrIo.CONTENT_TYPE_HEADER,goog.net.XhrIo.FORM_CONTENT_TYPE);goog.structs.forEach(k,function(q,x){this.xhr_.setRequestHeader(x,q)},this);try{if(this.timeoutId_){goog.Timer.defaultTimerObject.clearTimeout(this.timeoutId_);
this.timeoutId_=null}if(this.timeoutInterval_>0){this.logger_.fine(this.formatMsg_("Will abort after "+this.timeoutInterval_+"ms if incomplete"));this.timeoutId_=goog.Timer.defaultTimerObject.setTimeout(goog.bind(this.timeout_,this),this.timeoutInterval_)}this.logger_.fine(this.formatMsg_("Sending request"));this.inSend_=true;this.xhr_.send(b);this.inSend_=false}catch(o){this.logger_.fine(this.formatMsg_("Send error: "+o.message));this.error_(goog.net.ErrorCode.EXCEPTION,o)}};a.createXhr=function(){return new goog.net.XmlHttp};
a.dispatchEvent=function(b){if(this.xhr_){goog.net.xhrMonitor.pushContext(this.xhr_);try{return goog.net.XhrIo.superClass_.dispatchEvent.call(this,b)}finally{goog.net.xhrMonitor.popContext()}}else return goog.net.XhrIo.superClass_.dispatchEvent.call(this,b)};
a.timeout_=function(){if(typeof goog!="undefined")if(this.xhr_){this.lastError_="Timed out after "+this.timeoutInterval_+"ms, aborting";this.lastErrorCode_=goog.net.ErrorCode.TIMEOUT;this.logger_.fine(this.formatMsg_(this.lastError_));this.dispatchEvent(goog.net.EventType.TIMEOUT);this.abort(goog.net.ErrorCode.TIMEOUT)}};a.error_=function(b,d){this.active_=false;if(this.xhr_){this.inAbort_=true;this.xhr_.abort();this.inAbort_=false}this.lastError_=d;this.lastErrorCode_=b;this.dispatchErrors_();this.cleanUpXhr_()};
a.dispatchErrors_=function(){if(!this.errorDispatched_){this.errorDispatched_=true;this.dispatchEvent(goog.net.EventType.COMPLETE);this.dispatchEvent(goog.net.EventType.ERROR)}};a.abort=function(b){if(this.xhr_){this.logger_.fine(this.formatMsg_("Aborting"));this.active_=false;this.inAbort_=true;this.xhr_.abort();this.inAbort_=false;this.lastErrorCode_=b||goog.net.ErrorCode.ABORT;this.dispatchEvent(goog.net.EventType.COMPLETE);this.dispatchEvent(goog.net.EventType.ABORT);this.cleanUpXhr_()}};
a.disposeInternal=function(){if(this.xhr_){if(this.active_){this.active_=false;this.inAbort_=true;this.xhr_.abort();this.inAbort_=false}this.cleanUpXhr_(true)}goog.net.XhrIo.superClass_.disposeInternal.call(this)};a.onReadyStateChange_=function(){!this.inOpen_&&!this.inSend_&&!this.inAbort_?this.onReadyStateChangeEntryPoint_():this.onReadyStateChangeHelper_()};a.onReadyStateChangeEntryPoint_=function(){this.onReadyStateChangeHelper_()};
a.onReadyStateChangeHelper_=function(){if(this.active_)if(typeof goog!="undefined")if(this.xhrOptions_[goog.net.XmlHttp.OptionType.LOCAL_REQUEST_ERROR]&&this.getReadyState()==goog.net.XmlHttp.ReadyState.COMPLETE&&this.getStatus()==2)this.logger_.fine(this.formatMsg_("Local request error detected and ignored"));else if(this.inSend_&&this.getReadyState()==goog.net.XmlHttp.ReadyState.COMPLETE)goog.Timer.defaultTimerObject.setTimeout(goog.bind(this.onReadyStateChange_,this),0);else{this.dispatchEvent(goog.net.EventType.READY_STATE_CHANGE);
if(this.isComplete()){this.logger_.fine(this.formatMsg_("Request complete"));this.active_=false;if(this.isSuccess()){this.dispatchEvent(goog.net.EventType.COMPLETE);this.dispatchEvent(goog.net.EventType.SUCCESS)}else{this.lastErrorCode_=goog.net.ErrorCode.HTTP_ERROR;this.lastError_=this.getStatusText()+" ["+this.getStatus()+"]";this.dispatchErrors_()}this.cleanUpXhr_()}}};
a.cleanUpXhr_=function(b){if(this.xhr_){var d=this.xhr_,e=this.xhrOptions_[goog.net.XmlHttp.OptionType.USE_NULL_FUNCTION]?goog.nullFunction:null;this.xhrOptions_=this.xhr_=null;if(this.timeoutId_){goog.Timer.defaultTimerObject.clearTimeout(this.timeoutId_);this.timeoutId_=null}if(!b){goog.net.xhrMonitor.pushContext(d);this.dispatchEvent(goog.net.EventType.READY);goog.net.xhrMonitor.popContext()}goog.net.xhrMonitor.markXhrClosed(d);try{d.onreadystatechange=e}catch(g){this.logger_.severe("Problem encountered resetting onreadystatechange: "+
g.message)}}};a.isActive=function(){return this.active_};a.isComplete=function(){return this.getReadyState()==goog.net.XmlHttp.ReadyState.COMPLETE};a.isSuccess=function(){switch(this.getStatus()){case 0:case 200:case 204:case 304:return true;default:return false}};a.getReadyState=function(){return this.xhr_?this.xhr_.readyState:goog.net.XmlHttp.ReadyState.UNINITIALIZED};
a.getStatus=function(){try{return this.getReadyState()>goog.net.XmlHttp.ReadyState.LOADED?this.xhr_.status:-1}catch(b){this.logger_.warning("Can not get status: "+b.message);return-1}};a.getStatusText=function(){try{return this.getReadyState()>goog.net.XmlHttp.ReadyState.LOADED?this.xhr_.statusText:""}catch(b){this.logger_.fine("Can not get status: "+b.message);return""}};a.getLastUri=function(){return String(this.lastUri_)};a.getResponseText=function(){return this.xhr_?this.xhr_.responseText:""};
a.getResponseXml=function(){return this.xhr_?this.xhr_.responseXML:null};a.getResponseJson=function(b){if(this.xhr_){var d=this.xhr_.responseText;if(b&&d.indexOf(b)==0)d=d.substring(b.length);return goog.json.parse(d)}};a.getResponseHeader=function(b){return this.xhr_&&this.isComplete()?this.xhr_.getResponseHeader(b):undefined};a.getLastErrorCode=function(){return this.lastErrorCode_};a.getLastError=function(){return goog.isString(this.lastError_)?this.lastError_:String(this.lastError_)};
a.formatMsg_=function(b){return b+" ["+this.lastMethod_+" "+this.lastUri_+" "+this.getStatus()+"]"};img="/media/img/control-";s={};s.ui={};var vindaloo={},testEvent;testHandler=function(b){testEvent=b;console.log(b.target.element_.childNodes[0].title)};vpsdo=function(b){b=b.target.getResponseJson();goog.dom.$("vps"+b[1]).innerHTML=b[0];goog.dom.$("title").innerHTML="Updating VMs...";goog.net.XhrIo.send("/members/json/",vpslist,"POST",goog.json.serialize({query:"vpslist"}))};handlers={};
handlers.menu=function(b){action=b.target.getCaption();vpsid=b.target.parent_.getParentEventTarget().element_.parentNode.parentNode.childNodes[1].id;goog.dom.$(vpsid).innerHTML="updating...";vpsid=vpsid.replace("vps","");goog.net.XhrIo.send("/members/json/",vpsdo,"POST",goog.json.serialize({query:"vpsdo",vps:vpsid,command:action}))};
handlers.start=function(b){vpsid=b.target.element_.parentNode.parentNode.childNodes[1].id;goog.dom.$(vpsid).innerHTML="updating...";vpsid=vpsid.replace("vps","");goog.net.XhrIo.send("/members/json/",vpsdo,"POST",goog.json.serialize({query:"vpsdo",vps:vpsid,command:"start"}))};handlers.details=function(){goog.dom.$$("span","title")[0].innerHTML="Updating VMs...";goog.net.XhrIo.send("/members/json/",vpslist,"POST",goog.json.serialize({query:"vpslist"}))};
handlers.pwdupdate=function(b){b=b.target.getResponseJson();alert(b)};handlers.chpasswd=function(b){btn=b.target.element_.parentNode;uid=btn.id.replace("_chpasswd","");pass=goog.dom.$(btn.id.replace("chpasswd","pass1")).value;goog.net.XhrIo.send("/members/json/",handlers.pwdupdate,"POST",goog.json.serialize({query:"change_password",userid:uid,password:pass}))};
handlers.cmppasswd=function(b){input=b.target;if(goog.array.peek(input.id)==1){match=input.value==goog.dom.$(input.id.replace("pass1","pass2")).value;chpass=goog.dom.$(input.id.replace("pass1","chpasswd"))}else{match=input.value==goog.dom.$(input.id.replace("pass2","pass1")).value;chpass=goog.dom.$(input.id.replace("pass2","chpasswd"))}chpass.innerHTML="";if(match){control={click:"chpasswd"};iconButton(img+"reboot.png","Update",chpass,control)}else iconButton(img+"reboot-disabled.png","Update",chpass)};
vpsRow=function(b){var d=goog.dom.$dom("div","listChunk"),e=goog.dom.$dom("span","title");e.innerHTML="<a onclick=\"$('#vps"+b.id+"slider').slideToggle('normal');\">"+b.name+"</a>";d.appendChild(e);e=goog.dom.$dom("span","status");e.innerHTML=b.status;e.id="vps"+b.id;d.appendChild(e);e=goog.dom.$dom("span","uptime");e.innerHTML=b.uptime;d.appendChild(e);d.appendChild(b.controls);return d};
iconButton=function(b,d,e,g){button=goog.dom.$dom("img",null);button.title=d;button.alt=d;button.src=b;if(g!=undefined)if(g.click!=undefined){c=new goog.ui.Control;c.render(e);c.addEventListener("action",handlers[g.click]);c.element_.appendChild(button)}else if(g.menu!=undefined){var h=new goog.ui.PopupMenu;goog.array.forEach(g.menu,function(k){h.addItem(new goog.ui.MenuItem(k))});h.render();c=new goog.ui.Control;c.render(e);c.addEventListener("action",handlers.menu);c.element_.appendChild(button);
h.attach(c.element_);h.setParentEventTarget(c)}else{button=goog.dom.$dom("a",null,button);button.href=g;button.target="_blank";b1=goog.dom.$dom("div","goog-control",button);e.appendChild(b1)}else{b1=goog.dom.$dom("div","goog-control",button);e.appendChild(b1)}};
vpsChunk=function(b){ctrls=goog.dom.$dom("span","controls");switch(b.status){case "running":parentBlock=goog.dom.$dom("li","online");b.status="Online";iconButton(img+"shell.png","Console",ctrls,b.consoleurl);iconButton(img+"shutdown.png","Power",ctrls,{menu:["stop","reset"]});iconButton(img+"reboot.png","Update",ctrls,{click:"details"});break;case "shutoff":parentBlock=goog.dom.$dom("li","offline");b.status="Offline";iconButton(img+"shell-disabled.png","Console",ctrls);iconButton(img+"shutdown.png",
"Power",ctrls,{click:"start"});iconButton(img+"reboot.png","Update",ctrls,{click:"details"});break;default:parentBlock=goog.dom.$dom("li","maint");b.status="Unavailable";iconButton(img+"shell-disabled.png","Console",ctrls);iconButton(img+"shutdown-disabled.png","Power",ctrls);iconButton(img+"reboot-disabled.png","Update",ctrls,{click:"details"})}b.controls=ctrls;parentBlock.appendChild(vpsRow(b));vpsDetails=goog.dom.$dom("div","listChunk slider");vpsDetails.id="vps"+b.id+"slider";vpsDetails.innerHTML=
b.details;parentBlock.appendChild(vpsDetails);goog.dom.$$("ul","controlList")[0].appendChild(parentBlock)};
vpslist=function(b){b=b.target.getResponseJson();controlList=goog.dom.$$("ul","controlList")[0];titleRow=goog.dom.$dom("li","outer");titleRow.innerHTML=goog.dom.$$("ul","controlList")[0].childNodes[0].innerHTML;controlList.innerHTML="";controlList.appendChild(titleRow);goog.array.forEach(b,vpsChunk);goog.array.forEach(goog.dom.$("title").parentNode.childNodes,function(d){goog.style.setOpacity(d,1)});goog.dom.$("title").innerHTML="VM Name"};
switchChunk=function(b){name=b.target.innerHTML;goog.array.forEach(goog.dom.$$("div","switcher")[0].childNodes[0].childNodes,function(d){d.className=null});goog.array.forEach(goog.dom.$$("div","switchChunk"),function(d){goog.style.showElement(d,false)});goog.style.showElement(goog.dom.$(name),true);b.target.className="selected"};
decorate=function(){goog.array.forEach(goog.dom.$$("div","switcher")[0].childNodes[0].childNodes,function(b){goog.events.listen(b,"mouseup",switchChunk)});switchChunk({target:goog.dom.$$("div","switcher")[0].childNodes[0].childNodes[0]});goog.array.forEach(goog.dom.$$("input","chpasswd"),function(b){inputhandler=new goog.events.InputHandler(b);goog.events.listen(inputhandler,goog.events.InputHandler.EventType.INPUT,handlers.cmppasswd)})};
vindaloo.onload=function(){decorate();goog.array.forEach(goog.dom.$("title").parentNode.childNodes,function(b){goog.style.setOpacity(b,0.3)});goog.style.setOpacity(goog.dom.$("title"),1);goog.dom.$("title").innerHTML="Loading VMs...";goog.net.XhrIo.send("/members/json/",vpslist,"POST",goog.json.serialize({query:"vpslist"}))};inMs=function(b){return b*1E3};tunnelUpdate=function(b){b=b.target.getResponseJson();console.log(goog.json.serialize(b))};
tunnelPoll=function(){vpsname=goog.dom.$("vps").innerHTML;pid=goog.dom.$("pid").innerHTML;goog.net.XhrIo.send("/members/json/",tunnelUpdate,"POST",goog.json.serialize({query:"keepalive",vps:vpsname,pid:pid}))};vindaloo.vpsvnc=function(){timer=new goog.Timer(inMs(10));timer.start();goog.events.listen(timer,goog.Timer.TICK,tunnelPoll)};

