<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="en"><head><meta content="Search the world's information, including webpages, images, videos and more. Google has many special features to help you find exactly what you're looking for." name="description"><meta content="noodp" name="robots"><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"><title>Google</title><script>(function(){window.google={kEI:'tNGAVvP2GImwmQH4voX4Dw',kEXPI:'18168,1350255,3700330,4014789,4028790,4029815,4031109,4032677,4033307,4033344,4036527,4038012,4039268,4040319,4041816,4042490,4042786,4042794,4043492,4044606,4044954,4045841,4046304,4046399,4047780,4048854,4048882,4049896,4050157,4050891,4051154,4051282,4051823,4051836,4053148,4054345,4054359,4054513,4054808,4054904,4055278,4055292,4055353,4055390,4055495,4055996,4056038,4056127,4056250,4056438,4056523,4056723,4057139,4057169,4057185,8300096,8300273,8300290,8300313,8502095,8502119,8502315,8502452,8502551,8502691,8502825,8502888,10200084,10201573,10201587',authuser:0,kscs:'c9c918f0_24'};google.kHL='en';})();(function(){google.lc=[];google.li=0;google.getEI=function(a){for(var b;a&&(!a.getAttribute||!(b=a.getAttribute("eid")));)a=a.parentNode;return b||google.kEI};google.getLEI=function(a){for(var b=null;a&&(!a.getAttribute||!(b=a.getAttribute("leid")));)a=a.parentNode;return b};google.https=function(){return"https:"==window.location.protocol};google.ml=function(){return null};google.wl=function(a,b){try{google.ml(Error(a),!1,b)}catch(d){}};google.time=function(){return(new Date).getTime()};google.log=function(a,b,d,e,g){a=google.logUrl(a,b,d,e,g);if(""!=a){b=new Image;var c=google.lc,f=google.li;c[f]=b;b.onerror=b.onload=b.onabort=function(){delete c[f]};window.google&&window.google.vel&&window.google.vel.lu&&window.google.vel.lu(a);b.src=a;google.li=f+1}};google.logUrl=function(a,b,d,e,g){var c="",f=google.ls||"";if(!d&&-1==b.search("&ei=")){var h=google.getEI(e),c="&ei="+h;-1==b.search("&lei=")&&((e=google.getLEI(e))?c+="&lei="+e:h!=google.kEI&&(c+="&lei="+google.kEI))}a=d||"/"+(g||"gen_204")+"?atyp=i&ct="+a+"&cad="+b+c+f+"&zx="+google.time();/^http:/i.test(a)&&google.https()&&(google.ml(Error("a"),!1,{src:a,glmm:1}),a="");return a};google.y={};google.x=function(a,b){google.y[a.id]=[a,b];return!1};google.load=function(a,b,d){google.x({id:a+k++},function(){google.load(a,b,d)})};var k=0;})();var _gjwl=location;function _gjuc(){var a=_gjwl.href.indexOf("#");if(0<=a&&(a=_gjwl.href.substring(a),0<a.indexOf("&q=")||0<=a.indexOf("#q="))&&(a=a.substring(1),-1==a.indexOf("#"))){for(var d=0;d<a.length;){var b=d;"&"==a.charAt(b)&&++b;var c=a.indexOf("&",b);-1==c&&(c=a.length);b=a.substring(b,c);if(0==b.indexOf("fp="))a=a.substring(0,d)+a.substring(c,a.length),c=d;else if("cad=h"==b)return 0;d=c}_gjwl.href="/search?"+a+"&cad=h";return 1}return 0} function _gjh(){!_gjuc()&&window.google&&google.x&&google.x({id:"GJH"},function(){google.nav&&google.nav.gjh&&google.nav.gjh()})};window._gjh&&_gjh();</script><style>#gbar,#guser{font-size:13px;padding-top:1px !important;}#gbar{height:22px}#guser{padding-bottom:7px !important;text-align:right}.gbh,.gbd{border-top:1px solid #c9d7f1;font-size:1px}.gbh{height:0;position:absolute;top:24px;width:100%}@media all{.gb1{height:22px;margin-right:.5em;vertical-align:top}#gbar{float:left}}a.gb1,a.gb4{text-decoration:underline !important}a.gb1,a.gb4{color:#00c !important}.gbi .gb4{color:#dd8e27 !important}.gbf .gb4{color:#900 !important} </style><style>body,td,a,p,.h{font-family:arial,sans-serif}body{margin:0;overflow-y:scroll}#gog{padding:3px 8px 0}td{line-height:.8em}.gac_m td{line-height:17px}form{margin-bottom:20px}.h{color:#36c}.q{color:#00c}.ts td{padding:0}.ts{border-collapse:collapse}em{font-weight:bold;font-style:normal}.lst{height:25px;width:496px}.gsfi,.lst{font:18px arial,sans-serif}.gsfs{font:17px arial,sans-serif}.ds{display:inline-box;display:inline-block;margin:3px 0 4px;margin-left:4px}input{font-family:inherit}a.gb1,a.gb2,a.gb3,a.gb4{color:#11c !important}body{background:#fff;color:black}a{color:#11c;text-decoration:none}a:hover,a:active{text-decoration:underline}.fl a{color:#36c}a:visited{color:#551a8b}a.gb1,a.gb4{text-decoration:underline}a.gb3:hover{text-decoration:none}#ghead a.gb2:hover{color:#fff !important}.sblc{padding-top:5px}.sblc a{display:block;margin:2px 0;margin-left:13px;font-size:11px}.lsbb{background:#eee;border:solid 1px;border-color:#ccc #999 #999 #ccc;height:30px}.lsbb{display:block}.ftl,#fll a{display:inline-block;margin:0 12px}.lsb{background:url(/images/nav_logo229.png) 0 -261px repeat-x;border:none;color:#000;cursor:pointer;height:30px;margin:0;outline:0;font:15px arial,sans-serif;vertical-align:top}.lsb:active{background:#ccc}.lst:focus{outline:none}</style><script></script><link href="/images/branding/product/ico/googleg_lodp.ico" rel="shortcut icon"></head><body bgcolor="#fff"><script>(function(){var src='/images/nav_logo229.png';var iesg=false;document.body.onload = function(){window.n && window.n();if (document.images){new Image().src=src;} if (!iesg){document.f&&document.f.q.focus();document.gbqf&&document.gbqf.q.focus();} } })();</script><div id="mngb"> <div id=gbar><nobr><b class=gb1>Search</b> <a class=gb1 href="http://www.google.com/imghp?hl=en&tab=wi">Images</a> <a class=gb1 href="http://maps.google.com/maps?hl=en&tab=wl">Maps</a> <a class=gb1 href="https://play.google.com/?hl=en&tab=w8">Play</a> <a class=gb1 href="http://www.youtube.com/?tab=w1">YouTube</a> <a class=gb1 href="http://news.google.com/nwshp?hl=en&tab=wn">News</a> <a class=gb1 href="https://mail.google.com/mail/?tab=wm">Gmail</a> <a class=gb1 href="https://drive.google.com/?tab=wo">Drive</a> <a class=gb1 style="text-decoration:none" href="https://www.google.com/intl/en/options/"><u>More</u> »</a></nobr></div><div id=guser width=100%><nobr><span id=gbn class=gbi></span><span id=gbf class=gbf></span><span id=gbe></span><a href="http://www.google.com/history/optout?hl=en" class=gb4>Web History</a> | <a href="/preferences?hl=en" class=gb4>Settings</a> | <a target=_top id=gb_70 href="https://accounts.google.com/ServiceLogin?hl=en&passive=true&continue=http://www.google.com/" class=gb4>Sign in</a></nobr></div><div class=gbh style=left:0></div><div class=gbh style=right:0></div> </div><center><span id="prt" style="display:block"> <div><style>.pmoabs{background-color:#fff;border:1px solid #E5E5E5;color:#666;font-size:13px;padding-bottom:20px;position:absolute;right:2px;top:3px;z-index:986}#pmolnk{border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px}.kd-button-submit{border:1px solid #3079ed;background-color:#4d90fe;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#4787ed));background-image:-webkit-linear-gradient(top,#4d90fe,#4787ed);background-image:-moz-linear-gradient(top,#4d90fe,#4787ed);background-image:-ms-linear-gradient(top,#4d90fe,#4787ed);background-image:-o-linear-gradient(top,#4d90fe,#4787ed);background-image:linear-gradient(top,#4d90fe,#4787ed);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#4d90fe',EndColorStr='#4787ed')}.kd-button-submit:hover{border:1px solid #2f5bb7;background-color:#357ae8;background-image:-webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#357ae8));background-image:-webkit-linear-gradient(top,#4d90fe,#357ae8);background-image:-moz-linear-gradient(top,#4d90fe,#357ae8);background-image:-ms-linear-gradient(top,#4d90fe,#357ae8);background-image:-o-linear-gradient(top,#4d90fe,#357ae8);background-image:linear-gradient(top,#4d90fe,#357ae8);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#4d90fe',EndColorStr='#357ae8')}.kd-button-submit:active{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.3);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.3);box-shadow:inset 0 1px 2px rgba(0,0,0,0.3)}#pmolnk a{color:#fff;display:inline-block;font-weight:bold;padding:5px 20px;text-decoration:none;white-space:nowrap}.xbtn{color:#999;cursor:pointer;font-size:23px;line-height:5px;padding-top:5px}.padi{padding:0 8px 0 10px}.padt{padding:5px 20px 0 0;color:#444}.pads{text-align:left;max-width:200px}</style> <div class="pmoabs" id="pmocntr2" style="behavior:url(#default#userdata);display:none"> <table border="0"> <tr> <td colspan="2"> <div class="xbtn" onclick="google.promos&&google.promos.toast&& google.promos.toast.cpc()" style="float:right">×</div> </td> </tr> <tr> <td class="padi" rowspan="2"> <img src="/images/icons/product/chrome-48.png"> </td> <td class="pads">A better way to browse the web</td> </tr> <tr> <td class="padt"> <div class="kd-button-submit" id="pmolnk"> <a href="/chrome/browser/?hl=en&brand=CHNG&utm_source=en-hpp&utm_medium=hpp&utm_campaign=en" onclick="google.promos&&google.promos.toast&& google.promos.toast.cl()">Get Google Chrome</a> </div> </td> </tr> </table> </div> <script type="text/javascript">(function(){var a={v:{}};a.v.Ya=50;a.v.Wa=10;a.v.Fa="body";a.v.Fb=!0;a.v.Ib=function(b,c){var d=a.v.tb();a.v.vb(d,b,c);a.v.Jb(d);a.v.Fb&&a.v.Gb(d)};a.v.Jb=function(b){(b=a.v.Ha(b))&&0<b.forms.length&&b.forms[0].submit()};a.v.tb=function(){var b=document.createElement("iframe");b.height=0;b.width=0;b.style.overflow="hidden";b.style.top=b.style.left="-100px";b.style.position="absolute";document.body.appendChild(b);return b};a.v.Ha=function(b){return b.contentDocument||b.contentWindow.document};a.v.vb=function(b,c,d){b=a.v.Ha(b);b.open();d=["<",a.v.Fa,'><form method=POST action="',d,'">'];for(var e in c)c.hasOwnProperty(e)&&d.push('<textarea name="',e,'">',c[e],"</textarea>");d.push("</form></",a.v.Fa,">");b.write(d.join(""));b.close()};a.v.Ja=function(b,c){c>a.v.Wa?google&&google.ml&&google.ml(Error("ogcdr"),!1,{cause:"timeout"}):b.contentWindow?a.v.Hb(b):window.setTimeout(function(){a.v.Ja(b,c+1)},a.v.Ya)};a.v.Hb=function(b){document.body.removeChild(b)};a.v.Gb=function(b){a.v.qb(b,"load",function(){a.v.Ja(b,0)})};a.v.qb=function(b,c,d){b.addEventListener?b.addEventListener(c,d,!1):b.attachEvent&&b.attachEvent("on"+c,d)};var m={Mb:0,U:1,V:2,na:5};a.s={};a.s.pa={Sa:"i",ma:"d",Ua:"l"};a.s.R={qa:"0",W:"1"};a.s.ra={oa:1,ma:2,ka:3};a.s.O={Ma:"a",Qa:"g",T:"c",mb:"u",lb:"t",qa:"p",Xa:"pid",Oa:"eid",nb:"at"};a.s.Ta=window.location.protocol+"//www.google.com/_/og/promos/";a.s.Pa="g";a.s.ob="z";a.s.ya=function(b,c,d,e){var f=null;switch(c){case m.U:f=window.gbar.up.gpd(b,d,!0);break;case m.na:f=window.gbar.up.gcc(e)}return null==f?0:parseInt(f,10)};a.s.Bb=function(b,c,d){return c==m.U?null!=window.gbar.up.gpd(b,d,!0):!1};a.s.ta=function(b,c,d,e,f,h,k,l){var g={};g[a.s.O.qa]=b;g[a.s.O.Qa]=c;g[a.s.O.Ma]=d;g[a.s.O.nb]=e;g[a.s.O.Oa]=f;g[a.s.O.Xa]=1;k&&(g[a.s.O.T]=k);l&&(g[a.s.O.mb]=l);if(h)g[a.s.O.lb]=h;else return google.ml(Error("knu"),!1,{cause:"Token is not found"}),null;return g};a.s.Ca=function(b,c,d){if(b){var e=c?a.s.Pa:a.s.ob;c&&d&&(e+="?authuser="+d);a.v.Ib(b,a.s.Ta+e)}};a.s.ub=function(b,c,d,e,f,h,k){b=a.s.ta(c,b,a.s.pa.ma,a.s.ra.ma,d,f,null,e);a.s.Ca(b,h,k)};a.s.yb=function(b,c,d,e,f,h,k){b=a.s.ta(c,b,a.s.pa.Sa,a.s.ra.oa,d,f,e,null);a.s.Ca(b,h,k)};a.s.Eb=function(b,c,d,e,f,h,k,l,g,n){switch(c){case m.na:window.gbar.up.dpc(e,f);break;case m.U:window.gbar.up.spd(b,d,1,!0);break;case m.V:g=g||!1,l=l||"",h=h||0,k=k||a.s.R.W,n=n||0,a.s.ub(e,h,k,f,l,g,n)}};a.s.Cb=function(b,c,d,e,f){return c==m.U?0<d&&a.s.ya(b,c,e,f)>=d:!1};a.s.wb=function(b,c,d,e,f,h,k,l,g,n){switch(c){case m.na:window.gbar.up.iic(e,f);break;case m.U:c=a.s.ya(b,c,d,e)+1;window.gbar.up.spd(b,d,c.toString(),!0);break;case m.V:g=g||!1,l=l||"",h=h||0,k=k||a.s.R.qa,n=n||0,a.s.yb(e,h,k,1,l,g,n)}};a.s.Db=function(b,c,d,e,f,h){b=a.s.ta(c,b,a.s.pa.Ua,a.s.ra.ka,d,e,null,null);a.s.Ca(b,f,h)};var p={Kb:"a",Nb:"l",Lb:"c",Na:"d",ka:"h",oa:"i",Xb:"n",W:"x",Ub:"ma",Vb:"mc",Wb:"mi",Ob:"pa",Pb:"pc",Rb:"pi",Tb:"pn",Sb:"px",Qb:"pd",Yb:"gpa",$b:"gpi",ac:"gpn",dc:"gpx",Zb:"gpd"};a.o={};a.o.N={Va:"hplogo",kb:"pmocntr2"};a.o.R={ab:"0",W:"1",La:"2"};a.o.w=document.getElementById(a.o.N.kb);a.o.Ra=16;a.o.Za=2;a.o.$a=20;google.promos=google.promos||{};google.promos.toast=google.promos.toast||{};a.o.$=function(b){a.o.w&&(a.o.w.style.display=b?"":"none",a.o.w.parentNode&&(a.o.w.parentNode.style.position=b?"relative":""))};a.o.Ka=function(b){try{if(a.o.w&&b&&b.es&&b.es.m){var c=window.gbar.rtl(document.body)?"left":"right";a.o.w.style[c]=b.es.m-a.o.Ra+a.o.Za+"px";a.o.w.style.top=a.o.$a+"px"}}catch(d){google.ml(d,!1,{cause:a.o.P+"_PT"})}};google.promos.toast.cl=function(){try{a.o.va==m.V&&a.s.Db(a.o.Aa,a.o.S,a.o.R.La,a.o.Ea,a.o.Ba,a.o.Da),window.gbar.up.sl(a.o.S,a.o.P,p.ka,a.o.wa(),1)}catch(b){google.ml(b,!1,{cause:a.o.P+"_CL"})}};google.promos.toast.cpc=function(){try{a.o.w&&(a.o.$(!1),a.s.Eb(a.o.w,a.o.va,a.o.N.Ga,a.o.Aa,a.o.rb,a.o.S,a.o.R.W,a.o.Ea,a.o.Ba,a.o.Da),window.gbar.up.sl(a.o.S,a.o.P,p.Na,a.o.wa(),1))}catch(b){google.ml(b,!1,{cause:a.o.P+"_CPC"})}};a.o.Ia=function(){try{if(a.o.w){var b=276,c=document.getElementById(a.o.N.Va);c&&(b=Math.max(b,c.offsetWidth));var d=parseInt(a.o.w.style.right,10)||0;a.o.w.style.visibility=2*(a.o.w.offsetWidth+d)+b>document.body.clientWidth?"hidden":""}}catch(e){google.ml(e,!1,{cause:a.o.P+"_HOSW"})}};a.o.pb=function(){var b=["gpd","spd","aeh","sl"];if(!window.gbar||!window.gbar.up)return!1;for(var c=0,d;d=b[c];c++)if(!(d in window.gbar.up))return!1;return!0};a.o.Ab=function(){return a.o.w.currentStyle&&"absolute"!=a.o.w.currentStyle.position};google.promos.toast.init=function(b,c,d,e,f,h,k,l,g,n,q,r){try{if(!a.o.pb())google.ml(Error("apa"),!1,{cause:a.o.P+"_INIT"});else if(a.o.w)if(e==m.V&&!l==!g)google.ml(Error("tku"),!1,{cause:"zwieback: "+g+", gaia: "+l}),a.o.$(!1);else if(a.o.N.T="toast_count_"+c+(q?"_"+q:""),a.o.N.Ga="toast_dp_"+c+(r?"_"+r:""),a.o.P=d,a.o.S=b,a.o.va=e,a.o.Aa=c,a.o.rb=f,a.o.Ea=l?l:g,a.o.Ba=!!l,a.o.Da=k,a.s.Bb(a.o.w,e,a.o.N.Ga,c)||a.s.Cb(a.o.w,e,h,a.o.N.T,c)||a.o.Ab())a.o.$(!1);else{a.s.wb(a.o.w,e,a.o.N.T,c,f,a.o.S,a.o.R.ab,a.o.Ea,a.o.Ba,a.o.Da);if(!n){try{window.gbar.up.aeh(window,"resize",a.o.Ia)}catch(t){}window.lol=a.o.Ia;window.gbar.elr&&a.o.Ka(window.gbar.elr());window.gbar.elc&&window.gbar.elc(a.o.Ka);a.o.$(!0)}window.gbar.up.sl(a.o.S,a.o.P,p.oa,a.o.wa())}}catch(t){google.ml(t,!1,{cause:a.o.P+"_INIT"})}};a.o.wa=function(){var b=a.s.ya(a.o.w,a.o.va,a.o.N.T,a.o.Aa);return"ic="+b};})();</script> <script type="text/javascript">(function(){var sourceWebappPromoID=144002;var sourceWebappGroupID=5;var payloadType=5;var cookieMaxAgeSec=2592000;var dismissalType=5;var impressionCap=25;var gaiaXsrfToken='';var zwbkXsrfToken='';var kansasDismissalEnabled=false;var sessionIndex=0;var invisible=false;window.gbar&&gbar.up&&gbar.up.r&&gbar.up.r(payloadType,function(show){if (show){google.promos.toast.init(sourceWebappPromoID,sourceWebappGroupID,payloadType,dismissalType,cookieMaxAgeSec,impressionCap,sessionIndex,gaiaXsrfToken,zwbkXsrfToken,invisible,'0612');} });})();</script> </div> </span><br clear="all" id="lgpd"><div id="lga"><img alt="Google" height="92" src="/images/branding/googlelogo/1x/googlelogo_white_background_color_272x92dp.png" style="padding:28px 0 14px" width="272" id="hplogo" onload="window.lol&&lol()"><br><br></div><form action="/search" name="f"><table cellpadding="0" cellspacing="0"><tr valign="top"><td width="25%"> </td><td align="center" nowrap=""><input name="ie" value="ISO-8859-1" type="hidden"><input value="en" name="hl" type="hidden"><input name="source" type="hidden" value="hp"><input name="biw" type="hidden"><input name="bih" type="hidden"><div class="ds" style="height:32px;margin:4px 0"><input style="color:#000;margin:0;padding:5px 8px 0 6px;vertical-align:top" autocomplete="off" class="lst" value="" title="Google Search" maxlength="2048" name="q" size="57"></div><br style="line-height:0"><span class="ds"><span class="lsbb"><input class="lsb" value="Google Search" name="btnG" type="submit"></span></span><span class="ds"><span class="lsbb"><input class="lsb" value="I'm Feeling Lucky" name="btnI" onclick="if(this.form.q.value)this.checked=1; else top.location='/doodles/'" type="submit"></span></span></td><td class="fl sblc" align="left" nowrap="" width="25%"><a href="/advanced_search?hl=en&authuser=0">Advanced search</a><a href="/language_tools?hl=en&authuser=0">Language tools</a></td></tr></table><input id="gbv" name="gbv" type="hidden" value="1"></form><div id="gac_scont"></div><div style="font-size:83%;min-height:3.5em"><br><div id="prm"><div id="hpplinksimgs" style="behavior:url(#default#userdata);display:none"><style>#hpplinksimgs{font-size:13px}.mlmipi{width:580px}.mlmipi img{margin:0 8px;border:0}</style><span style="color:red"></span>Unwrap the best of Google for <a href="https://www.google.com/url?q=https://play.google.com/store/apps/collection/promotion_3001d1a_google_apps&source=hpp&id=5083181&ct=8&usg=AFQjCNH2g_4hADNfzHkowt7_z-UAPxs6cg" onclick="google.promos&&google.promos.link&&google.promos.link.cl('upnlid=0')">Android</a> and <span style="color:red"></span><a href="https://www.google.com/url?q=https://itunes.apple.com/developer/google-inc./id281956209&source=hpp&id=5083181&ct=8&usg=AFQjCNGvJX8SheQV4HAD9AwyqapxpHWdiw" onclick="google.promos&&google.promos.link&&google.promos.link.cl('upnlid=1')">iOS</a><br><br><div class="mlmipi"><img alt="Google app logo" height="48" src="/images/hpp/gift-96.gif" title="Google app logo" width="48" style="border:none;vertical-align:middle"></div></div><br><br><br><script type="text/javascript">(function(){var b={o:{}};b.o.localStorage={};b.o.localStorage.s=function(a){var d=!1;try{d=a.cookie&&a.cookie.match("PREF")}catch(c){}return!d};b.o.localStorage.N=function(){if(b.o.localStorage.s(document))return!1;try{return"object"==typeof window.localStorage}catch(a){return!1}};b.o.localStorage.oa=function(a){return b.o.localStorage.s(document)?"":(a=window.localStorage.getItem(a))?a.toString():""};b.o.localStorage.wa=function(a,d){b.o.localStorage.s(document)||window.localStorage.setItem(a,d)};b.o.localStorage.va=function(a){b.o.localStorage.s(document)||window.localStorage.removeItem(a)};var f={ka:"google(?:.[a-z]{2,3}){1,2}$",P:"OGP",v:"OGPC",O:":",$:-2,ma:31536E3};google.promos||(google.promos={});google.promos.ActionType={ACCEPT:"a",CANCEL:"c",DISMISS:"d",CLICK:"h",IMPRESSION:"i",NO_THANKS:"n",X_BUTTON:"x",MGMHP_ACCEPT:"ma",MGMHP_CANCEL:"mc",MGMHP_IMPRESSION:"mi",MGMHPPD_ACCEPT:"pa",MGMHPPD_CANCEL:"pc",MGMHPPD_IMPRESSION:"pi",MGMHPPD_NO_THANKS:"pn",MGMHPPD_NO_BUTTON:"px",MGMHPPD_DISMISS:"pd",PUSHDOWN_ACCEPT:"gpa",PUSHDOWN_IMPRESSION:"gpi",PUSHDOWN_NO_THANKS:"gpn",PUSHDOWN_NO_BUTTON:"gpx",PUSHDOWN_DISMISS:"gpd"};google.promos.sl=function(a,d,c,e){a=[c,"id="+a,"loc="+google.sn];a.push("oi=promoslinger");e&&a.push(e);google.log(d,a.join("&"))};google.promos.si=function(a,d,c,e){.01>Math.random()&&google.promos.sl(a,d,e?e:google.promos.ActionType.IMPRESSION,c)};f.s=function(a){var d=!1;try{d=a.cookie&&a.cookie.match("PREF")}catch(c){}return!d};google.promos.spd=function(a,d,c){if(!f.s(document))if(b.o.localStorage.N())b.o.localStorage.wa(d,c);else if(a)try{a.setAttribute(d,c),a.save(a.id)}catch(e){google.ml(e,!1,{cause:"PERSIST_DATA_FAIL"})}};google.promos.gpd=function(a,d){if(f.s(document))return"";if(b.o.localStorage.N())return b.o.localStorage.oa(d);if(a)try{return a.load(a.id),a.getAttribute(d)}catch(c){google.ml(c,!1,{cause:"PERSIST_DATA_FAIL"})}return""};google.promos.rpd=function(a,d){if(b.o.localStorage.N())b.o.localStorage.va(d);else if(a)try{a.load(a.id),a.removeAttribute(d),a.save(a.id)}catch(c){google.ml(c,!1,{cause:"PERSIST_DATA_FAIL"})}};google.promos.aeh=function(a,d,c){a.addEventListener?a.addEventListener(d,c,!1):a.attachEvent&&a.attachEvent("on"+d,c)};f.w=function(a,d){if(f.s(a))return null;var c=new RegExp(d+"=([^;]*)");return(c=a.cookie.match(c))&&c[1]?c[1]:null};f.qa=function(a){return!/[;=\s]/.test(a)};f.ra=function(a){return!/[;\r\n]/.test(a)};f.U=function(a){return new RegExp("\\b"+a+"-([0-9]+):")};f.W=function(a,d,c,e,g,h,l){if(!f.qa(d))throw Error('icn "'+d+'"');if(!f.ra(c))throw Error('icv "'+c+'"');e||(e=-1);h=h?";domain="+h:"";g=g?";path="+g:"";l=l?";secure":"";e==f.ya?e="":(e=0==e?new Date(1970,1,1):new Date(+new Date+1E3*e),e=";expires="+e.toUTCString());a.cookie=d+"="+c+h+g+e+l};f.T=function(a,d){if(f.s(a))return 0;var c=f.w(a,f.v);return c?(c=c.match(f.U(d)))&&c[1]?parseInt(c[1],10):0:0};f.S=function(a){return(a=a.match(f.ka))&&a[0]?a[0]:null};f.na=function(a,d,c){var e=f.U(a),g=c&&c.match(e);a=a+"-"+d+f.O;return c=g?c.replace(e,a):(c?c:"")+a};f.V=function(a,d,c){var e=f.S(window.location.hostname);if(e){var g=f.w(document,f.v)||"";a=f.na(a,d,g);f.W(document,f.v,a,c,"/",e)}};f.R=function(a){return a==f.$?30*f.ma:a};f.pa=function(a,d){var c=f.T(document,a),e=f.R(d);f.V(a,c+1,e)};f.ta=function(a,d){var c=f.w(document,f.P)||"",c=c+("-"+a+f.O),e=f.S(window.location.hostname),g=f.R(d);e&&f.W(document,f.P,c,g,"/",e)};var k=google.promos;k.dpc=f.ta;k.gcc=f.T;k.iic=f.pa;k.sic=f.V;})();(function(){var b,k=k||{};k.global=this;k.isDef=function(a){return void 0!==a};k.exportPath_=function(a,c,d){a=a.split(".");d=d||k.global;a[0]in d||!d.execScript||d.execScript("var "+a[0]);for(var e;a.length&&(e=a.shift());)!a.length&&k.isDef(c)?d[e]=c:d=d[e]?d[e]:d[e]={}};k.define=function(a,c){var d=c;k.exportPath_(a,d)};k.DEBUG=!0;k.LOCALE="en";k.TRUSTED_SITE=!0;k.STRICT_MODE_COMPATIBLE=!1;k.DISALLOW_TEST_ONLY_CODE=!k.DEBUG;k.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1;k.provide=function(a){k.constructNamespace_(a)};k.constructNamespace_=function(a,c){k.exportPath_(a,c)};k.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/;k.module=function(a){if(!k.isString(a)||!a||-1==a.search(k.VALID_MODULE_RE_))throw Error("Invalid module identifier");if(!k.isInModuleLoader_())throw Error("Module "+a+" has been loaded incorrectly.");if(k.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");k.moduleLoaderState_.moduleName=a};k.module.get=function(a){return k.module.getInternal_(a)};k.module.getInternal_=function(){};k.moduleLoaderState_=null;k.isInModuleLoader_=function(){return null!=k.moduleLoaderState_};k.module.declareLegacyNamespace=function(){k.moduleLoaderState_.declareLegacyNamespace=!0};k.setTestOnly=function(a){if(k.DISALLOW_TEST_ONLY_CODE)throw a=a||"",Error("Importing test-only code into non-debug environment"+(a?": "+a:"."));};k.forwardDeclare=function(){};k.getObjectByName=function(a,c){for(var d=a.split("."),e=c||k.global,f;f=d.shift();)if(k.isDefAndNotNull(e[f]))e=e[f];else return null;return e};k.globalize=function(a,c){var d=c||k.global,e;for(e in a)d[e]=a[e]};k.addDependency=function(a,c,d,e){if(k.DEPENDENCIES_ENABLED){var f;a=a.replace(/\\/g,"/");for(var g=k.dependencies_,h=0;f=c[h];h++)g.nameToPath[f]=a,g.pathIsModule[a]=!!e;for(e=0;c=d[e];e++)a in g.requires||(g.requires[a]={}),g.requires[a][c]=!0}};k.useStrictRequires=!1;k.ENABLE_DEBUG_LOADER=!0;k.logToConsole_=function(a){k.global.console&&k.global.console.error(a)};k.require=function(){};k.basePath="";k.nullFunction=function(){};k.abstractMethod=function(){throw Error("unimplemented abstract method");};k.addSingletonGetter=function(a){a.getInstance=function(){if(a.instance_)return a.instance_;k.DEBUG&&(k.instantiatedSingletons_[k.instantiatedSingletons_.length]=a);return a.instance_=new a}};k.instantiatedSingletons_=[];k.LOAD_MODULE_USING_EVAL=!0;k.SEAL_MODULE_EXPORTS=k.DEBUG;k.loadedModules_={};k.DEPENDENCIES_ENABLED=!1;k.DEPENDENCIES_ENABLED&&(k.dependencies_={pathIsModule:{},nameToPath:{},requires:{},visited:{},written:{},deferred:{}},k.inHtmlDocument_=function(){var a=k.global.document;return null!=a&&"write"in a},k.findBasePath_=function(){if(k.isDef(k.global.CLOSURE_BASE_PATH))k.basePath=k.global.CLOSURE_BASE_PATH;else if(k.inHtmlDocument_())for(var a=k.global.document,a=a.getElementsByTagName("SCRIPT"),c=a.length-1;0<=c;--c){var d=a[c],d=d.src,e=d.lastIndexOf("?"),e=-1==e?d.length:e;if("base.js"==d.substr(e- 7,7)){k.basePath=d.substr(0,e-7);break}}},k.importScript_=function(a,c){var d=k.global.CLOSURE_IMPORT_SCRIPT||k.writeScriptTag_;d(a,c)&&(k.dependencies_.written[a]=!0)},k.IS_OLD_IE_=!(k.global.atob||!k.global.document||!k.global.document.all),k.importModule_=function(a){var c='goog.retrieveAndExecModule_("'+a+'");';k.importScript_("",c)&&(k.dependencies_.written[a]=!0)},k.queuedModules_=[],k.wrapModule_=function(a,c){return k.LOAD_MODULE_USING_EVAL&&k.isDef(k.global.JSON)?"goog.loadModule("+k.global.JSON.stringify(c+ "\n//# sourceURL="+a+"\n")+");":'goog.loadModule(function(exports) {"use strict";'+c+"\n;return exports});\n//# sourceURL="+a+"\n"},k.loadQueuedModules_=function(){var a=k.queuedModules_.length;if(0<a){var c=k.queuedModules_;k.queuedModules_=[];for(var d=0;d<a;d++){var e=c[d];k.maybeProcessDeferredPath_(e)}}},k.maybeProcessDeferredDep_=function(a){k.isDeferredModule_(a)&&k.allDepsAreAvailable_(a)&&(a=k.getPathFromDeps_(a),k.maybeProcessDeferredPath_(k.basePath+a))},k.isDeferredModule_=function(a){return(a= k.getPathFromDeps_(a))&&k.dependencies_.pathIsModule[a]?(a=k.basePath+a,a in k.dependencies_.deferred):!1},k.allDepsAreAvailable_=function(a){if((a=k.getPathFromDeps_(a))&&a in k.dependencies_.requires)for(var c in k.dependencies_.requires[a])if(!k.isProvided_(c)&&!k.isDeferredModule_(c))return!1;return!0},k.maybeProcessDeferredPath_=function(a){if(a in k.dependencies_.deferred){var c=k.dependencies_.deferred[a];delete k.dependencies_.deferred[a];k.globalEval(c)}},k.loadModuleFromUrl=function(a){k.retrieveAndExecModule_(a)},k.loadModule=function(a){var c=k.moduleLoaderState_;try{k.moduleLoaderState_={moduleName:void 0,declareLegacyNamespace:!1};var d;if(k.isFunction(a))d=a.call(k.global,{});else if(k.isString(a))d=k.loadModuleFromSource_.call(k.global,a);else throw Error("Invalid module definition");var e=k.moduleLoaderState_.moduleName;if(!k.isString(e)||!e)throw Error('Invalid module name "'+e+'"');k.moduleLoaderState_.declareLegacyNamespace?k.constructNamespace_(e,d):k.SEAL_MODULE_EXPORTS&&Object.seal&&Object.seal(d);k.loadedModules_[e]=d}finally{k.moduleLoaderState_=c}},k.loadModuleFromSource_=function(a){var c={};eval(a);return c},k.writeScriptSrcNode_=function(a){k.global.document.write('<script type="text/javascript" src="'+a+'">\x3c/script>')},k.appendScriptSrcNode_=function(a){var c=k.global.document,d=c.createElement("script");d.type="text/javascript";d.src=a;d.defer=!1;d.async=!1;c.head.appendChild(d)},k.writeScriptTag_=function(a,c){if(k.inHtmlDocument_()){var d=k.global.document;if(!k.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING&& "complete"==d.readyState){if(d=/\bdeps.js$/.test(a))return!1;throw Error('Cannot write "'+a+'" after document load');}var e=k.IS_OLD_IE_;void 0===c?e?(e=" onreadystatechange='goog.onScriptLoad_(this, "+ ++k.lastNonModuleScriptIndex_+")' ",d.write('<script type="text/javascript" src="'+a+'"'+e+">\x3c/script>")):k.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING?k.appendScriptSrcNode_(a):k.writeScriptSrcNode_(a):d.write('<script type="text/javascript">'+c+"\x3c/script>");return!0}return!1},k.lastNonModuleScriptIndex_= 0,k.onScriptLoad_=function(a,c){"complete"==a.readyState&&k.lastNonModuleScriptIndex_==c&&k.loadQueuedModules_();return!0},k.writeScripts_=function(a){function c(a){if(!(a in f.written||a in f.visited)){f.visited[a]=!0;if(a in f.requires)for(var g in f.requires[a])if(!k.isProvided_(g))if(g in f.nameToPath)c(f.nameToPath[g]);else throw Error("Undefined nameToPath for "+g);a in e||(e[a]=!0,d.push(a))}}var d=[],e={},f=k.dependencies_;c(a);for(a=0;a<d.length;a++){var g=d[a];k.dependencies_.written[g]= !0}var h=k.moduleLoaderState_;k.moduleLoaderState_=null;for(a=0;a<d.length;a++)if(g=d[a])f.pathIsModule[g]?k.importModule_(k.basePath+g):k.importScript_(k.basePath+g);else throw k.moduleLoaderState_=h,Error("Undefined script input");k.moduleLoaderState_=h},k.getPathFromDeps_=function(a){return a in k.dependencies_.nameToPath?k.dependencies_.nameToPath[a]:null},k.findBasePath_(),k.global.CLOSURE_NO_DEPS||k.importScript_(k.basePath+"deps.js"));k.normalizePath_=function(a){a=a.split("/");for(var c=0;c<a.length;)"."==a[c]?a.splice(c,1):c&&".."==a[c]&&a[c-1]&&".."!=a[c-1]?a.splice(--c,2):c++;return a.join("/")};k.loadFileSync_=function(a){if(k.global.CLOSURE_LOAD_FILE_SYNC)return k.global.CLOSURE_LOAD_FILE_SYNC(a);var c=new k.global.XMLHttpRequest;c.open("get",a,!1);c.send();return c.responseText};k.retrieveAndExecModule_=function(){};k.typeOf=function(a){var c=typeof a;if("object"==c)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return c;var d=Object.prototype.toString.call(a);if("[object Window]"==d)return"object";if("[object Array]"==d||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==d||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";else if("function"==c&&"undefined"==typeof a.call)return"object";return c};k.isNull=function(a){return null===a};k.isDefAndNotNull=function(a){return null!=a};k.isArray=function(a){return"array"==k.typeOf(a)};k.isArrayLike=function(a){var c=k.typeOf(a);return"array"==c||"object"==c&&"number"==typeof a.length};k.isDateLike=function(a){return k.isObject(a)&&"function"==typeof a.getFullYear};k.isString=function(a){return"string"==typeof a};k.isBoolean=function(a){return"boolean"==typeof a};k.isNumber=function(a){return"number"==typeof a};k.isFunction=function(a){return"function"==k.typeOf(a)};k.isObject=function(a){var c=typeof a;return"object"==c&&null!=a||"function"==c};k.getUid=function(a){return a[k.UID_PROPERTY_]||(a[k.UID_PROPERTY_]=++k.uidCounter_)};k.hasUid=function(a){return!!a[k.UID_PROPERTY_]};k.removeUid=function(a){null!==a&&"removeAttribute"in a&&a.removeAttribute(k.UID_PROPERTY_);try{delete a[k.UID_PROPERTY_]}catch(c){}};k.UID_PROPERTY_="closure_uid_"+(1E9*Math.random()>>>0);k.uidCounter_=0;k.getHashCode=k.getUid;k.removeHashCode=k.removeUid;k.cloneObject=function(a){var c=k.typeOf(a);if("object"==c||"array"==c){if(a.clone)return a.clone();var c="array"==c?[]:{},d;for(d in a)c[d]=k.cloneObject(a[d]);return c}return a};k.bindNative_=function(a,c,d){return a.call.apply(a.bind,arguments)};k.bindJs_=function(a,c,d){if(!a)throw Error();if(2<arguments.length){var e=Array.prototype.slice.call(arguments,2);return function(){var d=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(d,e);return a.apply(c,d)}}return function(){return a.apply(c,arguments)}};k.bind=function(a,c,d){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?k.bind=k.bindNative_:k.bind=k.bindJs_;return k.bind.apply(null,arguments)};k.partial=function(a,c){var d=Array.prototype.slice.call(arguments,1);return function(){var c=d.slice();c.push.apply(c,arguments);return a.apply(this,c)}};k.mixin=function(a,c){for(var d in c)a[d]=c[d]};k.now=k.TRUSTED_SITE&&Date.now||function(){return+new Date};k.globalEval=function(a){if(k.global.execScript)k.global.execScript(a,"JavaScript");else if(k.global.eval){if(null==k.evalWorksForGlobals_)if(k.global.eval("var _evalTest_ = 1;"),"undefined"!=typeof k.global._evalTest_){try{delete k.global._evalTest_}catch(e){}k.evalWorksForGlobals_=!0}else k.evalWorksForGlobals_=!1;if(k.evalWorksForGlobals_)k.global.eval(a);else{var c=k.global.document,d=c.createElement("SCRIPT");d.type="text/javascript";d.defer=!1;d.appendChild(c.createTextNode(a));c.body.appendChild(d);c.body.removeChild(d)}}else throw Error("goog.globalEval not available");};k.evalWorksForGlobals_=null;k.getCssName=function(a,c){var d=function(a){return k.cssNameMapping_[a]||a},e=function(a){a=a.split("-");for(var c=[],e=0;e<a.length;e++)c.push(d(a[e]));return c.join("-")},e=k.cssNameMapping_?"BY_WHOLE"==k.cssNameMappingStyle_?d:e:function(a){return a};return c?a+"-"+e(c):e(a)};k.setCssNameMapping=function(a,c){k.cssNameMapping_=a;k.cssNameMappingStyle_=c};k.getMsg=function(a,c){c&&(a=a.replace(/\{\$([^}]+)}/g,function(a,e){return null!=c&&e in c?c[e]:a}));return a};k.getMsgWithFallback=function(a){return a};k.exportSymbol=function(a,c,d){k.exportPath_(a,c,d)};k.exportProperty=function(a,c,d){a[c]=d};k.inherits=function(a,c){function d(){}d.prototype=c.prototype;a.superClass_=c.prototype;a.prototype=new d;a.prototype.constructor=a;a.base=function(a,d,g){for(var h=Array(arguments.length-2),l=2;l<arguments.length;l++)h[l-2]=arguments[l];return c.prototype[d].apply(a,h)}};k.base=function(a,c,d){var e=arguments.callee.caller;if(k.STRICT_MODE_COMPATIBLE||k.DEBUG&&!e)throw Error("arguments.caller not defined. goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C");if(e.superClass_){for(var f=Array(arguments.length-1),g=1;g<arguments.length;g++)f[g-1]=arguments[g];return e.superClass_.constructor.apply(a,f)}f=Array(arguments.length-2);for(g=2;g<arguments.length;g++)f[g-2]=arguments[g];for(var g=!1,h=a.constructor;h;h= h.superClass_&&h.superClass_.constructor)if(h.prototype[c]===e)g=!0;else if(g)return h.prototype[c].apply(a,f);if(a[c]===e)return a.constructor.prototype[c].apply(a,f);throw Error("goog.base called from a method of one name to a method of a different name");};k.scope=function(a){a.call(k.global)};k.defineClass=function(a,c){var d=c.constructor,e=c.statics;d&&d!=Object.prototype.constructor||(d=function(){throw Error("cannot instantiate an interface (no constructor defined).");});d=k.defineClass.createSealingConstructor_(d,a);a&&k.inherits(d,a);delete c.constructor;delete c.statics;k.defineClass.applyProperties_(d.prototype,c);null!=e&&(e instanceof Function?e(d):k.defineClass.applyProperties_(d,e));return d};k.defineClass.SEAL_CLASS_INSTANCES=k.DEBUG;k.defineClass.createSealingConstructor_=function(a,c){if(k.defineClass.SEAL_CLASS_INSTANCES&&Object.seal instanceof Function){if(c&&c.prototype&&c.prototype[k.UNSEALABLE_CONSTRUCTOR_PROPERTY_])return a;var d=function(){var c=a.apply(this,arguments)||this;c[k.UID_PROPERTY_]=c[k.UID_PROPERTY_];this.constructor===d&&Object.seal(c);return c};return d}return a};k.defineClass.OBJECT_PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");k.defineClass.applyProperties_=function(a,c){for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&(a[d]=c[d]);for(var e=0;e<k.defineClass.OBJECT_PROTOTYPE_FIELDS_.length;e++)d=k.defineClass.OBJECT_PROTOTYPE_FIELDS_[e],Object.prototype.hasOwnProperty.call(c,d)&&(a[d]=c[d])};k.tagUnsealableClass=function(){};k.UNSEALABLE_CONSTRUCTOR_PROPERTY_="goog_defineClass_legacy_unsealable";k.debug={};k.debug.Error=function(a){if(Error.captureStackTrace)Error.captureStackTrace(this,k.debug.Error);else{var c=Error().stack;c&&(this.stack=c)}a&&(this.message=String(a))};k.inherits(k.debug.Error,Error);k.debug.Error.prototype.name="CustomError";k.dom={};k.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};k.string={};k.string.DETECT_DOUBLE_ESCAPING=!1;k.string.FORCE_NON_DOM_HTML_UNESCAPING=!1;k.string.Unicode={NBSP:"\u00a0"};k.string.startsWith=function(a,c){return 0==a.lastIndexOf(c,0)};k.string.endsWith=function(a,c){var d=a.length-c.length;return 0<=d&&a.indexOf(c,d)==d};k.string.caseInsensitiveStartsWith=function(a,c){return 0==k.string.caseInsensitiveCompare(c,a.substr(0,c.length))};k.string.caseInsensitiveEndsWith=function(a,c){return 0==k.string.caseInsensitiveCompare(c,a.substr(a.length-c.length,c.length))};k.string.caseInsensitiveEquals=function(a,c){return a.toLowerCase()==c.toLowerCase()};k.string.subs=function(a,c){for(var d=a.split("%s"),e="",f=Array.prototype.slice.call(arguments,1);f.length&&1<d.length;)e+=d.shift()+f.shift();return e+d.join("%s")};k.string.collapseWhitespace=function(a){return a.replace(/[\s\xa0]+/g," ").replace(/^\s+|\s+$/g,"")};k.string.isEmptyOrWhitespace=function(a){return/^[\s\xa0]*$/.test(a)};k.string.isEmptyString=function(a){return 0==a.length};k.string.isEmpty=k.string.isEmptyOrWhitespace;k.string.isEmptyOrWhitespaceSafe=function(a){return k.string.isEmptyOrWhitespace(k.string.makeSafe(a))};k.string.isEmptySafe=k.string.isEmptyOrWhitespaceSafe;k.string.isBreakingWhitespace=function(a){return!/[^\t\n\r ]/.test(a)};k.string.isAlpha=function(a){return!/[^a-zA-Z]/.test(a)};k.string.isNumeric=function(a){return!/[^0-9]/.test(a)};k.string.isAlphaNumeric=function(a){return!/[^a-zA-Z0-9]/.test(a)};k.string.isSpace=function(a){return" "==a};k.string.isUnicodeChar=function(a){return 1==a.length&&" "<=a&&"~">=a||"\u0080"<=a&&"\ufffd">=a};k.string.stripNewlines=function(a){return a.replace(/(\r\n|\r|\n)+/g," ")};k.string.canonicalizeNewlines=function(a){return a.replace(/(\r\n|\r|\n)/g,"\n")};k.string.normalizeWhitespace=function(a){return a.replace(/\xa0|\s/g," ")};k.string.normalizeSpaces=function(a){return a.replace(/\xa0|[ \t]+/g," ")};k.string.collapseBreakingSpaces=function(a){return a.replace(/[\t\r\n ]+/g," ").replace(/^[\t\r\n ]+|[\t\r\n ]+$/g,"")};k.string.trim=k.TRUSTED_SITE&&String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^[\s\xa0]+|[\s\xa0]+$/g,"")};k.string.trimLeft=function(a){return a.replace(/^[\s\xa0]+/,"")};k.string.trimRight=function(a){return a.replace(/[\s\xa0]+$/,"")};k.string.caseInsensitiveCompare=function(a,c){var d=String(a).toLowerCase(),e=String(c).toLowerCase();return d<e?-1:d==e?0:1};k.string.numberAwareCompare_=function(a,c,d){if(a==c)return 0;if(!a)return-1;if(!c)return 1;for(var e=a.toLowerCase().match(d),f=c.toLowerCase().match(d),g=Math.min(e.length,f.length),h=0;h<g;h++){d=e[h];var l=f[h];if(d!=l)return a=parseInt(d,10),!isNaN(a)&&(c=parseInt(l,10),!isNaN(c)&&a-c)?a-c:d<l?-1:1}return e.length!=f.length?e.length-f.length:a<c?-1:1};k.string.intAwareCompare=function(a,c){return k.string.numberAwareCompare_(a,c,/\d+|\D+/g)};k.string.floatAwareCompare=function(a,c){return k.string.numberAwareCompare_(a,c,/\d+|\.\d+|\D+/g)};k.string.numerateCompare=k.string.floatAwareCompare;k.string.urlEncode=function(a){return encodeURIComponent(String(a))};k.string.urlDecode=function(a){return decodeURIComponent(a.replace(/\+/g," "))};k.string.newLineToBr=function(a,c){return a.replace(/(\r\n|\r|\n)/g,c?"<br />":"<br>")};k.string.htmlEscape=function(a,c){if(c)a=a.replace(k.string.AMP_RE_,"&").replace(k.string.LT_RE_,"<").replace(k.string.GT_RE_,">").replace(k.string.QUOT_RE_,""").replace(k.string.SINGLE_QUOTE_RE_,"'").replace(k.string.NULL_RE_,"�"),k.string.DETECT_DOUBLE_ESCAPING&&(a=a.replace(k.string.E_RE_,"e"));else{if(!k.string.ALL_RE_.test(a))return a;-1!=a.indexOf("&")&&(a=a.replace(k.string.AMP_RE_,"&"));-1!=a.indexOf("<")&&(a=a.replace(k.string.LT_RE_,"<"));-1!=a.indexOf(">")&& (a=a.replace(k.string.GT_RE_,">"));-1!=a.indexOf('"')&&(a=a.replace(k.string.QUOT_RE_,"""));-1!=a.indexOf("'")&&(a=a.replace(k.string.SINGLE_QUOTE_RE_,"'"));-1!=a.indexOf("\x00")&&(a=a.replace(k.string.NULL_RE_,"�"));k.string.DETECT_DOUBLE_ESCAPING&&-1!=a.indexOf("e")&&(a=a.replace(k.string.E_RE_,"e"))}return a};k.string.AMP_RE_=/&/g;k.string.LT_RE_=/</g;k.string.GT_RE_=/>/g;k.string.QUOT_RE_=/"/g;k.string.SINGLE_QUOTE_RE_=/'/g;k.string.NULL_RE_=/\x00/g;k.string.E_RE_=/e/g;k.string.ALL_RE_=k.string.DETECT_DOUBLE_ESCAPING?/[\x00&<>"'e]/:/[\x00&<>"']/;k.string.unescapeEntities=function(a){return k.string.contains(a,"&")?!k.string.FORCE_NON_DOM_HTML_UNESCAPING&&"document"in k.global?k.string.unescapeEntitiesUsingDom_(a):k.string.unescapePureXmlEntities_(a):a};k.string.unescapeEntitiesWithDocument=function(a,c){return k.string.contains(a,"&")?k.string.unescapeEntitiesUsingDom_(a,c):a};k.string.unescapeEntitiesUsingDom_=function(a,c){var d={"&":"&","<":"<",">":">",""":'"'},e;e=c?c.createElement("div"):k.global.document.createElement("div");return a.replace(k.string.HTML_ENTITY_PATTERN_,function(a,c){var h=d[a];if(h)return h;if("#"==c.charAt(0)){var l=Number("0"+c.substr(1));isNaN(l)||(h=String.fromCharCode(l))}h||(e.innerHTML=a+" ",h=e.firstChild.nodeValue.slice(0,-1));return d[a]=h})};k.string.unescapePureXmlEntities_=function(a){return a.replace(/&([^;]+);/g,function(a,d){switch(d){case "amp":return"&";case "lt":return"<";case "gt":return">";case "quot":return'"';default:if("#"==d.charAt(0)){var e=Number("0"+d.substr(1));if(!isNaN(e))return String.fromCharCode(e)}return a}})};k.string.HTML_ENTITY_PATTERN_=/&([^;\s<&]+);?/g;k.string.whitespaceEscape=function(a,c){return k.string.newLineToBr(a.replace(/ /g,"  "),c)};k.string.preserveSpaces=function(a){return a.replace(/(^|[\n ]) /g,"$1"+k.string.Unicode.NBSP)};k.string.stripQuotes=function(a,c){for(var d=c.length,e=0;e<d;e++){var f=1==d?c:c.charAt(e);if(a.charAt(0)==f&&a.charAt(a.length-1)==f)return a.substring(1,a.length-1)}return a};k.string.truncate=function(a,c,d){d&&(a=k.string.unescapeEntities(a));a.length>c&&(a=a.substring(0,c-3)+"...");d&&(a=k.string.htmlEscape(a));return a};k.string.truncateMiddle=function(a,c,d,e){d&&(a=k.string.unescapeEntities(a));if(e&&a.length>c){e>c&&(e=c);var f=a.length-e;c-=e;a=a.substring(0,c)+"..."+a.substring(f)}else a.length>c&&(f=Math.floor(c/2),e=a.length-f,f+=c%2,a=a.substring(0,f)+"..."+a.substring(e));d&&(a=k.string.htmlEscape(a));return a};k.string.specialEscapeChars_={"\x00":"\\0","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\x0B":"\\x0B",'"':'\\"',"\\":"\\\\","<":"<"};k.string.jsEscapeCache_={"'":"\\'"};k.string.quote=function(a){a=String(a);for(var c=['"'],d=0;d<a.length;d++){var e=a.charAt(d),f=e.charCodeAt(0);c[d+1]=k.string.specialEscapeChars_[e]||(31<f&&127>f?e:k.string.escapeChar(e))}c.push('"');return c.join("")};k.string.escapeString=function(a){for(var c=[],d=0;d<a.length;d++)c[d]=k.string.escapeChar(a.charAt(d));return c.join("")};k.string.escapeChar=function(a){if(a in k.string.jsEscapeCache_)return k.string.jsEscapeCache_[a];if(a in k.string.specialEscapeChars_)return k.string.jsEscapeCache_[a]=k.string.specialEscapeChars_[a];var c=a,d=a.charCodeAt(0);if(31<d&&127>d)c=a;else{if(256>d){if(c="\\x",16>d||256<d)c+="0"}else c="\\u",4096>d&&(c+="0");c+=d.toString(16).toUpperCase()}return k.string.jsEscapeCache_[a]=c};k.string.contains=function(a,c){return-1!=a.indexOf(c)};k.string.caseInsensitiveContains=function(a,c){return k.string.contains(a.toLowerCase(),c.toLowerCase())};k.string.countOf=function(a,c){return a&&c?a.split(c).length-1:0};k.string.removeAt=function(a,c,d){var e=a;0<=c&&c<a.length&&0<d&&(e=a.substr(0,c)+a.substr(c+d,a.length-c-d));return e};k.string.remove=function(a,c){var d=new RegExp(k.string.regExpEscape(c),"");return a.replace(d,"")};k.string.removeAll=function(a,c){var d=new RegExp(k.string.regExpEscape(c),"g");return a.replace(d,"")};k.string.regExpEscape=function(a){return String(a).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};k.string.repeat=String.prototype.repeat?function(a,c){return a.repeat(c)}:function(a,c){return Array(c+1).join(a)};k.string.padNumber=function(a,c,d){a=k.isDef(d)?a.toFixed(d):String(a);d=a.indexOf(".");-1==d&&(d=a.length);return k.string.repeat("0",Math.max(0,c-d))+a};k.string.makeSafe=function(a){return null==a?"":String(a)};k.string.buildString=function(a){return Array.prototype.join.call(arguments,"")};k.string.getRandomString=function(){var a=2147483648;return Math.floor(Math.random()*a).toString(36)+Math.abs(Math.floor(Math.random()*a)^k.now()).toString(36)};k.string.compareVersions=function(a,c){for(var d=0,e=k.string.trim(String(a)).split("."),f=k.string.trim(String(c)).split("."),g=Math.max(e.length,f.length),h=0;0==d&&h<g;h++){var l=e[h]||"",m=f[h]||"",n=RegExp("(\\d*)(\\D*)","g"),y=RegExp("(\\d*)(\\D*)","g");do{var p=n.exec(l)||["","",""],q=y.exec(m)||["","",""];if(0==p[0].length&&0==q[0].length)break;var d=0==p[1].length?0:parseInt(p[1],10),z=0==q[1].length?0:parseInt(q[1],10),d=k.string.compareElements_(d,z)||k.string.compareElements_(0==p[2].length,0==q[2].length)||k.string.compareElements_(p[2],q[2])}while(0==d)}return d};k.string.compareElements_=function(a,c){return a<c?-1:a>c?1:0};k.string.hashCode=function(a){for(var c=0,d=0;d<a.length;++d)c=31*c+a.charCodeAt(d)>>>0;return c};k.string.uniqueStringCounter_=2147483648*Math.random()|0;k.string.createUniqueString=function(){return"goog_"+k.string.uniqueStringCounter_++};k.string.toNumber=function(a){var c=Number(a);return 0==c&&k.string.isEmptyOrWhitespace(a)?NaN:c};k.string.isLowerCamelCase=function(a){return/^[a-z]+([A-Z][a-z]*)*$/.test(a)};k.string.isUpperCamelCase=function(a){return/^([A-Z][a-z]*)+$/.test(a)};k.string.toCamelCase=function(a){return String(a).replace(/\-([a-z])/g,function(a,d){return d.toUpperCase()})};k.string.toSelectorCase=function(a){return String(a).replace(/([A-Z])/g,"-$1").toLowerCase()};k.string.toTitleCase=function(a,c){var d=k.isString(c)?k.string.regExpEscape(c):"\\s",d=d?"|["+d+"]+":"",d=new RegExp("(^"+d+")([a-z])","g");return a.replace(d,function(a,c,d){return c+d.toUpperCase()})};k.string.capitalize=function(a){return String(a.charAt(0)).toUpperCase()+String(a.substr(1)).toLowerCase()};k.string.parseInt=function(a){isFinite(a)&&(a=String(a));return k.isString(a)?/^\s*-?0x/i.test(a)?parseInt(a,16):parseInt(a,10):NaN};k.string.splitLimit=function(a,c,d){a=a.split(c);for(var e=[];0<d&&a.length;)e.push(a.shift()),d--;a.length&&e.push(a.join(c));return e};k.string.editDistance=function(a,c){var d=[],e=[];if(a==c)return 0;if(!a.length||!c.length)return Math.max(a.length,c.length);for(var f=0;f<c.length+1;f++)d[f]=f;for(f=0;f<a.length;f++){e[0]=f+1;for(var g=0;g<c.length;g++){var h=a[f]!=c[g];e[g+1]=Math.min(e[g]+1,d[g+1]+1,d[g]+h)}for(g=0;g<d.length;g++)d[g]=e[g]}return e[c.length]};k.asserts={};k.asserts.ENABLE_ASSERTS=k.DEBUG;k.asserts.AssertionError=function(a,c){c.unshift(a);k.debug.Error.call(this,k.string.subs.apply(null,c));c.shift()};k.inherits(k.asserts.AssertionError,k.debug.Error);k.asserts.AssertionError.prototype.name="AssertionError";k.asserts.DEFAULT_ERROR_HANDLER=function(a){throw a;};k.asserts.errorHandler_=k.asserts.DEFAULT_ERROR_HANDLER;k.asserts.doAssertFailure_=function(a,c,d,e){var f="Assertion failed";if(d)var f=f+(": "+d),g=e;else a&&(f+=": "+a,g=c);a=new k.asserts.AssertionError(""+f,g||[]);k.asserts.errorHandler_(a)};k.asserts.setErrorHandler=function(a){k.asserts.ENABLE_ASSERTS&&(k.asserts.errorHandler_=a)};k.asserts.assert=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!a&&k.asserts.doAssertFailure_("",null,c,Array.prototype.slice.call(arguments,2));return a};k.asserts.fail=function(a,c){k.asserts.ENABLE_ASSERTS&&k.asserts.errorHandler_(new k.asserts.AssertionError("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1)))};k.asserts.assertNumber=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isNumber(a)&&k.asserts.doAssertFailure_("Expected number but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertString=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isString(a)&&k.asserts.doAssertFailure_("Expected string but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertFunction=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isFunction(a)&&k.asserts.doAssertFailure_("Expected function but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertObject=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isObject(a)&&k.asserts.doAssertFailure_("Expected object but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertArray=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isArray(a)&&k.asserts.doAssertFailure_("Expected array but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertBoolean=function(a,c,d){k.asserts.ENABLE_ASSERTS&&!k.isBoolean(a)&&k.asserts.doAssertFailure_("Expected boolean but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertElement=function(a,c,d){!k.asserts.ENABLE_ASSERTS||k.isObject(a)&&a.nodeType==k.dom.NodeType.ELEMENT||k.asserts.doAssertFailure_("Expected Element but got %s: %s.",[k.typeOf(a),a],c,Array.prototype.slice.call(arguments,2));return a};k.asserts.assertInstanceof=function(a,c,d,e){!k.asserts.ENABLE_ASSERTS||a instanceof c||k.asserts.doAssertFailure_("Expected instanceof %s but got %s.",[k.asserts.getType_(c),k.asserts.getType_(a)],d,Array.prototype.slice.call(arguments,3));return a};k.asserts.assertObjectPrototypeIsIntact=function(){for(var a in Object.prototype)k.asserts.fail(a+" should not be enumerable in Object.prototype.")};k.asserts.getType_=function(a){return a instanceof Function?a.displayName||a.name||"unknown type name":a instanceof Object?a.constructor.displayName||a.constructor.name||Object.prototype.toString.call(a):null===a?"null":typeof a};k.array={};k.NATIVE_ARRAY_PROTOTYPES=k.TRUSTED_SITE;k.array.ASSUME_NATIVE_FUNCTIONS=!1;k.array.peek=function(a){return a[a.length-1]};k.array.last=k.array.peek;k.array.indexOf=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.indexOf)?function(a,c,d){k.asserts.assert(null!=a.length);return Array.prototype.indexOf.call(a,c,d)}:function(a,c,d){d=null==d?0:0>d?Math.max(0,a.length+d):d;if(k.isString(a))return k.isString(c)&&1==c.length?a.indexOf(c,d):-1;for(;d<a.length;d++)if(d in a&&a[d]===c)return d;return-1};k.array.lastIndexOf=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.lastIndexOf)?function(a,c,d){k.asserts.assert(null!=a.length);d=null==d?a.length-1:d;return Array.prototype.lastIndexOf.call(a,c,d)}:function(a,c,d){d=null==d?a.length-1:d;0>d&&(d=Math.max(0,a.length+d));if(k.isString(a))return k.isString(c)&&1==c.length?a.lastIndexOf(c,d):-1;for(;0<=d;d--)if(d in a&&a[d]===c)return d;return-1};k.array.forEach=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.forEach)?function(a,c,d){k.asserts.assert(null!=a.length);Array.prototype.forEach.call(a,c,d)}:function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,g=0;g<e;g++)g in f&&c.call(d,f[g],g,a)};k.array.forEachRight=function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,e=e-1;0<=e;--e)e in f&&c.call(d,f[e],e,a)};k.array.filter=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.filter)?function(a,c,d){k.asserts.assert(null!=a.length);return Array.prototype.filter.call(a,c,d)}:function(a,c,d){for(var e=a.length,f=[],g=0,h=k.isString(a)?a.split(""):a,l=0;l<e;l++)if(l in h){var m=h[l];c.call(d,m,l,a)&&(f[g++]=m)}return f};k.array.map=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.map)?function(a,c,d){k.asserts.assert(null!=a.length);return Array.prototype.map.call(a,c,d)}:function(a,c,d){for(var e=a.length,f=Array(e),g=k.isString(a)?a.split(""):a,h=0;h<e;h++)h in g&&(f[h]=c.call(d,g[h],h,a));return f};k.array.reduce=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.reduce)?function(a,c,d,e){k.asserts.assert(null!=a.length);e&&(c=k.bind(c,e));return Array.prototype.reduce.call(a,c,d)}:function(a,c,d,e){var f=d;k.array.forEach(a,function(d,h){f=c.call(e,f,d,h,a)});return f};k.array.reduceRight=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.reduceRight)?function(a,c,d,e){k.asserts.assert(null!=a.length);k.asserts.assert(null!=c);e&&(c=k.bind(c,e));return Array.prototype.reduceRight.call(a,c,d)}:function(a,c,d,e){var f=d;k.array.forEachRight(a,function(d,h){f=c.call(e,f,d,h,a)});return f};k.array.some=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.some)?function(a,c,d){k.asserts.assert(null!=a.length);return Array.prototype.some.call(a,c,d)}:function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,g=0;g<e;g++)if(g in f&&c.call(d,f[g],g,a))return!0;return!1};k.array.every=k.NATIVE_ARRAY_PROTOTYPES&&(k.array.ASSUME_NATIVE_FUNCTIONS||Array.prototype.every)?function(a,c,d){k.asserts.assert(null!=a.length);return Array.prototype.every.call(a,c,d)}:function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,g=0;g<e;g++)if(g in f&&!c.call(d,f[g],g,a))return!1;return!0};k.array.count=function(a,c,d){var e=0;k.array.forEach(a,function(a,g,h){c.call(d,a,g,h)&&++e},d);return e};k.array.find=function(a,c,d){c=k.array.findIndex(a,c,d);return 0>c?null:k.isString(a)?a.charAt(c):a[c]};k.array.findIndex=function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,g=0;g<e;g++)if(g in f&&c.call(d,f[g],g,a))return g;return-1};k.array.findRight=function(a,c,d){c=k.array.findIndexRight(a,c,d);return 0>c?null:k.isString(a)?a.charAt(c):a[c]};k.array.findIndexRight=function(a,c,d){for(var e=a.length,f=k.isString(a)?a.split(""):a,e=e-1;0<=e;e--)if(e in f&&c.call(d,f[e],e,a))return e;return-1};k.array.contains=function(a,c){return 0<=k.array.indexOf(a,c)};k.array.isEmpty=function(a){return 0==a.length};k.array.clear=function(a){if(!k.isArray(a))for(var c=a.length-1;0<=c;c--)delete a[c];a.length=0};k.array.insert=function(a,c){k.array.contains(a,c)||a.push(c)};k.array.insertAt=function(a,c,d){k.array.splice(a,d,0,c)};k.array.insertArrayAt=function(a,c,d){k.partial(k.array.splice,a,d,0).apply(null,c)};k.array.insertBefore=function(a,c,d){var e;2==arguments.length||0>(e=k.array.indexOf(a,d))?a.push(c):k.array.insertAt(a,c,e)};k.array.remove=function(a,c){var d=k.array.indexOf(a,c),e;(e=0<=d)&&k.array.removeAt(a,d);return e};k.array.removeAt=function(a,c){k.asserts.assert(null!=a.length);return 1==Array.prototype.splice.call(a,c,1).length};k.array.removeIf=function(a,c,d){c=k.array.findIndex(a,c,d);return 0<=c?(k.array.removeAt(a,c),!0):!1};k.array.removeAllIf=function(a,c,d){var e=0;k.array.forEachRight(a,function(f,g){c.call(d,f,g,a)&&k.array.removeAt(a,g)&&e++});return e};k.array.concat=function(a){return Array.prototype.concat.apply(Array.prototype,arguments)};k.array.join=function(a){return Array.prototype.concat.apply(Array.prototype,arguments)};k.array.toArray=function(a){var c=a.length;if(0<c){for(var d=Array(c),e=0;e<c;e++)d[e]=a[e];return d}return[]};k.array.clone=k.array.toArray;k.array.extend=function(a,c){for(var d=1;d<arguments.length;d++){var e=arguments[d];if(k.isArrayLike(e)){var f=a.length||0,g=e.length||0;a.length=f+g;for(var h=0;h<g;h++)a[f+h]=e[h]}else a.push(e)}};k.array.splice=function(a,c,d,e){k.asserts.assert(null!=a.length);return Array.prototype.splice.apply(a,k.array.slice(arguments,1))};k.array.slice=function(a,c,d){k.asserts.assert(null!=a.length);return 2>=arguments.length?Array.prototype.slice.call(a,c):Array.prototype.slice.call(a,c,d)};k.array.removeDuplicates=function(a,c,d){c=c||a;var e=function(a){return k.isObject(a)?"o"+k.getUid(a):(typeof a).charAt(0)+a};d=d||e;for(var e={},f=0,g=0;g<a.length;){var h=a[g++],l=d(h);Object.prototype.hasOwnProperty.call(e,l)||(e[l]=!0,c[f++]=h)}c.length=f};k.array.binarySearch=function(a,c,d){return k.array.binarySearch_(a,d||k.array.defaultCompare,!1,c)};k.array.binarySelect=function(a,c,d){return k.array.binarySearch_(a,c,!0,void 0,d)};k.array.binarySearch_=function(a,c,d,e,f){for(var g=0,h=a.length,l;g<h;){var m=g+h>>1,n;n=d?c.call(f,a[m],m,a):c(e,a[m]);0<n?g=m+1:(h=m,l=!n)}return l?g:~g};k.array.sort=function(a,c){a.sort(c||k.array.defaultCompare)};k.array.stableSort=function(a,c){function d(a,c){return f(a.value,c.value)||a.index-c.index}for(var e=0;e<a.length;e++)a[e]={index:e,value:a[e]};var f=c||k.array.defaultCompare;k.array.sort(a,d);for(e=0;e<a.length;e++)a[e]=a[e].value};k.array.sortByKey=function(a,c,d){var e=d||k.array.defaultCompare;k.array.sort(a,function(a,d){return e(c(a),c(d))})};k.array.sortObjectsByKey=function(a,c,d){k.array.sortByKey(a,function(a){return a[c]},d)};k.array.isSorted=function(a,c,d){c=c||k.array.defaultCompare;for(var e=1;e<a.length;e++){var f=c(a[e-1],a[e]);if(0<f||0==f&&d)return!1}return!0};k.array.equals=function(a,c,d){if(!k.isArrayLike(a)||!k.isArrayLike(c)||a.length!=c.length)return!1;var e=a.length;d=d||k.array.defaultCompareEquality;for(var f=0;f<e;f++)if(!d(a[f],c[f]))return!1;return!0};k.array.compare3=function(a,c,d){d=d||k.array.defaultCompare;for(var e=Math.min(a.length,c.length),f=0;f<e;f++){var g=d(a[f],c[f]);if(0!=g)return g}return k.array.defaultCompare(a.length,c.length)};k.array.defaultCompare=function(a,c){return a>c?1:a<c?-1:0};k.array.inverseDefaultCompare=function(a,c){return-k.array.defaultCompare(a,c)};k.array.defaultCompareEquality=function(a,c){return a===c};k.array.binaryInsert=function(a,c,d){d=k.array.binarySearch(a,c,d);return 0>d?(k.array.insertAt(a,c,-(d+1)),!0):!1};k.array.binaryRemove=function(a,c,d){c=k.array.binarySearch(a,c,d);return 0<=c?k.array.removeAt(a,c):!1};k.array.bucket=function(a,c,d){for(var e={},f=0;f<a.length;f++){var g=a[f],h=c.call(d,g,f,a);k.isDef(h)&&(h=e[h]||(e[h]=[]),h.push(g))}return e};k.array.toObject=function(a,c,d){var e={};k.array.forEach(a,function(f,g){e[c.call(d,f,g,a)]=f});return e};k.array.range=function(a,c,d){var e=[],f=0,g=a;d=d||1;void 0!==c&&(f=a,g=c);if(0>d*(g-f))return[];if(0<d)for(a=f;a<g;a+=d)e.push(a);else for(a=f;a>g;a+=d)e.push(a);return e};k.array.repeat=function(a,c){for(var d=[],e=0;e<c;e++)d[e]=a;return d};k.array.flatten=function(a){for(var c=[],d=0;d<arguments.length;d++){var e=arguments[d];if(k.isArray(e))for(var f=0;f<e.length;f+=8192)for(var g=k.array.slice(e,f,f+8192),g=k.array.flatten.apply(null,g),h=0;h<g.length;h++)c.push(g[h]);else c.push(e)}return c};k.array.rotate=function(a,c){k.asserts.assert(null!=a.length);a.length&&(c%=a.length,0<c?Array.prototype.unshift.apply(a,a.splice(-c,c)):0>c&&Array.prototype.push.apply(a,a.splice(0,-c)));return a};k.array.moveItem=function(a,c,d){k.asserts.assert(0<=c&&c<a.length);k.asserts.assert(0<=d&&d<a.length);c=Array.prototype.splice.call(a,c,1);Array.prototype.splice.call(a,d,0,c[0])};k.array.zip=function(a){if(!arguments.length)return[];for(var c=[],d=arguments[0].length,e=1;e<arguments.length;e++)arguments[e].length<d&&(d=arguments[e].length);for(e=0;e<d;e++){for(var f=[],g=0;g<arguments.length;g++)f.push(arguments[g][e]);c.push(f)}return c};k.array.shuffle=function(a,c){for(var d=c||Math.random,e=a.length-1;0<e;e--){var f=Math.floor(d()*(e+1)),g=a[e];a[e]=a[f];a[f]=g}};k.array.copyByIndex=function(a,c){var d=[];k.array.forEach(c,function(c){d.push(a[c])});return d};k.dom.TagName={A:"A",ABBR:"ABBR",ACRONYM:"ACRONYM",ADDRESS:"ADDRESS",APPLET:"APPLET",AREA:"AREA",ARTICLE:"ARTICLE",ASIDE:"ASIDE",AUDIO:"AUDIO",B:"B",BASE:"BASE",BASEFONT:"BASEFONT",BDI:"BDI",BDO:"BDO",BIG:"BIG",BLOCKQUOTE:"BLOCKQUOTE",BODY:"BODY",BR:"BR",BUTTON:"BUTTON",CANVAS:"CANVAS",CAPTION:"CAPTION",CENTER:"CENTER",CITE:"CITE",CODE:"CODE",COL:"COL",COLGROUP:"COLGROUP",COMMAND:"COMMAND",DATA:"DATA",DATALIST:"DATALIST",DD:"DD",DEL:"DEL",DETAILS:"DETAILS",DFN:"DFN",DIALOG:"DIALOG",DIR:"DIR",DIV:"DIV",DL:"DL",DT:"DT",EM:"EM",EMBED:"EMBED",FIELDSET:"FIELDSET",FIGCAPTION:"FIGCAPTION",FIGURE:"FIGURE",FONT:"FONT",FOOTER:"FOOTER",FORM:"FORM",FRAME:"FRAME",FRAMESET:"FRAMESET",H1:"H1",H2:"H2",H3:"H3",H4:"H4",H5:"H5",H6:"H6",HEAD:"HEAD",HEADER:"HEADER",HGROUP:"HGROUP",HR:"HR",HTML:"HTML",I:"I",IFRAME:"IFRAME",IMG:"IMG",INPUT:"INPUT",INS:"INS",ISINDEX:"ISINDEX",KBD:"KBD",KEYGEN:"KEYGEN",LABEL:"LABEL",LEGEND:"LEGEND",LI:"LI",LINK:"LINK",MAP:"MAP",MARK:"MARK",MATH:"MATH",MENU:"MENU",META:"META",METER:"METER",NAV:"NAV",NOFRAMES:"NOFRAMES",NOSCRIPT:"NOSCRIPT",OBJECT:"OBJECT",OL:"OL",OPTGROUP:"OPTGROUP",OPTION:"OPTION",OUTPUT:"OUTPUT",P:"P",PARAM:"PARAM",PRE:"PRE",PROGRESS:"PROGRESS",Q:"Q",RP:"RP",RT:"RT",RUBY:"RUBY",S:"S",SAMP:"SAMP",SCRIPT:"SCRIPT",SECTION:"SECTION",SELECT:"SELECT",SMALL:"SMALL",SOURCE:"SOURCE",SPAN:"SPAN",STRIKE:"STRIKE",STRONG:"STRONG",STYLE:"STYLE",SUB:"SUB",SUMMARY:"SUMMARY",SUP:"SUP",SVG:"SVG",TABLE:"TABLE",TBODY:"TBODY",TD:"TD",TEMPLATE:"TEMPLATE",TEXTAREA:"TEXTAREA",TFOOT:"TFOOT",TH:"TH",THEAD:"THEAD",TIME:"TIME",TITLE:"TITLE",TR:"TR",TRACK:"TRACK",TT:"TT",U:"U",UL:"UL",VAR:"VAR",VIDEO:"VIDEO",WBR:"WBR"};k.object={};k.object.forEach=function(a,c,d){for(var e in a)c.call(d,a[e],e,a)};k.object.filter=function(a,c,d){var e={},f;for(f in a)c.call(d,a[f],f,a)&&(e[f]=a[f]);return e};k.object.map=function(a,c,d){var e={},f;for(f in a)e[f]=c.call(d,a[f],f,a);return e};k.object.some=function(a,c,d){for(var e in a)if(c.call(d,a[e],e,a))return!0;return!1};k.object.every=function(a,c,d){for(var e in a)if(!c.call(d,a[e],e,a))return!1;return!0};k.object.getCount=function(a){var c=0,d;for(d in a)c++;return c};k.object.getAnyKey=function(a){for(var c in a)return c};k.object.getAnyValue=function(a){for(var c in a)return a[c]};k.object.contains=function(a,c){return k.object.containsValue(a,c)};k.object.getValues=function(a){var c=[],d=0,e;for(e in a)c[d++]=a[e];return c};k.object.getKeys=function(a){var c=[],d=0,e;for(e in a)c[d++]=e;return c};k.object.getValueByKeys=function(a,c){for(var d=k.isArrayLike(c),e=d?c:arguments,d=d?0:1;d<e.length&&(a=a[e[d]],k.isDef(a));d++);return a};k.object.containsKey=function(a,c){return null!==a&&c in a};k.object.containsValue=function(a,c){for(var d in a)if(a[d]==c)return!0;return!1};k.object.findKey=function(a,c,d){for(var e in a)if(c.call(d,a[e],e,a))return e};k.object.findValue=function(a,c,d){return(c=k.object.findKey(a,c,d))&&a[c]};k.object.isEmpty=function(a){for(var c in a)return!1;return!0};k.object.clear=function(a){for(var c in a)delete a[c]};k.object.remove=function(a,c){var d;(d=c in a)&&delete a[c];return d};k.object.add=function(a,c,d){if(null!==a&&c in a)throw Error('The object already contains the key "'+c+'"');k.object.set(a,c,d)};k.object.get=function(a,c,d){return null!==a&&c in a?a[c]:d};k.object.set=function(a,c,d){a[c]=d};k.object.setIfUndefined=function(a,c,d){return c in a?a[c]:a[c]=d};k.object.setWithReturnValueIfNotSet=function(a,c,d){if(c in a)return a[c];d=d();return a[c]=d};k.object.equals=function(a,c){for(var d in a)if(!(d in c)||a[d]!==c[d])return!1;for(d in c)if(!(d in a))return!1;return!0};k.object.clone=function(a){var c={},d;for(d in a)c[d]=a[d];return c};k.object.unsafeClone=function(a){var c=k.typeOf(a);if("object"==c||"array"==c){if(k.isFunction(a.clone))return a.clone();var c="array"==c?[]:{},d;for(d in a)c[d]=k.object.unsafeClone(a[d]);return c}return a};k.object.transpose=function(a){var c={},d;for(d in a)c[a[d]]=d;return c};k.object.PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");k.object.extend=function(a,c){for(var d,e,f=1;f<arguments.length;f++){e=arguments[f];for(d in e)a[d]=e[d];for(var g=0;g<k.object.PROTOTYPE_FIELDS_.length;g++)d=k.object.PROTOTYPE_FIELDS_[g],Object.prototype.hasOwnProperty.call(e,d)&&(a[d]=e[d])}};k.object.create=function(a){var c=arguments.length;if(1==c&&k.isArray(arguments[0]))return k.object.create.apply(null,arguments[0]);if(c%2)throw Error("Uneven number of arguments");for(var d={},e=0;e<c;e+=2)d[arguments[e]]=arguments[e+1];return d};k.object.createSet=function(a){var c=arguments.length;if(1==c&&k.isArray(arguments[0]))return k.object.createSet.apply(null,arguments[0]);for(var d={},e=0;e<c;e++)d[arguments[e]]=!0;return d};k.object.createImmutableView=function(a){var c=a;Object.isFrozen&&!Object.isFrozen(a)&&(c=Object.create(a),Object.freeze(c));return c};k.object.isImmutableView=function(a){return!!Object.isFrozen&&Object.isFrozen(a)};k.dom.tags={};k.dom.tags.VOID_TAGS_={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0};k.dom.tags.isVoidTag=function(a){return!0===k.dom.tags.VOID_TAGS_[a]};k.i18n={};k.i18n.bidi={};k.i18n.bidi.FORCE_RTL=!1;k.i18n.bidi.IS_RTL=k.i18n.bidi.FORCE_RTL||("ar"==k.LOCALE.substring(0,2).toLowerCase()||"fa"==k.LOCALE.substring(0,2).toLowerCase()||"he"==k.LOCALE.substring(0,2).toLowerCase()||"iw"==k.LOCALE.substring(0,2).toLowerCase()||"ps"==k.LOCALE.substring(0,2).toLowerCase()||"sd"==k.LOCALE.substring(0,2).toLowerCase()||"ug"==k.LOCALE.substring(0,2).toLowerCase()||"ur"==k.LOCALE.substring(0,2).toLowerCase()||"yi"==k.LOCALE.substring(0,2).toLowerCase())&&(2==k.LOCALE.length||"-"==k.LOCALE.substring(2,3)||"_"== k.LOCALE.substring(2,3))||3<=k.LOCALE.length&&"ckb"==k.LOCALE.substring(0,3).toLowerCase()&&(3==k.LOCALE.length||"-"==k.LOCALE.substring(3,4)||"_"==k.LOCALE.substring(3,4));k.i18n.bidi.Format={LRE:"\u202a",RLE:"\u202b",PDF:"\u202c",LRM:"\u200e",RLM:"\u200f"};k.i18n.bidi.Dir={LTR:1,RTL:-1,NEUTRAL:0};k.i18n.bidi.RIGHT="right";k.i18n.bidi.LEFT="left";k.i18n.bidi.I18N_RIGHT=k.i18n.bidi.IS_RTL?k.i18n.bidi.LEFT:k.i18n.bidi.RIGHT;k.i18n.bidi.I18N_LEFT=k.i18n.bidi.IS_RTL?k.i18n.bidi.RIGHT:k.i18n.bidi.LEFT;k.i18n.bidi.toDir=function(a,c){return"number"==typeof a?0<a?k.i18n.bidi.Dir.LTR:0>a?k.i18n.bidi.Dir.RTL:c?null:k.i18n.bidi.Dir.NEUTRAL:null==a?null:a?k.i18n.bidi.Dir.RTL:k.i18n.bidi.Dir.LTR};k.i18n.bidi.ltrChars_="A-Za-z\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02b8\u0300-\u0590\u0800-\u1fff\u200e\u2c00-\ufb1c\ufe00-\ufe6f\ufefd-\uffff";k.i18n.bidi.rtlChars_="\u0591-\u06ef\u06fa-\u07ff\u200f\ufb1d-\ufdff\ufe70-\ufefc";k.i18n.bidi.htmlSkipReg_=/<[^>]*>|&[^;]+;/g;k.i18n.bidi.stripHtmlIfNeeded_=function(a,c){return c?a.replace(k.i18n.bidi.htmlSkipReg_,""):a};k.i18n.bidi.rtlCharReg_=new RegExp("["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.ltrCharReg_=new RegExp("["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.hasAnyRtl=function(a,c){return k.i18n.bidi.rtlCharReg_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.hasRtlChar=k.i18n.bidi.hasAnyRtl;k.i18n.bidi.hasAnyLtr=function(a,c){return k.i18n.bidi.ltrCharReg_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.ltrRe_=new RegExp("^["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.rtlRe_=new RegExp("^["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.isRtlChar=function(a){return k.i18n.bidi.rtlRe_.test(a)};k.i18n.bidi.isLtrChar=function(a){return k.i18n.bidi.ltrRe_.test(a)};k.i18n.bidi.isNeutralChar=function(a){return!k.i18n.bidi.isLtrChar(a)&&!k.i18n.bidi.isRtlChar(a)};k.i18n.bidi.ltrDirCheckRe_=new RegExp("^[^"+k.i18n.bidi.rtlChars_+"]*["+k.i18n.bidi.ltrChars_+"]");k.i18n.bidi.rtlDirCheckRe_=new RegExp("^[^"+k.i18n.bidi.ltrChars_+"]*["+k.i18n.bidi.rtlChars_+"]");k.i18n.bidi.startsWithRtl=function(a,c){return k.i18n.bidi.rtlDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.isRtlText=k.i18n.bidi.startsWithRtl;k.i18n.bidi.startsWithLtr=function(a,c){return k.i18n.bidi.ltrDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.isLtrText=k.i18n.bidi.startsWithLtr;k.i18n.bidi.isRequiredLtrRe_=/^http:\/\/.*/;k.i18n.bidi.isNeutralText=function(a,c){a=k.i18n.bidi.stripHtmlIfNeeded_(a,c);return k.i18n.bidi.isRequiredLtrRe_.test(a)||!k.i18n.bidi.hasAnyLtr(a)&&!k.i18n.bidi.hasAnyRtl(a)};k.i18n.bidi.ltrExitDirCheckRe_=new RegExp("["+k.i18n.bidi.ltrChars_+"][^"+k.i18n.bidi.rtlChars_+"]*$");k.i18n.bidi.rtlExitDirCheckRe_=new RegExp("["+k.i18n.bidi.rtlChars_+"][^"+k.i18n.bidi.ltrChars_+"]*$");k.i18n.bidi.endsWithLtr=function(a,c){return k.i18n.bidi.ltrExitDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.isLtrExitText=k.i18n.bidi.endsWithLtr;k.i18n.bidi.endsWithRtl=function(a,c){return k.i18n.bidi.rtlExitDirCheckRe_.test(k.i18n.bidi.stripHtmlIfNeeded_(a,c))};k.i18n.bidi.isRtlExitText=k.i18n.bidi.endsWithRtl;k.i18n.bidi.rtlLocalesRe_=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Arab|Hebr|Thaa|Nkoo|Tfng))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;k.i18n.bidi.isRtlLanguage=function(a){return k.i18n.bidi.rtlLocalesRe_.test(a)};k.i18n.bidi.bracketGuardTextRe_=/(\(.*?\)+)|(\[.*?\]+)|(\{.*?\}+)|(<.*?>+)/g;k.i18n.bidi.guardBracketInText=function(a,c){var d=void 0===c?k.i18n.bidi.hasAnyRtl(a):c,d=d?k.i18n.bidi.Format.RLM:k.i18n.bidi.Format.LRM;return a.replace(k.i18n.bidi.bracketGuardTextRe_,d+"$&"+d)};k.i18n.bidi.enforceRtlInHtml=function(a){return"<"==a.charAt(0)?a.replace(/<\w+/,"$& dir=rtl"):"\n<span dir=rtl>"+a+"</span>"};k.i18n.bidi.enforceRtlInText=function(a){return k.i18n.bidi.Format.RLE+a+k.i18n.bidi.Format.PDF};k.i18n.bidi.enforceLtrInHtml=function(a){return"<"==a.charAt(0)?a.replace(/<\w+/,"$& dir=ltr"):"\n<span dir=ltr>"+a+"</span>"};k.i18n.bidi.enforceLtrInText=function(a){return k.i18n.bidi.Format.LRE+a+k.i18n.bidi.Format.PDF};k.i18n.bidi.dimensionsRe_=/:\s*([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)\s+([.\d][.\w]*)/g;k.i18n.bidi.leftRe_=/left/gi;k.i18n.bidi.rightRe_=/right/gi;k.i18n.bidi.tempRe_=/%%%%/g;k.i18n.bidi.mirrorCSS=function(a){return a.replace(k.i18n.bidi.dimensionsRe_,":$1 $4 $3 $2").replace(k.i18n.bidi.leftRe_,"%%%%").replace(k.i18n.bidi.rightRe_,k.i18n.bidi.LEFT).replace(k.i18n.bidi.tempRe_,k.i18n.bidi.RIGHT)};k.i18n.bidi.doubleQuoteSubstituteRe_=/([\u0591-\u05f2])"/g;k.i18n.bidi.singleQuoteSubstituteRe_=/([\u0591-\u05f2])'/g;k.i18n.bidi.normalizeHebrewQuote=function(a){return a.replace(k.i18n.bidi.doubleQuoteSubstituteRe_,"$1\u05f4").replace(k.i18n.bidi.singleQuoteSubstituteRe_,"$1\u05f3")};k.i18n.bidi.wordSeparatorRe_=/\s+/;k.i18n.bidi.hasNumeralsRe_=/[\d\u06f0-\u06f9]/;k.i18n.bidi.rtlDetectionThreshold_=.4;k.i18n.bidi.estimateDirection=function(a,c){for(var d=0,e=0,f=!1,g=k.i18n.bidi.stripHtmlIfNeeded_(a,c).split(k.i18n.bidi.wordSeparatorRe_),h=0;h<g.length;h++){var l=g[h];k.i18n.bidi.startsWithRtl(l)?(d++,e++):k.i18n.bidi.isRequiredLtrRe_.test(l)?f=!0:k.i18n.bidi.hasAnyLtr(l)?e++:k.i18n.bidi.hasNumeralsRe_.test(l)&&(f=!0)}return 0==e?f?k.i18n.bidi.Dir.LTR:k.i18n.bidi.Dir.NEUTRAL:d/e>k.i18n.bidi.rtlDetectionThreshold_?k.i18n.bidi.Dir.RTL:k.i18n.bidi.Dir.LTR};k.i18n.bidi.detectRtlDirectionality=function(a,c){return k.i18n.bidi.estimateDirection(a,c)==k.i18n.bidi.Dir.RTL};k.i18n.bidi.setElementDirAndAlign=function(a,c){a&&(c=k.i18n.bidi.toDir(c))&&(a.style.textAlign=c==k.i18n.bidi.Dir.RTL?k.i18n.bidi.RIGHT:k.i18n.bidi.LEFT,a.dir=c==k.i18n.bidi.Dir.RTL?"rtl":"ltr")};k.i18n.bidi.setElementDirByTextDirectionality=function(a,c){switch(k.i18n.bidi.estimateDirection(c)){case k.i18n.bidi.Dir.LTR:a.dir="ltr";break;case k.i18n.bidi.Dir.RTL:a.dir="rtl";break;default:a.removeAttribute("dir")}};k.i18n.bidi.DirectionalString=function(){};k.labs={};k.labs.userAgent={};k.labs.userAgent.util={};k.labs.userAgent.util.getNativeUserAgentString_=function(){var a=k.labs.userAgent.util.getNavigator_();return a&&(a=a.userAgent)?a:""};k.labs.userAgent.util.getNavigator_=function(){return k.global.navigator};k.labs.userAgent.util.userAgent_=k.labs.userAgent.util.getNativeUserAgentString_();k.labs.userAgent.util.setUserAgent=function(a){k.labs.userAgent.util.userAgent_=a||k.labs.userAgent.util.getNativeUserAgentString_()};k.labs.userAgent.util.getUserAgent=function(){return k.labs.userAgent.util.userAgent_};k.labs.userAgent.util.matchUserAgent=function(a){var c=k.labs.userAgent.util.getUserAgent();return k.string.contains(c,a)};k.labs.userAgent.util.matchUserAgentIgnoreCase=function(a){var c=k.labs.userAgent.util.getUserAgent();return k.string.caseInsensitiveContains(c,a)};k.labs.userAgent.util.extractVersionTuples=function(a){for(var c=RegExp("(\\w[\\w ]+)/([^\\s]+)\\s*(?:\\((.*?)\\))?","g"),d=[],e;e=c.exec(a);)d.push([e[1],e[2],e[3]||void 0]);return d};k.labs.userAgent.browser={};k.labs.userAgent.browser.matchOpera_=function(){return k.labs.userAgent.util.matchUserAgent("Opera")||k.labs.userAgent.util.matchUserAgent("OPR")};k.labs.userAgent.browser.matchIE_=function(){return k.labs.userAgent.util.matchUserAgent("Trident")||k.labs.userAgent.util.matchUserAgent("MSIE")};k.labs.userAgent.browser.matchEdge_=function(){return k.labs.userAgent.util.matchUserAgent("Edge")};k.labs.userAgent.browser.matchFirefox_=function(){return k.labs.userAgent.util.matchUserAgent("Firefox")};k.labs.userAgent.browser.matchSafari_=function(){return k.labs.userAgent.util.matchUserAgent("Safari")&&!(k.labs.userAgent.browser.matchChrome_()||k.labs.userAgent.browser.matchCoast_()||k.labs.userAgent.browser.matchOpera_()||k.labs.userAgent.browser.matchEdge_()||k.labs.userAgent.browser.isSilk()||k.labs.userAgent.util.matchUserAgent("Android"))};k.labs.userAgent.browser.matchCoast_=function(){return k.labs.userAgent.util.matchUserAgent("Coast")};k.labs.userAgent.browser.matchIosWebview_=function(){return(k.labs.userAgent.util.matchUserAgent("iPad")||k.labs.userAgent.util.matchUserAgent("iPhone"))&&!k.labs.userAgent.browser.matchSafari_()&&!k.labs.userAgent.browser.matchChrome_()&&!k.labs.userAgent.browser.matchCoast_()&&k.labs.userAgent.util.matchUserAgent("AppleWebKit")};k.labs.userAgent.browser.matchChrome_=function(){return(k.labs.userAgent.util.matchUserAgent("Chrome")||k.labs.userAgent.util.matchUserAgent("CriOS"))&&!k.labs.userAgent.browser.matchOpera_()&&!k.labs.userAgent.browser.matchEdge_()};k.labs.userAgent.browser.matchAndroidBrowser_=function(){return k.labs.userAgent.util.matchUserAgent("Android")&&!(k.labs.userAgent.browser.isChrome()||k.labs.userAgent.browser.isFirefox()||k.labs.userAgent.browser.isOpera()||k.labs.userAgent.browser.isSilk())};k.labs.userAgent.browser.isOpera=k.labs.userAgent.browser.matchOpera_;k.labs.userAgent.browser.isIE=k.labs.userAgent.browser.matchIE_;k.labs.userAgent.browser.isEdge=k.labs.userAgent.browser.matchEdge_;k.labs.userAgent.browser.isFirefox=k.labs.userAgent.browser.matchFirefox_;k.labs.userAgent.browser.isSafari=k.labs.userAgent.browser.matchSafari_;k.labs.userAgent.browser.isCoast=k.labs.userAgent.browser.matchCoast_;k.labs.userAgent.browser.isIosWebview=k.labs.userAgent.browser.matchIosWebview_;k.labs.userAgent.browser.isChrome=k.labs.userAgent.browser.matchChrome_;k.labs.userAgent.browser.isAndroidBrowser=k.labs.userAgent.browser.matchAndroidBrowser_;k.labs.userAgent.browser.isSilk=function(){return k.labs.userAgent.util.matchUserAgent("Silk")};k.labs.userAgent.browser.getVersion=function(){function a(a){a=k.array.find(a,e);return d[a]||""}var c=k.labs.userAgent.util.getUserAgent();if(k.labs.userAgent.browser.isIE())return k.labs.userAgent.browser.getIEVersion_(c);var c=k.labs.userAgent.util.extractVersionTuples(c),d={};k.array.forEach(c,function(a){var c=a[0];a=a[1];d[c]=a});var e=k.partial(k.object.containsKey,d);return k.labs.userAgent.browser.isOpera()?a(["Version","Opera","OPR"]):k.labs.userAgent.browser.isEdge()?a(["Edge"]):k.labs.userAgent.browser.isChrome()?a(["Chrome","CriOS"]):(c=c[2])&&c[1]||""};k.labs.userAgent.browser.isVersionOrHigher=function(a){return 0<=k.string.compareVersions(k.labs.userAgent.browser.getVersion(),a)};k.labs.userAgent.browser.getIEVersion_=function(a){var c=/rv: *([\d\.]*)/.exec(a);if(c&&c[1])return c[1];var c="",d=/MSIE +([\d\.]+)/.exec(a);if(d&&d[1])if(a=/Trident\/(\d.\d)/.exec(a),"7.0"==d[1])if(a&&a[1])switch(a[1]){case "4.0":c="8.0";break;case "5.0":c="9.0";break;case "6.0":c="10.0";break;case "7.0":c="11.0"}else c="7.0";else c=d[1];return c};k.string.TypedString=function(){};k.string.Const=function(){this.stringConstValueWithSecurityContract__googStringSecurityPrivate_="";this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_=k.string.Const.TYPE_MARKER_};k.string.Const.prototype.implementsGoogStringTypedString=!0;k.string.Const.prototype.getTypedStringValue=function(){return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_};k.string.Const.prototype.toString=function(){return"Const{"+this.stringConstValueWithSecurityContract__googStringSecurityPrivate_+"}"};k.string.Const.unwrap=function(a){if(a instanceof k.string.Const&&a.constructor===k.string.Const&&a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_===k.string.Const.TYPE_MARKER_)return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;k.asserts.fail("expected object of type Const, got '"+a+"'");return"type_error:Const"};k.string.Const.from=function(a){return k.string.Const.create__googStringSecurityPrivate_(a)};k.string.Const.TYPE_MARKER_={};k.string.Const.create__googStringSecurityPrivate_=function(a){var c=new k.string.Const;c.stringConstValueWithSecurityContract__googStringSecurityPrivate_=a;return c};k.html={};k.html.SafeStyle=function(){this.privateDoNotAccessOrElseSafeStyleWrappedValue_="";this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=k.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};k.html.SafeStyle.prototype.implementsGoogStringTypedString=!0;k.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={};k.html.SafeStyle.fromConstant=function(a){a=k.string.Const.unwrap(a);if(0===a.length)return k.html.SafeStyle.EMPTY;k.html.SafeStyle.checkStyle_(a);k.asserts.assert(k.string.endsWith(a,";"),"Last character of style string is not ';': "+a);k.asserts.assert(k.string.contains(a,":"),"Style string must contain at least one ':', to specify a \"name: value\" pair: "+a);return k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeStyle.checkStyle_=function(a){k.asserts.assert(!/[<>]/.test(a),"Forbidden characters in style string: "+a)};k.html.SafeStyle.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeStyleWrappedValue_};k.DEBUG&&(k.html.SafeStyle.prototype.toString=function(){return"SafeStyle{"+this.privateDoNotAccessOrElseSafeStyleWrappedValue_+"}"});k.html.SafeStyle.unwrap=function(a){if(a instanceof k.html.SafeStyle&&a.constructor===k.html.SafeStyle&&a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===k.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_)return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;k.asserts.fail("expected object of type SafeStyle, got '"+a+"'");return"type_error:SafeStyle"};k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse=function(a){return(new k.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a)};k.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_=function(a){this.privateDoNotAccessOrElseSafeStyleWrappedValue_=a;return this};k.html.SafeStyle.EMPTY=k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse("");k.html.SafeStyle.INNOCUOUS_STRING="zClosurez";k.html.SafeStyle.create=function(a){var c="",d;for(d in a){if(!/^[-_a-zA-Z0-9]+$/.test(d))throw Error("Name allows only [-_a-zA-Z0-9], got: "+d);var e=a[d];null!=e&&(e instanceof k.string.Const?(e=k.string.Const.unwrap(e),k.asserts.assert(!/[{;}]/.test(e),"Value does not allow [{;}].")):k.html.SafeStyle.VALUE_RE_.test(e)?k.html.SafeStyle.hasBalancedQuotes_(e)||(k.asserts.fail("String value requires balanced quotes, got: "+e),e=k.html.SafeStyle.INNOCUOUS_STRING):(k.asserts.fail("String value allows only [-,.\"'%_!# a-zA-Z0-9], got: "+ e),e=k.html.SafeStyle.INNOCUOUS_STRING),c+=d+":"+e+";")}if(!c)return k.html.SafeStyle.EMPTY;k.html.SafeStyle.checkStyle_(c);return k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(c)};k.html.SafeStyle.hasBalancedQuotes_=function(a){for(var c=!0,d=!0,e=0;e<a.length;e++){var f=a.charAt(e);"'"==f&&d?c=!c:'"'==f&&c&&(d=!d)}return c&&d};k.html.SafeStyle.VALUE_RE_=/^[-,."'%_!# a-zA-Z0-9]+$/;k.html.SafeStyle.concat=function(a){var c="",d=function(a){k.isArray(a)?k.array.forEach(a,d):c+=k.html.SafeStyle.unwrap(a)};k.array.forEach(arguments,d);return c?k.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(c):k.html.SafeStyle.EMPTY};k.html.SafeStyleSheet=function(){this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_="";this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=k.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};k.html.SafeStyleSheet.prototype.implementsGoogStringTypedString=!0;k.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={};k.html.SafeStyleSheet.concat=function(a){var c="",d=function(a){k.isArray(a)?k.array.forEach(a,d):c+=k.html.SafeStyleSheet.unwrap(a)};k.array.forEach(arguments,d);return k.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c)};k.html.SafeStyleSheet.fromConstant=function(a){a=k.string.Const.unwrap(a);if(0===a.length)return k.html.SafeStyleSheet.EMPTY;k.asserts.assert(!k.string.contains(a,"<"),"Forbidden '<' character in style sheet string: "+a);return k.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeStyleSheet.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_};k.DEBUG&&(k.html.SafeStyleSheet.prototype.toString=function(){return"SafeStyleSheet{"+this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_+"}"});k.html.SafeStyleSheet.unwrap=function(a){if(a instanceof k.html.SafeStyleSheet&&a.constructor===k.html.SafeStyleSheet&&a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===k.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_)return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;k.asserts.fail("expected object of type SafeStyleSheet, got '"+a+"'");return"type_error:SafeStyleSheet"};k.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse=function(a){return(new k.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a)};k.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_=function(a){this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_=a;return this};k.html.SafeStyleSheet.EMPTY=k.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse("");k.fs={};k.fs.url={};k.fs.url.createObjectUrl=function(a){return k.fs.url.getUrlObject_().createObjectURL(a)};k.fs.url.revokeObjectUrl=function(a){k.fs.url.getUrlObject_().revokeObjectURL(a)};k.fs.url.getUrlObject_=function(){var a=k.fs.url.findUrlObject_();if(null!=a)return a;throw Error("This browser doesn't seem to support blob URLs");};k.fs.url.findUrlObject_=function(){return k.isDef(k.global.URL)&&k.isDef(k.global.URL.createObjectURL)?k.global.URL:k.isDef(k.global.webkitURL)&&k.isDef(k.global.webkitURL.createObjectURL)?k.global.webkitURL:k.isDef(k.global.createObjectURL)?k.global:null};k.fs.url.browserSupportsObjectUrls=function(){return null!=k.fs.url.findUrlObject_()};k.html.SafeUrl=function(){this.privateDoNotAccessOrElseSafeHtmlWrappedValue_="";this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=k.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};k.html.SafeUrl.INNOCUOUS_STRING="about:invalid#zClosurez";k.html.SafeUrl.prototype.implementsGoogStringTypedString=!0;k.html.SafeUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_};k.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString=!0;k.html.SafeUrl.prototype.getDirection=function(){return k.i18n.bidi.Dir.LTR};k.DEBUG&&(k.html.SafeUrl.prototype.toString=function(){return"SafeUrl{"+this.privateDoNotAccessOrElseSafeHtmlWrappedValue_+"}"});k.html.SafeUrl.unwrap=function(a){if(a instanceof k.html.SafeUrl&&a.constructor===k.html.SafeUrl&&a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===k.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_)return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;k.asserts.fail("expected object of type SafeUrl, got '"+a+"'");return"type_error:SafeUrl"};k.html.SafeUrl.fromConstant=function(a){return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(k.string.Const.unwrap(a))};k.html.SAFE_MIME_TYPE_PATTERN_=/^(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm))$/i;k.html.SafeUrl.fromBlob=function(a){a=k.html.SAFE_MIME_TYPE_PATTERN_.test(a.type)?k.fs.url.createObjectUrl(a):k.html.SafeUrl.INNOCUOUS_STRING;return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.DATA_URL_PATTERN_=/^data:([^;,]*);base64,[a-z0-9+\/]+=*$/i;k.html.SafeUrl.fromDataUrl=function(a){var c=a.match(k.html.DATA_URL_PATTERN_),c=c&&k.html.SAFE_MIME_TYPE_PATTERN_.test(c[1]);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(c?a:k.html.SafeUrl.INNOCUOUS_STRING)};k.html.SAFE_URL_PATTERN_=/^(?:(?:https?|mailto|ftp):|[^&:/?#]*(?:[/?#]|$))/i;k.html.SafeUrl.sanitize=function(a){if(a instanceof k.html.SafeUrl)return a;a=a.implementsGoogStringTypedString?a.getTypedStringValue():String(a);k.html.SAFE_URL_PATTERN_.test(a)||(a=k.html.SafeUrl.INNOCUOUS_STRING);return k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a)};k.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={};k.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse=function(a){var c=new k.html.SafeUrl;c.privateDoNotAccessOrElseSafeHtmlWrappedValue_=a;return c};k.html.TrustedResourceUrl=function(){this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_="";this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=k.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_};k.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString=!0;k.html.TrustedResourceUrl.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_};k.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString=!0;k.html.TrustedResourceUrl.prototype.getDirection=function(){return k.i18n.bidi.Dir.LTR};k.DEBUG&&(k.html.TrustedResourceUrl.prototype.toString=function(){return"TrustedResourceUrl{"+this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_+"}"});k.html.TrustedResourceUrl.unwrap=function(a){if(a instanceof k.html.TrustedResourceUrl&&a.constructor===k.html.TrustedResourceUrl&&a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===k.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_)return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;k.asserts.fail("expected object of type TrustedResourceUrl, got '"+a+"'");return"type_error:TrustedResourceUrl"};k.html.TrustedResourceUrl.fromConstant=function(a){return k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(k.string.Const.unwrap(a))};k.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={};k.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse=function(a){var c=new k.html.TrustedResourceUrl;c.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_=a;return c};k.html.SafeHtml=function(){this.privateDoNotAccessOrElseSafeHtmlWrappedValue_="";this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_=k.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;this.dir_=null};k.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString=!0;k.html.SafeHtml.prototype.getDirection=function(){return this.dir_};k.html.SafeHtml.prototype.implementsGoogStringTypedString=!0;k.html.SafeHtml.prototype.getTypedStringValue=function(){return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_};k.DEBUG&&(k.html.SafeHtml.prototype.toString=function(){return"SafeHtml{"+this.privateDoNotAccessOrElseSafeHtmlWrappedValue_+"}"});k.html.SafeHtml.unwrap=function(a){if(a instanceof k.html.SafeHtml&&a.constructor===k.html.SafeHtml&&a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_===k.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_)return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;k.asserts.fail("expected object of type SafeHtml, got '"+a+"'");return"type_error:SafeHtml"};k.html.SafeHtml.htmlEscape=function(a){if(a instanceof k.html.SafeHtml)return a;var c=null;a.implementsGoogI18nBidiDirectionalString&&(c=a.getDirection());a=a.implementsGoogStringTypedString?a.getTypedStringValue():String(a);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(k.string.htmlEscape(a),c)};k.html.SafeHtml.htmlEscapePreservingNewlines=function(a){if(a instanceof k.html.SafeHtml)return a;a=k.html.SafeHtml.htmlEscape(a);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(k.string.newLineToBr(k.html.SafeHtml.unwrap(a)),a.getDirection())};k.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces=function(a){if(a instanceof k.html.SafeHtml)return a;a=k.html.SafeHtml.htmlEscape(a);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(k.string.whitespaceEscape(k.html.SafeHtml.unwrap(a)),a.getDirection())};k.html.SafeHtml.from=k.html.SafeHtml.htmlEscape;k.html.SafeHtml.VALID_NAMES_IN_TAG_=/^[a-zA-Z0-9-]+$/;k.html.SafeHtml.URL_ATTRIBUTES_={action:!0,cite:!0,data:!0,formaction:!0,href:!0,manifest:!0,poster:!0,src:!0};k.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_=k.object.createSet(k.dom.TagName.APPLET,k.dom.TagName.BASE,k.dom.TagName.EMBED,k.dom.TagName.IFRAME,k.dom.TagName.LINK,k.dom.TagName.MATH,k.dom.TagName.OBJECT,k.dom.TagName.SCRIPT,k.dom.TagName.STYLE,k.dom.TagName.SVG,k.dom.TagName.TEMPLATE);k.html.SafeHtml.create=function(a,c,d){if(!k.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a))throw Error("Invalid tag name <"+a+">.");if(a.toUpperCase()in k.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_)throw Error("Tag name <"+a+"> is not allowed for SafeHtml.");return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(a,c,d)};k.html.SafeHtml.createIframe=function(a,c,d,e){var f={};f.src=a||null;f.srcdoc=c||null;a={sandbox:""};d=k.html.SafeHtml.combineAttributes(f,a,d);return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("iframe",d,e)};k.html.SafeHtml.createStyle=function(a,c){var d={type:"text/css"},e={},d=k.html.SafeHtml.combineAttributes(d,e,c),e="";a=k.array.concat(a);for(var f=0;f<a.length;f++)e+=k.html.SafeStyleSheet.unwrap(a[f]);e=k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e,k.i18n.bidi.Dir.NEUTRAL);return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("style",d,e)};k.html.SafeHtml.createMetaRefresh=function(a,c){var d=k.html.SafeUrl.unwrap(k.html.SafeUrl.sanitize(a));(k.labs.userAgent.browser.isIE()||k.labs.userAgent.browser.isEdge())&&k.string.contains(d,";")&&(d="'"+d.replace(/'/g,"%27")+"'");d={"http-equiv":"refresh",content:(c||0)+"; url="+d};return k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse("meta",d)};k.html.SafeHtml.getAttrNameAndValue_=function(a,c,d){if(d instanceof k.string.Const)d=k.string.Const.unwrap(d);else if("style"==c.toLowerCase())d=k.html.SafeHtml.getStyleValue_(d);else{if(/^on/i.test(c))throw Error('Attribute "'+c+'" requires goog.string.Const value, "'+d+'" given.');if(c.toLowerCase()in k.html.SafeHtml.URL_ATTRIBUTES_)if(d instanceof k.html.TrustedResourceUrl)d=k.html.TrustedResourceUrl.unwrap(d);else if(d instanceof k.html.SafeUrl)d=k.html.SafeUrl.unwrap(d);else if(k.isString(d))d= k.html.SafeUrl.sanitize(d).getTypedStringValue();else throw Error('Attribute "'+c+'" on tag "'+a+'" requires goog.html.SafeUrl, goog.string.Const, or string, value "'+d+'" given.');}d.implementsGoogStringTypedString&&(d=d.getTypedStringValue());k.asserts.assert(k.isString(d)||k.isNumber(d),"String or number value expected, got "+typeof d+" with value: "+d);return c+'="'+k.string.htmlEscape(String(d))+'"'};k.html.SafeHtml.getStyleValue_=function(a){if(!k.isObject(a))throw Error('The "style" attribute requires goog.html.SafeStyle or map of style properties, '+typeof a+" given: "+a);a instanceof k.html.SafeStyle||(a=k.html.SafeStyle.create(a));return k.html.SafeStyle.unwrap(a)};k.html.SafeHtml.createWithDir=function(a,c,d,e){c=k.html.SafeHtml.create(c,d,e);c.dir_=a;return c};k.html.SafeHtml.concat=function(a){var c=k.i18n.bidi.Dir.NEUTRAL,d="",e=function(a){k.isArray(a)?k.array.forEach(a,e):(a=k.html.SafeHtml.htmlEscape(a),d+=k.html.SafeHtml.unwrap(a),a=a.getDirection(),c==k.i18n.bidi.Dir.NEUTRAL?c=a:a!=k.i18n.bidi.Dir.NEUTRAL&&c!=a&&(c=null))};k.array.forEach(arguments,e);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d,c)};k.html.SafeHtml.concatWithDir=function(a,c){var d=k.html.SafeHtml.concat(k.array.slice(arguments,1));d.dir_=a;return d};k.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_={};k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse=function(a,c){return(new k.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a,c)};k.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_=function(a,c){this.privateDoNotAccessOrElseSafeHtmlWrappedValue_=a;this.dir_=c;return this};k.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse=function(a,c,d){var e=null,f="<"+a;if(c)for(var g in c){if(!k.html.SafeHtml.VALID_NAMES_IN_TAG_.test(g))throw Error('Invalid attribute name "'+g+'".');var h=c[g];k.isDefAndNotNull(h)&&(f+=" "+k.html.SafeHtml.getAttrNameAndValue_(a,g,h))}k.isDefAndNotNull(d)?k.isArray(d)||(d=[d]):d=[];k.dom.tags.isVoidTag(a.toLowerCase())?(k.asserts.assert(!d.length,"Void tag <"+a+"> does not allow content."),f+=">"):(e=k.html.SafeHtml.concat(d),f+= ">"+k.html.SafeHtml.unwrap(e)+"</"+a+">",e=e.getDirection());(a=c&&c.dir)&&(e=/^(ltr|rtl|auto)$/i.test(a)?k.i18n.bidi.Dir.NEUTRAL:null);return k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(f,e)};k.html.SafeHtml.combineAttributes=function(a,c,d){var e={},f;for(f in a)k.asserts.assert(f.toLowerCase()==f,"Must be lower case"),e[f]=a[f];for(f in c)k.asserts.assert(f.toLowerCase()==f,"Must be lower case"),e[f]=c[f];for(f in d){var g=f.toLowerCase();if(g in a)throw Error('Cannot override "'+g+'" attribute, got "'+f+'" with value "'+d[f]+'"');g in c&&delete e[g];e[f]=d[f]}return e};k.html.SafeHtml.DOCTYPE_HTML=k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("<!DOCTYPE html>",k.i18n.bidi.Dir.NEUTRAL);k.html.SafeHtml.EMPTY=k.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse("",k.i18n.bidi.Dir.NEUTRAL);k.math={};k.math.randomInt=function(a){return Math.floor(Math.random()*a)};k.math.uniformRandom=function(a,c){return a+Math.random()*(c-a)};k.math.clamp=function(a,c,d){return Math.min(Math.max(a,c),d)};k.math.modulo=function(a,c){var d=a%c;return 0>d*c?d+c:d};k.math.lerp=function(a,c,d){return a+d*(c-a)};k.math.nearlyEquals=function(a,c,d){return Math.abs(a-c)<=(d||1E-6)};k.math.standardAngle=function(a){return k.math.modulo(a,360)};k.math.standardAngleInRadians=function(a){return k.math.modulo(a,2*Math.PI)};k.math.toRadians=function(a){return a*Math.PI/180};k.math.toDegrees=function(a){return 180*a/Math.PI};k.math.angleDx=function(a,c){return c*Math.cos(k.math.toRadians(a))};k.math.angleDy=function(a,c){return c*Math.sin(k.math.toRadians(a))};k.math.angle=function(a,c,d,e){return k.math.standardAngle(k.math.toDegrees(Math.atan2(e-c,d-a)))};k.math.angleDifference=function(a,c){var d=k.math.standardAngle(c)-k.math.standardAngle(a);180<d?d-=360:-180>=d&&(d=360+d);return d};k.math.sign=Math.sign||function(a){return 0<a?1:0>a?-1:a};k.math.longestCommonSubsequence=function(a,c,d,e){d=d||function(a,c){return a==c};e=e||function(c){return a[c]};for(var f=a.length,g=c.length,h=[],l=0;l<f+1;l++)h[l]=[],h[l][0]=0;for(var m=0;m<g+1;m++)h[0][m]=0;for(l=1;l<=f;l++)for(m=1;m<=g;m++)d(a[l-1],c[m-1])?h[l][m]=h[l-1][m-1]+1:h[l][m]=Math.max(h[l-1][m],h[l][m-1]);for(var n=[],l=f,m=g;0<l&&0<m;)d(a[l-1],c[m-1])?(n.unshift(e(l-1,m-1)),l--,m--):h[l-1][m]>h[l][m-1]?l--:m--;return n};k.math.sum=function(a){return k.array.reduce(arguments,function(a,d){return a+d},0)};k.math.average=function(a){return k.math.sum.apply(null,arguments)/arguments.length};k.math.sampleVariance=function(a){var c=arguments.length;if(2>c)return 0;var d=k.math.average.apply(null,arguments);return c=k.math.sum.apply(null,k.array.map(arguments,function(a){return Math.pow(a-d,2)}))/(c-1)};k.math.standardDeviation=function(a){return Math.sqrt(k.math.sampleVariance.apply(null,arguments))};k.math.isInt=function(a){return isFinite(a)&&0==a%1};k.math.isFiniteNumber=function(a){return isFinite(a)&&!isNaN(a)};k.math.isNegativeZero=function(a){return 0==a&&0>1/a};k.math.log10Floor=function(a){if(0<a){var c=Math.round(Math.log(a)*Math.LOG10E);return c-(parseFloat("1e"+c)>a?1:0)}return 0==a?-Infinity:NaN};k.math.safeFloor=function(a,c){k.asserts.assert(!k.isDef(c)||0<c);return Math.floor(a+(c||2E-15))};k.math.safeCeil=function(a,c){k.asserts.assert(!k.isDef(c)||0<c);return Math.ceil(a-(c||2E-15))};k.math.Coordinate=function(a,c){this.x=k.isDef(a)?a:0;this.y=k.isDef(c)?c:0};k.math.Coordinate.prototype.clone=function(){return new k.math.Coordinate(this.x,this.y)};k.DEBUG&&(k.math.Coordinate.prototype.toString=function(){return"("+this.x+", "+this.y+")"});k.math.Coordinate.equals=function(a,c){return a==c?!0:a&&c?a.x==c.x&&a.y==c.y:!1};k.math.Coordinate.distance=function(a,c){var d=a.x-c.x,e=a.y-c.y;return Math.sqrt(d*d+e*e)};k.math.Coordinate.magnitude=function(a){return Math.sqrt(a.x*a.x+a.y*a.y)};k.math.Coordinate.azimuth=function(a){return k.math.angle(0,0,a.x,a.y)};k.math.Coordinate.squaredDistance=function(a,c){var d=a.x-c.x,e=a.y-c.y;return d*d+e*e};k.math.Coordinate.difference=function(a,c){return new k.math.Coordinate(a.x-c.x,a.y-c.y)};k.math.Coordinate.sum=function(a,c){return new k.math.Coordinate(a.x+c.x,a.y+c.y)};b=k.math.Coordinate.prototype;b.ceil=function(){this.x=Math.ceil(this.x);this.y=Math.ceil(this.y);return this};b.floor=function(){this.x=Math.floor(this.x);this.y=Math.floor(this.y);return this};b.round=function(){this.x=Math.round(this.x);this.y=Math.round(this.y);return this};b.translate=function(a,c){a instanceof k.math.Coordinate?(this.x+=a.x,this.y+=a.y):(this.x+=a,k.isNumber(c)&&(this.y+=c));return this};b.scale=function(a,c){var d=k.isNumber(c)?c:a;this.x*=a;this.y*=d;return this};k.math.Size=function(a,c){this.width=a;this.height=c};k.math.Size.equals=function(a,c){return a==c?!0:a&&c?a.width==c.width&&a.height==c.height:!1};k.math.Size.prototype.clone=function(){return new k.math.Size(this.width,this.height)};k.DEBUG&&(k.math.Size.prototype.toString=function(){return"("+this.width+" x "+this.height+")"});b=k.math.Size.prototype;b.area=function(){return this.width*this.height};b.isEmpty=function(){return!this.area()};b.ceil=function(){this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};b.floor=function(){this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};b.round=function(){this.width=Math.round(this.width);this.height=Math.round(this.height);return this};b.scale=function(a,c){var d=k.isNumber(c)?c:a;this.width*=a;this.height*=d;return this};k.labs.userAgent.engine={};k.labs.userAgent.engine.isPresto=function(){return k.labs.userAgent.util.matchUserAgent("Presto")};k.labs.userAgent.engine.isTrident=function(){return k.labs.userAgent.util.matchUserAgent("Trident")||k.labs.userAgent.util.matchUserAgent("MSIE")};k.labs.userAgent.engine.isEdge=function(){return k.labs.userAgent.util.matchUserAgent("Edge")};k.labs.userAgent.engine.isWebKit=function(){return k.labs.userAgent.util.matchUserAgentIgnoreCase("WebKit")&&!k.labs.userAgent.engine.isEdge()};k.labs.userAgent.engine.isGecko=function(){return k.labs.userAgent.util.matchUserAgent("Gecko")&&!k.labs.userAgent.engine.isWebKit()&&!k.labs.userAgent.engine.isTrident()&&!k.labs.userAgent.engine.isEdge()};k.labs.userAgent.engine.getVersion=function(){var a=k.labs.userAgent.util.getUserAgent();if(a){var a=k.labs.userAgent.util.extractVersionTuples(a),c=k.labs.userAgent.engine.getEngineTuple_(a);if(c)return"Gecko"==c[0]?k.labs.userAgent.engine.getVersionForKey_(a,"Firefox"):c[1];var a=a[0],d;if(a&&(d=a[2])&&(d=/Trident\/([^\s;]+)/.exec(d)))return d[1]}return""};k.labs.userAgent.engine.getEngineTuple_=function(a){if(!k.labs.userAgent.engine.isEdge())return a[1];for(var c=0;c<a.length;c++){var d=a[c];if("Edge"==d[0])return d}};k.labs.userAgent.engine.isVersionOrHigher=function(a){return 0<=k.string.compareVersions(k.labs.userAgent.engine.getVersion(),a)};k.labs.userAgent.engine.getVersionForKey_=function(a,c){var d=k.array.find(a,function(a){return c==a[0]});return d&&d[1]||""};k.labs.userAgent.platform={};k.labs.userAgent.platform.isAndroid=function(){return k.labs.userAgent.util.matchUserAgent("Android")};k.labs.userAgent.platform.isIpod=function(){return k.labs.userAgent.util.matchUserAgent("iPod")};k.labs.userAgent.platform.isIphone=function(){return k.labs.userAgent.util.matchUserAgent("iPhone")&&!k.labs.userAgent.util.matchUserAgent("iPod")&&!k.labs.userAgent.util.matchUserAgent("iPad")};k.labs.userAgent.platform.isIpad=function(){return k.labs.userAgent.util.matchUserAgent("iPad")};k.labs.userAgent.platform.isIos=function(){return k.labs.userAgent.platform.isIphone()||k.labs.userAgent.platform.isIpad()||k.labs.userAgent.platform.isIpod()};k.labs.userAgent.platform.isMacintosh=function(){return k.labs.userAgent.util.matchUserAgent("Macintosh")};k.labs.userAgent.platform.isLinux=function(){return k.labs.userAgent.util.matchUserAgent("Linux")};k.labs.userAgent.platform.isWindows=function(){return k.labs.userAgent.util.matchUserAgent("Windows")};k.labs.userAgent.platform.isChromeOS=function(){return k.labs.userAgent.util.matchUserAgent("CrOS")};k.labs.userAgent.platform.getVersion=function(){var a=k.labs.userAgent.util.getUserAgent(),c="";k.labs.userAgent.platform.isWindows()?(c=/Windows (?:NT|Phone) ([0-9.]+)/,c=(a=c.exec(a))?a[1]:"0.0"):k.labs.userAgent.platform.isIos()?(c=/(?:iPhone|iPod|iPad|CPU)\s+OS\s+(\S+)/,c=(a=c.exec(a))&&a[1].replace(/_/g,".")):k.labs.userAgent.platform.isMacintosh()?(c=/Mac OS X ([0-9_.]+)/,c=(a=c.exec(a))?a[1].replace(/_/g,"."):"10"):k.labs.userAgent.platform.isAndroid()?(c=/Android\s+([^\);]+)(\)|;)/,c=(a=c.exec(a))&& a[1]):k.labs.userAgent.platform.isChromeOS()&&(c=/(?:CrOS\s+(?:i686|x86_64)\s+([0-9.]+))/,c=(a=c.exec(a))&&a[1]);return c||""};k.labs.userAgent.platform.isVersionOrHigher=function(a){return 0<=k.string.compareVersions(k.labs.userAgent.platform.getVersion(),a)};k.userAgent={};k.userAgent.ASSUME_IE=!1;k.userAgent.ASSUME_EDGE=!1;k.userAgent.ASSUME_GECKO=!1;k.userAgent.ASSUME_WEBKIT=!1;k.userAgent.ASSUME_MOBILE_WEBKIT=!1;k.userAgent.ASSUME_OPERA=!1;k.userAgent.ASSUME_ANY_VERSION=!1;k.userAgent.BROWSER_KNOWN_=k.userAgent.ASSUME_IE||k.userAgent.ASSUME_EDGE||k.userAgent.ASSUME_GECKO||k.userAgent.ASSUME_MOBILE_WEBKIT||k.userAgent.ASSUME_WEBKIT||k.userAgent.ASSUME_OPERA;k.userAgent.getUserAgentString=function(){return k.labs.userAgent.util.getUserAgent()};k.userAgent.getNavigator=function(){return k.global.navigator||null};k.userAgent.OPERA=k.userAgent.BROWSER_KNOWN_?k.userAgent.ASSUME_OPERA:k.labs.userAgent.browser.isOpera();k.userAgent.IE=k.userAgent.BROWSER_KNOWN_?k.userAgent.ASSUME_IE:k.labs.userAgent.browser.isIE();k.userAgent.EDGE=k.userAgent.BROWSER_KNOWN_?k.userAgent.ASSUME_EDGE:k.labs.userAgent.engine.isEdge();k.userAgent.EDGE_OR_IE=k.userAgent.EDGE||k.userAgent.IE;k.userAgent.GECKO=k.userAgent.BROWSER_KNOWN_?k.userAgent.ASSUME_GECKO:k.labs.userAgent.engine.isGecko();k.userAgent.WEBKIT=k.userAgent.BROWSER_KNOWN_?k.userAgent.ASSUME_WEBKIT||k.userAgent.ASSUME_MOBILE_WEBKIT:k.labs.userAgent.engine.isWebKit();k.userAgent.isMobile_=function(){return k.userAgent.WEBKIT&&k.labs.userAgent.util.matchUserAgent("Mobile")};k.userAgent.MOBILE=k.userAgent.ASSUME_MOBILE_WEBKIT||k.userAgent.isMobile_();k.userAgent.SAFARI=k.userAgent.WEBKIT;k.userAgent.determinePlatform_=function(){var a=k.userAgent.getNavigator();return a&&a.platform||""};k.userAgent.PLATFORM=k.userAgent.determinePlatform_();k.userAgent.ASSUME_MAC=!1;k.userAgent.ASSUME_WINDOWS=!1;k.userAgent.ASSUME_LINUX=!1;k.userAgent.ASSUME_X11=!1;k.userAgent.ASSUME_ANDROID=!1;k.userAgent.ASSUME_IPHONE=!1;k.userAgent.ASSUME_IPAD=!1;k.userAgent.PLATFORM_KNOWN_=k.userAgent.ASSUME_MAC||k.userAgent.ASSUME_WINDOWS||k.userAgent.ASSUME_LINUX||k.userAgent.ASSUME_X11||k.userAgent.ASSUME_ANDROID||k.userAgent.ASSUME_IPHONE||k.userAgent.ASSUME_IPAD;k.userAgent.MAC=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_MAC:k.labs.userAgent.platform.isMacintosh();k.userAgent.WINDOWS=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_WINDOWS:k.labs.userAgent.platform.isWindows();k.userAgent.isLegacyLinux_=function(){return k.labs.userAgent.platform.isLinux()||k.labs.userAgent.platform.isChromeOS()};k.userAgent.LINUX=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_LINUX:k.userAgent.isLegacyLinux_();k.userAgent.isX11_=function(){var a=k.userAgent.getNavigator();return!!a&&k.string.contains(a.appVersion||"","X11")};k.userAgent.X11=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_X11:k.userAgent.isX11_();k.userAgent.ANDROID=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_ANDROID:k.labs.userAgent.platform.isAndroid();k.userAgent.IPHONE=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_IPHONE:k.labs.userAgent.platform.isIphone();k.userAgent.IPAD=k.userAgent.PLATFORM_KNOWN_?k.userAgent.ASSUME_IPAD:k.labs.userAgent.platform.isIpad();k.userAgent.operaVersion_=function(){var a=k.global.opera.version;try{return a()}catch(c){return a}};k.userAgent.determineVersion_=function(){if(k.userAgent.OPERA&&k.global.opera)return k.userAgent.operaVersion_();var a="",c=k.userAgent.getVersionRegexResult_();c&&(a=c?c[1]:"");return k.userAgent.IE&&(c=k.userAgent.getDocumentMode_(),c>parseFloat(a))?String(c):a};k.userAgent.getVersionRegexResult_=function(){var a=k.userAgent.getUserAgentString();if(k.userAgent.GECKO)return/rv\:([^\);]+)(\)|;)/.exec(a);if(k.userAgent.EDGE)return/Edge\/([\d\.]+)/.exec(a);if(k.userAgent.IE)return/\b(?:MSIE|rv)[:]([^\);]+)(\)|;)/.exec(a);if(k.userAgent.WEBKIT)return/WebKit\/(\S+)/.exec(a)};k.userAgent.getDocumentMode_=function(){var a=k.global.document;return a?a.documentMode:void 0};k.userAgent.VERSION=k.userAgent.determineVersion_();k.userAgent.compare=function(a,c){return k.string.compareVersions(a,c)};k.userAgent.isVersionOrHigherCache_={};k.userAgent.isVersionOrHigher=function(a){return k.userAgent.ASSUME_ANY_VERSION||k.userAgent.isVersionOrHigherCache_[a]||(k.userAgent.isVersionOrHigherCache_[a]=0<=k.string.compareVersions(k.userAgent.VERSION,a))};k.userAgent.isVersion=k.userAgent.isVersionOrHigher;k.userAgent.isDocumentModeOrHigher=function(a){return k.userAgent.DOCUMENT_MODE>=a};k.userAgent.isDocumentMode=k.userAgent.isDocumentModeOrHigher;var r;var t=k.global.document,u=k.userAgent.getDocumentMode_();r=t&&k.userAgent.IE?u||("CSS1Compat"==t.compatMode?parseInt(k.userAgent.VERSION,10):5):void 0;k.userAgent.DOCUMENT_MODE=r;k.dom.BrowserFeature={CAN_ADD_NAME_OR_TYPE_ATTRIBUTES:!k.userAgent.IE||k.userAgent.isDocumentModeOrHigher(9),CAN_USE_CHILDREN_ATTRIBUTE:!k.userAgent.GECKO&&!k.userAgent.IE||k.userAgent.IE&&k.userAgent.isDocumentModeOrHigher(9)||k.userAgent.GECKO&&k.userAgent.isVersionOrHigher("1.9.1"),CAN_USE_INNER_TEXT:k.userAgent.IE&&!k.userAgent.isVersionOrHigher("9"),CAN_USE_PARENT_ELEMENT_PROPERTY:k.userAgent.IE||k.userAgent.OPERA||k.userAgent.WEBKIT,INNER_HTML_NEEDS_SCOPED_ELEMENT:k.userAgent.IE,LEGACY_IE_RANGES:k.userAgent.IE&& !k.userAgent.isDocumentModeOrHigher(9)};k.dom.safe={};k.dom.safe.InsertAdjacentHtmlPosition={AFTERBEGIN:"afterbegin",AFTEREND:"afterend",BEFOREBEGIN:"beforebegin",BEFOREEND:"beforeend"};k.dom.safe.insertAdjacentHtml=function(a,c,d){a.insertAdjacentHTML(c,k.html.SafeHtml.unwrap(d))};k.dom.safe.setInnerHtml=function(a,c){a.innerHTML=k.html.SafeHtml.unwrap(c)};k.dom.safe.setOuterHtml=function(a,c){a.outerHTML=k.html.SafeHtml.unwrap(c)};k.dom.safe.documentWrite=function(a,c){a.write(k.html.SafeHtml.unwrap(c))};k.dom.safe.setAnchorHref=function(a,c){var d;d=c instanceof k.html.SafeUrl?c:k.html.SafeUrl.sanitize(c);a.href=k.html.SafeUrl.unwrap(d)};k.dom.safe.setImageSrc=function(a,c){var d;d=c instanceof k.html.SafeUrl?c:k.html.SafeUrl.sanitize(c);a.src=k.html.SafeUrl.unwrap(d)};k.dom.safe.setEmbedSrc=function(a,c){a.src=k.html.TrustedResourceUrl.unwrap(c)};k.dom.safe.setFrameSrc=function(a,c){a.src=k.html.TrustedResourceUrl.unwrap(c)};k.dom.safe.setIframeSrc=function(a,c){a.src=k.html.TrustedResourceUrl.unwrap(c)};k.dom.safe.setLinkHrefAndRel=function(a,c,d){a.rel=d;k.string.caseInsensitiveContains(d,"stylesheet")?(k.asserts.assert(c instanceof k.html.TrustedResourceUrl,'URL must be TrustedResourceUrl because "rel" contains "stylesheet"'),a.href=k.html.TrustedResourceUrl.unwrap(c)):a.href=c instanceof k.html.TrustedResourceUrl?k.html.TrustedResourceUrl.unwrap(c):c instanceof k.html.SafeUrl?k.html.SafeUrl.unwrap(c):k.html.SafeUrl.sanitize(c).getTypedStringValue()};k.dom.safe.setObjectData=function(a,c){a.data=k.html.TrustedResourceUrl.unwrap(c)};k.dom.safe.setScriptSrc=function(a,c){a.src=k.html.TrustedResourceUrl.unwrap(c)};k.dom.safe.setLocationHref=function(a,c){var d;d=c instanceof k.html.SafeUrl?c:k.html.SafeUrl.sanitize(c);a.href=k.html.SafeUrl.unwrap(d)};k.dom.safe.openInWindow=function(a,c,d,e,f){a=a instanceof k.html.SafeUrl?a:k.html.SafeUrl.sanitize(a);c=c||window;return c.open(k.html.SafeUrl.unwrap(a),d?k.string.Const.unwrap(d):"",e,f)};k.dom.ASSUME_QUIRKS_MODE=!1;k.dom.ASSUME_STANDARDS_MODE=!1;k.dom.COMPAT_MODE_KNOWN_=k.dom.ASSUME_QUIRKS_MODE||k.dom.ASSUME_STANDARDS_MODE;k.dom.getDomHelper=function(a){return a?new k.dom.DomHelper(k.dom.getOwnerDocument(a)):k.dom.defaultDomHelper_||(k.dom.defaultDomHelper_=new k.dom.DomHelper)};k.dom.getDocument=function(){return document};k.dom.getElement=function(a){return k.dom.getElementHelper_(document,a)};k.dom.getElementHelper_=function(a,c){return k.isString(c)?a.getElementById(c):c};k.dom.getRequiredElement=function(a){return k.dom.getRequiredElementHelper_(document,a)};k.dom.getRequiredElementHelper_=function(a,c){k.asserts.assertString(c);var d=k.dom.getElementHelper_(a,c);return d=k.asserts.assertElement(d,"No element found with id: "+c)};k.dom.$=k.dom.getElement;k.dom.getElementsByTagNameAndClass=function(a,c,d){return k.dom.getElementsByTagNameAndClass_(document,a,c,d)};k.dom.getElementsByClass=function(a,c){var d=c||document;return k.dom.canUseQuerySelector_(d)?d.querySelectorAll("."+a):k.dom.getElementsByTagNameAndClass_(document,"*",a,c)};k.dom.getElementByClass=function(a,c){var d=c||document,e=null;return(e=d.getElementsByClassName?d.getElementsByClassName(a)[0]:k.dom.canUseQuerySelector_(d)?d.querySelector("."+a):k.dom.getElementsByTagNameAndClass_(document,"*",a,c)[0])||null};k.dom.getRequiredElementByClass=function(a,c){var d=k.dom.getElementByClass(a,c);return k.asserts.assert(d,"No element found with className: "+a)};k.dom.canUseQuerySelector_=function(a){return!(!a.querySelectorAll||!a.querySelector)};k.dom.getElementsByTagNameAndClass_=function(a,c,d,e){a=e||a;c=c&&"*"!=c?c.toUpperCase():"";if(k.dom.canUseQuerySelector_(a)&&(c||d))return d=c+(d?"."+d:""),a.querySelectorAll(d);if(d&&a.getElementsByClassName){a=a.getElementsByClassName(d);if(c){e={};for(var f=0,g=0,h;h=a[g];g++)c==h.nodeName&&(e[f++]=h);e.length=f;return e}return a}a=a.getElementsByTagName(c||"*");if(d){e={};for(g=f=0;h=a[g];g++)c=h.className,"function"==typeof c.split&&k.array.contains(c.split(/\s+/),d)&&(e[f++]=h);e.length=f;return e}return a};k.dom.$$=k.dom.getElementsByTagNameAndClass;k.dom.setProperties=function(a,c){k.object.forEach(c,function(c,e){"style"==e?a.style.cssText=c:"class"==e?a.className=c:"for"==e?a.htmlFor=c:k.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(e)?a.setAttribute(k.dom.DIRECT_ATTRIBUTE_MAP_[e],c):k.string.startsWith(e,"aria-")||k.string.startsWith(e,"data-")?a.setAttribute(e,c):a[e]=c})};k.dom.DIRECT_ATTRIBUTE_MAP_={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};k.dom.getViewportSize=function(a){return k.dom.getViewportSize_(a||window)};k.dom.getViewportSize_=function(a){a=a.document;a=k.dom.isCss1CompatMode_(a)?a.documentElement:a.body;return new k.math.Size(a.clientWidth,a.clientHeight)};k.dom.getDocumentHeight=function(){return k.dom.getDocumentHeight_(window)};k.dom.getDocumentHeight_=function(a){var c=a.document,d=0;if(c){var d=c.body,e=c.documentElement;if(!e||!d)return 0;a=k.dom.getViewportSize_(a).height;if(k.dom.isCss1CompatMode_(c)&&e.scrollHeight)d=e.scrollHeight!=a?e.scrollHeight:e.offsetHeight;else{var c=e.scrollHeight,f=e.offsetHeight;e.clientHeight!=f&&(c=d.scrollHeight,f=d.offsetHeight);d=c>a?c>f?c:f:c<f?c:f}}return d};k.dom.getPageScroll=function(a){a=a||k.global||window;return k.dom.getDomHelper(a.document).getDocumentScroll()};k.dom.getDocumentScroll=function(){return k.dom.getDocumentScroll_(document)};k.dom.getDocumentScroll_=function(a){var c=k.dom.getDocumentScrollElement_(a);a=k.dom.getWindow_(a);return k.userAgent.IE&&k.userAgent.isVersionOrHigher("10")&&a.pageYOffset!=c.scrollTop?new k.math.Coordinate(c.scrollLeft,c.scrollTop):new k.math.Coordinate(a.pageXOffset||c.scrollLeft,a.pageYOffset||c.scrollTop)};k.dom.getDocumentScrollElement=function(){return k.dom.getDocumentScrollElement_(document)};k.dom.getDocumentScrollElement_=function(a){return a.scrollingElement?a.scrollingElement:!k.userAgent.WEBKIT&&k.dom.isCss1CompatMode_(a)?a.documentElement:a.body||a.documentElement};k.dom.getWindow=function(a){return a?k.dom.getWindow_(a):window};k.dom.getWindow_=function(a){return a.parentWindow||a.defaultView};k.dom.createDom=function(a,c,d){return k.dom.createDom_(document,arguments)};k.dom.createDom_=function(a,c){var d=c[0],e=c[1];if(!k.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES&&e&&(e.name||e.type)){d=["<",d];e.name&&d.push(' name="',k.string.htmlEscape(e.name),'"');if(e.type){d.push(' type="',k.string.htmlEscape(e.type),'"');var f={};k.object.extend(f,e);delete f.type;e=f}d.push(">");d=d.join("")}d=a.createElement(d);e&&(k.isString(e)?d.className=e:k.isArray(e)?d.className=e.join(" "):k.dom.setProperties(d,e));2<c.length&&k.dom.append_(a,d,c,2);return d};k.dom.append_=function(a,c,d,e){function f(d){d&&c.appendChild(k.isString(d)?a.createTextNode(d):d)}for(;e<d.length;e++){var g=d[e];k.isArrayLike(g)&&!k.dom.isNodeLike(g)?k.array.forEach(k.dom.isNodeList(g)?k.array.toArray(g):g,f):f(g)}};k.dom.$dom=k.dom.createDom;k.dom.createElement=function(a){return document.createElement(a)};k.dom.createTextNode=function(a){return document.createTextNode(String(a))};k.dom.createTable=function(a,c,d){return k.dom.createTable_(document,a,c,!!d)};k.dom.createTable_=function(a,c,d,e){for(var f=a.createElement(k.dom.TagName.TABLE),g=f.appendChild(a.createElement(k.dom.TagName.TBODY)),h=0;h<c;h++){for(var l=a.createElement(k.dom.TagName.TR),m=0;m<d;m++){var n=a.createElement(k.dom.TagName.TD);e&&k.dom.setTextContent(n,k.string.Unicode.NBSP);l.appendChild(n)}g.appendChild(l)}return f};k.dom.safeHtmlToNode=function(a){return k.dom.safeHtmlToNode_(document,a)};k.dom.safeHtmlToNode_=function(a,c){var d=a.createElement(k.dom.TagName.DIV);k.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT?(k.dom.safe.setInnerHtml(d,k.html.SafeHtml.concat(k.html.SafeHtml.create("br"),c)),d.removeChild(d.firstChild)):k.dom.safe.setInnerHtml(d,c);return k.dom.childrenToNode_(a,d)};k.dom.htmlToDocumentFragment=function(a){return k.dom.htmlToDocumentFragment_(document,a)};k.dom.htmlToDocumentFragment_=function(a,c){var d=a.createElement(k.dom.TagName.DIV);k.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT?(d.innerHTML="<br>"+c,d.removeChild(d.firstChild)):d.innerHTML=c;return k.dom.childrenToNode_(a,d)};k.dom.childrenToNode_=function(a,c){if(1==c.childNodes.length)return c.removeChild(c.firstChild);for(var d=a.createDocumentFragment();c.firstChild;)d.appendChild(c.firstChild);return d};k.dom.isCss1CompatMode=function(){return k.dom.isCss1CompatMode_(document)};k.dom.isCss1CompatMode_=function(a){return k.dom.COMPAT_MODE_KNOWN_?k.dom.ASSUME_STANDARDS_MODE:"CSS1Compat"==a.compatMode};k.dom.canHaveChildren=function(a){if(a.nodeType!=k.dom.NodeType.ELEMENT)return!1;switch(a.tagName){case k.dom.TagName.APPLET:case k.dom.TagName.AREA:case k.dom.TagName.BASE:case k.dom.TagName.BR:case k.dom.TagName.COL:case k.dom.TagName.COMMAND:case k.dom.TagName.EMBED:case k.dom.TagName.FRAME:case k.dom.TagName.HR:case k.dom.TagName.IMG:case k.dom.TagName.INPUT:case k.dom.TagName.IFRAME:case k.dom.TagName.ISINDEX:case k.dom.TagName.KEYGEN:case k.dom.TagName.LINK:case k.dom.TagName.NOFRAMES:case k.dom.TagName.NOSCRIPT:case k.dom.TagName.META:case k.dom.TagName.OBJECT:case k.dom.TagName.PARAM:case k.dom.TagName.SCRIPT:case k.dom.TagName.SOURCE:case k.dom.TagName.STYLE:case k.dom.TagName.TRACK:case k.dom.TagName.WBR:return!1}return!0};k.dom.appendChild=function(a,c){a.appendChild(c)};k.dom.append=function(a,c){k.dom.append_(k.dom.getOwnerDocument(a),a,arguments,1)};k.dom.removeChildren=function(a){for(var c;c=a.firstChild;)a.removeChild(c)};k.dom.insertSiblingBefore=function(a,c){c.parentNode&&c.parentNode.insertBefore(a,c)};k.dom.insertSiblingAfter=function(a,c){c.parentNode&&c.parentNode.insertBefore(a,c.nextSibling)};k.dom.insertChildAt=function(a,c,d){a.insertBefore(c,a.childNodes[d]||null)};k.dom.removeNode=function(a){return a&&a.parentNode?a.parentNode.removeChild(a):null};k.dom.replaceNode=function(a,c){var d=c.parentNode;d&&d.replaceChild(a,c)};k.dom.flattenElement=function(a){var c,d=a.parentNode;if(d&&d.nodeType!=k.dom.NodeType.DOCUMENT_FRAGMENT){if(a.removeNode)return a.removeNode(!1);for(;c=a.firstChild;)d.insertBefore(c,a);return k.dom.removeNode(a)}};k.dom.getChildren=function(a){return k.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE&&void 0!=a.children?a.children:k.array.filter(a.childNodes,function(a){return a.nodeType==k.dom.NodeType.ELEMENT})};k.dom.getFirstElementChild=function(a){return k.isDef(a.firstElementChild)?a.firstElementChild:k.dom.getNextElementNode_(a.firstChild,!0)};k.dom.getLastElementChild=function(a){return k.isDef(a.lastElementChild)?a.lastElementChild:k.dom.getNextElementNode_(a.lastChild,!1)};k.dom.getNextElementSibling=function(a){return k.isDef(a.nextElementSibling)?a.nextElementSibling:k.dom.getNextElementNode_(a.nextSibling,!0)};k.dom.getPreviousElementSibling=function(a){return k.isDef(a.previousElementSibling)?a.previousElementSibling:k.dom.getNextElementNode_(a.previousSibling,!1)};k.dom.getNextElementNode_=function(a,c){for(;a&&a.nodeType!=k.dom.NodeType.ELEMENT;)a=c?a.nextSibling:a.previousSibling;return a};k.dom.getNextNode=function(a){if(!a)return null;if(a.firstChild)return a.firstChild;for(;a&&!a.nextSibling;)a=a.parentNode;return a?a.nextSibling:null};k.dom.getPreviousNode=function(a){if(!a)return null;if(!a.previousSibling)return a.parentNode;for(a=a.previousSibling;a&&a.lastChild;)a=a.lastChild;return a};k.dom.isNodeLike=function(a){return k.isObject(a)&&0<a.nodeType};k.dom.isElement=function(a){return k.isObject(a)&&a.nodeType==k.dom.NodeType.ELEMENT};k.dom.isWindow=function(a){return k.isObject(a)&&a.window==a};k.dom.getParentElement=function(a){var c;if(k.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY&&(c=k.userAgent.IE&&k.userAgent.isVersionOrHigher("9")&&!k.userAgent.isVersionOrHigher("10"),!(c&&k.global.SVGElement&&a instanceof k.global.SVGElement)&&(c=a.parentElement)))return c;c=a.parentNode;return k.dom.isElement(c)?c:null};k.dom.contains=function(a,c){if(!a||!c)return!1;if(a.contains&&c.nodeType==k.dom.NodeType.ELEMENT)return a==c||a.contains(c);if("undefined"!=typeof a.compareDocumentPosition)return a==c||Boolean(a.compareDocumentPosition(c)&16);for(;c&&a!=c;)c=c.parentNode;return c==a};k.dom.compareNodeOrder=function(a,c){if(a==c)return 0;if(a.compareDocumentPosition)return a.compareDocumentPosition(c)&2?1:-1;if(k.userAgent.IE&&!k.userAgent.isDocumentModeOrHigher(9)){if(a.nodeType==k.dom.NodeType.DOCUMENT)return-1;if(c.nodeType==k.dom.NodeType.DOCUMENT)return 1}if("sourceIndex"in a||a.parentNode&&"sourceIndex"in a.parentNode){var d=a.nodeType==k.dom.NodeType.ELEMENT,e=c.nodeType==k.dom.NodeType.ELEMENT;if(d&&e)return a.sourceIndex-c.sourceIndex;var f=a.parentNode,g=c.parentNode;return f==g?k.dom.compareSiblingOrder_(a,c):!d&&k.dom.contains(f,c)?-1*k.dom.compareParentsDescendantNodeIe_(a,c):!e&&k.dom.contains(g,a)?k.dom.compareParentsDescendantNodeIe_(c,a):(d?a.sourceIndex:f.sourceIndex)-(e?c.sourceIndex:g.sourceIndex)}e=k.dom.getOwnerDocument(a);d=e.createRange();d.selectNode(a);d.collapse(!0);e=e.createRange();e.selectNode(c);e.collapse(!0);return d.compareBoundaryPoints(k.global.Range.START_TO_END,e)};k.dom.compareParentsDescendantNodeIe_=function(a,c){var d=a.parentNode;if(d==c)return-1;for(var e=c;e.parentNode!=d;)e=e.parentNode;return k.dom.compareSiblingOrder_(e,a)};k.dom.compareSiblingOrder_=function(a,c){for(var d=c;d=d.previousSibling;)if(d==a)return-1;return 1};k.dom.findCommonAncestor=function(a){var c,d=arguments.length;if(!d)return null;if(1==d)return arguments[0];var e=[],f=Infinity;for(c=0;c<d;c++){for(var g=[],h=arguments[c];h;)g.unshift(h),h=h.parentNode;e.push(g);f=Math.min(f,g.length)}g=null;for(c=0;c<f;c++){for(var h=e[0][c],l=1;l<d;l++)if(h!=e[l][c])return g;g=h}return g};k.dom.getOwnerDocument=function(a){k.asserts.assert(a,"Node cannot be null or undefined.");return a.nodeType==k.dom.NodeType.DOCUMENT?a:a.ownerDocument||a.document};k.dom.getFrameContentDocument=function(a){return a.contentDocument||a.contentWindow.document};k.dom.getFrameContentWindow=function(a){try{return a.contentWindow||(a.contentDocument?k.dom.getWindow(a.contentDocument):null)}catch(c){}return null};k.dom.setTextContent=function(a,c){k.asserts.assert(null!=a,"goog.dom.setTextContent expects a non-null value for node");if("textContent"in a)a.textContent=c;else if(a.nodeType==k.dom.NodeType.TEXT)a.data=c;else if(a.firstChild&&a.firstChild.nodeType==k.dom.NodeType.TEXT){for(;a.lastChild!=a.firstChild;)a.removeChild(a.lastChild);a.firstChild.data=c}else{k.dom.removeChildren(a);var d=k.dom.getOwnerDocument(a);a.appendChild(d.createTextNode(String(c)))}};k.dom.getOuterHtml=function(a){if("outerHTML"in a)return a.outerHTML;var c=k.dom.getOwnerDocument(a),c=c.createElement(k.dom.TagName.DIV);c.appendChild(a.cloneNode(!0));return c.innerHTML};k.dom.findNode=function(a,c){var d=[],e=k.dom.findNodes_(a,c,d,!0);return e?d[0]:void 0};k.dom.findNodes=function(a,c){var d=[];k.dom.findNodes_(a,c,d,!1);return d};k.dom.findNodes_=function(a,c,d,e){if(null!=a)for(a=a.firstChild;a;){if(c(a)&&(d.push(a),e)||k.dom.findNodes_(a,c,d,e))return!0;a=a.nextSibling}return!1};k.dom.TAGS_TO_IGNORE_={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1};k.dom.PREDEFINED_TAG_VALUES_={IMG:" ",BR:"\n"};k.dom.isFocusableTabIndex=function(a){return k.dom.hasSpecifiedTabIndex_(a)&&k.dom.isTabIndexFocusable_(a)};k.dom.setFocusableTabIndex=function(a,c){c?a.tabIndex=0:(a.tabIndex=-1,a.removeAttribute("tabIndex"))};k.dom.isFocusable=function(a){var c;return(c=k.dom.nativelySupportsFocus_(a)?!a.disabled&&(!k.dom.hasSpecifiedTabIndex_(a)||k.dom.isTabIndexFocusable_(a)):k.dom.isFocusableTabIndex(a))&&k.userAgent.IE?k.dom.hasNonZeroBoundingRect_(a):c};k.dom.hasSpecifiedTabIndex_=function(a){a=a.getAttributeNode("tabindex");return k.isDefAndNotNull(a)&&a.specified};k.dom.isTabIndexFocusable_=function(a){a=a.tabIndex;return k.isNumber(a)&&0<=a&&32768>a};k.dom.nativelySupportsFocus_=function(a){return a.tagName==k.dom.TagName.A||a.tagName==k.dom.TagName.INPUT||a.tagName==k.dom.TagName.TEXTAREA||a.tagName==k.dom.TagName.SELECT||a.tagName==k.dom.TagName.BUTTON};k.dom.hasNonZeroBoundingRect_=function(a){a=!k.isFunction(a.getBoundingClientRect)||k.userAgent.IE&&null==a.parentElement?{height:a.offsetHeight,width:a.offsetWidth}:a.getBoundingClientRect();return k.isDefAndNotNull(a)&&0<a.height&&0<a.width};k.dom.getTextContent=function(a){if(k.dom.BrowserFeature.CAN_USE_INNER_TEXT&&"innerText"in a)a=k.string.canonicalizeNewlines(a.innerText);else{var c=[];k.dom.getTextContent_(a,c,!0);a=c.join("")}a=a.replace(/ \xAD /g," ").replace(/\xAD/g,"");a=a.replace(/\u200B/g,"");k.dom.BrowserFeature.CAN_USE_INNER_TEXT||(a=a.replace(/ +/g," "));" "!=a&&(a=a.replace(/^\s*/,""));return a};k.dom.getRawTextContent=function(a){var c=[];k.dom.getTextContent_(a,c,!1);return c.join("")};k.dom.getTextContent_=function(a,c,d){if(!(a.nodeName in k.dom.TAGS_TO_IGNORE_))if(a.nodeType==k.dom.NodeType.TEXT)d?c.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):c.push(a.nodeValue);else if(a.nodeName in k.dom.PREDEFINED_TAG_VALUES_)c.push(k.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);else for(a=a.firstChild;a;)k.dom.getTextContent_(a,c,d),a=a.nextSibling};k.dom.getNodeTextLength=function(a){return k.dom.getTextContent(a).length};k.dom.getNodeTextOffset=function(a,c){for(var d=c||k.dom.getOwnerDocument(a).body,e=[];a&&a!=d;){for(var f=a;f=f.previousSibling;)e.unshift(k.dom.getTextContent(f));a=a.parentNode}return k.string.trimLeft(e.join("")).replace(/ +/g," ").length};k.dom.getNodeAtOffset=function(a,c,d){a=[a];for(var e=0,f=null;0<a.length&&e<c;)if(f=a.pop(),!(f.nodeName in k.dom.TAGS_TO_IGNORE_))if(f.nodeType==k.dom.NodeType.TEXT)var g=f.nodeValue.replace(/(\r\n|\r|\n)/g,"").replace(/ +/g," "),e=e+g.length;else if(f.nodeName in k.dom.PREDEFINED_TAG_VALUES_)e+=k.dom.PREDEFINED_TAG_VALUES_[f.nodeName].length;else for(g=f.childNodes.length-1;0<=g;g--)a.push(f.childNodes[g]);k.isObject(d)&&(d.remainder=f?f.nodeValue.length+c-e-1:0,d.node=f);return f};k.dom.isNodeList=function(a){if(a&&"number"==typeof a.length){if(k.isObject(a))return"function"==typeof a.item||"string"==typeof a.item;if(k.isFunction(a))return"function"==typeof a.item}return!1};k.dom.getAncestorByTagNameAndClass=function(a,c,d,e){if(!c&&!d)return null;var f=c?c.toUpperCase():null;return k.dom.getAncestor(a,function(a){return(!f||a.nodeName==f)&&(!d||k.isString(a.className)&&k.array.contains(a.className.split(/\s+/),d))},!0,e)};k.dom.getAncestorByClass=function(a,c,d){return k.dom.getAncestorByTagNameAndClass(a,null,c,d)};k.dom.getAncestor=function(a,c,d,e){d||(a=a.parentNode);d=null==e;for(var f=0;a&&(d||f<=e);){k.asserts.assert("parentNode"!=a.name);if(c(a))return a;a=a.parentNode;f++}return null};k.dom.getActiveElement=function(a){try{return a&&a.activeElement}catch(c){}return null};k.dom.getPixelRatio=function(){var a=k.dom.getWindow();return k.isDef(a.devicePixelRatio)?a.devicePixelRatio:a.matchMedia?k.dom.matchesPixelRatio_(.75)||k.dom.matchesPixelRatio_(1.5)||k.dom.matchesPixelRatio_(2)||k.dom.matchesPixelRatio_(3)||1:1};k.dom.matchesPixelRatio_=function(a){var c=k.dom.getWindow(),d="(-webkit-min-device-pixel-ratio: "+a+"),(min--moz-device-pixel-ratio: "+a+"),(min-resolution: "+a+"dppx)";return c.matchMedia(d).matches?a:0};k.dom.DomHelper=function(a){this.document_=a||k.global.document||document};b=k.dom.DomHelper.prototype;b.getDomHelper=k.dom.getDomHelper;b.getDocument=function(){return this.document_};b.getElement=function(a){return k.dom.getElementHelper_(this.document_,a)};b.getRequiredElement=function(a){return k.dom.getRequiredElementHelper_(this.document_,a)};b.$=k.dom.DomHelper.prototype.getElement;b.getElementsByTagNameAndClass=function(a,c,d){return k.dom.getElementsByTagNameAndClass_(this.document_,a,c,d)};b.getElementsByClass=function(a,c){var d=c||this.document_;return k.dom.getElementsByClass(a,d)};b.getElementByClass=function(a,c){var d=c||this.document_;return k.dom.getElementByClass(a,d)};b.getRequiredElementByClass=function(a,c){var d=c||this.document_;return k.dom.getRequiredElementByClass(a,d)};b.$$=k.dom.DomHelper.prototype.getElementsByTagNameAndClass;b.setProperties=k.dom.setProperties;b.getViewportSize=function(a){return k.dom.getViewportSize(a||this.getWindow())};b.getDocumentHeight=function(){return k.dom.getDocumentHeight_(this.getWindow())};b.createDom=function(a,c,d){return k.dom.createDom_(this.document_,arguments)};b.$dom=k.dom.DomHelper.prototype.createDom;b.createElement=function(a){return this.document_.createElement(a)};b.createTextNode=function(a){return this.document_.createTextNode(String(a))};b.createTable=function(a,c,d){return k.dom.createTable_(this.document_,a,c,!!d)};b.safeHtmlToNode=function(a){return k.dom.safeHtmlToNode_(this.document_,a)};b.htmlToDocumentFragment=function(a){return k.dom.htmlToDocumentFragment_(this.document_,a)};b.isCss1CompatMode=function(){return k.dom.isCss1CompatMode_(this.document_)};b.getWindow=function(){return k.dom.getWindow_(this.document_)};b.getDocumentScrollElement=function(){return k.dom.getDocumentScrollElement_(this.document_)};b.getDocumentScroll=function(){return k.dom.getDocumentScroll_(this.document_)};b.getActiveElement=function(a){return k.dom.getActiveElement(a||this.document_)};b.appendChild=k.dom.appendChild;b.append=k.dom.append;b.canHaveChildren=k.dom.canHaveChildren;b.removeChildren=k.dom.removeChildren;b.insertSiblingBefore=k.dom.insertSiblingBefore;b.insertSiblingAfter=k.dom.insertSiblingAfter;b.insertChildAt=k.dom.insertChildAt;b.removeNode=k.dom.removeNode;b.replaceNode=k.dom.replaceNode;b.flattenElement=k.dom.flattenElement;b.getChildren=k.dom.getChildren;b.getFirstElementChild=k.dom.getFirstElementChild;b.getLastElementChild=k.dom.getLastElementChild;b.getNextElementSibling=k.dom.getNextElementSibling;b.getPreviousElementSibling=k.dom.getPreviousElementSibling;b.getNextNode=k.dom.getNextNode;b.getPreviousNode=k.dom.getPreviousNode;b.isNodeLike=k.dom.isNodeLike;b.isElement=k.dom.isElement;b.isWindow=k.dom.isWindow;b.getParentElement=k.dom.getParentElement;b.contains=k.dom.contains;b.compareNodeOrder=k.dom.compareNodeOrder;b.findCommonAncestor=k.dom.findCommonAncestor;b.getOwnerDocument=k.dom.getOwnerDocument;b.getFrameContentDocument=k.dom.getFrameContentDocument;b.getFrameContentWindow=k.dom.getFrameContentWindow;b.setTextContent=k.dom.setTextContent;b.getOuterHtml=k.dom.getOuterHtml;b.findNode=k.dom.findNode;b.findNodes=k.dom.findNodes;b.isFocusableTabIndex=k.dom.isFocusableTabIndex;b.setFocusableTabIndex=k.dom.setFocusableTabIndex;b.isFocusable=k.dom.isFocusable;b.getTextContent=k.dom.getTextContent;b.getNodeTextLength=k.dom.getNodeTextLength;b.getNodeTextOffset=k.dom.getNodeTextOffset;b.getNodeAtOffset=k.dom.getNodeAtOffset;b.isNodeList=k.dom.isNodeList;b.getAncestorByTagNameAndClass=k.dom.getAncestorByTagNameAndClass;b.getAncestorByClass=k.dom.getAncestorByClass;b.getAncestor=k.dom.getAncestor;k.dom.vendor={};k.dom.vendor.getVendorJsPrefix=function(){return k.userAgent.WEBKIT?"Webkit":k.userAgent.GECKO?"Moz":k.userAgent.IE?"ms":k.userAgent.OPERA?"O":null};k.dom.vendor.getVendorPrefix=function(){return k.userAgent.WEBKIT?"-webkit":k.userAgent.GECKO?"-moz":k.userAgent.IE?"-ms":k.userAgent.OPERA?"-o":null};k.dom.vendor.getPrefixedPropertyName=function(a,c){if(c&&a in c)return a;var d=k.dom.vendor.getVendorJsPrefix();return d?(d=d.toLowerCase(),d+=k.string.toTitleCase(a),!k.isDef(c)||d in c?d:null):null};k.dom.vendor.getPrefixedEventType=function(a){var c=k.dom.vendor.getVendorJsPrefix()||"";return(c+a).toLowerCase()};k.math.Box=function(a,c,d,e){this.top=a;this.right=c;this.bottom=d;this.left=e};k.math.Box.boundingBox=function(a){for(var c=new k.math.Box(arguments[0].y,arguments[0].x,arguments[0].y,arguments[0].x),d=1;d<arguments.length;d++)c.expandToIncludeCoordinate(arguments[d]);return c};k.math.Box.prototype.clone=function(){return new k.math.Box(this.top,this.right,this.bottom,this.left)};k.DEBUG&&(k.math.Box.prototype.toString=function(){return"("+this.top+"t, "+this.right+"r, "+this.bottom+"b, "+this.left+"l)"});k.math.Box.prototype.contains=function(a){return k.math.Box.contains(this,a)};k.math.Box.prototype.expand=function(a,c,d,e){k.isObject(a)?(this.top-=a.top,this.right+=a.right,this.bottom+=a.bottom,this.left-=a.left):(this.top-=a,this.right+=c,this.bottom+=d,this.left-=e);return this};k.math.Box.prototype.expandToIncludeCoordinate=function(a){this.top=Math.min(this.top,a.y);this.right=Math.max(this.right,a.x);this.bottom=Math.max(this.bottom,a.y);this.left=Math.min(this.left,a.x)};k.math.Box.equals=function(a,c){return a==c?!0:a&&c?a.top==c.top&&a.right==c.right&&a.bottom==c.bottom&&a.left==c.left:!1};k.math.Box.contains=function(a,c){return a&&c?c instanceof k.math.Box?c.left>=a.left&&c.right<=a.right&&c.top>=a.top&&c.bottom<=a.bottom:c.x>=a.left&&c.x<=a.right&&c.y>=a.top&&c.y<=a.bottom:!1};k.math.Box.relativePositionX=function(a,c){return c.x<a.left?c.x-a.left:c.x>a.right?c.x-a.right:0};k.math.Box.relativePositionY=function(a,c){return c.y<a.top?c.y-a.top:c.y>a.bottom?c.y-a.bottom:0};k.math.Box.distance=function(a,c){var d=k.math.Box.relativePositionX(a,c),e=k.math.Box.relativePositionY(a,c);return Math.sqrt(d*d+e*e)};k.math.Box.intersects=function(a,c){return a.left<=c.right&&c.left<=a.right&&a.top<=c.bottom&&c.top<=a.bottom};k.math.Box.intersectsWithPadding=function(a,c,d){return a.left<=c.right+d&&c.left<=a.right+d&&a.top<=c.bottom+d&&c.top<=a.bottom+d};b=k.math.Box.prototype;b.ceil=function(){this.top=Math.ceil(this.top);this.right=Math.ceil(this.right);this.bottom=Math.ceil(this.bottom);this.left=Math.ceil(this.left);return this};b.floor=function(){this.top=Math.floor(this.top);this.right=Math.floor(this.right);this.bottom=Math.floor(this.bottom);this.left=Math.floor(this.left);return this};b.round=function(){this.top=Math.round(this.top);this.right=Math.round(this.right);this.bottom=Math.round(this.bottom);this.left=Math.round(this.left);return this};b.translate=function(a,c){a instanceof k.math.Coordinate?(this.left+=a.x,this.right+=a.x,this.top+=a.y,this.bottom+=a.y):(this.left+=a,this.right+=a,k.isNumber(c)&&(this.top+=c,this.bottom+=c));return this};b.scale=function(a,c){var d=k.isNumber(c)?c:a;this.left*=a;this.right*=a;this.top*=d;this.bottom*=d;return this};k.math.Rect=function(a,c,d,e){this.left=a;this.top=c;this.width=d;this.height=e};k.math.Rect.prototype.clone=function(){return new k.math.Rect(this.left,this.top,this.width,this.height)};k.math.Rect.createFromPositionAndSize=function(a,c){return new k.math.Rect(a.x,a.y,c.width,c.height)};k.math.Rect.createFromBox=function(a){return new k.math.Rect(a.left,a.top,a.right-a.left,a.bottom-a.top)};k.DEBUG&&(k.math.Rect.prototype.toString=function(){return"("+this.left+", "+this.top+" - "+this.width+"w x "+this.height+"h)"});k.math.Rect.equals=function(a,c){return a==c?!0:a&&c?a.left==c.left&&a.width==c.width&&a.top==c.top&&a.height==c.height:!1};k.math.Rect.prototype.intersection=function(a){var c=Math.max(this.left,a.left),d=Math.min(this.left+this.width,a.left+a.width);if(c<=d){var e=Math.max(this.top,a.top);a=Math.min(this.top+this.height,a.top+a.height);if(e<=a)return this.left=c,this.top=e,this.width=d-c,this.height=a-e,!0}return!1};k.math.Rect.intersection=function(a,c){var d=Math.max(a.left,c.left),e=Math.min(a.left+a.width,c.left+c.width);if(d<=e){var f=Math.max(a.top,c.top),g=Math.min(a.top+a.height,c.top+c.height);if(f<=g)return new k.math.Rect(d,f,e-d,g-f)}return null};k.math.Rect.intersects=function(a,c){return a.left<=c.left+c.width&&c.left<=a.left+a.width&&a.top<=c.top+c.height&&c.top<=a.top+a.height};k.math.Rect.prototype.intersects=function(a){return k.math.Rect.intersects(this,a)};k.math.Rect.difference=function(a,c){var d=k.math.Rect.intersection(a,c);if(!d||!d.height||!d.width)return[a.clone()];var d=[],e=a.top,f=a.height,g=a.left+a.width,h=a.top+a.height,l=c.left+c.width,m=c.top+c.height;c.top>a.top&&(d.push(new k.math.Rect(a.left,a.top,a.width,c.top-a.top)),e=c.top,f-=c.top-a.top);m<h&&(d.push(new k.math.Rect(a.left,m,a.width,h-m)),f=m-e);c.left>a.left&&d.push(new k.math.Rect(a.left,e,c.left-a.left,f));l<g&&d.push(new k.math.Rect(l,e,g-l,f));return d};k.math.Rect.prototype.difference=function(a){return k.math.Rect.difference(this,a)};k.math.Rect.prototype.boundingRect=function(a){var c=Math.max(this.left+this.width,a.left+a.width),d=Math.max(this.top+this.height,a.top+a.height);this.left=Math.min(this.left,a.left);this.top=Math.min(this.top,a.top);this.width=c-this.left;this.height=d-this.top};k.math.Rect.boundingRect=function(a,c){if(!a||!c)return null;var d=a.clone();d.boundingRect(c);return d};b=k.math.Rect.prototype;b.contains=function(a){return a instanceof k.math.Rect?this.left<=a.left&&this.left+this.width>=a.left+a.width&&this.top<=a.top&&this.top+this.height>=a.top+a.height:a.x>=this.left&&a.x<=this.left+this.width&&a.y>=this.top&&a.y<=this.top+this.height};b.squaredDistance=function(a){var c=a.x<this.left?this.left-a.x:Math.max(a.x-(this.left+this.width),0);a=a.y<this.top?this.top-a.y:Math.max(a.y-(this.top+this.height),0);return c*c+a*a};b.distance=function(a){return Math.sqrt(this.squaredDistance(a))};b.getSize=function(){return new k.math.Size(this.width,this.height)};b.ceil=function(){this.left=Math.ceil(this.left);this.top=Math.ceil(this.top);this.width=Math.ceil(this.width);this.height=Math.ceil(this.height);return this};b.floor=function(){this.left=Math.floor(this.left);this.top=Math.floor(this.top);this.width=Math.floor(this.width);this.height=Math.floor(this.height);return this};b.round=function(){this.left=Math.round(this.left);this.top=Math.round(this.top);this.width=Math.round(this.width);this.height=Math.round(this.height);return this};b.translate=function(a,c){a instanceof k.math.Coordinate?(this.left+=a.x,this.top+=a.y):(this.left+=a,k.isNumber(c)&&(this.top+=c));return this};b.scale=function(a,c){var d=k.isNumber(c)?c:a;this.left*=a;this.width*=a;this.top*=d;this.height*=d;return this};k.reflect={};k.reflect.object=function(a,c){return c};k.reflect.sinkValue=function(a){k.reflect.sinkValue[" "](a);return a};k.reflect.sinkValue[" "]=k.nullFunction;k.reflect.canAccessProperty=function(a,c){try{return k.reflect.sinkValue(a[c]),!0}catch(d){}return!1};k.style={};k.style.setStyle=function(a,c,d){if(k.isString(c))k.style.setStyle_(a,d,c);else for(var e in c)k.style.setStyle_(a,c[e],e)};k.style.setStyle_=function(a,c,d){(d=k.style.getVendorJsStyleName_(a,d))&&(a.style[d]=c)};k.style.styleNameCache_={};k.style.getVendorJsStyleName_=function(a,c){var d=k.style.styleNameCache_[c];if(!d){var e=k.string.toCamelCase(c),d=e;void 0===a.style[e]&&(e=k.dom.vendor.getVendorJsPrefix()+k.string.toTitleCase(e),void 0!==a.style[e]&&(d=e));k.style.styleNameCache_[c]=d}return d};k.style.getVendorStyleName_=function(a,c){var d=k.string.toCamelCase(c);return void 0===a.style[d]&&(d=k.dom.vendor.getVendorJsPrefix()+k.string.toTitleCase(d),void 0!==a.style[d])?k.dom.vendor.getVendorPrefix()+"-"+c:c};k.style.getStyle=function(a,c){var d=a.style[k.string.toCamelCase(c)];return"undefined"!==typeof d?d:a.style[k.style.getVendorJsStyleName_(a,c)]||""};k.style.getComputedStyle=function(a,c){var d=k.dom.getOwnerDocument(a);return d.defaultView&&d.defaultView.getComputedStyle&&(d=d.defaultView.getComputedStyle(a,null))?d[c]||d.getPropertyValue(c)||"":""};k.style.getCascadedStyle=function(a,c){return a.currentStyle?a.currentStyle[c]:null};k.style.getStyle_=function(a,c){return k.style.getComputedStyle(a,c)||k.style.getCascadedStyle(a,c)||a.style&&a.style[c]};k.style.getComputedBoxSizing=function(a){return k.style.getStyle_(a,"boxSizing")||k.style.getStyle_(a,"MozBoxSizing")||k.style.getStyle_(a,"WebkitBoxSizing")||null};k.style.getComputedPosition=function(a){return k.style.getStyle_(a,"position")};k.style.getBackgroundColor=function(a){return k.style.getStyle_(a,"backgroundColor")};k.style.getComputedOverflowX=function(a){return k.style.getStyle_(a,"overflowX")};k.style.getComputedOverflowY=function(a){return k.style.getStyle_(a,"overflowY")};k.style.getComputedZIndex=function(a){return k.style.getStyle_(a,"zIndex")};k.style.getComputedTextAlign=function(a){return k.style.getStyle_(a,"textAlign")};k.style.getComputedCursor=function(a){return k.style.getStyle_(a,"cursor")};k.style.getComputedTransform=function(a){var c=k.style.getVendorStyleName_(a,"transform");return k.style.getStyle_(a,c)||k.style.getStyle_(a,"transform")};k.style.setPosition=function(a,c,d){var e;c instanceof k.math.Coordinate?(e=c.x,c=c.y):(e=c,c=d);a.style.left=k.style.getPixelStyleValue_(e,!1);a.style.top=k.style.getPixelStyleValue_(c,!1)};k.style.getPosition=function(a){return new k.math.Coordinate(a.offsetLeft,a.offsetTop)};k.style.getClientViewportElement=function(a){a=a?k.dom.getOwnerDocument(a):k.dom.getDocument();return!k.userAgent.IE||k.userAgent.isDocumentModeOrHigher(9)||k.dom.getDomHelper(a).isCss1CompatMode()?a.documentElement:a.body};k.style.getViewportPageOffset=function(a){var c=a.body,d=a.documentElement;a=c.scrollLeft||d.scrollLeft;c=c.scrollTop||d.scrollTop;return new k.math.Coordinate(a,c)};k.style.getBoundingClientRect_=function(a){var c;try{c=a.getBoundingClientRect()}catch(d){return{left:0,top:0,right:0,bottom:0}}k.userAgent.IE&&a.ownerDocument.body&&(a=a.ownerDocument,c.left-=a.documentElement.clientLeft+a.body.clientLeft,c.top-=a.documentElement.clientTop+a.body.clientTop);return c};k.style.getOffsetParent=function(a){if(k.userAgent.IE&&!k.userAgent.isDocumentModeOrHigher(8))return a.offsetParent;var c=k.dom.getOwnerDocument(a),d=k.style.getStyle_(a,"position"),e="fixed"==d||"absolute"==d;for(a=a.parentNode;a&&a!=c;a=a.parentNode)if(a.nodeType==k.dom.NodeType.DOCUMENT_FRAGMENT&&a.host&&(a=a.host),d=k.style.getStyle_(a,"position"),e=e&&"static"==d&&a!=c.documentElement&&a!=c.body,!e&&(a.scrollWidth>a.clientWidth||a.scrollHeight>a.clientHeight||"fixed"==d||"absolute"==d||"relative"== d))return a;return null};k.style.getVisibleRectForElement=function(a){for(var c=new k.math.Box(0,Infinity,Infinity,0),d=k.dom.getDomHelper(a),e=d.getDocument().body,f=d.getDocument().documentElement,g=d.getDocumentScrollElement();a=k.style.getOffsetParent(a);)if(!(k.userAgent.IE&&0==a.clientWidth||k.userAgent.WEBKIT&&0==a.clientHeight&&a==e)&&a!=e&&a!=f&&"visible"!=k.style.getStyle_(a,"overflow")){var h=k.style.getPageOffset(a),l=k.style.getClientLeftTop(a);h.x+=l.x;h.y+=l.y;c.top=Math.max(c.top,h.y);c.right=Math.min(c.right,h.x+a.clientWidth);c.bottom=Math.min(c.bottom,h.y+a.clientHeight);c.left=Math.max(c.left,h.x)}e=g.scrollLeft;g=g.scrollTop;c.left=Math.max(c.left,e);c.top=Math.max(c.top,g);d=d.getViewportSize();c.right=Math.min(c.right,e+d.width);c.bottom=Math.min(c.bottom,g+d.height);return 0<=c.top&&0<=c.left&&c.bottom>c.top&&c.right>c.left?c:null};k.style.getContainerOffsetToScrollInto=function(a,c,d){var e=c||k.dom.getDocumentScrollElement(),f=k.style.getPageOffset(a),g=k.style.getPageOffset(e),h=k.style.getBorderBox(e);e==k.dom.getDocumentScrollElement()?(c=f.x-e.scrollLeft,f=f.y-e.scrollTop,k.userAgent.IE&&!k.userAgent.isDocumentModeOrHigher(10)&&(c+=h.left,f+=h.top)):(c=f.x-g.x-h.left,f=f.y-g.y-h.top);h=e.clientWidth-a.offsetWidth;a=e.clientHeight-a.offsetHeight;g=e.scrollLeft;e=e.scrollTop;d?(g+=c-h/2,e+=f-a/2):(g+=Math.min(c,Math.max(c- h,0)),e+=Math.min(f,Math.max(f-a,0)));return new k.math.Coordinate(g,e)};k.style.scrollIntoContainerView=function(a,c,d){c=c||k.dom.getDocumentScrollElement();a=k.style.getContainerOffsetToScrollInto(a,c,d);c.scrollLeft=a.x;c.scrollTop=a.y};k.style.getClientLeftTop=function(a){return new k.math.Coordinate(a.clientLeft,a.clientTop)};k.style.getPageOffset=function(a){var c=k.dom.getOwnerDocument(a);k.asserts.assertObject(a,"Parameter is required");var d=new k.math.Coordinate(0,0),e=k.style.getClientViewportElement(c);if(a==e)return d;a=k.style.getBoundingClientRect_(a);c=k.dom.getDomHelper(c).getDocumentScroll();d.x=a.left+c.x;d.y=a.top+c.y;return d};k.style.getPageOffsetLeft=function(a){return k.style.getPageOffset(a).x};k.style.getPageOffsetTop=function(a){return k.style.getPageOffset(a).y};k.style.getFramedPageOffset=function(a,c){var d=new k.math.Coordinate(0,0),e=k.dom.getWindow(k.dom.getOwnerDocument(a));if(!k.reflect.canAccessProperty(e,"parent"))return d;var f=a;do{var g=e==c?k.style.getPageOffset(f):k.style.getClientPositionForElement_(k.asserts.assert(f));d.x+=g.x;d.y+=g.y}while(e&&e!=c&&e!=e.parent&&(f=e.frameElement)&&(e=e.parent));return d};k.style.translateRectForAnotherFrame=function(a,c,d){if(c.getDocument()!=d.getDocument()){var e=c.getDocument().body;d=k.style.getFramedPageOffset(e,d.getWindow());d=k.math.Coordinate.difference(d,k.style.getPageOffset(e));!k.userAgent.IE||k.userAgent.isDocumentModeOrHigher(9)||c.isCss1CompatMode()||(d=k.math.Coordinate.difference(d,c.getDocumentScroll()));a.left+=d.x;a.top+=d.y}};k.style.getRelativePosition=function(a,c){var d=k.style.getClientPosition(a),e=k.style.getClientPosition(c);return new k.math.Coordinate(d.x-e.x,d.y-e.y)};k.style.getClientPositionForElement_=function(a){a=k.style.getBoundingClientRect_(a);return new k.math.Coordinate(a.left,a.top)};k.style.getClientPosition=function(a){k.asserts.assert(a);if(a.nodeType==k.dom.NodeType.ELEMENT)return k.style.getClientPositionForElement_(a);a=a.changedTouches?a.changedTouches[0]:a;return new k.math.Coordinate(a.clientX,a.clientY)};k.style.setPageOffset=function(a,c,d){var e=k.style.getPageOffset(a);c instanceof k.math.Coordinate&&(d=c.y,c=c.x);c-=e.x;d-=e.y;k.style.setPosition(a,a.offsetLeft+c,a.offsetTop+d)};k.style.setSize=function(a,c,d){if(c instanceof k.math.Size)d=c.height,c=c.width;else if(void 0==d)throw Error("missing height argument");k.style.setWidth(a,c);k.style.setHeight(a,d)};k.style.getPixelStyleValue_=function(a,c){"number"==typeof a&&(a=(c?Math.round(a):a)+"px");return a};k.style.setHeight=function(a,c){a.style.height=k.style.getPixelStyleValue_(c,!0)};k.style.setWidth=function(a,c){a.style.width=k.style.getPixelStyleValue_(c,!0)};k.style.getSize=function(a){return k.style.evaluateWithTemporaryDisplay_(k.style.getSizeWithDisplay_,a)};k.style.evaluateWithTemporaryDisplay_=function(a,c){if("none"!=k.style.getStyle_(c,"display"))return a(c);var d=c.style,e=d.display,f=d.visibility,g=d.position;d.visibility="hidden";d.position="absolute";d.display="inline";var h=a(c);d.display=e;d.position=g;d.visibility=f;return h};k.style.getSizeWithDisplay_=function(a){var c=a.offsetWidth,d=a.offsetHeight,e=k.userAgent.WEBKIT&&!c&&!d;return k.isDef(c)&&!e||!a.getBoundingClientRect?new k.math.Size(c,d):(a=k.style.getBoundingClientRect_(a),new k.math.Size(a.right-a.left,a.bottom-a.top))};k.style.getTransformedSize=function(a){if(!a.getBoundingClientRect)return null;a=k.style.evaluateWithTemporaryDisplay_(k.style.getBoundingClientRect_,a);return new k.math.Size(a.right-a.left,a.bottom-a.top)};k.style.getBounds=function(a){var c=k.style.getPageOffset(a);a=k.style.getSize(a);return new k.math.Rect(c.x,c.y,a.width,a.height)};k.style.toCamelCase=function(a){return k.string.toCamelCase(String(a))};k.style.toSelectorCase=function(a){return k.string.toSelectorCase(a)};k.style.getOpacity=function(a){k.asserts.assert(a);var c=a.style;a="";"opacity"in c?a=c.opacity:"MozOpacity"in c?a=c.MozOpacity:"filter"in c&&(c=c.filter.match(/alpha\(opacity=([\d.]+)\)/))&&(a=String(c[1]/100));return""==a?a:Number(a)};k.style.setOpacity=function(a,c){k.asserts.assert(a);var d=a.style;"opacity"in d?d.opacity=c:"MozOpacity"in d?d.MozOpacity=c:"filter"in d&&(d.filter=""===c?"":"alpha(opacity="+100*c+")")};k.style.setTransparentBackgroundImage=function(a,c){var d=a.style;k.userAgent.IE&&!k.userAgent.isVersionOrHigher("8")?d.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+c+'", sizingMethod="crop")':(d.backgroundImage="url("+c+")",d.backgroundPosition="top left",d.backgroundRepeat="no-repeat")};k.style.clearTransparentBackgroundImage=function(a){a=a.style;"filter"in a?a.filter="":a.backgroundImage="none"};k.style.showElement=function(a,c){k.style.setElementShown(a,c)};k.style.setElementShown=function(a,c){a.style.display=c?"":"none"};k.style.isElementShown=function(a){return"none"!=a.style.display};k.style.installStyles=function(a,c){var d=k.dom.getDomHelper(c),e=null,f=d.getDocument();k.userAgent.IE&&f.createStyleSheet?(e=f.createStyleSheet(),k.style.setStyles(e,a)):(f=d.getElementsByTagNameAndClass(k.dom.TagName.HEAD)[0],f||(e=d.getElementsByTagNameAndClass(k.dom.TagName.BODY)[0],f=d.createDom(k.dom.TagName.HEAD),e.parentNode.insertBefore(f,e)),e=d.createDom(k.dom.TagName.STYLE),k.style.setStyles(e,a),d.appendChild(f,e));return e};k.style.uninstallStyles=function(a){a=a.ownerNode||a.owningElement||a;k.dom.removeNode(a)};k.style.setStyles=function(a,c){k.userAgent.IE&&k.isDef(a.cssText)?a.cssText=c:a.innerHTML=c};k.style.setPreWrap=function(a){a=a.style;k.userAgent.IE&&!k.userAgent.isVersionOrHigher("8")?(a.whiteSpace="pre",a.wordWrap="break-word"):a.whiteSpace=k.userAgent.GECKO?"-moz-pre-wrap":"pre-wrap"};k.style.setInlineBlock=function(a){a=a.style;a.position="relative";k.userAgent.IE&&!k.userAgent.isVersionOrHigher("8")?(a.zoom="1",a.display="inline"):a.display="inline-block"};k.style.isRightToLeft=function(a){return"rtl"==k.style.getStyle_(a,"direction")};k.style.unselectableStyle_=k.userAgent.GECKO?"MozUserSelect":k.userAgent.WEBKIT||k.userAgent.EDGE?"WebkitUserSelect":null;k.style.isUnselectable=function(a){return k.style.unselectableStyle_?"none"==a.style[k.style.unselectableStyle_].toLowerCase():k.userAgent.IE||k.userAgent.OPERA?"on"==a.getAttribute("unselectable"):!1};k.style.setUnselectable=function(a,c,d){d=d?null:a.getElementsByTagName("*");var e=k.style.unselectableStyle_;if(e){if(c=c?"none":"",a.style&&(a.style[e]=c),d){a=0;for(var f;f=d[a];a++)f.style&&(f.style[e]=c)}}else if(k.userAgent.IE||k.userAgent.OPERA)if(c=c?"on":"",a.setAttribute("unselectable",c),d)for(a=0;f=d[a];a++)f.setAttribute("unselectable",c)};k.style.getBorderBoxSize=function(a){return new k.math.Size(a.offsetWidth,a.offsetHeight)};k.style.setBorderBoxSize=function(a,c){var d=k.dom.getOwnerDocument(a),e=k.dom.getDomHelper(d).isCss1CompatMode();if(!k.userAgent.IE||k.userAgent.isVersionOrHigher("10")||e&&k.userAgent.isVersionOrHigher("8"))k.style.setBoxSizingSize_(a,c,"border-box");else if(d=a.style,e){var e=k.style.getPaddingBox(a),f=k.style.getBorderBox(a);d.pixelWidth=c.width-f.left-e.left-e.right-f.right;d.pixelHeight=c.height-f.top-e.top-e.bottom-f.bottom}else d.pixelWidth=c.width,d.pixelHeight=c.height};k.style.getContentBoxSize=function(a){var c=k.dom.getOwnerDocument(a),d=k.userAgent.IE&&a.currentStyle;if(d&&k.dom.getDomHelper(c).isCss1CompatMode()&&"auto"!=d.width&&"auto"!=d.height&&!d.boxSizing)return c=k.style.getIePixelValue_(a,d.width,"width","pixelWidth"),a=k.style.getIePixelValue_(a,d.height,"height","pixelHeight"),new k.math.Size(c,a);d=k.style.getBorderBoxSize(a);c=k.style.getPaddingBox(a);a=k.style.getBorderBox(a);return new k.math.Size(d.width-a.left-c.left-c.right-a.right,d.height- a.top-c.top-c.bottom-a.bottom)};k.style.setContentBoxSize=function(a,c){var d=k.dom.getOwnerDocument(a),e=k.dom.getDomHelper(d).isCss1CompatMode();if(!k.userAgent.IE||k.userAgent.isVersionOrHigher("10")||e&&k.userAgent.isVersionOrHigher("8"))k.style.setBoxSizingSize_(a,c,"content-box");else if(d=a.style,e)d.pixelWidth=c.width,d.pixelHeight=c.height;else{var e=k.style.getPaddingBox(a),f=k.style.getBorderBox(a);d.pixelWidth=c.width+f.left+e.left+e.right+f.right;d.pixelHeight=c.height+f.top+e.top+e.bottom+f.bottom}};k.style.setBoxSizingSize_=function(a,c,d){a=a.style;k.userAgent.GECKO?a.MozBoxSizing=d:k.userAgent.WEBKIT?a.WebkitBoxSizing=d:a.boxSizing=d;a.width=Math.max(c.width,0)+"px";a.height=Math.max(c.height,0)+"px"};k.style.getIePixelValue_=function(a,c,d,e){if(/^\d+px?$/.test(c))return parseInt(c,10);var f=a.style[d],g=a.runtimeStyle[d];a.runtimeStyle[d]=a.currentStyle[d];a.style[d]=c;c=a.style[e];a.style[d]=f;a.runtimeStyle[d]=g;return c};k.style.getIePixelDistance_=function(a,c){var d=k.style.getCascadedStyle(a,c);return d?k.style.getIePixelValue_(a,d,"left","pixelLeft"):0};k.style.getBox_=function(a,c){if(k.userAgent.IE){var d=k.style.getIePixelDistance_(a,c+"Left"),e=k.style.getIePixelDistance_(a,c+"Right"),f=k.style.getIePixelDistance_(a,c+"Top"),g=k.style.getIePixelDistance_(a,c+"Bottom");return new k.math.Box(f,e,g,d)}d=k.style.getComputedStyle(a,c+"Left");e=k.style.getComputedStyle(a,c+"Right");f=k.style.getComputedStyle(a,c+"Top");g=k.style.getComputedStyle(a,c+"Bottom");return new k.math.Box(parseFloat(f),parseFloat(e),parseFloat(g),parseFloat(d))};k.style.getPaddingBox=function(a){return k.style.getBox_(a,"padding")};k.style.getMarginBox=function(a){return k.style.getBox_(a,"margin")};k.style.ieBorderWidthKeywords_={thin:2,medium:4,thick:6};k.style.getIePixelBorder_=function(a,c){if("none"==k.style.getCascadedStyle(a,c+"Style"))return 0;var d=k.style.getCascadedStyle(a,c+"Width");return d in k.style.ieBorderWidthKeywords_?k.style.ieBorderWidthKeywords_[d]:k.style.getIePixelValue_(a,d,"left","pixelLeft")};k.style.getBorderBox=function(a){if(k.userAgent.IE&&!k.userAgent.isDocumentModeOrHigher(9)){var c=k.style.getIePixelBorder_(a,"borderLeft"),d=k.style.getIePixelBorder_(a,"borderRight"),e=k.style.getIePixelBorder_(a,"borderTop");a=k.style.getIePixelBorder_(a,"borderBottom");return new k.math.Box(e,d,a,c)}c=k.style.getComputedStyle(a,"borderLeftWidth");d=k.style.getComputedStyle(a,"borderRightWidth");e=k.style.getComputedStyle(a,"borderTopWidth");a=k.style.getComputedStyle(a,"borderBottomWidth");return new k.math.Box(parseFloat(e),parseFloat(d),parseFloat(a),parseFloat(c))};k.style.getFontFamily=function(a){var c=k.dom.getOwnerDocument(a),d="";if(c.body.createTextRange&&k.dom.contains(c,a)){c=c.body.createTextRange();c.moveToElementText(a);try{d=c.queryCommandValue("FontName")}catch(e){d=""}}d||(d=k.style.getStyle_(a,"fontFamily"));a=d.split(",");1<a.length&&(d=a[0]);return k.string.stripQuotes(d,"\"'")};k.style.lengthUnitRegex_=/[^\d]+$/;k.style.getLengthUnits=function(a){return(a=a.match(k.style.lengthUnitRegex_))&&a[0]||null};k.style.ABSOLUTE_CSS_LENGTH_UNITS_={cm:1,"in":1,mm:1,pc:1,pt:1};k.style.CONVERTIBLE_RELATIVE_CSS_UNITS_={em:1,ex:1};k.style.getFontSize=function(a){var c=k.style.getStyle_(a,"fontSize"),d=k.style.getLengthUnits(c);if(c&&"px"==d)return parseInt(c,10);if(k.userAgent.IE){if(d in k.style.ABSOLUTE_CSS_LENGTH_UNITS_)return k.style.getIePixelValue_(a,c,"left","pixelLeft");if(a.parentNode&&a.parentNode.nodeType==k.dom.NodeType.ELEMENT&&d in k.style.CONVERTIBLE_RELATIVE_CSS_UNITS_)return a=a.parentNode,d=k.style.getStyle_(a,"fontSize"),k.style.getIePixelValue_(a,c==d?"1em":c,"left","pixelLeft")}d=k.dom.createDom(k.dom.TagName.SPAN,{style:"visibility:hidden;position:absolute;line-height:0;padding:0;margin:0;border:0;height:1em;"});k.dom.appendChild(a,d);c=d.offsetHeight;k.dom.removeNode(d);return c};k.style.parseStyleAttribute=function(a){var c={};k.array.forEach(a.split(/\s*;\s*/),function(a){var e=a.match(/\s*([\w-]+)\s*\:(.+)/);e&&(a=e[1],e=k.string.trim(e[2]),c[k.string.toCamelCase(a.toLowerCase())]=e)});return c};k.style.toStyleAttribute=function(a){var c=[];k.object.forEach(a,function(a,e){c.push(k.string.toSelectorCase(e),":",a,";")});return c.join("")};k.style.setFloat=function(a,c){a.style[k.userAgent.IE?"styleFloat":"cssFloat"]=c};k.style.getFloat=function(a){return a.style[k.userAgent.IE?"styleFloat":"cssFloat"]||""};k.style.getScrollbarWidth=function(a){var c=k.dom.createElement(k.dom.TagName.DIV);a&&(c.className=a);c.style.cssText="overflow:auto;position:absolute;top:0;width:100px;height:100px";a=k.dom.createElement(k.dom.TagName.DIV);k.style.setSize(a,"200px","200px");c.appendChild(a);k.dom.appendChild(k.dom.getDocument().body,c);a=c.offsetWidth-c.clientWidth;k.dom.removeNode(c);return a};k.style.MATRIX_TRANSLATION_REGEX_=/matrix\([0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, [0-9\.\-]+, ([0-9\.\-]+)p?x?, ([0-9\.\-]+)p?x?\)/;k.style.getCssTranslation=function(a){a=k.style.getComputedTransform(a);return a?(a=a.match(k.style.MATRIX_TRANSLATION_REGEX_))?new k.math.Coordinate(parseFloat(a[1]),parseFloat(a[2])):new k.math.Coordinate(0,0):new k.math.Coordinate(0,0)};var v={ACCEPT:"a",LIMITED_ACCEPT:"l",CANCEL:"c",DISMISS:"d",CLICK:"h",IMPRESSION:"i",NO_THANKS:"n",X_BUTTON:"x",MGMHP_ACCEPT:"ma",MGMHP_CANCEL:"mc",MGMHP_IMPRESSION:"mi",MGMHPPD_ACCEPT:"pa",MGMHPPD_CANCEL:"pc",MGMHPPD_IMPRESSION:"pi",MGMHPPD_NO_THANKS:"pn",MGMHPPD_NO_BUTTON:"px",MGMHPPD_DISMISS:"pd",PUSHDOWN_ACCEPT:"gpa",PUSHDOWN_IMPRESSION:"gpi",PUSHDOWN_NO_THANKS:"gpn",PUSHDOWN_X_BUTTON:"gpx",PUSHDOWN_DISMISS:"gpd"};var w,x,A=0,B;google.promos=google.promos||{};google.promos.link=google.promos.link||{};google.promos.link.getExtraLogData_=function(a){var c=document.getElementById(B);if(c){var d=x+"_upccb",e=parseInt(window.gbar.up.gpd(c,d)||0,10);e++;A++;window.gbar.up.spd(c,d,e);c=[["upcc",A].join("="),["upccb",e].join("=")];a&&c.push(a);return c.join("&")}return""};function C(){var a=["gpd","spd","sl"];if(!window.gbar||!window.gbar.up)return!1;for(var c=0,d;d=a[c];c++)if(!(d in window.gbar.up))return!1;return!0}google.promos.link.init=function(a,c,d,e){try{if(C()){x=a;w=c;B=d;var f=document.getElementById(B);f&&(k.style.setElementShown(f,!e),window.gbar.up.sl(x,w,v.IMPRESSION))}else google.ml(Error("apa"),!1,{cause:c+"_INIT"})}catch(g){google.ml(g,!1,{cause:w+"_INIT"})}};})();</script><script>(function(){var sourceWebappPromoID=5083181;var payloadType=8;var invisible=false;window.gbar&&gbar.up&&gbar.up.r&&gbar.up.r(payloadType,function(show){if (show){google.promos.link.init(sourceWebappPromoID,payloadType,'hpplinksimgs',invisible);} });})();</script></div></div><span id="footer"><div style="font-size:10pt"><div style="margin:19px auto;text-align:center" id="fll"><a href="/intl/en/ads/">Advertising Programs</a><a href="/services/">Business Solutions</a><a href="https://plus.google.com/116899029375914044550" rel="publisher">+Google</a><a href="/intl/en/about.html">About Google</a></div></div><p style="color:#767676;font-size:8pt">© 2015 - <a href="/intl/en/policies/privacy/">Privacy</a> - <a href="/intl/en/policies/terms/">Terms</a></p></span></center><script>(function(){window.google.cdo={height:0,width:0};(function(){var a=window.innerWidth,b=window.innerHeight;if(!a||!b)var c=window.document,d="CSS1Compat"==c.compatMode?c.documentElement:c.body,a=d.clientWidth,b=d.clientHeight;a&&b&&(a!=google.cdo.width||b!=google.cdo.height)&&google.log("","","/client_204?&atyp=i&biw="+a+"&bih="+b+"&ei="+google.kEI);})();})();</script><div id="xjsd"></div><div id="xjsi"><script>(function(){function c(b){window.setTimeout(function(){var a=document.createElement("script");a.src=b;document.getElementById("xjsd").appendChild(a)},0)}google.dljp=function(b,a){google.xjsu=b;c(a)};google.dlj=c;})();(function(){window.google.xjsrm=[];})();if(google.y)google.y.first=[];if(!google.xjs){window._=window._||{};window._._DumpException=function(e){throw e};if(google.timers&&google.timers.load.t){google.timers.load.t.xjsls=new Date().getTime();}google.dljp('/xjs/_/js/k\x3dxjs.hp.en_US.jCb2JWHbn2Y.O/m\x3dsb_he,d/rt\x3dj/d\x3d1/t\x3dzcms/rs\x3dACT90oFGQp49GxSuY0e6lmI--ryX7BUbGw','/xjs/_/js/k\x3dxjs.hp.en_US.jCb2JWHbn2Y.O/m\x3dsb_he,d/rt\x3dj/d\x3d1/t\x3dzcms/rs\x3dACT90oFGQp49GxSuY0e6lmI--ryX7BUbGw');google.xjs=1;}google.pmc={"sb_he":{"agen":true,"cgen":true,"client":"heirloom-hp","dh":true,"ds":"","fl":true,"host":"google.com","isbh":28,"jam":0,"jsonp":true,"msgs":{"cibl":"Clear Search","dym":"Did you mean:","lcky":"I\u0026#39;m Feeling Lucky","lml":"Learn more","oskt":"Input tools","psrc":"This search was removed from your \u003Ca href=\"/history\"\u003EWeb History\u003C/a\u003E","psrl":"Remove","sbit":"Search by image","srch":"Google Search"},"ovr":{},"pq":"","refoq":true,"refpd":true,"rfs":[],"scd":10,"sce":5,"stok":"BBqYJuNig5PuA8084-VJ4COvsHM"},"d":{}};google.y.first.push(function(){if(google.med){google.med('init');google.initHistory();google.med('history');}});if(google.j&&google.j.en&&google.j.xi){window.setTimeout(google.j.xi,0);} </script></div></body></html>
Snippet is not live.
Travelled to 12 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #3000146 |
Snippet name: | Contents of http://google.com |
Eternal ID of this version: | #3000146/1 |
Text MD5: | c30c925a3cba23797654f3ed226aac8f |
Author: | someone |
Category: | |
Type: | New Tinybrain snippet |
Gummipassword: | Scrape Bot#1002043 |
Uploaded from IP: | 69.10.46.185 |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2015-12-28 07:07:54 |
Source code size: | 158339 bytes / 26 lines |
Pitched / IR pitched: | No / Yes |
Views / Downloads: | 691 / 490 |
Referenced in: | [show references] |