(function(){var g,e,d,i,f,j,k,l,b=this,o=document,q=0,c={},a=[];b.SetCookieDefault=function(m,n,a,h,c,b,o,p){g=m;e=c;d=h;i=a;f=b;k=n;j=o;l=p};b.GetServerSetting=function(a){return typeof c[a]!="undefined"?c[a]:""};b.SetServerSetting=function(a,b){if(a&&c[a]!=b){c[a]=b;n(g,p(),k,j,l)}};function p(){var b=[];for(var a in c)if(a)b.push(("{0}{2}{1}").format(a,c[a],d));return b.join(e)}b.readServerSettingsCookies=function(){var f=m(g);if(f){var h=f.split(e);for(var b=0;b<h.length;++b){var a=h[b].split(d);c[a[0]]=a.length>1?a[1]:""}}};b.GetWeatherCodes=function(){return a};b.AddWeatherCode=function(b){if(!a.contains(b)){a.push(b);h()}};b.DelWeatherCode=function(b){if(a.contains(b)){a.remove(b);h()}};b.WeatherUp=function(c){for(var b=1;b<a.length;++b)if(a[b]==c){a[b]=a[b-1];a[b-1]=c;h();break}};b.WeatherDown=function(c){for(var b=a.length-2;b>=0;--b)if(a[b]==c){a[b]=a[b+1];a[b+1]=c;h();break}};function h(){n(i,a.join(f),k,j,l)}b.readWeatherCodes=function(){var b=m(i);if(b)a=b.split(f);else a=[]};function m(b){var c=new RegExp("\\b"+b+"\\s*=\\s*([^;]*)","i"),a=c.exec(o.cookie);return a&&a.length>1?a[1]:""}function n(h,g,c,d,e,f){var a=[("{0}={1}").format(h,g)];if(c){var b=new Date;b.setTime(b.getTime()+c*86400000);a.push(("expires={0}").format(b.toUTCString()))}if(d)a.push(("domain={0}").format(d));if(e)a.push(("path={0}").format(e));if(f)a.push("secure");o.cookie=a.join(";")}b.dispose=function(){g=e=d=i=f=j=k=o=c=a=0};b.GetCookie=m;b.SetCookie=n;b.readServerSettingsCookies();b.readWeatherCodes()}).ns("Msn.Settings");(function(a,f){if(!f)f={};var o=f.gtl,i=f.del,j="Disambiguator Selection",l=this,m=window,q=document,k=Msn.DOM,h,b,c,g=typeof f.close!="undefined"?f.close:i;if(typeof g!="string")g=g?i:0;l.dispose=function(){if(c){m.clearTimeout(c);c=0}a=h=b=i=j=0};l.msg=function(d,f,e){if(c){m.clearTimeout(c);c=0}if(d){h.innerHTML=d;if(e){a.style.display="none";c=m.setTimeout(function(){if(c)a.style.display="block"},e)}else a.style.display="block";if(f)a.className="ambi "+f}else a.style.display="none";Msn.Bind.Unbind(b,1);b.innerHTML="";b.style.display="none"};l.add=function(g,c){b.style.display="block";var f=d("li");e(b,f);var a=d("a");a.href=c?c:"#";a.innerHTML=g;if(j)a.setAttribute("piitxt",j);e(f,a);return a};function p(){k.AddClass(a,"ambi");a.style.display="none";if(g){var c=d("a");c.className="del";c.href="#";c.setAttribute("notrack",1);e(a,c);var f=d("div");e(c,f);f.style.visibility="visible";c.title=g;n.hook(c,"click");c=0}h=d("p");e(a,h);b=d("ul");b.className=o;b.style.display="none";e(a,b)}function n(b){b=k.Event(b);a.style.display="none";return k.CancelEvent(b)}function e(a,b){a.appendChild(b)}function d(a){return q.createElement(a)}p()}).as("Msn.DA");(function(z,a){if(!a)a={};var P=a.timeout,S=a.weatherCodeSeparator,Cb=a.durl+"?wealocations={0}&weadegreetype={1}&culture=es-us",Db=a.surl+"?weasearchstr={0}&culture=es-us",I=a.delay,L=a.loadmsg,lb=a.none,ub=a.choose,y=a.err,kb=a.nores,hb=a.dup,tb=a.nomore,nb=a.max,jb=a.fore,C=a.units,pb=a.togf,ob=a.togc,ab=a.togftooltip,Z=a.togctooltip,cb=a.del,eb=a.up,V=a.dn,bb=a.cur,db=a.highlow,fb=a.na,sb=a.temp,vb=a.disambiclose,wb=a.disambilistFormat,Bb=this,Eb=document,i=Msn.Settings,N=Msn.Bind,d=Msn.DOM,k=d.Event,u=d.Target,o=d.CancelEvent,e=d.ChildElem,j=d.ParentElem,m=d.PrevElem,l=d.NextElem,x=d.AddClass,mb=d.DelClass,J=d.HasClass,s=d.ChildCount,K,q,p,c,g,n,v,rb=typeof a.fc!="undefined"?a.fc:1,O={F:ab,C:Z},h,Q=1,E="none",R="block",ib={F:"C",C:"F"};Bb.dispose=function(){if(c)c.dispose();if(v){v.cancel();v=null}z=p=c=g=q=n=0};function B(a){if(a&&a.length>0){c.msg(L,"msg",I);v=(function(a){if(a.responseXML)Y(a.responseXML);else c.msg(y,"err")}).RQ(Cb.format(a.join(S),i.GetServerSetting(C)),P)}}function Y(I){var D=e(I,"weatherdata");if(D){c.msg();var F=e(g,"P",1);if(F)t(g,F);var q,o,a,u=[];d.ForEach(function(b){a={weatherCode:b.getAttribute("weatherlocationcode"),displayName:b.getAttribute("weatherlocationname"),weatherUrl:b.getAttribute("url"),imageBase:b.getAttribute("imagerelativeurl"),forecasts:[]};u.push(a);d.ForEach(function(b){switch(b.nodeName){case "current":a.current={desc:b.getAttribute("skytext"),temp:b.getAttribute("temperature")};break;case "forecast":a.forecasts.push({day:b.getAttribute("day"),high:b.getAttribute("high"),low:b.getAttribute("low"),code:b.getAttribute("skycodeday"),desc:b.getAttribute("skytextday"),date:Date.parse(b.getAttribute("date"))});break}},b)},D,"weather");var i=e(g,"UL",1);if(!i){i=b("ul");i.className="forecast1";f(g,i)}for(var z=0;z<u.length;++z){a=u[z];var k=null;d.ForEach(function(b){if(w(b,1)==a.displayName)return k=b},i,"LI");var j=b("li");j.className="cf";i.insertBefore(j,k);if(k){N.Unbind(k,1);t(i,k);k=null}else{var C=m(j,"LI");if(C)r(C,"UpdateButtons")}M.bind(j,{code:a.weatherCode,name:a.displayName});o=b("h4");if(a.weatherUrl)o.innerHTML=('<a href="{1}">{0}</a>').format(a.displayName,a.weatherUrl);else o.innerHTML=a.displayName;f(j,o);if(a.current){q=b("span",bb.format(a.current.desc,A(a.current.temp)));f(j,q)}var h,B=b("ul");B.className="cf";for(var n=0;n<4&&n<a.forecasts.length;++n){var l=a.forecasts[n];h=b("li");if(n==1)h.className="first";var K=b("h5",l.day);f(h,K);var v=b("img");v.src=a.imageBase+l.code+".gif";v.title=l.desc;f(h,v);var G=A(l.high),H=A(l.low);q=b("span",db.format(G,H));f(h,q);f(B,h)}if(h&&!J(h,"first"))x(h,"last");f(j,B)}var E=e(g,"UL",1);if(E)if(s(E,"LI")>0&&Q==0){p.focus();p.value=""}}else c.msg(y,"err");Q=0;xb()}function A(a){return a?sb.format(a):fb}function M(a,p){p=p?p:{};var g=this,L=p.name,B=p.code,e=[],n;function O(){var c=b("div");c.className="btnbar";a.insertBefore(c,a.firstChild);e.push(A(c,"up",eb,P,!m(a,"LI")));e.push(A(c,"dn",V,I,!l(a,"LI")));e.push(A(c,"rem",cb,D))}function A(i,e,h,d,g){var a=b("a");a.href="#";a.className=e;a.title=h.format(L);a.setAttribute("notrack",1);d.hook(a,"click");G.hook(a,"focus");H.hook(a,"blur");f(i,a);if(g)y(a,E);var c=b("div");f(a,c);return c}function G(a){a=k(a);n=u(a).childNodes[0];q(n,"visible")}function H(a){a=k(a);if(h!=g)q(n,"hidden");n=0}function J(){if(h!=g)x()}function M(a){a=k(a);if(!K(a.relatedTarget?a.relatedTarget:a.toElement))w()}function x(){for(var a=0;a<e.length;++a)q(e[a],"visible");h=g}function C(a){r(a,"Activate")}function w(){if(h==g){for(var a=0;a<e.length;++a){var b=e[a];if(b!=n)q(b,"hidden")}h=0}}function K(b){while(b){if(b==a)break;b=b.parentNode}return b}function q(b,a){b.style.visibility=a}function y(a,b){if(a)a.style.display=b}function P(f){f=k(f);c.msg();var d=v(u(f)),b=m(a,"LI");if(b){i.WeatherUp(B);if(h&&h.IsBoundTo(b)){h.Deactivate();x()}else if(h==g){w();C(b)}if(!m(b,"LI"))if(d){d.blur();d=j(e[1],"A")}j(a).insertBefore(a,b);z();r(b,"UpdateButtons");if(d)d.focus()}return o(f)}function I(m){m=k(m);c.msg();var f=v(u(m)),b=d.NextElem(a,"LI");if(b){i.WeatherDown(B);if(h&&h.IsBoundTo(b)){h.Deactivate();x()}else if(h==g){w();C(b)}if(!l(b,"LI"))if(f){f.blur();f=j(e[0],"A")}j(a).insertBefore(b,a);z();r(b,"UpdateButtons");if(f)f.focus()}return o(m)}function D(e){e=k(e);c.msg();i.DelWeatherCode(B);var b;if(!m(a,"LI"))b=l(a,"LI");else if(!l(a,"LI"))b=m(a,"LI");var f=a;N.Unbind(f,1);var d=j(f);t(d,f);if(b)r(b,"UpdateButtons");else if(s(d,"LI")==0){t(j(d),d);F()}return o(e)}function v(a){while(a&&(a.nodeType!=1||a.tagName!="A"))a=j(a);return a}function z(){y(v(e[0]),m(a,"LI")?R:E);y(v(e[1]),l(a,"LI")?R:E)}g.Deactivate=w;g.Activate=x;g.UpdateButtons=z;g.IsBoundTo=function(b){return b==a};g.dispose=function(){a=e=n=0};O();J.hook(a,"mouseover");M.hook(a,"mouseout")}function yb(){q=e(z,"FORM");if(q){var a=e(q,"INPUT");while(a){if(a.type=="text"){p=a;K=p.value}a=l(a,"INPUT")}zb.hook(q,"submit");var d=b("div");f(j(q),d);c=new Msn.DA(d,{gtl:wb,del:vb})}}function W(){g=e(z,"DIV",1);while(g&&!J(g,"child"))g=l(g,"DIV")}function xb(){var a=e(g,"UL");if(!a||s(a,"LI")==0){if(a)t(j(a),a);F()}}function r(a,d){if(a&&a.bindings)for(var b=0;b<a.bindings.length;++b){var c=a.bindings[b];if(typeof c[d]=="function")c[d]()}}function F(){f(g,b("P",lb))}function zb(b){var a=p.value;if(a&&a!=K)if(i.GetWeatherCodes().length<jb){c.msg(L,"msg",I);v=(function(a){if(a.responseXML)U(a.responseXML);else c.msg(y,"err")}).RQ(Db.format(a),P)}else c.msg(tb,"err");b=k(b);return o(b)}function U(h){var a=e(h,"weatherdata");if(a){var g=0;switch(s(a,"weather")){case 0:c.msg(kb,"err");break;case 1:var b=e(a,"weather"),f=b.getAttribute("searchdistance");if(!parseFloat(f)){H(b.getAttribute("weatherlocationcode"));break}default:c.msg(ub,"msg");d.ForEach(function(a){T.hook(c.add(a.getAttribute("weatherfullname"),a.getAttribute("weatherlocationcode")),"click");return ++g>=nb},a,"weather");break}}else c.msg(y,"err")}function H(a){i.AddWeatherCode(a);if(gb(a))c.msg(hb,"err");else B([a])}function w(h,g){var a,c=e(h,"H4");if(c)if(g)a=d.InnerText(c);else{var f=e(c,"A");if(f){var i=/wealocations=([^&]*)/,b=i.exec(f.href);if(b&&b.length>1)a=b[1]}}return a}function gb(c){var a=0,b=e(g,"UL");if(b)d.ForEach(function(b){if(w(b)==c)return a=1},b,"LI");return a}function T(a){a=k(a);var b=u(a);H(b.href);return o(a)}function qb(){var a=e(g,"UL");if(a)if(s(a,"LI")>0)d.ForEach(function(a){M.bind(a,{code:w(a),name:w(a,1)})},a,"LI");else X()}function X(){var a=i.GetWeatherCodes();if(a.length>0)B(a)}function b(c,a){var b=Eb.createElement(c);if(a)b.innerHTML=a;return b}function f(a,b){return a.appendChild(b)}function t(a,b){return a.removeChild(b)}function Ab(){var f=i.GetServerSetting(C),d=f=="F",c=e(z,"H2");if(c){var a=b("ul");a.className="linklist9 tog";c.insertBefore(a,c.firstChild);G(a,pb,"F","first",d);G(a,ob,"C","last",!d)}}function G(i,g,d,e,h){var a;if(h){a=b("li",g);x(a,"selected");n=a}else{a=b("li");var c=b("a",g);c.title=O[d];c.className=d;c.href="#";D.hook(c,"click");f(a,c)}if(e)x(a,e);f(i,a)}function D(d){d=k(d);var c=u(d);if(c){var g=c.className;if(g){mb(n,"selected");var h=ib[g],a=b("a",n.innerHTML);a.title=O[h];a.className=h;a.href="#";n.innerHTML="";f(n,a);D.hook(a,"click");var e=j(c,"LI");if(e){x(e,"selected");D.unhook(c,"click");e.innerHTML=c.innerHTML;n=e}i.SetServerSetting(C,g);B(i.GetWeatherCodes());return o(d)}}}if(Msn.Ajax.Enabled()){yb();i.readWeatherCodes();i.readServerSettingsCookies();W();if(rb)Ab();qb()}}).as("Msn.Weather");(function(){}).as("msn.weather",Msn.Weather);(function(a){var b=a.value;this.dispose=function(){a=null};if(b){(function(){if(a.value==b)a.value=""}).hook(a,"focus");(function(){if(!a.value)a.value=b}).hook(a,"blur")}}).as("Msn.TextBoxHint");(function(){}).as("msn.textboxhint",Msn.TextBoxHint)