(function(window,undefined){var jQuery=function(selector,context){return new jQuery.fn.init(selector,context);},_jQuery=window.jQuery,_$=window.$,document=window.document,rootjQuery,quickExpr=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,isSimple=/^.[^:#\[\.,]*$/,rnotwhite=/\S/,rtrim=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,userAgent=navigator.userAgent,browserMatch,readyBound=false,readyList=[],DOMContentLoaded,toString=Object.prototype.toString,hasOwnProperty=Object.prototype.hasOwnProperty,push=Array.prototype.push,slice=Array.prototype.slice,indexOf=Array.prototype.indexOf;jQuery.fn=jQuery.prototype={init:function(selector,context){var match,elem,ret,doc;if(!selector){return this;}
if(selector.nodeType){this.context=this[0]=selector;this.length=1;return this;}
if(selector==="body"&&!context){this.context=document;this[0]=document.body;this.selector="body";this.length=1;return this;}
if(typeof selector==="string"){match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1]){doc=(context?context.ownerDocument||context:document);ret=rsingleTag.exec(selector);if(ret){if(jQuery.isPlainObject(context)){selector=[document.createElement(ret[1])];jQuery.fn.attr.call(selector,context,true);}else{selector=[doc.createElement(ret[1])];}}else{ret=buildFragment([match[1]],[doc]);selector=(ret.cacheable?ret.fragment.cloneNode(true):ret.fragment).childNodes;}
return jQuery.merge(this,selector);}else{elem=document.getElementById(match[2]);if(elem){if(elem.id!==match[2]){return rootjQuery.find(selector);}
this.length=1;this[0]=elem;}
this.context=document;this.selector=selector;return this;}}else if(!context&&/^\w+$/.test(selector)){this.selector=selector;this.context=document;selector=document.getElementsByTagName(selector);return jQuery.merge(this,selector);}else if(!context||context.jquery){return(context||rootjQuery).find(selector);}else{return jQuery(context).find(selector);}}else if(jQuery.isFunction(selector)){return rootjQuery.ready(selector);}
if(selector.selector!==undefined){this.selector=selector.selector;this.context=selector.context;}
return jQuery.makeArray(selector,this);},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length;},toArray:function(){return slice.call(this,0);},get:function(num){return num==null?this.toArray():(num<0?this.slice(num)[0]:this[num]);},pushStack:function(elems,name,selector){var ret=jQuery();if(jQuery.isArray(elems)){push.apply(ret,elems);}else{jQuery.merge(ret,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;},each:function(callback,args){return jQuery.each(this,callback,args);},ready:function(fn){jQuery.bindReady();if(jQuery.isReady){fn.call(document,jQuery);}else if(readyList){readyList.push(fn);}
return this;},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1);},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},slice:function(){return this.pushStack(slice.apply(this,arguments),"slice",slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},end:function(){return this.prevObject||jQuery(null);},push:push,sort:[].sort,splice:[].splice};jQuery.fn.init.prototype=jQuery.fn;jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options,name,src,copy;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(name in options){src=target[name];copy=options[name];if(target===copy){continue;}
if(deep&&copy&&(jQuery.isPlainObject(copy)||jQuery.isArray(copy))){var clone=src&&(jQuery.isPlainObject(src)||jQuery.isArray(src))?src:jQuery.isArray(copy)?[]:{};target[name]=jQuery.extend(deep,clone,copy);}else if(copy!==undefined){target[name]=copy;}}}}
return target;};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep){window.jQuery=_jQuery;}
return jQuery;},isReady:false,ready:function(){if(!jQuery.isReady){if(!document.body){return setTimeout(jQuery.ready,13);}
jQuery.isReady=true;if(readyList){var fn,i=0;while((fn=readyList[i++])){fn.call(document,jQuery);}
readyList=null;}
if(jQuery.fn.triggerHandler){jQuery(document).triggerHandler("ready");}}},bindReady:function(){if(readyBound){return;}
readyBound=true;if(document.readyState==="complete"){return jQuery.ready();}
if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);window.addEventListener("load",jQuery.ready,false);}else if(document.attachEvent){document.attachEvent("onreadystatechange",DOMContentLoaded);window.attachEvent("onload",jQuery.ready);var toplevel=false;try{toplevel=window.frameElement==null;}catch(e){}
if(document.documentElement.doScroll&&toplevel){doScrollCheck();}}},isFunction:function(obj){return toString.call(obj)==="[object Function]";},isArray:function(obj){return toString.call(obj)==="[object Array]";},isPlainObject:function(obj){if(!obj||toString.call(obj)!=="[object Object]"||obj.nodeType||obj.setInterval){return false;}
if(obj.constructor&&!hasOwnProperty.call(obj,"constructor")&&!hasOwnProperty.call(obj.constructor.prototype,"isPrototypeOf")){return false;}
var key;for(key in obj){}
return key===undefined||hasOwnProperty.call(obj,key);},isEmptyObject:function(obj){for(var name in obj){return false;}
return true;},error:function(msg){throw msg;},parseJSON:function(data){if(typeof data!=="string"||!data){return null;}
data=jQuery.trim(data);if(/^[\],:{}\s]*$/.test(data.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){return window.JSON&&window.JSON.parse?window.JSON.parse(data):(new Function("return "+data))();}else{jQuery.error("Invalid JSON: "+data);}},noop:function(){},globalEval:function(data){if(data&&rnotwhite.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,isObj=length===undefined||jQuery.isFunction(object);if(args){if(isObj){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(isObj){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;},trim:function(text){return(text||"").replace(rtrim,"");},makeArray:function(array,results){var ret=results||[];if(array!=null){if(array.length==null||typeof array==="string"||jQuery.isFunction(array)||(typeof array!=="function"&&array.setInterval)){push.call(ret,array);}else{jQuery.merge(ret,array);}}
return ret;},inArray:function(elem,array){if(array.indexOf){return array.indexOf(elem);}
for(var i=0,length=array.length;i<length;i++){if(array[i]===elem){return i;}}
return-1;},merge:function(first,second){var i=first.length,j=0;if(typeof second.length==="number"){for(var l=second.length;j<l;j++){first[i++]=second[j];}}else{while(second[j]!==undefined){first[i++]=second[j++];}}
first.length=i;return first;},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,arg){var ret=[],value;for(var i=0,length=elems.length;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret[ret.length]=value;}}
return ret.concat.apply([],ret);},guid:1,proxy:function(fn,proxy,thisObject){if(arguments.length===2){if(typeof proxy==="string"){thisObject=fn;fn=thisObject[proxy];proxy=undefined;}else if(proxy&&!jQuery.isFunction(proxy)){thisObject=proxy;proxy=undefined;}}
if(!proxy&&fn){proxy=function(){return fn.apply(thisObject||this,arguments);};}
if(fn){proxy.guid=fn.guid=fn.guid||proxy.guid||jQuery.guid++;}
return proxy;},uaMatch:function(ua){ua=ua.toLowerCase();var match=/(webkit)[ \/]([\w.]+)/.exec(ua)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(ua)||/(msie) ([\w.]+)/.exec(ua)||!/compatible/.test(ua)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(ua)||[];return{browser:match[1]||"",version:match[2]||"0"};},browser:{}});browserMatch=jQuery.uaMatch(userAgent);if(browserMatch.browser){jQuery.browser[browserMatch.browser]=true;jQuery.browser.version=browserMatch.version;}
if(jQuery.browser.webkit){jQuery.browser.safari=true;}
if(indexOf){jQuery.inArray=function(elem,array){return indexOf.call(array,elem);};}
rootjQuery=jQuery(document);if(document.addEventListener){DOMContentLoaded=function(){document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);jQuery.ready();};}else if(document.attachEvent){DOMContentLoaded=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",DOMContentLoaded);jQuery.ready();}};}
function doScrollCheck(){if(jQuery.isReady){return;}
try{document.documentElement.doScroll("left");}catch(error){setTimeout(doScrollCheck,1);return;}
jQuery.ready();}
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 access(elems,key,value,exec,fn,pass){var length=elems.length;if(typeof key==="object"){for(var k in key){access(elems,k,key[k],exec,fn,value);}
return elems;}
if(value!==undefined){exec=!pass&&exec&&jQuery.isFunction(value);for(var i=0;i<length;i++){fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass);}
return elems;}
return length?fn(elems[0],key):undefined;}
function now(){return(new Date).getTime();}
(function(){jQuery.support={};var root=document.documentElement,script=document.createElement("script"),div=document.createElement("div"),id="script"+now();div.style.display="none";div.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";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,htmlSerialize:!!div.getElementsByTagName("link").length,style:/red/.test(a.getAttribute("style")),hrefNormalized:a.getAttribute("href")==="/a",opacity:/^0.55$/.test(a.style.opacity),cssFloat:!!a.style.cssFloat,checkOn:div.getElementsByTagName("input")[0].value==="on",optSelected:document.createElement("select").appendChild(document.createElement("option")).selected,parentNode:div.removeChild(div.appendChild(document.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,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];}
try{delete script.test;}catch(e){jQuery.support.deleteExpando=false;}
root.removeChild(script);if(div.attachEvent&&div.fireEvent){div.attachEvent("onclick",function click(){jQuery.support.noCloneEvent=false;div.detachEvent("onclick",click);});div.cloneNode(true).fireEvent("onclick");}
div=document.createElement("div");div.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";var fragment=document.createDocumentFragment();fragment.appendChild(div.firstChild);jQuery.support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;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';div=null;});var eventSupported=function(eventName){var el=document.createElement("div");eventName="on"+eventName;var isSupported=(eventName in el);if(!isSupported){el.setAttribute(eventName,"return;");isSupported=typeof el[eventName]==="function";}
el=null;return isSupported;};jQuery.support.submitBubbles=eventSupported("submit");jQuery.support.changeBubbles=eventSupported("change");root=script=div=all=a=null;})();jQuery.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var expando="jQuery"+now(),uuid=0,windowData={};jQuery.extend({cache:{},expando:expando,noData:{"embed":true,"object":true,"applet":true},data:function(elem,name,data){if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){return;}
elem=elem==window?windowData:elem;var id=elem[expando],cache=jQuery.cache,thisCache;if(!id&&typeof name==="string"&&data===undefined){return null;}
if(!id){id=++uuid;}
if(typeof name==="object"){elem[expando]=id;thisCache=cache[id]=jQuery.extend(true,{},name);}else if(!cache[id]){elem[expando]=id;cache[id]={};}
thisCache=cache[id];if(data!==undefined){thisCache[name]=data;}
return typeof name==="string"?thisCache[name]:thisCache;},removeData:function(elem,name){if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){return;}
elem=elem==window?windowData:elem;var id=elem[expando],cache=jQuery.cache,thisCache=cache[id];if(name){if(thisCache){delete thisCache[name];if(jQuery.isEmptyObject(thisCache)){jQuery.removeData(elem);}}}else{if(jQuery.support.deleteExpando){delete elem[jQuery.expando];}else if(elem.removeAttribute){elem.removeAttribute(jQuery.expando);}
delete cache[id];}}});jQuery.fn.extend({data:function(key,value){if(typeof key==="undefined"&&this.length){return jQuery.data(this[0]);}else if(typeof key==="object"){return this.each(function(){jQuery.data(this,key);});}
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);});}});jQuery.extend({queue:function(elem,type,data){if(!elem){return;}
type=(type||"fx")+"queue";var q=jQuery.data(elem,type);if(!data){return q||[];}
if(!q||jQuery.isArray(data)){q=jQuery.data(elem,type,jQuery.makeArray(data));}else{q.push(data);}
return q;},dequeue:function(elem,type){type=type||"fx";var queue=jQuery.queue(elem,type),fn=queue.shift();if(fn==="inprogress"){fn=queue.shift();}
if(fn){if(type==="fx"){queue.unshift("inprogress");}
fn.call(elem,function(){jQuery.dequeue(elem,type);});}}});jQuery.fn.extend({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(i,elem){var queue=jQuery.queue(this,type,data);if(type==="fx"&&queue[0]!=="inprogress"){jQuery.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});},delay:function(time,type){time=jQuery.fx?jQuery.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(){var elem=this;setTimeout(function(){jQuery.dequeue(elem,type);},time);});},clearQueue:function(type){return this.queue(type||"fx",[]);}});var rclass=/[\n\t]/g,rspace=/\s+/,rreturn=/\r/g,rspecialurl=/href|src|style/,rtype=/(button|input)/i,rfocusable=/(button|input|object|select|textarea)/i,rclickable=/^(a|area)$/i,rradiocheck=/radio|checkbox/;jQuery.fn.extend({attr:function(name,value){return access(this,name,value,true,jQuery.attr);},removeAttr:function(name,fn){return this.each(function(){jQuery.attr(this,name,"");if(this.nodeType===1){this.removeAttribute(name);}});},addClass:function(value){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.addClass(value.call(this,i,self.attr("class")));});}
if(value&&typeof value==="string"){var classNames=(value||"").split(rspace);for(var i=0,l=this.length;i<l;i++){var elem=this[i];if(elem.nodeType===1){if(!elem.className){elem.className=value;}else{var className=" "+elem.className+" ",setClass=elem.className;for(var c=0,cl=classNames.length;c<cl;c++){if(className.indexOf(" "+classNames[c]+" ")<0){setClass+=" "+classNames[c];}}
elem.className=jQuery.trim(setClass);}}}}
return this;},removeClass:function(value){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.removeClass(value.call(this,i,self.attr("class")));});}
if((value&&typeof value==="string")||value===undefined){var classNames=(value||"").split(rspace);for(var i=0,l=this.length;i<l;i++){var elem=this[i];if(elem.nodeType===1&&elem.className){if(value){var className=(" "+elem.className+" ").replace(rclass," ");for(var c=0,cl=classNames.length;c<cl;c++){className=className.replace(" "+classNames[c]+" "," ");}
elem.className=jQuery.trim(className);}else{elem.className="";}}}}
return this;},toggleClass:function(value,stateVal){var type=typeof value,isBool=typeof stateVal==="boolean";if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);self.toggleClass(value.call(this,i,self.attr("class"),stateVal),stateVal);});}
return this.each(function(){if(type==="string"){var className,i=0,self=jQuery(this),state=stateVal,classNames=value.split(rspace);while((className=classNames[i++])){state=isBool?state:!self.hasClass(className);self[state?"addClass":"removeClass"](className);}}else if(type==="undefined"||type==="boolean"){if(this.className){jQuery.data(this,"__className__",this.className);}
this.className=this.className||value===false?"":jQuery.data(this,"__className__")||"";}});},hasClass:function(selector){var className=" "+selector+" ";for(var i=0,l=this.length;i<l;i++){if((" "+this[i].className+" ").replace(rclass," ").indexOf(className)>-1){return true;}}
return false;},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;}
if(rradiocheck.test(elem.type)&&!jQuery.support.checkOn){return elem.getAttribute("value")===null?"on":elem.value;}
return(elem.value||"").replace(rreturn,"");}
return undefined;}
var isFunction=jQuery.isFunction(value);return this.each(function(i){var self=jQuery(this),val=value;if(this.nodeType!==1){return;}
if(isFunction){val=value.call(this,i,self.val());}
if(typeof val==="number"){val+="";}
if(jQuery.isArray(val)&&rradiocheck.test(this.type)){this.checked=jQuery.inArray(self.val(),val)>=0;}else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(val);jQuery("option",this).each(function(){this.selected=jQuery.inArray(jQuery(this).val(),values)>=0;});if(!values.length){this.selectedIndex=-1;}}else{this.value=val;}});}});jQuery.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(elem,name,value,pass){if(!elem||elem.nodeType===3||elem.nodeType===8){return undefined;}
if(pass&&name in jQuery.attrFn){return jQuery(elem)[name](value);}
var notxml=elem.nodeType!==1||!jQuery.isXMLDoc(elem),set=value!==undefined;name=notxml&&jQuery.props[name]||name;if(elem.nodeType===1){var special=rspecialurl.test(name);if(name==="selected"&&!jQuery.support.optSelected){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;}}}
if(name in elem&&notxml&&!special){if(set){if(name==="type"&&rtype.test(elem.nodeName)&&elem.parentNode){jQuery.error("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:rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?0:undefined;}
return elem[name];}
if(!jQuery.support.style&&notxml&&name==="style"){if(set){elem.style.cssText=""+value;}
return elem.style.cssText;}
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;}
return jQuery.style(elem,name,value);}});var rnamespaces=/\.(.*)$/,fcleanup=function(nm){return nm.replace(/[^\w\s\.\|`]/g,function(ch){return"\\"+ch;});};jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType===3||elem.nodeType===8){return;}
if(elem.setInterval&&(elem!==window&&!elem.frameElement)){elem=window;}
var handleObjIn,handleObj;if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;}
if(!handler.guid){handler.guid=jQuery.guid++;}
var elemData=jQuery.data(elem);if(!elemData){return;}
var events=elemData.events=elemData.events||{},eventHandle=elemData.handle,eventHandle;if(!eventHandle){elemData.handle=eventHandle=function(){return typeof jQuery!=="undefined"&&!jQuery.event.triggered?jQuery.event.handle.apply(eventHandle.elem,arguments):undefined;};}
eventHandle.elem=elem;types=types.split(" ");var type,i=0,namespaces;while((type=types[i++])){handleObj=handleObjIn?jQuery.extend({},handleObjIn):{handler:handler,data:data};if(type.indexOf(".")>-1){namespaces=type.split(".");type=namespaces.shift();handleObj.namespace=namespaces.slice(0).sort().join(".");}else{namespaces=[];handleObj.namespace="";}
handleObj.type=type;handleObj.guid=handler.guid;var handlers=events[type],special=jQuery.event.special[type]||{};if(!handlers){handlers=events[type]=[];if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle,false);}else if(elem.attachEvent){elem.attachEvent("on"+type,eventHandle);}}}
if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;}}
handlers.push(handleObj);jQuery.event.global[type]=true;}
elem=null;},global:{},remove:function(elem,types,handler,pos){if(elem.nodeType===3||elem.nodeType===8){return;}
var ret,type,fn,i=0,all,namespaces,namespace,special,eventType,handleObj,origType,elemData=jQuery.data(elem),events=elemData&&elemData.events;if(!elemData||!events){return;}
if(types&&types.type){handler=types.handler;types=types.type;}
if(!types||typeof types==="string"&&types.charAt(0)==="."){types=types||"";for(type in events){jQuery.event.remove(elem,type+types);}
return;}
types=types.split(" ");while((type=types[i++])){origType=type;handleObj=null;all=type.indexOf(".")<0;namespaces=[];if(!all){namespaces=type.split(".");type=namespaces.shift();namespace=new RegExp("(^|\\.)"+
jQuery.map(namespaces.slice(0).sort(),fcleanup).join("\\.(?:.*\\.)?")+"(\\.|$)")}
eventType=events[type];if(!eventType){continue;}
if(!handler){for(var j=0;j<eventType.length;j++){handleObj=eventType[j];if(all||namespace.test(handleObj.namespace)){jQuery.event.remove(elem,origType,handleObj.handler,j);eventType.splice(j--,1);}}
continue;}
special=jQuery.event.special[type]||{};for(var j=pos||0;j<eventType.length;j++){handleObj=eventType[j];if(handler.guid===handleObj.guid){if(all||namespace.test(handleObj.namespace)){if(pos==null){eventType.splice(j--,1);}
if(special.remove){special.remove.call(elem,handleObj);}}
if(pos!=null){break;}}}
if(eventType.length===0||pos!=null&&eventType.length===1){if(!special.teardown||special.teardown.call(elem,namespaces)===false){removeEvent(elem,type,elemData.handle);}
ret=null;delete events[type];}}
if(jQuery.isEmptyObject(events)){var handle=elemData.handle;if(handle){handle.elem=null;}
delete elemData.events;delete elemData.handle;if(jQuery.isEmptyObject(elemData)){jQuery.removeData(elem);}}},trigger:function(event,data,elem){var type=event.type||event,bubbling=arguments[3];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(jQuery.event.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);}
var parent=elem.parentNode||elem.ownerDocument;try{if(!(elem&&elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()])){if(elem["on"+type]&&elem["on"+type].apply(elem,data)===false){event.result=false;}}}catch(e){}
if(!event.isPropagationStopped()&&parent){jQuery.event.trigger(event,data,parent,true);}else if(!event.isDefaultPrevented()){var target=event.target,old,isClick=jQuery.nodeName(target,"a")&&type==="click",special=jQuery.event.special[type]||{};if((!special._default||special._default.call(elem,event)===false)&&!isClick&&!(target&&target.nodeName&&jQuery.noData[target.nodeName.toLowerCase()])){try{if(target[type]){old=target["on"+type];if(old){target["on"+type]=null;}
jQuery.event.triggered=true;target[type]();}}catch(e){}
if(old){target["on"+type]=old;}
jQuery.event.triggered=false;}}},handle:function(event){var all,handlers,namespaces,namespace,events;event=arguments[0]=jQuery.event.fix(event||window.event);event.currentTarget=this;all=event.type.indexOf(".")<0&&!event.exclusive;if(!all){namespaces=event.type.split(".");event.type=namespaces.shift();namespace=new RegExp("(^|\\.)"+namespaces.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)");}
var events=jQuery.data(this,"events"),handlers=events[event.type];if(events&&handlers){handlers=handlers.slice(0);for(var j=0,l=handlers.length;j<l;j++){var handleObj=handlers[j];if(all||namespace.test(handleObj.namespace)){event.handler=handleObj.handler;event.data=handleObj.data;event.handleObj=handleObj;var ret=handleObj.handler.apply(this,arguments);if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}
if(event.isImmediatePropagationStopped()){break;}}}}
return event.result;},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY 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&&doc.clientLeft||body&&body.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.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!==undefined){event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));}
return event;},guid:1E8,proxy:jQuery.proxy,special:{ready:{setup:jQuery.bindReady,teardown:jQuery.noop},live:{add:function(handleObj){jQuery.event.add(this,handleObj.origType,jQuery.extend({},handleObj,{handler:liveHandler}));},remove:function(handleObj){var remove=true,type=handleObj.origType.replace(rnamespaces,"");jQuery.each(jQuery.data(this,"events").live||[],function(){if(type===this.origType.replace(rnamespaces,"")){remove=false;return false;}});if(remove){jQuery.event.remove(this,handleObj.origType,liveHandler);}}},beforeunload:{setup:function(data,namespaces,eventHandle){if(this.setInterval){this.onbeforeunload=eventHandle;}
return false;},teardown:function(namespaces,eventHandle){if(this.onbeforeunload===eventHandle){this.onbeforeunload=null;}}}}};var removeEvent=document.removeEventListener?function(elem,type,handle){elem.removeEventListener(type,handle,false);}:function(elem,type,handle){elem.detachEvent("on"+type,handle);};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;try{while(parent&&parent!==this){parent=parent.parentNode;}
if(parent!==this){event.type=event.data;jQuery.event.handle.apply(this,arguments);}}catch(e){}},delegate=function(event){event.type=event.data;jQuery.event.handle.apply(this,arguments);};jQuery.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(orig,fix){jQuery.event.special[orig]={setup:function(data){jQuery.event.add(this,fix,data&&data.selector?delegate:withinElement,orig);},teardown:function(data){jQuery.event.remove(this,fix,data&&data.selector?delegate:withinElement);}};});if(!jQuery.support.submitBubbles){jQuery.event.special.submit={setup:function(data,namespaces){if(this.nodeName.toLowerCase()!=="form"){jQuery.event.add(this,"click.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="submit"||type==="image")&&jQuery(elem).closest("form").length){return trigger("submit",this,arguments);}});jQuery.event.add(this,"keypress.specialSubmit",function(e){var elem=e.target,type=elem.type;if((type==="text"||type==="password")&&jQuery(elem).closest("form").length&&e.keyCode===13){return trigger("submit",this,arguments);}});}else{return false;}},teardown:function(namespaces){jQuery.event.remove(this,".specialSubmit");}};}
if(!jQuery.support.changeBubbles){var formElems=/textarea|input|select/i,changeFilters,getVal=function(elem){var type=elem.type,val=elem.value;if(type==="radio"||type==="checkbox"){val=elem.checked;}else if(type==="select-multiple"){val=elem.selectedIndex>-1?jQuery.map(elem.options,function(elem){return elem.selected;}).join("-"):"";}else if(elem.nodeName.toLowerCase()==="select"){val=elem.selectedIndex;}
return val;},testChange=function testChange(e){var elem=e.target,data,val;if(!formElems.test(elem.nodeName)||elem.readOnly){return;}
data=jQuery.data(elem,"_change_data");val=getVal(elem);if(e.type!=="focusout"||elem.type!=="radio"){jQuery.data(elem,"_change_data",val);}
if(data===undefined||val===data){return;}
if(data!=null||val){e.type="change";return jQuery.event.trigger(e,arguments[1],elem);}};jQuery.event.special.change={filters:{focusout:testChange,click:function(e){var elem=e.target,type=elem.type;if(type==="radio"||type==="checkbox"||elem.nodeName.toLowerCase()==="select"){return testChange.call(this,e);}},keydown:function(e){var elem=e.target,type=elem.type;if((e.keyCode===13&&elem.nodeName.toLowerCase()!=="textarea")||(e.keyCode===32&&(type==="checkbox"||type==="radio"))||type==="select-multiple"){return testChange.call(this,e);}},beforeactivate:function(e){var elem=e.target;jQuery.data(elem,"_change_data",getVal(elem));}},setup:function(data,namespaces){if(this.type==="file"){return false;}
for(var type in changeFilters){jQuery.event.add(this,type+".specialChange",changeFilters[type]);}
return formElems.test(this.nodeName);},teardown:function(namespaces){jQuery.event.remove(this,".specialChange");return formElems.test(this.nodeName);}};changeFilters=jQuery.event.special.change.filters;}
function trigger(type,elem,args){args[0].type=type;return jQuery.event.handle.apply(elem,args);}
if(document.addEventListener){jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){jQuery.event.special[fix]={setup:function(){this.addEventListener(orig,handler,true);},teardown:function(){this.removeEventListener(orig,handler,true);}};function handler(e){e=jQuery.event.fix(e);e.type=fix;return jQuery.event.handle.call(this,e);}});}
jQuery.each(["bind","one"],function(i,name){jQuery.fn[name]=function(type,data,fn){if(typeof type==="object"){for(var key in type){this[name](key,data,type[key],fn);}
return this;}
if(jQuery.isFunction(data)){fn=data;data=undefined;}
var handler=name==="one"?jQuery.proxy(fn,function(event){jQuery(this).unbind(event,handler);return fn.apply(this,arguments);}):fn;if(type==="unload"&&name!=="one"){this.one(type,data,fn);}else{for(var i=0,l=this.length;i<l;i++){jQuery.event.add(this[i],type,handler,data);}}
return this;};});jQuery.fn.extend({unbind:function(type,fn){if(typeof type==="object"&&!type.preventDefault){for(var key in type){this.unbind(key,type[key]);}}else{for(var i=0,l=this.length;i<l;i++){jQuery.event.remove(this[i],type,fn);}}
return this;},delegate:function(selector,types,data,fn){return this.live(types,data,fn,selector);},undelegate:function(selector,types,fn){if(arguments.length===0){return this.unbind("live");}else{return this.die(types,null,fn,selector);}},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.proxy(fn,args[i++]);}
return this.click(jQuery.proxy(fn,function(event){var lastToggle=(jQuery.data(this,"lastToggle"+fn.guid)||0)%i;jQuery.data(this,"lastToggle"+fn.guid,lastToggle+1);event.preventDefault();return args[lastToggle].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});var liveMap={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};jQuery.each(["live","die"],function(i,name){jQuery.fn[name]=function(types,data,fn,origSelector){var type,i=0,match,namespaces,preType,selector=origSelector||this.selector,context=origSelector?this:jQuery(this.context);if(jQuery.isFunction(data)){fn=data;data=undefined;}
types=(types||"").split(" ");while((type=types[i++])!=null){match=rnamespaces.exec(type);namespaces="";if(match){namespaces=match[0];type=type.replace(rnamespaces,"");}
if(type==="hover"){types.push("mouseenter"+namespaces,"mouseleave"+namespaces);continue;}
preType=type;if(type==="focus"||type==="blur"){types.push(liveMap[type]+namespaces);type=type+namespaces;}else{type=(liveMap[type]||type)+namespaces;}
if(name==="live"){context.each(function(){jQuery.event.add(this,liveConvert(type,selector),{data:data,selector:selector,handler:fn,origType:type,origHandler:fn,preType:preType});});}else{context.unbind(liveConvert(type,selector),fn);}}
return this;}});function liveHandler(event){var stop,elems=[],selectors=[],args=arguments,related,match,handleObj,elem,j,i,l,data,events=jQuery.data(this,"events");if(event.liveFired===this||!events||!events.live||event.button&&event.type==="click"){return;}
event.liveFired=this;var live=events.live.slice(0);for(j=0;j<live.length;j++){handleObj=live[j];if(handleObj.origType.replace(rnamespaces,"")===event.type){selectors.push(handleObj.selector);}else{live.splice(j--,1);}}
match=jQuery(event.target).closest(selectors,event.currentTarget);for(i=0,l=match.length;i<l;i++){for(j=0;j<live.length;j++){handleObj=live[j];if(match[i].selector===handleObj.selector){elem=match[i].elem;related=null;if(handleObj.preType==="mouseenter"||handleObj.preType==="mouseleave"){related=jQuery(event.relatedTarget).closest(handleObj.selector)[0];}
if(!related||related!==elem){elems.push({elem:elem,handleObj:handleObj});}}}}
for(i=0,l=elems.length;i<l;i++){match=elems[i];event.currentTarget=match.elem;event.data=match.handleObj.data;event.handleObj=match.handleObj;if(match.handleObj.origHandler.apply(match.elem,args)===false){stop=false;break;}}
return stop;}
function liveConvert(type,selector){return"live."+(type&&type!=="*"?type+".":"")+selector.replace(/\./g,"`").replace(/ /g,"&");}
jQuery.each(("blur focus focusin focusout 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);};if(jQuery.attrFn){jQuery.attrFn[name]=true;}});if(window.attachEvent&&!window.addEventListener){window.attachEvent("onunload",function(){for(var id in jQuery.cache){if(jQuery.cache[id].handle){try{jQuery.event.remove(jQuery.cache[id].handle.elem);}catch(e){}}}});}
(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true;[0,0].sort(function(){baseHasDuplicate=false;return 0;});var Sizzle=function(selector,context,results,seed){results=results||[];var origContext=context=context||document;if(context.nodeType!==1&&context.nodeType!==9){return[];}
if(!selector||typeof selector!=="string"){return results;}
var parts=[],m,set,checkSet,extra,prune=true,contextXML=isXML(context),soFar=selector;while((chunker.exec(""),m=chunker.exec(soFar))!==null){soFar=m[3];parts.push(m[1]);if(m[2]){extra=m[3];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{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){var ret=Sizzle.find(parts.shift(),context,contextXML);context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0];}
if(context){var ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);set=ret.expr?Sizzle.filter(ret.expr,ret.set):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,contextXML);}}else{checkSet=parts=[];}}
if(!checkSet){checkSet=set;}
if(!checkSet){Sizzle.error(cur||selector);}
if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);}else if(context&&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,origContext,results,seed);Sizzle.uniqueSort(results);}
return results;};Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate;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.leftMatch[type].exec(expr))){var left=match[1];match.splice(1,1);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.leftMatch[type].exec(expr))!=null&&match[2]){var filter=Expr.filter[type],found,item,left=match[1];anyFound=false;match.splice(1,1);if(left.substr(left.length-1)==="\\"){continue;}
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){Sizzle.error(expr);}else{break;}}
old=expr;}
return curLoop;};Sizzle.error=function(msg){throw"Syntax error, unrecognized expression: "+msg;};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\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");}},relative:{"+":function(checkSet,part){var isPartStr=typeof part==="string",isTag=isPartStr&&!/\W/.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag){part=part.toLowerCase();}
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.toLowerCase()===part?elem||false:elem===part;}}
if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part){var isPartStr=typeof part==="string";if(isPartStr&&!/\W/.test(part)){part=part.toLowerCase();for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName.toLowerCase()===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(typeof part==="string"&&!/\W/.test(part)){var nodeCheck=part=part.toLowerCase();checkFn=dirNodeCheck;}
checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!/\W/.test(part)){var nodeCheck=part=part.toLowerCase();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){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+" ").replace(/[\t\n]/g," ").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){return match[1].toLowerCase();},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((chunker.exec(match[3])||"").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.toLowerCase()==="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||getText([elem])||"").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;}else{Sizzle.error("Syntax error, unrecognized expression: "+name);}},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.toLowerCase()===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]=new RegExp(Expr.match[type].source+/(?![^\[]*\])(?![^\(]*\))/.source);Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source.replace(/\\(\d+)/g,function(all,num){return"\\"+(num-0+1);}));}
var makeArray=function(array,results){array=Array.prototype.slice.call(array,0);if(results){results.push.apply(results,array);return results;}
return array;};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType;}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){if(!a.compareDocumentPosition||!b.compareDocumentPosition){if(a==b){hasDuplicate=true;}
return a.compareDocumentPosition?-1:1;}
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){if(!a.sourceIndex||!b.sourceIndex){if(a==b){hasDuplicate=true;}
return a.sourceIndex?-1:1;}
var ret=a.sourceIndex-b.sourceIndex;if(ret===0){hasDuplicate=true;}
return ret;};}else if(document.createRange){sortOrder=function(a,b){if(!a.ownerDocument||!b.ownerDocument){if(a==b){hasDuplicate=true;}
return a.ownerDocument?-1:1;}
var aRange=a.ownerDocument.createRange(),bRange=b.ownerDocument.createRange();aRange.setStart(a,0);aRange.setEnd(a,0);bRange.setStart(b,0);bRange.setEnd(b,0);var ret=aRange.compareBoundaryPoints(Range.START_TO_END,bRange);if(ret===0){hasDuplicate=true;}
return ret;};}
function getText(elems){var ret="",elem;for(var i=0;elems[i];i++){elem=elems[i];if(elem.nodeType===3||elem.nodeType===4){ret+=elem.nodeValue;}else if(elem.nodeType!==8){ret+=getText(elem.childNodes);}}
return ret;}
(function(){var form=document.createElement("div"),id="script"+(new Date).getTime();form.innerHTML="<a 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);root=form=null;})();(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);};}
div=null;})();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);};for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop];}
div=null;})();}
(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(!div.getElementsByClassName||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]);}};div=null;})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){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.toLowerCase()===cur){match=elem;break;}
elem=elem[dir];}
checkSet[i]=match;}}}
function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){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){var documentElement=(elem?elem.ownerDocument||elem:0).documentElement;return documentElement?documentElement.nodeName!=="HTML":false;};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.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.filters;jQuery.unique=Sizzle.uniqueSort;jQuery.text=getText;jQuery.isXMLDoc=isXML;jQuery.contains=contains;return;window.Sizzle=Sizzle;})();var runtil=/Until$/,rparentsprev=/^(?:parents|prevUntil|prevAll)/,rmultiselector=/,/,slice=Array.prototype.slice;var winnow=function(elements,qualifier,keep){if(jQuery.isFunction(qualifier)){return jQuery.grep(elements,function(elem,i){return!!qualifier.call(elem,i,elem)===keep;});}else if(qualifier.nodeType){return jQuery.grep(elements,function(elem,i){return(elem===qualifier)===keep;});}else if(typeof qualifier==="string"){var filtered=jQuery.grep(elements,function(elem){return elem.nodeType===1;});if(isSimple.test(qualifier)){return jQuery.filter(qualifier,filtered,!keep);}else{qualifier=jQuery.filter(qualifier,filtered);}}
return jQuery.grep(elements,function(elem,i){return(jQuery.inArray(elem,qualifier)>=0)===keep;});};jQuery.fn.extend({find:function(selector){var ret=this.pushStack("","find",selector),length=0;for(var i=0,l=this.length;i<l;i++){length=ret.length;jQuery.find(selector,this[i],ret);if(i>0){for(var n=length;n<ret.length;n++){for(var r=0;r<length;r++){if(ret[r]===ret[n]){ret.splice(n--,1);break;}}}}}
return ret;},has:function(target){var targets=jQuery(target);return this.filter(function(){for(var i=0,l=targets.length;i<l;i++){if(jQuery.contains(this,targets[i])){return true;}}});},not:function(selector){return this.pushStack(winnow(this,selector,false),"not",selector);},filter:function(selector){return this.pushStack(winnow(this,selector,true),"filter",selector);},is:function(selector){return!!selector&&jQuery.filter(selector,this).length>0;},closest:function(selectors,context){if(jQuery.isArray(selectors)){var ret=[],cur=this[0],match,matches={},selector;if(cur&&selectors.length){for(var i=0,l=selectors.length;i<l;i++){selector=selectors[i];if(!matches[selector]){matches[selector]=jQuery.expr.match.POS.test(selector)?jQuery(selector,context||this.context):selector;}}
while(cur&&cur.ownerDocument&&cur!==context){for(selector in matches){match=matches[selector];if(match.jquery?match.index(cur)>-1:jQuery(cur).is(match)){ret.push({selector:selector,elem:cur});delete matches[selector];}}
cur=cur.parentNode;}}
return ret;}
var pos=jQuery.expr.match.POS.test(selectors)?jQuery(selectors,context||this.context):null;return this.map(function(i,cur){while(cur&&cur.ownerDocument&&cur!==context){if(pos?pos.index(cur)>-1:jQuery(cur).is(selectors)){return cur;}
cur=cur.parentNode;}
return null;});},index:function(elem){if(!elem||typeof elem==="string"){return jQuery.inArray(this[0],elem?jQuery(elem):this.parent().children());}
return jQuery.inArray(elem.jquery?elem[0]:elem,this);},add:function(selector,context){var set=typeof selector==="string"?jQuery(selector,context||this.context):jQuery.makeArray(selector),all=jQuery.merge(this.get(),set);return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?all:jQuery.unique(all));},andSelf:function(){return this.add(this.prevObject);}});function isDisconnected(node){return!node||!node.parentNode||node.parentNode.nodeType===11;}
jQuery.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return jQuery.dir(elem,"parentNode");},parentsUntil:function(elem,i,until){return jQuery.dir(elem,"parentNode",until);},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");},nextUntil:function(elem,i,until){return jQuery.dir(elem,"nextSibling",until);},prevUntil:function(elem,i,until){return jQuery.dir(elem,"previousSibling",until);},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(until,selector){var ret=jQuery.map(this,fn,until);if(!runtil.test(name)){selector=until;}
if(selector&&typeof selector==="string"){ret=jQuery.filter(selector,ret);}
ret=this.length>1?jQuery.unique(ret):ret;if((this.length>1||rmultiselector.test(selector))&&rparentsprev.test(name)){ret=ret.reverse();}
return this.pushStack(ret,name,slice.call(arguments).join(","));};});jQuery.extend({filter:function(expr,elems,not){if(not){expr=":not("+expr+")";}
return jQuery.find.matches(expr,elems);},dir:function(elem,dir,until){var matched=[],cur=elem[dir];while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!jQuery(cur).is(until))){if(cur.nodeType===1){matched.push(cur);}
cur=cur[dir];}
return matched;},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;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){r.push(n);}}
return r;}});var rinlinejQuery=/ jQuery\d+="(?:\d+|null)"/g,rleadingWhitespace=/^\s+/,rxhtmlTag=/(<([\w:]+)[^>]*?)\/>/g,rselfClosing=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,rtagName=/<([\w:]+)/,rtbody=/<tbody/i,rhtml=/<|&#?\w+;/,rnocache=/<script|<object|<embed|<option|<style/i,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,fcloseTag=function(all,front,tag){return rselfClosing.test(tag)?all:front+"></"+tag+">";},wrapMap={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};wrapMap.optgroup=wrapMap.option;wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!jQuery.support.htmlSerialize){wrapMap._default=[1,"div<div>","</div>"];}
jQuery.fn.extend({text:function(text){if(jQuery.isFunction(text)){return this.each(function(i){var self=jQuery(this);self.text(text.call(this,i,self.text()));});}
if(typeof text!=="object"&&text!==undefined){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));}
return jQuery.text(this);},wrapAll:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapAll(html.call(this,i));});}
if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);}
wrap.map(function(){var elem=this;while(elem.firstChild&&elem.firstChild.nodeType===1){elem=elem.firstChild;}
return elem;}).append(this);}
return this;},wrapInner:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapInner(html.call(this,i));});}
return this.each(function(){var self=jQuery(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},unwrap:function(){return this.parent().each(function(){if(!jQuery.nodeName(this,"body")){jQuery(this).replaceWith(this.childNodes);}}).end();},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(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});}else if(arguments.length){var set=jQuery(arguments[0]);set.push.apply(set,this.toArray());return this.pushStack(set,"before",arguments);}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});}else if(arguments.length){var set=this.pushStack(this,"after",arguments);set.push.apply(set,jQuery(arguments[0]).toArray());return set;}},remove:function(selector,keepData){for(var i=0,elem;(elem=this[i])!=null;i++){if(!selector||jQuery.filter(selector,[elem]).length){if(!keepData&&elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));jQuery.cleanData([elem]);}
if(elem.parentNode){elem.parentNode.removeChild(elem);}}}
return this;},empty:function(){for(var i=0,elem;(elem=this[i])!=null;i++){if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));}
while(elem.firstChild){elem.removeChild(elem.firstChild);}}
return this;},clone:function(events){var ret=this.map(function(){if(!jQuery.support.noCloneEvent&&!jQuery.isXMLDoc(this)){var html=this.outerHTML,ownerDocument=this.ownerDocument;if(!html){var div=ownerDocument.createElement("div");div.appendChild(this.cloneNode(true));html=div.innerHTML;}
return jQuery.clean([html.replace(rinlinejQuery,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(rleadingWhitespace,"")],ownerDocument)[0];}else{return this.cloneNode(true);}});if(events===true){cloneCopyEvent(this,ret);cloneCopyEvent(this.find("*"),ret.find("*"));}
return ret;},html:function(value){if(value===undefined){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(rinlinejQuery,""):null;}else if(typeof value==="string"&&!rnocache.test(value)&&(jQuery.support.leadingWhitespace||!rleadingWhitespace.test(value))&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=value.replace(rxhtmlTag,fcloseTag);try{for(var i=0,l=this.length;i<l;i++){if(this[i].nodeType===1){jQuery.cleanData(this[i].getElementsByTagName("*"));this[i].innerHTML=value;}}}catch(e){this.empty().append(value);}}else if(jQuery.isFunction(value)){this.each(function(i){var self=jQuery(this),old=self.html();self.empty().append(function(){return value.call(this,i,old);});});}else{this.empty().append(value);}
return this;},replaceWith:function(value){if(this[0]&&this[0].parentNode){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this),old=self.html();self.replaceWith(value.call(this,i,old));});}
if(typeof value!=="string"){value=jQuery(value).detach();}
return this.each(function(){var next=this.nextSibling,parent=this.parentNode;jQuery(this).remove();if(next){jQuery(next).before(value);}else{jQuery(parent).append(value);}});}else{return this.pushStack(jQuery(jQuery.isFunction(value)?value():value),"replaceWith",value);}},detach:function(selector){return this.remove(selector,true);},domManip:function(args,table,callback){var results,first,value=args[0],scripts=[],fragment,parent;if(!jQuery.support.checkClone&&arguments.length===3&&typeof value==="string"&&rchecked.test(value)){return this.each(function(){jQuery(this).domManip(args,table,callback,true);});}
if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);args[0]=value.call(this,i,table?self.html():undefined);self.domManip(args,table,callback);});}
if(this[0]){parent=value&&value.parentNode;if(jQuery.support.parentNode&&parent&&parent.nodeType===11&&parent.childNodes.length===this.length){results={fragment:parent};}else{results=buildFragment(args,this,scripts);}
fragment=results.fragment;if(fragment.childNodes.length===1){first=fragment=fragment.firstChild;}else{first=fragment.firstChild;}
if(first){table=table&&jQuery.nodeName(first,"tr");for(var i=0,l=this.length;i<l;i++){callback.call(table?root(this[i],first):this[i],i>0||results.cacheable||this.length>1?fragment.cloneNode(true):fragment);}}
if(scripts.length){jQuery.each(scripts,evalScript);}}
return this;function root(elem,cur){return jQuery.nodeName(elem,"table")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}}});function cloneCopyEvent(orig,ret){var i=0;ret.each(function(){if(this.nodeName!==(orig[i]&&orig[i].nodeName)){return;}
var oldData=jQuery.data(orig[i++]),curData=jQuery.data(this,oldData),events=oldData&&oldData.events;if(events){delete curData.handle;curData.events={};for(var type in events){for(var handler in events[type]){jQuery.event.add(this,type,events[type][handler],events[type][handler].data);}}}});}
function buildFragment(args,nodes,scripts){var fragment,cacheable,cacheresults,doc=(nodes&&nodes[0]?nodes[0].ownerDocument||nodes[0]:document);if(args.length===1&&typeof args[0]==="string"&&args[0].length<512&&doc===document&&!rnocache.test(args[0])&&(jQuery.support.checkClone||!rchecked.test(args[0]))){cacheable=true;cacheresults=jQuery.fragments[args[0]];if(cacheresults){if(cacheresults!==1){fragment=cacheresults;}}}
if(!fragment){fragment=doc.createDocumentFragment();jQuery.clean(args,doc,fragment,scripts);}
if(cacheable){jQuery.fragments[args[0]]=cacheresults?fragment:1;}
return{fragment:fragment,cacheable:cacheable};}
jQuery.fragments={};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),parent=this.length===1&&this[0].parentNode;if(parent&&parent.nodeType===11&&parent.childNodes.length===1&&insert.length===1){insert[original](this[0]);return this;}else{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,insert.selector);}};});jQuery.extend({clean:function(elems,context,fragment,scripts){context=context||document;if(typeof context.createElement==="undefined"){context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;}
var ret=[];for(var i=0,elem;(elem=elems[i])!=null;i++){if(typeof elem==="number"){elem+="";}
if(!elem){continue;}
if(typeof elem==="string"&&!rhtml.test(elem)){elem=context.createTextNode(elem);}else if(typeof elem==="string"){elem=elem.replace(rxhtmlTag,fcloseTag);var tag=(rtagName.exec(elem)||["",""])[1].toLowerCase(),wrap=wrapMap[tag]||wrapMap._default,depth=wrap[0],div=context.createElement("div");div.innerHTML=wrap[1]+elem+wrap[2];while(depth--){div=div.lastChild;}
if(!jQuery.support.tbody){var hasBody=rtbody.test(elem),tbody=tag==="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&&rleadingWhitespace.test(elem)){div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild);}
elem=div.childNodes;}
if(elem.nodeType){ret.push(elem);}else{ret=jQuery.merge(ret,elem);}}
if(fragment){for(var i=0;ret[i];i++){if(scripts&&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 ret;},cleanData:function(elems){var data,id,cache=jQuery.cache,special=jQuery.event.special,deleteExpando=jQuery.support.deleteExpando;for(var i=0,elem;(elem=elems[i])!=null;i++){id=elem[jQuery.expando];if(id){data=cache[id];if(data.events){for(var type in data.events){if(special[type]){jQuery.event.remove(elem,type);}else{removeEvent(elem,type,data.handle);}}}
if(deleteExpando){delete elem[jQuery.expando];}else if(elem.removeAttribute){elem.removeAttribute(jQuery.expando);}
delete cache[id];}}}});var rexclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,ralpha=/alpha\([^)]*\)/,ropacity=/opacity=([^)]*)/,rfloat=/float/i,rdashAlpha=/-([a-z])/ig,rupper=/([A-Z])/g,rnumpx=/^-?\d+(?:px)?$/i,rnum=/^-?\d/,cssShow={position:"absolute",visibility:"hidden",display:"block"},cssWidth=["Left","Right"],cssHeight=["Top","Bottom"],getComputedStyle=document.defaultView&&document.defaultView.getComputedStyle,styleFloat=jQuery.support.cssFloat?"cssFloat":"styleFloat",fcamelCase=function(all,letter){return letter.toUpperCase();};jQuery.fn.css=function(name,value){return access(this,name,value,true,function(elem,name,value){if(value===undefined){return jQuery.curCSS(elem,name);}
if(typeof value==="number"&&!rexclude.test(name)){value+="px";}
jQuery.style(elem,name,value);});};jQuery.extend({style:function(elem,name,value){if(!elem||elem.nodeType===3||elem.nodeType===8){return undefined;}
if((name==="width"||name==="height")&&parseFloat(value)<0){value=undefined;}
var style=elem.style||elem,set=value!==undefined;if(!jQuery.support.opacity&&name==="opacity"){if(set){style.zoom=1;var opacity=parseInt(value,10)+""==="NaN"?"":"alpha(opacity="+value*100+")";var filter=style.filter||jQuery.curCSS(elem,"filter")||"";style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):opacity;}
return style.filter&&style.filter.indexOf("opacity=")>=0?(parseFloat(ropacity.exec(style.filter)[1])/100)+"":"";}
if(rfloat.test(name)){name=styleFloat;}
name=name.replace(rdashAlpha,fcamelCase);if(set){style[name]=value;}
return style[name];},css:function(elem,name,force,extra){if(name==="width"||name==="height"){var val,props=cssShow,which=name==="width"?cssWidth:cssHeight;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,filter;if(!jQuery.support.opacity&&name==="opacity"&&elem.currentStyle){ret=ropacity.test(elem.currentStyle.filter||"")?(parseFloat(RegExp.$1)/100)+"":"";return ret===""?"1":ret;}
if(rfloat.test(name)){name=styleFloat;}
if(!force&&style&&style[name]){ret=style[name];}else if(getComputedStyle){if(rfloat.test(name)){name="float";}
name=name.replace(rupper,"-$1").toLowerCase();var defaultView=elem.ownerDocument.defaultView;if(!defaultView){return null;}
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(rdashAlpha,fcamelCase);ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!rnumpx.test(ret)&&rnum.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=camelCase==="fontSize"?"1em":(ret||0);ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}
return ret;},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];}}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.hidden=function(elem){var width=elem.offsetWidth,height=elem.offsetHeight,skip=elem.nodeName.toLowerCase()==="tr";return width===0&&height===0&&!skip?true:width>0&&height>0&&!skip?false:jQuery.curCSS(elem,"display")==="none";};jQuery.expr.filters.visible=function(elem){return!jQuery.expr.filters.hidden(elem);};}
var jsc=now(),rscript=/<script(.|\s)*?\/script>/gi,rselectTextarea=/select|textarea/i,rinput=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,jsre=/=\?(&|$)/,rquery=/\?/,rts=/(\?|&)_=.*?(&|$)/,rurl=/^(\w+:)?\/\/([^\/?#]+)/,r20=/%20/g,_load=jQuery.fn.load;jQuery.fn.extend({load:function(url,params,callback){if(typeof url!=="string"){return _load.call(this,url);}else if(!this.length){return this;}
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,jQuery.ajaxSettings.traditional);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(rscript,"")).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||rselectTextarea.test(this.nodeName)||rinput.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);};});jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){type=type||callback;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)){type=type||callback;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:window.XMLHttpRequest&&(window.location.protocol!=="file:"||!window.ActiveXObject)?function(){return new window.XMLHttpRequest();}:function(){try{return new window.ActiveXObject("Microsoft.XMLHTTP");}catch(e){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(origSettings){var s=jQuery.extend(true,{},jQuery.ajaxSettings,origSettings);var jsonp,status,data,callbackContext=origSettings&&origSettings.context||s,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!=="string"){s.data=jQuery.param(s.data,s.traditional);}
if(s.dataType==="jsonp"){if(type==="GET"){if(!jsre.test(s.url)){s.url+=(rquery.test(s.url)?"&":"?")+(s.jsonp||"callback")+"=?";}}else if(!s.data||!jsre.test(s.data)){s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";}
s.dataType="json";}
if(s.dataType==="json"&&(s.data&&jsre.test(s.data)||jsre.test(s.url))){jsonp=s.jsonpCallback||("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]=window[jsonp]||function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}
if(head){head.removeChild(script);}};}
if(s.dataType==="script"&&s.cache===null){s.cache=false;}
if(s.cache===false&&type==="GET"){var ts=now();var ret=s.url.replace(rts,"$1_="+ts+"$2");s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"");}
if(s.data&&type==="GET"){s.url+=(rquery.test(s.url)?"&":"?")+s.data;}
if(s.global&&!jQuery.active++){jQuery.event.trigger("ajaxStart");}
var parts=rurl.exec(s.url),remote=parts&&(parts[1]&&parts[1]!==location.protocol||parts[2]!==location.host);if(s.dataType==="script"&&type==="GET"&&remote){var head=document.getElementsByTagName("head")[0]||document.documentElement;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;if(head&&script.parentNode){head.removeChild(script);}}};}
head.insertBefore(script,head.firstChild);return undefined;}
var requestDone=false;var xhr=s.xhr();if(!xhr){return;}
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||origSettings&&origSettings.contentType){xhr.setRequestHeader("Content-Type",s.contentType);}
if(s.ifModified){if(jQuery.lastModified[s.url]){xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]);}
if(jQuery.etag[s.url]){xhr.setRequestHeader("If-None-Match",jQuery.etag[s.url]);}}
if(!remote){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.call(callbackContext,xhr,s)===false){if(s.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop");}
xhr.abort();return false;}
if(s.global){trigger("ajaxSend",[xhr,s]);}
var onreadystatechange=xhr.onreadystatechange=function(isTimeout){if(!xhr||xhr.readyState===0||isTimeout==="abort"){if(!requestDone){complete();}
requestDone=true;if(xhr){xhr.onreadystatechange=jQuery.noop;}}else if(!requestDone&&xhr&&(xhr.readyState===4||isTimeout==="timeout")){requestDone=true;xhr.onreadystatechange=jQuery.noop;status=isTimeout==="timeout"?"timeout":!jQuery.httpSuccess(xhr)?"error":s.ifModified&&jQuery.httpNotModified(xhr,s.url)?"notmodified":"success";var errMsg;if(status==="success"){try{data=jQuery.httpData(xhr,s.dataType,s);}catch(err){status="parsererror";errMsg=err;}}
if(status==="success"||status==="notmodified"){if(!jsonp){success();}}else{jQuery.handleError(s,xhr,status,errMsg);}
complete();if(isTimeout==="timeout"){xhr.abort();}
if(s.async){xhr=null;}}};try{var oldAbort=xhr.abort;xhr.abort=function(){if(xhr){oldAbort.call(xhr);}
onreadystatechange("abort");};}catch(e){}
if(s.async&&s.timeout>0){setTimeout(function(){if(xhr&&!requestDone){onreadystatechange("timeout");}},s.timeout);}
try{xhr.send(type==="POST"||type==="PUT"||type==="DELETE"?s.data:null);}catch(e){jQuery.handleError(s,xhr,null,e);complete();}
if(!s.async){onreadystatechange();}
function success(){if(s.success){s.success.call(callbackContext,data,status,xhr);}
if(s.global){trigger("ajaxSuccess",[xhr,s]);}}
function complete(){if(s.complete){s.complete.call(callbackContext,xhr,status);}
if(s.global){trigger("ajaxComplete",[xhr,s]);}
if(s.global&&!--jQuery.active){jQuery.event.trigger("ajaxStop");}}
function trigger(type,args){(s.context?jQuery(s.context):jQuery.event).trigger(type,args);}
return xhr;},handleError:function(s,xhr,status,e){if(s.error){s.error.call(s.context||s,xhr,status,e);}
if(s.global){(s.context?jQuery(s.context):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||xhr.status===0;}catch(e){}
return false;},httpNotModified:function(xhr,url){var lastModified=xhr.getResponseHeader("Last-Modified"),etag=xhr.getResponseHeader("Etag");if(lastModified){jQuery.lastModified[url]=lastModified;}
if(etag){jQuery.etag[url]=etag;}
return xhr.status===304||xhr.status===0;},httpData:function(xhr,type,s){var ct=xhr.getResponseHeader("content-type")||"",xml=type==="xml"||!type&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.nodeName==="parsererror"){jQuery.error("parsererror");}
if(s&&s.dataFilter){data=s.dataFilter(data,type);}
if(typeof data==="string"){if(type==="json"||!type&&ct.indexOf("json")>=0){data=jQuery.parseJSON(data);}else if(type==="script"||!type&&ct.indexOf("javascript")>=0){jQuery.globalEval(data);}}
return data;},param:function(a,traditional){var s=[];if(traditional===undefined){traditional=jQuery.ajaxSettings.traditional;}
if(jQuery.isArray(a)||a.jquery){jQuery.each(a,function(){add(this.name,this.value);});}else{for(var prefix in a){buildParams(prefix,a[prefix]);}}
return s.join("&").replace(r20,"+");function buildParams(prefix,obj){if(jQuery.isArray(obj)){jQuery.each(obj,function(i,v){if(traditional||/\[\]$/.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"||jQuery.isArray(v)?i:"")+"]",v);}});}else if(!traditional&&obj!=null&&typeof obj==="object"){jQuery.each(obj,function(k,v){buildParams(prefix+"["+k+"]",v);});}else{add(prefix,obj);}}
function add(key,value){value=jQuery.isFunction(value)?value():value;s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value);}}});var elemdisplay={},rfxtypes=/toggle|show|hide/,rfxnum=/^([+-]=)?([\d+-.]+)(.*)$/,timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];jQuery.fn.extend({show:function(speed,callback){if(speed||speed===0){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 nodeName=this[i].nodeName,display;if(elemdisplay[nodeName]){display=elemdisplay[nodeName];}else{var elem=jQuery("<"+nodeName+" />").appendTo("body");display=elem.css("display");if(display==="none"){display="block";}
elem.remove();elemdisplay[nodeName]=display;}
jQuery.data(this[i],"olddisplay",display);}}
for(var j=0,k=this.length;j<k;j++){this[j].style.display=jQuery.data(this[j],"olddisplay")||"";}
return this;}},hide:function(speed,callback){if(speed||speed===0){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 j=0,k=this.length;j<k;j++){this[j].style.display="none";}
return this;}},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){var bool=typeof fn==="boolean";if(jQuery.isFunction(fn)&&jQuery.isFunction(fn2)){this._toggle.apply(this,arguments);}else if(fn==null||bool){this.each(function(){var state=bool?fn:jQuery(this).is(":hidden");jQuery(this)[state?"show":"hide"]();});}else{this.animate(genFx("toggle",3),fn,fn2);}
return this;},fadeTo:function(speed,to,callback){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);if(jQuery.isEmptyObject(prop)){return this.each(optall.complete);}
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){var name=p.replace(rdashAlpha,fcamelCase);if(p!==name){prop[name]=prop[p];delete prop[p];p=name;}
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(jQuery.isArray(prop[p])){(opt.specialEasing=opt.specialEasing||{})[p]=prop[p][1];prop[p]=prop[p][0];}}
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(rfxtypes.test(val)){e[val==="toggle"?hidden?"show":"hide":val](prop);}else{var parts=rfxnum.exec(val),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=speed&&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(jQuery.fx.tick,13);}},show:function(){this.options.orig[this.prop]=jQuery.style(this.elem,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.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now(),done=true;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;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;var old=jQuery.data(this.elem,"olddisplay");this.elem.style.display=old?old: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.style(this.elem,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;var specialEasing=this.options.specialEasing&&this.options.specialEasing[this.prop];var defaultEasing=this.options.easing||(jQuery.easing.swing?"swing":"linear");this.pos=jQuery.easing[specialEasing||defaultEasing](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,{tick:function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++){if(!timers[i]()){timers.splice(i--,1);}}
if(!timers.length){jQuery.fx.stop();}},stop:function(){clearInterval(timerId);timerId=null;},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.style(fx.elem,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null){fx.elem.style[fx.prop]=(fx.prop==="width"||fx.prop==="height"?Math.max(0,fx.now):fx.now)+fx.unit;}else{fx.elem[fx.prop]=fx.now;}}}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};}
function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;});return obj;}
if("getBoundingClientRect"in document.documentElement){jQuery.fn.offset=function(options){var elem=this[0];if(options){return this.each(function(i){jQuery.offset.setOffset(this,options,i);});}
if(!elem||!elem.ownerDocument){return null;}
if(elem===elem.ownerDocument.body){return jQuery.offset.bodyOffset(elem);}
var box=elem.getBoundingClientRect(),doc=elem.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.support.boxModel&&docElem.scrollTop||body.scrollTop)-clientTop,left=box.left+(self.pageXOffset||jQuery.support.boxModel&&docElem.scrollLeft||body.scrollLeft)-clientLeft;return{top:top,left:left};};}else{jQuery.fn.offset=function(options){var elem=this[0];if(options){return this.each(function(i){jQuery.offset.setOffset(this,options,i);});}
if(!elem||!elem.ownerDocument){return null;}
if(elem===elem.ownerDocument.body){return jQuery.offset.bodyOffset(elem);}
jQuery.offset.initialize();var offsetParent=elem.offsetParent,prevOffsetParent=elem,doc=elem.ownerDocument,computedStyle,docElem=doc.documentElement,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle,top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){if(jQuery.offset.supportsFixedPosition&&prevComputedStyle.position==="fixed"){break;}
computedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle;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.nodeName))){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;}
prevOffsetParent=offsetParent,offsetParent=elem.offsetParent;}
if(jQuery.offset.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible"){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;}
prevComputedStyle=computedStyle;}
if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static"){top+=body.offsetTop;left+=body.offsetLeft;}
if(jQuery.offset.supportsFixedPosition&&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(){var body=document.body,container=document.createElement("div"),innerDiv,checkDiv,table,td,bodyMarginTop=parseFloat(jQuery.curCSS(body,"marginTop",true))||0,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>";jQuery.extend(container.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});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);checkDiv.style.position="fixed",checkDiv.style.top="20px";this.supportsFixedPosition=(checkDiv.offsetTop===20||checkDiv.offsetTop===15);checkDiv.style.position=checkDiv.style.top="";innerDiv.style.overflow="hidden",innerDiv.style.position="relative";this.subtractsBorderForOverflowNotVisible=(checkDiv.offsetTop===-5);this.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==bodyMarginTop);body.removeChild(container);body=container=innerDiv=checkDiv=table=td=null;jQuery.offset.initialize=jQuery.noop;},bodyOffset:function(body){var top=body.offsetTop,left=body.offsetLeft;jQuery.offset.initialize();if(jQuery.offset.doesNotIncludeMarginInBodyOffset){top+=parseFloat(jQuery.curCSS(body,"marginTop",true))||0;left+=parseFloat(jQuery.curCSS(body,"marginLeft",true))||0;}
return{top:top,left:left};},setOffset:function(elem,options,i){if(/static/.test(jQuery.curCSS(elem,"position"))){elem.style.position="relative";}
var curElem=jQuery(elem),curOffset=curElem.offset(),curTop=parseInt(jQuery.curCSS(elem,"top",true),10)||0,curLeft=parseInt(jQuery.curCSS(elem,"left",true),10)||0;if(jQuery.isFunction(options)){options=options.call(elem,i,curOffset);}
var props={top:(options.top-curOffset.top)+curTop,left:(options.left-curOffset.left)+curLeft};if("using"in options){options.using.call(elem,props);}else{curElem.css(props);}}};jQuery.fn.extend({position:function(){if(!this[0]){return null;}
var elem=this[0],offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();offset.top-=parseFloat(jQuery.curCSS(elem,"marginTop",true))||0;offset.left-=parseFloat(jQuery.curCSS(elem,"marginLeft",true))||0;parentOffset.top+=parseFloat(jQuery.curCSS(offsetParent[0],"borderTopWidth",true))||0;parentOffset.left+=parseFloat(jQuery.curCSS(offsetParent[0],"borderLeftWidth",true))||0;return{top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent||document.body;while(offsetParent&&(!/^body|html$/i.test(offsetParent.nodeName)&&jQuery.css(offsetParent,"position")==="static")){offsetParent=offsetParent.offsetParent;}
return offsetParent;});}});jQuery.each(["Left","Top"],function(i,name){var method="scroll"+name;jQuery.fn[method]=function(val){var elem=this[0],win;if(!elem){return null;}
if(val!==undefined){return this.each(function(){win=getWindow(this);if(win){win.scrollTo(!i?val:jQuery(win).scrollLeft(),i?val:jQuery(win).scrollTop());}else{this[method]=val;}});}else{win=getWindow(elem);return win?("pageXOffset"in win)?win[i?"pageYOffset":"pageXOffset"]:jQuery.support.boxModel&&win.document.documentElement[method]||win.document.body[method]:elem[method];}};});function getWindow(elem){return("scrollTo"in elem&&elem.document)?elem:elem.nodeType===9?elem.defaultView||elem.parentWindow:false;}
jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn["inner"+name]=function(){return this[0]?jQuery.css(this[0],type,false,"padding"):null;};jQuery.fn["outer"+name]=function(margin){return this[0]?jQuery.css(this[0],type,false,margin?"margin":"border"):null;};jQuery.fn[type]=function(size){var elem=this[0];if(!elem){return size==null?null:this;}
if(jQuery.isFunction(size)){return this.each(function(i){var self=jQuery(this);self[type](size.call(this,i,self[type]()));});}
return("scrollTo"in elem&&elem.document)?elem.document.compatMode==="CSS1Compat"&&elem.document.documentElement["client"+name]||elem.document.body["client"+name]:(elem.nodeType===9)?Math.max(elem.documentElement["client"+name],elem.body["scroll"+name],elem.documentElement["scroll"+name],elem.body["offset"+name],elem.documentElement["offset"+name]):size===undefined?jQuery.css(elem,type):this.css(type,typeof size==="string"?size:size+"px");};});window.jQuery=window.$=jQuery;})(window);
if(typeof(Magelo)=="undefined"){Magelo={};}
(function(jQuery){Magelo.jQuery=jQuery;
;(function($){$.fn.drag=function(str,arg,opts){var type=typeof str=="string"?str:"",fn=$.isFunction(str)?str:$.isFunction(arg)?arg:null;if(type.indexOf("drag")!==0)
type="drag"+type;opts=(str==fn?arg:opts)||{};return fn?this.bind(type,opts,fn):this.trigger(type);};var $event=$.event,$special=$event.special,drag=$special.drag={defaults:{which:1,distance:0,not:':input',handle:null,relative:false,drop:true,click:false},datakey:"dragdata",livekey:"livedrag",add:function(obj){var data=$.data(this,drag.datakey),opts=obj.data||{};data.related+=1;if(!data.live&&obj.selector){data.live=true;$event.add(this,"draginit."+drag.livekey,drag.delegate);}
$.each(drag.defaults,function(key,def){if(opts[key]!==undefined)
data[key]=opts[key];});},remove:function(){$.data(this,drag.datakey).related-=1;},setup:function(){if($.data(this,drag.datakey))
return;var data=$.extend({related:0},drag.defaults);$.data(this,drag.datakey,data);$event.add(this,"mousedown",drag.init,data);if(this.attachEvent)
this.attachEvent("ondragstart",drag.dontstart);},teardown:function(){if($.data(this,drag.datakey).related)
return;$.removeData(this,drag.datakey);$event.remove(this,"mousedown",drag.init);$event.remove(this,"draginit",drag.delegate);drag.textselect(true);if(this.detachEvent)
this.detachEvent("ondragstart",drag.dontstart);},init:function(event){var dd=event.data,results;if(dd.which>0&&event.which!=dd.which)
return;if($(event.target).is(dd.not))
return;if(dd.handle&&!$(event.target).closest(dd.handle,event.currentTarget).length)
return;dd.propagates=1;dd.interactions=[drag.interaction(this,dd)];dd.target=event.target;dd.pageX=event.pageX;dd.pageY=event.pageY;dd.dragging=null;results=drag.hijack(event,"draginit",dd);if(!dd.propagates)
return;results=drag.flatten(results);if(results&&results.length){dd.interactions=[];$.each(results,function(){dd.interactions.push(drag.interaction(this,dd));});}
dd.propagates=dd.interactions.length;if(dd.drop!==false&&$special.drop)
$special.drop.handler(event,dd);drag.textselect(false);$event.add(document,"mousemove mouseup",drag.handler,dd);return false;},interaction:function(elem,dd){return{drag:elem,callback:new drag.callback(),droppable:[],offset:$(elem)[dd.relative?"position":"offset"]()||{top:0,left:0}};},handler:function(event){var dd=event.data;switch(event.type){case!dd.dragging&&'mousemove':if(Math.pow(event.pageX-dd.pageX,2)+Math.pow(event.pageY-dd.pageY,2)<Math.pow(dd.distance,2))
break;event.target=dd.target;drag.hijack(event,"dragstart",dd);if(dd.propagates)
dd.dragging=true;case'mousemove':if(dd.dragging){drag.hijack(event,"drag",dd);if(dd.propagates){if(dd.drop!==false&&$special.drop)
$special.drop.handler(event,dd);break;}
event.type="mouseup";}
case'mouseup':$event.remove(document,"mousemove mouseup",drag.handler);if(dd.dragging){if(dd.drop!==false&&$special.drop)
$special.drop.handler(event,dd);drag.hijack(event,"dragend",dd);}
drag.textselect(true);if(dd.click===false&&dd.dragging){$.event.triggered=true;setTimeout(function(){$.event.triggered=false;},20);dd.dragging=false;}
break;}},delegate:function(event){var elems=[],target,events=$.data(this,"events")||{};$.each(events.live||[],function(i,obj){if(obj.preType.indexOf("drag")!==0)
return;target=$(event.target).closest(obj.selector,event.currentTarget)[0];if(!target)
return;$event.add(target,obj.origType+'.'+drag.livekey,obj.origHandler,obj.data);if($.inArray(target,elems)<0)
elems.push(target);});if(!elems.length)
return false;return $(elems).bind("dragend."+drag.livekey,function(){$event.remove(this,"."+drag.livekey);});},hijack:function(event,type,dd,x,elem){if(!dd)
return;var orig={event:event.originalEvent,type:event.type},mode=type.indexOf("drop")?"drag":"drop",result,i=x||0,ia,$elems,callback,len=!isNaN(x)?x:dd.interactions.length;event.type=type;event.originalEvent=null;dd.results=[];do if(ia=dd.interactions[i]){if(type!=="dragend"&&ia.cancelled)
continue;callback=drag.properties(event,dd,ia);ia.results=[];$(elem||ia[mode]||dd.droppable).each(function(p,subject){callback.target=subject;result=subject?$event.handle.call(subject,event,callback):null;if(result===false){if(mode=="drag"){ia.cancelled=true;dd.propagates-=1;}
if(type=="drop"){ia[mode][p]=null;}}
else if(type=="dropinit")
ia.droppable.push(drag.element(result)||subject);if(type=="dragstart")
ia.proxy=$(drag.element(result)||ia.drag)[0];ia.results.push(result);delete event.result;if(type!=="dropinit")
return result;});dd.results[i]=drag.flatten(ia.results);if(type=="dropinit")
ia.droppable=drag.flatten(ia.droppable);if(type=="dragstart"&&!ia.cancelled)
callback.update();}
while(++i<len)
event.type=orig.type;event.originalEvent=orig.event;return drag.flatten(dd.results);},properties:function(event,dd,ia){var obj=ia.callback;obj.drag=ia.drag;obj.proxy=ia.proxy||ia.drag;obj.startX=dd.pageX;obj.startY=dd.pageY;obj.deltaX=event.pageX-dd.pageX;obj.deltaY=event.pageY-dd.pageY;obj.originalX=ia.offset.left;obj.originalY=ia.offset.top;obj.offsetX=event.pageX-(dd.pageX-obj.originalX);obj.offsetY=event.pageY-(dd.pageY-obj.originalY);obj.drop=drag.flatten((ia.drop||[]).slice());obj.available=drag.flatten((ia.droppable||[]).slice());return obj;},element:function(arg){if(arg&&(arg.jquery||arg.nodeType==1))
return arg;},flatten:function(arr){return $.map(arr,function(member){return member&&member.jquery?$.makeArray(member):member&&member.length?drag.flatten(member):member;});},textselect:function(bool){$(document)[bool?"unbind":"bind"]("selectstart",drag.dontstart).attr("unselectable",bool?"off":"on").css("MozUserSelect",bool?"":"none");},dontstart:function(){return false;},callback:function(){}};drag.callback.prototype={update:function(){if($special.drop&&this.available.length)
$.each(this.available,function(i){$special.drop.locate(this,i);});}};$special.draginit=$special.dragstart=$special.dragend=drag;})(jQuery);
;(function($){$.fn.drop=function(str,arg,opts){var type=typeof str=="string"?str:"",fn=$.isFunction(str)?str:$.isFunction(arg)?arg:null;if(type.indexOf("drop")!==0)
type="drop"+type;opts=(str==fn?arg:opts)||{};return fn?this.bind(type,opts,fn):this.trigger(type);};$.drop=function(opts){opts=opts||{};drop.multi=opts.multi===true?Infinity:opts.multi===false?1:!isNaN(opts.multi)?opts.multi:drop.multi;drop.delay=opts.delay||drop.delay;drop.tolerance=$.isFunction(opts.tolerance)?opts.tolerance:opts.tolerance===null?null:drop.tolerance;drop.mode=opts.mode||drop.mode||'intersect';};var $event=$.event,$special=$event.special,drop=$.event.special.drop={multi:1,delay:20,mode:'overlap',targets:[],datakey:"dropdata",livekey:"livedrop",add:function(obj){var data=$.data(this,drop.datakey);data.related+=1;if(!data.live&&obj.selector){data.live=true;$event.add(this,"dropinit."+drop.livekey,drop.delegate);}},remove:function(){$.data(this,drop.datakey).related-=1;},setup:function(){if($.data(this,drop.datakey))
return;var data={related:0,active:[],anyactive:0,winner:0,location:{}};$.data(this,drop.datakey,data);drop.targets.push(this);},teardown:function(){if($.data(this,drop.datakey).related)
return;$.removeData(this,drop.datakey);$event.remove(this,"dropinit",drop.delegate);var element=this;drop.targets=$.grep(drop.targets,function(target){return(target!==element);});},handler:function(event,dd){var results,$targets;if(!dd)
return;switch(event.type){case'mousedown':$targets=$(drop.targets);if(typeof dd.drop=="string")
$targets=$targets.filter(dd.drop);$targets.each(function(){var data=$.data(this,drop.datakey);data.active=[];data.anyactive=0;data.winner=0;});dd.droppable=$targets;drop.delegates=[];$special.drag.hijack(event,"dropinit",dd);drop.delegates=$.unique($special.drag.flatten(drop.delegates));break;case'mousemove':drop.event=event;if(!drop.timer)
drop.tolerate(dd);break;case'mouseup':drop.timer=clearTimeout(drop.timer);if(dd.propagates){$special.drag.hijack(event,"drop",dd);$special.drag.hijack(event,"dropend",dd);$.each(drop.delegates||[],function(){$event.remove(this,'.'+drop.livekey);});}
break;}},delegate:function(event){var elems=[],$targets,events=$.data(this,"events")||{};$.each(events.live||[],function(i,obj){if(obj.preType.indexOf("drop")!==0)
return;$targets=$(event.currentTarget).find(obj.selector);if(!$targets.length)
return;$targets.each(function(){$event.add(this,obj.origType+'.'+drop.livekey,obj.origHandler,obj.data);if($.inArray(this,elems)<0)
elems.push(this);});});drop.delegates.push(elems);return elems.length?$(elems):false;},locate:function(elem,index){var data=$.data(elem,drop.datakey),$elem=$(elem),posi=$elem.offset()||{},height=$elem.outerHeight(),width=$elem.outerWidth(),location={elem:elem,width:width,height:height,top:posi.top,left:posi.left,right:posi.left+width,bottom:posi.top+height};if(data){data.location=location;data.index=index;data.elem=elem;}
return location;},contains:function(target,test){return((test[0]||test.left)>=target.left&&(test[0]||test.right)<=target.right&&(test[1]||test.top)>=target.top&&(test[1]||test.bottom)<=target.bottom);},modes:{'intersect':function(event,proxy,target){return this.contains(target,[event.pageX,event.pageY])?1e9:this.modes.overlap.apply(this,arguments);},'overlap':function(event,proxy,target){return Math.max(0,Math.min(target.bottom,proxy.bottom)-Math.max(target.top,proxy.top))*Math.max(0,Math.min(target.right,proxy.right)-Math.max(target.left,proxy.left));},'fit':function(event,proxy,target){return this.contains(target,proxy)?1:0;},'middle':function(event,proxy,target){return this.contains(target,[proxy.left+proxy.width*.5,proxy.top+proxy.height*.5])?1:0;}},sort:function(a,b){return(b.winner-a.winner)||(a.index-b.index);},tolerate:function(dd){var i,drp,drg,data,arr,len,elem,x=0,ia,end=dd.interactions.length,xy=[drop.event.pageX,drop.event.pageY],tolerance=drop.tolerance||drop.modes[drop.mode];do if(ia=dd.interactions[x]){if(!ia)
return;ia.drop=[];arr=[];len=ia.droppable.length;if(tolerance)
drg=drop.locate(ia.proxy);i=0;do if(elem=ia.droppable[i]){data=$.data(elem,drop.datakey);drp=data.location;if(!drp)continue;data.winner=tolerance?tolerance.call(drop,drop.event,drg,drp):drop.contains(drp,xy)?1:0;arr.push(data);}while(++i<len);arr.sort(drop.sort);i=0;do if(data=arr[i]){if(data.winner&&ia.drop.length<drop.multi){if(!data.active[x]&&!data.anyactive){if($special.drag.hijack(drop.event,"dropstart",dd,x,data.elem)[0]!==false){data.active[x]=1;data.anyactive+=1;}
else
data.winner=0;}
if(data.winner)
ia.drop.push(data.elem);}
else if(data.active[x]&&data.anyactive==1){$special.drag.hijack(drop.event,"dropend",dd,x,data.elem);data.active[x]=0;data.anyactive-=1;}}while(++i<len);}while(++x<end)
if(drop.last&&xy[0]==drop.last.pageX&&xy[1]==drop.last.pageY)
delete drop.timer;else
drop.timer=setTimeout(function(){drop.tolerate(dd);},drop.delay);drop.last=drop.event;}};$special.dropinit=$special.dropstart=$special.dropend=drop;})(jQuery);
(function($){$.jScrollPane={active:[]};$.fn.jScrollPane=function(settings)
{settings=$.extend({},$.fn.jScrollPane.defaults,settings);var rf=function(){return false;};return this.each(function()
{var $this=$(this);var paneEle=this;var currentScrollPosition=0;var paneWidth;var paneHeight;var trackHeight;var trackOffset=settings.topCapHeight;var $container;if($(this).parent().is('.jScrollPaneContainer')){$container=$(this).parent();currentScrollPosition=settings.maintainPosition?$this.position().top:0;var $c=$(this).parent();paneWidth=$c.innerWidth();paneHeight=$c.outerHeight();$('>.jScrollPaneTrack, >.jScrollArrowUp, >.jScrollArrowDown, >.jScrollCap',$c).remove();$this.css({'top':0});}else{$this.data('originalStyleTag',$this.attr('style'));$this.css('overflow','hidden');this.originalPadding=$this.css('paddingTop')+' '+$this.css('paddingRight')+' '+$this.css('paddingBottom')+' '+$this.css('paddingLeft');this.originalSidePaddingTotal=(parseInt($this.css('paddingLeft'))||0)+(parseInt($this.css('paddingRight'))||0);paneWidth=$this.innerWidth();paneHeight=$this.innerHeight();$container=$('<div></div>').attr({'className':'jScrollPaneContainer'}).css({'height':paneHeight+'px','width':paneWidth+'px'});if(settings.enableKeyboardNavigation){$container.attr('tabindex',settings.tabIndex);}
$this.wrap($container);$container=$this.parent();$(document).bind('emchange',function(e,cur,prev)
{$this.jScrollPane(settings);});}
trackHeight=paneHeight;if(settings.reinitialiseOnImageLoad){var $imagesToLoad=$.data(paneEle,'jScrollPaneImagesToLoad')||$('img',$this);var loadedImages=[];if($imagesToLoad.length){$imagesToLoad.each(function(i,val){$(this).bind('load readystatechange',function(){if($.inArray(i,loadedImages)==-1){loadedImages.push(val);$imagesToLoad=$.grep($imagesToLoad,function(n,i){return n!=val;});$.data(paneEle,'jScrollPaneImagesToLoad',$imagesToLoad);var s2=$.extend(settings,{reinitialiseOnImageLoad:false});$this.jScrollPane(s2);}}).each(function(i,val){if(this.complete||this.complete===undefined){this.src=this.src;}});});};}
var p=this.originalSidePaddingTotal;var realPaneWidth=paneWidth-settings.scrollbarWidth-settings.scrollbarMargin-p;var cssToApply={'height':'auto','width':realPaneWidth+'px'}
if(settings.scrollbarOnLeft){cssToApply.paddingLeft=settings.scrollbarMargin+settings.scrollbarWidth+'px';}else{cssToApply.paddingRight=settings.scrollbarMargin+'px';}
$this.css(cssToApply);var contentHeight=$this.outerHeight();var percentInView=paneHeight/contentHeight;var isScrollable=percentInView<.99;$container[isScrollable?'addClass':'removeClass']('jScrollPaneScrollable');if(isScrollable){$container.append($('<div></div>').addClass('jScrollCap jScrollCapTop scrollbar-element').css({height:settings.topCapHeight}),$('<div></div>').attr({'className':'jScrollPaneTrack scrollbar-element'}).css({'width':settings.scrollbarWidth+'px'}).append($('<div></div>').attr({'className':'jScrollPaneDrag scrollbar-element'}).css({'width':settings.scrollbarWidth+'px'}).append($('<div></div>').attr({'className':'jScrollPaneDragTop scrollbar-element'}).css({'width':settings.scrollbarWidth+'px'}),$('<div></div>').attr({'className':'jScrollPaneDragBottom scrollbar-element'}).css({'width':settings.scrollbarWidth+'px'}))),$('<div></div>').addClass('jScrollCap jScrollCapBottom scrollbar-element').css({height:settings.bottomCapHeight}));var $track=$('>.jScrollPaneTrack',$container);var $drag=$('>.jScrollPaneTrack .jScrollPaneDrag',$container);var currentArrowDirection;var currentArrowTimerArr=[];var currentArrowInc;var whileArrowButtonDown=function()
{if(currentArrowInc>4||currentArrowInc%4==0){positionDrag(dragPosition+currentArrowDirection*mouseWheelMultiplier);}
currentArrowInc++;};if(settings.enableKeyboardNavigation){$container.bind('keydown.jscrollpane',function(e)
{switch(e.keyCode){case 38:currentArrowDirection=-1;currentArrowInc=0;whileArrowButtonDown();currentArrowTimerArr[currentArrowTimerArr.length]=setInterval(whileArrowButtonDown,100);return false;case 40:currentArrowDirection=1;currentArrowInc=0;whileArrowButtonDown();currentArrowTimerArr[currentArrowTimerArr.length]=setInterval(whileArrowButtonDown,100);return false;case 33:case 34:return false;default:}}).bind('keyup.jscrollpane',function(e)
{if(e.keyCode==38||e.keyCode==40){for(var i=0;i<currentArrowTimerArr.length;i++){clearInterval(currentArrowTimerArr[i]);}
return false;}});}
if(settings.showArrows){var currentArrowButton;var currentArrowInterval;var onArrowMouseUp=function(event)
{$('html').unbind('mouseup',onArrowMouseUp);currentArrowButton.removeClass('jScrollActiveArrowButton');clearInterval(currentArrowInterval);};var onArrowMouseDown=function(){$('html').bind('mouseup',onArrowMouseUp);currentArrowButton.addClass('jScrollActiveArrowButton');currentArrowInc=0;whileArrowButtonDown();currentArrowInterval=setInterval(whileArrowButtonDown,100);};if(settings.useMageloBgs){var upArrow=jQuery('<div></div>').attr({'href':'javascript:;'}).css({'width':settings.scrollbarWidth+'px'}).html('Scroll up').bind('mousedown',function()
{currentArrowButton=jQuery(this);currentArrowDirection=-1;onArrowMouseDown();this.blur();return false;}).bind('click',rf);var upArrowContainer=jQuery('<div class="jScrollArrowUp scrollbar-element"></div>').css({'width':settings.scrollbarWidth+'px'});upArrowContainer.append(upArrow);var downArrow=jQuery('<div></div>').attr({'href':'javascript:;'}).css({'width':settings.scrollbarWidth+'px'}).html('Scroll down').bind('mousedown',function()
{currentArrowButton=jQuery(this);currentArrowDirection=1;onArrowMouseDown();this.blur();return false;}).bind('click',rf);var downArrowContainer=jQuery('<div class="jScrollArrowDown scrollbar-element"></div>').css({'width':settings.scrollbarWidth+'px'});downArrowContainer.append(downArrow);$container.append(upArrowContainer,downArrowContainer);}else{$container.append($('<a></a>').attr({'href':'javascript:;','className':'jScrollArrowUp scrollbar-element','tabindex':-1}).css({'width':settings.scrollbarWidth+'px','top':settings.topCapHeight+'px'}).html('Scroll up').bind('mousedown',function()
{currentArrowButton=$(this);currentArrowDirection=-1;onArrowMouseDown();this.blur();return false;}).bind('click',rf),$('<a></a>').attr({'href':'javascript:;','className':'jScrollArrowDown scrollbar-element','tabindex':-1}).css({'width':settings.scrollbarWidth+'px','bottom':settings.bottomCapHeight+'px'}).html('Scroll down').bind('mousedown',function()
{currentArrowButton=$(this);currentArrowDirection=1;onArrowMouseDown();this.blur();return false;}).bind('click',rf));}
var $upArrow=$('>.jScrollArrowUp',$container);var $downArrow=$('>.jScrollArrowDown',$container);}
if(settings.arrowSize){trackHeight=paneHeight-settings.arrowSize-settings.arrowSize;trackOffset+=settings.arrowSize;}else if($upArrow){var topArrowHeight=$upArrow.height();settings.arrowSize=topArrowHeight;trackHeight=paneHeight-topArrowHeight-$downArrow.height();trackOffset+=topArrowHeight;}
trackHeight-=settings.topCapHeight+settings.bottomCapHeight;$track.css({'height':trackHeight+'px',top:trackOffset+'px'})
var $pane=$(this).css({'position':'absolute','overflow':'visible'});var currentOffset;var maxY;var mouseWheelMultiplier;var dragPosition=0;var dragMiddle=percentInView*paneHeight/2;var getPos=function(event,c){var p=c=='X'?'Left':'Top';return event['page'+c]||(event['client'+c]+(document.documentElement['scroll'+p]||document.body['scroll'+p]))||0;};var ignoreNativeDrag=function(){return false;};var initDrag=function()
{ceaseAnimation();currentOffset=$drag.offset(false);currentOffset.top-=dragPosition;maxY=trackHeight-$drag[0].offsetHeight;mouseWheelMultiplier=2*settings.wheelSpeed*maxY/contentHeight;};var onStartDrag=function(event)
{initDrag();dragMiddle=getPos(event,'Y')-dragPosition-currentOffset.top;$('html').bind('mouseup',onStopDrag).bind('mousemove',updateScroll).bind('mouseleave',onStopDrag)
if($.browser.msie){$('html').bind('dragstart',ignoreNativeDrag).bind('selectstart',ignoreNativeDrag);}
return false;};var onStopDrag=function()
{$('html').unbind('mouseup',onStopDrag).unbind('mousemove',updateScroll);dragMiddle=percentInView*paneHeight/2;if($.browser.msie){$('html').unbind('dragstart',ignoreNativeDrag).unbind('selectstart',ignoreNativeDrag);}};var positionDrag=function(destY)
{$container.scrollTop(0);destY=destY<0?0:(destY>maxY?maxY:destY);dragPosition=destY;$drag.css({'top':destY+'px'});var p=destY/maxY;$this.data('jScrollPanePosition',(paneHeight-contentHeight)*-p);$pane.css({'top':((paneHeight-contentHeight)*p)+'px'});$this.trigger('scroll');if(settings.showArrows){$upArrow[destY==0?'addClass':'removeClass']('disabled');$downArrow[destY==maxY?'addClass':'removeClass']('disabled');}};var updateScroll=function(e)
{positionDrag(getPos(e,'Y')-currentOffset.top-dragMiddle);};var dragH=Math.max(Math.min(percentInView*(paneHeight-settings.arrowSize*2),settings.dragMaxHeight),settings.dragMinHeight);$drag.css({'height':dragH+'px'}).bind('mousedown',onStartDrag);var trackScrollInterval;var trackScrollInc;var trackScrollMousePos;var doTrackScroll=function()
{if(trackScrollInc>8||trackScrollInc%4==0){positionDrag((dragPosition-((dragPosition-trackScrollMousePos)/2)));}
trackScrollInc++;};var onStopTrackClick=function()
{clearInterval(trackScrollInterval);$('html').unbind('mouseup',onStopTrackClick).unbind('mousemove',onTrackMouseMove);};var onTrackMouseMove=function(event)
{trackScrollMousePos=getPos(event,'Y')-currentOffset.top-dragMiddle;};var onTrackClick=function(event)
{initDrag();onTrackMouseMove(event);trackScrollInc=0;$('html').bind('mouseup',onStopTrackClick).bind('mousemove',onTrackMouseMove);trackScrollInterval=setInterval(doTrackScroll,100);doTrackScroll();return false;};$track.bind('mousedown',onTrackClick);$container.bind('mousewheel',function(event,delta){delta=delta||(event.wheelDelta?event.wheelDelta/120:(event.detail)?-event.detail/3:0);initDrag();ceaseAnimation();var d=dragPosition;positionDrag(dragPosition-delta*mouseWheelMultiplier);var dragOccured=d!=dragPosition;return!dragOccured;});var _animateToPosition;var _animateToInterval;function animateToPosition()
{var diff=(_animateToPosition-dragPosition)/settings.animateStep;if(diff>1||diff<-1){positionDrag(dragPosition+diff);}else{positionDrag(_animateToPosition);ceaseAnimation();}}
var ceaseAnimation=function()
{if(_animateToInterval){clearInterval(_animateToInterval);delete _animateToPosition;}};var scrollTo=function(pos,preventAni)
{if(typeof pos=="string"){try{$e=$(pos,$this);}catch(err){return;}
if(!$e.length)return;pos=$e.offset().top-$this.offset().top;}
ceaseAnimation();var maxScroll=contentHeight-paneHeight;pos=pos>maxScroll?maxScroll:pos;$this.data('jScrollPaneMaxScroll',maxScroll);var destDragPosition=pos/maxScroll*maxY;if(preventAni||!settings.animateTo){positionDrag(destDragPosition);}else{$container.scrollTop(0);_animateToPosition=destDragPosition;_animateToInterval=setInterval(animateToPosition,settings.animateInterval);}};$this[0].scrollTo=scrollTo;$this[0].scrollBy=function(delta)
{var currentPos=-parseInt($pane.css('top'))||0;scrollTo(currentPos+delta);};initDrag();scrollTo(-currentScrollPosition,true);$('*',this).bind('focus',function(event)
{var $e=$(this);var eleTop=0;var preventInfiniteLoop=100;while($e[0]!=$this[0]){eleTop+=$e.position().top;$e=$e.offsetParent();if(!preventInfiniteLoop--){return;}}
var viewportTop=-parseInt($pane.css('top'))||0;var maxVisibleEleTop=viewportTop+paneHeight;var eleInView=eleTop>viewportTop&&eleTop<maxVisibleEleTop;if(!eleInView){var destPos=eleTop-settings.scrollbarMargin;if(eleTop>viewportTop){destPos+=$(this).height()+15+settings.scrollbarMargin-paneHeight;}
scrollTo(destPos);}})
if(settings.observeHash){if(location.hash&&location.hash.length>1){setTimeout(function(){scrollTo(location.hash);},$.browser.safari?100:0);}
$(document).bind('click',function(e){$target=$(e.target);if($target.is('a')){var h=$target.attr('href');if(h&&h.substr(0,1)=='#'&&h.length>1){setTimeout(function(){scrollTo(h,!settings.animateToInternalLinks);},$.browser.safari?100:0);}}});}
function onSelectScrollMouseDown(e)
{$(document).bind('mousemove.jScrollPaneDragging',onTextSelectionScrollMouseMove);$(document).bind('mouseup.jScrollPaneDragging',onSelectScrollMouseUp);}
var textDragDistanceAway;var textSelectionInterval;function onTextSelectionInterval()
{direction=textDragDistanceAway<0?-1:1;$this[0].scrollBy(textDragDistanceAway/2);}
function clearTextSelectionInterval()
{if(textSelectionInterval){clearInterval(textSelectionInterval);textSelectionInterval=undefined;}}
function onTextSelectionScrollMouseMove(e)
{var offset=$this.parent().offset().top;var maxOffset=offset+paneHeight;var mouseOffset=getPos(e,'Y');textDragDistanceAway=mouseOffset<offset?mouseOffset-offset:(mouseOffset>maxOffset?mouseOffset-maxOffset:0);if(textDragDistanceAway==0){clearTextSelectionInterval();}else{if(!textSelectionInterval){textSelectionInterval=setInterval(onTextSelectionInterval,100);}}}
function onSelectScrollMouseUp(e)
{$(document).unbind('mousemove.jScrollPaneDragging').unbind('mouseup.jScrollPaneDragging');clearTextSelectionInterval();}
$container.bind('mousedown.jScrollPane',onSelectScrollMouseDown);$.jScrollPane.active.push($this[0]);}else{$this.css({'height':paneHeight+'px','width':paneWidth-this.originalSidePaddingTotal+'px','padding':this.originalPadding});$this[0].scrollTo=$this[0].scrollBy=function(){};$this.parent().unbind('mousewheel').unbind('mousedown.jScrollPane').unbind('keydown.jscrollpane').unbind('keyup.jscrollpane');}})};$.fn.jScrollPaneRemove=function()
{$(this).each(function()
{$this=$(this);var $c=$this.parent();if($c.is('.jScrollPaneContainer')){$this.css({'top':'','height':'','width':'','padding':'','overflow':'','position':''});$this.attr('style',$this.data('originalStyleTag'));$c.after($this).remove();}});}
$.fn.jScrollPane.defaults={scrollbarWidth:10,scrollbarMargin:5,wheelSpeed:18,showArrows:false,arrowSize:0,animateTo:false,dragMinHeight:1,dragMaxHeight:99999,animateInterval:100,animateStep:3,maintainPosition:true,scrollbarOnLeft:false,reinitialiseOnImageLoad:false,tabIndex:0,enableKeyboardNavigation:true,animateToInternalLinks:false,topCapHeight:0,bottomCapHeight:0,observeHash:true};$(window).bind('unload',function(){var els=$.jScrollPane.active;for(var i=0;i<els.length;i++){els[i].scrollTo=els[i].scrollBy=null;}});})(jQuery);
(function($){$.event.special.mousewheel={setup:function(){var handler=$.event.special.mousewheel.handler;if($.browser.mozilla)
$(this).bind('mousemove.mousewheel',function(event){$.data(this,'mwcursorposdata',{pageX:event.pageX,pageY:event.pageY,clientX:event.clientX,clientY:event.clientY});});if(this.addEventListener)
this.addEventListener(($.browser.mozilla?'DOMMouseScroll':'mousewheel'),handler,false);else
this.onmousewheel=handler;},teardown:function(){var handler=$.event.special.mousewheel.handler;$(this).unbind('mousemove.mousewheel');if(this.removeEventListener)
this.removeEventListener(($.browser.mozilla?'DOMMouseScroll':'mousewheel'),handler,false);else
this.onmousewheel=function(){};$.removeData(this,'mwcursorposdata');},handler:function(event){var args=Array.prototype.slice.call(arguments,1);event=$.event.fix(event||window.event);$.extend(event,$.data(this,'mwcursorposdata')||{});var delta=0,returnValue=true;if(event.wheelDelta)delta=event.wheelDelta/120;if(event.detail)delta=-event.detail/3;if($.browser.opera)delta=-event.wheelDelta;event.data=event.data||{};event.type="mousewheel";args.unshift(delta);args.unshift(event);return $.event.handle.apply(this,args);}};$.fn.extend({mousewheel:function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel");},unmousewheel:function(fn){return this.unbind("mousewheel",fn);}});})(jQuery);
if(typeof(Magelo)=="undefined")Magelo={};Magelo.DB=(function($){var _cache={};var _settings={locale:"en"};var _cachePut=function(db,type,id,locale,data){_cache[db+":"+type+":"+id+":"+locale]=data;};var _cacheGet=function(db,type,id,locale){return _cache[db+":"+type+":"+id+":"+locale];};var _asyncGet=function(db,type,id,locale,callback,args){var url=undefined;switch(db){case"eq":url="http://"+db+"."+Magelo.domain+"/tooltip.json";break;case"wow":case"rift":case"swtor":url="http://"+db+"."+Magelo.domain+"/"+locale+"/tooltip.json";break;default:throw"Unsupported operation";}
var data={};data[type]=id;$(Magelo.DB).trigger("loading",{"db":db,"type":type,"id":id,"locale":locale});var cbName="jsonp_"+type+"_"+id.replace(/[:-]{1,1}/ig,"_")+"_"+locale;if(typeof(window[cbName])!="undefined"){window[cbName]=(function(){var chain=window[cbName];return function(data){_cachePut(db,type,id,locale,data);_invokeCallback(db,type,id,locale,callback,args.concat([data]));chain(data);};})();}else{$.ajax({url:url,dataType:"jsonp",data:data,jsonpCallback:cbName,cache:true,type:"get",success:function(data){_cachePut(db,type,id,locale,data);_invokeCallback(db,type,id,locale,callback,args.concat([data]));}});}};var _invokeCallback=function(db,type,id,locale,callback,args){try{callback.apply(null,args);}catch(e){if(typeof(console)!="undefined"){console.log("Error invoking callback",db,type,id,e);}}};var $this={configure:function(options){_settings=$.extend(_settings,options);},get:function(db,type,id,localeOrCallback){var locale=_settings.locale;var callback=undefined;var nArg=4;if(typeof(localeOrCallback)!="function"){if(typeof(localeOrCallback)!="undefined"){locale=localeOrCallback;}
if(typeof(arguments[nArg])=="function"){callback=arguments[nArg++];}}else{callback=localeOrCallback;}
var args=Array.prototype.slice.call(arguments,0);args.splice(0,nArg);var data=_cacheGet(db,type,id,locale);if(typeof(callback)!="function"){return data;}else if(typeof(data)=="undefined"){_asyncGet(db,type,id,locale,callback,args);}else{_invokeCallback(db,type,id,locale,callback,args.concat([data]));}}};return $this;})(jQuery);
Magelo.Locales=(function($){var _loaded=[];var _messages={};var _eventSource;var _settings={locale:"en"};var _isBundleLoaded=function(game,bundle,locale){var bundleKey=game+":"+bundle+":"+locale;for(var i=0;i<_loaded.length;++i){if(_loaded[i]==bundleKey){return true;}}
return false;};var _setBundleLoaded=function(game,bundle,locale){_loaded.push(game+":"+bundle+":"+locale);};var _asyncLoad=function(game,bundleName,locale,callback){if(!_isBundleLoaded(game,bundleName,locale)){var cbName="jsonp_locale_"+game+"_"+locale;if(typeof(window[cbName])!="undefined"){window[cbName]=(function(){var chain=window[cbName];return function(data){chain(data);_invokeCallback(game,bundleName,locale,callback);};})();}else{$.ajax({url:"http://"+game+"."+Magelo.domain+"/"+locale+"/locale.json",dataType:"jsonp",jsonpCallback:cbName,success:function(data){var nBundles=data.length;for(var i=0;i<nBundles;++i){var bundle=data[i];_setBundleLoaded(game,bundle.name,bundle.locale);var dataToImport={};dataToImport[bundle.locale]=bundle.messages;$.extend(true,_messages,dataToImport);}
_invokeCallback(game,bundleName,locale,callback);}});}}else{_invokeCallback(game,bundleName,locale,callback);}};var _getBundle=function(game,bundle,locale){return{get:function(key){var text=$this.get(game,bundle,locale,key);if(arguments.length>1){var args=Array.prototype.slice.call(arguments,0);args[0]=text;return _format.apply(this,args)}
return text;}};};var _invokeCallback=function(game,bundle,locale,callback){try{callback(_getBundle(game,bundle,locale));}catch(e){alert("Key doesn't exist '"+key+"'");}};var _dispatchGet=function(a0,a1,a2,a3){if(arguments.length==4){return _get.apply(this,arguments);}else if(arguments.length==3){return _get.apply(this,[a0,a1,_settings.locale,a2]);}};var _get=function(game,bundle,locale,keyOrCallback){if(_isBundleLoaded(game,bundle,locale)){if(typeof(keyOrCallback)=="function"){_invokeCallback(game,bundle,locale,keyOrCallback);}else{try{return _messages[locale][keyOrCallback]||keyOrCallback;}catch(e){if(typeof(console)!="undefined"){console.log("Key doesn't exist '"+keyOrCallback+"'");}}}}else if(typeof(keyOrCallback)=="function"){_asyncLoad(game,bundle,locale,keyOrCallback);}};var _format=function(text){var re=/%(\d+\$)?(\d+)?(.\d+)?(d|s|f)/g;var match;var index=0;while(match=re.exec(text)){var startpos=match.index;var endpos=startpos+match[0].length;index++;var minLength=0;var precision=-1;var padChar=" ";if(match[1])index=parseInt(match[1]);if(match[2]){if(match[2].charAt(0)=="0"){padChar="0";minLength=parseInt(match[2].substring(1));}else{minLength=parseInt(match[2]);}}
if(match[3])precision=parseInt(match[3].substring(1));var substitute="#";switch(match[4]){case"d":substitute=parseInt(arguments[index]);break;case"f":substitute=parseFloat(arguments[index]);if(precision>-1)substitute=substitute.toFixed(precision);break;case"s":substitute=arguments[index];break;}
substitute=""+substitute;if(substitute.length<minLength){var pad=minLength-substitute.length;for(var i=0;i<pad;++i){substitute=padChar+substitute;}}
text=text.substring(0,startpos)+substitute+text.substring(endpos);re.lastIndex+=substitute.length-match[0].length;}
return text;};var _format2=function(text){var re=/\{(\d+)\}/g;var match;while(match=re.exec(text)){var startpos=match.index;var length=match[0].length;var token=match[1];var endpos=startpos+length;var substitute="#";try{var argIndex=parseInt(token);substitute=arguments[1+argIndex];}catch(e){}
text=text.substring(0,startpos)+substitute+text.substring(endpos);re.lastIndex+=substitute.length-length;}
return text;};var $this={configure:function(options){_settings=$.extend(_settings,options);},get:_dispatchGet,getBundle:function(game,bundle,locale){if(!locale)locale=_settings.locale;return _getBundle(game,bundle,locale);},format:_format};_eventSource=$($this);return $this;})(jQuery);
if(typeof(Magelo)=="undefined"){Magelo={};};Magelo.ToolTip=(function($){var DefaultUI=function(){var ui=$("<div class='m-tooltip css2'>"+" <div class='arrow'></div>"+" <div class='border-1'></div>"+" <div class='border-2'></div>"+"   <div class='corner'></div>"+"   <div class='body'></div>"+"</div>");return{ui:ui,body:(ui.find(".body").length==0?ui:ui.find(".body")),getElement:function(){return this.ui;},setContent:function(html){this.body.html(html);}};};var _defaults={hOffset:4,vOffset:25,zIndex:5000000,ui:DefaultUI,uiClass:"",locale:"en",prepareDelay:25,loadingDelay:150,dismissDelay:1,interactable:false};var _prepareTimer;var _dismissTimer;var _currentTooltip;var _UIs={};var _providers=[];var _filters=[];var _namedFilters={};var tooltipClass="";var tooltipSize={w:50,h:50};var _divPool=[];var lastMousePosition={x:0,y:0};var viewport;var _settings=$.extend({},_defaults);var _aquireDiv=function(){if(_divPool.length>0)return _divPool.shift();var el=$('<div style="visibility:hidden; position:absolute;"></div>');el.css('z-index',_settings.zIndex);el.appendTo(document.body);return el;};var _releaseDiv=function(el){el.css('visibility','hidden');_divPool.push(el);};var _createToolTip=function(key,parentKey,options){var $ttp={key:key,parentKey:parentKey,locale:_settings.locale,content:"",state:"",element:_aquireDiv(),options:$.extend({},_settings,options),attachments:[],attributes:{},loadingTimer:undefined,configure:function(options){this.options=$.extend(this.options,options);},attr:function(key,value){if(arguments.length==1){return this.attributes[key];}else{this.attributes[key]=value;}},dispose:function(){try{clearTimeout(this.loadingTimer);for(var i=0;i<this.attachments.length;++i){this.attachments[i].dispose();}
_releaseDiv(this.element);this.element=undefined;}catch(e){Magelo.ToolTip.log("Error dispose",e);}},setState:function(state){this.state=state;if(!this.element)return;if(state=="loading"){clearTimeout(this.loadingTimer);this.loadingTimer=setTimeout(function(){var ttp=$ttp;return function(){_doContentLoading($ttp);};}(),_settings.loadingDelay);}},showLoading:function(){_updateTooltip(undefined,this,'<font style="color:gray">Loading...</font>');},setContent:function(c){try{clearTimeout(this.loadingTimer);if(!this.element)return;this.setState("loaded");this.content=c;this.update();$(this).trigger("content-loaded",{tooltip:this});}catch(e){Magelo.ToolTip.log("Error setting content",e);}},update:function(){_asyncFilter(this,_updateTooltip);},attach:function(attachment){try{if(this.state=="loading"){return;}
if(!this.element)return;if(this.parentKey)return;if(typeof(attachment)=="string"){var att=new _createToolTip(attachment,this.key);att.locale=this.locale;this.attachments.push(att);_fetchContent(att);}else{var att=new _createToolTip("attach:"+(new Date().getTime()),this.key,$.extend({placement:"flow"},this.options,attachment));att.locale=this.locale;this.attachments.push(att);att.setContent(att.options.content);}
$(this).trigger("attachment-added",{tooltip:this});}catch(e){Magelo.ToolTip.log("Error attaching content",e);}}};return $ttp;};var _updateTooltip=function(chain,ttp,content){try{if(ttp.element){var t=ttp.element;var ui=_getUI(ttp.options.ui);ui.setContent(content);t.empty();var el=ui.getElement();if(ttp.options.uiClass!=""){el.addClass(ttp.options.uiClass);}
el.appendTo(t);if(typeof(ttp.parentKey)=="undefined"){tooltipSize={w:t.width(),h:t.height()};}else{ttp.width=t.width();ttp.height=t.height();}
if(content!=""){t.css('visibility','visible');_layout();}}}catch(e){Magelo.ToolTip.log("Error during ttp update",e);}};var _fetchContent=function(ttp){try{for(var i=0;i<_providers.length;++i){_providers[i](ttp);}}catch(e){Magelo.ToolTip.log("Error loading content.",e);}};var _asyncFilter=function(ttp,callback){var _chain=[].concat(_filters);_chain.push(callback);var chain={filter:function(content){var f=_chain.shift();try{f(chain,ttp,content);}catch(e){Magelo.ToolTip.log("Error during content filtering",e,f);}}};chain.filter(ttp.content);};var _getUI=function(o){try{if(typeof(o)=="function"){return new o;}else{var ui=_UIs[o];if(typeof(ui)=="function"){return new ui;}}}catch(e){Magelo.ToolTip.log("Error creating ui",e);}
return new DefaultUI;};var _layout=function(){var ttp=_currentTooltip;if(!ttp)return;try{var options=ttp.options;var v=viewport;var left=lastMousePosition.x;var top=lastMousePosition.y;var className="";var rightBorder=left+tooltipSize.w+options.hOffset;var bottomBorder=top+tooltipSize.h+options.vOffset;var width=tooltipSize.w;var x0=left-options.hOffset;var x1=left+options.hOffset;var goRight=true;if(v.x+v.cx<rightBorder){left-=tooltipSize.w+options.hOffset;x0-=tooltipSize.w+options.hOffset;goRight=false;className+="left";}else{left+=options.hOffset;x1+=tooltipSize.w+options.hOffset;className+="right"}
if(v.y+v.cy<bottomBorder){var topBorder=top-(tooltipSize.h+5);if(topBorder>v.y){top-=tooltipSize.h+5;className="top-"+className;}else{var topOverflow=v.y-topBorder;var botOverflow=bottomBorder-(v.y+v.cy);if(topOverflow<botOverflow){top=v.y;className=" ";}else{top=Math.max(top-botOverflow,v.y);className=" ";}}}else{top+=options.vOffset;className="bottom-"+className;}
ttp.element.css({top:top,left:left});if(tooltipClass!=className){ttp.element.removeClass("top-left top-right bottom-left bottom-right");ttp.element.addClass(className);}
for(var i=0;i<ttp.attachments.length;++i){var a=ttp.attachments[i].options;if(a.placement=="opposite"){goRight=!goRight;}
var t=ttp.attachments[i].element;width=ttp.attachments[i].width;height=ttp.attachments[i].height;if(goRight){left=x1;if(left+width>v.x+v.cx){goRight=false;left=x0-width;x0-=width+8;}else{x1+=width+8;}}else{left=x0-width;x0-=width+8;}
if(a.placement=="opposite"){goRight=!goRight;}
var overflowy=top+height-(v.y+v.cy);if(overflowy>0){top-=overflowy;}
t.css({top:top,left:left});}}catch(e){Magelo.ToolTip.log("Error during layout",e);}};var _prepareTooltip=function(key,lang){try{_doDismissTooltip();viewport=getViewport();if(typeof(key)=="string"){_currentTooltip=new _createToolTip(key);if(typeof(lang)!="undefined"&&lang!="")_currentTooltip.locale=lang;_prepareTimer=setTimeout(_doPrepareTooltip,_settings.prepareDelay);}}catch(e){Magelo.ToolTip.log("Error preparing tooltip",e);}
return _currentTooltip;};var _dismissTooltip=function(){try{clearTimeout(_prepareTimer);clearTimeout(_dismissTimer);if(_currentTooltip){_currentTooltip.setState("dismissing");var delay=_currentTooltip.options.dismissDelay;if(delay>0){_dismissTimer=setTimeout(_doDismissTooltip,delay);}else{_doDismissTooltip();}}}catch(e){Magelo.ToolTip.log("Error dismissing tooltip",e);}};var _doPrepareTooltip=function(e){try{viewport=getViewport();_fetchContent(_currentTooltip);}catch(e){Magelo.ToolTip.log("doPrepare error",e);}};var _doContentLoading=function(ttp){ttp.showLoading();};var _doDismissTooltip=function(){try{clearTimeout(_prepareTimer);clearTimeout(_dismissTimer);if(_currentTooltip){_currentTooltip.dispose();_currentTooltip=undefined;}}catch(e){Magelo.ToolTip.log("doDismiss error",e);}};var updateMouse=function(e){try{lastMousePosition={x:e.pageX,y:e.pageY};if(_currentTooltip&&_currentTooltip.state!="dismissing"){_layout();}}catch(e){Magelo.ToolTip.log("updateMouse error",e);}};var getViewport=function(){var w=$(window);return{x:w.scrollLeft(),y:w.scrollTop(),cx:w.width(),cy:w.height()};};var _defaultPrepareTooltip=function(e){var target=$(this);var key=target.attr("rel");var lang=target.attr("lang");if(typeof(e)!="undefined"){updateMouse(e);}
_prepareTooltip(key,lang);};$(document).bind("mousemove",updateMouse);var _enabled=false;var selector="[rel]";var _activateToolTips=function(){_dismissTooltip();if(!_enabled){$(selector).live("mouseover",_defaultPrepareTooltip);$(selector).live("mouseout",_dismissTooltip);_enabled=true;}};var _deactivateToolTips=function(){if(_enabled){$(selector).die("mouseover",_defaultPrepareTooltip);$(selector).die("mouseout",_dismissTooltip);clearTimeout(_dismissTimer);_enabled=false;}};var _initialize=function(){_activateToolTips();$(".m-tooltip").live("mouseenter",function(e){if(_currentTooltip){if(_currentTooltip.options.interactable){_deactivateToolTips();$(this).one("mouseleave",_activateToolTips);}else if(false){if(_currentTooltip.element.get(0)==e.currentTarget||$.contains(_currentTooltip.element.get(0),e.currentTarget)){clearTimeout(_dismissTimer);_currentTooltip.element.one("mouseleave",_dismissTooltip);}}}});};var $this={configure:function(options){_settings=$.extend(_settings,options);},disable:_deactivateToolTips,enable:_activateToolTips,prepare:_prepareTooltip,dismiss:_dismissTooltip,addContentProvider:function(provider){_providers.push(provider);},addContentFilter:function(optionsOrFilter){if(typeof(optionsOrFilter)=="object"||(typeof(optionsOrFilter)=="string")){var options;if(typeof(optionsOrFilter)=="string")
options={name:optionsOrFilter,priority:0};else
options=$.extend({},{priority:0},optionsOrFilter);var filter=arguments[1];if(typeof(_namedFilters[options.name])=="undefined"){_namedFilters[options.name]=(function(){var _filters=[];var $this={filter:function(chain,ttp,content){var last=_filters[_filters.length-1];last.filter(chain,ttp,content);},addFilter:function(filter,priority){var insertionPoint=0;for(;insertionPoint<_filters.length;insertionPoint++){if(_filters[insertionPoint].priority>priority)
break;}
_filters.splice(insertionPoint,0,{filter:filter,priority:priority});}};return $this;})();_filters.push(_namedFilters[options.name].filter);}
_namedFilters[options.name].addFilter(filter,options.priority);}else{var filter=optionsOrFilter;if(typeof(filter)!="function"||filter.length!=3){Magelo.ToolTip.log(filter);throw"The filter is invalid, check the function signature.";}
_filters.push(filter);}},addUI:function(name,ui){_UIs[name]=ui;},log:function(){try{if(typeof(console)!="undefined"){console.log(arguments);}}catch(e){}}};$this.DefaultUI=DefaultUI;$this.EmptyUI=function(){return{getElement:function(){return $(this.ui);},setContent:function(ui){this.ui=ui;}};};_initialize();return $this;})(jQuery);
Magelo.ToolTip.addUI("rift-ability-icon",(function($){return function(){return{getElement:function(){return $('<div class="rift-ability-icon">'+'<div class="rift-ability-icon-mask"></div>'+'<div class="rift-ability-icon-icon" style="'+'background-image: url(http://www.magelocdn.com/images/rift/icons/48/'+this.icon+'.jpg?v=-1);'+'"></div></div>');},setContent:function(icon){this.icon=icon;}};};})(jQuery));Magelo.ToolTip.addUI("rift-item-icon",(function($){return function(){return{getElement:function(){return $('<div class="rift-item-icon rarity'+this.rarity+'">'+'<div class="rift-item-icon-mask"></div>'+'<div class="rift-item-icon-icon" style="'+'background-image: url(http://www.magelocdn.com/images/rift/icons/48/'+this.icon+'.jpg?v=-1);'+'"></div></div>');},setContent:function(content){var params=content.split("|");this.rarity=params[0];this.icon=params[1];}};};})(jQuery));Magelo.ToolTip.addUI("rift-character-icon",(function($){return function(){return{getElement:function(){return $('<div class="rift-character-bg"><div class="rift-character-icon" style="'+'background-image: url(ht'+'tp://rift.sig.'+Magelo.domain+'/portrait45/'+this.icon+'.png);'+'"></div></div>');},setContent:function(icon){this.icon=icon;}};};})(jQuery));Magelo.ToolTip.addContentProvider(function(ttp){var params=ttp.key.split(":");if(params.length>=3&&params[0]=="rift"){var id=params[2];switch(params[1]){case"dual-item":case"item":ttp.setState("loading");if(params.length>3){id=params.slice(2).concat([0,0,0,0,0,0,0,0,0]).slice(0,2).join(":");}
Magelo.DB.get("rift","item",id,ttp.locale,function(info){ttp.setContent(info.tooltip);ttp.attach({placement:"opposite",ui:"rift-item-icon",content:info.rarity+"|"+info.icon});});break;case"ability":ttp.setState("loading");Magelo.DB.get("rift","ability",id,ttp.locale,function(info){ttp.setContent(info.tooltip);ttp.attach({placement:"opposite",ui:"rift-ability-icon",content:info.icon});});break;case"artifactset":ttp.setState("loading");Magelo.DB.get("rift","artifactSet",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"npc":ttp.setState("loading");Magelo.DB.get("rift","npc",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"gob":ttp.setState("loading");Magelo.DB.get("rift","object",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"recipe":ttp.setState("loading");Magelo.DB.get("rift","recipe",id,ttp.locale,function(info){ttp.setContent(info.tooltip);ttp.attach({placement:"opposite",ui:"rift-ability-icon",content:info.icon});if(info.item){ttp.attach(info.item);}});break;case"quest":ttp.setState("loading");Magelo.DB.get("rift","quest",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"soul":ttp.setState("loading");Magelo.DB.get("rift","characterClass",id,ttp.locale,function(info){ttp.setContent(info.tooltip);ttp.attach({placement:"opposite",ui:"rift-ability-icon",content:info.icon});});break;case"achievement":ttp.setState("loading");Magelo.DB.get("rift","achievement",id,ttp.locale,function(info){ttp.setContent(info.tooltip);ttp.attach({placement:"opposite",ui:"rift-ability-icon",content:info.icon});});break;case"zone":ttp.setState("loading");if(params.length>3){id=id+":"+params[3];}
Magelo.DB.get("rift","zone",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"profile":ttp.setState("loading");Magelo.DB.get("rift","character",id,ttp.locale,function(info){ttp.setContent(info.tooltip);if(info.avatar)
ttp.attach({placement:"opposite",ui:"rift-character-icon",content:id});});break;case"talent":ttp.setState("loading");var talentKey=params.join(":").substring("rift:talent:".length);Magelo.DB.get("rift","talent",talentKey,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;case"guild":ttp.setState("loading");Magelo.DB.get("rift","guild",id,ttp.locale,function(info){ttp.setContent(info.tooltip);});break;}}});Magelo.ToolTip.addContentFilter((function($){return function(chain,ttp,content){var params=ttp.key.split(":");if(params[0]=="rift"&&params[1]=="dual-item"&&typeof(ttp.parentKey)!="undefined"){var params1=ttp.parentKey.split(":");if(params1.length>3&&params.length>3){}
var itemEquipped=Magelo.DB.get("rift","item",params[2],ttp.locale);var itemCompared=Magelo.DB.get("rift","item",params1[2],ttp.locale);if(typeof(itemEquipped)=="undefined"||typeof(itemCompared)=="undefined"){return chain.filter(content);}
try{var stats1=itemCompared.stats;var stats2=itemEquipped.stats;if(stats1!=undefined&&stats2!=undefined&&stats1!=""&&stats2!=""){Magelo.Locales.get("rift","tooltip",ttp.locale,function(bundle){var deltas="";for(var i=0;i<stats1.length;i++){var diff=stats1[i]-stats2[i];if(diff!=0){deltas+=(diff>0?'<span class="bonus">+':'<span class="malus">')+diff+"</span> "
+bundle.get("item_stat_"+i)
+"<br/>";}}
content='<div class="dual-tooltip-current-item">'+bundle.get("currently_equipped")+'</div>'+content;content+='<div class="dual-tooltip-item-delta"><hr/>'+bundle.get("delta_description")+'</div>';content+='<div class="dual-tooltip-deltas">'+deltas+"</div>";chain.filter(content);});return;}}catch(e){Magelo.ToolTip.log(e);}}
chain.filter(content);};})(jQuery));
Magelo.ToolTip.Adapters={};Magelo.ToolTip.Adapters.Magelo=(function($){var re=/^http:\/\/(wow|eq|rift)\.([a-z]{3,4})?magelo\.com\/([a-z]{2})?\/?(item|npc|spell|quest|achievement|recipe|zone|artifactset|ability|profile|guild|gob)\/(\w+)(\?.*|\/.*)?/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare(m[1]+":"+m[4]+":"+m[5],m[3]);}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.WowAmory=(function($){var re=/^http:\/\/www\.wowarmory\.com\/(item)-info\.xml\?i=([\d]+)(&.*|\?.*|\/.*)?/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("wow:"+m[1]+":"+m[2],"en");}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.Thottbot=(function($){var re=/^http:\/\/(www\.)?thottbot\.com\/(i)([\d]+)(&.*|\?.*|\/.*)?/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){var type=m[2]=="i"?"item":"";if(type!=""){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("wow:"+type+":"+m[3],"en");}}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.Wowhead=(function($){var re=/^http:\/\/([a-z]{2,3})\.wowhead\.com\/?(item|npc|spell|quest|achievement)=([\d]+)(&.*|\?.*|\/.*)?/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("wow:"+m[2]+":"+m[3],m[1]=="www"?"en":m[1]);}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.Lucy=(function($){var re=/^http:\/\/lucy\.allakhazam\.com\/(item|spell)\.html\?id=([\d]+)(&.*|\?.*|\/.*)?/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("eq:"+m[1]+":"+m[2],"en");}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.RiftYG=(function($){var re=/^http:\/\/rift\.yg\.com\/(\w\w\/)?item\/.*\?id=(.*)/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("rift:item:"+m[2],m[1]==undefined?"en":m[1].substring(0,2));}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);Magelo.ToolTip.Adapters.RiftZam=(function($){var re=/^http:\/\/rift\.zam\.com\/(\w\w)\/(item|ability|npc|quest|recipe)\/([A-F0-9]*)(\/.*)/;var _adapt=function(){var m=re.exec($(this).attr("href"));if(m){$(this).one("mouseout",Magelo.ToolTip.dismiss);Magelo.ToolTip.prepare("rift:"+m[2]+":"+m[3],m[1]);}};return{enable:function(){$("a").live("mouseover",_adapt);},disable:function(){$("a").die("mouseover",_adapt);}};})(jQuery);
if(typeof(Magelo)=="undefined"){Magelo={};}
Magelo.Support={CSS3:false};Magelo.Bar=(function($){var FlagMinimized=0x1;var _firstUpdate=true;var _loggedIn=false;var _loginProvider;var _username;var _maskVisible=false;var _mask;var _mageloBar=undefined;var _leftPane=undefined;var _rightPane=undefined;var _minimizeButton=undefined;var _initializers=[];var _toggleMask=function(){if(typeof(_mask)=="undefined"){_mask=$('<div id="magelo-bar-mask"></div>');_mask.appendTo(document.body);_maskVisible=true;return;}
_mask.css('visibility',_maskVisible?'hidden':'visible');_maskVisible=!_maskVisible;};var _setLoggedState=function(isLoggedIn){_loggedIn=isLoggedIn;_mageloBar.trigger(isLoggedIn?"login":"logout");};var _handleUpdateState=function(newState){_username=newState.username;_setLoggedState(newState.loggedIn);if(_firstUpdate){_firstUpdate=false;_loadState(newState.state);_mageloBar.css("display","block");}};var _requestUpdateState=function(){$.ajax({url:"http://www."+Magelo.domain+"/"+Magelo.locale+"/magelo-webbar-state.json",dataType:"jsonp",cache:false,success:_handleUpdateState});};var _state;var _loading=false;var _loadState=function(s){var newState=[];var params=s.split("-");for(var i=0;i<params.length;++i){if(params[i].length>1){var key=parseInt(params[i].charAt(0),36);var value=parseInt(params[i].substring(1),36);newState.push([key,value]);}}
_state=newState;_loading=true;_mageloBar.trigger("state-update");_loading=false;};var _saveState=function(){if(typeof(_state)!="undefined"){var s="";for(var i=0;i<_state.length;++i){if(s.length>0)s+="-";s+=_state[i][0].toString(36);s+=_state[i][1].toString(36);}
$.ajax({url:"http://www."+Magelo.domain+"/"+Magelo.locale+"/magelo-webbar-state.json",dataType:"jsonp",data:{"state":s},cache:false,success:_handleUpdateState});}};var _getState=function(id){if(typeof(_state)=="undefined"){return;}
for(var i=0;i<_state.length;++i){if(_state[i][0]==id){return _state[i][1];}}};var _setState=function(id,value){if(_loading)return;if(typeof(_state)=="undefined"){_state=[];}
for(var i=0;i<_state.length;++i){if(_state[i][0]==id){if(_state[i][1]!=value){_state[i][1]=value;_saveState();}
return;}}
_state.push([id,value]);_saveState();};var _minimize=function(minimized){_setState(0,1);_mageloBar.trigger("minimized");};var _restore=function(minimized){_setState(0,0);_mageloBar.trigger("restored");};var _minimizeUI=function(){_mageloBar.clearQueue();var animate=_mageloBar.is(":visible");if(typeof(animate)=="undefined"||animate){_mageloBar.animate({bottom:-28},{duration:250,defaultEasing:"easeOut"});}else{_mageloBar.css("bottom",-28);}
if(!_mageloBar.is(".minimized")){_mageloBar.queue(function(){_mageloBar.addClass('minimized');_mageloBar.mouseenter(_minimizedClickyUI);_mageloBar.mouseleave(_minimizeUI);_mageloBar.click(_restore);_mageloBar.dequeue();});}};var _minimizedClickyUI=function(){_mageloBar.clearQueue();_mageloBar.animate({bottom:-22},{duration:250,defaultEasing:"easeOut"});};var _restoreUI=function(){_mageloBar.clearQueue();_mageloBar.animate({bottom:0},{duration:250,defaultEasing:"easeOut"});_mageloBar.unbind("mouseenter",_minimizedClickyUI);_mageloBar.unbind("mouseleave",_minimizeUI);_mageloBar.unbind("click",_restore);_mageloBar.removeClass('minimized');};var $this={setState:_setState,getState:_getState,ready:function(init){_initializers.push(init);},toggleMask:function(){_toggleMask();},bind:function(){_mageloBar.bind.apply(_mageloBar,arguments);},unbind:function(){_mageloBar.unbind.apply(_mageloBar,arguments);},add:function(o,paneName){var item=$('<span class="magelo-bar-item"></span>');if(typeof(paneName)=="undefined"||paneName=="left"){item.appendTo(_leftPane);}else{item.appendTo(_rightPane);}
if(typeof(o.appendTo)!="undefined"){o.appendTo(item);}else{$(o).appendTo(item);}},addSeparator:function(){this.add($('<span class="magelo-bar-separator"></span>'));},addTooltip:function(element,tooltip,showOnElement){if(!showOnElement){showOnElement=element;}
if(typeof(element.data("tooltip"))!="undefined"&&element.data("tooltip")!=null){element.data("tooltip").el.remove();element.unbind("mouseenter",element.data("tooltip").show);element.unbind("mouseleave",element.data("tooltip").hide);element.data("tooltip",undefined);}
var tooltipEl=$('<div class="magelo-bar-tooltip">'+'<div class="magelo-bar-tooltip-border1"></div>'+'<div class="magelo-bar-tooltip-border2"></div>'+'<div class="magelo-bar-tooltip-corner"></div>'+'<div class="magelo-bar-tooltip-content"></div>'+'</div>');var contentEl=tooltipEl.find(".magelo-bar-tooltip-content");tooltipEl.css('position','absolute');tooltipEl.css('display','none');contentEl.html(tooltip);tooltipEl.appendTo(showOnElement.parent());var showTtp=function(){var left=showOnElement.position().left;var marginLeft=parseInt(showOnElement.css("margin-left"))||0;var marginRight=parseInt(showOnElement.css("margin-right"))||0;left+=marginLeft;var width=showOnElement.width();left+=width>>1;var bottom=0;var prevEl=showOnElement;var ho=0;var els=showOnElement.parents();for(var i=0;i<els.length;++i){if($(els[i]).is(".magelo-bar-content"))break;bottom+=$(els[i]).position().top;ho=$(els[i]).height();}
bottom+=ho;if(showOnElement.parents(".magelo-bar-right").length>0){tooltipEl.css('right',(showOnElement.parent().width()-24-left)+'px');}else{tooltipEl.css('left',(left-24)+'px');}
tooltipEl.css('bottom',bottom+'px');tooltipEl.show();};var hideTtp=function(){tooltipEl.hide();};element.mouseenter(showTtp);element.mouseleave(hideTtp);var ttp={el:tooltipEl,show:showTtp,hide:hideTtp};element.data("tooltip",ttp);},login:function(){if(!$this.isLoggedIn()){if(_loginProvider){_loginProvider.initiate();}}},logout:function(){if($this.isLoggedIn()){if(_loginProvider){_loginProvider.logout();}}},install:function(){var code='<div id="magelo-bar" style="display:none">'+'<div class="magelo-bar-background">'+'<div class="magelo-bar-background-left"></div>'+'<div class="magelo-bar-background-middle"></div>'+'<div class="magelo-bar-background-right"></div>'+'</div>'+'<div style="position:relative">'+'<div class="magelo-bar-content">'+'<div class="magelo-bar-left"></div>'+'<div class="magelo-bar-right">'+'<div class="magelo-bar-info"><span></span></div>'+'<div class="magelo-bar-minimize"><span></span></div>'+'</div>'+'</div>'+'</div>'+'</div>';$(document.body).append(code);$(document.body).css("margin-bottom","50px");_mageloBar=$("#magelo-bar");try{if(navigator.platform=='iPad'||navigator.platform=='iPhone'||navigator.platform=='iPod'){_mageloBar.css("position","static");};}catch(e){}
_leftPane=_mageloBar.find(".magelo-bar-left");_rightPane=_mageloBar.find(".magelo-bar-right");_infoButton=_mageloBar.find(".magelo-bar-info");_minimizeButton=_mageloBar.find(".magelo-bar-minimize");var _connectButton=$('<div class="magelo-bar-status"></div>');$this.add(_connectButton);$this.addSeparator();var bundle=Magelo.Locales.getBundle("wow","webbar");$this.addTooltip(_infoButton,bundle.get("webbar.about.tooltip"));$this.addTooltip(_minimizeButton,bundle.get("webbar.minimize.tooltip"));_connectButton.click(function(){if($this.isLoggedIn()){$this.logout();}else{$this.login();}});_minimizeButton.click(_minimize);_mageloBar.bind("minimized",_minimizeUI);_mageloBar.bind("restored",_restoreUI);_mageloBar.bind("login",function(){$this.addTooltip(_connectButton,bundle.get("webbar.state.connected",_username));_mageloBar.addClass("connected");});_mageloBar.bind("logout",function(){$this.addTooltip(_connectButton,bundle.get("webbar.state.disconnected"));_mageloBar.removeClass("connected");});_mageloBar.one("state-update",function(){var state=Magelo.Bar.getState(0);if(state){if(state&FlagMinimized){_minimize();}}});_infoButton.click(function(){var _path=Magelo.channel!="eq"?"/"+Magelo.locale:"";$.ajax({url:"http://"+Magelo.channel+"."+Magelo.domain+_path+"/magelo_webbar_info.json",dataType:"jsonp",success:function(data){var infoPopup=new Magelo.Bar.Popup();infoPopup.setContent(data.html);infoPopup.appendTo(_infoButton.parent());var right=_infoButton.parent().width()-(_infoButton.width()+_infoButton.position().left);var bottom=_infoButton.parent().height()-_infoButton.position().top;var pos=Magelo.Bar.UI.positionTo(_infoButton.parent(),_infoButton.parents('.magelo-bar-content'));infoPopup.toggle({bottom:pos.top+_infoButton.parent().height()-5,right:right});}});});},isLoggedIn:function(){return _loggedIn;},setLoginProvider:function(provider){_loginProvider=provider;$(_loginProvider).bind("login-succeeded",function(){_requestUpdateState();});$(_loginProvider).bind("logout-succeeded",function(){_setLoggedState(false);});},show:function(){_requestUpdateState();for(var i=0;i<_initializers.length;++i){_initializers[i]();}}};return $this;})(jQuery);Magelo.Bar.WOWSearchEngine=(function($){return function(){var jsonSearchUrl="http://wow."+Magelo.domain+"/"+Magelo.locale+"/quicksearch.json?keyword=";var htmlSearchUrl="http://wow."+Magelo.domain+"/"+Magelo.locale+"/quick_search.jspa?keyword=";return{requestSuggestions:function(query,callback){$.ajax({url:jsonSearchUrl+encodeURIComponent(query),dataType:"jsonp",success:callback});},search:function(query){}};};})(jQuery);Magelo.Bar.EQSearchEngine=(function($){return function(){var jsonSearchUrl="http://eq."+Magelo.domain+"/quicksearch.json?keyword=";var htmlSearchUrl="http://eq."+Magelo.domain+"/quick_search.jspa?keyword=";return{requestSuggestions:function(query,callback){$.ajax({url:jsonSearchUrl+encodeURIComponent(query),dataType:"jsonp",success:callback});},search:function(query){}};};})(jQuery);Magelo.Bar.RiftSearchEngine=(function($){return function(){var jsonSearchUrl="http://rift."+Magelo.domain+"/"+Magelo.locale+"/quicksearch.json?keyword=";var htmlSearchUrl="http://rift."+Magelo.domain+"/"+Magelo.locale+"/quick_search.jspa?keyword=";return{requestSuggestions:function(query,callback){$.ajax({url:jsonSearchUrl+encodeURIComponent(query),dataType:"jsonp",success:callback});},search:function(query){}};};})(jQuery);Magelo.Bar.TorSearchEngine=(function($){return function(){var jsonSearchUrl="http://swtor."+Magelo.domain+"/"+Magelo.locale+"/webbar/quicksearch.json?keyword=";var htmlSearchUrl="http://swtor."+Magelo.domain+"/"+Magelo.locale+"/quick_search.jspa?keyword=";return{requestSuggestions:function(query,callback){$.ajax({url:jsonSearchUrl+encodeURIComponent(query),dataType:"jsonp",success:callback});},search:function(query){}};};})(jQuery);Magelo.Bar.WOWCharacterRepository=(function($){return function(){return{getStateId:function(){return 11;},requestCharactersList:function(callback){$.ajax({url:"http://wow."+Magelo.domain+"/"+Magelo.locale+"/my_characters.json",dataType:"jsonp",success:callback});},requestCharacterDetails:function(id,callback){$.ajax({url:"http://wow."+Magelo.domain+"/"+Magelo.locale+"/my_character.json",dataType:"jsonp",cache:true,jsonpCallback:"jsonp_chr_"+id,data:{"characterId":id},success:callback});}};};})(jQuery);Magelo.Bar.WOWToolTipContextualizingFilter=(function($){return function(){var _isEquippableAt=function(invSlot,equipSlot){switch(equipSlot){case 0:return invSlot==1;case 1:return invSlot==2;case 2:return invSlot==3;case 3:return invSlot==4;case 4:return(invSlot==5)||(invSlot==20);case 5:return invSlot==6;case 6:return invSlot==7;case 7:return invSlot==8;case 8:return invSlot==9;case 9:return invSlot==10;case 10:return invSlot==11;case 11:return invSlot==11;case 12:return invSlot==12;case 13:return invSlot==12;case 14:return invSlot==16;case 15:return(invSlot==13)||(invSlot==17)||(invSlot==21);case 16:return(invSlot==13)||(invSlot==14)||(invSlot==17)||(invSlot==22);case 18:return invSlot==19;}
return false;};Magelo.Bar.MyCharacter.bind("character-selected character-info-updated",function(){if(typeof(renderAllSpellMarkup)!="undefined"){renderAllSpellMarkup(undefined,Magelo.Bar.MyCharacter.getCharacter());}});return function(filterChain,ttp,content){var params=ttp.key.split(":");var myCharacter=Magelo.Bar.MyCharacter.getCharacter();if(typeof(myCharacter)!="undefined"&&myCharacter.result!="error"){if(params.length>=3&&params[0]=="wow"&&params[1]=="item"){Magelo.DB.get("wow","item",params[2],ttp.locale,function(it){for(var i=0;i<myCharacter.equipment.length;++i){var item=myCharacter.equipment[i];if(_isEquippableAt(it.slot,item.slot)){if(params.length>3){var id=[item.item,item.enchant,item.sockets[0].gem,item.sockets[1].gem,item.sockets[2].gem].join(":");ttp.attach("wow:dual-item:"+id)}else{ttp.attach("wow:dual-item:"+item.item);}}}});}
if(typeof(myCharacter.achievements)!="undefined"){if(params.length==3&&params[0]=="wow"&&params[1]=="achievement"){var achieved=myCharacter.achievements[params[2]];if(typeof(achieved)!="undefined"){Magelo.Locales.get("wow","tooltip",ttp.locale,function(bundle){var t=bundle.get("ACHIEVEMENT_TOOLTIP_COMPLETE",myCharacter.name,achieved%100,achieved/100%100,achieved/10000%100);var c=$(content);c.find(".name").after('<span class="date-completed">'+t+'</span>');filterChain.filter(c);});return;}}}
if(params.length==3&&params[0]=="wow"&&params[1]=="spell"){if(typeof(myCharacter.spellBook)!="undefined"){var known=false;var spellId=parseInt(params[2]);for(var i=0;i<myCharacter.spellBook.length;++i){if(myCharacter.spellBook[i]==spellId){known=true;break;}}
if(false&&known){Magelo.Locales.get("wow","tooltip",ttp.locale,function(bundle){var t=bundle.get("ITEM_SPELL_KNOWN",myCharacter.name);var c=$(content);c.find("h1:first").after('<span class="already-known">'+t+'</span>');filterChain.filter(c);});return;}}}}
filterChain.filter(content);};};})(jQuery);Magelo.Bar.EQCharacterRepository=(function($){return function(){return{getStateId:function(){return 10;},requestCharactersList:function(callback){$.ajax({url:"http://eq."+Magelo.domain+"/my_characters.json",dataType:"jsonp",success:callback});},requestCharacterDetails:function(id,callback){$.ajax({url:"http://eq."+Magelo.domain+"/my_character.json",dataType:"jsonp",cache:true,jsonpCallback:"jsonp_chr_"+id,data:{"characterId":id},success:callback});}};};})(jQuery);Magelo.Bar.EQToolTipContextualizingFilter=(function($){return function(filterChain,ttp,content){var params=ttp.key.split(":");var myCharacter=Magelo.Bar.MyCharacter.getCharacter();if(typeof(myCharacter)!="undefined"&&myCharacter.result!="error"){if(params.length==3&&params[0]=="eq"&&params[1]=="item"){Magelo.DB.get("eq","item",params[2],function(it){for(var i=0;i<myCharacter.equipment.length;++i){var item=myCharacter.equipment[i];if(it.cat!=54&&((it.slots&(1<<(item.slot)))!=0)){ttp.attach("eq:dual-item:"+item.item);}}});}}
filterChain.filter(content);};})(jQuery);Magelo.Bar.RiftCharacterRepository=(function($){return function(){return{getStateId:function(){return 12;},requestCharactersList:function(callback){$.ajax({url:"http://rift."+Magelo.domain+"/"+Magelo.locale+"/my_characters.json",dataType:"jsonp",success:callback});},requestCharacterDetails:function(id,callback){$.ajax({url:"http://rift."+Magelo.domain+"/"+Magelo.locale+"/my_character.json",dataType:"jsonp",cache:true,jsonpCallback:"jsonp_chr_"+id,data:{"characterId":id},success:callback});}};};})(jQuery);Magelo.Bar.RiftToolTipContextualizingFilter=(function($){return function(){return function(filterChain,ttp,content){var params=ttp.key.split(":");var myCharacter=Magelo.Bar.MyCharacter.getCharacter();if(typeof(myCharacter)!="undefined"&&myCharacter.result!="error"){if(params.length>=3&&params[0]=="rift"&&params[1]=="item"){Magelo.DB.get("rift","item",params[2],ttp.locale,function(it){for(var i=0;i<myCharacter.equipment.length;++i){var item=myCharacter.equipment[i];var slotMatch=(it.slots&(1<<item.slot))!=0;if(slotMatch){ttp.attach("rift:dual-item:"+item.item.key);}}});}}
filterChain.filter(content);};};})(jQuery);
Magelo.Bar.UI=(function($){return{positionTo:function(el1,el2){var p=el1.parents();var i=0;var pos=el1.position();while(i<p.length&&p[i]!=el2[0]){var position=$(p[i++]).position();pos.top+=position.top;pos.left+=position.left;}
return pos;}};})(jQuery);Magelo.Bar.PopupManager=(function(){var _popups=[];var _actives=[];var _actives_indexOf=function(p){for(var i=0;i<_actives.length;++i){if(_actives[i]==p)return i;}
return-1;};var popupOpened=function(e){var p=e.popup;var index=_actives_indexOf(p);if(index==-1){for(var i=_actives.length-1;i>=0;--i){_actives[i].hide();}
_actives.push(p);}};var popupClosed=function(e){var p=e.popup;var index=_actives_indexOf(p);if(index!=-1){_actives.splice(index,1);}};return{addPopup:function(p){_popups.push(p);p.bind("popupOpened",popupOpened);p.bind("popupClosed",popupClosed);},removePopup:function(p){var index=this.indexOf(p);if(index!=-1){_popups.splice(index,1);p.unbind("popupOpened",popupOpened);p.unbind("popupClosed",popupClosed);}},indexOf:function(popup){for(var i=0;i<_popups.length;++i){if(_popups[i]==popup)
return i;}
return-1;}};})();Magelo.Bar.Popup=(function($){return function(){var _ui;var _content;if(Magelo.Support.CSS3){_ui=$('<div class="magelo-bar-popup"></div>');_content=_ui;}else{_ui=$('<div class="magelo-bar-popup">'+'<div class="magelo-bar-popup-border1"></div>'+'<div class="magelo-bar-popup-border2"></div>'+'<div class="magelo-bar-popup-corner"></div>'+'<div class="magelo-bar-popup-content"></div>'+'</div>');_content=_ui.find(".magelo-bar-popup-content");}
var _autohide=true;if(arguments&&arguments.length>0){if(typeof(arguments[0].id)!="undefined"){_ui.attr("id",arguments[0].id);}
if(typeof(arguments[0].autohide)!="undefined"){_autohide=arguments[0].autohide;}}
var $this={setAutoHide:function(b){_autohide=b;},bind:function(type,fn){_ui.bind(type,fn);},unbind:function(type,fn){_ui.unbind(type,fn);},animate:function(){_ui.animate.apply(_ui,arguments);},queue:function(){_ui.queue.apply(_ui,arguments);},appendTo:function(o){_ui.appendTo($(o));},add:function(o){$(o).appendTo(_content);_ui.trigger({type:"popupContentUpdated",popup:this});},setContent:function(o){_content.empty();this.add(o);},toggle:function(){if(_ui.is(":visible")){this.hide.apply(this,arguments);}else{this.show.apply(this,arguments);}},show:function(){if(typeof(arguments)!="undefined"&&arguments.length>0){var params=arguments[0];if(typeof(params.top)!="undefined")_ui.css("top",params.top+"px");if(typeof(params.right)!="undefined")_ui.css("right",params.right+"px");if(typeof(params.bottom)!="undefined")_ui.css("bottom",params.bottom+"px");if(typeof(params.left)!="undefined")_ui.css("left",params.left+"px");}
_ui.show();_ui.trigger({type:"popupOpened",popup:this});},hide:function(){_ui.trigger({type:"popupClosing",popup:this});_ui.hide();_ui.trigger({type:"popupClosed",popup:this});},isVisible:function(){return _ui.is(":visible");}};var timer;var setupAutoHide=function(){if(_autohide){timer=setTimeout($this.hide,500);}};var abortAutoHide=function(){if(typeof(timer)!="undefined"){clearTimeout(timer);timer=undefined;}};_ui.bind("mouseenter",abortAutoHide);_ui.bind("mouseleave",setupAutoHide);_ui.bind("mousewheel",function(e){e.preventDefault();});Magelo.Bar.PopupManager.addPopup($this);return $this;};})(jQuery);Magelo.Bar.Panel=(function($){return function(){var _ui;var _content;if(Magelo.Support.CSS3){_ui=$('<div class="magelo-bar-panel"></div>');_content=_ui;}else{_ui=$('<div class="magelo-bar-panel">'+'<div class="magelo-bar-panel-border1"></div>'+'<div class="magelo-bar-panel-border2"></div>'+'<div class="magelo-bar-panel-corner"></div>'+'<div class="magelo-bar-panel-content"></div>'+'</div>');_content=_ui.find(".magelo-bar-panel-content");}
if(arguments&&arguments.length>0){if(typeof(arguments[0].id)!="undefined"){_ui.attr("id",arguments[0].id);}}
return{appendTo:function(o){_ui.appendTo($(o));},setContent:function(o){_content.empty();$(o).appendTo(_content);}};};})(jQuery);
Magelo.Bar.Search=(function($){var _searchEngine;var _defaultText;var bar;var input;var popup;var selectedIndex=-1;var results;var previousQuery="";var wikiTagBuilder=undefined;var hasResults=function(){return(typeof(results)!="undefined")&&results.length>0;};var onKeyPress=function(e){if(typeof(results)!="undefined"){switch(e.keyCode){case 13:goToResult();e.preventDefault();break;case 27:cancelCompletion();e.preventDefault();break;case 38:selectCompletion(selectedIndex+1);e.preventDefault();break;case 40:selectCompletion(selectedIndex-1);e.preventDefault();break;}}};var onKeyUp=function(e){var query=input.val();doSearch(query);};var onBlur=function(){if(input.val()==""){input.val(_defaultText);}
if(typeof(popup)!="undefined"){setTimeout(function(){popup.hide();},500);}};var onFocus=function(){if(input.val()==_defaultText){input.val("");}
if(typeof(popup)!="undefined"&&hasResults()){popup.show();}};var fireSearchStarted=function(){bar.addClass("loading");};var fireSearchComplete=function(){bar.removeClass("loading");};var cancelCompletion=function(){hideResults();};var hideResults=function(){if(selectedIndex!=-1){results[selectedIndex].jquery.removeClass("selected");}
selectedIndex=-1;if(typeof(popup)!="undefined"){popup.hide();}};var goToResult=function(){if(selectedIndex!=-1){document.location.href=results[selectedIndex].url;}else{_searchEngine.search(input.val());}};var selectCompletion=function(newIndex){doSelect(newIndex);};var doSelect=function(newIndex){var prevIndex=selectedIndex;if(prevIndex==-1&&newIndex<prevIndex){newIndex++;}
selectedIndex=(newIndex+results.length)%results.length;if(prevIndex!=-1){results[prevIndex].jquery.removeClass("selected");}
results[selectedIndex].jquery.addClass("selected");popup.show();};var doSearch=function(query,callback){if(query==previousQuery){return;}
if(query.length<2){if(typeof(result)!="undefined"){popup.hide();}
return;}
previousQuery=query;fireSearchStarted();_searchEngine.requestSuggestions(query,function(data){onSearchResult(data,callback)});};var urlEncode=function(str){return str.replace(/"/g,'\'').replace(/ : /g,'-').replace(/ /g,'-').replace(/\%/g,'').replace(/\:/g,'-').replace(/\[/g,'').replace(/\]/g,'').replace(/-+/g,'-');};var onSearchResult=function(data){fireSearchComplete();results=data;if(typeof(popup)=="undefined"){var dummy=$('<div id="magelo-bar-search-result-parent"></div>');dummy.appendTo(bar);popup=new Magelo.Bar.Popup({id:"magelo-bar-search-result",autohide:false});popup.appendTo(dummy);}
if(data.length>0){var resultContainer=$("<ul></ul>");for(var i=0;i<data.length;++i){var r=data[data.length-i-1];var icon=r.icon;if(icon!=""){icon='<img src="'+icon+'" width="20" height="20" align="absmiddle" >';}
r.jquery=$("<li>"+icon+"<span class=\"magelo-search-result-entry\"><a rel=\""+r.rel+"\" href=\""+r.url+(r.type!='character'?("/"+urlEncode(r.name)):"")+"\" "+(Magelo.externalWebsite?"target=\"_blank\"":"")+">"+r.name+"</a></span>"+"</li>");r.jquery.appendTo(resultContainer);r.jquery.mouseenter(function(){var myIndex=data.length-i-1;return function(){doSelect(myIndex);}}());with(r){r.jquery.drag("start",function(ev,dd){var $this=$(this);var proxy=$("<div style='position:absolute;color: black;'></div>");proxy.data({type:type,icon:icon,name:name,rel:rel,url:url});return proxy.append($(this).children().first().clone()).append("<span style='cursor:pointer;'>"+proxy.data('name')+"</span>").appendTo('body');}).drag(function(ev,dd){$(dd.proxy).css({top:dd.offsetY,left:dd.offsetX});}).drag("end",function(ev,dd){$(dd.proxy).remove();});}}
popup.setContent(resultContainer);popup.show();}else{popup.hide();}
selectedIndex=-1;};var selectWikiTagBuilder=function($textarea){if($textarea.hasClass('FORM-INPUT'))
wikiTagBuilder=Magelo.Bar.Search.WikiTagBuilders.Magelo;else
wikiTagBuilder=Magelo.Bar.Search.WikiTagBuilders.PhpBB;};var setSelectionRange=function(input,selectionStart,selectionEnd){if(input.setSelectionRange){input.focus();input.setSelectionRange(selectionStart,selectionEnd);}
else if(input.createTextRange){var range=input.createTextRange();range.collapse(true);range.moveEnd('character',selectionEnd);range.moveStart('character',selectionStart);range.select();}};var insertAtCaret=function(area,text){var insertPos=$(area).data('caretPos'),endPos=area.value.substring(0,insertPos).length+text.length;$(area).val(area.value.substring(0,insertPos)+text+area.value.substring(insertPos));setSelectionRange(area,endPos,endPos);};var getInputselection=function(el){var start=0,end=0,normalizedValue,range,textInputRange,len,endRange;if(el.selectionStart!=undefined){start=el.selectionStart;end=el.selectionEnd;}else{range=document.selection.createRange();if(range&&range.parentElement()==el){len=el.value.length;normalizedValue=el.value.replace(/\r\n/g,"\n");textInputRange=el.createTextRange();textInputRange.moveToBookmark(range.getBookmark());endRange=el.createTextRange();endRange.collapse(false);if(textInputRange.compareEndPoints("StartToEnd",endRange)>-1){start=end=len;}else{start=-textInputRange.moveStart("character",-len);start+=normalizedValue.slice(0,start).split("\n").length-1;if(textInputRange.compareEndPoints("EndToEnd",endRange)>-1){end=len;}else{end=-textInputRange.moveEnd("character",-len);end+=normalizedValue.slice(0,end).split("\n").length-1;}}}}
return{start:start,end:end};};return{install:function(options){var bundle=Magelo.Locales.getBundle("wow","webbar");_searchEngine=options.searchEngine;bar=$('<div id="magelo-bar-search"><form action="javascript:void(0)" autocomplete="off"><input type="text" name="q" /></form></div>');Magelo.Bar.add(bar);input=bar.find("input");input.keyup(onKeyUp);input.keydown(onKeyPress);input.blur(onBlur);input.focus(onFocus);_defaultText=bundle.get("quicksearch.default-input");input.val(_defaultText);var $textareas=$('textarea');$textareas.drop(function(ev,dd){var data=$(dd.proxy).data();if(wikiTagBuilder==undefined){selectWikiTagBuilder($(this));}
insertAtCaret(this,wikiTagBuilder.build(data));hideResults();});$textareas.click(function(){$(this).data('caretPos',getInputselection(this).start);})
$textareas.keypress(function(event){$(this).data('caretPos',getInputselection(this).start+1);});}};})(jQuery);
Magelo.Bar.Search.WikiTagBuilders={};Magelo.Bar.Search.WikiTagBuilders.Magelo=(function($){return{build:function(data){return"["+data.rel+"]"}};})(jQuery);Magelo.Bar.Search.WikiTagBuilders.PhpBB=(function($){var urlEncode=function(text){return text.replace(/"/g,'\'').replace(/ : /g,'-').replace(/ /g,'-').replace(/\%/g,'').replace(/\:/g,'-').replace(/\[/g,'').replace(/\]/g,'').replace(/-+/g,'-');};return{build:function(data){return"[url="+data.url+(data.type!='character'?("/"+urlEncode(data.name)):"")+"]"+data.name+"[/url]"}};})(jQuery);Magelo.Bar.Search.WikiTagBuilders.Html=(function($){var urlEncode=function(text){return text.replace(/"/g,'\'').replace(/ : /g,'-').replace(/ /g,'-').replace(/\%/g,'').replace(/\:/g,'-').replace(/\[/g,'').replace(/\]/g,'').replace(/-+/g,'-');};return{build:function(data){return"< a href='"+data.url+(data.type!='character'?("/"+urlEncode(data.name)):"")+"'>"+data.name+"</a>"}};})(jQuery);
Magelo.AutoComplete=(function($){var _searchEngine;var shadowArea;var activeArea;var popup;var selectedIndex=-1;var results;var previousQuery="";var wikiTagBuilder=undefined;var hasResults=function(){return(typeof(results)!="undefined")&&results.length>0;};var onKeyPress=function(e){if(isActive()&&hasResults()){switch(e.keyCode){case 13:goToResult();e.preventDefault();break;case 27:cancelCompletion();e.preventDefault();break;case 38:selectCompletion(selectedIndex-1);e.preventDefault();break;case 40:selectCompletion(selectedIndex+1);e.preventDefault();break;default:hideResults();}}};var onBlur=function(){if(typeof(popup)!="undefined"){setTimeout(function(){hideResults();},50);}};var onFocus=function(){if(typeof(popup)!="undefined"&&hasResults()){popup.show();}};var fireSearchStarted=function(){};var fireSearchComplete=function(){};var cancelCompletion=function(){hideResults();};var hideResults=function(){if(selectedIndex!=-1){results[selectedIndex].jquery.removeClass("selected");}
selectedIndex=-1;if(typeof(popup)!="undefined"){popup.hide();}};var isActive=function(){return popup!=undefined&&popup.isVisible();};var goToResult=function(){doCompletion();};var selectCompletion=function(newIndex){doSelect(newIndex);};var doSelect=function(newIndex){var prevIndex=selectedIndex;if(prevIndex==-1&&newIndex<prevIndex){newIndex++;}
selectedIndex=(newIndex+results.length)%results.length;if(prevIndex!=-1){results[prevIndex].jquery.removeClass("selected");}
results[selectedIndex].jquery.addClass("selected");popup.show();};var doSearch=function(query,area,callback){if(query==previousQuery){onSearchResult(results,area,callback);}
if(query.length<2){if(typeof(results)!="undefined"){hideResults();}
return;}
previousQuery=query;fireSearchStarted();_searchEngine.requestSuggestions(query,function(data){onSearchResult(data,area,callback)});};var onSearchResult=function(data){fireSearchComplete();results=data;if(typeof(popup)=="undefined"){var dummy=$('<div id="magelo-autocomplete-search-result-parent"></div>');dummy.appendTo($('body'));popup=new Magelo.Bar.Popup({id:"magelo-autocomplete-search-result",autohide:false});popup.appendTo(dummy);}
var pos=getCaretPos(activeArea.get(0));$('#magelo-autocomplete-search-result-parent').css({top:pos.y+'px',left:pos.x+'px'});if(data.length>0){var resultContainer=$("<ul></ul>");for(var i=0;i<data.length;++i){var r=data[i];var icon=r.icon;if(icon!=""){icon='<img src="'+icon+'" width="20" height="20" align="absmiddle" >';}
r.jquery=$("<li rel='"+r.rel+"'>"+icon+"<span class=\"magelo-search-result-entry\" style='cursor:pointer;'>"+r.name+"</span></li>");r.jquery.appendTo(resultContainer);r.jquery.mousedown(doCompletion);r.jquery.mouseenter(function(){var myIndex=i;return function(){doSelect(myIndex);}}());}
popup.setContent(resultContainer);doSelect(0);popup.show();}else{hideResults();}};var doCompletion=function(){if(wikiTagBuilder==undefined)
selectWikiTagBuilder();var endPos=getInputselection(activeArea.get(0)).end;var insertPos=endPos-previousQuery.length,tag=wikiTagBuilder.build(results[selectedIndex]);activeArea.val(activeArea.val().substring(0,insertPos)+tag+activeArea.val().substring(endPos));setSelectionRange(activeArea.get(0),insertPos+tag.length,insertPos+tag.length);hideResults();};var selectWikiTagBuilder=function(){if(activeArea.hasClass('FORM-INPUT'))
wikiTagBuilder=Magelo.Bar.Search.WikiTagBuilders.Magelo;else
wikiTagBuilder=Magelo.Bar.Search.WikiTagBuilders.PhpBB;};var setSelectionRange=function(input,selectionStart,selectionEnd){if(input.setSelectionRange){input.focus();input.setSelectionRange(selectionStart,selectionEnd);}
else if(input.createTextRange){var range=input.createTextRange();range.collapse(true);range.moveEnd('character',selectionEnd);range.moveStart('character',selectionStart);range.select();}};var getInputselection=function(el){var start=0,end=0,normalizedValue,range,textInputRange,len,endRange;if(el.selectionStart!=undefined){start=el.selectionStart;end=el.selectionEnd;}else{range=document.selection.createRange();if(range&&range.parentElement()==el){len=el.value.length;normalizedValue=el.value.replace(/\r\n/g,"\n");textInputRange=el.createTextRange();textInputRange.moveToBookmark(range.getBookmark());endRange=el.createTextRange();endRange.collapse(false);if(textInputRange.compareEndPoints("StartToEnd",endRange)>-1){start=end=len;}else{start=-textInputRange.moveStart("character",-len);start+=normalizedValue.slice(0,start).split("\n").length-1;if(textInputRange.compareEndPoints("EndToEnd",endRange)>-1){end=len;}else{end=-textInputRange.moveEnd("character",-len);end+=normalizedValue.slice(0,end).split("\n").length-1;}}}}
return{start:start,end:end};};var updateShadowArea=function(area,caretPos){var rootSpan=shadowArea.find('span');rootSpan.children().remove();lines=area.value.substring(0,caretPos).split('\n');for(var i=0;i<lines.length;i++){if(i!=0)
rootSpan.append($("<br>"));$("<span></span>").text(lines[i]).appendTo(rootSpan);}
rootSpan.append($("<em>Q</em>"));};var getCaretPos=function(area){var areaOffset=$(area).offset();var result={x:areaOffset.left+shadowArea.find('em').position().left,y:areaOffset.top+(shadowArea.find('span').height()-area.scrollTop)};return result;}
return{install:function(options){var bundle=Magelo.Locales.getBundle("wow","webbar");_searchEngine=options.searchEngine;shadowArea=$("<div style='position:absolute;top:-10000px;left:-10000px;'><span></span></div>");shadowArea.appendTo($('body'));var $textareas=$('textarea');var $span=shadowArea.find('span');$span.css("display","inline-block");$span.css("white-space","pre-wrap");var styles=['font-size','font-style','font-weight','font-family','line-height','text-transform','letter-spacing'];$(styles).each(function(){var s=this.toString();$span.css(s,$textareas.first().css(s));});$textareas.live("keydown",onKeyPress);$textareas.blur(onBlur);$textareas.live("keypress",function(event){if((event.ctrlKey||event.metaKey)&&event.which==32){event.preventDefault();activeArea=$(this);$span.css("max-width",activeArea.css("width"));var caretPos=getInputselection(this);updateShadowArea(this,caretPos.end);var query;if(caretPos.start==caretPos.end){query=activeArea.val().substring(Math.max(0,caretPos.end-10),caretPos.end);for(var i=query.length-1;i>=0;i--){if(query.charAt(i)==' '||query.charAt(i)=='\n'){query=query.substring(i+1);break;}}}else{query=activeArea.val().substring(caretPos.start,caretPos.end);}
if(query.length>2){doSearch(query);}}});}};})(jQuery);
Magelo.Bar.ThemeManager=(function($){var _themes=[];var _colors=[0,1,2,3,4,5,6,7,8];var _install=function(){var ui=$('<span class="magelo-bar-dock-button magelo-bar-dock-settings"><span></span></span>');ui.click(function(){var b=ui;if(typeof(this.popup)=="undefined"){this.popup=new Magelo.Bar.Popup({id:"magelo-bar-settings-popup"});this.popup.bind("popupOpened",function(){b.addClass("opened");});this.popup.bind("popupClosed",function(){b.removeClass("opened");});}
var bundle=Magelo.Locales.getBundle("wow","webbar");var settings=$('<div style="width:248px"><div class="magelo-bar-popup-title">'+bundle.get("theme.popup.title")+'</div></div>');var themes=Magelo.Bar.ThemeManager.getThemes();var themeList=$('<div class="magelo-bar-settings-theme-list"></div>');for(var i=0;i<themes.length;++i){var themeSwitch=$('<div style="background:url('+themes[i].preview+'); width:212px; height:29px;"></div>');with({theme:themes[i]}){themeSwitch.click(function(){Magelo.Bar.ThemeManager.setTheme(theme);});}
themeSwitch.appendTo(themeList);}
var colors=Magelo.Bar.ThemeManager.getColors();var colorList=$('<div class="magelo-bar-settings-color-list"></div>');for(var i=0;i<colors.length;++i){var colorSwitch=$('<span class="magelo-bar-settings-color-list-item"><div class="magelo-bar-color-preview color-'+colors[i]+'"></div></span>');with({color:colors[i]}){colorSwitch.click(function(){Magelo.Bar.ThemeManager.setColor(color);});}
colorSwitch.appendTo(colorList);}
var themePanel=new Magelo.Bar.Panel();themePanel.setContent(themeList);themePanel.appendTo(settings);var colorPanel=new Magelo.Bar.Panel();colorPanel.setContent(colorList);colorPanel.appendTo(settings);this.popup.setContent(settings);this.popup.appendTo(b.parent());var pos=Magelo.Bar.UI.positionTo(b.parent(),b.parents('.magelo-bar-content'));this.popup.toggle({bottom:pos.top+b.parent().height()-3,left:b.position().left});themeList.jScrollPane({animateTo:true,animateInterval:50,animateStep:5,showArrows:true,scrollbarWidth:15,dragMinHeight:32});});Magelo.Bar.add(ui);var bundle=Magelo.Locales.getBundle("wow","webbar");Magelo.Bar.addTooltip(ui,bundle.get("theme.tooltip"));Magelo.Bar.bind("state-update",_loadState);};var _loadState=function(){var state=Magelo.Bar.getState(1);if(!state){return;}
if(state&0xF00){var id=state&0xFF;switch(state&0xF00){case 0x100:$this.setTheme({id:"theme-"+id});break;case 0x200:$this.setTheme({id:"theme-eq-"+id});break;case 0x400:$this.setTheme({id:"theme-wow-"+id});break;case 0x300:$this.setTheme({id:"theme-rift-"+id});break;}}
var col=(state&0xF000)/0x1000;if(col>0){$this.setColor(col-1);}};var _saveState=function(){var state=0;if(typeof(_currentTheme)!="undefined"){if(_currentTheme.indexOf("eq")!=-1){state+=0x200;}else if(_currentTheme.indexOf("wow")!=-1){state+=0x400;}else if(_currentTheme.indexOf("rift")!=-1){state+=0x300;}else{state+=0x100;}
state+=parseInt(_currentTheme.substring(_currentTheme.lastIndexOf("-")+1));}
if(typeof(_currentColor)!="undefined"){state+=0x1000*(1+parseInt(_currentColor.substring("color".length)));}
Magelo.Bar.setState(1,state);};var _currentTheme;var _currentColor;var $this={install:_install,addTheme:function(id,preview){_themes.push({id:id,preview:preview});},getThemes:function(){return _themes;},setTheme:function(newTheme){if(typeof(_currentTheme)!="undefined"){$("#magelo-bar").removeClass(_currentTheme);}
_currentTheme=newTheme.id;$("#magelo-bar").addClass(_currentTheme);_saveState();},getColors:function(){return _colors;},setColor:function(newColor){if(typeof(_currentColor)!="undefined"){$("#magelo-bar").removeClass(_currentColor);}
_currentColor="color"+newColor;$("#magelo-bar").addClass(_currentColor);_saveState();}};return $this;})(jQuery);
Magelo.Bar.QuickAccess=(function($){var _links=[];var _popup=undefined;var _getPopup=function(){if(typeof(_popup)=="undefined"){_popup=new Magelo.Bar.Popup({id:"magelo-bar-quickaccess-popup"});}
return _popup;};var _update=function(){var linkContainer=$('<div></div>');for(var i=0;i<_links.length;++i){var link=_links[i];var a=$('<a id="'+link[0]+'" target="_blank" href="'+link[2]+'">'+link[1]+'</a>');a.appendTo(linkContainer);}
_getPopup().setContent(linkContainer);};var _install=function(){var ui=$('<span class="magelo-bar-dock-button magelo-bar-dock-quick-access"><span></span></span>');ui.click(function(){var b=ui;Magelo.Bar.QuickAccess.appendTo(b.parent());var pos=Magelo.Bar.UI.positionTo(b.parent(),b.parents('.magelo-bar-content'));Magelo.Bar.QuickAccess.toggle({bottom:pos.top+b.parent().height()-3,left:b.position().left});});Magelo.Bar.QuickAccess.bind("popupOpened",function(){ui.addClass("opened");});Magelo.Bar.QuickAccess.bind("popupClosed",function(){ui.removeClass("opened");});Magelo.Bar.add(ui);var bundle=Magelo.Locales.getBundle("wow","webbar");Magelo.Bar.addTooltip(ui,bundle.get("quickaccess.tooltip"));};var $this={install:_install,addLink:function(id,title,link){_links.push([id,title,link]);},appendTo:function(){_getPopup().appendTo.apply(_popup,arguments);},bind:function(){_getPopup().bind.apply(_popup,arguments);},unbind:function(){_getPopup().unbind.apply(_popup,arguments);},toggle:function(){_update();_getPopup().toggle.apply(_popup,arguments);},show:function(){_update();_getPopup().show.apply(_popup,arguments);}};return $this;})(jQuery);
if(typeof(Magelo)=="undefined")Magelo={};if(typeof(Magelo.Bar)=="undefined")Magelo.Bar={};Magelo.Bar.XDS=(function(){var interval_id,last_hash,last_location,cache_bust=1,attached_callback,window=this;return{postMessage:function(target,message,target_url){if(!target_url){target_url="*";}
target=target||parent;if(false&&window.postMessage){target_url=target_url.replace(/([^:]+:\/\/[^\/]+).*/,'$1');try{target.postMessage(message,target_url.replace(/([^:]+:\/\/[^\/]+).*/,'$1'));}catch(e){for(var i=0;i<target.frames.length;++i){try{target.frames[i].setTimeout('parent.postMessage("'+message+'", "'+target_url+'");',0);return;}catch(ex){}}}}else if(target_url){var newHash='#'+(+new Date)+(cache_bust++)+'&'+message;if(target_url=="*"){for(var i=0;i<target.frames.length;++i){try{var location=target.frames[i].location;var candidate=location.hash.replace(/^#?/,"");if(candidate.indexOf("http")!=0){continue;}
target_url=candidate;target.frames[i].setTimeout('parent.location = "'+target_url.replace(/#.*$/,'')+newHash+'"',0);return;}catch(ex){}}}
target.location=target_url.replace(/#.*$/,'')+newHash;}},receiveMessage:function(callback,source_origin,target_receiver){if(typeof(target_receiver)!="undefined"){var f=window["receiver:"+target_receiver];if(typeof(f)=="undefined"){f=document.createElement("iframe");f.style.display="none";f.src=target_receiver+"#"+document.location;document.body.appendChild(f);window["receiver:"+target_receiver]=f;}}
if(false&&window['postMessage']){if(callback){attached_callback=function(e){if((typeof source_origin==='string'&&e.origin!==source_origin&&source_origin!=="*")||(Object.prototype.toString.call(source_origin)==="[object Function]"&&source_origin(e.origin)===!1)){return!1;}
callback(e);};}
if(window['addEventListener']){window[callback?'addEventListener':'removeEventListener']('message',attached_callback,!1);}else{window[callback?'attachEvent':'detachEvent']('onmessage',attached_callback);}}else{interval_id&&clearInterval(interval_id);interval_id=null;if(callback){last_location=document.location.href;interval_id=setInterval(function(){var loc=document.location;var hash=loc.hash,re=/^#?\d+&/;if(hash!==last_hash&&re.test(hash)){window.location.replace(last_location);loc=last_location;last_hash=hash;callback({data:hash.replace(re,'')});}
last_location=loc.href;},100);}}}};})();
ThirdPartyLoginProvider=(function($){return function(){var _origin="http://www."+Magelo.domain;var $this={initiate:function(){var wnd=window.open(_origin+"/thirdparty_login.jspa","magelologin","width=550, height=340");wnd.focus();},logout:function(){$.ajax({url:_origin+"/logout.json",dataType:"jsonp",success:function(){$($this).trigger("logout-succeeded");}});}};Magelo.Bar.XDS.receiveMessage(function(msg){if(msg.data=="magelo::login-succeeded"){$($this).trigger("login-succeeded");}else{if(console){console.log("Unhandled event : "+msg.data);}}},"*",_origin+"/en/blank.jspa");return $this;};})(jQuery);
Magelo.Bar.MyCharacter=(function($){var _defaultText;var _view;var _button;var _buttonLabel;var _repository;var _characters;var popup;var list;var _events;var _preBind=[];var _myCharacterId=0;var _myCharacter;var getSelectedCharacter=function(){if(typeof(_myCharacter)!="undefined"){if(_myCharacter.id==_myCharacterId){return _myCharacter;}}
if(typeof(_characters)!="undefined"){for(var i=0;i<_characters.length;++i){if(_characters[i].id==_myCharacterId){return _characters[i];}}}
return undefined;};var selectCharacter=function(id){_myCharacterId=id;_events.trigger("character-selected",{"character":{id:_myCharacterId}});};var openCharacterSelectionFrame=function(){if(!Magelo.Bar.isLoggedIn()){Magelo.Bar.login();return;}
if(typeof(_characters)=="undefined"){_characters=[];_events.one("character-list-updated",arguments.callee);_requestMyCharacters();return;}
if(_characters.length==0){return;}
if(typeof(popup)=="undefined"){popup=new Magelo.Bar.Popup({id:"magelo-bar-mycharacters-frame"});popup.appendTo(_view);list=$('<div class="magelo-bar-mycharacters-list"></div>');popup.setContent(list);popup.bind("popupOpened",function(){_view.addClass("opened");});popup.bind("popupClosed",function(){_view.removeClass("opened");});}
list.empty();for(var i=0;i<_characters.length;++i){var c=_characters[i];var el=$('<span class="magelo-bar-mc-item">'+'<img src="'+c.image+'" class="portrait">'+'<span class="name">'+c.name+'</span>'+'<span class="server">'+c.server+'</span>'+'</span>');el.click(function(){var id=c.id;return function(){return selectCharacter(id);};}());el.appendTo(list);}
var pos=Magelo.Bar.UI.positionTo(_view.parent(),_view.parents('.magelo-bar-content'));popup.show({bottom:pos.top+_view.parent().height()-3,left:0});if(_characters.length>0){list.css("height",(52*Math.min(4,_characters.length))+"px");list.jScrollPane({animateTo:true,animateInterval:50,animateStep:5,showArrows:true,scrollbarWidth:15,dragMinHeight:32});}};var updateView=function(){if(typeof(popup)!="undefined"){popup.hide();popup=undefined;}
_buttonLabel.empty();if(_myCharacterId==0){_view.removeClass("selected");_buttonLabel.html(_defaultText);}else{_view.addClass("selected");var c=getSelectedCharacter();_buttonLabel.html(c?c.name:"");}};var _requestMyCharacters=function(){if(Magelo.Bar.isLoggedIn()){if(typeof(_repository)!="undefined"){_repository.requestCharactersList(_handleMyCharacters);}}};var _requestMyCharacter=function(){_myCharacter=undefined;if(Magelo.Bar.isLoggedIn()&&_myCharacterId!=0){if(typeof(_repository)!="undefined"){_repository.requestCharacterDetails(_myCharacterId,_handleMyCharacter);}}};var _handleMyCharacters=function(data){_characters=data;_events.trigger("character-list-updated");};var _handleMyCharacter=function(data){_myCharacter=data;_events.trigger("character-info-updated",{"character":_myCharacter});};var _loadState=function(){var state=Magelo.Bar.getState(_repository.getStateId());if(Magelo.Bar.isLoggedIn()&&state){selectCharacter(state);}};var _saveState=function(){Magelo.Bar.setState(_repository.getStateId(),_myCharacterId);};var $this={install:function(options){var bundle=Magelo.Locales.getBundle("wow","webbar");_repository=options.repository;_view=$('<div class="magelo-bar-mycharacters"></div>');_events=_view;_button=$('<span class="magelo-bar-mycharacter-select">'+'<span class="magelo-bar-mycharacter-select-icon"><span></span></span>'+'<span class="magelo-bar-mycharacter-select-label"></span></span>');_button.appendTo(_view);_unselectButton=$('<span class="magelo-bar-mycharacter-unselect"></span>');_unselectButton.appendTo(_view);_buttonLabel=_button.find(".magelo-bar-mycharacter-select-label");_defaultText=bundle.get("mycharacter.select");Magelo.Bar.addTooltip(_button,bundle.get("mycharacter.select.tooltip"),_button.find(".magelo-bar-mycharacter-select-icon"));Magelo.Bar.addTooltip(_unselectButton,bundle.get("mycharacter.unselect.tooltip"));updateView();_button.click(openCharacterSelectionFrame);_unselectButton.click(function(){selectCharacter(0);});_events.bind("character-selected",updateView);_events.bind("character-info-updated",updateView);_events.bind("character-list-updated",updateView);_events.bind("character-selected",_requestMyCharacter);_events.bind("character-selected",_saveState);Magelo.Bar.add(_view);Magelo.Bar.bind("state-update",_loadState);if(_preBind.length>0){for(var i=0;i<_preBind.length;++i){_events.bind.apply(_events,_preBind[i]);}}
_preBind=undefined;},bind:function(){if(typeof(_events)=="undefined"){_preBind.push(arguments);}else{_events.bind.apply(_events,arguments);}},unbind:function(){_events.unbind.apply(_events,arguments);},getCharacter:function(){return _myCharacter;}};return $this;})(jQuery);
MageloBootstrap=(function($){var OptionTooltipAdapter=0x00000001;var OptionTooltipThirdPartyAdapters=0x00000002;var OptionTooltipSkinBlack=0x00000100;var OptionWebbar=0x00010000;var _configure=function(){$("script").each(function(){if(this.src.indexOf("magelo-bar.js")==-1){return;}
var re=/http:\/\/www\.([a-z]{0,5}magelo[cdn]{0,3}\.com)\/pack\/([a-z]{2,5})\/(([a-z]{2})\/)?magelo-bar\.js(\?[^#]*)?(#.*)?/;var m=re.exec(this.src);if(m){var _origin=m[1];var channel=m[2];var lang=m[4];var qs=m[5];var hash=m[6];var localeSupport={"eq":["en"],"wow":["en","fr","de","ru","tw","cn"],"rift":["en","fr","de","ru"],"swtor":["en","fr","de"]};localeCheck:do{for(var i=0;i<localeSupport[channel].length;++i){if(localeSupport[channel][i]==lang){break localeCheck;}}
lang=localeSupport[channel][0];}while(false);Magelo.origin=_origin;Magelo.cdn=_origin.replace("magelo.com","magelocdn.com");Magelo.domain=_origin.replace("magelocdn.com","magelo.com");Magelo.locale=lang;Magelo.channel=channel;Magelo.externalWebsite=true;Magelo.options=0;if(hash){try{Magelo.options=parseInt(hash.substring(1),33);}catch(e){}}}});};var _applyStyleSheet=function(){var st=document.createElement("link");st.rel="stylesheet";st.type="text/css";if(Magelo.Support.CSS3){st.href="http://www."+Magelo.origin+"/pack/magelo-bar-css3.css";}else{st.href="http://www."+Magelo.origin+"/pack/magelo-bar-css2.css";}
document.getElementsByTagName("head")[0].appendChild(st);};var _initialize=function(){$("a.postlink").each(function(){this.href=this.href.replace(/^.*redirect.\/(http:\/\/[a-z]{2,8}.magelo.com.*)/,"$1");});Magelo.DB.configure({locale:Magelo.locale});Magelo.Locales.configure({locale:Magelo.locale});Magelo.ToolTip.configure({locale:Magelo.locale});Magelo.ToolTip.Adapters.Magelo.enable();if((Magelo.options&OptionTooltipThirdPartyAdapters)!=0){switch(Magelo.channel){case"eq":Magelo.ToolTip.Adapters.Lucy.enable();break;case"wow":Magelo.ToolTip.Adapters.WowAmory.enable();Magelo.ToolTip.Adapters.Thottbot.enable();Magelo.ToolTip.Adapters.Wowhead.enable();break;case"rift":Magelo.ToolTip.Adapters.RiftYG.enable();Magelo.ToolTip.Adapters.RiftZam.enable();break;}}
if((Magelo.options&OptionTooltipSkinBlack)!=0){Magelo.ToolTip.configure({uiClass:"black "+Magelo.channel});}else{Magelo.ToolTip.configure({uiClass:Magelo.channel});}
switch(Magelo.channel){case"eq":Magelo.AutoComplete.install({searchEngine:new Magelo.Bar.EQSearchEngine()});break;case"wow":Magelo.AutoComplete.install({searchEngine:new Magelo.Bar.WOWSearchEngine()});break;case"rift":Magelo.AutoComplete.install({searchEngine:new Magelo.Bar.RiftSearchEngine()});break;case"swtor":Magelo.AutoComplete.install({searchEngine:new Magelo.Bar.TorSearchEngine()});break;}};var _initializeWebbar=function(){Magelo.Bar.install();switch(Magelo.channel){case"eq":Magelo.Bar.Search.install({searchEngine:new Magelo.Bar.EQSearchEngine()});Magelo.Bar.addSeparator();Magelo.Bar.MyCharacter.install({repository:new Magelo.Bar.EQCharacterRepository()});Magelo.ToolTip.addContentFilter(Magelo.Bar.EQToolTipContextualizingFilter);break;case"wow":Magelo.Bar.Search.install({language:Magelo.locale,searchEngine:new Magelo.Bar.WOWSearchEngine()});Magelo.Bar.addSeparator();Magelo.Bar.MyCharacter.install({repository:new Magelo.Bar.WOWCharacterRepository()});Magelo.ToolTip.addContentFilter("wow:dualttp",new Magelo.Bar.WOWToolTipContextualizingFilter());break;case"rift":Magelo.Bar.Search.install({language:Magelo.locale,searchEngine:new Magelo.Bar.RiftSearchEngine()});Magelo.Bar.addSeparator();Magelo.Bar.MyCharacter.install({repository:new Magelo.Bar.RiftCharacterRepository()});Magelo.ToolTip.addContentFilter("rift:dualttp",new Magelo.Bar.RiftToolTipContextualizingFilter());break;case"swtor":Magelo.Bar.Search.install({language:Magelo.locale,searchEngine:new Magelo.Bar.TorSearchEngine()});Magelo.Bar.addSeparator();break;}
Magelo.Bar.addSeparator();Magelo.Bar.QuickAccess.install();Magelo.Bar.ThemeManager.install();Magelo.Bar.setLoginProvider(new ThirdPartyLoginProvider());for(var i=0;i<3;++i){Magelo.Bar.ThemeManager.addTheme("theme-"+i,"http://www."+Magelo.cdn+"/im"+"ages/website/shared/bar/themes/common/theme"+i+"/preview.png");}
switch(Magelo.channel){case"eq":for(var i=0;i<21;++i){Magelo.Bar.ThemeManager.addTheme("theme-eq-"+i,"http://www."+Magelo.cdn+"/im"+"ages/website/shared/bar/themes/eq/theme"+i+"/preview.png");}
break;case"wow":for(var i=0;i<21;++i){Magelo.Bar.ThemeManager.addTheme("theme-wow-"+i,"http://www."+Magelo.cdn+"/im"+"ages/website/shared/bar/themes/wow/theme"+i+"/preview.png");}
break;case"rift":for(var i=0;i<9;++i){Magelo.Bar.ThemeManager.addTheme("theme-rift-"+i,"http://www."+Magelo.cdn+"/im"+"ages/website/shared/bar/themes/rift/theme"+i+"/preview.png");}
break;case"swtor":for(var i=0;i<9;++i){Magelo.Bar.ThemeManager.addTheme("theme-swtor-"+i,"http://www."+Magelo.cdn+"/im"+"ages/website/shared/bar/themes/tor/theme"+i+"/preview.png");}
break;}
var bundle=Magelo.Locales.getBundle("wow","webbar");var qa=Magelo.Bar.QuickAccess;switch(Magelo.channel){case"eq":qa.addLink("magelo-bar-qa-forums",bundle.get("quickaccess.forum"),"http://eq."+Magelo.domain+"/forum/forums.jspa");qa.addLink("magelo-bar-qa-news",bundle.get("quickaccess.news"),"http://eq."+Magelo.domain+"/latest_news.jspa?channel=eq");qa.addLink("magelo-bar-qa-mycharacters",bundle.get("quickaccess.my-characters"),"http://eq."+Magelo.domain+"/characters.jspa");qa.addLink("magelo-bar-qa-inventory",bundle.get("quickaccess.inventory"),"http://eq."+Magelo.domain+"/inventory.jspa");break;case"wow":qa.addLink("magelo-bar-qa-forums",bundle.get("quickaccess.forum"),"http://wow."+Magelo.domain+"/"+Magelo.locale+"/forum/forums.jspa");qa.addLink("magelo-bar-qa-news",bundle.get("quickaccess.news"),"http://wow."+Magelo.domain+"/"+Magelo.locale+"/latest_news.jspa?channel=wow");qa.addLink("magelo-bar-qa-mycharacters",bundle.get("quickaccess.my-characters"),"http://wow."+Magelo.domain+"/"+Magelo.locale+"/characters.jspa");qa.addLink("magelo-bar-qa-gearplanner",bundle.get("quickaccess.gear-planner"),"http://wow."+Magelo.domain+"/"+Magelo.locale+"/gear_planner.jspa");qa.addLink("magelo-bar-qa-inventory",bundle.get("quickaccess.inventory"),"http://wow."+Magelo.domain+"/"+Magelo.locale+"/inventory.jspa");break;case"rift":qa.addLink("magelo-bar-qa-forums",bundle.get("quickaccess.forum"),"http://rift."+Magelo.domain+"/"+Magelo.locale+"/forum/forums.jspa");qa.addLink("magelo-bar-qa-news",bundle.get("quickaccess.news"),"http://rift."+Magelo.domain+"/"+Magelo.locale+"/latest_news.jspa?channel=rift");qa.addLink("magelo-bar-qa-talentcalc",bundle.get("quickaccess.talentcalc"),"http://rift."+Magelo.domain+"/"+Magelo.locale+"/soultree.jspa");break;case"swtor":qa.addLink("magelo-bar-qa-forums",bundle.get("quickaccess.forum"),"http://swtor."+Magelo.domain+"/"+Magelo.locale+"/forum/forums.jspa");qa.addLink("magelo-bar-qa-news",bundle.get("quickaccess.news"),"http://swtor."+Magelo.domain+"/"+Magelo.locale+"/latest_news.jspa?channel=rift");qa.addLink("magelo-bar-qa-talentcalc",bundle.get("quickaccess.talentcalc"),"http://swtor."+Magelo.domain+"/"+Magelo.locale+"/soultree.jspa");break;}
Magelo.Bar.show();};return function(){try{if(typeof(document.body)=="undefined"){setTimeout(arguments.callee,20);return;}
_configure();_applyStyleSheet();_initialize();if(Magelo.options&OptionWebbar){Magelo.Locales.get("wow","webbar",function(){_initializeWebbar();});}}catch(e){if(typeof(console)!="undefined"){console.log(e);}}};})(jQuery);jQuery(MageloBootstrap);
})(jQuery.noConflict(true));

