/*
 * jQuery JavaScript Library v1.3.2
 * http://jquery.com/
 *
 * Copyright (c) 2009 John Resig
 * Dual licensed under the MIT and GPL licenses.
 * http://docs.jquery.com/License
 *
 * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
 * Revision: 6246
 */
(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
/*
 * Sizzle CSS Selector Engine - v0.9.3
 *  Copyright 2009, The Dojo Foundation
 *  Released under the MIT, BSD, and GPL Licenses.
 *  More information: http://sizzlejs.com/
 */
(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<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>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();;

var Drupal = Drupal || { 'settings': {}, 'behaviors': {}, 'themes': {}, 'locale': {} };

/**
 * Set the variable that indicates if JavaScript behaviors should be applied
 */
Drupal.jsEnabled = document.getElementsByTagName && document.createElement && document.createTextNode && document.documentElement && document.getElementById;

/**
 * Attach all registered behaviors to a page element.
 *
 * Behaviors are event-triggered actions that attach to page elements, enhancing
 * default non-Javascript UIs. Behaviors are registered in the Drupal.behaviors
 * object as follows:
 * @code
 *    Drupal.behaviors.behaviorName = function () {
 *      ...
 *    };
 * @endcode
 *
 * Drupal.attachBehaviors is added below to the jQuery ready event and so
 * runs on initial page load. Developers implementing AHAH/AJAX in their
 * solutions should also call this function after new page content has been
 * loaded, feeding in an element to be processed, in order to attach all
 * behaviors to the new content.
 *
 * Behaviors should use a class in the form behaviorName-processed to ensure
 * the behavior is attached only once to a given element. (Doing so enables
 * the reprocessing of given elements, which may be needed on occasion despite
 * the ability to limit behavior attachment to a particular element.)
 *
 * @param context
 *   An element to attach behaviors to. If none is given, the document element
 *   is used.
 */
Drupal.attachBehaviors = function(context) {
  context = context || document;
  if (Drupal.jsEnabled) {
    // Execute all of them.
    jQuery.each(Drupal.behaviors, function() {
      this(context);
    });
  }
};

/**
 * Encode special characters in a plain-text string for display as HTML.
 */
Drupal.checkPlain = function(str) {
  str = String(str);
  var replace = { '&': '&amp;', '"': '&quot;', '<': '&lt;', '>': '&gt;' };
  for (var character in replace) {
    var regex = new RegExp(character, 'g');
    str = str.replace(regex, replace[character]);
  }
  return str;
};

/**
 * Translate strings to the page language or a given language.
 *
 * See the documentation of the server-side t() function for further details.
 *
 * @param str
 *   A string containing the English string to translate.
 * @param args
 *   An object of replacements pairs to make after translation. Incidences
 *   of any key in this array are replaced with the corresponding value.
 *   Based on the first character of the key, the value is escaped and/or themed:
 *    - !variable: inserted as is
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)
 *    - %variable: escape text and theme as a placeholder for user-submitted
 *      content (checkPlain + Drupal.theme('placeholder'))
 * @return
 *   The translated string.
 */
Drupal.t = function(str, args) {
  // Fetch the localized version of the string.
  if (Drupal.locale.strings && Drupal.locale.strings[str]) {
    str = Drupal.locale.strings[str];
  }

  if (args) {
    // Transform arguments before inserting them
    for (var key in args) {
      switch (key.charAt(0)) {
        // Escaped only
        case '@':
          args[key] = Drupal.checkPlain(args[key]);
        break;
        // Pass-through
        case '!':
          break;
        // Escaped and placeholder
        case '%':
        default:
          args[key] = Drupal.theme('placeholder', args[key]);
          break;
      }
      str = str.replace(key, args[key]);
    }
  }
  return str;
};

/**
 * Format a string containing a count of items.
 *
 * This function ensures that the string is pluralized correctly. Since Drupal.t() is
 * called by this function, make sure not to pass already-localized strings to it.
 *
 * See the documentation of the server-side format_plural() function for further details.
 *
 * @param count
 *   The item count to display.
 * @param singular
 *   The string for the singular case. Please make sure it is clear this is
 *   singular, to ease translation (e.g. use "1 new comment" instead of "1 new").
 *   Do not use @count in the singular string.
 * @param plural
 *   The string for the plural case. Please make sure it is clear this is plural,
 *   to ease translation. Use @count in place of the item count, as in "@count
 *   new comments".
 * @param args
 *   An object of replacements pairs to make after translation. Incidences
 *   of any key in this array are replaced with the corresponding value.
 *   Based on the first character of the key, the value is escaped and/or themed:
 *    - !variable: inserted as is
 *    - @variable: escape plain text to HTML (Drupal.checkPlain)
 *    - %variable: escape text and theme as a placeholder for user-submitted
 *      content (checkPlain + Drupal.theme('placeholder'))
 *   Note that you do not need to include @count in this array.
 *   This replacement is done automatically for the plural case.
 * @return
 *   A translated string.
 */
Drupal.formatPlural = function(count, singular, plural, args) {
  var args = args || {};
  args['@count'] = count;
  // Determine the index of the plural form.
  var index = Drupal.locale.pluralFormula ? Drupal.locale.pluralFormula(args['@count']) : ((args['@count'] == 1) ? 0 : 1);

  if (index == 0) {
    return Drupal.t(singular, args);
  }
  else if (index == 1) {
    return Drupal.t(plural, args);
  }
  else {
    args['@count['+ index +']'] = args['@count'];
    delete args['@count'];
    return Drupal.t(plural.replace('@count', '@count['+ index +']'));
  }
};

/**
 * Generate the themed representation of a Drupal object.
 *
 * All requests for themed output must go through this function. It examines
 * the request and routes it to the appropriate theme function. If the current
 * theme does not provide an override function, the generic theme function is
 * called.
 *
 * For example, to retrieve the HTML that is output by theme_placeholder(text),
 * call Drupal.theme('placeholder', text).
 *
 * @param func
 *   The name of the theme function to call.
 * @param ...
 *   Additional arguments to pass along to the theme function.
 * @return
 *   Any data the theme function returns. This could be a plain HTML string,
 *   but also a complex object.
 */
Drupal.theme = function(func) {
  for (var i = 1, args = []; i < arguments.length; i++) {
    args.push(arguments[i]);
  }

  return (Drupal.theme[func] || Drupal.theme.prototype[func]).apply(this, args);
};

/**
 * Parse a JSON response.
 *
 * The result is either the JSON object, or an object with 'status' 0 and 'data' an error message.
 */
Drupal.parseJson = function (data) {
  if ((data.substring(0, 1) != '{') && (data.substring(0, 1) != '[')) {
    return { status: 0, data: data.length ? data : Drupal.t('Unspecified error') };
  }
  return eval('(' + data + ');');
};

/**
 * Freeze the current body height (as minimum height). Used to prevent
 * unnecessary upwards scrolling when doing DOM manipulations.
 */
Drupal.freezeHeight = function () {
  Drupal.unfreezeHeight();
  var div = document.createElement('div');
  $(div).css({
    position: 'absolute',
    top: '0px',
    left: '0px',
    width: '1px',
    height: $('body').css('height')
  }).attr('id', 'freeze-height');
  $('body').append(div);
};

/**
 * Unfreeze the body height
 */
Drupal.unfreezeHeight = function () {
  $('#freeze-height').remove();
};

/**
 * Wrapper around encodeURIComponent() which avoids Apache quirks (equivalent of
 * drupal_urlencode() in PHP). This function should only be used on paths, not
 * on query string arguments.
 */
Drupal.encodeURIComponent = function (item, uri) {
  uri = uri || location.href;
  item = encodeURIComponent(item).replace(/%2F/g, '/');
  return (uri.indexOf('?q=') != -1) ? item : item.replace(/%26/g, '%2526').replace(/%23/g, '%2523').replace(/\/\//g, '/%252F');
};

/**
 * Get the text selection in a textarea.
 */
Drupal.getSelection = function (element) {
  if (typeof(element.selectionStart) != 'number' && document.selection) {
    // The current selection
    var range1 = document.selection.createRange();
    var range2 = range1.duplicate();
    // Select all text.
    range2.moveToElementText(element);
    // Now move 'dummy' end point to end point of original range.
    range2.setEndPoint('EndToEnd', range1);
    // Now we can calculate start and end points.
    var start = range2.text.length - range1.text.length;
    var end = start + range1.text.length;
    return { 'start': start, 'end': end };
  }
  return { 'start': element.selectionStart, 'end': element.selectionEnd };
};

/**
 * Build an error message from ahah response.
 */
Drupal.ahahError = function(xmlhttp, uri) {
  if (xmlhttp.status == 200) {
    if (jQuery.trim($(xmlhttp.responseText).text())) {
      var message = Drupal.t("An error occurred. \n@uri\n@text", {'@uri': uri, '@text': xmlhttp.responseText });
    }
    else {
      var message = Drupal.t("An error occurred. \n@uri\n(no information available).", {'@uri': uri, '@text': xmlhttp.responseText });
    }
  }
  else {
    var message = Drupal.t("An HTTP error @status occurred. \n@uri", {'@uri': uri, '@status': xmlhttp.status });
  }
  return message;
}

// Global Killswitch on the <html> element
if (Drupal.jsEnabled) {
  // Global Killswitch on the <html> element
  $(document.documentElement).addClass('js');
  // 'js enabled' cookie
  document.cookie = 'has_js=1; path=/';
  // Attach all behaviors.
  $(document).ready(function() {
    Drupal.attachBehaviors(this);
  });
}

/**
 * The default themes.
 */
Drupal.theme.prototype = {

  /**
   * Formats text for emphasized display in a placeholder inside a sentence.
   *
   * @param str
   *   The text to format (plain-text).
   * @return
   *   The formatted text (html).
   */
  placeholder: function(str) {
    return '<em>' + Drupal.checkPlain(str) + '</em>';
  }
};
;

Drupal.behaviors.custom_search = function (context) {

  if (!Drupal.settings.custom_search.solr) {
    // Check if the search box is not empty on submit
    $('form.search-form', context).submit(function(){
      var box = $(this).find('input.custom-search-box');
      if (box.val() != undefined && (box.val() == '' || box.val() == $(this).find('input.default-text').val())) {
        $(this).find('input.custom-search-box').addClass('error');
        return false;
      }
      // If basic search is hidden, copy or value to the keys
      if ($(this).find('#edit-keys').parents('div.element-invisible').attr('class') == 'element-invisible') {
        $(this).find('#edit-keys').val($(this).find('#edit-or').val());
        $(this).find('#edit-or').val('');
      }
      return true;
    });
  }

  // Search from target
  $('form.search-form').attr('target', Drupal.settings.custom_search.form_target);

  // Clear default text on focus, and put it back on blur. Also displays Popup.
  $('input.custom-search-box', context)
    .blur(function(e){
      $this = $(this);
      $parentForm = $this.parents('form');
      if ($this.val() == '') {
        $this.addClass('custom-search-default-value');
        $this.val($parentForm.find('input.default-text').val());
      }
    })
    .bind('click focus', function(e){
      $this = $(this);
      $parentForm = $this.parents('form');
      if ($this.val() == $parentForm.find('input.default-text').val()) $this.val('');
      $this.removeClass('custom-search-default-value');
      // check if there's something in the popup and displays it
      var popup = $parentForm.find('fieldset.custom_search-popup');
      if (popup.find('input,select').length && !popup.hasClass('opened')) popup.fadeIn().addClass('opened');
      e.stopPropagation();
    }
  );
  $(document).bind('click focus', function(){
    $('fieldset.custom_search-popup').hide().removeClass('opened');
  });

  // Handle checkboxes
  $('.custom-search-selector input:checkbox', context).each(function(){
    var el = $(this);
    if (el.val() == 'c-all') {
      el.change(function(){
        $(this).parents('.custom-search-selector').find('input:checkbox[value!=c-all]').attr('checked', false);
      });
    }
    else {
      if (el.val().substr(0,2) == 'c-') {
        el.change(function(){
          $('.custom-search-selector input:checkbox').each(function(){
            if ($(this).val().substr(0,2) == 'o-') $(this).attr('checked', false);
          });
          $(this).parents('.custom-search-selector').find('input:checkbox[value=c-all]').attr('checked', false);
        });
      } else {
        el.change(function(){
          $(this).parents('.custom-search-selector').find('input:checkbox[value!='+el.val()+']').attr('checked', false);
        });
      }
    }
  });

  // Reselect types and terms in advanced search
  var edit_keys = $('#edit-keys').val();
  if(edit_keys) {
    // types
    var pos = edit_keys.indexOf('type:');
    if (pos) {
      var pos2 = edit_keys.indexOf(' ',pos);
      if (pos2==-1) pos2 = edit_keys.length;
      var types = edit_keys.substring(pos+5,pos2);
      types = types.split(',');
      for (var i in types) {
        $('.search-form input:checkbox[value='+types[i]+']').attr('checked', true);
      }
    }
    // terms
    var pos = edit_keys.indexOf('category:');
    if (pos) {
      var pos2 = edit_keys.indexOf(' ',pos);
      if (pos2==-1) pos2 = edit_keys.length;
      var terms = edit_keys.substring(pos+9,pos2);
      terms = terms.split(',');
      for (var i in terms) {
        $('.search-form option[value='+terms[i]+']').attr('selected', true);
      }
    }
  }

  var popup = $('fieldset.custom_search-popup:not(.custom_search-processed)', context).addClass("custom_search-processed");
  popup.click(function(e){
    e.stopPropagation();
  })
  popup.append('<a class="custom_search-popup-close" href="#">' + Drupal.t('Close') + '</a>');
  $('a.custom_search-popup-close').click(function(e){
    $('fieldset.custom_search-popup.opened').hide().removeClass('opened');
    e.preventDefault();
  });

}
;
/**
 * jQuery-Plugin "preloadCssImages"
 * by Scott Jehl, scott@filamentgroup.com
 * http://www.filamentgroup.com
 * reference article: http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/
 * demo page: http://www.filamentgroup.com/examples/preloadImages/index_v2.php
 * 
 * Copyright (c) 2008 Filament Group, Inc
 * Dual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.
 *
 * Version: 5.0, 10.31.2008
 * Changelog:
 * 	02.20.2008 initial Version 1.0
 *    06.04.2008 Version 2.0 : removed need for any passed arguments. Images load from any and all directories.
 *    06.21.2008 Version 3.0 : Added options for loading status. Fixed IE abs image path bug (thanks Sam Pohlenz).
 *    07.24.2008 Version 4.0 : Added support for @imported CSS (credit: http://marcarea.com/). Fixed support in Opera as well. 
 *    10.31.2008 Version: 5.0 : Many feature and performance enhancements from trixta
 * --------------------------------------------------------------------
 */

;jQuery.preloadCssImages = function(settings){
	settings = jQuery.extend({
		statusTextEl: null,
		statusBarEl: null,
		errorDelay: 999, // handles 404-Errors in IE
		simultaneousCacheLoading: 2
	}, settings);
	var allImgs = [],
		loaded = 0,
		imgUrls = [],
		thisSheetRules,	
		errorTimer;
	
	function onImgComplete(){
		clearTimeout(errorTimer);
		if (imgUrls && imgUrls.length && imgUrls[loaded]) {
			loaded++;
			if (settings.statusTextEl) {
				var nowloading = (imgUrls[loaded]) ? 
					'Now Loading: <span>' + imgUrls[loaded].split('/')[imgUrls[loaded].split('/').length - 1] : 
					'Loading complete'; // wrong status-text bug fixed
				jQuery(settings.statusTextEl).html('<span class="numLoaded">' + loaded + '</span> of <span class="numTotal">' + imgUrls.length + '</span> loaded (<span class="percentLoaded">' + (loaded / imgUrls.length * 100).toFixed(0) + '%</span>) <span class="currentImg">' + nowloading + '</span></span>');
			}
			if (settings.statusBarEl) {
				var barWidth = jQuery(settings.statusBarEl).width();
				jQuery(settings.statusBarEl).css('background-position', -(barWidth - (barWidth * loaded / imgUrls.length).toFixed(0)) + 'px 50%');
			}
			loadImgs();
		}
	}
	
	function loadImgs(){
		//only load 1 image at the same time / most browsers can only handle 2 http requests, 1 should remain for user-interaction (Ajax, other images, normal page requests...)
		// otherwise set simultaneousCacheLoading to a higher number for simultaneous downloads
		if(imgUrls && imgUrls.length && imgUrls[loaded]){
			var img = new Image(); //new img obj
			img.src = imgUrls[loaded];	//set src either absolute or rel to css dir
			if(!img.complete){
				jQuery(img).bind('error load onreadystatechange', onImgComplete);
			} else {
				onImgComplete();
			}
			errorTimer = setTimeout(onImgComplete, settings.errorDelay); // handles 404-Errors in IE
		}
	}
	
	function parseCSS(sheets, urls) {
		var w3cImport = false,
			imported = [],
			importedSrc = [],
			baseURL;
		var sheetIndex = sheets.length;
		while(sheetIndex--){//loop through each stylesheet
			
			var cssPile = '';//create large string of all css rules in sheet
			
			if(urls && urls[sheetIndex]){
				baseURL = urls[sheetIndex];
			} else {
				var csshref = (sheets[sheetIndex].href) ? sheets[sheetIndex].href : 'window.location.href';
				var baseURLarr = csshref.split('/');//split href at / to make array
				baseURLarr.pop();//remove file path from baseURL array
				baseURL = baseURLarr.join('/');//create base url for the images in this sheet (css file's dir)
				if (baseURL) {
					baseURL += '/'; //tack on a / if needed
				}
			}
			if(sheets[sheetIndex].cssRules || sheets[sheetIndex].rules){
				thisSheetRules = (sheets[sheetIndex].cssRules) ? //->>> http://www.quirksmode.org/dom/w3c_css.html
					sheets[sheetIndex].cssRules : //w3
					sheets[sheetIndex].rules; //ie 
				var ruleIndex = thisSheetRules.length;
				while(ruleIndex--){
					if(thisSheetRules[ruleIndex].style && thisSheetRules[ruleIndex].style.cssText){
						var text = thisSheetRules[ruleIndex].style.cssText;
						if(text.toLowerCase().indexOf('url') != -1){ // only add rules to the string if you can assume, to find an image, speed improvement
							cssPile += text; // thisSheetRules[ruleIndex].style.cssText instead of thisSheetRules[ruleIndex].cssText is a huge speed improvement
						}
					} else if(thisSheetRules[ruleIndex].styleSheet) {
						imported.push(thisSheetRules[ruleIndex].styleSheet);
						w3cImport = true;
					}
					
				}
			}
			//parse cssPile for image urls
			var tmpImage = cssPile.match(/[^\("]+\.(gif|jpg|jpeg|png)/g);//reg ex to get a string of between a "(" and a ".filename" / '"' for opera-bugfix
			if(tmpImage){
				var i = tmpImage.length;
				while(i--){ // handle baseUrl here for multiple stylesheets in different folders bug
					var imgSrc = (tmpImage[i].charAt(0) == '/' || tmpImage[i].match('://')) ? // protocol-bug fixed
						tmpImage[i] : 
						baseURL + tmpImage[i];
					
					if(jQuery.inArray(imgSrc, imgUrls) == -1){
						imgUrls.push(imgSrc);
					}
				}
			}
			
			if(!w3cImport && sheets[sheetIndex].imports && sheets[sheetIndex].imports.length) {
				for(var iImport = 0, importLen = sheets[sheetIndex].imports.length; iImport < importLen; iImport++){
					var iHref = sheets[sheetIndex].imports[iImport].href;
					iHref = iHref.split('/');
					iHref.pop();
					iHref = iHref.join('/');
					if (iHref) {
						iHref += '/'; //tack on a / if needed
					}
					var iSrc = (iHref.charAt(0) == '/' || iHref.match('://')) ? // protocol-bug fixed
						iHref : 
						baseURL + iHref;
					
					importedSrc.push(iSrc);
					imported.push(sheets[sheetIndex].imports[iImport]);
				}
				
				
			}
		}//loop
		if(imported.length){
			parseCSS(imported, importedSrc);
			return false;
		}
		var downloads = settings.simultaneousCacheLoading;
		while( downloads--){
			setTimeout(loadImgs, downloads);
		}
	}
	parseCSS(document.styleSheets);
	return imgUrls;
};;
/*
 * jQuery validation plug-in 1.7
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 JÃ¶rn Zaefferer
 *
 * $Id: jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return;}var validator=$.data(this[0],'validator');if(validator){return validator;}validator=new $.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true;});if(validator.settings.submitHandler){this.find("input, button").filter(":submit").click(function(){validator.submitButton=this;});}this.submit(function(event){if(validator.settings.debug)event.preventDefault();function handle(){if(validator.settings.submitHandler){if(validator.submitButton){var hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove();}return false;}return true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false;}return handle();}else{validator.focusInvalid();return false;}});}return validator;},valid:function(){if($(this[0]).is('form')){return this.validate().form();}else{var valid=true;var validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this);});return valid;}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return result;},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,'validator').settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete staticRules[element.name];return existingRules;}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method];});return filtered;}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data);}return data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(""+a.value);},filled:function(a){return!!$.trim(""+a.value);},unchecked:function(a){return!a.checked;}});$.validator=function(options,form){this.settings=$.extend(true,{},$.validator.defaults,options);this.currentForm=form;this.init();};$.validator.format=function(source,params){if(arguments.length==1)return function(){var args=$.makeArray(arguments);args.unshift(source);return $.validator.format.apply(this,args);};if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n);});return source;};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.errorsFor(element).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name in this.submitted)this.element(element);else if(element.parentNode.name in this.submitted)this.element(element.parentNode);},highlight:function(element,errorClass,validClass){$(element).addClass(errorClass).removeClass(validClass);},unhighlight:function(element,errorClass,validClass){$(element).removeClass(errorClass).addClass(validClass);}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.validator.format("Please enter no more than {0} characters."),minlength:$.validator.format("Please enter at least {0} characters."),rangelength:$.validator.format("Please enter a value between {0} and {1} characters long."),range:$.validator.format("Please enter a value between {0} and {1}."),max:$.validator.format("Please enter a value less than or equal to {0}."),min:$.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function delegate(event){var validator=$.data(this[0].form,"validator"),eventType="on"+event.type.replace(/^validate/,"");validator.settings[eventType]&&validator.settings[eventType].call(validator,this[0]);}$(this.currentForm).validateDelegate(":text, :password, :file, select, textarea","focusin focusout keyup",delegate).validateDelegate(":radio, :checkbox, select, option","click",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid();},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name in errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return this.objectLength(this.invalid);},objectLength:function(obj){var count=0;for(var i in obj)count++;return count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return this.size()==0;},size:function(){return this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin");}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var validator=this,rulesCache={};return $([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules()))return false;rulesCache[this.name]=true;return true;});},clean:function(selector){return $(selector)[0];},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0];}var rules=$(element).rules();var dependencyMismatch=false;for(method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return false;}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id
+", check the '"+rule.method+"' method",e);throw e;}}if(dependencyMismatch)return;if(this.objectLength(rules))this.successList.push(element);return true;},customMetaMessage:function(element,method){if(!$.metadata)return;var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method];},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method]);},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined)return arguments[i];}return undefined;},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning: No message defined for "+element.name+"</strong>");},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method),theregex=/\$?\{(\d+)\}/g;if(typeof message=="function"){message=message.call(this,rule.parameters,element);}else if(theregex.test(message)){message=jQuery.format(message.replace(theregex,'{$1}'),rule.parameters);}this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message;},addWrapper:function(toToggle){if(this.settings.wrapper)toToggle=toToggle.add(toToggle.parent(this.settings.wrapper));return toToggle;},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass);this.showLabel(error.element,error.message);}if(this.errorList.length){this.toShow=this.toShow.add(this.containers);}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i]);}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass);}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show();},validElements:function(){return this.currentElements.not(this.invalidElements());},invalidElements:function(){return $(this.errorList).map(function(){return this.element;});},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message);}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();}if(!this.labelContainer.append(label).length)this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element);}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label);}this.toShow=this.toShow.add(label);},errorsFor:function(element){var name=this.idOrName(element);return this.errors().filter(function(){return $(this).attr('for')==name;});},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name);},checkable:function(element){return/radio|checkbox/i.test(element.type);},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(this.checkable(element))return this.findByName(element.name).filter(':checked').length;}return value.length;},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true;},dependTypes:{"boolean":function(param,element){return param;},"string":function(param,element){return!!$(param,element.form).length;},"function":function(param,element){return param(element);}},optional:function(element){return!$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch";},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true;}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();this.formSubmitted=false;}else if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=false;}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:true,message:this.defaultMessage(element,"remote")});}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className);},classRules:function(element){var rules={};var classes=$(element).attr('class');classes&&$.each(classes.split(' '),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this]);}});return rules;},attributeRules:function(element){var rules={};var $element=$(element);for(method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value;}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength;}return rules;},metadataRules:function(element){if(!$.metadata)return{};var meta=$.data(element.form,'validator').settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata();},staticRules:function(element){var rules={};var validator=$.data(element.form,'validator');if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{};}return rules;},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return;}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break;}if(keepRule){rules[prop]=val.param!==undefined?val.param:true;}else{delete rules[prop];}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter;});$.each(['minlength','maxlength','min','max'],function(){if(rules[this]){rules[this]=Number(rules[this]);}});$.each(['rangelength','range'],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])];}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max;}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength;}}if(rules.messages){delete rules.messages;}return rules;},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true;});data=transformed;}return data;},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message!=undefined?message:$.validator.messages[name];if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name));}},methods:{required:function(value,element,param){if(!this.depend(param,element))return"dependency-mismatch";switch(element.nodeName.toLowerCase()){case'select':var val=$(element).val();return val&&val.length>0;case'input':if(this.checkable(element))return this.getLength(value,element)>0;default:return $.trim(value).length>0;}},remote:function(value,element,param){if(this.optional(element))return"dependency-mismatch";var previous=this.previousValue(element);if(!this.settings.messages[element.name])this.settings.messages[element.name]={};previous.originalMessage=this.settings.messages[element.name].remote;this.settings.messages[element.name].remote=previous.message;param=typeof param=="string"&&{url:param}||param;if(previous.old!==value){previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){validator.settings.messages[element.name].remote=previous.originalMessage;var valid=response===true;if(valid){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors();}else{var errors={};var message=(previous.message=response||validator.defaultMessage(element,"remote"));errors[element.name]=$.isFunction(message)?message(value):message;validator.showErrors(errors);}previous.valid=valid;validator.stopRequest(element,valid);}},param));return"pending";}else if(this.pending[element.name]){return"pending";}return previous.valid;},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param;},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param;},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1]);},min:function(value,element,param){return this.optional(element)||value>=param;},max:function(value,element,param){return this.optional(element)||value<=param;},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1]);},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value));},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value);},creditcard:function(value,element){if(this.optional(element))return"dependency-mismatch";if(/[^0-9-]+/.test(value))return false;var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(var n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9)nDigit-=9;}nCheck+=nDigit;bEven=!bEven;}return(nCheck%10)==0;},accept:function(value,element,param){param=typeof param=="string"?param.replace(/,/g,'|'):"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"));},equalTo:function(value,element,param){var target=$(param).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){$(element).valid();});return value==target.val();}}});$.format=$.validator.format;})(jQuery);;(function($){var ajax=$.ajax;var pendingRequests={};$.ajax=function(settings){settings=$.extend(settings,$.extend({},$.ajaxSettings,settings));var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}return(pendingRequests[port]=ajax.apply(this,arguments));}return ajax.apply(this,arguments);};})(jQuery);;(function($){if(!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener){$.each({focus:'focusin',blur:'focusout'},function(original,fix){$.event.special[fix]={setup:function(){this.addEventListener(original,handler,true);},teardown:function(){this.removeEventListener(original,handler,true);},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments);}};function handler(e){e=$.event.fix(e);e.type=fix;return $.event.handle.call(this,e);}});};$.extend($.fn,{validateDelegate:function(delegate,type,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments);}});}});})(jQuery);;
// tipsy, facebook style tooltips for jquery
// version 1.0.0a
// (c) 2008-2010 jason frame [jason@onehackoranother.com]
// releated under the MIT license

(function($) {
    
    function fixTitle($ele) {
        if ($ele.attr('title') || typeof($ele.attr('original-title')) != 'string') {
            $ele.attr('original-title', $ele.attr('title') || '').removeAttr('title');
        }
    }
    
    function Tipsy(element, options) {
        this.$element = $(element);
        this.options = options;
        this.enabled = true;
        fixTitle(this.$element);
    }
    
    Tipsy.prototype = {
        show: function() {
            var title = this.getTitle();
            if (title && this.enabled) {
                var $tip = this.tip();
                
                $tip.find('.tipsy-inner')[this.options.html ? 'html' : 'text'](title);
                $tip[0].className = 'tipsy'; // reset classname in case of dynamic gravity
                $tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).appendTo(document.body);
                
                var pos = $.extend({}, this.$element.offset(), {
                    width: this.$element[0].offsetWidth,
                    height: this.$element[0].offsetHeight
                });
                
                var actualWidth = $tip[0].offsetWidth, actualHeight = $tip[0].offsetHeight;
                var gravity = (typeof this.options.gravity == 'function')
                                ? this.options.gravity.call(this.$element[0])
                                : this.options.gravity;
                
                var tp;
                switch (gravity.charAt(0)) {
                    case 'n':
                        tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
                        break;
                    case 's':
                        tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
                        break;
                    case 'e':
                        tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset};
                        break;
                    case 'w':
                        tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset};
                        break;
                }
                
                if (gravity.length == 2) {
                    if (gravity.charAt(1) == 'w') {
                        tp.left = pos.left + pos.width / 2 - 15;
                    } else {
                        tp.left = pos.left + pos.width / 2 - actualWidth + 15;
                    }
                }
                
                $tip.css(tp).addClass('tipsy-' + gravity);
                
                if (this.options.fade) {
                    $tip.stop().css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: this.options.opacity});
                } else {
                    $tip.css({visibility: 'visible', opacity: this.options.opacity});
                }
            }
        },
        
        hide: function() {
            if (this.options.fade) {
                this.tip().stop().fadeOut(function() { $(this).remove(); });
            } else {
                this.tip().remove();
            }
        },
        
        getTitle: function() {
            var title, $e = this.$element, o = this.options;
            fixTitle($e);
            var title, o = this.options;
            if (typeof o.title == 'string') {
                title = $e.attr(o.title == 'title' ? 'original-title' : o.title);
            } else if (typeof o.title == 'function') {
                title = o.title.call($e[0]);
            }
            title = ('' + title).replace(/(^\s*|\s*$)/, "");
            return title || o.fallback;
        },
        
        tip: function() {
            if (!this.$tip) {
                this.$tip = $('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>');
            }
            return this.$tip;
        },
        
        validate: function() {
            if (!this.$element[0].parentNode) {
                this.hide();
                this.$element = null;
                this.options = null;
            }
        },
        
        enable: function() { this.enabled = true; },
        disable: function() { this.enabled = false; },
        toggleEnabled: function() { this.enabled = !this.enabled; }
    };
    
    $.fn.tipsy = function(options) {
        
        if (options === true) {
            return this.data('tipsy');
        } else if (typeof options == 'string') {
            var tipsy = this.data('tipsy');
            if (tipsy) tipsy[options]();
            return this;
        }
        
        options = $.extend({}, $.fn.tipsy.defaults, options);
        
        function get(ele) {
            var tipsy = $.data(ele, 'tipsy');
            if (!tipsy) {
                tipsy = new Tipsy(ele, $.fn.tipsy.elementOptions(ele, options));
                $.data(ele, 'tipsy', tipsy);
            }
            return tipsy;
        }
        
        function enter() {
            var tipsy = get(this);
            tipsy.hoverState = 'in';
            if (options.delayIn == 0) {
                tipsy.show();
            } else {
                setTimeout(function() { if (tipsy.hoverState == 'in') tipsy.show(); }, options.delayIn);
            }
        };
        
        function leave() {
            var tipsy = get(this);
            tipsy.hoverState = 'out';
            if (options.delayOut == 0) {
                tipsy.hide();
            } else {
                setTimeout(function() { if (tipsy.hoverState == 'out') tipsy.hide(); }, options.delayOut);
            }
        };
        
        if (!options.live) this.each(function() { get(this); });
        
        if (options.trigger != 'manual') {
            var binder   = options.live ? 'live' : 'bind',
                eventIn  = options.trigger == 'hover' ? 'mouseenter' : 'focus',
                eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur';
            this[binder](eventIn, enter)[binder](eventOut, leave);
        }
        
        return this;
        
    };
    
    $.fn.tipsy.defaults = {
        delayIn: 0,
        delayOut: 0,
        fade: false,
        fallback: '',
        gravity: 'n',
        html: false,
        live: false,
        offset: 0,
        opacity: 0.8,
        title: 'title',
        trigger: 'hover'
    };
    
    // Overwrite this method to provide options on a per-element basis.
    // For example, you could store the gravity in a 'tipsy-gravity' attribute:
    // return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' });
    // (remember - do not modify 'options' in place!)
    $.fn.tipsy.elementOptions = function(ele, options) {
        return $.metadata ? $.extend({}, options, $(ele).metadata()) : options;
    };
    
    $.fn.tipsy.autoNS = function() {
        return $(this).offset().top > ($(document).scrollTop() + $(window).height() / 2) ? 's' : 'n';
    };
    
    $.fn.tipsy.autoWE = function() {
        return $(this).offset().left > ($(document).scrollLeft() + $(window).width() / 2) ? 'e' : 'w';
    };
    
})(jQuery);
;
/*
 * deorphanize - jQuery Plugin
 * Works well only on headlines & short text lines.
 * Usage example: $('h2').deorphanize();
 *
 * Has to be called on the element directly containing the text, cannot contain html elements.
 * Will calculate average words per line and force <br /> on last line.
 *
 * Copyright (c) 2010 Quodis (http://quodis.com)
 * Licensed under the MIT license
 *
 * $Date: 2010-07-14 (Wed, 14 Jul 2010) $
 * $version: 0.1
 * 
 */

(function($){
  $.fn.deorphanize = function() {
    return this.each(function() {
    
      var me = $(this);
      
      // Height of the text container
      var height = parseInt(me.height());
      // Line height being used
      var lineHeight = parseInt(me.css('line-height'));
      // ... divided gives us the number of lines
      var lines = height/lineHeight;
      // Is there something to perfection here?
      if (lines > 1) {
      
        // Now let's know how many characters there are
        var text = me.text();
        var textLength = text.length;
        // And get an average per line
        var charsPerLine = (textLength/lines);
        // Find the closest 'space' to where the last line should ideally break
        var lastSpace = text.indexOf(' ', textLength-charsPerLine);
        // And make it break right there!!
        me.html(text.slice(0,lastSpace) + '<br />' + text.slice(lastSpace+1));
        
      }
      
    });
  };
  
})(jQuery);;
/*!
 * jCarousel - Riding carousels with jQuery
 *   http://sorgalla.com/jcarousel/
 *
 * Copyright (c) 2006 Jan Sorgalla (http://sorgalla.com)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * Built on top of the jQuery library
 *   http://jquery.com
 *
 * Inspired by the "Carousel Component" by Bill Scott
 *   http://billwscott.com/carousel/
 */

(function($) {
    /**
     * Creates a carousel for all matched elements.
     *
     * @example $("#mycarousel").jcarousel();
     * @before <ul id="mycarousel" class="jcarousel-skin-name"><li>First item</li><li>Second item</li></ul>
     * @result
     *
     * <div class="jcarousel-skin-name">
     *   <div class="jcarousel-container">
     *     <div class="jcarousel-clip">
     *       <ul class="jcarousel-list">
     *         <li class="jcarousel-item-1">First item</li>
     *         <li class="jcarousel-item-2">Second item</li>
     *       </ul>
     *     </div>
     *     <div disabled="disabled" class="jcarousel-prev jcarousel-prev-disabled"></div>
     *     <div class="jcarousel-next"></div>
     *   </div>
     * </div>
     *
     * @method jcarousel
     * @return jQuery
     * @param o {Hash|String} A set of key/value pairs to set as configuration properties or a method name to call on a formerly created instance.
     */
    $.fn.jcarousel = function(o) {
        if (typeof o == 'string') {
            var instance = $(this).data('jcarousel'), args = Array.prototype.slice.call(arguments, 1);
            return instance[o].apply(instance, args);
        } else
            return this.each(function() {
                $(this).data('jcarousel', new $jc(this, o));
            });
    };

    // Default configuration properties.
    var defaults = {
        vertical: false,
        start: 1,
        offset: 1,
        size: null,
        scroll: 3,
        visible: null,
        animation: 'normal',
        easing: 'swing',
        auto: 0,
        wrap: null,
        initCallback: null,
        reloadCallback: null,
        itemLoadCallback: null,
        itemFirstInCallback: null,
        itemFirstOutCallback: null,
        itemLastInCallback: null,
        itemLastOutCallback: null,
        itemVisibleInCallback: null,
        itemVisibleOutCallback: null,
        buttonNextHTML: '<div></div>',
        buttonPrevHTML: '<div></div>',
        buttonNextEvent: 'click',
        buttonPrevEvent: 'click',
        buttonNextCallback: null,
        buttonPrevCallback: null
    };

    /**
     * The jCarousel object.
     *
     * @constructor
     * @class jcarousel
     * @param e {HTMLElement} The element to create the carousel for.
     * @param o {Object} A set of key/value pairs to set as configuration properties.
     * @cat Plugins/jCarousel
     */
    $.jcarousel = function(e, o) {
        this.options    = $.extend({}, defaults, o || {});

        this.locked     = false;

        this.container  = null;
        this.clip       = null;
        this.list       = null;
        this.buttonNext = null;
        this.buttonPrev = null;

        this.wh = !this.options.vertical ? 'width' : 'height';
        this.lt = !this.options.vertical ? 'left' : 'top';

        // Extract skin class
        var skin = '', split = e.className.split(' ');

        for (var i = 0; i < split.length; i++) {
            if (split[i].indexOf('jcarousel-skin') != -1) {
                $(e).removeClass(split[i]);
                skin = split[i];
                break;
            }
        }

        if (e.nodeName == 'UL' || e.nodeName == 'OL') {
            this.list = $(e);
            this.container = this.list.parent();

            if (this.container.hasClass('jcarousel-clip')) {
                if (!this.container.parent().hasClass('jcarousel-container'))
                    this.container = this.container.wrap('<div></div>');

                this.container = this.container.parent();
            } else if (!this.container.hasClass('jcarousel-container'))
                this.container = this.list.wrap('<div></div>').parent();
        } else {
            this.container = $(e);
            this.list = this.container.find('ul,ol').eq(0);
        }

        if (skin != '' && this.container.parent()[0].className.indexOf('jcarousel-skin') == -1)
            this.container.wrap('<div class=" '+ skin + '"></div>');

        this.clip = this.list.parent();

        if (!this.clip.length || !this.clip.hasClass('jcarousel-clip'))
            this.clip = this.list.wrap('<div></div>').parent();

        this.buttonNext = $('.jcarousel-next', this.container);

        if (this.buttonNext.size() == 0 && this.options.buttonNextHTML != null)
            this.buttonNext = this.clip.after(this.options.buttonNextHTML).next();

        this.buttonNext.addClass(this.className('jcarousel-next'));

        this.buttonPrev = $('.jcarousel-prev', this.container);

        if (this.buttonPrev.size() == 0 && this.options.buttonPrevHTML != null)
            this.buttonPrev = this.clip.after(this.options.buttonPrevHTML).next();

        this.buttonPrev.addClass(this.className('jcarousel-prev'));

        this.clip.addClass(this.className('jcarousel-clip')).css({
            overflow: 'hidden',
            position: 'relative'
        });
        this.list.addClass(this.className('jcarousel-list')).css({
            overflow: 'hidden',
            position: 'relative',
            top: 0,
            left: 0,
            margin: 0,
            padding: 0
        });
        this.container.addClass(this.className('jcarousel-container')).css({
            position: 'relative'
        });

        var di = this.options.visible != null ? Math.ceil(this.clipping() / this.options.visible) : null;
        var li = this.list.children('li');

        var self = this;

        if (li.size() > 0) {
            var wh = 0, i = this.options.offset;
            li.each(function() {
                self.format(this, i++);
                wh += self.dimension(this, di);
            });

            this.list.css(this.wh, wh + 'px');

            // Only set if not explicitly passed as option
            if (!o || o.size === undefined)
                this.options.size = li.size();
        }

        // For whatever reason, .show() does not work in Safari...
        this.container.css('display', 'block');
        this.buttonNext.css('display', 'block');
        this.buttonPrev.css('display', 'block');

        this.funcNext   = function() { self.next(); };
        this.funcPrev   = function() { self.prev(); };
        this.funcResize = function() { self.reload(); };

        if (this.options.initCallback != null)
            this.options.initCallback(this, 'init');

        if ($.browser.safari) {
            this.buttons(false, false);
            $(window).bind('load.jcarousel', function() { self.setup(); });
        } else
            this.setup();
    };

    // Create shortcut for internal use
    var $jc = $.jcarousel;

    $jc.fn = $jc.prototype = {
        jcarousel: '0.2.4'
    };

    $jc.fn.extend = $jc.extend = $.extend;

    $jc.fn.extend({
        /**
         * Setups the carousel.
         *
         * @method setup
         * @return undefined
         */
        setup: function() {
            this.first     = null;
            this.last      = null;
            this.prevFirst = null;
            this.prevLast  = null;
            this.animating = false;
            this.timer     = null;
            this.tail      = null;
            this.inTail    = false;

            if (this.locked)
                return;

            this.list.css(this.lt, this.pos(this.options.offset) + 'px');
            var p = this.pos(this.options.start);
            this.prevFirst = this.prevLast = null;
            this.animate(p, false);

            $(window).unbind('resize.jcarousel', this.funcResize).bind('resize.jcarousel', this.funcResize);
        },

        /**
         * Clears the list and resets the carousel.
         *
         * @method reset
         * @return undefined
         */
        reset: function() {
            this.list.empty();

            this.list.css(this.lt, '0px');
            this.list.css(this.wh, '10px');

            if (this.options.initCallback != null)
                this.options.initCallback(this, 'reset');

            this.setup();
        },

        /**
         * Reloads the carousel and adjusts positions.
         *
         * @method reload
         * @return undefined
         */
        reload: function() {
            if (this.tail != null && this.inTail)
                this.list.css(this.lt, $jc.intval(this.list.css(this.lt)) + this.tail);

            this.tail   = null;
            this.inTail = false;

            if (this.options.reloadCallback != null)
                this.options.reloadCallback(this);

            if (this.options.visible != null) {
                var self = this;
                var di = Math.ceil(this.clipping() / this.options.visible), wh = 0, lt = 0;
                $('li', this.list).each(function(i) {
                    wh += self.dimension(this, di);
                    if (i + 1 < self.first)
                        lt = wh;
                });

                this.list.css(this.wh, wh + 'px');
                this.list.css(this.lt, -lt + 'px');
            }

            this.scroll(this.first, false);
        },

        /**
         * Locks the carousel.
         *
         * @method lock
         * @return undefined
         */
        lock: function() {
            this.locked = true;
            this.buttons();
        },

        /**
         * Unlocks the carousel.
         *
         * @method unlock
         * @return undefined
         */
        unlock: function() {
            this.locked = false;
            this.buttons();
        },

        /**
         * Sets the size of the carousel.
         *
         * @method size
         * @return undefined
         * @param s {Number} The size of the carousel.
         */
        size: function(s) {
            if (s != undefined) {
                this.options.size = s;
                if (!this.locked)
                    this.buttons();
            }

            return this.options.size;
        },

        /**
         * Checks whether a list element exists for the given index (or index range).
         *
         * @method get
         * @return bool
         * @param i {Number} The index of the (first) element.
         * @param i2 {Number} The index of the last element.
         */
        has: function(i, i2) {
            if (i2 == undefined || !i2)
                i2 = i;

            if (this.options.size !== null && i2 > this.options.size)
                i2 = this.options.size;

            for (var j = i; j <= i2; j++) {
                var e = this.get(j);
                if (!e.length || e.hasClass('jcarousel-item-placeholder'))
                    return false;
            }

            return true;
        },

        /**
         * Returns a jQuery object with list element for the given index.
         *
         * @method get
         * @return jQuery
         * @param i {Number} The index of the element.
         */
        get: function(i) {
            return $('.jcarousel-item-' + i, this.list);
        },

        /**
         * Adds an element for the given index to the list.
         * If the element already exists, it updates the inner html.
         * Returns the created element as jQuery object.
         *
         * @method add
         * @return jQuery
         * @param i {Number} The index of the element.
         * @param s {String} The innerHTML of the element.
         */
        add: function(i, s) {
            var e = this.get(i), old = 0, add = 0;

            if (e.length == 0) {
                var c, e = this.create(i), j = $jc.intval(i);
                while (c = this.get(--j)) {
                    if (j <= 0 || c.length) {
                        j <= 0 ? this.list.prepend(e) : c.after(e);
                        break;
                    }
                }
            } else
                old = this.dimension(e);

            e.removeClass(this.className('jcarousel-item-placeholder'));
            typeof s == 'string' ? e.html(s) : e.empty().append(s);

            var di = this.options.visible != null ? Math.ceil(this.clipping() / this.options.visible) : null;
            var wh = this.dimension(e, di) - old;

            if (i > 0 && i < this.first)
                this.list.css(this.lt, $jc.intval(this.list.css(this.lt)) - wh + 'px');

            this.list.css(this.wh, $jc.intval(this.list.css(this.wh)) + wh + 'px');

            return e;
        },

        /**
         * Removes an element for the given index from the list.
         *
         * @method remove
         * @return undefined
         * @param i {Number} The index of the element.
         */
        remove: function(i) {
            var e = this.get(i);

            // Check if item exists and is not currently visible
            if (!e.length || (i >= this.first && i <= this.last))
                return;

            var d = this.dimension(e);

            if (i < this.first)
                this.list.css(this.lt, $jc.intval(this.list.css(this.lt)) + d + 'px');

            e.remove();

            this.list.css(this.wh, $jc.intval(this.list.css(this.wh)) - d + 'px');
        },

        /**
         * Moves the carousel forwards.
         *
         * @method next
         * @return undefined
         */
        next: function() {
            this.stopAuto();

            if (this.tail != null && !this.inTail)
                this.scrollTail(false);
            else
                this.scroll(((this.options.wrap == 'both' || this.options.wrap == 'last') && this.options.size != null && this.last == this.options.size) ? 1 : this.first + this.options.scroll);
        },

        /**
         * Moves the carousel backwards.
         *
         * @method prev
         * @return undefined
         */
        prev: function() {
            this.stopAuto();

            if (this.tail != null && this.inTail)
                this.scrollTail(true);
            else
                this.scroll(((this.options.wrap == 'both' || this.options.wrap == 'first') && this.options.size != null && this.first == 1) ? this.options.size : this.first - this.options.scroll);
        },

        /**
         * Scrolls the tail of the carousel.
         *
         * @method scrollTail
         * @return undefined
         * @param b {Boolean} Whether scroll the tail back or forward.
         */
        scrollTail: function(b) {
            if (this.locked || this.animating || !this.tail)
                return;

            var pos  = $jc.intval(this.list.css(this.lt));

            !b ? pos -= this.tail : pos += this.tail;
            this.inTail = !b;

            // Save for callbacks
            this.prevFirst = this.first;
            this.prevLast  = this.last;

            this.animate(pos);
        },

        /**
         * Scrolls the carousel to a certain position.
         *
         * @method scroll
         * @return undefined
         * @param i {Number} The index of the element to scoll to.
         * @param a {Boolean} Flag indicating whether to perform animation.
         */
        scroll: function(i, a) {
            if (this.locked || this.animating)
                return;

            this.animate(this.pos(i), a);
        },

        /**
         * Prepares the carousel and return the position for a certian index.
         *
         * @method pos
         * @return {Number}
         * @param i {Number} The index of the element to scoll to.
         */
        pos: function(i) {
            var pos  = $jc.intval(this.list.css(this.lt));

            if (this.locked || this.animating)
                return pos;

            if (this.options.wrap != 'circular')
                i = i < 1 ? 1 : (this.options.size && i > this.options.size ? this.options.size : i);

            var back = this.first > i;

            // Create placeholders, new list width/height
            // and new list position
            var f = this.options.wrap != 'circular' && this.first <= 1 ? 1 : this.first;
            var c = back ? this.get(f) : this.get(this.last);
            var j = back ? f : f - 1;
            var e = null, l = 0, p = false, d = 0, g;

            while (back ? --j >= i : ++j < i) {
                e = this.get(j);
                p = !e.length;
                if (e.length == 0) {
                    e = this.create(j).addClass(this.className('jcarousel-item-placeholder'));
                    c[back ? 'before' : 'after' ](e);

                    if (this.first != null && this.options.wrap == 'circular' && this.options.size !== null && (j <= 0 || j > this.options.size)) {
                        g = this.get(this.index(j));
                        if (g.length)
                            this.add(j, g.children().clone(true));
                    }
                }

                c = e;
                d = this.dimension(e);

                if (p)
                    l += d;

                if (this.first != null && (this.options.wrap == 'circular' || (j >= 1 && (this.options.size == null || j <= this.options.size))))
                    pos = back ? pos + d : pos - d;
            }

            // Calculate visible items
            var clipping = this.clipping();
            var cache = [];
            var visible = 0, j = i, v = 0;
            var c = this.get(i - 1);

            while (++visible) {
                e = this.get(j);
                p = !e.length;
                if (e.length == 0) {
                    e = this.create(j).addClass(this.className('jcarousel-item-placeholder'));
                    // This should only happen on a next scroll
                    c.length == 0 ? this.list.prepend(e) : c[back ? 'before' : 'after' ](e);

                    if (this.first != null && this.options.wrap == 'circular' && this.options.size !== null && (j <= 0 || j > this.options.size)) {
                        g = this.get(this.index(j));
                        if (g.length)
                            this.add(j, g.find('>*').clone(true));
                    }
                }

                c = e;
                var d = this.dimension(e);
                if (d == 0) {
                    alert('jCarousel: No width/height set for items. This will cause an infinite loop. Aborting...');
                    return 0;
                }

                if (this.options.wrap != 'circular' && this.options.size !== null && j > this.options.size)
                    cache.push(e);
                else if (p)
                    l += d;

                v += d;

                if (v >= clipping)
                    break;

                j++;
            }

             // Remove out-of-range placeholders
            for (var x = 0; x < cache.length; x++)
                cache[x].remove();

            // Resize list
            if (l > 0) {
                this.list.css(this.wh, this.dimension(this.list) + l + 'px');

                if (back) {
                    pos -= l;
                    this.list.css(this.lt, $jc.intval(this.list.css(this.lt)) - l + 'px');
                }
            }

            // Calculate first and last item
            var last = i + visible - 1;
            if (this.options.wrap != 'circular' && this.options.size && last > this.options.size)
                last = this.options.size;

            if (j > last) {
                visible = 0, j = last, v = 0;
                while (++visible) {
                    var e = this.get(j--);
                    if (!e.length)
                        break;
                    v += this.dimension(e);
                    if (v >= clipping)
                        break;
                }
            }

            var first = last - visible + 1;
            if (this.options.wrap != 'circular' && first < 1)
                first = 1;

            if (this.inTail && back) {
                pos += this.tail;
                this.inTail = false;
            }

            this.tail = null;
            if (this.options.wrap != 'circular' && last == this.options.size && (last - visible + 1) >= 1) {
                var m = $jc.margin(this.get(last), !this.options.vertical ? 'marginRight' : 'marginBottom');
                if ((v - m) > clipping)
                    this.tail = v - clipping - m;
            }

            // Adjust position
            while (i-- > first)
                pos += this.dimension(this.get(i));

            // Save visible item range
            this.prevFirst = this.first;
            this.prevLast  = this.last;
            this.first     = first;
            this.last      = last;

            return pos;
        },

        /**
         * Animates the carousel to a certain position.
         *
         * @method animate
         * @return undefined
         * @param p {Number} Position to scroll to.
         * @param a {Boolean} Flag indicating whether to perform animation.
         */
        animate: function(p, a) {
            if (this.locked || this.animating)
                return;

            this.animating = true;

            var self = this;
            var scrolled = function() {
                self.animating = false;

                if (p == 0)
                    self.list.css(self.lt,  0);

                if (self.options.wrap == 'circular' || self.options.wrap == 'both' || self.options.wrap == 'last' || self.options.size == null || self.last < self.options.size)
                    self.startAuto();

                self.buttons();
                self.notify('onAfterAnimation');
            };

            this.notify('onBeforeAnimation');

            // Animate
            if (!this.options.animation || a == false) {
                this.list.css(this.lt, p + 'px');
                scrolled();
            } else {
                var o = !this.options.vertical ? {'left': p} : {'top': p};
                this.list.animate(o, this.options.animation, this.options.easing, scrolled);
            }
        },

        /**
         * Starts autoscrolling.
         *
         * @method auto
         * @return undefined
         * @param s {Number} Seconds to periodically autoscroll the content.
         */
        startAuto: function(s) {
            if (s != undefined)
                this.options.auto = s;

            if (this.options.auto == 0)
                return this.stopAuto();

            if (this.timer != null)
                return;

            var self = this;
            this.timer = setTimeout(function() { self.next(); }, this.options.auto * 1000);
        },

        /**
         * Stops autoscrolling.
         *
         * @method stopAuto
         * @return undefined
         */
        stopAuto: function() {
            if (this.timer == null)
                return;

            clearTimeout(this.timer);
            this.timer = null;
        },

        /**
         * Sets the states of the prev/next buttons.
         *
         * @method buttons
         * @return undefined
         */
        buttons: function(n, p) {
            if (n == undefined || n == null) {
                var n = !this.locked && this.options.size !== 0 && ((this.options.wrap && this.options.wrap != 'first') || this.options.size == null || this.last < this.options.size);
                if (!this.locked && (!this.options.wrap || this.options.wrap == 'first') && this.options.size != null && this.last >= this.options.size)
                    n = this.tail != null && !this.inTail;
            }

            if (p == undefined || p == null) {
                var p = !this.locked && this.options.size !== 0 && ((this.options.wrap && this.options.wrap != 'last') || this.first > 1);
                if (!this.locked && (!this.options.wrap || this.options.wrap == 'last') && this.options.size != null && this.first == 1)
                    p = this.tail != null && this.inTail;
            }

            var self = this;

            this.buttonNext[n ? 'bind' : 'unbind'](this.options.buttonNextEvent + '.jcarousel', this.funcNext)[n ? 'removeClass' : 'addClass'](this.className('jcarousel-next-disabled')).attr('disabled', n ? false : true);
            this.buttonPrev[p ? 'bind' : 'unbind'](this.options.buttonPrevEvent + '.jcarousel', this.funcPrev)[p ? 'removeClass' : 'addClass'](this.className('jcarousel-prev-disabled')).attr('disabled', p ? false : true);

            if (this.buttonNext.length > 0 && (this.buttonNext[0].jcarouselstate == undefined || this.buttonNext[0].jcarouselstate != n) && this.options.buttonNextCallback != null) {
                this.buttonNext.each(function() { self.options.buttonNextCallback(self, this, n); });
                this.buttonNext[0].jcarouselstate = n;
            }

            if (this.buttonPrev.length > 0 && (this.buttonPrev[0].jcarouselstate == undefined || this.buttonPrev[0].jcarouselstate != p) && this.options.buttonPrevCallback != null) {
                this.buttonPrev.each(function() { self.options.buttonPrevCallback(self, this, p); });
                this.buttonPrev[0].jcarouselstate = p;
            }
        },

        /**
         * Notify callback of a specified event.
         *
         * @method notify
         * @return undefined
         * @param evt {String} The event name
         */
        notify: function(evt) {
            var state = this.prevFirst == null ? 'init' : (this.prevFirst < this.first ? 'next' : 'prev');

            // Load items
            this.callback('itemLoadCallback', evt, state);

            if (this.prevFirst !== this.first) {
                this.callback('itemFirstInCallback', evt, state, this.first);
                this.callback('itemFirstOutCallback', evt, state, this.prevFirst);
            }

            if (this.prevLast !== this.last) {
                this.callback('itemLastInCallback', evt, state, this.last);
                this.callback('itemLastOutCallback', evt, state, this.prevLast);
            }

            this.callback('itemVisibleInCallback', evt, state, this.first, this.last, this.prevFirst, this.prevLast);
            this.callback('itemVisibleOutCallback', evt, state, this.prevFirst, this.prevLast, this.first, this.last);
        },

        callback: function(cb, evt, state, i1, i2, i3, i4) {
            if (this.options[cb] == undefined || (typeof this.options[cb] != 'object' && evt != 'onAfterAnimation'))
                return;

            var callback = typeof this.options[cb] == 'object' ? this.options[cb][evt] : this.options[cb];

            if (!$.isFunction(callback))
                return;

            var self = this;

            if (i1 === undefined)
                callback(self, state, evt);
            else if (i2 === undefined)
                this.get(i1).each(function() { callback(self, this, i1, state, evt); });
            else {
                for (var i = i1; i <= i2; i++)
                    if (i !== null && !(i >= i3 && i <= i4))
                        this.get(i).each(function() { callback(self, this, i, state, evt); });
            }
        },

        create: function(i) {
            return this.format('<li></li>', i);
        },

        format: function(e, i) {
            var $e = $(e).addClass(this.className('jcarousel-item')).addClass(this.className('jcarousel-item-' + i)).css({
                'float': 'left',
                'list-style': 'none'
            });
            $e.attr('jcarouselindex', i);
            return $e;
        },

        className: function(c) {
            return c + ' ' + c + (!this.options.vertical ? '-horizontal' : '-vertical');
        },

        dimension: function(e, d) {
            var el = e.jquery != undefined ? e[0] : e;

            var old = !this.options.vertical ?
                el.offsetWidth + $jc.margin(el, 'marginLeft') + $jc.margin(el, 'marginRight') :
                el.offsetHeight + $jc.margin(el, 'marginTop') + $jc.margin(el, 'marginBottom');

            if (d == undefined || old == d)
                return old;

            var w = !this.options.vertical ?
                d - $jc.margin(el, 'marginLeft') - $jc.margin(el, 'marginRight') :
                d - $jc.margin(el, 'marginTop') - $jc.margin(el, 'marginBottom');

            $(el).css(this.wh, w + 'px');

            return this.dimension(el);
        },

        clipping: function() {
            return !this.options.vertical ?
                this.clip[0].offsetWidth - $jc.intval(this.clip.css('borderLeftWidth')) - $jc.intval(this.clip.css('borderRightWidth')) :
                this.clip[0].offsetHeight - $jc.intval(this.clip.css('borderTopWidth')) - $jc.intval(this.clip.css('borderBottomWidth'));
        },

        index: function(i, s) {
            if (s == undefined)
                s = this.options.size;

            return Math.round((((i-1) / s) - Math.floor((i-1) / s)) * s) + 1;
        }
    });

    $jc.extend({
        /**
         * Gets/Sets the global default configuration properties.
         *
         * @method defaults
         * @return {Object}
         * @param d {Object} A set of key/value pairs to set as configuration properties.
         */
        defaults: function(d) {
            return $.extend(defaults, d || {});
        },

        margin: function(e, p) {
            if (!e)
                return 0;

            var el = e.jquery != undefined ? e[0] : e;

            if (p == 'marginRight' && $.browser.safari) {
                var old = {'display': 'block', 'float': 'none', 'width': 'auto'}, oWidth, oWidth2;

                $.swap(el, old, function() { oWidth = el.offsetWidth; });

                old['marginRight'] = 0;
                $.swap(el, old, function() { oWidth2 = el.offsetWidth; });

                return oWidth2 - oWidth;
            }

            return $jc.intval($.css(el, p));
        },

        intval: function(v) {
            v = parseInt(v);
            return isNaN(v) ? 0 : v;
        }
    });

})(jQuery);
;
/*
**********
  tertiary more link - ajax pagination
**********
*/

function setTertiaryMoreLink(pagerContainer) {
  var a = pagerContainer.find('li.last a');
  if (a.attr('href')) {
    $('li.more').removeClass('disabled').find('a').attr('href', a.attr('href'));
  } else {
    $('li.more').addClass('disabled').find('a').attr('href', '');
  }
}

function setupTertiaryMore(container) {

  // control enabled/disabled state of the more link in the tertiary navigation
  setTertiaryMoreLink($(container));
  // refresh item count based on items on page
  $('#tertiary-nav .info span.current').text($('.entry').length);
  // apply cufon to new html elements ( that match previously defined cufon selectors )
  Cufon.refresh();
  
  $('#tertiary-nav .more a').click(function(){
    hrefToGet = $(this).attr('href');
    if (hrefToGet) {
      var parent_li = $(this).parent();
      parent_li.addClass('loading');
    	$.get(hrefToGet, function(data) {
        
        // create new data wrapper and add the content we want to it
        var datacontainer = $('<div></div>');
        var item_count = 0;
        $(data).find('.entry, .item-list').each(function() {
          datacontainer.append($(this));
        });
        
        // fade in the new content
        datacontainer.fadeIn('slow');
        
        // update the "more" link
        setTertiaryMoreLink(datacontainer);
        
        // masonry the new content
        $(container).append(datacontainer).masonry({
          appendedContent: datacontainer,
          animateHeight: true
        });
        
        // update the entry count
        current_count = $('#tertiary-nav .info span.current');
        items_count = datacontainer.find('.entry').length;
        // update the current count value 
        current_count.text( parseInt(current_count.text()) + items_count);
        
        Cufon.refresh();
        parent_li.removeClass('loading');
        
      });
    };
    return false;
  });
};

/*
//////////
  tertiary more link
//////////
*/

/*
**********
  jCarousel
**********
*/
function carousel_init_callback(carousel) {

  // bind a click event to scroll the carousel based on the navigation button correspondence 
  $('.spin-nav li a').bind('click', function() {
    carousel.scroll( $.jcarousel.intval( $(this).text() ) );
    return false;
  });
  
  // bind click event to next buttons on welcome carousel
  $('#carousel-welcome li a.text-replace').bind('click', function() {
      carousel.next();
      return false;
  });

};


// allow the user to control the carousel using arrow left/right
$(document).keydown(function(e){

  // only execute of there's no focused input/textarea -- FIXME: not working on IE
  if (!$('input:focus').length && !$('textarea:focus').length) {
    // if arrow key right
    if (e.keyCode == 37) {
        $('.jcarousel-list').data('jcarousel').prev();
        return false;

    // if arrow key left
    } else if (e.keyCode == 39) {
        $('.jcarousel-list').data('jcarousel').next();
       return false;
    }
  }
});

/* animate to the active button state */
function highlightButton(carousel, item, idx, state) {

  /* define the target selector */
  if (idx == '1') {
    /* jquery's :contains selector makes a partial match so 1 == 10 */
    target_selector = '.spin-nav li:first a';
  } else {
    target_selector = '.spin-nav li:contains("' + idx + '") a';
  }

  // reset highlighted nav button by removing current class from all nav buttons
  $('.spin-nav li').removeClass('current');
  // add current class to nav button representing current visible carousel item
  $(target_selector).parent().addClass('current');
}

/*
//////////
  jCarousel
//////////
*/

// fade in the wrapper on .load, triggered by the css preloader plugin
$(window).load(function () {
  //$('#page').animate({opacity: 1}, 500);
});

$(document).ready(function() {

/*
  $('#page').css({opacity: 0});
  // http://www.filamentgroup.com/lab/update_automatically_preload_images_from_css_with_jquery/
  $.preloadCssImages();
*/

  /* jumper / scroller */
  $('.hdr-follow-us a[href*=#]').click(function() {
    if (location.pathname.replace(/^\//,") == this.pathname.replace(/^\//,") && location.hostname == this.hostname) {
      var $target = $(this.hash);
      $target = $target.length && $target || $('[name=' + this.hash.slice(1) +']');
      if ($target.length) {
        var targetOffset = $target.offset().top;
        $('html,body').animate({scrollTop: targetOffset}, 1000);
        return false;
      }
    }
  });

  // handles the input field focus and blur behaviours
  input_field_values = new Array();
  // store all the input fields value in an array
  $('input.email').each(function() {
    // push it into an array
    input_field_values[$(this).attr('name')] = $(this).attr('value');
  }).focus(function() {
    // check if the stored value equals the current value
    // and if so, clear the current value
    if (input_field_values[$(this).attr('name')] == $(this).attr('value')) { $(this).attr('value', ''); };
  }).blur(function() {
    // check if the current value is null and if so replace it by the stored value
    if ($(this).attr('value') == '') { $(this).attr('value', input_field_values[$(this).attr('name')]); };
  });
  
  // ninja removal of search form on search results page
  $('#search-form').remove();

  // avoid orphan text
  
  $('#blog-container dt a, #primary-hd h1, #journal-entries .entry h2 a, #blog-container .s h3 a, #work-entries .entry h2 a, .related dt a').deorphanize()
  
  //noOrphanText($('div#blog-container dt a, div#primary-hd h1, div#journal-entries .entry h2 a, div#blog-container div.s h3 a, div#work-entries .entry h2 a, div.related dt a'));

  // apply swipe detection to jCarousel
  // REMEMBER to uncomment swipe library in quodis.info as well
  // disabled 'cos swipe plugin crashes IE, gotta switch with that other sliding plugin
/*
  $('.jcarousel').swipe({
    swipeLeft: function() { $('.jcarousel-list').data('jcarousel').next(); },
    swipeRight: function() { $('.jcarousel-list').data('jcarousel').prev(); },
  });
*/
  
  // on nodes: advance gallery item when clicking on the jcarousel element
  $('div.node .jcarousel').click(function() {
    $('.jcarousel-list').data('jcarousel').next();
    return false;
  });

  // initialize jcarousel
  $(".jcarousel").jcarousel({
    scroll: 1,
    wrap: 'both',
    initCallback: carousel_init_callback,
    // call a function upon finishing the scroll animation
    itemVisibleInCallback: {
            onAfterAnimation: highlightButton
    },
    // This tells jCarousel NOT to autobuild prev/next buttons
    buttonNextHTML: null,
    buttonPrevHTML: null
  });
  
  // initialize jcarousel for the "headquarters" block on the about page
  $("#headquarters ul.gallery").jcarousel({
    scroll: 1,
    auto: 2,
    wrap: 'both',
    // This tells jCarousel NOT to autobuild prev/next buttons
    buttonNextHTML: null,
    buttonPrevHTML: null
  });
  
  // initialize Cufon
  Cufon.replace('h2.hd span', { textShadow: '0 -1px #003333' });
  Cufon.replace('#footer legend, #footer dt', { textShadow: '0 1px #112A30' });
  Cufon.replace('#footer button', { textShadow: '0 -1px #0073A0' });
  Cufon.replace('#keep-in-touch button', { textShadow: '0 -1px #0073A0' });
  Cufon.replace('ul#primary-nav li a', { hover: true });
  Cufon.replace('ul#primary-nav li.active a', { textShadow: '0 -1px #000000' });
  Cufon.replace('a.more', { hover: true });
  Cufon.replace('div.shadowed.m .framed p.topics strong');
  Cufon.replace('.entry div.shadowed.s .meta-details.framed dt');
  Cufon.replace('.entry div.shadowed.s .share-this.framed dt');
  Cufon.replace('.entry div.shadowed.s .framed h3');
  Cufon.replace('.entry .comments-reply h3, .entry #comments h3');
  Cufon.replace('div#secundary-nav dl dd a', { hover: true });
  Cufon.replace('div#secundary-nav dl dd.current a', { hover: true, textShadow: '0 -1px #003333' });
  Cufon.replace('div#tertiary-nav ul a', { hover: true, textShadow: '0 1px #FFFFFF' });
  Cufon.replace('div#tertiary-nav ul li.more.disabled a', { hover: true, textShadow: '0 1px #FFFFFF' });
  Cufon.replace('div#tertiary-nav ul li.info', { textShadow: '0 1px #FFFFFF' });
  Cufon.replace('ul.flip-nav a', { hover: true, textShadow: '0 1px #FFFFFF' });
  Cufon.replace('.entry .comments-reply .button', { textShadow: '0 -1px #003333' });
  Cufon.replace('.shadowed .framed .meta a.comments', { textShadow: '0 1px #667C08' });
  
  /*
  **********
    Masonry
  **********
  */

  // team page
  if ($('div#team').length) {
     // initialize Masonry
     $('div#team').masonry({
         singleMode: 'true', 
         itemSelector: '.shadowed'
     });
  };
  
  // labs entries
  if ($('div#labs-entries').length) {
     // initialize Masonry
     $('div#labs-entries').masonry({
         singleMode: 'true', 
         itemSelector: '.shadowed'
     });
  };
  
  // journal entries
  if ($('div#journal-entries').length) {
    setupTertiaryMore('div#journal-entries');
    // initialize Masonry
    $('div#journal-entries').masonry({
      singleMode: 'true', 
      itemSelector: '.shadowed'
    });
  };
  
  // work entries
  if ($('div.work.entry').length) {
     // initialize Masonry
     $('div.entry-extension').masonry({
         singleMode: 'true', 
         itemSelector: '.shadowed'
     });
  };

  // search results
  if ($('div#search-results .entry').length) {
     // initialize Masonry
     $('div#search-results').masonry({
         singleMode: 'true', 
         itemSelector: '.shadowed'
     });
  };
  /*
  //////////
    Masonry
  //////////
  */

  /*
  **********
    Form Validation
  **********
  */

  // comment form
  $('#comment-form').validate({
  	errorElement: 'p'
  });
  
  // search form
  // setup tipsy
  $('#search-block-form input.input-text').tipsy({
    trigger: 'manual',
    opacity: 0.8,
    gravity: 's',
    fade: true,
    title: function () {
      return 'Please enter a search keyword'
    }
  });
  // setup form validation
  $('#search-block-form').validate({
    submitHandler: function (form) {
      // only submit if current val != default, focus if it is
      if ($('#search-block-form input.input-text').val() != input_field_values[$('#search-block-form input.input-text').attr('name')]) {
        form.submit();
      } else {
        $('#search-block-form input.input-text').focus().tipsy("show");
      }
    },
    rules: {
      search_block_form: {
        required: true
      }
    }
  });

  // newsletter form
  // setup tipsy
  $('input.email').tipsy({
    trigger: 'manual',
    opacity: 0.8,
    gravity: 's',
    fade: true,
    title: function () {
      return 'not an email address'
    }
  });
  // setup form validation
  $('#campaignmonitor-general-form, #campaignmonitor-general-form-1').each(function(){
    var $form = $(this);
    $form.validate({
      onkeyup: false,
      showErrors: function(errorMap, errorList) {
        if (errorList.length > 0) {
          $form.find('input.email').tipsy("show");
        }
      },
      rules: {
        email: {
          required: true,
          email: true
        }
      }
    });
  });

  /*
  //////////
    Form Validation
  //////////
  */
  
  // overlay
  if ($('#messages.overlay').length) {
    // create the overlay
    $('<div id="overlay"></div>')
      .appendTo(document.body);

    // set the overlay content and fade in
    $('#overlay')
      .html( $("#messages") )
      .animate(
      { opacity: 0.8 },
      500
      );

    // set the click event
    $('#overlay')
      .click(function() {
      $(this).animate(
        { opacity: 0 },
        300,
        function() {
          $(this).remove();
        });
      return false;
    });
  }
    
});;
/*
 * Copyright (c) 2009 Simo Kinnunen.
 * Licensed under the MIT license.
 *
 * @version 1.09i
 */
var Cufon=(function(){var m=function(){return m.replace.apply(null,arguments)};var x=m.DOM={ready:(function(){var C=false,E={loaded:1,complete:1};var B=[],D=function(){if(C){return}C=true;for(var F;F=B.shift();F()){}};if(document.addEventListener){document.addEventListener("DOMContentLoaded",D,false);window.addEventListener("pageshow",D,false)}if(!window.opera&&document.readyState){(function(){E[document.readyState]?D():setTimeout(arguments.callee,10)})()}if(document.readyState&&document.createStyleSheet){(function(){try{document.body.doScroll("left");D()}catch(F){setTimeout(arguments.callee,1)}})()}q(window,"load",D);return function(F){if(!arguments.length){D()}else{C?F():B.push(F)}}})(),root:function(){return document.documentElement||document.body}};var n=m.CSS={Size:function(C,B){this.value=parseFloat(C);this.unit=String(C).match(/[a-z%]*$/)[0]||"px";this.convert=function(D){return D/B*this.value};this.convertFrom=function(D){return D/this.value*B};this.toString=function(){return this.value+this.unit}},addClass:function(C,B){var D=C.className;C.className=D+(D&&" ")+B;return C},color:j(function(C){var B={};B.color=C.replace(/^rgba\((.*?),\s*([\d.]+)\)/,function(E,D,F){B.opacity=parseFloat(F);return"rgb("+D+")"});return B}),fontStretch:j(function(B){if(typeof B=="number"){return B}if(/%$/.test(B)){return parseFloat(B)/100}return{"ultra-condensed":0.5,"extra-condensed":0.625,condensed:0.75,"semi-condensed":0.875,"semi-expanded":1.125,expanded:1.25,"extra-expanded":1.5,"ultra-expanded":2}[B]||1}),getStyle:function(C){var B=document.defaultView;if(B&&B.getComputedStyle){return new a(B.getComputedStyle(C,null))}if(C.currentStyle){return new a(C.currentStyle)}return new a(C.style)},gradient:j(function(F){var G={id:F,type:F.match(/^-([a-z]+)-gradient\(/)[1],stops:[]},C=F.substr(F.indexOf("(")).match(/([\d.]+=)?(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)/ig);for(var E=0,B=C.length,D;E<B;++E){D=C[E].split("=",2).reverse();G.stops.push([D[1]||E/(B-1),D[0]])}return G}),quotedList:j(function(E){var D=[],C=/\s*((["'])([\s\S]*?[^\\])\2|[^,]+)\s*/g,B;while(B=C.exec(E)){D.push(B[3]||B[1])}return D}),recognizesMedia:j(function(G){var E=document.createElement("style"),D,C,B;E.type="text/css";E.media=G;try{E.appendChild(document.createTextNode("/**/"))}catch(F){}C=g("head")[0];C.insertBefore(E,C.firstChild);D=(E.sheet||E.styleSheet);B=D&&!D.disabled;C.removeChild(E);return B}),removeClass:function(D,C){var B=RegExp("(?:^|\\s+)"+C+"(?=\\s|$)","g");D.className=D.className.replace(B,"");return D},supports:function(D,C){var B=document.createElement("span").style;if(B[D]===undefined){return false}B[D]=C;return B[D]===C},textAlign:function(E,D,B,C){if(D.get("textAlign")=="right"){if(B>0){E=" "+E}}else{if(B<C-1){E+=" "}}return E},textShadow:j(function(F){if(F=="none"){return null}var E=[],G={},B,C=0;var D=/(#[a-f0-9]+|[a-z]+\(.*?\)|[a-z]+)|(-?[\d.]+[a-z%]*)|,/ig;while(B=D.exec(F)){if(B[0]==","){E.push(G);G={};C=0}else{if(B[1]){G.color=B[1]}else{G[["offX","offY","blur"][C++]]=B[2]}}}E.push(G);return E}),textTransform:(function(){var B={uppercase:function(C){return C.toUpperCase()},lowercase:function(C){return C.toLowerCase()},capitalize:function(C){return C.replace(/\b./g,function(D){return D.toUpperCase()})}};return function(E,D){var C=B[D.get("textTransform")];return C?C(E):E}})(),whiteSpace:(function(){var D={inline:1,"inline-block":1,"run-in":1};var C=/^\s+/,B=/\s+$/;return function(H,F,G,E){if(E){if(E.nodeName.toLowerCase()=="br"){H=H.replace(C,"")}}if(D[F.get("display")]){return H}if(!G.previousSibling){H=H.replace(C,"")}if(!G.nextSibling){H=H.replace(B,"")}return H}})()};n.ready=(function(){var B=!n.recognizesMedia("all"),E=false;var D=[],H=function(){B=true;for(var K;K=D.shift();K()){}};var I=g("link"),J=g("style");function C(K){return K.disabled||G(K.sheet,K.media||"screen")}function G(M,P){if(!n.recognizesMedia(P||"all")){return true}if(!M||M.disabled){return false}try{var Q=M.cssRules,O;if(Q){search:for(var L=0,K=Q.length;O=Q[L],L<K;++L){switch(O.type){case 2:break;case 3:if(!G(O.styleSheet,O.media.mediaText)){return false}break;default:break search}}}}catch(N){}return true}function F(){if(document.createStyleSheet){return true}var L,K;for(K=0;L=I[K];++K){if(L.rel.toLowerCase()=="stylesheet"&&!C(L)){return false}}for(K=0;L=J[K];++K){if(!C(L)){return false}}return true}x.ready(function(){if(!E){E=n.getStyle(document.body).isUsable()}if(B||(E&&F())){H()}else{setTimeout(arguments.callee,10)}});return function(K){if(B){K()}else{D.push(K)}}})();function s(D){var C=this.face=D.face,B={"\u0020":1,"\u00a0":1,"\u3000":1};this.glyphs=D.glyphs;this.w=D.w;this.baseSize=parseInt(C["units-per-em"],10);this.family=C["font-family"].toLowerCase();this.weight=C["font-weight"];this.style=C["font-style"]||"normal";this.viewBox=(function(){var F=C.bbox.split(/\s+/);var E={minX:parseInt(F[0],10),minY:parseInt(F[1],10),maxX:parseInt(F[2],10),maxY:parseInt(F[3],10)};E.width=E.maxX-E.minX;E.height=E.maxY-E.minY;E.toString=function(){return[this.minX,this.minY,this.width,this.height].join(" ")};return E})();this.ascent=-parseInt(C.ascent,10);this.descent=-parseInt(C.descent,10);this.height=-this.ascent+this.descent;this.spacing=function(L,N,E){var O=this.glyphs,M,K,G,P=[],F=0,J=-1,I=-1,H;while(H=L[++J]){M=O[H]||this.missingGlyph;if(!M){continue}if(K){F-=G=K[H]||0;P[I]-=G}F+=P[++I]=~~(M.w||this.w)+N+(B[H]?E:0);K=M.k}P.total=F;return P}}function f(){var C={},B={oblique:"italic",italic:"oblique"};this.add=function(D){(C[D.style]||(C[D.style]={}))[D.weight]=D};this.get=function(H,I){var G=C[H]||C[B[H]]||C.normal||C.italic||C.oblique;if(!G){return null}I={normal:400,bold:700}[I]||parseInt(I,10);if(G[I]){return G[I]}var E={1:1,99:0}[I%100],K=[],F,D;if(E===undefined){E=I>400}if(I==500){I=400}for(var J in G){if(!k(G,J)){continue}J=parseInt(J,10);if(!F||J<F){F=J}if(!D||J>D){D=J}K.push(J)}if(I<F){I=F}if(I>D){I=D}K.sort(function(M,L){return(E?(M>=I&&L>=I)?M<L:M>L:(M<=I&&L<=I)?M>L:M<L)?-1:1});return G[K[0]]}}function r(){function D(F,G){if(F.contains){return F.contains(G)}return F.compareDocumentPosition(G)&16}function B(G){var F=G.relatedTarget;if(!F||D(this,F)){return}C(this,G.type=="mouseover")}function E(F){C(this,F.type=="mouseenter")}function C(F,G){setTimeout(function(){var H=d.get(F).options;m.replace(F,G?h(H,H.hover):H,true)},10)}this.attach=function(F){if(F.onmouseenter===undefined){q(F,"mouseover",B);q(F,"mouseout",B)}else{q(F,"mouseenter",E);q(F,"mouseleave",E)}}}function u(){var C=[],D={};function B(H){var E=[],G;for(var F=0;G=H[F];++F){E[F]=C[D[G]]}return E}this.add=function(F,E){D[F]=C.push(E)-1};this.repeat=function(){var E=arguments.length?B(arguments):C,F;for(var G=0;F=E[G++];){m.replace(F[0],F[1],true)}}}function A(){var D={},B=0;function C(E){return E.cufid||(E.cufid=++B)}this.get=function(E){var F=C(E);return D[F]||(D[F]={})}}function a(B){var D={},C={};this.extend=function(E){for(var F in E){if(k(E,F)){D[F]=E[F]}}return this};this.get=function(E){return D[E]!=undefined?D[E]:B[E]};this.getSize=function(F,E){return C[F]||(C[F]=new n.Size(this.get(F),E))};this.isUsable=function(){return !!B}}function q(C,B,D){if(C.addEventListener){C.addEventListener(B,D,false)}else{if(C.attachEvent){C.attachEvent("on"+B,function(){return D.call(C,window.event)})}}}function v(C,B){var D=d.get(C);if(D.options){return C}if(B.hover&&B.hoverables[C.nodeName.toLowerCase()]){b.attach(C)}D.options=B;return C}function j(B){var C={};return function(D){if(!k(C,D)){C[D]=B.apply(null,arguments)}return C[D]}}function c(F,E){var B=n.quotedList(E.get("fontFamily").toLowerCase()),D;for(var C=0;D=B[C];++C){if(i[D]){return i[D].get(E.get("fontStyle"),E.get("fontWeight"))}}return null}function g(B){return document.getElementsByTagName(B)}function k(C,B){return C.hasOwnProperty(B)}function h(){var C={},B,F;for(var E=0,D=arguments.length;B=arguments[E],E<D;++E){for(F in B){if(k(B,F)){C[F]=B[F]}}}return C}function o(E,M,C,N,F,D){var K=document.createDocumentFragment(),H;if(M===""){return K}var L=N.separate;var I=M.split(p[L]),B=(L=="words");if(B&&t){if(/^\s/.test(M)){I.unshift("")}if(/\s$/.test(M)){I.push("")}}for(var J=0,G=I.length;J<G;++J){H=z[N.engine](E,B?n.textAlign(I[J],C,J,G):I[J],C,N,F,D,J<G-1);if(H){K.appendChild(H)}}return K}function l(D,M){var C=D.nodeName.toLowerCase();if(M.ignore[C]){return}var E=!M.textless[C];var B=n.getStyle(v(D,M)).extend(M);var F=c(D,B),G,K,I,H,L,J;if(!F){return}for(G=D.firstChild;G;G=I){K=G.nodeType;I=G.nextSibling;if(E&&K==3){if(H){H.appendData(G.data);D.removeChild(G)}else{H=G}if(I){continue}}if(H){D.replaceChild(o(F,n.whiteSpace(H.data,B,H,J),B,M,G,D),H);H=null}if(K==1){if(G.firstChild){if(G.nodeName.toLowerCase()=="cufon"){z[M.engine](F,null,B,M,G,D)}else{arguments.callee(G,M)}}J=G}}}var t=" ".split(/\s+/).length==0;var d=new A();var b=new r();var y=new u();var e=false;var z={},i={},w={autoDetect:false,engine:null,forceHitArea:false,hover:false,hoverables:{a:true},ignore:{applet:1,canvas:1,col:1,colgroup:1,head:1,iframe:1,map:1,optgroup:1,option:1,script:1,select:1,style:1,textarea:1,title:1,pre:1},printable:true,selector:(window.Sizzle||(window.jQuery&&function(B){return jQuery(B)})||(window.dojo&&dojo.query)||(window.Ext&&Ext.query)||(window.YAHOO&&YAHOO.util&&YAHOO.util.Selector&&YAHOO.util.Selector.query)||(window.$$&&function(B){return $$(B)})||(window.$&&function(B){return $(B)})||(document.querySelectorAll&&function(B){return document.querySelectorAll(B)})||g),separate:"words",textless:{dl:1,html:1,ol:1,table:1,tbody:1,thead:1,tfoot:1,tr:1,ul:1},textShadow:"none"};var p={words:/\s/.test("\u00a0")?/[^\S\u00a0]+/:/\s+/,characters:"",none:/^/};m.now=function(){x.ready();return m};m.refresh=function(){y.repeat.apply(y,arguments);return m};m.registerEngine=function(C,B){if(!B){return m}z[C]=B;return m.set("engine",C)};m.registerFont=function(D){if(!D){return m}var B=new s(D),C=B.family;if(!i[C]){i[C]=new f()}i[C].add(B);return m.set("fontFamily",'"'+C+'"')};m.replace=function(D,C,B){C=h(w,C);if(!C.engine){return m}if(!e){n.addClass(x.root(),"cufon-active cufon-loading");n.ready(function(){n.addClass(n.removeClass(x.root(),"cufon-loading"),"cufon-ready")});e=true}if(C.hover){C.forceHitArea=true}if(C.autoDetect){delete C.fontFamily}if(typeof C.textShadow=="string"){C.textShadow=n.textShadow(C.textShadow)}if(typeof C.color=="string"&&/^-/.test(C.color)){C.textGradient=n.gradient(C.color)}else{delete C.textGradient}if(!B){y.add(D,arguments)}if(D.nodeType||typeof D=="string"){D=[D]}n.ready(function(){for(var F=0,E=D.length;F<E;++F){var G=D[F];if(typeof G=="string"){m.replace(C.selector(G),C,true)}else{l(G,C)}}});return m};m.set=function(B,C){w[B]=C;return m};return m})();Cufon.registerEngine("vml",(function(){var e=document.namespaces;if(!e){return}e.add("cvml","urn:schemas-microsoft-com:vml");e=null;var b=document.createElement("cvml:shape");b.style.behavior="url(#default#VML)";if(!b.coordsize){return}b=null;var h=(document.documentMode||0)<8;document.write(('<style type="text/css">cufoncanvas{text-indent:0;}@media screen{cvml\\:shape,cvml\\:rect,cvml\\:fill,cvml\\:shadow{behavior:url(#default#VML);display:block;antialias:true;position:absolute;}cufoncanvas{position:absolute;text-align:left;}cufon{display:inline-block;position:relative;vertical-align:'+(h?"middle":"text-bottom")+";}cufon cufontext{position:absolute;left:-10000in;font-size:1px;}a cufon{cursor:pointer}}@media print{cufon cufoncanvas{display:none;}}</style>").replace(/;/g,"!important;"));function c(i,j){return a(i,/(?:em|ex|%)$|^[a-z-]+$/i.test(j)?"1em":j)}function a(l,m){if(m==="0"){return 0}if(/px$/i.test(m)){return parseFloat(m)}var k=l.style.left,j=l.runtimeStyle.left;l.runtimeStyle.left=l.currentStyle.left;l.style.left=m.replace("%","em");var i=l.style.pixelLeft;l.style.left=k;l.runtimeStyle.left=j;return i}function f(l,k,j,n){var i="computed"+n,m=k[i];if(isNaN(m)){m=k.get(n);k[i]=m=(m=="normal")?0:~~j.convertFrom(a(l,m))}return m}var g={};function d(p){var q=p.id;if(!g[q]){var n=p.stops,o=document.createElement("cvml:fill"),i=[];o.type="gradient";o.angle=180;o.focus="0";o.method="sigma";o.color=n[0][1];for(var m=1,l=n.length-1;m<l;++m){i.push(n[m][0]*100+"% "+n[m][1])}o.colors=i.join(",");o.color2=n[l][1];g[q]=o}return g[q]}return function(ac,G,Y,C,K,ad,W){var n=(G===null);if(n){G=K.alt}var I=ac.viewBox;var p=Y.computedFontSize||(Y.computedFontSize=new Cufon.CSS.Size(c(ad,Y.get("fontSize"))+"px",ac.baseSize));var y,q;if(n){y=K;q=K.firstChild}else{y=document.createElement("cufon");y.className="cufon cufon-vml";y.alt=G;q=document.createElement("cufoncanvas");y.appendChild(q);if(C.printable){var Z=document.createElement("cufontext");Z.appendChild(document.createTextNode(G));y.appendChild(Z)}if(!W){y.appendChild(document.createElement("cvml:shape"))}}var ai=y.style;var R=q.style;var l=p.convert(I.height),af=Math.ceil(l);var V=af/l;var P=V*Cufon.CSS.fontStretch(Y.get("fontStretch"));var U=I.minX,T=I.minY;R.height=af;R.top=Math.round(p.convert(T-ac.ascent));R.left=Math.round(p.convert(U));ai.height=p.convert(ac.height)+"px";var F=Y.get("color");var ag=Cufon.CSS.textTransform(G,Y).split("");var L=ac.spacing(ag,f(ad,Y,p,"letterSpacing"),f(ad,Y,p,"wordSpacing"));if(!L.length){return null}var k=L.total;var x=-U+k+(I.width-L[L.length-1]);var ah=p.convert(x*P),X=Math.round(ah);var O=x+","+I.height,m;var J="r"+O+"ns";var u=C.textGradient&&d(C.textGradient);var o=ac.glyphs,S=0;var H=C.textShadow;var ab=-1,aa=0,w;while(w=ag[++ab]){var D=o[ag[ab]]||ac.missingGlyph,v;if(!D){continue}if(n){v=q.childNodes[aa];while(v.firstChild){v.removeChild(v.firstChild)}}else{v=document.createElement("cvml:shape");q.appendChild(v)}v.stroked="f";v.coordsize=O;v.coordorigin=m=(U-S)+","+T;v.path=(D.d?"m"+D.d+"xe":"")+"m"+m+J;v.fillcolor=F;if(u){v.appendChild(u.cloneNode(false))}var ae=v.style;ae.width=X;ae.height=af;if(H){var s=H[0],r=H[1];var B=Cufon.CSS.color(s.color),z;var N=document.createElement("cvml:shadow");N.on="t";N.color=B.color;N.offset=s.offX+","+s.offY;if(r){z=Cufon.CSS.color(r.color);N.type="double";N.color2=z.color;N.offset2=r.offX+","+r.offY}N.opacity=B.opacity||(z&&z.opacity)||1;v.appendChild(N)}S+=L[aa++]}var M=v.nextSibling,t,A;if(C.forceHitArea){if(!M){M=document.createElement("cvml:rect");M.stroked="f";M.className="cufon-vml-cover";t=document.createElement("cvml:fill");t.opacity=0;M.appendChild(t);q.appendChild(M)}A=M.style;A.width=X;A.height=af}else{if(M){q.removeChild(M)}}ai.width=Math.max(Math.ceil(p.convert(k*P)),0);if(h){var Q=Y.computedYAdjust;if(Q===undefined){var E=Y.get("lineHeight");if(E=="normal"){E="1em"}else{if(!isNaN(E)){E+="em"}}Y.computedYAdjust=Q=0.5*(a(ad,E)-parseFloat(ai.height))}if(Q){ai.marginTop=Math.ceil(Q)+"px";ai.marginBottom=Q+"px"}}return y}})());Cufon.registerEngine("canvas",(function(){var b=document.createElement("canvas");if(!b||!b.getContext||!b.getContext.apply){return}b=null;var a=Cufon.CSS.supports("display","inline-block");var e=!a&&(document.compatMode=="BackCompat"||/frameset|transitional/i.test(document.doctype.publicId));var f=document.createElement("style");f.type="text/css";f.appendChild(document.createTextNode(("cufon{text-indent:0;}@media screen,projection{cufon{display:inline;display:inline-block;position:relative;vertical-align:middle;"+(e?"":"font-size:1px;line-height:1px;")+"}cufon cufontext{display:-moz-inline-box;display:inline-block;width:0;height:0;overflow:hidden;text-indent:-10000in;}"+(a?"cufon canvas{position:relative;}":"cufon canvas{position:absolute;}")+"}@media print{cufon{padding:0;}cufon canvas{display:none;}}").replace(/;/g,"!important;")));document.getElementsByTagName("head")[0].appendChild(f);function d(p,h){var n=0,m=0;var g=[],o=/([mrvxe])([^a-z]*)/g,k;generate:for(var j=0;k=o.exec(p);++j){var l=k[2].split(",");switch(k[1]){case"v":g[j]={m:"bezierCurveTo",a:[n+~~l[0],m+~~l[1],n+~~l[2],m+~~l[3],n+=~~l[4],m+=~~l[5]]};break;case"r":g[j]={m:"lineTo",a:[n+=~~l[0],m+=~~l[1]]};break;case"m":g[j]={m:"moveTo",a:[n=~~l[0],m=~~l[1]]};break;case"x":g[j]={m:"closePath"};break;case"e":break generate}h[g[j].m].apply(h,g[j].a)}return g}function c(m,k){for(var j=0,h=m.length;j<h;++j){var g=m[j];k[g.m].apply(k,g.a)}}return function(V,w,P,t,C,W){var k=(w===null);if(k){w=C.getAttribute("alt")}var A=V.viewBox;var m=P.getSize("fontSize",V.baseSize);var B=0,O=0,N=0,u=0;var z=t.textShadow,L=[];if(z){for(var U=z.length;U--;){var F=z[U];var K=m.convertFrom(parseFloat(F.offX));var I=m.convertFrom(parseFloat(F.offY));L[U]=[K,I];if(I<B){B=I}if(K>O){O=K}if(I>N){N=I}if(K<u){u=K}}}var Z=Cufon.CSS.textTransform(w,P).split("");var E=V.spacing(Z,~~m.convertFrom(parseFloat(P.get("letterSpacing"))||0),~~m.convertFrom(parseFloat(P.get("wordSpacing"))||0));if(!E.length){return null}var h=E.total;O+=A.width-E[E.length-1];u+=A.minX;var s,n;if(k){s=C;n=C.firstChild}else{s=document.createElement("cufon");s.className="cufon cufon-canvas";s.setAttribute("alt",w);n=document.createElement("canvas");s.appendChild(n);if(t.printable){var S=document.createElement("cufontext");S.appendChild(document.createTextNode(w));s.appendChild(S)}}var aa=s.style;var H=n.style;var j=m.convert(A.height);var Y=Math.ceil(j);var M=Y/j;var G=M*Cufon.CSS.fontStretch(P.get("fontStretch"));var J=h*G;var Q=Math.ceil(m.convert(J+O-u));var o=Math.ceil(m.convert(A.height-B+N));n.width=Q;n.height=o;H.width=Q+"px";H.height=o+"px";B+=A.minY;H.top=Math.round(m.convert(B-V.ascent))+"px";H.left=Math.round(m.convert(u))+"px";var r=Math.max(Math.ceil(m.convert(J)),0)+"px";if(a){aa.width=r;aa.height=m.convert(V.height)+"px"}else{aa.paddingLeft=r;aa.paddingBottom=(m.convert(V.height)-1)+"px"}var X=n.getContext("2d"),D=j/A.height;X.scale(D,D*M);X.translate(-u,-B);X.save();function T(){var x=V.glyphs,ab,l=-1,g=-1,y;X.scale(G,1);while(y=Z[++l]){var ab=x[Z[l]]||V.missingGlyph;if(!ab){continue}if(ab.d){X.beginPath();if(ab.code){c(ab.code,X)}else{ab.code=d("m"+ab.d,X)}X.fill()}X.translate(E[++g],0)}X.restore()}if(z){for(var U=z.length;U--;){var F=z[U];X.save();X.fillStyle=F.color;X.translate.apply(X,L[U]);T()}}var q=t.textGradient;if(q){var v=q.stops,p=X.createLinearGradient(0,A.minY,0,A.maxY);for(var U=0,R=v.length;U<R;++U){p.addColorStop.apply(p,v[U])}X.fillStyle=p}else{X.fillStyle=P.get("color")}T();return s}})());;
/*!
 * The following copyright notice may not be removed under any circumstances.
 * 
 * Copyright:
 * Copyright © 1987, 1991, 1993, 2002 Adobe Systems Incorporated.  All Rights
 * Reserved.
 * 
 * Trademark:
 * Futura is a registered trademark of Bauer Types, S.A.
 * 
 * Full name:
 * FuturaStd-Medium
 * 
 * Designer:
 * Paul Renner
 * 
 * Vendor URL:
 * http://www.adobe.com/type
 * 
 * License information:
 * http://www.adobe.com/type/legal.html
 */
Cufon.registerFont({"w":208,"face":{"font-family":"Futura Std","font-weight":500,"font-stretch":"normal","units-per-em":"360","panose-1":"2 11 5 2 2 2 4 2 3 3","ascent":"297","descent":"-63","x-height":"6","bbox":"-18 -358 374 96","underline-thickness":"18","underline-position":"-18","stemh":"30","stemv":"32","unicode-range":"U+0020-U+00FF"},"glyphs":{" ":{"w":104},"!":{"d":"58,-36v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21xm42,-63r0,-208r32,0r0,208r-32,0","w":115},"\"":{"d":"32,-271r36,0r-7,118r-22,0xm90,-271r36,0r-7,118r-22,0","w":158},"#":{"d":"78,-258r28,0r-13,69r45,0r12,-69r29,0r-13,69r33,0r0,29r-38,0r-10,56r36,0r0,28r-42,0r-14,76r-27,0r13,-76r-44,0r-14,76r-27,0r13,-76r-36,0r0,-28r41,0r10,-56r-38,0r0,-29r43,0xm88,-160r-10,56r45,0r9,-56r-44,0"},"$":{"d":"120,-126r0,98v22,-5,38,-26,38,-49v0,-24,-18,-39,-38,-49xm102,-277r0,-33r18,0r0,33v27,3,48,18,61,42r-28,16v-8,-14,-18,-22,-33,-27r0,85v36,16,70,39,70,83v0,39,-31,79,-70,84r0,34r-18,0r0,-34v-42,-1,-78,-35,-84,-76r32,-7v6,31,20,47,52,51r0,-108r-13,-6v-28,-14,-52,-31,-52,-66v0,-36,29,-68,65,-71xm102,-170r0,-76v-19,3,-34,18,-34,37v0,21,16,32,34,39"},"%":{"d":"69,-256v-22,0,-41,19,-41,41v0,22,19,40,41,40v22,0,42,-18,42,-40v0,-22,-20,-41,-42,-41xm199,-277r16,9r-158,274r-17,-9xm186,-96v-22,0,-42,18,-42,40v0,22,20,40,42,40v22,0,42,-18,42,-40v0,-22,-20,-40,-42,-40xm69,-277v34,0,64,27,64,62v0,34,-30,61,-64,61v-34,0,-63,-27,-63,-61v0,-35,29,-62,63,-62xm186,-118v34,0,63,27,63,62v0,34,-29,62,-63,62v-34,0,-64,-28,-64,-62v0,-35,30,-62,64,-62","w":254},"&":{"d":"103,-134r-3,2v-19,13,-49,31,-49,57v0,26,24,51,50,51v25,0,45,-19,62,-36xm111,-176r4,-3v14,-11,32,-22,32,-42v0,-19,-13,-30,-31,-30v-16,0,-31,12,-31,29v0,14,9,24,17,34xm213,0r-29,-37v-21,24,-50,43,-82,43v-45,0,-83,-33,-83,-80v0,-35,22,-53,48,-72r17,-12v-15,-16,-30,-37,-30,-60v0,-37,26,-59,62,-59v33,0,63,20,63,56v0,31,-26,51,-49,68r56,68r32,-36r21,22r-33,39r49,60r-42,0","w":249},"(":{"d":"58,-291r27,20v-23,48,-31,107,-31,160v0,53,8,113,31,161r-27,19v-27,-52,-37,-122,-37,-180v0,-58,10,-128,37,-180","w":105},")":{"d":"21,-271r26,-20v27,52,38,122,38,180v0,58,-11,128,-38,180r-26,-19v23,-48,30,-108,30,-161v0,-53,-7,-112,-30,-160","w":105},"*":{"d":"66,-271r25,0r0,34r29,-18r13,22r-31,18r31,18r-13,21r-29,-18r0,34r-25,0r0,-35r-31,18r-12,-21r30,-17r-30,-18r11,-21r32,18r0,-35","w":155},"+":{"d":"89,-184r31,0r0,76r76,0r0,31r-76,0r0,77r-31,0r0,-77r-77,0r0,-31r77,0r0,-76"},",":{"d":"59,-43r28,11r-48,96r-20,-8","w":104},"-":{"d":"21,-129r78,0r0,27r-78,0r0,-27","w":119},".":{"d":"52,-36v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":104},"\/":{"d":"161,-312r26,11r-150,346r-25,-11","w":198},"0":{"d":"104,6v-70,0,-95,-87,-95,-142v0,-56,25,-141,95,-141v70,0,95,85,95,141v0,55,-25,142,-95,142xm104,-248v-49,0,-62,75,-62,112v0,37,13,112,62,112v49,0,62,-75,62,-112v0,-37,-13,-112,-62,-112"},"1":{"d":"91,-240r-47,0r19,-31r61,0r0,271r-33,0r0,-240"},"2":{"d":"82,-31r110,0r0,31r-176,0r119,-146v11,-14,24,-30,24,-48v0,-28,-25,-52,-53,-52v-28,0,-50,22,-52,49r-34,0v5,-48,37,-80,86,-80v46,0,86,34,86,81v0,20,-8,41,-21,56"},"3":{"d":"99,-130r0,-28v29,0,53,-10,53,-43v0,-27,-20,-47,-47,-47v-24,0,-41,16,-45,39r-33,0v6,-45,34,-68,79,-68v43,0,79,28,79,73v0,27,-12,48,-35,61v27,13,39,38,39,67v0,51,-38,82,-87,82v-42,0,-81,-28,-83,-73r33,0v3,27,26,43,52,43v30,0,52,-23,52,-53v0,-35,-24,-56,-57,-53"},"4":{"d":"169,-69r31,0r0,29r-31,0r0,40r-33,0r0,-40r-133,0r166,-243r0,214xm136,-69r0,-112r0,0r-77,112r77,0"},"5":{"d":"190,-240r-85,0r-17,55r19,-1v53,0,87,45,87,95v0,57,-44,97,-100,97v-33,0,-67,-18,-83,-48r25,-24v8,23,36,41,60,41v37,0,66,-31,66,-67v0,-35,-30,-64,-65,-64v-19,0,-39,9,-51,24r-6,0r41,-139r109,0r0,31"},"6":{"d":"136,-277r25,16r-72,98r0,1v8,-4,17,-6,27,-6v45,0,78,40,78,84v0,50,-40,90,-89,90v-47,0,-91,-39,-91,-87v0,-27,14,-51,30,-72xm104,-24v30,0,58,-26,58,-56v0,-34,-29,-58,-58,-58v-30,0,-57,26,-57,56v0,31,26,58,57,58"},"7":{"d":"157,-240r-140,0r0,-31r195,0r-169,277r-26,-16"},"8":{"d":"104,-127v-27,0,-53,22,-53,51v0,27,26,52,53,52v27,0,53,-25,53,-52v0,-29,-26,-51,-53,-51xm19,-76v0,-29,15,-55,43,-65v-22,-13,-36,-34,-36,-61v0,-44,35,-75,78,-75v43,0,78,31,78,75v0,27,-14,48,-36,61v28,10,43,36,43,65v0,50,-39,82,-85,82v-46,0,-85,-32,-85,-82xm104,-248v-24,0,-46,20,-46,46v0,22,23,46,46,46v23,0,46,-24,46,-46v0,-26,-22,-46,-46,-46"},"9":{"d":"77,6r-25,-17r73,-98r-1,0v-8,4,-17,5,-26,5v-45,0,-79,-41,-79,-84v0,-50,40,-89,89,-89v47,0,91,39,91,87v0,27,-14,50,-30,71xm109,-133v35,0,57,-27,57,-57v0,-29,-25,-57,-55,-57v-32,0,-60,26,-60,57v0,32,30,57,58,57"},":":{"d":"52,-36v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21xm52,-174v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":104},";":{"d":"56,-43r28,11r-48,96r-19,-8xm69,-174v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":104},"<":{"d":"196,-179r0,34r-138,53r138,53r0,34r-184,-75r0,-25"},"=":{"d":"12,-139r184,0r0,31r-184,0r0,-31xm12,-77r184,0r0,31r-184,0r0,-31"},">":{"d":"12,-145r0,-34r184,74r0,25r-184,75r0,-34r138,-53"},"?":{"d":"108,-124r33,0v1,31,-27,58,-58,58v-32,0,-58,-26,-58,-58v0,-34,22,-45,45,-53v22,-8,45,-14,45,-38v0,-20,-14,-32,-33,-32v-17,0,-31,14,-31,31v0,4,1,8,2,12r-34,0r0,-12v-2,-35,30,-61,64,-61v36,0,65,28,65,64v0,17,-6,33,-19,44v-12,10,-30,15,-45,20v-13,4,-26,11,-26,27v0,14,11,26,25,26v15,0,25,-13,25,-28xm83,-36v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":163},"@":{"d":"181,-134v4,-29,-12,-46,-37,-46v-29,0,-47,29,-47,55v0,21,14,41,36,41v32,0,45,-24,48,-50xm190,-182r5,-22r26,0r-18,92v-3,12,-7,31,5,31v17,0,39,-33,39,-69v0,-60,-43,-98,-98,-98v-60,0,-107,50,-107,112v0,66,52,113,114,113v30,0,52,-5,66,-17r27,21v-26,14,-49,25,-96,25v-77,0,-140,-60,-140,-142v0,-81,60,-141,137,-141v32,0,61,9,85,31v24,21,40,50,40,83v0,30,-8,57,-22,76v-17,23,-38,33,-55,32v-10,0,-18,-9,-20,-23v-12,12,-27,23,-49,23v-32,0,-60,-30,-60,-67v0,-44,28,-86,73,-86v18,0,34,7,48,26","w":288},"A":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0","w":253},"B":{"d":"57,-241r0,90r9,0v32,0,58,-7,58,-46v0,-38,-26,-44,-58,-44r-9,0xm57,-124r0,94r26,0v31,0,64,-9,64,-48v0,-38,-39,-46,-69,-46r-21,0xm23,0r0,-271r33,0v51,0,100,13,100,74v0,20,-12,43,-30,52r0,0v32,6,55,37,55,69v0,54,-47,76,-95,76r-63,0","w":192},"C":{"d":"224,-259r0,39v-19,-17,-46,-26,-72,-26v-61,0,-107,51,-107,111v0,59,46,110,106,110v27,0,53,-10,73,-28r0,40v-21,12,-48,19,-72,19v-77,0,-141,-62,-141,-140v0,-80,64,-143,144,-143v24,0,48,5,69,18","w":237},"D":{"d":"23,0r0,-271r56,0v83,0,152,44,152,134v0,93,-67,137,-153,137r-55,0xm57,-240r0,209r12,0v69,0,129,-26,129,-105v0,-79,-60,-104,-129,-104r-12,0","w":239},"E":{"d":"26,0r0,-271r146,0r0,31r-112,0r0,75r108,0r0,31r-108,0r0,103r112,0r0,31r-146,0","w":187},"F":{"d":"157,-240r-98,0r0,76r95,0r0,31r-95,0r0,133r-33,0r0,-271r131,0r0,31","w":170,"k":{"A":22,"\u00c6":22,"\u00c1":22,"\u00c2":22,"\u00c4":22,"\u00c0":22,"\u00c5":22,"\u00c3":22,",":54,".":54}},"G":{"d":"166,-137r107,0r0,11v0,75,-52,132,-128,132v-76,0,-137,-66,-137,-141v0,-78,62,-142,140,-142v42,0,84,19,111,52r-24,23v-19,-27,-52,-44,-85,-44v-61,0,-109,49,-109,110v0,57,47,111,106,111v42,0,88,-37,89,-81r-70,0r0,-31","w":280},"H":{"d":"57,-162r129,0r0,-109r34,0r0,271r-34,0r0,-130r-129,0r0,130r-34,0r0,-271r34,0r0,109","w":243},"I":{"d":"59,-271r0,271r-34,0r0,-271r34,0","w":83},"J":{"d":"75,-271r34,0r0,172v0,52,-10,105,-73,105v-16,0,-30,-4,-43,-12r17,-29v8,6,17,9,27,9v39,0,38,-45,38,-73r0,-172","w":130},"K":{"d":"60,-154r115,-117r44,0r-122,122r124,149r-45,0r-103,-126r-13,13r0,113r-34,0r0,-271r34,0r0,117","w":216},"L":{"d":"60,-271r0,240r82,0r0,31r-116,0r0,-271r34,0","w":138,"k":{"T":11,"V":14,"W":11,"y":7,"\u00fd":7,"\u00ff":7,"Y":14,"\u00dd":14}},"M":{"d":"153,6r-81,-185r-1,0r-31,179r-35,0r55,-283r93,214r94,-214r55,283r-35,0r-32,-179r0,0","w":306},"N":{"d":"23,0r0,-284r203,213r0,-200r34,0r0,282r-203,-213r0,202r-34,0","w":282},"O":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110","w":298},"P":{"d":"60,-114r0,114r-34,0r0,-271r39,0v84,0,109,28,109,78v0,57,-44,79,-95,79r-19,0xm60,-241r0,97r11,0v35,0,72,-7,72,-50v0,-42,-41,-47,-74,-47r-9,0","w":178,"k":{"A":29,"\u00c6":29,"\u00c1":29,"\u00c2":29,"\u00c4":29,"\u00c0":29,"\u00c5":29,"\u00c3":29,",":49,".":49}},"Q":{"d":"291,6r-41,0r-24,-24v-22,15,-51,24,-77,24v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141v78,0,142,63,142,141v0,39,-15,75,-42,100xm183,-102r43,42v21,-19,31,-50,31,-76v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110v17,0,37,-5,54,-15r-62,-61r42,0","w":298},"R":{"d":"109,-118r86,118r-41,0r-80,-115r-14,0r0,115r-34,0r0,-271r41,0v24,0,50,0,72,12v23,13,35,39,35,65v0,39,-26,71,-65,76xm60,-241r0,98r11,0v35,0,72,-7,72,-50v0,-42,-41,-48,-74,-48r-9,0","w":195,"k":{"T":7,"Y":7,"\u00dd":7}},"S":{"d":"174,-236r-27,16v-10,-17,-23,-26,-44,-26v-22,0,-45,15,-45,39v0,21,20,33,37,39r20,7v39,15,67,37,67,82v0,49,-38,85,-87,85v-44,0,-77,-32,-83,-76r34,-7v0,30,23,51,52,51v29,0,50,-25,50,-53v0,-29,-23,-41,-46,-51r-19,-8v-31,-13,-59,-31,-59,-69v0,-44,39,-70,80,-70v30,0,55,15,70,41","w":193},"T":{"d":"99,-240r0,240r-34,0r0,-240r-64,0r0,-31r162,0r0,31r-64,0","w":164,"k":{"\u00fc":36,"\u00f2":36,"\u00f6":36,"\u00ec":5,"\u00ee":5,"\u00ed":5,"\u00e8":36,"\u00eb":36,"\u00ea":36,"\u00e3":36,"\u00e5":36,"\u00e0":36,"\u00e4":36,"\u00e2":36,"w":29,"y":29,"\u00fd":29,"\u00ff":29,"A":29,"\u00c6":29,"\u00c1":29,"\u00c2":29,"\u00c4":29,"\u00c0":29,"\u00c5":29,"\u00c3":29,",":36,".":36,"a":36,"\u00e6":36,"\u00e1":36,"c":36,"\u00e7":36,"e":36,"\u00e9":36,"i":5,"\u00ef":5,"o":36,"\u00f8":36,"\u00f3":36,"\u00f4":36,"\u00f5":36,"r":29,"s":36,"u":36,"\u00fa":36,"\u00fb":36,"\u00f9":36,":":36,"-":29,";":36}},"U":{"d":"21,-271r34,0r0,160v0,44,14,85,66,85v52,0,65,-41,65,-85r0,-160r34,0r0,171v0,60,-37,106,-99,106v-62,0,-100,-46,-100,-106r0,-171","w":240},"V":{"d":"35,-271r81,200r80,-200r37,0r-117,285r-119,-285r38,0","w":230,"k":{"\u00f6":29,"\u00f4":29,"\u00ee":7,"\u00e8":29,"\u00eb":29,"\u00ea":29,"\u00e3":29,"\u00e5":29,"\u00e0":29,"\u00e4":29,"\u00e2":29,"y":7,"\u00fd":7,"\u00ff":7,"A":36,"\u00c6":36,"\u00c1":36,"\u00c2":36,"\u00c4":36,"\u00c0":36,"\u00c5":36,"\u00c3":36,",":43,".":43,"a":29,"\u00e6":29,"\u00e1":29,"e":29,"\u00e9":29,"i":7,"\u00ed":7,"\u00ef":7,"\u00ec":7,"o":29,"\u00f8":29,"\u00f3":29,"\u00f2":29,"\u00f5":29,"r":14,"u":22,"\u00fa":22,"\u00fb":22,"\u00fc":22,"\u00f9":22,":":29,"-":11,";":29}},"W":{"d":"32,-271r76,194r77,-200r77,200r76,-194r36,0r-112,282r-77,-199r-77,199r-112,-282r36,0","w":369,"k":{"\u00fc":14,"\u00f6":22,"\u00ea":22,"\u00e4":22,"A":36,"\u00c6":36,"\u00c1":36,"\u00c2":36,"\u00c4":36,"\u00c0":36,"\u00c5":36,"\u00c3":36,",":29,".":29,"a":22,"\u00e6":22,"\u00e1":22,"\u00e2":22,"\u00e0":22,"\u00e5":22,"\u00e3":22,"e":22,"\u00e9":22,"\u00eb":22,"\u00e8":22,"o":22,"\u00f8":22,"\u00f3":22,"\u00f4":22,"\u00f2":22,"\u00f5":22,"r":7,"u":14,"\u00fa":14,"\u00fb":14,"\u00f9":14,":":29,";":29}},"X":{"d":"85,-142r-75,-129r39,0r55,99r59,-99r39,0r-78,129r82,142r-38,0r-64,-111r-66,111r-38,0","w":206},"Y":{"d":"86,-118r-88,-153r39,0r66,115r67,-115r39,0r-89,153r0,118r-34,0r0,-118","w":206,"k":{"\u00fc":22,"\u00f6":36,"v":14,"A":36,"\u00c6":36,"\u00c1":36,"\u00c2":36,"\u00c4":36,"\u00c0":36,"\u00c5":36,"\u00c3":36,",":36,".":36,"q":36,"a":36,"\u00e6":36,"\u00e1":36,"\u00e2":36,"\u00e4":36,"\u00e0":36,"\u00e5":36,"\u00e3":36,"e":36,"\u00e9":36,"\u00ea":36,"\u00eb":36,"\u00e8":36,"i":7,"\u00ed":7,"\u00ee":7,"\u00ef":7,"\u00ec":7,"o":36,"\u00f8":36,"\u00f3":36,"\u00f4":36,"\u00f2":36,"\u00f5":36,"u":22,"\u00fa":22,"\u00fb":22,"\u00f9":22,":":36,"-":22,";":36,"p":29}},"Z":{"d":"58,-31r138,0r0,31r-193,0r138,-240r-118,0r0,-31r173,0","w":198},"[":{"d":"55,-261r0,300r35,0r0,30r-68,0r0,-360r68,0r0,30r-35,0","w":111},"\\":{"d":"11,-312r30,0r146,312r-30,0","w":198},"]":{"d":"57,39r0,-300r-35,0r0,-30r68,0r0,360r-68,0r0,-30r35,0","w":111},"^":{"d":"12,-111r72,-160r40,0r72,160r-34,0r-58,-130r-59,130r-33,0"},"_":{"d":"180,27r0,18r-180,0r0,-18r180,0","w":180},"a":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0","w":200},"b":{"d":"104,-23v35,0,54,-28,54,-61v0,-33,-19,-61,-54,-61v-33,0,-54,30,-54,61v0,32,20,61,54,61xm20,0r0,-312r32,0r0,172r1,0v13,-20,34,-34,59,-34v49,0,79,43,79,89v0,48,-29,91,-81,91v-24,0,-44,-13,-57,-32r-1,0r0,26r-32,0","w":200},"c":{"d":"146,-162r0,41v-13,-15,-29,-22,-48,-22v-32,0,-56,28,-56,59v0,35,24,60,58,60v19,0,34,-9,46,-23r0,42v-15,8,-29,11,-46,11v-50,0,-91,-39,-91,-89v0,-52,41,-91,93,-91v15,0,31,4,44,12","w":158},"d":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm148,0r0,-26r-1,0v-13,19,-33,32,-57,32v-52,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-172r32,0r0,312r-32,0","w":200},"e":{"d":"170,-79r-128,0v0,29,20,56,51,56v25,0,38,-13,50,-33r27,16v-16,29,-45,46,-78,46v-51,0,-83,-39,-83,-89v0,-52,28,-91,82,-91v54,0,79,40,79,90r0,5xm44,-103r94,0v-4,-25,-21,-42,-47,-42v-25,0,-43,18,-47,42","w":175},"f":{"d":"106,-312r0,32v-6,-3,-15,-7,-22,-7v-23,0,-23,29,-23,46r0,73r45,0r0,30r-45,0r0,138r-32,0r0,-138r-15,0r0,-30r15,0r0,-83v0,-37,12,-66,54,-66v8,0,16,2,23,5","w":99,"k":{"f":-7,"\u00df":-7}},"g":{"d":"95,-23v35,0,54,-28,54,-61v0,-33,-19,-61,-54,-61v-33,0,-54,30,-54,61v0,32,20,61,54,61xm180,-168r0,165v0,58,-16,99,-82,99v-47,0,-80,-28,-81,-76r32,0v0,30,20,48,50,48v40,0,49,-27,49,-62r0,-32r-1,0v-13,19,-33,32,-57,32v-52,0,-81,-43,-81,-91v0,-46,30,-89,79,-89v25,0,46,13,59,34r1,0r0,-28r32,0","w":199},"h":{"d":"22,-312r33,0r0,166r0,0v10,-18,30,-28,51,-28v48,0,60,33,60,74r0,100r-32,0r0,-96v0,-29,-5,-49,-38,-49v-42,0,-41,37,-41,68r0,77r-33,0r0,-312","w":188},"i":{"d":"62,-168r0,168r-32,0r0,-168r32,0xm46,-268v12,0,22,9,22,22v0,12,-10,22,-22,22v-12,0,-23,-10,-23,-22v0,-13,11,-22,23,-22","w":91},"j":{"d":"62,-168r0,264r-32,0r0,-264r32,0xm46,-268v12,0,22,9,22,22v0,12,-10,22,-22,22v-12,0,-23,-10,-23,-22v0,-13,11,-22,23,-22","w":91},"k":{"d":"57,-312r0,207r63,-63r43,0r-72,69r79,99r-42,0r-60,-77r-11,11r0,66r-33,0r0,-312r33,0","w":166},"l":{"d":"56,-312r0,312r-32,0r0,-312r32,0","w":79},"m":{"d":"54,-168r0,21r0,0v9,-15,27,-27,45,-27v22,0,38,11,49,30v10,-18,30,-30,51,-30v44,0,56,35,56,73r0,101r-32,0r0,-95v0,-22,-3,-50,-31,-50v-35,0,-38,36,-38,62r0,83r-32,0r0,-89v0,-22,-1,-56,-31,-56v-35,0,-37,36,-37,62r0,83r-33,0r0,-168r33,0","w":276},"n":{"d":"55,-168r0,22r0,0v10,-18,30,-28,51,-28v48,0,60,33,60,74r0,100r-32,0r0,-96v0,-29,-5,-49,-38,-49v-42,0,-41,37,-41,68r0,77r-33,0r0,-168r33,0","w":188},"o":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59","w":194},"p":{"d":"104,-23v35,0,54,-28,54,-61v0,-33,-19,-61,-54,-61v-33,0,-54,30,-54,61v0,32,20,61,54,61xm52,-168r0,28r1,0v13,-20,34,-34,59,-34v49,0,79,43,79,89v0,48,-29,91,-81,91v-24,0,-44,-13,-57,-32r-1,0r0,122r-32,0r0,-264r32,0","w":200},"q":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,264r-32,0r0,-122r-1,0v-13,19,-33,32,-57,32v-52,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0","w":200},"r":{"d":"57,-168r0,27r1,0v8,-20,24,-33,46,-33v9,0,19,4,27,9r-15,29v-6,-5,-12,-7,-20,-7v-35,0,-39,33,-39,60r0,83r-33,0r0,-168r33,0","w":126,"k":{"v":-14,"w":-14,"y":-14,"\u00fd":-14,"\u00ff":-14,"f":-7,"\u00df":-7,",":36,".":36,"m":-3,"n":-3,"\u00f1":-3,"q":7,"t":-7,"x":-14}},"s":{"d":"116,-144r-26,14v-4,-8,-13,-15,-22,-15v-9,0,-17,8,-17,17v0,15,19,21,39,30v20,9,39,21,39,48v0,32,-27,56,-58,56v-24,0,-49,-14,-58,-38r27,-13v7,13,16,22,31,22v14,0,25,-10,25,-24v0,-9,-3,-13,-11,-18r-32,-17v-19,-10,-32,-20,-32,-43v0,-27,22,-49,49,-49v21,0,37,12,46,30","w":138},"t":{"d":"59,-138r0,138r-32,0r0,-138r-18,0r0,-30r18,0r0,-65r32,0r0,65r32,0r0,30r-32,0","w":86},"u":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-50,0,-71,-32,-71,-78r0,-96","w":184},"v":{"d":"32,-168r48,105r49,-105r36,0r-85,174r-85,-174r37,0","w":160,"k":{",":29,".":29}},"w":{"d":"31,-168r49,107r50,-117r49,117r49,-107r37,0r-86,174r-49,-113r-50,113r-86,-174r37,0","w":258,"k":{",":22,".":22}},"x":{"d":"70,-91r-60,-77r38,0r40,54r43,-54r40,0r-62,77r72,91r-38,0r-55,-68r-54,68r-39,0","w":176},"y":{"d":"72,-29r-77,-139r38,0r57,106r53,-106r36,0r-136,264r-37,0","w":174,"k":{",":29,".":29}},"z":{"d":"64,-30r109,0r0,30r-172,0r114,-138r-95,0r0,-30r158,0","w":178},"{":{"d":"17,-98r0,-26v18,-8,27,-27,27,-54r0,-66v0,-29,20,-47,31,-47r28,0r0,30r-14,0v-11,0,-12,10,-12,22r0,67v0,41,-22,58,-27,61v5,3,27,21,27,62r0,66v0,12,1,23,12,23r14,0r0,30r-28,0v-11,0,-31,-19,-31,-48r0,-65v0,-27,-9,-47,-27,-55","w":120},"|":{"d":"118,-283r0,360r-31,0r0,-360r31,0","w":205},"}":{"d":"103,-124r0,26v-18,8,-27,28,-27,55r0,65v0,29,-20,48,-31,48r-28,0r0,-30r15,0v11,0,11,-11,11,-23r0,-66v0,-41,22,-59,27,-62v-5,-3,-27,-20,-27,-61r0,-67v0,-12,0,-22,-11,-22r-15,0r0,-30r28,0v11,0,31,18,31,47r0,66v0,27,9,46,27,54","w":120},"~":{"d":"172,-120r24,18v-11,20,-29,44,-55,44v-13,0,-28,-10,-41,-19v-13,-9,-24,-18,-32,-18v-12,0,-21,10,-33,29r-23,-16v13,-19,29,-44,55,-44v18,0,32,9,44,18v12,9,21,19,30,19v14,0,20,-13,31,-31"},"\u00a1":{"d":"58,-183v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21xm42,-116r32,0r0,209r-32,0r0,-209","w":115},"\u00a2":{"d":"128,-253r0,27v15,1,31,3,44,11r0,41r-1,0v-10,-13,-26,-22,-43,-22r0,118v18,-3,31,-9,44,-22r0,42v-12,6,-25,9,-38,10r-6,0r0,31r-17,0r0,-32v-44,-7,-75,-43,-75,-87v0,-45,30,-82,75,-89r0,-28r17,0xm111,-79r0,-115v-26,3,-43,34,-43,57v0,26,16,53,43,58"},"\u00a3":{"d":"32,6r-28,-15v13,-23,27,-39,55,-40v6,-21,9,-40,-2,-59r-47,0r0,-21r36,0v-10,-19,-21,-44,-21,-65v0,-47,44,-83,89,-83v51,0,84,34,87,84r-33,12r0,-10v0,-30,-21,-55,-52,-55v-30,0,-58,29,-58,55v0,25,15,44,25,62r53,0r0,21r-44,0v7,22,6,40,0,62r26,9v10,4,23,10,34,10v15,0,24,-14,30,-26r27,16v-10,24,-29,43,-56,43v-15,0,-32,-6,-47,-12v-15,-6,-30,-12,-42,-12v-17,0,-26,10,-32,24"},"\u00a5":{"d":"121,-94r0,94r-34,0r0,-94r-85,0r0,-20r85,0r0,-4r-19,-34r-66,0r0,-21r53,0r-56,-98r38,0r67,115r67,-115r39,0r-57,98r53,0r0,21r-65,0r-20,34r0,4r85,0r0,20r-85,0"},"\u00a7":{"d":"77,-121r63,32v13,-8,22,-23,22,-38v0,-17,-14,-25,-28,-32r-66,-33v-13,8,-22,23,-22,38v0,18,17,26,31,33xm112,-69r-51,-25v-26,-13,-47,-23,-47,-56v0,-26,15,-44,35,-59v-10,-12,-16,-25,-16,-40v0,-37,34,-63,69,-63v37,0,69,21,72,60r-32,0v-1,-21,-21,-32,-40,-32v-20,0,-36,16,-36,36v0,19,15,28,30,36r48,24v22,11,50,26,50,54v0,24,-13,47,-32,61v12,12,19,27,19,44v0,43,-37,69,-77,69v-46,0,-81,-29,-81,-77r0,-5r32,0v-1,29,19,53,49,53v23,0,44,-17,44,-41v0,-21,-19,-31,-36,-39"},"\u00a4":{"d":"174,-197r21,22r-14,16v9,15,15,30,15,51v0,21,-6,36,-15,51r14,16r-21,22r-17,-16v-14,10,-30,17,-53,17v-23,0,-39,-7,-53,-17r-17,16r-21,-22r14,-16v-9,-15,-15,-30,-15,-51v0,-21,6,-36,15,-51r-14,-16r21,-22r17,16v14,-10,30,-17,53,-17v23,0,39,7,53,17xm104,-47v35,0,63,-28,63,-61v0,-36,-27,-61,-63,-61v-36,0,-64,25,-63,61v1,33,28,61,63,61"},"'":{"d":"32,-271r36,0r-7,118r-22,0","w":99},"\u00ab":{"d":"112,-115r54,69r-21,14r-65,-83r65,-87r21,15xm43,-115r53,69r-20,14r-65,-83r65,-87r20,15","w":188},"\u00b7":{"d":"52,-113v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":104},"\u00b6":{"d":"194,-271r0,30r-22,0r0,296r-31,0r0,-296r-22,0r0,296r-30,0r0,-157v-41,0,-70,-28,-74,-77v-3,-44,29,-92,77,-92r102,0"},"\u00bb":{"d":"23,-46r53,-69r-53,-72r20,-15r65,87r-65,83xm92,-46r53,-69r-53,-72r20,-15r65,87r-65,83","w":188},"\u00bf":{"d":"55,-57r-33,0v-1,-31,27,-57,58,-57v32,0,58,25,58,57v0,34,-22,45,-45,53v-22,8,-45,14,-45,38v0,20,14,32,33,32v17,0,31,-14,31,-31v0,-4,-1,-8,-2,-12r34,0r0,12v2,35,-30,61,-64,61v-36,0,-65,-27,-65,-63v0,-17,7,-34,20,-45v12,-10,29,-15,44,-20v13,-4,26,-10,26,-26v0,-14,-11,-26,-25,-26v-15,0,-25,12,-25,27xm80,-183v12,0,21,10,21,21v0,12,-9,21,-21,21v-12,0,-21,-9,-21,-21v0,-11,9,-21,21,-21","w":163},"`":{"d":"27,-248r30,-16r45,60r-16,9","w":129},"\u00b4":{"d":"72,-264r30,16r-59,53r-16,-9","w":129},"\u00af":{"d":"25,-250r130,0r0,25r-130,0r0,-25","w":180},"\u00a8":{"d":"47,-250v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm123,-250v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":169},"\u00b8":{"d":"88,17r-38,48r-19,-10r31,-49","w":118},"\u00c6":{"d":"192,-68r-124,0r-31,68r-37,0r130,-271r119,0r14,31r-111,0r32,75r109,0r14,31r-109,0r44,103r112,0r14,31r-147,0xm179,-99r-47,-105r-50,105r97,0","w":358},"\u00aa":{"d":"60,-187v23,0,36,-17,36,-37v0,-20,-13,-36,-36,-36v-22,0,-34,17,-34,36v0,19,12,37,34,37xm116,-274r0,101r-21,0r0,-16r-1,0v-8,11,-21,19,-37,19v-33,0,-53,-25,-53,-54v0,-28,20,-53,52,-53v16,0,29,8,38,20r1,0r0,-17r21,0","w":120},"\u00d8":{"d":"237,-201r-154,152v18,14,41,23,66,23v59,0,108,-48,108,-110v0,-24,-7,-47,-20,-65xm64,-68r155,-152v-18,-16,-42,-26,-70,-26v-64,0,-108,50,-108,110v0,26,8,50,23,68xm3,-8r37,-36v-21,-24,-33,-57,-33,-92v0,-78,64,-141,142,-141v35,0,69,13,93,34r34,-34r20,19r-36,35v19,24,31,54,31,87v0,81,-64,142,-142,142v-34,0,-66,-12,-90,-31r-37,37","w":298},"\u00ba":{"d":"58,-277v33,0,59,23,59,54v0,30,-26,53,-59,53v-33,0,-58,-23,-58,-53v0,-31,25,-54,58,-54xm58,-258v-21,0,-37,16,-37,35v0,19,16,35,37,35v21,0,38,-16,38,-35v0,-19,-17,-35,-38,-35","w":116},"\u00e6":{"d":"159,-103r94,0v-4,-25,-20,-42,-46,-42v-25,0,-44,18,-48,42xm80,-78v-17,0,-40,8,-40,28v0,20,24,27,41,27v17,0,41,-7,41,-28v0,-21,-26,-27,-42,-27xm285,-79r-128,0v0,29,19,56,50,56v25,0,39,-13,51,-33r27,16v-16,29,-45,46,-78,46v-26,0,-49,-13,-65,-32v-14,21,-40,32,-64,32v-33,0,-69,-17,-69,-55v0,-37,30,-57,64,-57v18,0,37,4,51,16r0,-12v0,-30,-14,-43,-44,-43v-15,0,-31,0,-46,5r0,-29v17,-3,34,-5,51,-5v21,0,46,9,57,28v15,-18,38,-28,64,-28v54,0,79,40,79,90r0,5","w":290},"\u00f8":{"d":"50,-51r80,-81v-9,-6,-20,-11,-33,-11v-32,0,-57,27,-57,59v0,12,4,24,10,33xm146,-115r-80,80v9,6,19,10,31,10v32,0,58,-27,58,-59v0,-12,-3,-22,-9,-31xm3,-3r24,-24v-12,-15,-20,-35,-20,-57v0,-51,40,-90,90,-90v21,0,41,7,56,19r22,-22r17,16r-23,22v11,15,18,34,18,55v0,51,-40,90,-90,90v-21,0,-39,-7,-53,-18r-25,26","w":194},"\u00df":{"d":"102,6r0,-30v37,0,70,-32,70,-69v0,-42,-31,-63,-70,-66r0,-32v28,0,48,-22,48,-50v0,-27,-21,-46,-47,-46v-48,0,-46,51,-46,86r0,201r-33,0r0,-139r-14,0r0,-30r14,0r0,-53v0,-55,20,-95,80,-95v44,0,79,33,79,78v0,26,-12,47,-35,60v36,12,56,50,56,86v0,57,-47,102,-102,99"},"\u00b9":{"d":"54,-251r-31,0r13,-20r41,0r0,162r-23,0r0,-142","w":124},"\u00ac":{"d":"165,-41r0,-67r-153,0r0,-31r184,0r0,98r-31,0"},"\u00b5":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-14,0,-30,-8,-39,-16r0,106r-32,0r0,-264","w":184},"\u00d0":{"d":"23,-159r0,-112r56,0v83,0,152,44,152,134v0,93,-67,137,-153,137r-55,0r0,-130r-23,0r0,-29r23,0xm57,-240r0,81r48,0r0,29r-48,0r0,99r12,0v69,0,129,-26,129,-105v0,-79,-60,-104,-129,-104r-12,0","w":239},"\u00bd":{"d":"45,-109r0,-142r-31,0r13,-20r41,0r0,162r-23,0xm230,-21r68,0r0,21r-114,0r77,-87v7,-8,14,-19,14,-30v0,-17,-18,-28,-33,-28v-18,0,-31,11,-32,27r-24,0v3,-29,24,-48,56,-48v30,0,56,21,56,49v0,12,-4,24,-12,33xm208,-277r19,9r-159,274r-18,-10","w":312},"\u00b1":{"d":"12,0r0,-31r184,0r0,31r-184,0xm89,-202r31,0r0,62r76,0r0,31r-76,0r0,62r-31,0r0,-62r-77,0r0,-31r77,0r0,-62"},"\u00de":{"d":"60,-63r0,63r-34,0r0,-271r34,0r0,50r5,0v84,0,109,28,109,78v0,57,-44,80,-95,80r-19,0xm60,-191r0,97r11,0v35,0,72,-6,72,-49v0,-42,-41,-48,-74,-48r-9,0","w":178},"\u00bc":{"d":"280,-45r18,0r0,21r-18,0r0,24r-23,0r0,-24r-87,0r110,-146r0,125xm257,-45r0,-59r-1,0r-44,59r45,0xm45,-251r-31,0r13,-20r41,0r0,162r-23,0r0,-142xm227,-277r19,9r-159,274r-18,-10","w":312},"\u00f7":{"d":"12,-77r0,-31r184,0r0,31r-184,0xm104,-45v12,0,22,10,22,23v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-13,10,-23,22,-23xm104,-184v12,0,22,9,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-13,10,-22,22,-22"},"\u00a6":{"d":"118,-58r0,90r-31,0r0,-90r31,0xm118,-238r0,90r-31,0r0,-90r31,0","w":205},"\u00b0":{"d":"126,-223v0,30,-24,54,-54,54v-30,0,-54,-24,-54,-54v0,-30,24,-54,54,-54v30,0,54,24,54,54xm72,-259v-20,0,-36,16,-36,36v0,21,15,36,36,36v20,0,36,-15,36,-36v0,-20,-15,-36,-36,-36","w":144},"\u00fe":{"d":"52,-312r0,172r1,0v13,-20,34,-34,59,-34v49,0,79,43,79,89v0,48,-29,91,-81,91v-24,0,-44,-13,-57,-32r-1,0r0,122r-32,0r0,-408r32,0xm104,-23v35,0,54,-28,54,-61v0,-33,-19,-61,-54,-61v-33,0,-54,30,-54,61v0,32,20,61,54,61","w":200},"\u00be":{"d":"280,-45r18,0r0,21r-18,0r0,24r-23,0r0,-24r-87,0r110,-146r0,125xm257,-45r0,-59r-1,0r-44,59r45,0xm66,-186r0,-21v20,0,34,-8,34,-24v0,-17,-15,-25,-30,-25v-14,0,-27,6,-27,20r-24,0v4,-27,23,-41,52,-41v28,0,52,17,52,44v0,16,-9,28,-24,36v17,8,27,23,27,41v0,31,-26,49,-58,49v-27,0,-53,-17,-54,-44r23,0v3,16,15,23,33,23v17,0,33,-11,33,-29v0,-19,-17,-30,-37,-29xm247,-277r19,9r-159,274r-18,-10","w":312},"\u00b2":{"d":"52,-130r68,0r0,21r-115,0r78,-87v7,-8,13,-18,13,-29v0,-17,-17,-29,-32,-29v-18,0,-31,11,-32,27r-24,0v3,-29,24,-48,56,-48v30,0,56,21,56,49v0,12,-4,24,-12,33","w":124},"\u00ae":{"d":"144,6v-79,0,-142,-63,-142,-142v0,-79,63,-141,142,-141v79,0,142,62,142,141v0,79,-63,142,-142,142xm144,-254v-65,0,-119,51,-119,118v0,67,54,119,119,119v65,0,119,-52,119,-119v0,-67,-54,-118,-119,-118xm168,-129r41,74r-26,0r-41,-74r-30,0r0,74r-23,0r0,-159r67,0v29,0,55,9,55,42v0,31,-22,42,-43,43xm152,-191r-40,0r0,39r25,0v22,0,51,4,51,-18v0,-20,-17,-21,-36,-21","w":288},"\u00f0":{"d":"97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm17,-230r52,-30v-13,-14,-26,-26,-40,-37r20,-19v15,10,31,24,47,41r52,-30r15,20r-51,29v41,48,75,111,75,165v0,61,-40,97,-90,97v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90v20,0,30,8,38,13v-14,-30,-31,-56,-50,-79r-53,30","w":194},"\u00d7":{"d":"12,-162r21,-22r71,70r71,-70r21,22r-70,70r70,70r-21,22r-71,-70r-71,70r-21,-22r70,-70"},"\u00b3":{"d":"59,-186r0,-21v20,0,34,-8,34,-24v0,-17,-15,-25,-30,-25v-14,0,-27,6,-27,20r-24,0v4,-27,22,-41,51,-41v28,0,53,17,53,44v0,16,-9,28,-24,36v17,8,26,23,26,41v0,31,-26,49,-58,49v-27,0,-52,-17,-53,-44r23,0v3,16,14,23,32,23v17,0,33,-11,33,-29v0,-19,-16,-30,-36,-29","w":124},"\u00a9":{"d":"144,6v-79,0,-142,-63,-142,-142v0,-79,63,-141,142,-141v79,0,142,62,142,141v0,79,-63,142,-142,142xm144,-254v-65,0,-119,51,-119,118v0,67,54,119,119,119v65,0,119,-52,119,-119v0,-67,-54,-118,-119,-118xm216,-165r-22,0v-4,-20,-21,-30,-45,-30v-39,0,-55,29,-55,57v0,33,20,60,56,60v24,0,39,-12,44,-33r22,0v-4,34,-33,56,-66,56v-48,0,-79,-37,-79,-82v0,-47,29,-82,78,-82v33,0,61,21,67,54","w":288},"\u00c1":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm149,-358r30,16r-59,53r-16,-9","w":253},"\u00c2":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm69,-306r57,-52r58,52r-21,17r-37,-35r-36,35","w":253},"\u00c4":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm89,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm165,-344v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":253},"\u00c0":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm75,-342r30,-16r45,60r-16,9","w":253},"\u00c5":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm127,-355v18,0,32,15,32,33v0,18,-14,33,-32,33v-18,0,-33,-15,-33,-33v0,-18,15,-33,33,-33xm127,-306v9,0,16,-7,16,-16v0,-9,-7,-16,-16,-16v-9,0,-16,7,-16,16v0,9,7,16,16,16","w":253},"\u00c3":{"d":"189,-68r-125,0r-31,68r-36,0r130,-283r129,283r-36,0xm175,-99r-48,-110r-49,110r97,0xm75,-300r-17,-15r1,-1v10,-14,20,-28,39,-28v12,0,23,5,32,10v9,5,18,9,26,9v10,0,18,-9,23,-17r17,14v-8,17,-23,30,-43,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-16,9,-20,17","w":253},"\u00c7":{"d":"224,-259r0,39v-19,-17,-46,-26,-72,-26v-61,0,-107,51,-107,111v0,59,46,110,106,110v27,0,53,-10,73,-28r0,40v-21,12,-48,19,-72,19v-77,0,-141,-62,-141,-140v0,-80,64,-143,144,-143v24,0,48,5,69,18xm148,17r-38,48r-19,-10r31,-49","w":237},"\u00c9":{"d":"26,0r0,-271r146,0r0,31r-112,0r0,75r108,0r0,31r-108,0r0,103r112,0r0,31r-146,0xm116,-358r30,16r-59,53r-16,-9","w":187},"\u00ca":{"d":"26,0r0,-271r146,0r0,31r-112,0r0,75r108,0r0,31r-108,0r0,103r112,0r0,31r-146,0xm41,-306r57,-52r58,52r-21,17r-37,-35r-36,35","w":187},"\u00cb":{"d":"26,0r0,-271r146,0r0,31r-112,0r0,75r108,0r0,31r-108,0r0,103r112,0r0,31r-146,0xm60,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-21,-10,-21,-22v0,-12,9,-22,21,-22xm136,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":187},"\u00c8":{"d":"26,0r0,-271r146,0r0,31r-112,0r0,75r108,0r0,31r-108,0r0,103r112,0r0,31r-146,0xm49,-342r30,-16r45,60r-16,9","w":187},"\u00cd":{"d":"59,-271r0,271r-34,0r0,-271r34,0xm60,-358r30,16r-59,53r-16,-9","w":83},"\u00ce":{"d":"59,-271r0,271r-34,0r0,-271r34,0xm-16,-306r57,-52r58,52r-21,17r-37,-35r-36,35","w":83},"\u00cf":{"d":"59,-271r0,271r-34,0r0,-271r34,0xm4,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm80,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":83},"\u00cc":{"d":"59,-271r0,271r-34,0r0,-271r34,0xm-6,-342r29,-16r45,60r-15,9","w":83},"\u00d1":{"d":"23,0r0,-284r203,213r0,-200r34,0r0,282r-203,-213r0,202r-34,0xm90,-300r-17,-15r1,-1v10,-14,20,-28,39,-28v12,0,23,5,32,10v9,5,18,9,26,9v10,0,18,-9,23,-17r17,14v-8,17,-23,30,-43,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-16,9,-20,17","w":282},"\u00d3":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110xm167,-358r30,16r-59,53r-16,-9","w":298},"\u00d4":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110xm91,-306r58,-52r58,52r-22,17r-36,-35r-37,35","w":298},"\u00d6":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110xm111,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm187,-344v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":298},"\u00d2":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110xm101,-342r30,-16r45,60r-16,9","w":298},"\u00d5":{"d":"149,-277v78,0,142,63,142,141v0,81,-64,142,-142,142v-78,0,-142,-61,-142,-142v0,-78,64,-141,142,-141xm149,-26v59,0,108,-48,108,-110v0,-60,-44,-110,-108,-110v-64,0,-108,50,-108,110v0,62,49,110,108,110xm97,-300r-17,-15r1,-1v10,-14,20,-28,39,-28v12,0,23,5,32,10v9,5,18,9,26,9v10,0,18,-9,23,-17r17,14v-8,17,-22,30,-42,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-17,9,-21,17","w":298},"\u00da":{"d":"21,-271r34,0r0,160v0,44,14,85,66,85v52,0,65,-41,65,-85r0,-160r34,0r0,171v0,60,-37,106,-99,106v-62,0,-100,-46,-100,-106r0,-171xm139,-358r30,16r-59,53r-16,-9","w":240},"\u00db":{"d":"21,-271r34,0r0,160v0,44,14,85,66,85v52,0,65,-41,65,-85r0,-160r34,0r0,171v0,60,-37,106,-99,106v-62,0,-100,-46,-100,-106r0,-171xm63,-306r57,-52r58,52r-21,17r-37,-35r-36,35","w":240},"\u00dc":{"d":"21,-271r34,0r0,160v0,44,14,85,66,85v52,0,65,-41,65,-85r0,-160r34,0r0,171v0,60,-37,106,-99,106v-62,0,-100,-46,-100,-106r0,-171xm83,-344v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm159,-344v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":240},"\u00d9":{"d":"21,-271r34,0r0,160v0,44,14,85,66,85v52,0,65,-41,65,-85r0,-160r34,0r0,171v0,60,-37,106,-99,106v-62,0,-100,-46,-100,-106r0,-171xm72,-342r30,-16r45,60r-16,9","w":240},"\u00dd":{"d":"86,-118r-88,-153r39,0r66,115r67,-115r39,0r-89,153r0,118r-34,0r0,-118xm132,-358r30,16r-59,53r-16,-9","w":206,"k":{"v":14,"A":36,"\u00c6":36,"\u00c1":36,"\u00c2":36,"\u00c4":36,"\u00c0":36,"\u00c5":36,"\u00c3":36,",":36,".":36,"q":36,"a":36,"\u00e6":36,"\u00e1":36,"\u00e2":36,"\u00e4":36,"\u00e0":36,"\u00e5":36,"\u00e3":36,"e":36,"\u00e9":36,"\u00ea":36,"\u00eb":36,"\u00e8":36,"i":7,"\u00ed":7,"\u00ee":7,"\u00ef":7,"\u00ec":7,"o":36,"\u00f8":36,"\u00f3":36,"\u00f4":36,"\u00f6":36,"\u00f2":36,"\u00f5":36,"u":22,"\u00fa":22,"\u00fb":22,"\u00fc":22,"\u00f9":22,":":36,"-":22,";":36,"p":29}},"\u00e1":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm122,-264r30,16r-59,53r-16,-9","w":200},"\u00e2":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm42,-212r58,-52r58,52r-22,17r-36,-35r-37,35","w":200},"\u00e4":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm62,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm138,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":200},"\u00e0":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm57,-248r30,-16r45,60r-16,9","w":200},"\u00e5":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm100,-264v18,0,33,15,33,33v0,18,-15,32,-33,32v-18,0,-32,-14,-32,-32v0,-18,14,-33,32,-33xm100,-215v9,0,17,-7,17,-16v0,-9,-8,-17,-17,-17v-9,0,-16,8,-16,17v0,9,7,16,16,16","w":200},"\u00e3":{"d":"95,-23v35,0,55,-28,55,-61v0,-33,-20,-61,-55,-61v-33,0,-53,30,-53,61v0,32,19,61,53,61xm180,-168r0,168r-32,0r0,-26r-1,0v-13,19,-33,32,-57,32v-51,0,-81,-43,-81,-91v0,-46,31,-89,80,-89v25,0,45,14,58,34r1,0r0,-28r32,0xm48,-206r-17,-15r1,-1v10,-14,20,-28,39,-28v12,0,23,5,32,10v9,5,18,9,26,9v10,0,18,-9,23,-17r17,14v-8,17,-22,30,-42,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-17,9,-21,17","w":200},"\u00e7":{"d":"146,-162r0,41v-13,-15,-29,-22,-48,-22v-32,0,-56,28,-56,59v0,35,24,60,58,60v19,0,34,-9,46,-23r0,42v-15,8,-29,11,-46,11v-50,0,-91,-39,-91,-89v0,-52,41,-91,93,-91v15,0,31,4,44,12xm108,17r-38,48r-19,-10r31,-49","w":158},"\u00e9":{"d":"170,-79r-128,0v0,29,20,56,51,56v25,0,38,-13,50,-33r27,16v-16,29,-45,46,-78,46v-51,0,-83,-39,-83,-89v0,-52,28,-91,82,-91v54,0,79,40,79,90r0,5xm44,-103r94,0v-4,-25,-21,-42,-47,-42v-25,0,-43,18,-47,42xm110,-264r30,16r-59,53r-16,-9","w":175},"\u00ea":{"d":"170,-79r-128,0v0,29,20,56,51,56v25,0,38,-13,50,-33r27,16v-16,29,-45,46,-78,46v-51,0,-83,-39,-83,-89v0,-52,28,-91,82,-91v54,0,79,40,79,90r0,5xm44,-103r94,0v-4,-25,-21,-42,-47,-42v-25,0,-43,18,-47,42xm30,-212r57,-52r58,52r-21,17r-37,-35r-36,35","w":175},"\u00eb":{"d":"170,-79r-128,0v0,29,20,56,51,56v25,0,38,-13,50,-33r27,16v-16,29,-45,46,-78,46v-51,0,-83,-39,-83,-89v0,-52,28,-91,82,-91v54,0,79,40,79,90r0,5xm44,-103r94,0v-4,-25,-21,-42,-47,-42v-25,0,-43,18,-47,42xm50,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm126,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":175},"\u00e8":{"d":"170,-79r-128,0v0,29,20,56,51,56v25,0,38,-13,50,-33r27,16v-16,29,-45,46,-78,46v-51,0,-83,-39,-83,-89v0,-52,28,-91,82,-91v54,0,79,40,79,90r0,5xm44,-103r94,0v-4,-25,-21,-42,-47,-42v-25,0,-43,18,-47,42xm45,-248r30,-16r45,60r-16,9","w":175},"\u00ed":{"d":"62,-168r0,168r-32,0r0,-168r32,0xm64,-264r30,16r-59,53r-16,-9","w":91},"\u00ee":{"d":"62,-168r0,168r-32,0r0,-168r32,0xm-12,-212r57,-52r58,52r-21,17r-37,-35r-36,35","w":91},"\u00ef":{"d":"62,-168r0,168r-32,0r0,-168r32,0xm8,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm84,-250v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":91},"\u00ec":{"d":"62,-168r0,168r-32,0r0,-168r32,0xm-3,-248r30,-16r45,60r-15,9","w":91},"\u00f1":{"d":"55,-168r0,22r0,0v10,-18,30,-28,51,-28v48,0,60,33,60,74r0,100r-32,0r0,-96v0,-29,-5,-49,-38,-49v-42,0,-41,37,-41,68r0,77r-33,0r0,-168r33,0xm42,-206r-16,-15r1,-1v10,-14,20,-28,39,-28v12,0,23,5,32,10v9,5,17,9,25,9v10,0,19,-9,24,-17r16,14v-8,17,-22,30,-42,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-17,9,-21,17","w":188},"\u00f3":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm119,-264r30,16r-59,53r-16,-9","w":194},"\u00f4":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm40,-212r57,-52r58,52r-21,17r-37,-35r-37,35","w":194},"\u00f6":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm59,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm135,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":194},"\u00f2":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm45,-248r30,-16r45,60r-16,9","w":194},"\u00f5":{"d":"97,-174v50,0,90,39,90,90v0,51,-40,90,-90,90v-50,0,-90,-39,-90,-90v0,-51,40,-90,90,-90xm97,-143v-32,0,-57,27,-57,59v0,32,25,59,57,59v32,0,58,-27,58,-59v0,-32,-26,-59,-58,-59xm45,-206r-17,-15r2,-1v10,-14,19,-28,38,-28v12,0,23,5,32,10v9,5,18,9,26,9v10,0,18,-9,23,-17r17,14v-8,17,-22,30,-42,30v-10,0,-20,-5,-30,-10v-9,-4,-19,-9,-28,-9v-9,0,-17,9,-21,17","w":194},"\u00fa":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-50,0,-71,-32,-71,-78r0,-96xm114,-264r30,16r-59,53r-16,-9","w":184},"\u00fb":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-50,0,-71,-32,-71,-78r0,-96xm35,-212r57,-52r58,52r-21,17r-37,-35r-37,35","w":184},"\u00fc":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-50,0,-71,-32,-71,-78r0,-96xm54,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm130,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":184},"\u00f9":{"d":"21,-168r32,0r0,93v0,27,7,51,39,51v32,0,39,-24,39,-51r0,-93r32,0r0,96v0,46,-21,78,-71,78v-50,0,-71,-32,-71,-78r0,-96xm40,-248r30,-16r45,60r-16,9","w":184},"\u00fd":{"d":"72,-29r-77,-139r38,0r57,106r53,-106r36,0r-136,264r-37,0xm116,-264r30,16r-59,53r-16,-9","w":174,"k":{",":29,".":29}},"\u00ff":{"d":"72,-29r-77,-139r38,0r57,106r53,-106r36,0r-136,264r-37,0xm53,-250v12,0,22,10,22,22v0,12,-10,22,-22,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22xm129,-250v12,0,21,10,21,22v0,12,-9,22,-21,22v-12,0,-22,-10,-22,-22v0,-12,10,-22,22,-22","w":174,"k":{",":29,".":29}},"\u00a0":{"w":104},"\u00ad":{"d":"21,-129r78,0r0,27r-78,0r0,-27","w":119}}});
;

