
(function(){var
window=this,undefined,_jQuery=window.jQuery,_$=window.$,jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);},quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;this.context=selector;return this;}if(typeof selector==="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem&&elem.id!=match[3])return jQuery().find(selector);var ret=jQuery(elem||[]);ret.context=document;ret.selector=selector;return ret;}}else
return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document).ready(selector);if(selector.selector&&selector.context){this.selector=selector.selector;this.context=selector.context;}return this.setArray(jQuery.isArray(selector)?selector:jQuery.makeArray(selector));},selector:"",jquery:"1.3.2",size:function(){return this.length;},get:function(num){return num===undefined?Array.prototype.slice.call(this):this[num];},pushStack:function(elems,name,selector){var ret=jQuery(elems);ret.prevObject=this;ret.context=this.context;if(name==="find")ret.selector=this.selector+(this.selector?" ":"")+selector;else if(name)ret.selector=this.selector+"."+name+"("+selector+")";return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(typeof name==="string")if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!=="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).clone();if(this[0].parentNode)wrap.insertBefore(this[0]);wrap.map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);}return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},push:[].push,sort:[].sort,splice:[].splice,find:function(selector){if(this.length===1){var ret=this.pushStack([],"find",selector);ret.length=0;jQuery.find(selector,this[0],ret);return ret;}else{return this.pushStack(jQuery.unique(jQuery.map(this,function(elem){return jQuery.find(selector,elem);})),"find",selector);}},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML;if(!html){var div=this.ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;}return jQuery.clean([html.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0];}else
return this.cloneNode(true);});if(events===true){var orig=this.find("*").andSelf(),i=0;ret.find("*").andSelf().each(function(){if(this.nodeName!==orig[i].nodeName)return;var events=jQuery.data(orig[i],"events");for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}}i++;});}return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,jQuery.grep(this,function(elem){return elem.nodeType===1;})),"filter",selector);},closest:function(selector){var pos=jQuery.expr.match.POS.test(selector)?jQuery(selector):null,closer=0;return this.map(function(){var cur=this;while(cur&&cur.ownerDocument){if(pos?pos.index(cur)>-1:jQuery(cur).is(selector)){jQuery.data(cur,"closest",closer);return cur;}cur=cur.parentNode;closer++;}});},not:function(selector){if(typeof selector==="string")if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true),"not",selector);else
selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector==="string"?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return!!selector&&this.is("."+selector);},val:function(value){if(value===undefined){var elem=this[0];if(elem){if(jQuery.nodeName(elem,'option'))return(elem.attributes.value||{}).specified?elem.value:elem.text;if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery(option).val();if(one)return value;values.push(value);}}return values;}return(elem.value||"").replace(/\r/g,"");}return undefined;}if(typeof value==="number")value+='';return this.each(function(){if(this.nodeType!=1)return;if(jQuery.isArray(value)&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else
this.value=value;});},html:function(value){return value===undefined?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,+i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},domManip:function(args,table,callback){if(this[0]){var fragment=(this[0].ownerDocument||this[0]).createDocumentFragment(),scripts=jQuery.clean(args,(this[0].ownerDocument||this[0]),fragment),first=fragment.firstChild;if(first)for(var i=0,l=this.length;i<l;i++)callback.call(root(this[i],first),this.length>1||i>0?fragment.cloneNode(true):fragment);if(scripts)jQuery.each(scripts,evalScript);}return this;function root(elem,cur){return table&&jQuery.nodeName(elem,"table")&&jQuery.nodeName(cur,"tr")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else
jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;}if(typeof target!=="object"&&!jQuery.isFunction(target))target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&&copy&&typeof copy==="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{},toString=Object.prototype.toString;jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(obj){return toString.call(obj)==="[object Function]";},isArray:function(obj){return toString.call(obj)==="[object Array]";},isXMLDoc:function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&jQuery.isXMLDoc(elem.ownerDocument);},globalEval:function(data){if(data&&/\S/.test(data)){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.support.scriptEval)script.appendChild(document.createTextNode(data));else
script.text=data;head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length===undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else
for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length===undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else
for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return typeof value==="number"&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!==undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return elem&&jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force,extra){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;if(extra==="border")return;jQuery.each(which,function(){if(!extra)val-=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;if(extra==="margin")val+=parseFloat(jQuery.curCSS(elem,"margin"+this,true))||0;else
val-=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});}if(elem.offsetWidth!==0)getWH();else
jQuery.swap(elem,props,getWH);return Math.max(0,Math.round(val));}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;if(name=="opacity"&&!jQuery.support.opacity){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle)ret=computedStyle.getPropertyValue(name);if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context,fragment){context=context||document;if(typeof context.createElement==="undefined")context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;if(!fragment&&elems.length===1&&typeof elems[0]==="string"){var match=/^<(\w+)\s*\/?>$/.exec(elems[0]);if(match)return[context.createElement(match[1])];}var ret=[],scripts=[],div=context.createElement("div");jQuery.each(elems,function(i,elem){if(typeof elem==="number")elem+='';if(!elem)return;if(typeof elem==="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=elem.replace(/^\s+/,"").substring(0,10).toLowerCase();var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!jQuery.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(!jQuery.support.tbody){var hasBody=/<tbody/i.test(elem),tbody=!tags.indexOf("<table")&&!hasBody?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&!hasBody?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);}if(!jQuery.support.leadingWhitespace&&/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);elem=jQuery.makeArray(div.childNodes);}if(elem.nodeType)ret.push(elem);else
ret=jQuery.merge(ret,elem);});if(fragment){for(var i=0;ret[i];i++){if(jQuery.nodeName(ret[i],"script")&&(!ret[i].type||ret[i].type.toLowerCase()==="text/javascript")){scripts.push(ret[i].parentNode?ret[i].parentNode.removeChild(ret[i]):ret[i]);}else{if(ret[i].nodeType===1)ret.splice.apply(ret,[i+1,0].concat(jQuery.makeArray(ret[i].getElementsByTagName("script"))));fragment.appendChild(ret[i]);}}return scripts;}return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&elem.parentNode)elem.parentNode.selectedIndex;if(name in elem&&notxml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;if(name=="tabIndex"){var attributeNode=elem.getAttributeNode("tabIndex");return attributeNode&&attributeNode.specified?attributeNode.value:elem.nodeName.match(/(button|input|object|select|textarea)/i)?0:elem.nodeName.match(/^(a|area)$/i)&&elem.href?0:undefined;}return elem[name];}if(!jQuery.support.style&&notxml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=!jQuery.support.hrefNormalized&&notxml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(!jQuery.support.opacity&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||typeof array==="string"||jQuery.isFunction(array)||array.setInterval)ret[0]=array;else
while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(!jQuery.support.getAll){while((elem=second[i++])!=null)if(elem.nodeType!=8)first[pos++]=elem;}else
while((elem=second[i++])!=null)first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,'0'])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret),name,selector);};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(selector){var ret=[],insert=jQuery(selector);for(var i=0,l=insert.length;i<l;i++){var elems=(i>0?this.clone(true):this).get();jQuery.fn[original].apply(jQuery(insert[i]),elems);ret=ret.concat(elems);}return this.pushStack(ret,name,selector);};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames,state){if(typeof state!=="boolean")state=!jQuery.className.has(this,classNames);jQuery.className[state?"add":"remove"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).length){jQuery("*",this).add([this]).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(this).children().remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},queue:function(elem,type,data){if(elem){type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!q||jQuery.isArray(data))q=jQuery.data(elem,type,jQuery.makeArray(data));else if(data)q.push(data);}return q;},dequeue:function(elem,type){var queue=jQuery.queue(elem,type),fn=queue.shift();if(!type||type==="fx")fn=queue[0];if(fn!==undefined)fn.call(elem);}});jQuery.fn.extend({data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else
return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},queue:function(type,data){if(typeof type!=="string"){data=type;type="fx";}if(data===undefined)return jQuery.queue(this[0],type);return this.each(function(){var queue=jQuery.queue(this,type,data);if(type=="fx"&&queue.length==1)queue[0].call(this);});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});}});(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,done=0,toString=Object.prototype.toString;var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;if(context.nodeType!==1&&context.nodeType!==9)return[];if(!selector||typeof selector!=="string"){return results;}var parts=[],m,set,checkSet,check,mode,extra,prune=true;chunker.lastIndex=0;while((m=chunker.exec(selector))!==null){parts.push(m[1]);if(m[2]){extra=RegExp.rightContext;break;}}if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector])selector+=parts.shift();set=posProcess(selector,set);}}}else{var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&context.parentNode?context.parentNode:context,isXML(context));set=Sizzle.filter(ret.expr,ret.set);if(parts.length>0){checkSet=makeArray(set);}else{prune=false;}while(parts.length){var cur=parts.pop(),pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();}if(pop==null){pop=context;}Expr.relative[cur](checkSet,pop,isXML(context));}}if(!checkSet){checkSet=set;}if(!checkSet){throw"Syntax error, unrecognized expression: "+(cur||selector);}if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context.nodeType===1){for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(var i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}else{makeArray(checkSet,results);}if(extra){Sizzle(extra,context,results,seed);if(sortOrder){hasDuplicate=false;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i<results.length;i++){if(results[i]===results[i-1]){results.splice(i--,1);}}}}}return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.find=function(expr,context,isXML){var set,match;if(!expr){return[];}for(var i=0,l=Expr.order.length;i<l;i++){var type=Expr.order[i],match;if((match=Expr.match[type].exec(expr))){var left=RegExp.leftContext;if(left.substr(left.length-1)!=="\\"){match[1]=(match[1]||"").replace(/\\/g,"");set=Expr.find[type](match,context,isXML);if(set!=null){expr=expr.replace(Expr.match[type],"");break;}}}}if(!set){set=context.getElementsByTagName("*");}return{set:set,expr:expr};};Sizzle.filter=function(expr,set,inplace,not){var old=expr,result=[],curLoop=set,match,anyFound,isXMLFilter=set&&set[0]&&isXML(set[0]);while(expr&&set.length){for(var type in Expr.filter){if((match=Expr.match[type].exec(expr))!=null){var filter=Expr.filter[type],found,item;anyFound=false;if(curLoop==result){result=[];}if(Expr.preFilter[type]){match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);if(!match){anyFound=found=true;}else if(match===true){continue;}}if(match){for(var i=0;(item=curLoop[i])!=null;i++){if(item){found=filter(item,match,i,curLoop);var pass=not^!!found;if(inplace&&found!=null){if(pass){anyFound=true;}else{curLoop[i]=false;}}else if(pass){result.push(item);anyFound=true;}}}}if(found!==undefined){if(!inplace){curLoop=result;}expr=expr.replace(Expr.match[type],"");if(!anyFound){return[];}break;}}}if(expr==old){if(anyFound==null){throw"Syntax error, unrecognized expression: "+expr;}else{break;}}old=expr;}return curLoop;};var Expr=Sizzle.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");}},relative:{"+":function(checkSet,part,isXML){var isPartStr=typeof part==="string",isTag=isPartStr&&!/\W/.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag&&!isXML){part=part.toUpperCase();}for(var i=0,l=checkSet.length,elem;i<l;i++){if((elem=checkSet[i])){while((elem=elem.previousSibling)&&elem.nodeType!==1){}checkSet[i]=isPartStrNotTag||elem&&elem.nodeName===part?elem||false:elem===part;}}if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part,isXML){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=isXML?part:part.toUpperCase();for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName===part?parent:false;}}}else{for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){checkSet[i]=isPartStr?elem.parentNode:elem.parentNode===part;}}if(isPartStr){Sizzle.filter(part,checkSet,true);}}},"":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(!part.match(/\W/)){var nodeCheck=part=isXML?part:part.toUpperCase();checkFn=dirNodeCheck;}checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!part.match(/\W/)){var nodeCheck=part=isXML?part:part.toUpperCase();checkFn=dirNodeCheck;}checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML);}},find:{ID:function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?[m]:[];}},NAME:function(match,context,isXML){if(typeof context.getElementsByName!=="undefined"){var ret=[],results=context.getElementsByName(match[1]);for(var i=0,l=results.length;i<l;i++){if(results[i].getAttribute("name")===match[1]){ret.push(results[i]);}}return ret.length===0?null:ret;}},TAG:function(match,context){return context.getElementsByTagName(match[1]);}},preFilter:{CLASS:function(match,curLoop,inplace,result,not,isXML){match=" "+match[1].replace(/\\/g,"")+" ";if(isXML){return match;}for(var i=0,elem;(elem=curLoop[i])!=null;i++){if(elem){if(not^(elem.className&&(" "+elem.className+" ").indexOf(match)>=0)){if(!inplace)result.push(elem);}else if(inplace){curLoop[i]=false;}}}return false;},ID:function(match){return match[1].replace(/\\/g,"");},TAG:function(match,curLoop){for(var i=0;curLoop[i]===false;i++){}return curLoop[i]&&isXML(curLoop[i])?match[1]:match[1].toUpperCase();},CHILD:function(match){if(match[1]=="nth"){var test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(match[2]=="even"&&"2n"||match[2]=="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;}match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1].replace(/\\/g,"");if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];}if(match[2]==="~="){match[4]=" "+match[4]+" ";}return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if(match[3].match(chunker).length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);if(!inplace){result.push.apply(result,ret);}return false;}}else if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;}return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;},selected:function(elem){elem.parentNode.selectedIndex;return elem.selected===true;},parent:function(elem){return!!elem.firstChild;},empty:function(elem){return!elem.firstChild;},has:function(elem,i,match){return!!Sizzle(match[3],elem).length;},header:function(elem){return/h\d/i.test(elem.nodeName);},text:function(elem){return"text"===elem.type;},radio:function(elem){return"radio"===elem.type;},checkbox:function(elem){return"checkbox"===elem.type;},file:function(elem){return"file"===elem.type;},password:function(elem){return"password"===elem.type;},submit:function(elem){return"submit"===elem.type;},image:function(elem){return"image"===elem.type;},reset:function(elem){return"reset"===elem.type;},button:function(elem){return"button"===elem.type||elem.nodeName.toUpperCase()==="BUTTON";},input:function(elem){return/input|select|textarea|button/i.test(elem.nodeName);}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return i<match[3]-0;},gt:function(elem,i,match){return i>match[3]-0;},nth:function(elem,i,match){return match[3]-0==i;},eq:function(elem,i,match){return match[3]-0==i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else if(name==="contains"){return(elem.textContent||elem.innerText||"").indexOf(match[3])>=0;}else if(name==="not"){var not=match[3];for(var i=0,l=not.length;i<l;i++){if(not[i]===elem){return false;}}return true;}},CHILD:function(elem,match){var type=match[1],node=elem;switch(type){case'only':case'first':while(node=node.previousSibling){if(node.nodeType===1)return false;}if(type=='first')return true;node=elem;case'last':while(node=node.nextSibling){if(node.nodeType===1)return false;}return true;case'nth':var first=match[2],last=match[3];if(first==1&&last==0){return true;}var doneName=match[0],parent=elem.parentNode;if(parent&&(parent.sizcache!==doneName||!elem.nodeIndex)){var count=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){node.nodeIndex=++count;}}parent.sizcache=doneName;}var diff=elem.nodeIndex-last;if(first==0){return diff==0;}else{return(diff%first==0&&diff/first>=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||elem.nodeName===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];return result==null?type==="!=":type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!=check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS;for(var type in Expr.match){Expr.match[type]=RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);}var makeArray=function(array,results){array=Array.prototype.slice.call(array);if(results){results.push.apply(results,array);return results;}return array;};try{Array.prototype.slice.call(document.documentElement.childNodes);}catch(e){makeArray=function(array,results){var ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var i=0,l=array.length;i<l;i++){ret.push(array[i]);}}else{for(var i=0;array[i];i++){ret.push(array[i]);}}}return ret;};}var sortOrder;if(document.documentElement.compareDocumentPosition){sortOrder=function(a,b){var ret=a.compareDocumentPosition(b)&4?-1:a===b?0:1;if(ret===0){hasDuplicate=true;}return ret;};}else if("sourceIndex"in document.documentElement){sortOrder=function(a,b){var ret=a.sourceIndex-b.sourceIndex;if(ret===0){hasDuplicate=true;}return ret;};}else if(document.createRange){sortOrder=function(a,b){var aRange=a.ownerDocument.createRange(),bRange=b.ownerDocument.createRange();aRange.selectNode(a);aRange.collapse(true);bRange.selectNode(b);bRange.collapse(true);var ret=aRange.compareBoundaryPoints(Range.START_TO_END,bRange);if(ret===0){hasDuplicate=true;}return ret;};}(function(){var form=document.createElement("form"),id="script"+(new Date).getTime();form.innerHTML="<input name='"+id+"'/>";var root=document.documentElement;root.insertBefore(form,root.firstChild);if(!!document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return elem.nodeType===1&&node&&node.nodeValue===match;};}root.removeChild(form);})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);}}results=tmp;}return results;};}div.innerHTML="<a href='#'></a>";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}})();if(document.querySelectorAll)(function(){var oldSizzle=Sizzle,div=document.createElement("div");div.innerHTML="<p class='TEST'></p>";if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return;}Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&context.nodeType===9&&!isXML(context)){try{return makeArray(context.querySelectorAll(query),extra);}catch(e){}}return oldSizzle(query,context,extra,seed);};Sizzle.find=oldSizzle.find;Sizzle.filter=oldSizzle.filter;Sizzle.selectors=oldSizzle.selectors;Sizzle.matches=oldSizzle.matches;})();if(document.getElementsByClassName&&document.documentElement.getElementsByClassName)(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(div.getElementsByClassName("e").length===0)return;div.lastChild.className="e";if(div.getElementsByClassName("e").length===1)return;Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){if(sibDir&&elem.nodeType===1){elem.sizcache=doneName;elem.sizset=i;}elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}if(elem.nodeType===1&&!isXML){elem.sizcache=doneName;elem.sizset=i;}if(elem.nodeName===cur){match=elem;break;}elem=elem[dir];}checkSet[i]=match;}}}function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){var sibDir=dir=="previousSibling"&&!isXML;for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){if(sibDir&&elem.nodeType===1){elem.sizcache=doneName;elem.sizset=i;}elem=elem[dir];var match=false;while(elem){if(elem.sizcache===doneName){match=checkSet[elem.sizset];break;}if(elem.nodeType===1){if(!isXML){elem.sizcache=doneName;elem.sizset=i;}if(typeof cur!=="string"){if(elem===cur){match=true;break;}}else if(Sizzle.filter(cur,[elem]).length>0){match=elem;break;}}elem=elem[dir];}checkSet[i]=match;}}}var contains=document.compareDocumentPosition?function(a,b){return a.compareDocumentPosition(b)&16;}:function(a,b){return a!==b&&(a.contains?a.contains(b):true);};var isXML=function(elem){return elem.nodeType===9&&elem.documentElement.nodeName!=="HTML"||!!elem.ownerDocument&&isXML(elem.ownerDocument);};var posProcess=function(selector,context){var tmpSet=[],later="",match,root=context.nodeType?[context]:context;while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");}selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i<l;i++){Sizzle(selector,root[i],tmpSet);}return Sizzle.filter(later,tmpSet);};jQuery.find=Sizzle;jQuery.filter=Sizzle.filter;jQuery.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.filters;Sizzle.selectors.filters.hidden=function(elem){return elem.offsetWidth===0||elem.offsetHeight===0;};Sizzle.selectors.filters.visible=function(elem){return elem.offsetWidth>0||elem.offsetHeight>0;};Sizzle.selectors.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.multiFilter=function(expr,elems,not){if(not){expr=":not("+expr+")";}return Sizzle.matches(expr,elems);};jQuery.dir=function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;};jQuery.nth=function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;};jQuery.sibling=function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;};return;window.Sizzle=Sizzle;})();jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(elem.setInterval&&elem!=window)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!==undefined){var fn=handler;handler=this.proxy(fn);handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(arguments.callee.elem,arguments):undefined;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();handler.type=namespaces.slice().sort().join(".");var handlers=events[type];if(jQuery.event.specialAll[type])jQuery.event.specialAll[type].setup.call(elem,data,namespaces);if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem,data,namespaces)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types===undefined||(typeof types==="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var namespaces=type.split(".");type=namespaces.shift();var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");if(events[type]){if(handler)delete events[type][handler.guid];else
for(var handle in events[type])if(namespace.test(events[type][handle].type))delete events[type][handle];if(jQuery.event.specialAll[type])jQuery.event.specialAll[type].teardown.call(elem,namespaces);for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem,namespaces)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(event,data,elem,bubbling){var type=event.type||event;if(!bubbling){event=typeof event==="object"?event[expando]?event:jQuery.extend(jQuery.Event(type),event):jQuery.Event(type);if(type.indexOf("!")>=0){event.type=type=type.slice(0,-1);event.exclusive=true;}if(!elem){event.stopPropagation();if(this.global[type])jQuery.each(jQuery.cache,function(){if(this.events&&this.events[type])jQuery.event.trigger(event,data,this.handle.elem);});}if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;event.result=undefined;event.target=elem;data=jQuery.makeArray(data);data.unshift(event);}event.currentTarget=elem;var handle=jQuery.data(elem,"handle");if(handle)handle.apply(elem,data);if((!elem[type]||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)event.result=false;if(!bubbling&&elem[type]&&!event.isDefaultPrevented()&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;if(!event.isPropagationStopped()){var parent=elem.parentNode||elem.ownerDocument;if(parent)jQuery.event.trigger(event,data,parent,true);}},handle:function(event){var all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;var namespaces=event.type.split(".");event.type=namespaces.shift();all=!namespaces.length&&!event.exclusive;var namespace=RegExp("(^|\\.)"+namespaces.slice().sort().join(".*\\.")+"(\\.|$)");handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||namespace.test(handler.type)){event.handler=handler;event.data=handler.data;var ret=handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}if(event.isImmediatePropagationStopped())break;}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(event){if(event[expando])return event;var originalEvent=event;event=jQuery.Event(originalEvent);for(var i=this.props.length,prop;i;){prop=this.props[--i];event[prop]=originalEvent[prop];}if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy=proxy||function(){return fn.apply(this,arguments);};proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:bindReady,teardown:function(){}}},specialAll:{live:{setup:function(selector,namespaces){jQuery.event.add(this,namespaces[0],liveHandler);},teardown:function(namespaces){if(namespaces.length){var remove=0,name=RegExp("(^|\\.)"+namespaces[0]+"(\\.|$)");jQuery.each((jQuery.data(this,"events").live||{}),function(){if(name.test(this.type))remove++;});if(remove<1)jQuery.event.remove(this,namespaces[0],liveHandler);}}}}};jQuery.Event=function(src){if(!this.preventDefault)return new jQuery.Event(src);if(src&&src.type){this.originalEvent=src;this.type=src.type;}else
this.type=src;this.timeStamp=now();this[expando]=true;};function returnFalse(){return false;}function returnTrue(){return true;}jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e)return;if(e.preventDefault)e.preventDefault();e.returnValue=false;},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e)return;if(e.stopPropagation)e.stopPropagation();e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};var withinElement=function(event){var parent=event.relatedTarget;while(parent&&parent!=this)try{parent=parent.parentNode;}catch(e){parent=this;}if(parent!=this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}};jQuery.each({mouseover:'mouseenter',mouseout:'mouseleave'},function(orig,fix){jQuery.event.special[fix]={setup:function(){jQuery.event.add(this,orig,withinElement,fix);},teardown:function(){jQuery.event.remove(this,orig,withinElement);}};});jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){if(this[0]){var event=jQuery.Event(type);event.preventDefault();event.stopPropagation();jQuery.event.trigger(event,data,this[0]);return event.result;}},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else
jQuery.readyList.push(fn);return this;},live:function(type,fn){var proxy=jQuery.event.proxy(fn);proxy.guid+=this.selector+type;jQuery(document).bind(liveConvert(type,this.selector),this.selector,proxy);return this;},die:function(type,fn){jQuery(document).unbind(liveConvert(type,this.selector),fn?{guid:fn.guid+this.selector+type}:null);return this;}});function liveHandler(event){var check=RegExp("(^|\\.)"+event.type+"(\\.|$)"),stop=true,elems=[];jQuery.each(jQuery.data(this,"events").live||[],function(i,fn){if(check.test(fn.type)){var elem=jQuery(event.target).closest(fn.data)[0];if(elem)elems.push({elem:elem,fn:fn});}});elems.sort(function(a,b){return jQuery.data(a.elem,"closest")-jQuery.data(b.elem,"closest");});jQuery.each(elems,function(){if(this.fn.call(this.elem,event,this.fn.data)===false)return(stop=false);});return stop;}function liveConvert(type,selector){return["live",type,selector.replace(/\./g,"`").replace(/ /g,"|")].join(".");}jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document,jQuery);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);jQuery.ready();},false);}else if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);jQuery.ready();}});if(document.documentElement.doScroll&&window==window.top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,"+"change,select,submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});jQuery(window).bind('unload',function(){for(var id in jQuery.cache)if(id!=1&&jQuery.cache[id].handle)jQuery.event.remove(jQuery.cache[id].handle.elem);});(function(){jQuery.support={};var root=document.documentElement,script=document.createElement("script"),div=document.createElement("div"),id="script"+(new Date).getTime();div.style.display="none";div.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var all=div.getElementsByTagName("*"),a=div.getElementsByTagName("a")[0];if(!all||!all.length||!a){return;}jQuery.support={leadingWhitespace:div.firstChild.nodeType==3,tbody:!div.getElementsByTagName("tbody").length,objectAll:!!div.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!div.getElementsByTagName("link").length,style:/red/.test(a.getAttribute("style")),hrefNormalized:a.getAttribute("href")==="/a",opacity:a.style.opacity==="0.5",cssFloat:!!a.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};script.type="text/javascript";try{script.appendChild(document.createTextNode("window."+id+"=1;"));}catch(e){}root.insertBefore(script,root.firstChild);if(window[id]){jQuery.support.scriptEval=true;delete window[id];}root.removeChild(script);if(div.attachEvent&&div.fireEvent){div.attachEvent("onclick",function(){jQuery.support.noCloneEvent=false;div.detachEvent("onclick",arguments.callee);});div.cloneNode(true).fireEvent("onclick");}jQuery(function(){var div=document.createElement("div");div.style.width=div.style.paddingLeft="1px";document.body.appendChild(div);jQuery.boxModel=jQuery.support.boxModel=div.offsetWidth===2;document.body.removeChild(div).style.display='none';});})();var styleFloat=jQuery.support.cssFloat?"cssFloat":"styleFloat";jQuery.props={"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!=="string")return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else if(typeof params==="object"){params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);if(callback)self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){setTimeout(function(){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);},1);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var parts=/^(\w+:)?\/\/([^\/?#]+)/.exec(s.url);if(s.dataType=="script"&&type=="GET"&&parts&&(parts[1]&&parts[1]!=location.protocol||parts[2]!=location.host)){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();script.onload=script.onreadystatechange=null;head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=s.xhr();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else
xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(xhr.readyState==0){if(ival){clearInterval(ival);ival=null;if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}}else if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else
jQuery.handleError(s,xhr,status);complete();if(isTimeout)xhr.abort();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr&&!requestDone)onreadystatechange("timeout");},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url];}catch(e){}return false;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(s&&s.dataFilter)data=s.dataFilter(data,type);if(typeof data==="string"){if(type=="script")jQuery.globalEval(data);if(type=="json")data=window["eval"]("("+data+")");}return data;},param:function(a){var s=[];function add(key,value){if(value===null)return;s[s.length]=encodeURIComponent(key)+'='+encodeURIComponent(value);};if(jQuery.isArray(a)||a.jquery)jQuery.each(a,function(){add(this.name,this.value);});else
for(var j in a)if(jQuery.isArray(a[j]))jQuery.each(a[j],function(){add(j,this);});else
add(j,jQuery.isFunction(a[j])?a[j]():a[j]);return s.join("&").replace(/%20/g,"+");}});var elemdisplay={},timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;}jQuery.fn.extend({show:function(speed,callback){if(speed){return this.animate(genFx("show",3),speed,callback);}else{for(var i=0,l=this.length;i<l;i++){var old=jQuery.data(this[i],"olddisplay");this[i].style.display=old||"";if(jQuery.css(this[i],"display")==="none"){var tagName=this[i].tagName,display;if(elemdisplay[tagName]){display=elemdisplay[tagName];}else{var elem=jQuery("<"+tagName+" />").appendTo("body");display=elem.css("display");if(display==="none")display="block";elem.remove();elemdisplay[tagName]=display;}jQuery.data(this[i],"olddisplay",display);}}for(var i=0,l=this.length;i<l;i++){this[i].style.display=jQuery.data(this[i],"olddisplay")||"";}return this;}},hide:function(speed,callback){if(speed){return this.animate(genFx("hide",3),speed,callback);}else{for(var i=0,l=this.length;i<l;i++){var old=jQuery.data(this[i],"olddisplay");if(!old&&old!=="none")jQuery.data(this[i],"olddisplay",jQuery.css(this[i],"display"));}for(var i=0,l=this.length;i<l;i++){this[i].style.display="none";}return this;}},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){var bool=typeof fn==="boolean";return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn==null||bool?this.each(function(){var state=bool?fn:jQuery(this).is(":hidden");jQuery(this)[state?"show":"hide"]();}):this.animate(genFx("toggle",3),fn,fn2);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){var opt=jQuery.extend({},optall),p,hidden=this.nodeType==1&&jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if((p=="height"||p=="width")&&this.style){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
e.custom(start,val,"");}});return true;});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(name,props){jQuery.fn[name]=function(speed,callback){return this.animate(props,speed,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=typeof speed==="object"?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:jQuery.fx.speeds[opt.duration]||jQuery.fx.speeds._default;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style)this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(timerId);timerId=undefined;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)jQuery(this.elem).hide();if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);this.options.complete.call(this.elem);}return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null)fx.elem.style[fx.prop]=fx.now+fx.unit;else
fx.elem[fx.prop]=fx.now;}}});if(document.documentElement["getBoundingClientRect"])jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);var box=this[0].getBoundingClientRect(),doc=this[0].ownerDocument,body=doc.body,docElem=doc.documentElement,clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,top=box.top+(self.pageYOffset||jQuery.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};else
jQuery.fn.offset=function(){if(!this[0])return{top:0,left:0};if(this[0]===this[0].ownerDocument.body)return jQuery.offset.bodyOffset(this[0]);jQuery.offset.initialized||jQuery.offset.initialize();var elem=this[0],offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView.getComputedStyle(elem,null),top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){computedStyle=defaultView.getComputedStyle(elem,null);top-=elem.scrollTop,left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop,left+=elem.offsetLeft;if(jQuery.offset.doesNotAddBorder&&!(jQuery.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(elem.tagName)))top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;}if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible")top+=parseInt(computedStyle.borderTopWidth,10)||0,left+=parseInt(computedStyle.borderLeftWidth,10)||0;prevComputedStyle=computedStyle;}if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static")top+=body.offsetTop,left+=body.offsetLeft;if(prevComputedStyle.position==="fixed")top+=Math.max(docElem.scrollTop,body.scrollTop),left+=Math.max(docElem.scrollLeft,body.scrollLeft);return{top:top,left:left};};jQuery.offset={initialize:function(){if(this.initialized)return;var body=document.body,container=document.createElement('div'),innerDiv,checkDiv,table,td,rules,prop,bodyMarginTop=body.style.marginTop,html='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';rules={position:'absolute',top:0,left:0,margin:0,border:0,width:'1px',height:'1px',visibility:'hidden'};for(prop in rules)container.style[prop]=rules[prop];container.innerHTML=html;body.insertBefore(container,body.firstChild);innerDiv=container.firstChild,checkDiv=innerDiv.firstChild,td=innerDiv.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(checkDiv.offsetTop!==5);this.doesAddBorderForTableAndCells=(td.offsetTop===5);innerDiv.style.overflow='hidden',innerDiv.style.position='relative';this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);body.style.marginTop='1px';this.doesNotIncludeMarginInBodyOffset=(body.offsetTop===0);body.style.marginTop=bodyMarginTop;body.removeChild(container);this.initialized=true;},bodyOffset:function(body){jQuery.offset.initialized||jQuery.offset.initialize();var top=body.offsetTop,left=body.offsetLeft;if(jQuery.offset.doesNotIncludeMarginInBodyOffset)top+=parseInt(jQuery.curCSS(body,'marginTop',true),10)||0,left+=parseInt(jQuery.curCSS(body,'marginLeft',true),10)||0;return{top:top,left:left};}};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return null;return val!==undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom",lower=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],lower,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],lower,false,margin?"margin":"border"):null;};var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(document.documentElement["client"+name],document.body["scroll"+name],document.documentElement["scroll"+name],document.body["offset"+name],document.documentElement["offset"+name]):size===undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,typeof size==="string"?size:size+"px");};});})();if(typeof(Tmw)=='undefined')Tmw={};Tmw.extend=function(){var target=arguments[0];var a=1;if(arguments.length==1){target=Tmw;a=0;}for(;;){var prop=arguments[a++];if(!prop)break;for(var i in prop)target[i]=prop[i];}return target;};Tmw.extend({Reactor:{callables_:{},callId_:0,callLater:function(duration,callable){var id=Tmw.Reactor.callId_++;Tmw.Reactor.callables_[id]=callable;if(!duration||duration<=0)duration=0;window.setTimeout("Tmw.Reactor.next("+id+")",duration);},next:function(id){callable=Tmw.Reactor.callables_[id];if(!callable)return;delete Tmw.Reactor.callables_[id];try
{callable();}catch(e){}}},getTime:function(){return(new Date()).getTime();},isArray:function(obj){return obj&&obj.sort;},propertyCount:function(obj){if(!obj)return 0;var i=0;for(var k in obj){i++;}return i;},popItem:function(obj){if(obj){for(var name in obj){var item=obj[name];delete obj[name];return item;}}return undefined;},Location:function(){this.hostname=window.location.hostname;this.host=window.location.host;this.href=window.location.href;},getLocation:function(){return new Tmw.Location();},makeURI:function(service,params,cacheable){var pairs=[];if(params){for(var name in params){var value=params[name];if(value===null||typeof(value)=='undefined')continue;pairs.push(encodeURIComponent(name)+"="+encodeURIComponent(value));}}if(!cacheable)pairs.push("timestamp"+"="+(new Date()).getTime());uri=service;if(pairs.length>0){uri=uri!==null?uri+'?':'';uri+=pairs.join("&");}return uri;},parseQueryString:function(uri){var parts=uri.split('?');if(parts.length>2)throw'more than one question mark in uri';var path=parts.length>1?parts[0]:null;var paramsStr=parts.length>1?parts[1]:parts[0];var pairs=paramsStr.split('&');var params={};for(var i=0;i<pairs.length;++i){var pair=pairs[i].split('=');if(pair.length==2)params[decodeURIComponent(pair[0])]=decodeURIComponent(pair[1]);}return[path,params];},CancelledError:function(){this.reason="Cancelled";},Failure:function(err){this.err=err;},Deferred:function(){this.callbacks_=[];this.fired_=false;this.paused_=0;this.result_=undefined;this.cancelled_=false;this.call=function(value){if(this.fired_||value instanceof Tmw.Deferred)return;this.fired_=true;this.run_(value);};this.cancel=function(){this.cancelled_=true;};this.pause_=function(){this.paused_++;};this.unpause_=function(){this.paused_--;if(this.paused_!==0)return;if(this.fired_)this.run_(this.result_);};this.restart_=function(value){this.result_=value;this.unpause_();};this.addCallback=function(callback,errback){if(!callback){callback=function(res){return res;};}if(!errback){errback=function(err){return err;};}return this.addCallbacks({onSuccess:callback,onFailure:errback});};this.addErrback=function(callback){return this.addCallback(null,callback);};this.addBoth=function(callback){return this.addCallback(callback,callback);};this.addCallbacks=function(callback){if(!callback)return this;this.callbacks_.push(callback);if(!this.fired_)return this;this.run_(this.result_);return this;};var deferred=this;this.run_=function(value){this.result_=value;if(!this.paused_){while(this.callbacks_.length>0){if(this.cancelled_){this.result_=new Tmw.Failure(new Tmw.CancelledError());this.cancelled_=false;}var callback=this.callbacks_.shift();try
{this.result_=this.result_ instanceof Tmw.Failure?callback.onFailure(this.result_):callback.onSuccess(this.result_);}catch(e){if(window&&window.console){window.console.error("Deferred:",e);}Tmw.log('Deferred','',e);this.result_=new Tmw.Failure(e);}if(this.result_ instanceof Tmw.Deferred){this.pause_();this.result_.addCallbacks({onSuccess:function(res){deferred.restart_(res);return null;},onFailure:function(err){deferred.restart_(err);return null;}});break;}}}};}});Tmw.Deferred.failure=function(err){if(!(err instanceof Tmw.Failure))err=new Tmw.Failure(err);var d=new Tmw.Deferred();d.call(err);return d;};Tmw.Deferred.success=function(value){var d=new Tmw.Deferred();d.call(value);return d;};Tmw.Xml={NODETYPE_ELEMENT_NODE:1,NODETYPE_TEXT_NODE:3,loadDocument:function(xmlString){var doc=null;if(document.implementation.createDocument){var parser=new DOMParser();doc=parser.parseFromString(xmlString,"text/xml");}else if(window.ActiveXObject){doc=new ActiveXObject("Microsoft.XMLDOM");doc.async="false";doc.loadXML(xmlString);}else
{throw"loadDocument() is not supported by this browser";}return doc;},getTextValue:function(element){if(element&&element.hasChildNodes()){var text=[];var children=element.childNodes;for(var i=0;i!=children.length;++i){var n=children.item(i);if(n.nodeType!=Tmw.Xml.NODETYPE_TEXT_NODE)continue;text.push(n.nodeValue);}return text.join("");}return null;},getChildElements:function(element,name){if(!element)return[];var children=[];var childNodes=element.childNodes;for(var i=0;i!=childNodes.length;++i){var c=childNodes.item(i);if(c.nodeType!=Tmw.Xml.NODETYPE_ELEMENT_NODE)continue;if(name&&name!=c.nodeName)continue;children.push(c);}return children;},getChildElement:function(element,name){var children=Tmw.Xml.getChildElements(element,name);if(children&&children.length>0)return children[0];return null;},getAttribute:function(element,name){var value=element.getAttribute(name);return value===null||typeof(value)=='undefined'?null:value;},escape:function(text){var e=document.createElement('div');var t=document.createTextNode(text);e.appendChild(t);return e.innerHTML;}};Function.prototype.bind=function(obj){var method=this;return function(){return method.apply(obj,arguments);};};Tmw.log=function(){};if(typeof(Tmw)=='undefined')Tmw={};TmwLoad=function(){Tmw.Rect=function(){if(arguments.length==4){this.xmin=arguments[0];this.ymin=arguments[1];this.xmax=arguments[2];this.ymax=arguments[3];}else
{this.xmin=0.0;this.ymin=0.0;this.xmax=0.0;this.ymax=0.0;}this.contains=function(point){if(point.lat>this.ymax||point.lat<this.ymin)return false;return this.xmin<=this.xmax?point.lng>=this.xmin&&point.lng<=this.xmax:!(point.lng>this.xmax&&point.lng<this.xmin);};};Tmw.PLatLng=function(lat,lng){this.lat=lat;this.lng=lng;this.isClose=function(other){return Math.abs(this.lat-other.lat)<1e-6&&Math.abs(this.lng-other.lng)<1e-6;};};Tmw.Media=function(uid,width,height,contentType){this.uid=uid;this.getUid=function(){return this.uid;};this.width=width;this.getWidth=function(){return this.width;};this.height=height;this.getHeight=function(){return this.height;};this.contentType=contentType;var pos=this.contentType.indexOf("/");this.ext_="."+(pos<0?this.contentType:this.contentType.substring(pos+1));this.getUrl=function(size){return"/media/"+(size?size:"f")+"/"+this.uid+this.ext_;};};function parseMedia(element){var uid=element.getAttribute("uid");var w=element.getAttribute("width");if(w)w=parseInt(w,10);var h=element.getAttribute("height");if(h)h=parseInt(h,10);var contentType=element.getAttribute("content-type");return new Tmw.Media(uid,w,h,contentType);}Tmw.Marker=function(url,width,height,anchorx,anchory){this.url=url;this.width=width;this.height=height;this.anchorx=anchorx;this.anchory=anchory;this.getWidth=function(){return this.width;};this.getHeight=function(){return this.height;};this.getAnchorX=function(){return this.anchorx;};this.getAnchorY=function(){return this.anchory;};this.getUrl=function(){return this.url;};this.getHtml=function(){var html="<div style='position:relative; left:"+this.anchorx+"px;top:"+-this.anchory+"px;'><img src='"+this.url+"' width='"+this.width+"' height='"+this.height+"' ></img></div>";return html;};};Tmw.Category=function(element){if(!element)return;this.uid=element.getAttribute("uid");this.name=element.getAttribute("name");this.haspoi=!!element.getAttribute("haspoi");this.nickname=Tmw.Xml.getAttribute(element,"nickname");this.childUids=[];var children=Tmw.Xml.getChildElements(Tmw.Xml.getChildElement(element,"membercats"),"cat");for(var i=0;i!=children.length;++i){var uid=Tmw.Xml.getAttribute(children[i],"i");this.childUids.push(uid);}this.parents=[];this.getUid=function(){return this.uid;};this.getName=function(){return this.name;};this.getPathToRoot=function(){var path=[];var cat=this;for(;;){if(!cat)break;path.push(cat);cat=cat.parents[0];}path.reverse();return path;};};function createRoot(children){var root=new Tmw.Category();root.uid="root";root.name="All";root.haspoi=false;root.nickname=null;root.parents=[];root.children=children;for(var i=0;i!=children.length;++i){children[i].parents.push(root);}return root;}Tmw.AttributeDef=function(element){this.uid=element.getAttribute("uidatb");this.name=element.getAttribute("name");};Tmw.Attribute=function(element,catGraph){this.value=Tmw.Xml.getTextValue(element.getElementsByTagName("value").item(0));var defuid=element.getAttribute("uidatb");this.def=catGraph.getAttribute(defuid);};Tmw.CategoryGraph=function(element){this.cats={};this.catNicknames={};this.attributes={};this.root=null;this.parseLight=function(element){roots={};var cats=Tmw.Xml.getChildElements(Tmw.Xml.getChildElement(element,"cats"),"cat");var catArray=[];for(var i=0;i!=cats.length;++i){var cat=new Tmw.Category(cats[i]);catArray.push(cat);this.cats[cat.uid]=cat;if(cat.nickname)this.catNicknames[cat.nickname]=cat;roots[cat.uid]=true;}for(var uid in this.cats){var parent=this.cats[uid];var children=[];for(var i=0;i!=parent.childUids.length;++i){var c=catArray[parent.childUids[i]];var u=c.uid;if(!c)continue;if(u in roots)delete roots[u];children.push(c);c.parents.push(parent);}parent.children=children;delete parent.childUids;}var rootCats=[];for(var catuid in roots){rootCats.push(this.cats[catuid]);}this.root=createRoot(rootCats);this.cats[this.root.uid]=this.root;var atts=Tmw.Xml.getChildElements(Tmw.Xml.getChildElements(element,"atbs")[0],"atb");for(var i=0;i!=atts.length;i++){var att=new Tmw.AttributeDef(atts[i]);this.attributes[att.uid]=att;}};this.getCategory=function(catUid){return this.cats[catUid];};this.getCategoryByNickname=function(nickname){return this.catNicknames[nickname];};this.getCategories=function(){return this.cats;};this.getAttribute=function(attUid){return this.attributes[attUid];};this.getRoot=function(){return this.root;};this.parseLight(element);};Tmw.CategoryGraph.RESTAURANTUID='DE524DB0-3972-4917-A7EB-2D872D941C3E';Tmw.DEFAULT_LANG="eng";Tmw.MARKER_COMMUNITY=new Tmw.Marker('/geoplayer/i/communitypin.gif',15,28,7,25);Tmw.MARKER_CHANGED=new Tmw.Marker('/geoplayer/i/modifiedpin.gif',15,27,6,24);Tmw.MARKER_UNCHANGED=new Tmw.Marker('/geoplayer/i/unchangedpin.gif',11,20,5,18);Tmw.Poi=function(element,lang,catGraph){this.uid=element.getAttribute("uid");this.uri=element.getAttribute("permalink");var pos=element.getElementsByTagName("position").item(0);var lng=parseFloat(pos.getAttribute("x"));var lat=parseFloat(pos.getAttribute("y"));this.pos=new Tmw.PLatLng(lat,lng);this.name=element.getAttribute("name");if(this.name===null)this.name="";var descs=element.getElementsByTagName("desc");this.desc=null;for(var i=0;i!=descs.length;i++){var d=descs.item(i);var l=d.getAttribute("lang");d=Tmw.Xml.getTextValue(d.getElementsByTagName("html").item(0));if(d===null||l===null)continue;if(this.desc===null){this.desc=d;}else
{if(l==lang||l==Tmw.DEFAULT_LANG)this.desc=d;if(l==lang)break;}}this.medias=[];var medias=element.getElementsByTagName("media");for(var i=0;i!=medias.length;i++){this.medias.push(parseMedia(medias.item(i)));}this.categories={};var cats=Tmw.Xml.getChildElements(Tmw.Xml.getChildElements(element,"cats")[0],"cat");for(var i=0;i!=cats.length;++i){var uid=cats[i].getAttribute("uid");var cat=catGraph.getCategory(uid);if(cat)this.categories[cat.uid]=cat;}this.attributes=[];var atts=Tmw.Xml.getChildElements(Tmw.Xml.getChildElements(element,"atbs")[0],"atb");for(var i=0;i!=atts.length;++i){var att=new Tmw.Attribute(atts[i],catGraph);this.attributes.push(att);}var stats=Tmw.Xml.getChildElement(element,"stats");var reco=Tmw.Xml.getAttribute(stats,"commentreco");this.reco=reco===null?null:parseInt(reco,10);this.commentcount=parseInt(Tmw.Xml.getAttribute(stats,"commentcount"),10);this.modifcount=parseInt(element.getAttribute("rev"),10);this.getModifCount=function(){return this.modifcount;};this.getName=function(){return this.name;};this.getUid=function(){return this.uid;};};Tmw.Comment=function(element){this.uid=element.getAttribute("uid");var reco=element.getAttribute("poireco");this.reco=reco?parseInt(reco,10):null;this.comment=null;var html=Tmw.Xml.getChildElement(element,"html");if(html)this.comment=Tmw.Xml.getTextValue(html);};Tmw.getPoiMarker=function(poi,comment){if(comment){return Tmw.MARKER_COMMUNITY;}else
{if(poi.getModifCount()>0)return Tmw.MARKER_CHANGED;else
return Tmw.MARKER_UNCHANGED;}};Tmw.User=function(element){this.uid=element.getAttribute("uid");this.uri=element.getAttribute("permalink");this.nickname=element.getAttribute("nickname");this.publicname=element.getAttribute("publicname");var stats=Tmw.Xml.getChildElement(element,"stats");this.commentcount=parseInt(Tmw.Xml.getAttribute(stats,"commentcount"),10);};Tmw.Tracker=function(value,mode){this.value=value;this.mode=mode;this.getValue=function(){return this.value;};this.getMode=function(){return this.mode;};};Tmw.UserAttributes=function(user,readonly){var USERATT_OPTIONS='82270475-873E-4D0E-A331-5DBD3785478A';this.readonly=readonly;this.attribs={};for(var p in user._attribs)this.attribs[p]=user._attribs[p];this.get=function(uid,defval){defval=typeof(defval)!='undefined'?defval:null;var value=this.attribs[uid];return typeof(value)!='undefined'?value:defval;};this.set=function(uid,value){if(this.readonly)throw'Attributes are read-only';this.attribs[uid]=value;};this.getOptions=function(){var dec=decodeURIComponent;var opts={};var s=this.get(USERATT_OPTIONS);if(s){var parts=s.split('&');for(var i=0;i!=parts.length;++i){var pair=parts[i].split('=');if(pair.length!=2)continue;opts[dec(pair[0])]=dec(pair[1]);}}return opts;};this.setOptions=function(opts){this.set(USERATT_OPTIONS,Tmw.makeURI(null,opts,true));};this.getAll=function(){return this.attribs;};};Tmw.LoggedUser=function(element){this.uid=element.getAttribute("uid");this.nickname=element.getAttribute("nickname");this.publicname=element.getAttribute("publicname");var identity=Tmw.Xml.getChildElement(element,'currentidentity');this.login=identity.getAttribute("login");var validated=identity.getAttribute("validated")=="1";this.loginType=identity.getAttribute("typeoflogin");var mode=this.loginType=='anonymous'?'a':validated?"v":"u";var tracker=Tmw.Xml.getChildElement(element,'tracker').getAttribute('uid');this.tracker=new Tmw.Tracker(tracker,mode);this.permid=identity.getAttribute("permid");this.lang=Tmw.Xml.getTextValue(Tmw.Xml.getChildElement(element,'lang'));var home=Tmw.Xml.getChildElement(element,'home');var lng=parseFloat(home.getAttribute("x"));var lat=parseFloat(home.getAttribute("y"));this.homepos=new Tmw.PLatLng(lat,lng);this.gender=element.getAttribute("gender");this.datebirth=element.getAttribute("datebirth");if(this.datebirth){this.datebirth=this.datebirth.split('T')[0];}this._attribs={};var atbs=Tmw.Xml.getChildElement(element,'atbs');if(atbs){atbs=Tmw.Xml.getChildElements(atbs,'atb');for(var i=0;i!=atbs.length;++i){var uid=atbs[i].getAttribute('uidatb');var value=Tmw.Xml.getTextValue(Tmw.Xml.getChildElement(atbs[i],'value'));this._attribs[uid]=value;}}this.attributes=new Tmw.UserAttributes(this,true);this.getUid=function(){return this.uid;};this.getPublicname=function(){return this.publicname;};this.getTracker=function(){return this.tracker;};this.getPermid=function(){return this.permid;};this.getLogin=function(){return this.login;};this.getLanguage=function(){return this.lang;};this.getHomePos=function(){return this.homepos;};this.getAttributes=function(){return this.attributes;};this.getGender=function(){return this.gender;};this.getBirthDate=function(){return this.datebirth;};};Tmw.PoiResponse=function(poi,comment,user){this.poi=poi;this.comment=comment;this.user=user;};Tmw.PoiList=function(element){this.name=element.getAttribute("name");this.uid=element.getAttribute("uid");this.foundpoi=element.getAttribute("foundpoi");this.poicount=element.getAttribute("poicount");if(this.poicount>0){var top=parseFloat(element.getAttribute("top"));var left=parseFloat(element.getAttribute("left"));var bottom=parseFloat(element.getAttribute("bottom"));var right=parseFloat(element.getAttribute("right"));this.area=new Tmw.Rect(left,bottom,right,top);}else
{this.area=null;}this.getName=function(){return this.name;};this.getUid=function(){return this.uid;};this.getFoundPoi=function(){return this.foundpoi;};this.getArea=function(){return this.area;};};Tmw.TagGroup=function(name,tags){this.name=name;this.tags=tags;this.getName=function(){return this.name;};this.getTags=function(){return this.tags;};};}();if(typeof(Tmw)=='undefined')Tmw={};var TmwLoad=function(){Tmw.GeocodeResult=function(address,pos,accuracy,city,postalCode,thoroughFare,boundingbox){this.address=address;this.pos=pos;this.accuracy=accuracy;if(!this.accuracy&&this.accuracy!==0)this.accuracy=-1;this.city=city;this.postalCode=postalCode;this.thoroughFare=thoroughFare;this.boundingbox=boundingbox||null;this.getAddress=function(){return this.address;};this.getPos=function(){return this.pos;};this.getAccuracy=function(){return this.accuracy;};this.getCity=function(){return this.city;};this.getPostalCode=function(){return this.postalCode;};this.getThoroughFare=function(){return this.thoroughFare;};this.getBoundingBox=function(){return this.boundingbox;};};Tmw.GeocodeError=function(reason){this.name='GeocodeError';this.reason=this.message=reason;};Tmw.VEGeocoder=function(vemap){this.map=vemap;this.geocode=function(address){var d=new Tmw.Deferred();var callback=function(){try
{var results=arguments[2];var locations=[];if(results){for(var i=0;i!=results.length;++i){var r=results[i];var l=new Tmw.GeocodeResult(r.Name,new Tmw.PLatLng(r.LatLong.Latitude,r.LatLong.Longitude));locations.push(l);}}d.call(locations);}catch(e){d.call(new Tmw.Failure(e));}};try
{this.map.Find(null,address,VEFindType.Businesses,null,0,10,false,false,false,false,callback);return d;}catch(e){return Tmw.Deferred.failure(e);}};};function handleGMapResponse(response,d){try
{if(!response||response.Status.code!=200)throw new Tmw.GeocodeError('geocoding failure');var results=response.Placemark||[];if(!results)throw new Tmw.GeocodeError('empty response');var locations=[];for(var i=0;i!=results.length;++i){var r=results[i];var a=r.AddressDetails?r.AddressDetails.Accuracy:null;var city=null;var postalCode=null;var thoroughFare=null;var boundingbox=null;try
{var aa=r.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea;if(!aa)aa=r.AddressDetails.Country.AdministrativeArea;var locality=aa.Locality;city=locality.LocalityName;if(locality.PostalCode)postalCode=locality.PostalCode.PostalCodeNumber;if(locality.Thoroughfare)thoroughFare=locality.Thoroughfare.ThoroughfareName;}catch(e){}try
{if(r.ExtendedData&&r.ExtendedData.LatLonBox){var box=r.ExtendedData.LatLonBox;boundingbox=new Tmw.Rect(box.west,box.south,box.east,box.north);}}catch(e){}var l=new Tmw.GeocodeResult(r.address,new Tmw.PLatLng(r.Point.coordinates[1],r.Point.coordinates[0]),a,city,postalCode,thoroughFare,boundingbox);locations.push(l);}d.call(locations);}catch(e){d.call(new Tmw.Failure(e));}}Tmw.GMapGeocoder=function(){this.geocoder=new GClientGeocoder();this.geocode=function(address){var d=new Tmw.Deferred();try
{this.geocoder.getLocations(address,function(response){handleGMapResponse(response,d);});return d;}catch(e){return Tmw.Deferred.failure(e);}};};Tmw.GMapDirectGeocoder=function(apikey){this.apikey=apikey;this.geocode=function(address,topleft,bottomright,country){if(topleft&&bottomright){var h=Math.abs(topleft.lat-bottomright.lat);var w=Math.abs(bottomright.lng-topleft.lng);var lat=(topleft.lat+bottomright.lat)*0.5;var lng=(topleft.lng+bottomright.lng)*0.5;if(topleft.lng>bottomright.lng){w=360-w;lng+=lng<0?180:-180;}var ll=[lat,lng].join(',');var spn=[h,w].join(',');}var params={q:address,key:apikey,output:'json'};if(ll&&spn){params.ll=ll;params.spn=spn;}if(!country){var parts=window.location.host.split('.');if(parts.length>1)country=parts[parts.length-1];if(country!='fr'&&country!='com')country=null;}if(country)params.gl=country;var d=new Tmw.Deferred();var url='http://maps.google.com/maps/geo?'+$.param(params)+'&_=&callback=?';$.getJSON(url,null,function(response){handleGMapResponse(response,d);});return d;};};}();var Base64={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(input){var output=[];var chr1,chr2,chr3,enc1,enc2,enc3,enc4;var i=0;input=Base64._utf8_encode(input);while(i<input.length){chr1=input[i++];chr2=input[i++];chr3=input[i++];enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64;}else if(isNaN(chr3)){enc4=64;}output.push(this._keyStr.charAt(enc1)+this._keyStr.charAt(enc2)+this._keyStr.charAt(enc3)+this._keyStr.charAt(enc4));}return output.join("");},decode:function(input){var output=[];var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(i<input.length){enc1=this._keyStr.indexOf(input.charAt(i++));enc2=this._keyStr.indexOf(input.charAt(i++));enc3=this._keyStr.indexOf(input.charAt(i++));enc4=this._keyStr.indexOf(input.charAt(i++));chr1=(enc1<<2)|(enc2>>4);chr2=((enc2&15)<<4)|(enc3>>2);chr3=((enc3&3)<<6)|enc4;output.push(chr1);if(enc3!=64){output.push(chr2);}if(enc4!=64){output.push(chr3);}}output=Base64._utf8_decode(output);return output;},_utf8_encode:function(string){string=string.replace(/\r\n/g,"\n");var utftext=[];for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext.push(c);}else if((c>127)&&(c<2048)){utftext.push((c>>6)|192);utftext.push((c&63)|128);}else
{utftext.push((c>>12)|224);utftext.push(((c>>6)&63)|128);utftext.push((c&63)|128);}}return utftext;},_utf8_decode:function(utftext){var string=[];var i=0;var c=c1=c2=0;while(i<utftext.length){c=utftext[i++];if(c<128){string.push(String.fromCharCode(c));}else if((c>191)&&(c<224)){c2=utftext[i++];string.push(String.fromCharCode(((c&31)<<6)|(c2&63)));}else
{c2=utftext[i++];c3=utftext[i++];string.push(String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63)));}}return string.join("");}};if(typeof(Tmw)=='undefined')Tmw={};var TmwLoad=function(){Tmw.DEFAULT_POI_SEARCH_COUNT=30;Tmw.WS_VERSION="1v16";Tmw.WS_SERVICE_PATH="/ws_"+Tmw.WS_VERSION+"/s.ashx/";Tmw.JSPROXY_PATH="/geoplayer/api/jsproxy.ashx";Tmw.JSPROXY_TIMEOUT=10*1000;Tmw.JQueryAgent=function(){this.request=function(host,service,params,data){var method="POST";if(!data){method="GET";data=null;}var url=Tmw.makeURI(Tmw.WS_SERVICE_PATH+service,params);var d=new Tmw.Deferred();$.ajax({type:method,url:url,data:data,dataType:"xml",success:function(xml){d.call(xml);},error:function(http,reason,e){d.call(new Tmw.Failure({rq:http.status,reason:reason,err:e}));}});return d;};};Tmw.JsProxyAgent={callbacks_:{},callid_:0,request:function(host,service,params,data){var head=document.getElementsByTagName("head")[0];var script=document.createElement('script');var d=new Tmw.Deferred();var callid='tmw-'+Tmw.JsProxyAgent.callid_;Tmw.JsProxyAgent.callid_++;Tmw.JsProxyAgent.callbacks_[callid]=d;callparams=null;if(params){pairs=[];for(var name in params){var value=params[name];if(value===null||typeof(value)=='undefined')continue;pairs.push(name+"="+encodeURIComponent(value));}callparams=pairs.join("&");callparams=Base64.encode(callparams);}data=data?Base64.encode(data):null;var uriparams={w:Tmw.WS_VERSION,f:service,g:callparams,c:callid,p:data};var uri=Tmw.makeURI(Tmw.JSPROXY_PATH,uriparams);var url="http://"+host+uri;script.id=callid;script.type='text/javascript';script.charset='utf-8';script.src=url;head.appendChild(script);Tmw.Reactor.callLater(Tmw.JSPROXY_TIMEOUT,function(){Tmw.JsProxyAgent.timeout(callid);});return d;},callback:function(xml,callid,base64){var e=document.getElementById(callid);e.parentNode.removeChild(e);var d=Tmw.JsProxyAgent.callbacks_[callid];if(!d)return;delete Tmw.JsProxyAgent.callbacks_[callid];try
{if(base64)xml=Base64.decode(xml);xml=Tmw.Xml.loadDocument(xml);d.call(xml);}catch(e){d.call(new Tmw.Failure({rq:600,reason:"Internal Client Error",err:str(e)}));}},timeout:function(callid){var d=Tmw.JsProxyAgent.callbacks_[callid];if(!d)return;delete Tmw.JsProxyAgent.callbacks_[callid];var reason="Server Timeout";d.call(new Tmw.Failure({rq:604,reason:reason,err:reason}));}};}();if(typeof(Tmw)=='undefined')Tmw={};var TmwLoad=function(){Tmw.DATAUID_POI='poi';Tmw.DATAUID_USER='user';Tmw.DATAUID_COMMENT='comment';Tmw.DataUid=function(type,uid){this.type=type;this.uid=uid;};var checkDataType=function(type,obj){return(obj&&(type===Tmw.DATAUID_POI&&obj instanceof Tmw.Poi)||(type===Tmw.DATAUID_USER&&obj instanceof Tmw.User)||(type===Tmw.DATAUID_COMMENT&&obj instanceof Tmw.Comment));};MAX_POST_UIDS=1536/84;Tmw.EntitiesIterator=function(dataManager,items,handler){this.items=items;this.read=0;this.dm=dataManager;if(!handler){handler=function(list){return list;};}this.handler=handler;var iterator=this;var mapItems=function(items,entities){var converted=[];for(var i=0;i!=items.length;++i){var item=items[i];var conv={};for(name in item){var uid=item[name];var obj=entities[uid.uid];if(!checkDataType(uid.type,obj))obj=null;conv[name]=obj;}converted.push(conv);}return converted;};this.next=function(){if(!this.items||this.read>=this.items.length)return Tmw.Deferred.success(null);var items=[];var uids=[];for(;this.read<this.items.length;++this.read){if(uids.length>=MAX_POST_UIDS)break;var item=this.items[this.read];for(var name in item){var uid=item[name];if(!uid.uid)continue;uids.push(uid);}items.push(item);}if(!items)return Tmw.Deferred.success([]);return this.dm.getEntities(uids).addCallbacks({onSuccess:function(entities){return iterator.handler(mapItems(items,entities));},onFailure:function(entities){return[];}});};this.readAll=function(){var iterator=this;var items=[];var deferred=new Tmw.Deferred();var func=function(){Tmw.Reactor.callLater(0,function(){iterator.next().addCallback(function(chunk){if(chunk===null){deferred.call(items);return;}items=items.concat(chunk);func();});});};func();return deferred;};this.cancel=function(){this.items=null;};};Tmw.Queue=function(){this.items={};this.min=0;this.max=this.min;this.length=0;this.push=function(e){var i=this.max;this.items[i]=e;this.max++;this.length++;return i;};this.remove=function(i){if(!(i in this.items))return null;var e=this.items[i];delete this.items[i];this.length--;if(i===this.min){for(;this.min<this.max;++this.min){if(this.min in this.items)break;}}else if(i===this.max-1){for(;this.max>this.min;--this.max){if((this.max-1)in this.items)break;}}return e;};this.popFront=function(){return this.remove(this.min);};};Tmw.Cache=function(maxcount){this.items={};this.queue=new Tmw.Queue();this.maxcount=maxcount;this.getItem=function(uid){var e=this.items[uid];if(!e)return null;this.queue.remove(e.index);e.index=this.queue.push(e.item);return e.item;};this.addItem=function(item){if(!item)return;var e=this.items[item.uid];if(!e){e={item:item,index:null};this.items[item.uid]=e;}else
{e.item=item;this.queue.remove(e.index);}e.index=this.queue.push(item);if(this.queue.length<=this.maxcount)return;stale=this.queue.popFront();if(stale.uid in this.items)delete this.items[stale.uid];};};}();if(typeof(Tmw)=='undefined')Tmw={};var TmwLoad=function(){Tmw.WsError=function(code){this.code=code;this.getCode=function(){return this.code;};};function parseWsError(doc){if(!doc)return null;var status=Tmw.Xml.getChildElement(doc.documentElement,'status');if(!status)return null;var code=status.getAttribute('result');if(!code)return null;code=code.toLowerCase();if(code=='success')return null;return new Tmw.WsError(code);}var WsErrors={540:'sqlerror',542:'exists',543:'badparam',544:'nicknameexists',549:'uncheckeduser',554:'emailexists'};Tmw.DataManager=function(lang,host,agent){this.host=host||Tmw.getLocation().host;if(!agent)agent=Tmw.JsProxyAgent;this.catGraph=null;this.agent=agent;this.lang=lang;this.ontracker=null;this.cache=new Tmw.Cache(1000);var dm=this;function traceQuery(service,params,duration,err){if(!Tmw.trace)return;var ps=[];for(var p in params){if(params[p]===null||typeof(params[p])=='undefined')continue;ps.push(p+': '+params[p]);}var s=[err?'DataManager.request: ERROR':'DataManager.request: ',service,duration+'ms','{'+ps.join(', ')+'}'];Tmw.log('query',s.join(' '));}var request=function(service,mode,params,data,needGraph){var startTime=Tmw.getTime();if(typeof(params)=='undefined')params={};var rq=null;if(mode&&dm.ontracker){try
{rq=dm.ontracker(mode,service);if(!rq.addCallback)rq=Tmw.Deferred.success(rq);}catch(e){rq=Tmw.Deferred.failure(e);}}else
{rq=Tmw.Deferred.success(null);}rq.addCallback(function(tracker){if(tracker)params['tracker']=tracker;return dm.agent.request(dm.host,service,params,data);}).addCallback(function(doc){var endTime=Tmw.getTime();traceQuery(service,params,endTime-startTime);var err=parseWsError(doc);if(err)throw err;return doc;},function(err){var endTime=Tmw.getTime();traceQuery(service,params,endTime-startTime,true);var code=WsErrors[err.err.rq];if(code)throw new Tmw.WsError(code);return err;});if(needGraph&&!dm.catGraph){rq.addCallback(function(results){return dm.getCategoryGraph().addCallback(function(graph){return results;});});}return rq;};var makeSearchEntities=function(items){var responses=[];for(var i=0;i!=items.length;++i){var item=items[i];responses.push(new Tmw.PoiResponse(item.poi,item.comment,item.user));}return responses;};var writeEntity=function(name,uid){return["<",name," uid='",uid.uid,"' rev='0' />"].join("");};var writeEntities=function(group,name,uids,entities){if(!uids||uids.length<=0)return entities;entities.push("<"+group+">");for(var i=0;i!=uids.length;++i){entities.push(writeEntity(name,uids[i]));}entities.push("</"+group+">");return entities;};var parseElements=function(items,doc,parentName,childrenName,factory){var parentElement=doc.getElementsByTagName(parentName)[0];if(parentElement){var elements=Tmw.Xml.getChildElements(parentElement,childrenName);for(var i=0;i!=elements.length;++i){var item=factory(elements[i]);items[item.uid]=item;}}};var parseEntities=function(doc,lang,catGraph){var items={};parseElements(items,doc,"users","user",function(e){return new Tmw.User(e);});parseElements(items,doc,"pois","poi",function(e){return new Tmw.Poi(e,lang,catGraph);});parseElements(items,doc,"comments","comment",function(e){return new Tmw.Comment(e);});return items;};this.getEntities=function(uids){var lists={};lists[Tmw.DATAUID_POI]=[];lists[Tmw.DATAUID_USER]=[];lists[Tmw.DATAUID_COMMENT]=[];var cached={};var cachedCount=0;for(var i=0;i!=uids.length;++i){var uid=uids[i];var obj=this.cache.getItem(uid.uid);if(obj){cached[obj.uid]=obj;cachedCount++;continue;}lists[uid.type].push(uid);}if(uids.length<=cachedCount)return Tmw.Deferred.success(cached);var post=["<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"];post.push("<entities>");writeEntities('users','user',lists[Tmw.DATAUID_USER],post);writeEntities('comments','comment',lists[Tmw.DATAUID_COMMENT],post);writeEntities('pois','poi',lists[Tmw.DATAUID_POI],post);post.push("</entities>");post=post.join("");return request("GetEntities",null,null,post,true).addCallback(function(doc){var parsed=parseEntities(doc,dm.lang,dm.catGraph);for(uid in parsed){dm.cache.addItem(parsed[uid]);}return Tmw.extend(cached,parsed);});};this.getUserByNickname=function(nickname){var post="<?xml version=\"1.0\" encoding=\"UTF-8\" ?><entities>";post=post+"<users>";post=post+"<user nickname=\""+Tmw.Xml.escape(nickname)+"\" rev=\"0\"/>";post=post+"</users>";post=post+"</entities>";var url=Tmw.makeURI(Tmw.WS_SERVICE_PATH+"/GetEntities");var dm=this;return request("GetEntities",null,null,post,true).addCallback(function(doc){return parseEntities(doc,dm.lang,dm.catGraph);}).addCallback(function(entities){var user=Tmw.popItem(entities);if(!user)throw"no user returned";return user;});};var parsePoiSearch=function(doc,lang){var responses=doc.getElementsByTagName("response");var pois=[];for(var i=0;i!=responses.length;++i){var poiUid=responses[i].getAttribute("uidpoi");var commentUid=responses[i].getAttribute("uidcomment");var userUid=responses[i].getAttribute("uiduser");var poi={poi:new Tmw.DataUid(Tmw.DATAUID_POI,poiUid),comment:new Tmw.DataUid(Tmw.DATAUID_COMMENT,commentUid),user:new Tmw.DataUid(Tmw.DATAUID_USER,userUid)};pois.push(poi);}return new Tmw.EntitiesIterator(dm,pois,makeSearchEntities);};this.streamPoi=function(area,catUid,maxcount){maxcount=maxcount||Tmw.DEFAULT_POI_SEARCH_COUNT;var params={lang:this.lang,maxcount:maxcount,xmin:area.xmin,ymin:area.ymin,xmax:area.xmax,ymax:area.ymax};var post=null;if(Tmw.isArray(catUid)){post=["<?xml version=\"1.0\" encoding=\"UTF-8\" ?><cats>"];for(var i=0;i!=catUid.length;++i){post.push("<cat uid='"+catUid[i]+"' />");}post.push("</cats>");post=post.join('');}else if(catUid){params['uidcat']=catUid;}var dm=this;return request("Search_POIs",'o',params,post).addCallback(function(doc){return parsePoiSearch(doc,dm.lang);});};this.streamUserComments=function(area,userUid,maxcount){maxcount=maxcount||Tmw.DEFAULT_POI_SEARCH_COUNT;var params={lang:this.lang,maxcount:maxcount,uiduser:userUid,xmin:area.xmin,ymin:area.ymin,xmax:area.xmax,ymax:area.ymax};var dm=this;return request("USER_GetComments",'o',params).addCallback(function(doc){return parsePoiSearch(doc,dm.lang);});};this.streamPoiInCat=function(area,catUid,maxcount){return this.streamPoi(area,catUid,maxcount);};this.searchPoiInCat=function(area,catUid,maxcount){return this.streamPoiInCat(area,catUid,maxcount).addCallback(function(iter){return iter.readAll();});};this.streamPoiByUser=function(area,userUid,maxcount){return this.streamUserComments(area,userUid,maxcount);};this.searchPoiByUser=function(area,userUid,maxcount){return this.streamPoiByUser(area,userUid,maxcount).addCallback(function(iter){return iter.readAll();});};this.getUser=function(userUid){var items=[new Tmw.DataUid(Tmw.DATAUID_USER,userUid)];return this.getEntities(items).addCallback(function(entities){var user=Tmw.popItem(entities);if(!user)throw"no user returned";return user;});};this.getPoi=function(poiUid){var items=[new Tmw.DataUid(Tmw.DATAUID_POI,poiUid)];return this.getEntities(items).addCallback(function(entities){var poi=Tmw.popItem(entities);if(!poi)throw"no poi returned";return poi;});};this.getUserLink=function(user){return"http://"+Tmw.getLocation().host+user.uri;};this.getPoiLink=function(poi){return"http://"+Tmw.getLocation().host+poi.uri;};this.getCategoryLink=function(cat){if(!cat.nickname)return null;return"http://"+Tmw.getLocation().host+"/cat/"+encodeURIComponent(cat.nickname);};this.getCategoryGraph=function(){if(this.catGraph)return Tmw.Deferred.success(this.catGraph);return request("CAT_GetLightHierarchy",null,{lang:dm.lang}).addCallback(function(doc){var hierarchy=Tmw.Xml.getChildElement(doc.documentElement,'hierarchy');dm.catGraph=new Tmw.CategoryGraph(hierarchy,true);return dm.catGraph;});};var parsePoiLists=function(doc){var userlists=doc.getElementsByTagName("userlist");var poilists=[];for(var i=0;i!=userlists.length;++i){poilists.push(new Tmw.PoiList(userlists[i]));}return poilists;};this.getUserLists=function(useruid,poiuid){var params={uiduser:useruid,uidpoi:poiuid};var dm=this;return request("USER_GetLists",null,params).addCallback(function(doc){return parsePoiLists(doc);});};this.setUserList=function(listuid,name){var params={uiduserlist:listuid,name:name};var dm=this;return request("AM_SetList",'o',params).addCallback(function(doc){var poiLists=parsePoiLists(doc);for(var i=0;i<poiLists.length;i++){if(poiLists[i].getName()==name)return poiLists[i];}return null;});};this.delUserList=function(listuid){var params={uiduserlist:listuid};var dm=this;return request("AM_DelList",'o',params).addCallback(function(doc){return null;});};this.addPoiToUserList=function(listuid,poiuid){var params={uiduserlist:listuid,uidpoi:poiuid};var dm=this;return request("AM_AddListPOI",'o',params).addCallback(function(doc){return null;});};this.delPoiFromUserList=function(listuid,poiuid){var params={uiduserlist:listuid,uidpoi:poiuid};var dm=this;return request("AM_DelListPOI",'o',params).addCallback(function(doc){return null;});};this.setWantToGo=function(poiuid,wanttogo){var params={uidpoi:poiuid,wanttogo:(wanttogo?"1":"0")};var dm=this;return request("COM_SetWantToGo",'a',params).addCallback(function(doc){return null;});};this.setPoiReco=function(poiuid,reco){var params={uidpoi:poiuid,poireco:reco,lang:this.lang};var dm=this;return request("COM_SetReco",'a',params).addCallback(function(doc){return null;});};function makeCatPost(catuid){if(!Tmw.isArray(catuid))catuid=[catuid];var post=["<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"];post.push("<cats>");for(var i=0;i!=catuid.length;++i){post.push('<cat uid="'+catuid[i]+'" />');}post.push("</cats>");return post.join('');}this.getCategoryTags=function(catuid){var params={lang:this.lang};var post=makeCatPost(catuid);var dm=this;return request("CAT_GetSections",null,params,post).addCallback(function(doc){var element=doc.documentElement;var catsections=Tmw.Xml.getChildElements(Tmw.Xml.getChildElement(element,"catsections"),"catsection");var sections=[];for(var i=0;i!=catsections.length;++i){var tags=[];var sectiontags=Tmw.Xml.getChildElements(Tmw.Xml.getChildElement(catsections[i],"tags"),"tag");for(var j=0;j!=sectiontags.length;++j){tags.push(Tmw.Xml.getTextValue(sectiontags[j]));}var name=catsections[i].getAttribute('name');sections.push(new Tmw.TagGroup(name,tags));}return sections;});};this.createAccount=function(domain,email,password,nickname,lang,anonTracker,firstname,lastname){anonTracker=anonTracker||null;var params={dns:domain,email:email,password:password,nickname:nickname,firstname:firstname,lastname:lastname,homex:'2.35',homey:'48.85',address:'Paris',visible:'0',newsletter:'0',anonymoustracker:anonTracker,lang:lang};var dm=this;return request("AM_CreateAccount",null,params).addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.createAnonymousAccount=function(domain,lang){var params={dns:domain,lang:lang};var dm=this;return request("AM_CreateAccount_Anonymous",null,params).addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.createAccountFromInvitation=function(domain,email,password,firstname,lastname,lang,invitation){var params={dns:domain,email:email,password:password,firstname:firstname,lastname:lastname,homex:'2.35',homey:'48.85',address:'Paris',visible:'0',newsletter:'0',lang:lang,invitationtoken:invitation};var dm=this;return request("AM_CreateAccount_FromInvitation",null,params).addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.loginWithPassword=function(email,password){var params={email:email,password:password};return request("AM_Logon_From_LoginPwd",null,params).addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.getLoggedUser=function(){return request("AM_GetUser",'a').addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.setUserProfile=function(gender,birthdate,attribs){var params={datebirth:birthdate,gender:gender};attribs=attribs.getAll()||{};var post=["<?xml version=\"1.0\" encoding=\"UTF-8\" ?><atbs>"];for(var uid in attribs){post.push("<atb uidatb='");post.push(Tmw.Xml.escape(uid));post.push("'><value>");post.push(Tmw.Xml.escape(attribs[uid]));post.push("</value></atb>");}post.push("</atbs>");post=post.join('');return request("AM_SetProfile",'a',params,post).addCallback(function(doc){var userlogon=Tmw.Xml.getChildElement(doc.documentElement,'userlogon');return new Tmw.LoggedUser(userlogon);});};this.addPoi=function(name,pos,cats){var params={x:pos.lng,y:pos.lat,name:name};var post=["<?xml version=\"1.0\" encoding=\"UTF-8\" ?><cats>"];for(var i=0;i!=cats.length;++i){post.push("<cat uid='");post.push(Tmw.Xml.escape(cats[i]));post.push("' />");}post.push("</cats>");post=post.join('');return request("POI_AddPOI",'v',params,post,true).addCallback(function(xml){var pois=Tmw.Xml.getChildElement(xml.documentElement,'pois');var poi=Tmw.Xml.getChildElement(pois,'poi');return new Tmw.Poi(poi,dm.lang,dm.catGraph);});};this.sendValidationEmail=function(email){var params={email:email};return request("AM_SendAVEmail",'o',params).addCallback(function(xml){return null;});};this.setTrackerListener=function(listener){this.ontracker=listener;};this.init=function(){return this.getCategoryGraph().addCallback(function(catGraph){return dm;});};};}();if(typeof(Tmw)=='undefined')Tmw={};(function(){if(typeof(Tmw.trace)=='undefined')Tmw.trace=null;var DebugPanel=function(){this.filterre=null;var pthis=this;var baseCss={width:'800px',height:'auto',border:'1px solid black',position:$.browser.msie&&$.browser.version<7?'absolute':'fixed',right:'0px',top:'0px',overflow:'hidden','z-index':'999999','background-color':'white','font-size':'12px','font-family':'courier new, courier, monospace',color:'#000'};var collapsedCss={width:'20px',height:'20px'};this.root=$('<div>'+'<div class="handle" style="height:20px; background:orange;"></div>'+'<div class="header" style="padding:4px 10px; border-bottom:1px solid #555;">'+'regexp: <input type="text"/>'+'<a style="margin-left:50px; text-decoration:underline; cursor:pointer;" class="clear">clear</a>'+'</div>'+'<div class="body" style="overflow:auto; height:400px;"></div>'+'</div>').css(baseCss).css(collapsedCss);$('body').append(this.root);this.body=this.root.find('.body:first');this.root.find('.handle:first').click(function(){if(pthis.root.width()>100)pthis.hide();else
pthis.show();});this.root.find('.header input:first').keyup(function(e){var text=e.target.value;pthis.filter(text);});$(this.root).find('.clear:first').click(function(){pthis.clear();});this.filter=function(regexp){try
{if(!regexp)this.filterre=null;else
this.filterre=new RegExp(regexp,'i');}catch(e){return;}this.body.find('div').each(function(){var e=$(this);if(!pthis.filterre||pthis.filterre.exec(e.text()))e.show();else
e.hide();});};this.write=function(msg,color){var div=$('<div style="text-align:left; padding:2px 5px; border-bottom:1px solid #DDD;"></div>').text(msg).prependTo(this.body);if(color)div.css({'color':color});if(pthis.filterre&&!pthis.filterre.exec(msg))div.hide();};this.clear=function(){this.body.empty();};this.show=function(){this.root.css(baseCss);};this.hide=function(){this.root.css(collapsedCss);};};var debugPanel=null;Tmw.log=function(cat,msg,e){cat=cat||'all';if(!Tmw.trace||((Tmw.trace.indexOf(cat)<0&&Tmw.trace.indexOf('all')<0)&&(e&&Tmw.trace.indexOf('error')<0)))return;if(!debugPanel)debugPanel=new DebugPanel();var color=null;msg=msg||'';if(e){color='red';debugPanel.show();if(e.name&&e.message){msg=msg+' - '+e.name+': '+e.message;}else
{msg=msg+' - '+e;}}msg=cat+': '+msg;debugPanel.write(msg,color);};Tmw.filterLog=function(regexp){if(!debugPanel)return;debugPanel.filter(regexp);};})();var MapAdapter=function(){function getConfig(lang){var config={};if(lang=="fre"){config.lang="fre";config.strings={plyupdate:"mettre &agrave; jour",plycomment:"commenter"};}else if(lang=="spa"){config.lang="spa";config.strings={plyupdate:"poner al día",plycomment:"comentar"};}else
{config.lang="eng";config.strings={plyupdate:"update",plycomment:"comment"};}return config;}function MapAdapter(){this.poiRequest=null;this.dataManager=null;this.maxcount=null;this.map=null;this.markers=null;this.popUp=null;this.hover=null;this.enableReload=false;this.onChangeViewCallback=null;this.popUpVisible=false;this.isHiding=false;this.dataManagerInitialized=new Tmw.Deferred();this.poisInCat=[];this.poisByUser=[];this.poisByUid=[];this.configure=function(smallHover,smallPopup,showCommentsCount,showDescription,showComment,maxcount){this.maxcount=maxcount;this.showCommentsCount=showCommentsCount;this.showDescription=showDescription;this.showComment=showComment;this.hover.setSize(smallHover);this.popUp.setSize(smallPopup);};this.addPoi=function(uid){this.poisByUid.push(uid);};this.addPoisInCat=function(uid){this.poisInCat.push(uid);};this.addPoisByUser=function(uid){this.poisByUser.push(uid);};function remove(array,element){for(var i=0;i<array.length;i++){if(element==array[i])array.splice(i,1);}}this.removePoi=function(uid){remove(this.poisByUid,uid);};this.removePoisInCat=function(uid){remove(this.poisInCat,uid);};this.removePoisByUser=function(uid){remove(this.poisByUser,uid);};this.getPoisCount=function(){return this.markers.getMarkersCount();};this.onChangeView=function(event){if(!this.enableReload)return;if(this.isHiding){this.isHiding=false;return;}this.refreshMap();};this.showPopUp=function(poi,comment,center){if(this.popUp.setFromPoi(poi,comment)){this.popUpVisible=true;this.popUp.show(poi,center);}else
{this.enableReload=true;}};this.showHover=function(poi,comment){if(!this.popUpVisible){this.hover.setFromPoi(poi,comment);this.hover.show(poi);}};this.setOnChangeViewCallback=function(onChangeViewCallback){this.onChangeViewCallback=onChangeViewCallback;};this.onEndRefresh=function(){if(this.onChangeViewCallback)this.onChangeViewCallback();};this.addDataManagerInitCallback=function(callback){if(this.dataManagerInitialized)this.dataManagerInitialized.addCallback(callback);else
callback();};this.refreshMap=function(){if(this.dataManagerInitialized){this.dataManagerInitialized.addCallback(function(){this.refresh();}.bind(this));}else
this.refresh();};this.refresh=function(){var area=this.reduceRect(this.getBounds());if(this.poiRequest){this.poiRequest.cancel();}this.poiRequest=new Tmw.Deferred.success({pois:[],iterators:[]});var dataManager=this.dataManager;var maxcount=this.maxcount;if(this.poisByUid.length>0){var poisByUid=this.poisByUid;this.poiRequest.addCallback(function(response){var uids=[];for(var i=0;i<poisByUid.length;i++)uids.push(new Tmw.DataUid(Tmw.DATAUID_POI,poisByUid[i]));return dataManager.getEntities(uids).addCallback(function(entities){var pois=[];for(var uid in entities){var poi=entities[uid];response.pois.push(new Tmw.PoiResponse(poi,null));}return response;});});}if(this.poisInCat.length>0){for(var i=0;i<this.poisInCat.length;i++){var catUid=this.poisInCat[i]||null;this.poiRequest.addCallback(function(response){return dataManager.streamPoiInCat(area,catUid,maxcount).addCallback(function(iterator){response.iterators.push(iterator);return response;});});}}if(this.poisByUser.length>0){for(var i=0;i<this.poisByUser.length;i++){var userUid=this.poisByUser[i];this.poiRequest.addCallback(function(response){return dataManager.streamPoiByUser(area,userUid,maxcount).addCallback(function(iterator){response.iterators.push(iterator);return response;});});}}var markers=this.markers;var poisToMarkers=function(poisResponse){var pois=[];for(var i=0;i!=poisResponse.length;++i){var r=poisResponse[i];if(!area.contains(r.poi.pos))continue;pois.push(r);}markers.addMarkers(pois);};var iteratorsToMarkers=function(iterators,onEndIterators){var i=0;var iterator=iterators[i++];var iteratorToMarkers=function(){iterator.next().addCallback(function(chunk){if(chunk!==null)poisToMarkers(chunk);else
{if(i<iterators.length)iterator=iterators[i++];else
iterator=null;}if(iterator){Tmw.Reactor.callLater(200,function(){iteratorToMarkers(iterator);});}else
onEndIterators();});};iteratorToMarkers();};this.poiRequest.addCallback(function(response){markers.clearMarkers();poisToMarkers(response.pois);if(response.iterators.length>0)iteratorsToMarkers(response.iterators,this.onEndRefresh.bind(this));else
this.onEndRefresh.bind(this);}.bind(this));};this.reduceRect=function(rect){var dx=Math.abs(rect.xmax-rect.xmin)*0.05;var dy=Math.abs(rect.ymax-rect.ymin)*0.05;return new Tmw.Rect(rect.xmin+dx,rect.ymin+dy,rect.xmax-dx,rect.ymax-dy);};this.Hover=function(adapter,totalHeight,totalWidth){this.poi=null;this.comment=null;this.isMouseOver=false;this.shape=null;$("#tmw #hover").mouseover(function(){this.mouseOver();}.bind(this));$("#tmw #hover").mouseout(function(){this.hide();}.bind(this));$("#tmw #hover").click(function(){adapter.showPopUp(this.poi,this.comment,adapter.getCenter());}.bind(this));this.setSize=function(smallHover){this.smallHover=smallHover;if(smallHover)$("#tmw #hover").width("250px");else
$("#tmw #hover").width(totalWidth-30);};function fromLatLngToPix(lat,lng){var mapView=adapter.getBounds();var y=totalHeight-totalHeight*(lat-mapView.ymin)/(mapView.ymax-mapView.ymin);var x=totalWidth*(lng-mapView.xmin)/(mapView.xmax-mapView.xmin);return new Point(x,y);}this.show=function(poi){this.isMouseOver=true;if(!poi)return;var point=fromLatLngToPix(poi.pos.lat,poi.pos.lng);var width=$("#tmw #hover").width();var posx=point.x+10;if(width+14>totalWidth){posx=10;}else if(point.x+width>totalWidth){if(point.x-width>10){posx=point.x-width-14;}else
{posx=totalWidth-width-14;}}var height=$("#tmw #hover").height();var posy=point.y+10;if(height+14>totalHeight){posy=10;}else if(height+point.y>totalHeight){if(point.y-height>10){posy=point.y-height-14;}}var w=poi.medias.length>0?60:0;var legendWidth=this.smallHover?250-w-20:width-w-20;$("#tmw #hover #hoverTitle").width(legendWidth+"px");$("#tmw #hover #hoverCat").width(legendWidth+"px");$("#tmw #hover #hoverComs").width(legendWidth+"px");$("#tmw #hover").css({left:posx+"px",top:posy+"px"});$("#tmw #hover").show();};this.mouseOver=function(){this.isMouseOver=true;};this.hide=function(force){this.isMouseOver=false;if(force)$("#tmw #hover").hide();else
{var hover=this;Tmw.Reactor.callLater(200,function(){if(!hover.isMouseOver){$("#tmw #hover").hide();}});}};this.setFromPoi=function(poi,comment){if(!poi||(this.poi&&this.poi.uid==poi.uid))return;this.poi=poi;this.comment=comment;$("#tmw #hoverTitle").html(poi.name);var cat=[];for(var uid in poi.categories)cat.push(poi.categories[uid].name);$("#tmw #hoverCat").html(cat.join(", "));if(poi.medias.length>0){$("#tmw #hoverImage").attr({src:poi.medias[0].getUrl(60)});}else
{$("#tmw #hoverImage").attr({src:DUMMY_IMAGE_URL});}if(poi.attributes.length>0){var add=new Address();add.buildFromAtb(poi.attributes);$("#tmw #hoverComs").html(add.getHtml());}else
{$("#tmw #hoverComs").html("");}};};this.PopUp=function(adapter,totalHeight,totalWidth,beakOffset){this.poi=null;this.legendWidth=200;this.originalHeight=(totalHeight>500)?500:totalHeight;this.originalHeight=this.originalHeight*3/4+10;this.originalTop=(totalHeight-this.originalHeight)/2-20;var popupWidth=(totalWidth>500)?500:totalWidth*95/100;var popupHeight=(totalHeight>500)?500:totalHeight;popupHeight=popupHeight*3/4+10;$("#tmw #popup").height(popupHeight+"px");$("#tmw #popup").width(popupWidth+"px");var leftPopup=(totalWidth-popupWidth)/2;var topPopup=(totalHeight-popupHeight)/2;$("#tmw #popup").css({left:leftPopup+"px"});$("#tmw #hover").css({left:leftPopup+"px",top:topPopup+"px"});$("#tmw #popupScroller").height(popupHeight+"px");var leftPopupBeak=popupWidth/2+leftPopup-17+beakOffset;$("#tmw #popupBeak").css({left:leftPopupBeak});var strings=adapter.config.strings;$("#tmw #permalink").html(strings.plyupdate);$("#tmw #permalink2").html(strings.plycomment);this.setSize=function(smallPopUp){if(smallPopUp)this.imageSize=90;else
this.imageSize=140;this.legendWidth=(popupWidth-this.imageSize-40);};var hide=function(){$("#tmw #popup").fadeOut("fast");$("#tmw #popupBeak").hide();adapter.popUpVisible=false;adapter.isHiding=true;adapter.panTo(adapter.popUp.originalCenter);adapter.enableReload=true;};$("#tmw #popupClose").click(hide);var setHeight=function(){var top;var height;var containerHeight=$("#tmw #container").height();var padding=0;if(containerHeight>this.originalHeight){padding=this.originalHeight/2;height=this.originalHeight;}else
{padding=containerHeight/2;height=containerHeight;}top=Math.floor(totalHeight/2-padding);if(height>this.originalHeight)height=this.originalHeight;if(top<this.originalTop)top=this.originalTop;$("#tmw #popup").height(height+"px");$("#tmw #popup").css({top:top+"px"});$("#tmw #popupScroller").height(height+"px");$("#tmw #popupBeak").css({top:top-2+"px"});adapter.enableReload=false;var mapView=adapter.getBounds();var pixLatLng=(mapView.ymax-mapView.ymin)/totalHeight;var offset=pixLatLng*(height/2+19+20);adapter.panTo(new LatLng(this.poi.pos.lat+offset,this.poi.pos.lng+pixLatLng*3));}.bind(this);this.show=function(poi,originalCenter){this.originalCenter=originalCenter;adapter.hover.hide(true);$("#tmw #popup").fadeIn("medium");$("#tmw #popupBeak").fadeIn("medium");Tmw.Reactor.callLater(100,setHeight);};this.setFromPoi=function(poi,comment){if(!poi)return false;this.poi=poi;$("#tmw #popupTitle").html(poi.name);var cat=[];for(var uid in poi.categories)cat.push(poi.categories[uid].name);$("#tmw #popupCat").html(cat.join(", "));var ww=0;if(poi.medias.length>0){$("#tmw #popupImage").show();$("#tmw #popupImage").attr({src:poi.medias[0].getUrl(this.imageSize)});ww=this.legendWidth;}else
{$("#tmw #popupImage").hide();ww=this.legendWidth+this.imageSize;if(ww>=$("#tmw #popup").width()-10)ww=$("#tmw #popup").width()-10;}$("#tmw #popup #imageLegend").width(ww);$("#tmw #popup #popupTitle").width(ww);$("#tmw #popup #popupCat").width(ww);$("#tmw #popup #popupAtbs").width(ww);if(adapter.showCommentsCount&&poi.commentcount>0){$("#tmw #popupComs").show();$("#tmw #popupComsLbl").html(poi.commentcount);}else
{$("#tmw #popupComs").hide();}if(poi.attributes.length>0){var add=new Address();add.buildFromAtb(poi.attributes);var attributes=[];for(var attuid in poi.attributes){var attr=poi.attributes[attuid];if(isAddressAttribute(attr.def.uid))continue;if(attr.def.uid==EmailAttributeUid)attributes.push("<a href='mailto:"+attr.value+"'>"+attr.value+"</a><br>");else if(attr.def.uid==LinkAttributeUid)attributes.push("<a href='"+(attr.value.substring(0,4)=="http"?attr.value:"http://"+attr.value)+"' target='_blank'>"+attr.value+"</a><br>");else
attributes.push(attr.value+"<br>");}attributes=attributes.join("");$("#tmw #popupAtbs").html(add.getHtml()+attributes);}else
{$("#tmw #popupAtbs").html("");}var content="";if(adapter.showDescription){if(poi.desc)content=poi.desc;}else if(adapter.showComment){if(comment&&comment.comment)content=comment.comment;}content=content.replace(/\n/gi,"<BR/>\n");$("#tmw #popupDesc").html(content);if(content)$("#tmw #popupHr").show();else
$("#tmw #popupHr").hide();$("#tmw #permalinkComs").attr({href:adapter.dataManager.getPoiLink(poi)});return true;};};}MapAdapter.prototype.setUp=function(map,lang,beakOffset){this.map=map;var divId=this.getDivId();var url="http://"+Tmw.getLocation().host+"/geoplayer/";var e=document.createElement("link");e.setAttribute("rel","stylesheet");e.setAttribute("type","text/css");e.setAttribute("rev","stylesheet");e.setAttribute("href",url+"newstyle.css");$("head")[0].appendChild(e);$("#"+divId).after('\
  <!-- tmw -->\
  <div id="tmw">\
      <div id="popup" class="popup">\
          <div id="popupScroller" class="popupScroller">\
           <div id="container">\
               <div class="buttons">\
                <a id="permalinkComs" href="" class="permalinkComs" target="_blank">\
                    <div id="permalink" class="permalink"></div>\
                    <div  class="permalinkOff">|</div>\
                    <div id="permalink2" class="permalink"></div>\
                    <div id="popupComs" class="coms">\
                           <div id="popupComsLbl" class="lbl"> </div>\
                           <div class="img"><img src="'+url+'i/comment.gif" /></div>\
        </div>\
             </a>\
                <div class="close" id="popupClose"><img src="'+url+'i/close.gif" style="border:0px;" /></div>\
            </div>\
               <div class="image">\
                   <img id="popupImage" src="'+url+'i/pix.gif" />\
               </div>\
               <div style="clear:right"></div>\
               <div id="imageLegend" class="imageLegend">\
                   <div id="popupTitle" class="htitle"></div>\
                   <div id="popupCat" class="cat"></div>\
                   <div id="popupAtbs" class="atbs"></div>\
               </div>\
               <div style="clear:both"></div>\
               <div id="popupHr" class="hr"><hr /></div>\
               <div id="popupDesc"  class="desc"></div>\
           </div>\
          </div>\
      </div>\
      <div id="popupBeak" class="popupBeak" ><img src="'+url+'i/beakBottom.gif"></div>\
      <div id="hover" class="hover">\
          <div class="hoverContent">\
              <div class="image">\
                  <img id="hoverImage" src="'+url+'i/pix.gif" />\
              </div>\
              <div style="clear:right"></div>\
              <div class="imageLegend">\
                  <div id="hoverTitle" class="htitle"></div>\
                  <div id="hoverCat"   class="cat"></div>\
                  <div id="hoverComs"  class="coms"></div>\
              </div>\
          </div>\
      </div>\
  </div>\
  <!-- tmw -->');lang=lang||"eng";this.dataManager=new Tmw.DataManager(lang);this.config=getConfig(lang);this.markers=new PoiMarkers(this);var height=this.getHeight();var width=this.getWidth();this.hover=new this.Hover(this,height,width);this.popUp=new this.PopUp(this,height,width,beakOffset||0);this.configure(true,true,true,true,false,30);return this.dataManager.init().addCallback(function(dataManager){$("#tmw").width(width+"px");$("#tmw").height(height+"px");this.dataManagerInitialized.call(null);this.dataManagerInitialized=null;return dataManager;}.bind(this));};function VeMapAdapter(map,lang){this.PoiMarker=function(poi,comment){var p=new VEShape(VEShapeType.Pushpin,new VELatLong(poi.pos.lat,poi.pos.lng));p.poi=poi;p.comment=comment;p.SetCustomIcon(Tmw.getPoiMarker(poi,comment).getHtml());return p;};this.removeOverlay=function(marker){this.map.DeleteShape(marker);};this.addOverlay=function(marker){this.map.AddShape(marker);};this.getBounds=function(){var view=this.map.GetMapView();return new Tmw.Rect(view.TopLeftLatLong.Longitude,view.BottomRightLatLong.Latitude,view.BottomRightLatLong.Longitude,view.TopLeftLatLong.Latitude);};this.panTo=function(point){this.map.PanToLatLong(new VELatLong(point.lat,point.lng));};this.getCenter=function(){var center=this.map.GetCenter();return new LatLng(center.Latitude,center.Longitude);};this.getWidth=function(){return this.map.mapelement.clientWidth;};this.getHeight=function(){return this.map.mapelement.clientHeight;};this.getDivId=function(){return this.map.mapelement.id;};MapAdapter.prototype.setUp.call(this,map,lang,-7).addCallback(function(dataManager){var mouseHandler=function(e){if(e.eventName=="onclick"){if(e.leftMouseButton){var shape=this.map.GetShapeByID(e.elementID);if(shape)this.showPopUp(shape.poi,shape.comment,this.getCenter());}}else if(e.eventName=="onmouseover"){var shape2=this.map.GetShapeByID(e.elementID);if(shape2&&shape2.poi){this.showHover(shape2.poi,shape2.comment);return true;}}else if(e.eventName=="onmouseout"){this.hover.hide();}return false;}.bind(this);map.AttachEvent("onchangeview",this.onChangeView.bind(this));map.AttachEvent("onclick",mouseHandler);map.AttachEvent("onmouseover",mouseHandler);map.AttachEvent("onmouseout",mouseHandler);this.enableReload=true;return dataManager;}.bind(this));}VeMapAdapter.prototype=new MapAdapter;function getGoogleMapsInfo(map){for(k in map){for(k2 in map[k]){if(k2=='id'&&map[k][k2]){return map[k];}}}return'';}function GoogleMapAdapter(map,lang,divid){this.mapInfo=divid||null;this.getInfo=function(){if(this.mapInfo===null){this.mapInfo=getGoogleMapsInfo();}return this.mapInfo;};this.PoiMarker=function(poi,comment){var point=new GLatLng(poi.pos.lat,poi.pos.lng);var icon=new GIcon();var m=Tmw.getPoiMarker(poi,comment);icon.image="http://"+Tmw.getLocation().host+m.getUrl();icon.iconSize=new GSize(m.getWidth(),m.getHeight());icon.iconAnchor=new GPoint(m.getAnchorX(),m.getAnchorY());var markerOptions={icon:icon};var p=new GMarker(point,markerOptions);p.poi=poi;p.comment=comment;GEvent.addListener(p,"mouseover",function(){this.showHover(p.poi,p.comment);}.bind(this));GEvent.addListener(p,"mouseout",function(){this.hover.hide();}.bind(this));return p;};this.removeOverlay=function(marker){this.map.removeOverlay(marker);};this.addOverlay=function(marker){this.map.addOverlay(marker);};this.getBounds=function(){var view=this.map.getBounds();var sw=view.getSouthWest();var ne=view.getNorthEast();return new Tmw.Rect(sw.lng(),sw.lat(),ne.lng(),ne.lat());};this.panTo=function(point){this.map.panTo(new GLatLng(point.lat,point.lng));};this.getCenter=function(){var center=this.map.getCenter();return new LatLng(center.lat(),center.lng());};this.getWidth=function(){return this.getInfo().offsetWidth;};this.getHeight=function(){return this.getInfo().offsetHeight;};this.getDivId=function(){return this.getInfo().id;};MapAdapter.prototype.setUp.call(this,map,lang).addCallback(function(dataManager){GEvent.addListener(map,"moveend",this.onChangeView.bind(this));GEvent.addListener(map,"click",function(overlay,point){if(overlay)this.showPopUp(overlay.poi,overlay.comment,this.getCenter());}.bind(this));this.enableReload=true;return dataManager;}.bind(this));}GoogleMapAdapter.prototype=new MapAdapter;function Adapter(map,lang){var mapAdapter=null;if(map.mapelement!=undefined&&map.mapelement.id!=undefined)mapAdapter=new VeMapAdapter(map,lang);else
{var divid=getGoogleMapsInfo(map);if(divid)mapAdapter=new GoogleMapAdapter(map,lang,divid);}if(!mapAdapter)window.alert("Unknown map type");return mapAdapter;}function Point(coordx,coordy){this.x=coordx;this.y=coordy;}function LatLng(lat,lng){this.lat=lat;this.lng=lng;}function PoiMarkers(adapter){this.markers={};this.clearMarkers=function(){for(var key in this.markers){adapter.removeOverlay(this.markers[key]);delete this.markers[key];}};this.addMarkers=function(pois){for(var i=0;i!=pois.length;i++){var r=pois[i];var poi=r.poi;var m=adapter.PoiMarker(poi,r.comment);adapter.addOverlay(m);this.markers[poi.uid]=m;}};this.setMarkers=function(pois){this.clearMarkers();this.addMarkers(pois);};this.getMarkersCount=function(){return Tmw.propertyCount(this.markers);};}function Address(){this.address="";this.address1="";this.town="";this.postcode="";this.country="";this.getHtml=function(){var s="";if(this.address)s+=this.address+"<br>";if(this.address1)s+=this.address1+"<br>";if(this.postcode)s+=this.postcode+" ";if(this.town)s+=this.town+"<br>";if(this.country)s+=this.country+"<br>";return s;};this.buildFromAtb=function(atbs){for(var uid in atbs){var atb=atbs[uid];var name=AddressAttributesUids[atb.def.uid];if(!name)continue;this[name]=atb.value;}};}AddressAttributesUids={"54B4EC71-2020-4EA1-8D05-8BE4AAD6FB96":"address","0FDF3235-6603-4488-B9BD-E09406C361C1":"address1","6D5A589B-2956-4E9D-806E-53B2C726E2D2":"postcode","349C78BA-6DF3-4024-BAB0-89E617E1020C":"town","1EB1A3EA-94B8-44C1-A9F9-2A078407488A":"country"};EmailAttributeUid="81136DB2-E248-46FA-873B-BBD0E4047194";LinkAttributeUid="A1DA7558-1AB3-447D-9DA1-0B7079024076";function isAddressAttribute(attUid){return(attUid in AddressAttributesUids);}DUMMY_IMAGE_URL="http://"+Tmw.getLocation().host+"/geoplayer/"+"i/pix.gif";return{Adapter:Adapter};}();if(typeof(Sys)!='undefined'&&typeof(Sys.Application)!='undefined'){Sys.Application.notifyScriptLoaded();}