;
/* AGGREGATED JS FILE: misc/jquery.js */
// JQuery 1.1.2
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('7(1C 1w.6=="T"){1w.T=1w.T;B 6=u(a,c){7(1w==q)v 1p 6(a,c);a=a||17;7(6.1t(a))v 1p 6(17)[6.E.27?"27":"2O"](a);7(1C a=="23"){B m=/^[^<]*(<(.|\\s)+>)[^>]*$/.2Q(a);7(m)a=6.3k([m[1]]);J v 1p 6(c).2o(a)}v q.6r(a.1l==2y&&a||(a.3Y||a.I&&a!=1w&&!a.24&&a[0]!=T&&a[0].24)&&6.3M(a)||[a])};7(1C $!="T")6.2S$=$;B $=6;6.E=6.8p={3Y:"1.1.2",8q:u(){v q.I},I:0,2b:u(1T){v 1T==T?6.3M(q):q[1T]},2r:u(a){B L=6(a);L.6p=q;v L},6r:u(a){q.I=0;[].1g.14(q,a);v q},K:u(E,1E){v 6.K(q,E,1E)},2h:u(1c){B 4c=-1;q.K(u(i){7(q==1c)4c=i});v 4c},1I:u(1Y,O,C){B 1c=1Y;7(1Y.1l==3t)7(O==T)v q.I&&6[C||"1I"](q[0],1Y)||T;J{1c={};1c[1Y]=O}v q.K(u(2h){P(B H 1x 1c)6.1I(C?q.1q:q,H,6.H(q,1c[H],C,2h,H))})},1m:u(1Y,O){v q.1I(1Y,O,"30")},2L:u(e){7(1C e=="23")v q.3u().3r(17.8t(e));B t="";6.K(e||q,u(){6.K(q.2I,u(){7(q.24!=8)t+=q.24!=1?q.60:6.E.2L([q])})});v t},2K:u(){B a=6.3k(1A);v q.K(u(){B b=a[0].3l(U);q.11.2X(b,q);22(b.1b)b=b.1b;b.4C(q)})},3r:u(){v q.3j(1A,U,1,u(a){q.4C(a)})},5i:u(){v q.3j(1A,U,-1,u(a){q.2X(a,q.1b)})},5j:u(){v q.3j(1A,12,1,u(a){q.11.2X(a,q)})},5t:u(){v q.3j(1A,12,-1,u(a){q.11.2X(a,q.2e)})},4g:u(){v q.6p||6([])},2o:u(t){v q.2r(6.31(q,u(a){v 6.2o(t,a)}),t)},4Y:u(4N){v q.2r(6.31(q,u(a){B a=a.3l(4N!=T?4N:U);a.$1H=16;v a}))},1D:u(t){v q.2r(6.1t(t)&&6.2q(q,u(2z,2h){v t.14(2z,[2h])})||6.3z(t,q))},2g:u(t){v q.2r(t.1l==3t&&6.3z(t,q,U)||6.2q(q,u(a){v(t.1l==2y||t.3Y)?6.3y(a,t)<0:a!=t}))},1M:u(t){v q.2r(6.2k(q.2b(),t.1l==3t?6(t).2b():t.I!=T&&(!t.1f||t.1f=="8v")?t:[t]))},4l:u(1s){v 1s?6.1D(1s,q).r.I>0:12},1a:u(1a){v 1a==T?(q.I?q[0].O:16):q.1I("O",1a)},4U:u(1a){v 1a==T?(q.I?q[0].2t:16):q.3u().3r(1a)},3j:u(1E,1P,3Z,E){B 4Y=q.I>1;B a=6.3k(1E);7(3Z<0)a.8w();v q.K(u(){B 1c=q;7(1P&&6.1f(q,"1P")&&6.1f(a[0],"3m"))1c=q.5J("20")[0]||q.4C(17.6n("20"));6.K(a,u(){E.14(1c,[4Y?q.3l(U):q])})})}};6.1z=6.E.1z=u(){B 1O=1A[0],a=1;7(1A.I==1){1O=q;a=0}B H;22(H=1A[a++])P(B i 1x H)1O[i]=H[i];v 1O};6.1z({8x:u(){7(6.2S$)$=6.2S$;v 6},1t:u(E){v!!E&&1C E!="23"&&!E.1f&&1C E[0]=="T"&&/u/i.1n(E+"")},4B:u(D){v D.66&&D.5I&&!D.5I.64},1f:u(D,Y){v D.1f&&D.1f.3K()==Y.3K()},K:u(1c,E,1E){7(1c.I==T)P(B i 1x 1c)E.14(1c[i],1E||[i,1c[i]]);J P(B i=0,6q=1c.I;i<6q;i++)7(E.14(1c[i],1E||[i,1c[i]])===12)3O;v 1c},H:u(D,O,C,2h,H){7(6.1t(O))O=O.3n(D,[2h]);B 6s=/z-?2h|7P-?8A|1d|58|8B-?28/i;v O&&O.1l==3Q&&C=="30"&&!6s.1n(H)?O+"4S":O},19:{1M:u(D,c){6.K(c.3o(/\\s+/),u(i,Q){7(!6.19.2V(D.19,Q))D.19+=(D.19?" ":"")+Q})},2f:u(D,c){D.19=c?6.2q(D.19.3o(/\\s+/),u(Q){v!6.19.2V(c,Q)}).6t(" "):""},2V:u(t,c){t=t.19||t;c=c.1R(/([\\.\\\\\\+\\*\\?\\[\\^\\]\\$\\(\\)\\{\\}\\=\\!\\<\\>\\|\\:])/g,"\\\\$1");v t&&1p 4v("(^|\\\\s)"+c+"(\\\\s|$)").1n(t)}},4d:u(e,o,f){P(B i 1x o){e.1q["1N"+i]=e.1q[i];e.1q[i]=o[i]}f.14(e,[]);P(B i 1x o)e.1q[i]=e.1q["1N"+i]},1m:u(e,p){7(p=="28"||p=="3V"){B 1N={},46,3P,d=["7d","8C","8D","8E"];6.K(d,u(){1N["8F"+q]=0;1N["8G"+q+"8H"]=0});6.4d(e,1N,u(){7(6.1m(e,"1h")!="1Z"){46=e.8I;3P=e.8J}J{e=6(e.3l(U)).2o(":4j").5l("2Z").4g().1m({4n:"1G",45:"8K",1h:"2D",7I:"0",8M:"0"}).5z(e.11)[0];B 3d=6.1m(e.11,"45");7(3d==""||3d=="4b")e.11.1q.45="6x";46=e.6y;3P=e.6z;7(3d==""||3d=="4b")e.11.1q.45="4b";e.11.33(e)}});v p=="28"?46:3P}v 6.30(e,p)},30:u(D,H,53){B L;7(H=="1d"&&6.W.1j)v 6.1I(D.1q,"1d");7(H=="4h"||H=="2v")H=6.W.1j?"3T":"2v";7(!53&&D.1q[H])L=D.1q[H];J 7(17.44&&17.44.4W){7(H=="2v"||H=="3T")H="4h";H=H.1R(/([A-Z])/g,"-$1").4m();B Q=17.44.4W(D,16);7(Q)L=Q.55(H);J 7(H=="1h")L="1Z";J 6.4d(D,{1h:"2D"},u(){B c=17.44.4W(q,"");L=c&&c.55(H)||""})}J 7(D.51){B 56=H.1R(/\\-(\\w)/g,u(m,c){v c.3K()});L=D.51[H]||D.51[56]}v L},3k:u(a){B r=[];6.K(a,u(i,1r){7(!1r)v;7(1r.1l==3Q)1r=1r.6C();7(1C 1r=="23"){B s=6.35(1r),1V=17.6n("1V"),2i=[];B 2K=!s.18("<1u")&&[1,"<42>","</42>"]||(!s.18("<6D")||!s.18("<20")||!s.18("<6E"))&&[1,"<1P>","</1P>"]||!s.18("<3m")&&[2,"<1P><20>","</20></1P>"]||(!s.18("<6F")||!s.18("<6G"))&&[3,"<1P><20><3m>","</3m></20></1P>"]||[0,"",""];1V.2t=2K[1]+s+2K[2];22(2K[0]--)1V=1V.1b;7(6.W.1j){7(!s.18("<1P")&&s.18("<20")<0)2i=1V.1b&&1V.1b.2I;J 7(2K[1]=="<1P>"&&s.18("<20")<0)2i=1V.2I;P(B n=2i.I-1;n>=0;--n)7(6.1f(2i[n],"20")&&!2i[n].2I.I)2i[n].11.33(2i[n])}1r=[];P(B i=0,l=1V.2I.I;i<l;i++)1r.1g(1V.2I[i])}7(1r.I===0&&!6.1f(1r,"3w"))v;7(1r[0]==T||6.1f(1r,"3w"))r.1g(1r);J r=6.2k(r,1r)});v r},1I:u(D,Y,O){B 2j=6.4B(D)?{}:{"P":"6J","6L":"19","4h":6.W.1j?"3T":"2v",2v:6.W.1j?"3T":"2v",2t:"2t",19:"19",O:"O",2W:"2W",2Z:"2Z",89:"6N",2Y:"2Y"};7(Y=="1d"&&6.W.1j&&O!=T){D.58=1;v D.1D=D.1D.1R(/4i\\([^\\)]*\\)/6O,"")+(O==1?"":"4i(1d="+O*6g+")")}J 7(Y=="1d"&&6.W.1j)v D.1D?4T(D.1D.6P(/4i\\(1d=(.*)\\)/)[1])/6g:1;7(Y=="1d"&&6.W.3h&&O==1)O=0.6R;7(2j[Y]){7(O!=T)D[2j[Y]]=O;v D[2j[Y]]}J 7(O==T&&6.W.1j&&6.1f(D,"3w")&&(Y=="81"||Y=="80"))v D.6T(Y).60;J 7(D.66){7(O!=T)D.6V(Y,O);7(6.W.1j&&/5E|3e/.1n(Y)&&!6.4B(D))v D.36(Y,2);v D.36(Y)}J{Y=Y.1R(/-([a-z])/6W,u(z,b){v b.3K()});7(O!=T)D[Y]=O;v D[Y]}},35:u(t){v t.1R(/^\\s+|\\s+$/g,"")},3M:u(a){B r=[];7(a.1l!=2y)P(B i=0,2R=a.I;i<2R;i++)r.1g(a[i]);J r=a.3N(0);v r},3y:u(b,a){P(B i=0,2R=a.I;i<2R;i++)7(a[i]==b)v i;v-1},2k:u(2u,3H){B r=[].3N.3n(2u,0);P(B i=0,5b=3H.I;i<5b;i++)7(6.3y(3H[i],r)==-1)2u.1g(3H[i]);v 2u},2q:u(1U,E,4k){7(1C E=="23")E=1p 4w("a","i","v "+E);B 1i=[];P(B i=0,2z=1U.I;i<2z;i++)7(!4k&&E(1U[i],i)||4k&&!E(1U[i],i))1i.1g(1U[i]);v 1i},31:u(1U,E){7(1C E=="23")E=1p 4w("a","v "+E);B 1i=[],r=[];P(B i=0,2z=1U.I;i<2z;i++){B 1a=E(1U[i],i);7(1a!==16&&1a!=T){7(1a.1l!=2y)1a=[1a];1i=1i.6Z(1a)}}B r=1i.I?[1i[0]]:[];5f:P(B i=1,5e=1i.I;i<5e;i++){P(B j=0;j<i;j++)7(1i[i]==r[j])5F 5f;r.1g(1i[i])}v r}});1p u(){B b=7L.71.4m();6.W={2N:/5D/.1n(b),3f:/3f/.1n(b),1j:/1j/.1n(b)&&!/3f/.1n(b),3h:/3h/.1n(b)&&!/(72|5D)/.1n(b)};6.7H=!6.W.1j||17.74=="75"};6.K({5u:"a.11",4z:"6.4z(a)",76:"6.2a(a,2,\'2e\')",7D:"6.2a(a,2,\'5s\')",78:"6.2B(a.11.1b,a)",79:"6.2B(a.1b)"},u(i,n){6.E[i]=u(a){B L=6.31(q,n);7(a&&1C a=="23")L=6.3z(a,L);v q.2r(L)}});6.K({5z:"3r",7b:"5i",2X:"5j",7e:"5t"},u(i,n){6.E[i]=u(){B a=1A;v q.K(u(){P(B j=0,2R=a.I;j<2R;j++)6(a[j])[n](q)})}});6.K({5l:u(1Y){6.1I(q,1Y,"");q.7g(1Y)},7h:u(c){6.19.1M(q,c)},7i:u(c){6.19.2f(q,c)},7k:u(c){6.19[6.19.2V(q,c)?"2f":"1M"](q,c)},2f:u(a){7(!a||6.1D(a,[q]).r.I)q.11.33(q)},3u:u(){22(q.1b)q.33(q.1b)}},u(i,n){6.E[i]=u(){v q.K(n,1A)}});6.K(["5q","5n","5p","5v"],u(i,n){6.E[n]=u(1T,E){v q.1D(":"+n+"("+1T+")",E)}});6.K(["28","3V"],u(i,n){6.E[n]=u(h){v h==T?(q.I?6.1m(q[0],n):16):q.1m(n,h.1l==3t?h:h+"4S")}});6.1z({1s:{"":"m[2]==\'*\'||6.1f(a,m[2])","#":"a.36(\'2J\')==m[2]",":":{5n:"i<m[3]-0",5p:"i>m[3]-0",2a:"m[3]-0==i",5q:"m[3]-0==i",2u:"i==0",2T:"i==r.I-1",5R:"i%2==0",5S:"i%2","2a-3s":"6.2a(a.11.1b,m[3],\'2e\',a)==a","2u-3s":"6.2a(a.11.1b,1,\'2e\')==a","2T-3s":"6.2a(a.11.7n,1,\'5s\')==a","7p-3s":"6.2B(a.11.1b).I==1",5u:"a.1b",3u:"!a.1b",5v:"6.E.2L.14([a]).18(m[3])>=0",3i:\'a.C!="1G"&&6.1m(a,"1h")!="1Z"&&6.1m(a,"4n")!="1G"\',1G:\'a.C=="1G"||6.1m(a,"1h")=="1Z"||6.1m(a,"4n")=="1G"\',7v:"!a.2W",2W:"a.2W",2Z:"a.2Z",2Y:"a.2Y||6.1I(a,\'2Y\')",2L:"a.C==\'2L\'",4j:"a.C==\'4j\'",5x:"a.C==\'5x\'",4G:"a.C==\'4G\'",5y:"a.C==\'5y\'",4R:"a.C==\'4R\'",5A:"a.C==\'5A\'",5B:"a.C==\'5B\'",3x:\'a.C=="3x"||6.1f(a,"3x")\',5C:"/5C|42|7A|3x/i.1n(a.1f)"},".":"6.19.2V(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z&&!z.18(m[4])","$=":"z&&z.2U(z.I - m[4].I,m[4].I)==m[4]","*=":"z&&z.18(m[4])>=0","":"z",4u:u(m){v["",m[1],m[3],m[2],m[5]]},5P:"z=a[m[3]];7(!z||/5E|3e/.1n(m[3]))z=6.1I(a,m[3]);"},"[":"6.2o(m[2],a).I"},5M:[/^\\[ *(@)([a-2m-3C-]*) *([!*$^=]*) *(\'?"?)(.*?)\\4 *\\]/i,/^(\\[)\\s*(.*?(\\[.*?\\])?[^[]*?)\\s*\\]/,/^(:)([a-2m-3C-]*)\\("?\'?(.*?(\\(.*?\\))?[^(]*?)"?\'?\\)/i,/^([:.#]*)([a-2m-3C*-]*)/i],1Q:[/^(\\/?\\.\\.)/,"a.11",/^(>|\\/)/,"6.2B(a.1b)",/^(\\+)/,"6.2a(a,2,\'2e\')",/^(~)/,u(a){B s=6.2B(a.11.1b);v s.3N(6.3y(a,s)+1)}],3z:u(1s,1U,2g){B 1N,Q=[];22(1s&&1s!=1N){1N=1s;B f=6.1D(1s,1U,2g);1s=f.t.1R(/^\\s*,\\s*/,"");Q=2g?1U=f.r:6.2k(Q,f.r)}v Q},2o:u(t,1B){7(1C t!="23")v[t];7(1B&&!1B.24)1B=16;1B=1B||17;7(!t.18("//")){1B=1B.4H;t=t.2U(2,t.I)}J 7(!t.18("/")){1B=1B.4H;t=t.2U(1,t.I);7(t.18("/")>=1)t=t.2U(t.18("/"),t.I)}B L=[1B],2c=[],2T=16;22(t&&2T!=t){B r=[];2T=t;t=6.35(t).1R(/^\\/\\//i,"");B 3B=12;B 1J=/^[\\/>]\\s*([a-2m-9*-]+)/i;B m=1J.2Q(t);7(m){6.K(L,u(){P(B c=q.1b;c;c=c.2e)7(c.24==1&&(6.1f(c,m[1])||m[1]=="*"))r.1g(c)});L=r;t=t.1R(1J,"");7(t.18(" ")==0)5F;3B=U}J{P(B i=0;i<6.1Q.I;i+=2){B 1J=6.1Q[i];B m=1J.2Q(t);7(m){r=L=6.31(L,6.1t(6.1Q[i+1])?6.1Q[i+1]:u(a){v 40(6.1Q[i+1])});t=6.35(t.1R(1J,""));3B=U;3O}}}7(t&&!3B){7(!t.18(",")){7(L[0]==1B)L.4L();6.2k(2c,L);r=L=[1B];t=" "+t.2U(1,t.I)}J{B 34=/^([a-2m-3C-]+)(#)([a-2m-9\\\\*2S-]*)/i;B m=34.2Q(t);7(m){m=[0,m[2],m[3],m[1]]}J{34=/^([#.]?)([a-2m-9\\\\*2S-]*)/i;m=34.2Q(t)}7(m[1]=="#"&&L[L.I-1].4X){B 2l=L[L.I-1].4X(m[2]);7(6.W.1j&&2l&&2l.2J!=m[2])2l=6(\'[@2J="\'+m[2]+\'"]\',L[L.I-1])[0];L=r=2l&&(!m[3]||6.1f(2l,m[3]))?[2l]:[]}J{7(m[1]==".")B 4r=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");6.K(L,u(){B 3E=m[1]!=""||m[0]==""?"*":m[2];7(6.1f(q,"7J")&&3E=="*")3E="3g";6.2k(r,m[1]!=""&&L.I!=1?6.4x(q,[],m[1],m[2],4r):q.5J(3E))});7(m[1]=="."&&L.I==1)r=6.2q(r,u(e){v 4r.1n(e.19)});7(m[1]=="#"&&L.I==1){B 5K=r;r=[];6.K(5K,u(){7(q.36("2J")==m[2]){r=[q];v 12}})}L=r}t=t.1R(34,"")}}7(t){B 1a=6.1D(t,r);L=r=1a.r;t=6.35(1a.t)}}7(L&&L[0]==1B)L.4L();6.2k(2c,L);v 2c},1D:u(t,r,2g){22(t&&/^[a-z[({<*:.#]/i.1n(t)){B p=6.5M,m;6.K(p,u(i,1J){m=1J.2Q(t);7(m){t=t.7M(m[0].I);7(6.1s[m[1]].4u)m=6.1s[m[1]].4u(m);v 12}});7(m[1]==":"&&m[2]=="2g")r=6.1D(m[3],r,U).r;J 7(m[1]=="."){B 1J=1p 4v("(^|\\\\s)"+m[2]+"(\\\\s|$)");r=6.2q(r,u(e){v 1J.1n(e.19||"")},2g)}J{B f=6.1s[m[1]];7(1C f!="23")f=6.1s[m[1]][m[2]];40("f = u(a,i){"+(6.1s[m[1]].5P||"")+"v "+f+"}");r=6.2q(r,f,2g)}}v{r:r,t:t}},4x:u(o,r,1Q,Y,1J){P(B s=o.1b;s;s=s.2e)7(s.24==1){B 1M=U;7(1Q==".")1M=s.19&&1J.1n(s.19);J 7(1Q=="#")1M=s.36("2J")==Y;7(1M)r.1g(s);7(1Q=="#"&&r.I)3O;7(s.1b)6.4x(s,r,1Q,Y,1J)}v r},4z:u(D){B 4A=[];B Q=D.11;22(Q&&Q!=17){4A.1g(Q);Q=Q.11}v 4A},2a:u(Q,1i,3Z,D){1i=1i||1;B 1T=0;P(;Q;Q=Q[3Z]){7(Q.24==1)1T++;7(1T==1i||1i=="5R"&&1T%2==0&&1T>1&&Q==D||1i=="5S"&&1T%2==1&&Q==D)v Q}},2B:u(n,D){B r=[];P(;n;n=n.2e){7(n.24==1&&(!D||n!=D))r.1g(n)}v r}});6.G={1M:u(S,C,1o,F){7(6.W.1j&&S.3L!=T)S=1w;7(F)1o.F=F;7(!1o.2A)1o.2A=q.2A++;7(!S.$1H)S.$1H={};B 38=S.$1H[C];7(!38){38=S.$1H[C]={};7(S["39"+C])38[0]=S["39"+C]}38[1o.2A]=1o;S["39"+C]=q.5Y;7(!q.1k[C])q.1k[C]=[];q.1k[C].1g(S)},2A:1,1k:{},2f:u(S,C,1o){7(S.$1H){B i,j,k;7(C&&C.C){1o=C.1o;C=C.C}7(C&&S.$1H[C])7(1o)5U S.$1H[C][1o.2A];J P(i 1x S.$1H[C])5U S.$1H[C][i];J P(j 1x S.$1H)q.2f(S,j);P(k 1x S.$1H[C])7(k){k=U;3O}7(!k)S["39"+C]=16}},1S:u(C,F,S){F=6.3M(F||[]);7(!S)6.K(q.1k[C]||[],u(){6.G.1S(C,F,q)});J{B 1o=S["39"+C],1a,E=6.1t(S[C]);7(1o){F.61(q.2j({C:C,1O:S}));7((1a=1o.14(S,F))!==12)q.4F=U}7(E&&1a!==12)S[C]();q.4F=12}},5Y:u(G){7(1C 6=="T"||6.G.4F)v;G=6.G.2j(G||1w.G||{});B 3R;B c=q.$1H[G.C];B 1E=[].3N.3n(1A,1);1E.61(G);P(B j 1x c){1E[0].1o=c[j];1E[0].F=c[j].F;7(c[j].14(q,1E)===12){G.2n();G.2H();3R=12}}7(6.W.1j)G.1O=G.2n=G.2H=G.1o=G.F=16;v 3R},2j:u(G){7(!G.1O&&G.63)G.1O=G.63;7(G.65==T&&G.67!=T){B e=17.4H,b=17.64;G.65=G.67+(e.68||b.68);G.7Y=G.7Z+(e.6c||b.6c)}7(6.W.2N&&G.1O.24==3){B 3a=G;G=6.1z({},3a);G.1O=3a.1O.11;G.2n=u(){v 3a.2n()};G.2H=u(){v 3a.2H()}}7(!G.2n)G.2n=u(){q.3R=12};7(!G.2H)G.2H=u(){q.82=U};v G}};6.E.1z({3U:u(C,F,E){v q.K(u(){6.G.1M(q,C,E||F,F)})},6u:u(C,F,E){v q.K(u(){6.G.1M(q,C,u(G){6(q).6f(G);v(E||F).14(q,1A)},F)})},6f:u(C,E){v q.K(u(){6.G.2f(q,C,E)})},1S:u(C,F){v q.K(u(){6.G.1S(C,F,q)})},3X:u(){B a=1A;v q.6j(u(e){q.4M=q.4M==0?1:0;e.2n();v a[q.4M].14(q,[e])||12})},83:u(f,g){u 4O(e){B p=(e.C=="41"?e.84:e.85)||e.86;22(p&&p!=q)2G{p=p.11}2w(e){p=q};7(p==q)v 12;v(e.C=="41"?f:g).14(q,[e])}v q.41(4O).6k(4O)},27:u(f){7(6.3W)f.14(17,[6]);J{6.3c.1g(u(){v f.14(q,[6])})}v q}});6.1z({3W:12,3c:[],27:u(){7(!6.3W){6.3W=U;7(6.3c){6.K(6.3c,u(){q.14(17)});6.3c=16}7(6.W.3h||6.W.3f)17.87("6o",6.27,12)}}});1p u(){6.K(("88,8a,2O,8b,8d,52,6j,8e,"+"8f,8g,8h,41,6k,8j,42,"+"4R,8k,8l,8m,2C").3o(","),u(i,o){6.E[o]=u(f){v f?q.3U(o,f):q.1S(o)}});7(6.W.3h||6.W.3f)17.8n("6o",6.27,12);J 7(6.W.1j){17.8o("<8r"+"8s 2J=62 8u=U "+"3e=//:><\\/2d>");B 2d=17.4X("62");7(2d)2d.37=u(){7(q.3D!="1X")v;q.11.33(q);6.27()};2d=16}J 7(6.W.2N)6.50=3L(u(){7(17.3D=="8y"||17.3D=="1X"){4p(6.50);6.50=16;6.27()}},10);6.G.1M(1w,"2O",6.27)};7(6.W.1j)6(1w).6u("52",u(){B 1k=6.G.1k;P(B C 1x 1k){B 4Z=1k[C],i=4Z.I;7(i&&C!=\'52\')6w 6.G.2f(4Z[i-1],C);22(--i)}});6.E.1z({6A:u(V,21,M){q.2O(V,21,M,1)},2O:u(V,21,M,1W){7(6.1t(V))v q.3U("2O",V);M=M||u(){};B C="5d";7(21)7(6.1t(21)){M=21;21=16}J{21=6.3g(21);C="5V"}B 4e=q;6.3v({V:V,C:C,F:21,1W:1W,1X:u(2P,15){7(15=="2M"||!1W&&15=="5L")4e.1I("2t",2P.3G).4V().K(M,[2P.3G,15,2P]);J M.14(4e,[2P.3G,15,2P])}});v q},6B:u(){v 6.3g(q)},4V:u(){v q.2o("2d").K(u(){7(q.3e)6.59(q.3e);J 6.4a(q.2L||q.6H||q.2t||"")}).4g()}});7(!1w.3p)3p=u(){v 1p 6I("6K.6M")};6.K("5m,5Q,5O,5W,5N,5H".3o(","),u(i,o){6.E[o]=u(f){v q.3U(o,f)}});6.1z({2b:u(V,F,M,C,1W){7(6.1t(F)){M=F;F=16}v 6.3v({V:V,F:F,2M:M,4t:C,1W:1W})},6Q:u(V,F,M,C){v 6.2b(V,F,M,C,1)},59:u(V,M){v 6.2b(V,16,M,"2d")},6S:u(V,F,M){v 6.2b(V,F,M,"6m")},6U:u(V,F,M,C){7(6.1t(F)){M=F;F={}}v 6.3v({C:"5V",V:V,F:F,2M:M,4t:C})},6X:u(29){6.3q.29=29},6Y:u(5c){6.1z(6.3q,5c)},3q:{1k:U,C:"5d",29:0,5r:"70/x-73-3w-77",5h:U,48:U,F:16},3S:{},3v:u(s){s=6.1z({},6.3q,s);7(s.F){7(s.5h&&1C s.F!="23")s.F=6.3g(s.F);7(s.C.4m()=="2b"){s.V+=((s.V.18("?")>-1)?"&":"?")+s.F;s.F=16}}7(s.1k&&!6.4E++)6.G.1S("5m");B 4y=12;B N=1p 3p();N.7j(s.C,s.V,s.48);7(s.F)N.3A("7l-7m",s.5r);7(s.1W)N.3A("7o-4K-7q",6.3S[s.V]||"7s, 7t 7w 7x 4o:4o:4o 7z");N.3A("X-7B-7C","3p");7(N.7E)N.3A("7F","7G");7(s.5G)s.5G(N);7(s.1k)6.G.1S("5H",[N,s]);B 37=u(4s){7(N&&(N.3D==4||4s=="29")){4y=U;7(3I){4p(3I);3I=16}B 15;2G{15=6.5Z(N)&&4s!="29"?s.1W&&6.69(N,s.V)?"5L":"2M":"2C";7(15!="2C"){B 3F;2G{3F=N.4P("6b-4K")}2w(e){}7(s.1W&&3F)6.3S[s.V]=3F;B F=6.6i(N,s.4t);7(s.2M)s.2M(F,15);7(s.1k)6.G.1S("5N",[N,s])}J 6.3J(s,N,15)}2w(e){15="2C";6.3J(s,N,15,e)}7(s.1k)6.G.1S("5O",[N,s]);7(s.1k&&!--6.4E)6.G.1S("5Q");7(s.1X)s.1X(N,15);7(s.48)N=16}};B 3I=3L(37,13);7(s.29>0)57(u(){7(N){N.7N();7(!4y)37("29")}},s.29);2G{N.7Q(s.F)}2w(e){6.3J(s,N,16,e)}7(!s.48)37();v N},3J:u(s,N,15,e){7(s.2C)s.2C(N,15,e);7(s.1k)6.G.1S("5W",[N,s,e])},4E:0,5Z:u(r){2G{v!r.15&&7V.7W=="4G:"||(r.15>=5X&&r.15<7X)||r.15==6d||6.W.2N&&r.15==T}2w(e){}v 12},69:u(N,V){2G{B 6e=N.4P("6b-4K");v N.15==6d||6e==6.3S[V]||6.W.2N&&N.15==T}2w(e){}v 12},6i:u(r,C){B 4Q=r.4P("8c-C");B F=!C&&4Q&&4Q.18("N")>=0;F=C=="N"||F?r.8i:r.3G;7(C=="2d")6.4a(F);7(C=="6m")40("F = "+F);7(C=="4U")6("<1V>").4U(F).4V();v F},3g:u(a){B s=[];7(a.1l==2y||a.3Y)6.K(a,u(){s.1g(2x(q.Y)+"="+2x(q.O))});J P(B j 1x a)7(a[j]&&a[j].1l==2y)6.K(a[j],u(){s.1g(2x(j)+"="+2x(q))});J s.1g(2x(j)+"="+2x(a[j]));v s.6t("&")},4a:u(F){7(1w.54)1w.54(F);J 7(6.W.2N)1w.57(F,0);J 40.3n(1w,F)}});6.E.1z({1L:u(R,M){B 1G=q.1D(":1G");R?1G.26({28:"1L",3V:"1L",1d:"1L"},R,M):1G.K(u(){q.1q.1h=q.2E?q.2E:"";7(6.1m(q,"1h")=="1Z")q.1q.1h="2D"});v q},1K:u(R,M){B 3i=q.1D(":3i");R?3i.26({28:"1K",3V:"1K",1d:"1K"},R,M):3i.K(u(){q.2E=q.2E||6.1m(q,"1h");7(q.2E=="1Z")q.2E="2D";q.1q.1h="1Z"});v q},5g:6.E.3X,3X:u(E,4I){B 1E=1A;v 6.1t(E)&&6.1t(4I)?q.5g(E,4I):q.K(u(){6(q)[6(q).4l(":1G")?"1L":"1K"].14(6(q),1E)})},7a:u(R,M){v q.26({28:"1L"},R,M)},7c:u(R,M){v q.26({28:"1K"},R,M)},7f:u(R,M){v q.K(u(){B 5k=6(q).4l(":1G")?"1L":"1K";6(q).26({28:5k},R,M)})},7r:u(R,M){v q.26({1d:"1L"},R,M)},7u:u(R,M){v q.26({1d:"1K"},R,M)},7y:u(R,43,M){v q.26({1d:43},R,M)},26:u(H,R,1v,M){v q.1F(u(){q.2F=6.1z({},H);B 1u=6.R(R,1v,M);P(B p 1x H){B e=1p 6.3b(q,1u,p);7(H[p].1l==3Q)e.2s(e.Q(),H[p]);J e[H[p]](H)}})},1F:u(C,E){7(!E){E=C;C="3b"}v q.K(u(){7(!q.1F)q.1F={};7(!q.1F[C])q.1F[C]=[];q.1F[C].1g(E);7(q.1F[C].I==1)E.14(q)})}});6.1z({R:u(R,1v,E){B 1u=R&&R.1l==7K?R:{1X:E||!E&&1v||6.1t(R)&&R,25:R,1v:E&&1v||1v&&1v.1l!=4w&&1v};1u.25=(1u.25&&1u.25.1l==3Q?1u.25:{7R:7S,7T:5X}[1u.25])||7U;1u.1N=1u.1X;1u.1X=u(){6.6a(q,"3b");7(6.1t(1u.1N))1u.1N.14(q)};v 1u},1v:{},1F:{},6a:u(D,C){C=C||"3b";7(D.1F&&D.1F[C]){D.1F[C].4L();B f=D.1F[C][0];7(f)f.14(D)}},3b:u(D,1e,H){B z=q;B y=D.1q;B 4D=6.1m(D,"1h");y.5T="1G";z.a=u(){7(1e.49)1e.49.14(D,[z.2p]);7(H=="1d")6.1I(y,"1d",z.2p);J 7(6l(z.2p))y[H]=6l(z.2p)+"4S";y.1h="2D"};z.6v=u(){v 4T(6.1m(D,H))};z.Q=u(){B r=4T(6.30(D,H));v r&&r>-8z?r:z.6v()};z.2s=u(4f,43){z.4J=(1p 5o()).5w();z.2p=4f;z.a();z.4q=3L(u(){z.49(4f,43)},13)};z.1L=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1L=U;z.2s(0,D.1y[H]);7(H!="1d")y[H]="5a"};z.1K=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();1e.1K=U;z.2s(D.1y[H],0)};z.3X=u(){7(!D.1y)D.1y={};D.1y[H]=q.Q();7(4D=="1Z"){1e.1L=U;7(H!="1d")y[H]="5a";z.2s(0,D.1y[H])}J{1e.1K=U;z.2s(D.1y[H],0)}};z.49=u(32,47){B t=(1p 5o()).5w();7(t>1e.25+z.4J){4p(z.4q);z.4q=16;z.2p=47;z.a();7(D.2F)D.2F[H]=U;B 2c=U;P(B i 1x D.2F)7(D.2F[i]!==U)2c=12;7(2c){y.5T="";y.1h=4D;7(6.1m(D,"1h")=="1Z")y.1h="2D";7(1e.1K)y.1h="1Z";7(1e.1K||1e.1L)P(B p 1x D.2F)7(p=="1d")6.1I(y,p,D.1y[p]);J y[p]=""}7(2c&&6.1t(1e.1X))1e.1X.14(D)}J{B n=t-q.4J;B p=n/1e.25;z.2p=1e.1v&&6.1v[1e.1v]?6.1v[1e.1v](p,n,32,(47-32),1e.25):((-6h.7O(p*6h.8L)/2)+0.5)*(47-32)+32;z.a()}}}})}',62,545,'||||||jQuery|if|||||||||||||||||||this||||function|return||||||var|type|elem|fn|data|event|prop|length|else|each|ret|callback|xml|value|for|cur|speed|element|undefined|true|url|browser||name|||parentNode|false||apply|status|null|document|indexOf|className|val|firstChild|obj|opacity|options|nodeName|push|display|result|msie|global|constructor|css|test|handler|new|style|arg|expr|isFunction|opt|easing|window|in|orig|extend|arguments|context|typeof|filter|args|queue|hidden|events|attr|re|hide|show|add|old|target|table|token|replace|trigger|num|elems|div|ifModified|complete|key|none|tbody|params|while|string|nodeType|duration|animate|ready|height|timeout|nth|get|done|script|nextSibling|remove|not|index|tb|fix|merge|oid|z0|preventDefault|find|now|grep|pushStack|custom|innerHTML|first|cssFloat|catch|encodeURIComponent|Array|el|guid|sibling|error|block|oldblock|curAnim|try|stopPropagation|childNodes|id|wrap|text|success|safari|load|res|exec|al|_|last|substr|has|disabled|insertBefore|selected|checked|curCSS|map|firstNum|removeChild|re2|trim|getAttribute|onreadystatechange|handlers|on|originalEvent|fx|readyList|parPos|src|opera|param|mozilla|visible|domManip|clean|cloneNode|tr|call|split|XMLHttpRequest|ajaxSettings|append|child|String|empty|ajax|form|button|inArray|multiFilter|setRequestHeader|foundToken|9_|readyState|tag|modRes|responseText|second|ival|handleError|toUpperCase|setInterval|makeArray|slice|break|oWidth|Number|returnValue|lastModified|styleFloat|bind|width|isReady|toggle|jquery|dir|eval|mouseover|select|to|defaultView|position|oHeight|lastNum|async|step|globalEval|static|pos|swap|self|from|end|float|alpha|radio|inv|is|toLowerCase|visibility|00|clearInterval|timer|rec|isTimeout|dataType|_resort|RegExp|Function|getAll|requestDone|parents|matched|isXMLDoc|appendChild|oldDisplay|active|triggered|file|documentElement|fn2|startTime|Modified|shift|lastToggle|deep|handleHover|getResponseHeader|ct|submit|px|parseFloat|html|evalScripts|getComputedStyle|getElementById|clone|els|safariTimer|currentStyle|unload|force|execScript|getPropertyValue|newProp|setTimeout|zoom|getScript|1px|sl|settings|GET|rl|check|_toggle|processData|prepend|before|state|removeAttr|ajaxStart|lt|Date|gt|eq|contentType|previousSibling|after|parent|contains|getTime|checkbox|password|appendTo|image|reset|input|webkit|href|continue|beforeSend|ajaxSend|ownerDocument|getElementsByTagName|tmp|notmodified|parse|ajaxSuccess|ajaxComplete|_prefix|ajaxStop|even|odd|overflow|delete|POST|ajaxError|200|handle|httpSuccess|nodeValue|unshift|__ie_init|srcElement|body|pageX|tagName|clientX|scrollLeft|httpNotModified|dequeue|Last|scrollTop|304|xmlRes|unbind|100|Math|httpData|click|mouseout|parseInt|json|createElement|DOMContentLoaded|prevObject|ol|setArray|exclude|join|one|max|do|relative|clientHeight|clientWidth|loadIfModified|serialize|toString|thead|tfoot|td|th|textContent|ActiveXObject|htmlFor|Microsoft|class|XMLHTTP|readOnly|gi|match|getIfModified|9999|getJSON|getAttributeNode|post|setAttribute|ig|ajaxTimeout|ajaxSetup|concat|application|userAgent|compatible|www|compatMode|CSS1Compat|next|urlencoded|siblings|children|slideDown|prependTo|slideUp|Top|insertAfter|slideToggle|removeAttribute|addClass|removeClass|open|toggleClass|Content|Type|lastChild|If|only|Since|fadeIn|Thu|01|fadeOut|enabled|Jan|1970|fadeTo|GMT|textarea|Requested|With|prev|overrideMimeType|Connection|close|boxModel|right|object|Object|navigator|substring|abort|cos|font|send|slow|600|fast|400|location|protocol|300|pageY|clientY|method|action|cancelBubble|hover|fromElement|toElement|relatedTarget|removeEventListener|blur|readonly|focus|resize|content|scroll|dblclick|mousedown|mouseup|mousemove|responseXML|change|keydown|keypress|keyup|addEventListener|write|prototype|size|scr|ipt|createTextNode|defer|FORM|reverse|noConflict|loaded|10000|weight|line|Bottom|Right|Left|padding|border|Width|offsetHeight|offsetWidth|absolute|PI|left'.split('|'),0,{}))

;
/* AGGREGATED JS FILE: misc/drupal.js */
// $Id: drupal.js,v 1.29.2.3 2009/02/26 06:46:48 drumm Exp $

var Drupal = Drupal || {};

 
Drupal.jsEnabled = document.getElementsByTagName && document.createElement && document.createTextNode && document.documentElement && document.getElementById;

 
Drupal.extend = function(obj) {
  for (var i in obj) {
    if (this[i] && (typeof(this[i]) == 'function' || typeof(this[i]) == 'object')) {
   	  Drupal.extend.apply(this[i], [obj[i]]);
    }
    else {
      this[i] = obj[i];
    }
  }
};

 
Drupal.redirectFormButton = function (uri, button, handler) {
  // Trap the button
  button.onmouseover = button.onfocus = function() {
    button.onclick = function() {
      // Create target iframe
      Drupal.createIframe();

      // Prepare variables for use in anonymous function.
      var button = this;
      var action = button.form.action;
      var target = button.form.target;

      // Redirect form submission to iframe
      this.form.action = uri;
      this.form.target = 'redirect-target';

      handler.onsubmit();

      // Set iframe handler for later
      window.iframeHandler = function () {
        var iframe = $('#redirect-target').get(0);
        // Restore form submission
        button.form.action = action;
        button.form.target = target;

        // Get response from iframe body
        try {
          response = (iframe.contentWindow || iframe.contentDocument || iframe).document.body.innerHTML;
          // Firefox 1.0.x hack: Remove (corrupted) control characters
          response = response.replace(/[\f\n\r\t]/g, ' ');
          if (window.opera) {
            // Opera-hack: it returns innerHTML sanitized.
            response = response.replace(/&quot;/g, '"');
          }
        }
        catch (e) {
          response = null;
        }

        response = Drupal.parseJson(response);
        // Check response code
        if (response.status == 0) {
          handler.onerror(response.data);
          return;
        }
        handler.oncomplete(response.data);

        return true;
      }

      return true;
    }
  }
  button.onmouseout = button.onblur = function() {
    button.onclick = null;
  }
};

 
Drupal.absolutePosition = function (el) {
  var sLeft = 0, sTop = 0;
  var isDiv = /^div$/i.test(el.tagName);
  if (isDiv && el.scrollLeft) {
    sLeft = el.scrollLeft;
  }
  if (isDiv && el.scrollTop) {
    sTop = el.scrollTop;
  }
  var r = { x: el.offsetLeft - sLeft, y: el.offsetTop - sTop };
  if (el.offsetParent) {
    var tmp = Drupal.absolutePosition(el.offsetParent);
    r.x += tmp.x;
    r.y += tmp.y;
  }
  return r;
};

 
Drupal.dimensions = function (el) {
  return { width: el.offsetWidth, height: el.offsetHeight };
};

 
Drupal.mousePosition = function(e) {
  return { x: e.clientX + document.documentElement.scrollLeft, y: e.clientY + document.documentElement.scrollTop };
};

 
Drupal.parseJson = function (data) {
  if ((data.substring(0, 1) != '{') && (data.substring(0, 1) != '[')) {
    return { status: 0, data: data.length ? data : 'Unspecified error' };
  }
  return eval('(' + data + ');');
};

 
Drupal.createIframe = function () {
  if ($('#redirect-holder').size()) {
    return;
  }
  // Note: some browsers require the literal name/id attributes on the tag,
  // some want them set through JS. We do both.
  window.iframeHandler = function () {};
  var div = document.createElement('div');
  div.id = 'redirect-holder';
  $(div).html('<iframe name="redirect-target" id="redirect-target" class="redirect" onload="window.iframeHandler();"></iframe>');
  var iframe = div.firstChild;
  $(iframe)
    .attr({
      name: 'redirect-target',
      id: 'redirect-target'
    })
    .css({
      position: 'absolute',
      height: '1px',
      width: '1px',
      visibility: 'hidden'
    });
  $('body').append(div);
};

 
Drupal.deleteIframe = function () {
  $('#redirect-holder').remove();
};

 
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);
};

 
Drupal.unfreezeHeight = function () {
  $('#freeze-height').remove();
};

 
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');
};

// Global Killswitch on the <html> element
if (Drupal.jsEnabled) {
  $(document.documentElement).addClass('js');
}

;
/* AGGREGATED JS FILE: modules/compact_forms/compact_forms.js */




(function($){
  $.fn.compactForm = function(stars, colons) {
    var stars = stars || 0;
    var colons = colons || 0;
    this.each(function(index) {
      $(this).find("label").each(function() {
        var label = $(this);
        var field = $("#" + label.attr("for"));
        if (field.attr("type") != "text" && field.attr("type") != "password") {
          return;
        }

        if($(field).val() != "") {
            $(label).fadeOut(1);
        }

        $(label).parent().addClass("compact-form-wrapper");
        label.addClass("compact-form-label");
        field.addClass("compact-form-field");

        if (stars === 0) {
          $(label).find(".form-required").hide();
        } else if (stars === 2) {
          $(label).find(".form-required").insertAfter(field).prepend("&nbsp;");
        }

        if (colons === 0) {
          var lbl = $(label).html();
          lbl = lbl.replace(/:/," ");
          $(label).html(lbl);
        }

        $(field).focus(function() {
          if($(this).val() === "") {            $(label).fadeOut("fast");          }        });

        $(field).blur(function() {
          if($(this).val() === "") {            $(label).fadeIn("slow");          }        });
      });
    });
  }
})(jQuery);

;
/* AGGREGATED JS FILE: modules/jquery_update/compat-1.0.js */
// UPGRADE: The following attribute helpers should now be used as:
// .attr("title") or .attr("title","new title")
jQuery.each(["id","title","name","href","src","rel"], function(i,n){
  jQuery.fn[ n ] = function(h) {
    return h == undefined ?
      this.length ? this[0][n] : null :
      this.attr( n, h );
  };
});

// UPGRADE: The following css helpers should now be used as:
// .css("top") or .css("top","30px")
jQuery.each("top,left,position,float,overflow,color,background".split(","), function(i,n){
  jQuery.fn[ n ] = function(h) {
    return h == undefined ?
      ( this.length ? jQuery.css( this[0], n ) : null ) :
      this.css( n, h );
  };
});

// UPGRADE: The following event helpers should now be used as such:
// .oneblur(fn) -> .one("blur",fn)
// .unblur(fn) -> .unbind("blur",fn)
var e = ("blur,focus,load,resize,scroll,unload,click,dblclick," +
  "mousedown,mouseup,mousemove,mouseover,mouseout,change,reset,select," + 
  "submit,keydown,keypress,keyup,error").split(",");

// Go through all the event names, but make sure that
// it is enclosed properly
for ( var i = 0; i < e.length; i++ ) new function(){
      
  var o = e[i];
    
  // Handle event unbinding
  jQuery.fn["un"+o] = function(f){ return this.unbind(o, f); };
    
  // Finally, handle events that only fire once
  jQuery.fn["one"+o] = function(f){
    // save cloned reference to this
    var element = jQuery(this);
    var handler = function() {
      // unbind itself when executed
      element.unbind(o, handler);
      element = null;
      // apply original handler with the same arguments
      return f.apply(this, arguments);
    };
    return this.bind(o, handler);
  };
      
};

// UPGRADE: .ancestors() was removed in favor of .parents()
jQuery.fn.ancestors = jQuery.fn.parents;

// UPGRADE: The CSS selector :nth-child() now starts at 1, instead of 0
jQuery.expr[":"]["nth-child"] = "jQuery.nth(a.parentNode.firstChild,parseInt(m[3])+1,'nextSibling')==a";

// UPGRADE: .filter(["div", "span"]) now becomes .filter("div, span")
jQuery.fn._filter = jQuery.fn.filter;
jQuery.fn.filter = function(arr){
  return this._filter( arr.constructor == Array ? arr.join(",") : arr );
};

;
/* AGGREGATED JS FILE: modules/livesearch/livesearch.js */
// $Id: livesearch.js,v 1.15 2007/07/21 05:07:00 kourge Exp $
if (Drupal.jsEnabled) { // global killswitch
(function($) { // Dollar namespace scoping
Drupal.LiveSearch = {
  timer: null, 
  localizedTerm: null, 
  id: 'live-search-results',
  
  eventListener: function(event) {
    if (event.keyCode == 27) { // KEY_ESC = 27
      $(this).val('');
	  
	  // I'm fed up with debugging animations. ITFC if you like.
      $('#' + Drupal.LiveSearch.id).empty().fadeOut("slow");
    }
    else {
      try {window.clearTimeout(Drupal.LiveSearch.timer);} catch (e) {}
      // Throttle and delay
      Drupal.LiveSearch.timer = window.setTimeout(
        'Drupal.LiveSearch.initiateSearch()', 
        parseInt(Drupal.settings.liveSearch.delayDuration) || 1250
      );
    }
  },
  
  initiateSearch: function() {
    var id = this.id;
    // Typing this over and over drives me over the edge.
    var settings = Drupal.settings.liveSearch;
    var type = settings.targetSearchBox || 'theme';
    var searchBox = $('input#edit-search-' + type + '-form-keys');
    var keyword = Drupal.encodeURIComponent(searchBox.val());
    
	if (!keyword ||
        keyword.length < settings.minimumWordSize ||
        keyword == this.localizedTerm) {
      $('#' + id).empty().fadeOut("slow");
      return;
    } else {
      searchBox.addClass('throbbing');
      this.requestAndInject(settings.queryURL + '/' + keyword);
    }
  },
  
  requestAndInject: function(url) {
    var settings = Drupal.settings.liveSearch;
    var type = settings.targetSearchBox || 'theme';
    var id = this.id, scrollTo = this.scrollTo;
    $.getJSON(url, function(data) {
      var target = $('#' + id);
      target.html(data.found ? data.results : data.message).show();
      $('input#edit-search-' + type + '-form-keys').removeClass('throbbing');
      // Handle paging.
      $('a[@href^=' + settings.queryURL + ']', target).click(function(event) {
        Drupal.LiveSearch.requestAndInject($(this).attr('href'));
        return false;
      });
      // Scroll to the top of the search results.
      if (settings.scrollToResults) {scrollTo(target.get(0));}
    });
  },
  
  scrollTo: function(element) {
    var t = 0, l = 0;
    // Retrieve cumulative offset of the search results element.
    do {
      t += element.offsetTop || 0;
      l += element.offsetLeft || 0;
      element = element.offsetParent;
    } while (element);
    // Scroll to the element.
    window.scrollTo(l, t);
  }
};

// This should be faster than 'document'.
$('input').ready(function() {
  var settings = Drupal.settings.liveSearch;
  // User permission killswitch
  if (!settings.searchAllowed) {return;}
  var type = settings.targetSearchBox || 'theme';
  var searchForm = $('form#search-' + type + '-form');
  var searchBox = $('#edit-search-' + type + '-form-keys');
  var localizedTerm;
  
  // Search box killswitch, in case a search block is optionally visible.
  if (searchBox.length == 0) {return;}
  
  Drupal.LiveSearch.localizedTerm = localizedTerm = 
    $('input[@type=submit]', searchForm).val();
  
  searchForm.addClass('live-search');
  
  if (!settings.useCustomElement) {
    searchForm.append('<div id="' + Drupal.LiveSearch.id + '"></div>');
  } else {
    Drupal.LiveSearch.id = settings.customElementId;
  }
  var target = $('#' + Drupal.LiveSearch.id).hide();
  
  if (settings.hideSnippets) {target.addClass('hide-snippet');}
  target.addClass(settings.showItemInfo ? 'show-item-info' : 'hide-item-info');
  
  // Apple HIG fans should appreciate this option.
  if (settings.compactSearchBox) {
    searchForm.addClass('compact');
    searchBox.val(
      localizedTerm
    ).focus(function() {
      if ($(this).val() == localizedTerm) {
        $(this).val('');
      }
    }).click(function() {
      //if (!$(this).val()) {
      //  $(this).val(localizedTerm);
		$('#' + Drupal.LiveSearch.id).fadeOut("slow");
      //}
	}).blur(function() {
      if (!$(this).val()) {
        $(this).val(localizedTerm);
	  }
    });
  }

  searchBox.
    addClass('form-autocomplete').
    keyup(Drupal.LiveSearch.eventListener).
    attr('autocomplete', 'off');
});
})(jQuery); // End dollar namespace scoping
} // End global killswitch
;
/* AGGREGATED JS FILE: modules/thickbox/thickbox_login.js */
// $Id: thickbox_login.js,v 1.1.2.2 2007/04/06 08:55:31 frjo Exp $
// Contributed by user jmiccolis.
$(document).ready(function() { $("a[@href*='/user/login']").addClass('thickbox').each(function() { this.href = this.href.replace(/user\/login\??/,"thickbox_login?height=220&width=250&") }) });
$(document).ready(function() { $("a[@href*='?q=user/login']").addClass('thickbox').each(function() { this.href = this.href.replace(/user\/login/,"thickbox_login&height=220&width=250") }) });
;
/* AGGREGATED JS FILE: modules/thickbox/thickbox_auto.js */
// $Id: thickbox_auto.js,v 1.2.2.3 2007/06/05 06:29:51 frjo Exp $

 
$(document).ready(function() {

  // 1. "mark" the category overview pictures.
  $("ul.galleries a[img.image.image-thumbnail]").addClass("category");

  // 2. Group the images in specific contexts,

  // find all the nodes,
  $(".node .content").each(function(i) {
    var group = "node-g" + i;
    TB_drupal_rewrite(this, group);
  });

  // find the categories.
  $("ul.images").each(function(i) {
    var group = "gallery-g" + i;
    TB_drupal_rewrite(this, group);
  });

  // 3. Rewrite the remaining images without grouping.
  TB_drupal_rewrite(document, null);
});

function TB_drupal_rewrite(context, group) {
  // Process only images, that have not been rewritten (.thickbox) and that are not categories.
  $("a[img.image.image-thumbnail]", context).not(".thickbox").not(".category").each(function(i) {
    var img = $(this).children("img");
    var title = $(this).attr("title") || img.attr("title") || img.attr("alt") || null;

     
    if (true || thickbox_derivative == "original") {
      var href = img.attr("src").replace(".thumbnail", "");
    }
    else {
      var href = img.attr("src").replace(".thumbnail", "." + thickbox_derivative);
    }

    // Finally rewrite the link and wait for thickbox.js to apply the effects.
    $(this).attr({href: href, title: title, rel: group});
    $(this).addClass("thickbox");
  });
}

;
/* AGGREGATED JS FILE: modules/thickbox/thickbox.js */
// $Id: thickbox.js,v 1.2.4.1 2007/03/14 14:30:10 frjo Exp $

 

//on page load call TB_init
$(document).ready(TB_init);

//add thickbox to href elements that have a class of .thickbox
function TB_init(){
  $("a.thickbox,area.thickbox").click(function(){
  var t = this.title || this.name || null;
  var g = this.rel || false;
  TB_show(t,this.href,g);
  this.blur();
  return false;
  });
}

function TB_show(caption, url, imageGroup) {//function called when the user clicks on a thickbox link

  try {
    if (document.getElementById("TB_HideSelect") == null) {
    $("body").append("<iframe id='TB_HideSelect'></iframe><div id='TB_overlay'></div><div id='TB_window'></div>");
    $("#TB_overlay").click(TB_remove);
    }

    if(caption==null){caption=""};

    $(window).scroll(TB_position);

    TB_overlaySize();

    $("body").append("<div id='TB_load'></div>");
    TB_load_position();



     if(url.indexOf("?")!==-1){ //If there is a query string involved
      var baseURL = url.substr(0, url.indexOf("?"));
     }else{
        var baseURL = url;
     }
     var urlString = /\.jpg|\.jpeg|\.png|\.gif|\.bmp/g;
     var urlType = baseURL.toLowerCase().match(urlString);

    if(urlType == '.jpg' || urlType == '.jpeg' || urlType == '.png' || urlType == '.gif' || urlType == '.bmp'){//code to show images

      TB_PrevCaption = "";
      TB_PrevURL = "";
      TB_PrevHTML = "";
      TB_NextCaption = "";
      TB_NextURL = "";
      TB_NextHTML = "";
      TB_imageCount = "";
      TB_FoundURL = false;
      if(imageGroup){
        TB_TempArray = $("a[@rel="+imageGroup+"]").get();
        for (TB_Counter = 0; ((TB_Counter < TB_TempArray.length) && (TB_NextHTML == "")); TB_Counter++) {
          var urlTypeTemp = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);
            if (!(TB_TempArray[TB_Counter].href == url)) {
              if (TB_FoundURL) {
                TB_NextCaption = TB_TempArray[TB_Counter].title;
                TB_NextURL = TB_TempArray[TB_Counter].href;
                TB_NextHTML = "<span id='TB_next'>&nbsp;&nbsp;<a href='#'>Next &gt;</a></span>";
              } else {
                TB_PrevCaption = TB_TempArray[TB_Counter].title;
                TB_PrevURL = TB_TempArray[TB_Counter].href;
                TB_PrevHTML = "<span id='TB_prev'>&nbsp;&nbsp;<a href='#'>&lt; Prev</a></span>";
              }
            } else {
              TB_FoundURL = true;
              TB_imageCount = "Image " + (TB_Counter + 1) +" of "+ (TB_TempArray.length);
            }
        }
      }

      imgPreloader = new Image();
      imgPreloader.onload = function(){
      imgPreloader.onload = null;

      // Resizing large images - orginal by Christian Montoya edited by me.
      var pagesize = TB_getPageSize();
      var x = pagesize[0] - 150;
      var y = pagesize[1] - 150;
      var imageWidth = imgPreloader.width;
      var imageHeight = imgPreloader.height;
      if (imageWidth > x) {
        imageHeight = imageHeight * (x / imageWidth);
        imageWidth = x;
        if (imageHeight > y) {
          imageWidth = imageWidth * (y / imageHeight);
          imageHeight = y;
        }
      } else if (imageHeight > y) {
        imageWidth = imageWidth * (y / imageHeight);
        imageHeight = y;
        if (imageWidth > x) {
          imageHeight = imageHeight * (x / imageWidth);
          imageWidth = x;
        }
      }
      // End Resizing

      TB_WIDTH = imageWidth + 30;
      TB_HEIGHT = imageHeight + 60;
      $("#TB_window").append("<a href='' id='TB_ImageOff' title='Close'><img id='TB_Image' src='"+url+"' width='"+imageWidth+"' height='"+imageHeight+"' alt='"+caption+"'/></a>" + "<div id='TB_caption'>"+caption+"<div id='TB_secondLine'>" + TB_imageCount + TB_PrevHTML + TB_NextHTML + "</div></div><div id='TB_closeWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div>");

      $("#TB_closeWindowButton").click(TB_remove);

      if (!(TB_PrevHTML == "")) {
        function goPrev(){
          if($(document).unclick(goPrev)){$(document).unclick(goPrev)};
          $("#TB_window").remove();
          $("body").append("<div id='TB_window'></div>");
          TB_show(TB_PrevCaption, TB_PrevURL, imageGroup);
          return false;
        }
        $("#TB_prev").click(goPrev);
      }

      if (!(TB_NextHTML == "")) {
        function goNext(){
          $("#TB_window").remove();
          $("body").append("<div id='TB_window'></div>");
          TB_show(TB_NextCaption, TB_NextURL, imageGroup);
          return false;
        }
        $("#TB_next").click(goNext);

      }

      document.onkeydown = function(e){
        if (e == null) { // ie
          keycode = event.keyCode;
        } else { // mozilla
          keycode = e.which;
        }
        if(keycode == 27){ // close
          TB_remove();
        } else if(keycode == 190){ // display previous image
          if(!(TB_NextHTML == "")){
          document.onkeydown = "";
          goNext();
          }
        } else if(keycode == 188){ // display next image
          if(!(TB_PrevHTML == "")){
          document.onkeydown = "";
          goPrev();
          }
        }
      }

      TB_position();
      $("#TB_load").remove();
      $("#TB_ImageOff").click(TB_remove);
      $("#TB_window").css({display:"block"}); //for safari using css instead of show
      }

      imgPreloader.src = url;
    }else{//code to show html pages

      var queryString = url.replace(/^[^\?]+\??/,'');
      var params = TB_parseQuery( queryString );

      TB_WIDTH = (params['width']*1) + 30;
      TB_HEIGHT = (params['height']*1) + 40;
      ajaxContentW = TB_WIDTH - 30;
      ajaxContentH = TB_HEIGHT - 45;

      if(url.indexOf('TB_iframe') != -1){
          urlNoQuery = url.split('TB_');
          $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton' title='Close'>close</a></div></div><iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;' onload='TB_showIframe()'> </iframe>");
        }else{
          $("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'>close</a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px;'></div>");
      }

      $("#TB_closeWindowButton").click(TB_remove);

        if(url.indexOf('TB_inline') != -1){
          $("#TB_ajaxContent").html($('#' + params['inlineId']).html());
          TB_position();
          $("#TB_load").remove();
          $("#TB_window").css({display:"block"});
        }else if(url.indexOf('TB_iframe') != -1){
          TB_position();
          if(frames['TB_iframeContent'] == undefined){//be nice to safari
            $("#TB_load").remove();
            $("#TB_window").css({display:"block"});
            $(document).keyup( function(e){ var key = e.keyCode; if(key == 27){TB_remove()} });
          }
        }else{
          $("#TB_ajaxContent").load(url, function(){
            TB_position();
            $("#TB_load").remove();
            $("#TB_window").css({display:"block"});
          });
        }

    }

    $(window).resize(TB_position);

    document.onkeyup = function(e){
      if (e == null) { // ie
        keycode = event.keyCode;
      } else { // mozilla
        keycode = e.which;
      }
      if(keycode == 27){ // close
        TB_remove();
      }
    }

  } catch(e) {
    alert( e );
  }
}

//helper functions below

function TB_showIframe(){
  $("#TB_load").remove();
  $("#TB_window").css({display:"block"});
}

function TB_remove() {
  $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove();});
  $("#TB_load").remove();
  return false;
}

function TB_position() {
  var pagesize = TB_getPageSize();
  var arrayPageScroll = TB_getPageScrollTop();
  $("#TB_window").css({width:TB_WIDTH+"px",left: (arrayPageScroll[0] + (pagesize[0] - TB_WIDTH)/2)+"px", top: (arrayPageScroll[1] + (pagesize[1]-TB_HEIGHT)/2)+"px" });
}

function TB_overlaySize(){
  if (window.innerHeight && window.scrollMaxY || window.innerWidth && window.scrollMaxX) {
    yScroll = window.innerHeight + window.scrollMaxY;
    xScroll = window.innerWidth + window.scrollMaxX;
  } else if (document.body.scrollHeight > document.body.offsetHeight || document.body.scrollWidth > document.body.offsetWidth){ // all but Explorer Mac
    yScroll = document.body.scrollHeight;
    xScroll = document.body.scrollWidth;
  } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
    yScroll = document.body.offsetHeight;
    xScroll = document.body.offsetWidth;
    }
  $("#TB_overlay").css({"height":yScroll +"px", "width":xScroll +"px"});
  $("#TB_HideSelect").css({"height":yScroll +"px","width":xScroll +"px"});
}

function TB_load_position() {
  var pagesize = TB_getPageSize();
  var arrayPageScroll = TB_getPageScrollTop();
  $("#TB_load")
  .css({left: (arrayPageScroll[0] + (pagesize[0] - 100)/2)+"px", top: (arrayPageScroll[1] + ((pagesize[1]-100)/2))+"px" })
  .css({display:"block"});
}

function TB_parseQuery ( query ) {
   var Params = new Object ();
   if ( ! query ) return Params; // return empty object
   var Pairs = query.split(/[;&]/);
   for ( var i = 0; i < Pairs.length; i++ ) {
      var KeyVal = Pairs[i].split('=');
      if ( ! KeyVal || KeyVal.length != 2 ) continue;
      var key = unescape( KeyVal[0] );
      var val = unescape( KeyVal[1] );
      val = val.replace(/\+/g, ' ');
      Params[key] = val;
   }
   return Params;
}

function TB_getPageScrollTop(){
  var yScrolltop;
  var xScrollleft;
  if (self.pageYOffset || self.pageXOffset) {
    yScrolltop = self.pageYOffset;
    xScrollleft = self.pageXOffset;
  } else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){  // Explorer 6 Strict
    yScrolltop = document.documentElement.scrollTop;
    xScrollleft = document.documentElement.scrollLeft;
  } else if (document.body) {// all other Explorers
    yScrolltop = document.body.scrollTop;
    xScrollleft = document.body.scrollLeft;
  }
  arrayPageScroll = new Array(xScrollleft,yScrolltop)
  return arrayPageScroll;
}

function TB_getPageSize(){
  var de = document.documentElement;
  var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
  var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight
  arrayPageSize = new Array(w,h)
  return arrayPageSize;
}

;
/* AGGREGATED JS FILE: modules/gmap/js/gmap.js */
 

// GMap overseer singleton
Drupal.gmap = new function() {
  var _handlers = {};
  var _maps = {};
  var querypath;

   
  this.getMap = function(mapid) {
    return _maps[mapid];
  };

  this.addHandler = function(handler,callback) {
    if (!_handlers[handler]) {
      _handlers[handler] = new Array();
    }
    _handlers[handler].push(callback);
  };

  this.globalChange = function(name,userdata) {
    for (var mapid in Drupal.settings.gmap) {
      _maps[mapid].change(name,-1,userdata);
    }
  }

  this.setup = function() {
    if (Drupal.settings && Drupal.settings.gmap) {
      for (mapid in Drupal.settings.gmap) {
        _maps[mapid] = new Drupal.gmap.map(Drupal.settings.gmap[mapid]);
        
        // Pick up the query path for json requests.
        if (!Drupal.gmap.querypath) {
          Drupal.gmap.querypath = Drupal.settings.gmap[mapid].querypath;
        }

        for (control in _handlers) {
          var s = 0;
          do {
            var o = $('#gmap-'+mapid+'-'+control+s);
            o.each(function() {
                for (var i=0; i<_handlers[control].length; i++) {
                  _handlers[control][i].call(_maps[mapid],this);
                }
            });
            s++;
          }
          while (o.length>0);
        }

        _maps[mapid].change("init",-1);

        // Send some changed events to fire up the rest of the initial settings..
        _maps[mapid].change("maptypechange",-1);
        _maps[mapid].change("controltypechange",-1);
        _maps[mapid].change("alignchange",-1);

        // Set ready to put the event system into action.
        _maps[mapid].ready = true;
        _maps[mapid].change("ready",-1);

      }
    }
  }
}

Drupal.gmap.factory = {};

Drupal.gmap.map = function(v) {
  this.vars = v;
  this.map = undefined;
  this.ready = false;
  var _bindings = {};

   
  this.bind = function(name,callback) {
    if (!_bindings[name]) {
      _bindings[name] = new Array();
    }
    return _bindings[name].push(callback) - 1;
  };

   
  this.change = function(name,id,userdata) {
    var c;
    if (_bindings[name]) {
      for (c=0; c<_bindings[name].length; c++) {
        if (c==id) continue;
        (_bindings[name][c])(userdata);
      }
    }
    if (name != 'all') {
      this.change('all',-1,name,userdata);
    }
  };

   
  this.deferChange = function(name,id,userdata) {
    var obj = this;
    // This will move the function call to the end of the event loop.
    setTimeout(function(){obj.change(name,id,userdata)},0);
  };
};

////////////////////////////////////////
//             Map widget             //
////////////////////////////////////////
Drupal.gmap.addHandler('gmap',function(elem) {
  var obj = this;
  // Make it a gmap.
  var map = new GMap2(elem);

  // Hide away a reference to the map
  obj.map = map;

  obj.bind("init",function() {
    if (!obj.vars.behavior.notype) {
      map.addControl(new GMapTypeControl());
    }
    if (obj.vars.behavior.overview) {
      map.addControl(new GOverviewMapControl());
    }
    if (obj.vars.behavior.scale) {
      map.addControl(new GScaleControl());
    }
    if (obj.vars.behavior.nodrag) {
      map.disableDragging();
    }
    else if (!obj.vars.behavior.nokeyboard) {
      new GKeyboardHandler(map);
    }
    if (obj.vars.behavior.collapsehack) {
      // Modify collapsable fieldsets to make maps check dom state when the resize handle
      // is clicked. This may not necessarily be the correct thing to do in all themes,
      // hence it being a behavior.
      setTimeout(function(){
        var r = function() { map.checkResize() };
        $(elem).parents('fieldset.collapsible').children('legend').children('a').click(r);
        // Would be nice, but doesn't work.
        //$(elem).parents('fieldset.collapsible').children('.fieldset-wrapper').scroll(r);
      },0);
    }
    map.setCenter(new GLatLng(obj.vars.latitude,obj.vars.longitude), obj.vars.zoom);
    if (jQuery.fn.mousewheel && !obj.vars.behavior.nomousezoom) {
      $(elem).mousewheel(function(event, delta) {
        var zoom = map.getZoom();
        if (delta > 0) {
          zoom++;
        }
        else if (delta < 0) {
          zoom--;
        }
        map.setZoom(zoom);
        // Event handled.
        return false;
      });
    }
  });

  // Respond to incoming zooms
  var binding = obj.bind("zoom",function(){map.setZoom(obj.vars.zoom)});
  // Send out outgoing zooms
  GEvent.addListener(map, "zoomend", function(oldzoom,newzoom) {
    obj.vars.zoom = newzoom;
    obj.change("zoom",binding);
  });
  // Sync zoom if different after move.
  // Partial workaround for a zoom + move bug.
  // Full solution will involve listening to movestart and forbidding zooms
  // until complete.
  GEvent.addListener(map, "moveend", function() {
    if (map.getZoom() != obj.vars.zoom) {
      obj.change("zoom");
    }
  });

  // Respond to incoming moves
  binding = obj.bind("move",function(){map.panTo(new GLatLng(obj.vars.latitude,obj.vars.longitude))});
  // Send out outgoing moves
  GEvent.addListener(map,"moveend",function() {
    var coord = map.getCenter();
    obj.vars.latitude = coord.lat();
    obj.vars.longitude = coord.lng();
    obj.change("move",binding);
  });

  // Respond to incoming map type changes
  binding = obj.bind("maptypechange",function(){
    var type;
    if(obj.vars.maptype=='Map') type = G_NORMAL_MAP;
    if(obj.vars.maptype=='Hybrid') type = G_HYBRID_MAP;
    if(obj.vars.maptype=='Satellite') type = G_SATELLITE_MAP;
    map.setMapType(type);
  });
  // Send out outgoing map type changes.
  GEvent.addListener(map,"maptypechanged",function() {
    // If the map isn't ready yet, ignore it.
    if (map.ready) {
      var type = map.getCurrentMapType();
      if(type==G_NORMAL_MAP) obj.vars.maptype = 'Map';
      if(type==G_HYBRID_MAP) obj.vars.maptype = 'Hybrid';
      if(type==G_SATELLITE_MAP) obj.vars.maptype = 'Satellite';
      obj.change("maptypechange",binding);
    }
  });

  // Respond to incoming width changes.
  binding = obj.bind("widthchange",function(w){
    map.getContainer().style.width = w;
    map.checkResize();
  });
  // Send out outgoing width changes.
  // N/A
  // Respond to incoming height changes.
  binding = obj.bind("heightchange",function(h){
    map.getContainer().style.height = h;
    map.checkResize();
  });
  // Send out outgoing height changes.
  // N/A

  // Respond to incoming control type changes.
  binding = obj.bind("controltypechange",function() {
    if(obj.currentcontrol) {
      map.removeControl(obj.currentcontrol);
    }
    if (obj.vars.controltype=='Small') map.addControl(obj.currentcontrol = new GSmallMapControl());
    if (obj.vars.controltype=='Large') map.addControl(obj.currentcontrol = new GLargeMapControl());
  });
  // Send out outgoing control type changes.
  // N/A
});

////////////////////////////////////////
//            Zoom widget             //
////////////////////////////////////////
Drupal.gmap.addHandler('zoom', function(elem) {
  var obj = this;
  // Respond to incoming zooms
  var binding = obj.bind("zoom",function(){elem.value = obj.vars.zoom});
  // Send out outgoing zooms
  $(elem).change(function() {
    obj.vars.zoom = parseInt(elem.value);
    obj.change("zoom",binding);
  });
});

////////////////////////////////////////
//          Latitude widget           //
////////////////////////////////////////
Drupal.gmap.addHandler('latitude', function(elem) {
  var obj = this;
  // Respond to incoming movements.
  var binding = obj.bind("move",function(){elem.value = ''+obj.vars.latitude});
  // Send out outgoing movements.
  $(elem).change(function() {
    obj.vars.latitude = this.value;
    obj.change("move",binding);
  });
});

////////////////////////////////////////
//         Longitude widget           //
////////////////////////////////////////
Drupal.gmap.addHandler('longitude', function(elem) {
  var obj = this;
  // Respond to incoming movements.
  var binding = obj.bind("move",function(){elem.value = ''+obj.vars.longitude});
  // Send out outgoing movements.
  $(elem).change(function() {
    obj.vars.longitude = this.value;
    obj.change("move",binding);
  });
});

////////////////////////////////////////
//          Latlon widget             //
////////////////////////////////////////
Drupal.gmap.addHandler('latlon', function(elem) {
  var obj = this;
  // Respond to incoming movements.
  var binding = obj.bind("move",function(){elem.value = ''+obj.vars.latitude+','+obj.vars.longitude});
  // Send out outgoing movements.
  $(elem).change(function() {
    var t = this.value.split(',');
    obj.vars.latitude = t[0];
    obj.vars.longitude = t[1];
    obj.change("move",binding);
  });
});

////////////////////////////////////////
//          Maptype widget            //
////////////////////////////////////////
Drupal.gmap.addHandler('maptype', function(elem) {
  var obj = this;
  // Respond to incoming movements.
  var binding = obj.bind("maptypechange",function(){elem.value = obj.vars.maptype});
  // Send out outgoing movements.
  $(elem).change(function() {
    obj.vars.maptype = elem.value;
    obj.change("maptypechange",binding);
  });
});

(function() { // BEGIN CLOSURE
  var re = /([0-9.]+)\s*(em|ex|px|in|cm|mm|pt|pc|%)/;
  var normalize = function(str) {
    if ((ar = re.exec(str.toLowerCase()))) {
      return ar[1] + ar[2];
    }
    return null;
  };
////////////////////////////////////////
//           Width widget             //
////////////////////////////////////////
Drupal.gmap.addHandler('width', function(elem) {
  var obj = this;
  // Respond to incoming width changes.
  var binding = obj.bind("widthchange",function(w){elem.value = normalize(w)});
  // Send out outgoing width changes.
  $(elem).change(function() {
    var n;
    if ((n = normalize(elem.value))) {
      elem.value = n;
      obj.change('widthchange', binding, n);
    }
  });
  obj.bind('init',function(){$(elem).change()});
});

////////////////////////////////////////
//           Height widget            //
////////////////////////////////////////
Drupal.gmap.addHandler('height', function(elem) {
  var obj = this;
  // Respond to incoming height changes.
  var binding = obj.bind("heightchange",function(h){elem.value = normalize(h)});
  // Send out outgoing height changes.
  $(elem).change(function() {
    var n;
    if ((n = normalize(elem.value))) {
      elem.value = n;
      obj.change('heightchange', binding, n);
    }
  });
  obj.bind('init',function(){$(elem).change()});
});

})(); // END CLOSURE

////////////////////////////////////////
//        Control type widget         //
////////////////////////////////////////
Drupal.gmap.addHandler('controltype', function(elem) {
  var obj = this;
  // Respond to incoming height changes.
  var binding = obj.bind("controltypechange",function(){elem.value = obj.vars.controltype});
  // Send out outgoing height changes.
  $(elem).change(function() {
    obj.vars.controltype = elem.value;
    obj.change("controltypechange",binding);
  });
});

////////////////////////////////////////
//           Map ID widget            //
////////////////////////////////////////
Drupal.gmap.addHandler('mapid', function(elem) {
  var obj = this;
  // Respond to incoming map id changes.
  var binding = obj.bind("idchange",function(){elem.value = obj.vars.id});
  // Send out outgoing map id changes.
  $(elem).change(function() {
    obj.vars.id = elem.value;
    obj.change("idchange",binding);
  });
});

if (Drupal.jsEnabled) {
  $(document).ready(Drupal.gmap.setup)
    .unload(function() {
      //Google cleanup.
      GUnload();
    });
}

;
/* AGGREGATED JS FILE: modules/gmap/js/marker.js */
 
// $Id: marker.js,v 1.1.2.1 2007/09/18 20:43:26 bdragon Exp $

Drupal.gmap.addHandler('gmap', function(elem) {
  var obj = this;

  obj.bind('addmarker',function(marker) {
    var m = Drupal.gmap.factory.marker(new GLatLng(marker.latitude,marker.longitude), marker.opts);
    marker.marker = m;
    GEvent.addListener(m,'click',function() {
      obj.change('clickmarker',-1,marker);
    });
    if (obj.vars.behavior.extramarkerevents) {
      GEvent.addListener(m,'mouseover',function() {
        obj.change('mouseovermarker',-1,marker);
      });
      GEvent.addListener(m,'mouseout',function() {
        obj.change('mouseoutmarker',-1,marker);
      });
      GEvent.addListener(m,'dblclick',function() {
        obj.change('dblclickmarker',-1,marker);
      });
    }
     
    if (marker.autoclick || (marker.options && marker.options.autoclick)) {
      obj.deferChange('clickmarker',-1,marker);
    }
  });

  // Default marker actions.
  obj.bind('clickmarker',function(marker) {
    if (marker.text) {
      marker.marker.openInfoWindowHtml(marker.text);
    }
    if (marker.rmt) {
      $.get(obj.vars.rmtcallback + '/' + marker.rmt, {}, function(data){
        marker.marker.openInfoWindowHtml(data);
      });
    }
    else if (marker.tabs) {
      var infoWinTabs = [];
      for (m in marker.tabs) {
        infoWinTabs.push(new GInfoWindowTab(m,marker.tabs[m]));
      }
      marker.marker.openInfoWindowTabsHtml(infoWinTabs);
    }
    else if (marker.link) {
        open(marker.link,'_self');
    }
  });
});

;
/* AGGREGATED JS FILE: modules/gmap/js/gmap_marker.js */
 
 

// Replace to override marker creation
Drupal.gmap.factory.marker = function(loc,opts) {
  return new GMarker(loc,opts);
}

Drupal.gmap.addHandler('gmap', function(elem) {
  var obj = this;

  obj.bind('addmarker',function(marker) {
    obj.map.addOverlay(marker.marker);
    if (obj.vars.behavior.autozoom) {
      // Init bounds if needed.
      // @@@ Unify bounds between markers and shapes? I really don't think this belongs here.
      if (!obj.bounds) {
        obj.bounds = new GLatLngBounds(marker.marker.getPoint(), marker.marker.getPoint());
      }
      else {
        obj.bounds.extend(marker.marker.getPoint());
      }
      obj.map.setCenter(obj.bounds.getCenter(),obj.map.getBoundsZoomLevel(obj.bounds));
    }
  });

  obj.bind('delmarker',function(marker) {
    obj.map.removeOverlay(marker.marker);
  });

  obj.bind('clearmarkers',function() {
    // @@@ Maybe don't nuke ALL overlays?
    obj.map.clearOverlays();
    // Reset bounds if autozooming
    if (obj.vars.behavior.autozoom) {
      obj.bounds = null;
    }
  });
});

;
/* AGGREGATED JS FILE: modules/gmap/js/poly.js */
 
 

Drupal.gmap.map.prototype.poly = {};

 
Drupal.gmap.map.prototype.poly.distance = function(point1,point2) {
  return Math.sqrt(Math.pow(point2.x - point1.x,2)+Math.pow(point2.y - point1.y,2));
}

 
Drupal.gmap.map.prototype.poly.computeCircle = function(obj,center,point2) {
  var numSides = 36;
  var sideInc = 10; // 360 / 20 = 18 degrees
  var convFactor = Math.PI/180;
  var points = Array();
  var radius = obj.poly.distance(center,point2);
  // 36 sided poly ~= circle
  for (var i = 0; i <= numSides; i++) {
    var rad = i*sideInc*convFactor;
    var x = center.x + radius * Math.cos(rad);
    var y = center.y + radius * Math.sin(rad);
    //points.push(obj.map.getCurrentMapType().getProjection().fromPixelToLatLng(new GPoint(x,y),obj.map.getZoom()));
    points.push(new GPoint(x,y));
  }
  return points;
};

Drupal.gmap.map.prototype.poly.calcPolyPoints = function(center, radM, numPoints, sAngle) {
  if(!numPoints) numPoints = 32;
  if(!sAngle) sAngle = 0;

  var d2r = Math.PI / 180.0;
  var r2d = 180.0 / Math.PI;
  var angleRad = sAngle * d2r;
  // earth semi major axis is about 6378137 m
  var latScale = radM / 6378137 * r2d;
  var lngScale = latScale / Math.cos(center.lngRadians())

  var angInc = 2 * Math.PI / numPoints;
  var points = [];
  for (var i = 0; i < numPoints; i++) {
    var lat = parseFloat(center.lat()) + latScale * Math.sin(angleRad);
    var lng = parseFloat(center.lng()) + lngScale * Math.cos(angleRad);
    points.push(new GLatLng(lat, lng));
    angleRad += angInc;
  }

  // close the shape and return it
  points.push(points[0]);
  return points;
}

 
//Drupal.gmap.map.prototype.


;
/* AGGREGATED JS FILE: modules/tabbed_block/tabbed_block.js */


Drupal.tabbed_block = function(){
  //init tabs
  $(".tabbed-block").each(function(){
    tabbed_block_tab(this)
    
  });
  $(".block-tabbed_block").each(function(){
    tabbed_block_ajax(this)
    frag = tabbed_block_get_cookie(($(this).attr("id")));
    
  });
}

function tabbed_block_ajax(obj){
  //init ajax

  $(obj).children(".content").append("<a href='#' class='tabbed_block-ajax'>refresh</a>")
  
  $(obj).children(".content").children(".tabbed_block-ajax").click(function(){
    
    id = $(this).parent().parent().attr("id");
    $(this).parent().parent().addClass("tabbed_block-click");
    $(this).parent(".content").html("<i class='description'>Loading</i>");
    $.ajax({
      type: "POST",
      //base path is defined in tabbed_block.module
      url: base_path+"tabbed_block/menu",
      data: "id="+id,
      success: function (data) {
        data = Drupal.parseJson(data);
        $(".tabbed_block-click"+" .content").html( data.content );
        tabbed_block_ajax(".tabbed_block-click");
        tabbed_block_tab(".tabbed_block-click .tabbed-block");
        frag = tabbed_block_get_cookie(($(".tabbed_block-click").attr("id")));
        $(".tabbed_block-click").find(".tabbed_block-nav").children("li").eq(frag.substr(-1)).trigger("click");
        $(".tabbed_block-click").removeClass("tabbed_block-click");
      },
      error: function (){
        $(".tabbed_block-click"+" .content").html( "Sorry, there is an error occured." );
        tabs_ajax(".tabbed_block-click");
        tabs(".tabbed_block-click .tabbed-block");
        $(".tabbed_block-click").removeClass("tabbed_block-click");
      }
    });
  });
}

function tabbed_block_tab( id ){
	
	//add classes
	$(id).children("ul").addClass("tabbed_block-nav");
	$(id).children("ul").children("li").eq(0).addClass("tabbed_block-selected");
	
	//init clicks methods on tab-heads
	$(id).children("ul").children("li").click(function(){

			//content
      //get the clicked tab element to find the content to display
      click = $(this).children("a").attr("id");
      
      
      $(this).parent().siblings("div").each(function(){
        $(this).addClass("tabbed_block-hide");
      });
			$("#content-"+click).removeClass("tabbed_block-hide");
			
			// head
      $(this).addClass("tabbed_block-selected");
      $(this).siblings(".tabbed_block-selected").removeClass("tabbed_block-selected");
      
      // cookies
      tabbed_block_set_cookie( "block-tabbed_block-"+click.substr(9,1) , click );
			return false; 
		//});
	});
	
	//init tab-content
	$(id).children("div").addClass("tabbed_block-container tabbed_block-hide");
	$(id).children("div").eq(0).removeClass("tabbed_block-hide");
}

function tabbed_block_set_cookie(c_name,value,expiredays)
{
  var exdate=new Date()
  exdate.setDate(exdate.getDate()+expiredays)
  document.cookie=c_name+ "=" +escape(value)+
  ((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}

function tabbed_block_get_cookie(c_name){
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=")
  if (c_start!=-1)
    { 
    c_start=c_start + c_name.length+1; 
    c_end=document.cookie.indexOf(";",c_start)
    if (c_end==-1) c_end=document.cookie.length
    return unescape(document.cookie.substring(c_start,c_end))
    } 
  }
return ""
}

if (Drupal.jsEnabled) {
  $(document).ready(Drupal.tabbed_block);
}

;
/* AGGREGATED JS FILE: modules/views_slideshow/views_slideshow.js */
// $Id: views_slideshow.js,v 1.1 2007/09/23 19:00:31 aaron Exp $

// store the timer and current div data
slideshow_data = new Array();

// this stores all our static data
function views_slideshow_data(num_divs, timer_delay, sort_order, fade, fade_speed, fade_value) {
//   this._divs = divs;
  this._num_divs = num_divs;
  this._timer_delay = timer_delay;
  this._sort_order = sort_order;
  this._fade = fade;
  this._fade_speed = fade_speed;
  this._fade_value = fade_value;
  this._current_div = 0;
  this._pause = false;
}

// set the timer on or off
function views_slideshow_timer(slideshow_main, slideshow_status) {
  // stop the current timer
  clearTimeout(slideshow_data[slideshow_main]._timer_id);

  // start a new timer, if slideshow_status is true, unless we're currently paused
  if (slideshow_status && !slideshow_data[slideshow_main]._pause) {
    // our timer will call views_slideshow_switch, which fades out the current slide
    slideshow_data[slideshow_main]._timer_id = setTimeout("views_slideshow_switch('" + slideshow_main + "', views_slideshow_next_div('" + slideshow_main + "'))", slideshow_data[slideshow_main]._timer_delay);
  }
}

function views_slideshow_pause(slideshow_main) {
  slideshow_data[slideshow_main]._pause = true;
  views_slideshow_timer(slideshow_main, false);
}

function views_slideshow_resume(slideshow_main) {
  slideshow_data[slideshow_main]._pause = false;
  views_slideshow_timer(slideshow_main, true);
}

// fade out to the new div indicated
function views_slideshow_switch(slideshow_main, new_div) {
  // get the id for the main element
  _main_div = "#views_slideshow_main_" + slideshow_main;

  // turn off our timer
  views_slideshow_timer(slideshow_main, false);

  // check to see if we fade or not
  if (slideshow_data[slideshow_main]._fade) {
    // fade out -- at the end, switch to the next slide in the slideshow
    $(_main_div).fadeTo(slideshow_data[slideshow_main]._fade_speed, slideshow_data[slideshow_main]._fade_value, function() { views_slideshow_set_div(slideshow_main, new_div); });
  }
  else {
    // if we don't have a fade, then just switch without fading
    views_slideshow_set_div(slideshow_main, new_div);
  }
}

// set the main div html to the new node
function views_slideshow_set_div(slideshow_main, new_div_number) {
  // this is the id of the main div to change
  _main_div = "#views_slideshow_main_" + slideshow_main;

  // if the new div is greater than length, wrap to the first.
  // if it's less than zero, wrap to the last
  if (new_div_number >= slideshow_data[slideshow_main]._num_divs) {
    new_div_number = 0;
  }
  else if (new_div_number < 0) {
    new_div_number = slideshow_data[slideshow_main]._num_divs - 1;
  }

  // set the current_div number to the new node
  slideshow_data[slideshow_main]._current_div = new_div_number;

  // get the div with the html we need
  _new_div = "#views_slideshow_div_" + slideshow_main + "_" + new_div_number;

  // set the html of the new div
  $(_main_div).html($(_new_div).html());

  // check to see if we fade or not
  if (slideshow_data[slideshow_main]._fade) {
    // fade in -- at the end, turn on our timer
    $(_main_div).fadeTo(slideshow_data[slideshow_main]._fade_speed, 1, function() { views_slideshow_timer(slideshow_main, true); });
  }
  else {
    // if we don't have a fade, then just turn on our timer without fading
    views_slideshow_timer(slideshow_main, true);
  }
}

// get the next node div in our sequence
function views_slideshow_next_div(slideshow_main) {
  if (slideshow_data[slideshow_main]._sort_order) {
    // select the next div, in forward or reverse order
    new_div_number = slideshow_data[slideshow_main]._current_div + slideshow_data[slideshow_main]._sort_order;
  }
  else {
    // select a random div, but make sure we don't repeat ourselves, unless there's only one div
    do {
      new_div_number = Math.floor(Math.random() * slideshow_data[slideshow_main]._num_divs);
    } while (slideshow_data[slideshow_main]._num_divs > 1 && (new_div_number == slideshow_data[slideshow_main]._num_divs - 1));
  }
  return new_div_number;
}


;
/* AGGREGATED JS FILE: modules/spamspan/spamspan.compressed.js */
if(Drupal.jsEnabled){$(function(){$("span."+Drupal.settings.spamspan.m).each(function(_1){var _2=($("span."+Drupal.settings.spamspan.u,this).text()+"@"+$("span."+Drupal.settings.spamspan.d,this).text()).replace(/\s+/g,"").replace(/\[dot\]/g,".");var _3=$("span."+Drupal.settings.spamspan.t,this).text();$(this).after($("<a></a>").attr("href","mailto:"+_2).html(_3?_3:_2).addClass("spamspan")).remove();});});}
;
/* AGGREGATED JS FILE: modules/craqbox/craqbox.js */
// $Id: craqbox.js,v 1.2 2007/04/12 09:50:14 unconed Exp $

// Avoid colliding with a global '$' variable.
(function($) {
   
  $.fn.craqbox = function(o) {
    $.craqbox(this, o);
    return this;
  };

   
  $.craqbox = function(a, o) {
    a = $(a).get(0);
    
    return a.craqbox || (a.craqbox = new $._craqbox(a, o));
  };

   
  $._craqbox = function(a, o) {
    var cb = this;

    // Configurable options for craqbox.
    var defaults = {
      attachEvent: 'click',
      animation: { opacity: 'toggle' },          // TODO: implement.
      cacheKey: null,
      closeButtonLabel: 'x',
      closeButtonTitle: 'Close',
      closeButtonClass: 'close_button',
      closeButtonContainerClass: 'close_button_container',
      completeCallback: function() { },
      content: null,
      contentClass: 'content',
      craqboxId: 'craqbox',
      dragable: true,
      ease: 'easein',                           // TODO: implement.
      heading: 3,
      hiderClass: 'craqbox_hider',
      hiderOpacity: 0.5,
      hiderSpeed: 'fast',
      horizontalAlign: true,
      iframeBorder: 0,
      iframeClass: 'frame_class',
      iframeScroll: 'no',
      inSpeed: 'normal',
      links: {},
      outSpeed: 'fase',
      padding: 10,
      removeCallback: function() { },
      title: null,
      titleBar: true,
      titleBarClass: 'title_bar',
      type: 'iframe',                          // iframe / image / dom / html
      url: null,
      width: 700,
      verticalAlign: false
    };

    // Create options object.
    cb.o = $.extend(defaults, o || {});

     
    cb.absolutePosition = function(el) {
      var left = 0;
      var top  = 0;
      el = $(el)[0];
      while (el.offsetParent) {
        left += el.offsetLeft;
        top  += el.offsetTop;
        el = el.offsetParent;
      }
      left += el.offsetLeft;
      top  += el.offsetTop;
      return { x:left, y:top };
    };

     
    cb.build = function(newOptions) {
      // Update options.
      cb.o = $.extend(cb.o, newOptions || {});
      // Setup content cache.
      cb.cache = cb.cache || [];
      // Build our content.
      var content = '';
      // The key to use for caching the content.
      var key;
      switch (cb.o.type) {
        case 'iframe':
          key = cb.o.cacheKey || cb.o.url || a.href;
          var src = cb.o.url || cb.o.links[a.href] || a.href;
          if (!src) {
            return false;
          }
          if (!cb.cache[key]) {
            content = $('<iframe>').attr({
              src: src,
              iframeborder: cb.o.iframeBorder,
              scrolling: cb.o.iframeScroll,
              className: cb.o.iframeClass
            });
            cb.cache[key] = content;
          }
          else {
            content = cb.cache[key];
          }
          break;
        case 'image':
          key = cb.o.cacheKey || cb.o.url || a.href;
          console.log('key: '+ key);
          var src = cb.o.url || cb.o.links[a.href] || a.href;
          if (!src) {
            return false;
          }
          cb.o.title = cb.o.title || ($(a).attr('title') || $('img[@title]', a).attr('title'));
          console.log('title: '+ cb.o.title);
          if (!cb.cache[key]) {
            content = $('<img>').attr({ src: src, alt: a.title || key });
            cb.cache[key] = content;
          }
          else {
            content = cb.cache[key];
          }
          break;
        case 'dom':
          if (cb.o.cacheKey && !cb.cache[cb.o.cacheKey]) {
            content = $(cb.o.content);
            cb.cache[cb.o.content] = content;
          }
          else if (cb.o.cacheKey && cb.cache[cb.o.cacheKey]) {
            content = $(cb.cache[cb.o.content]);
          }
          else {
            content = $(cb.o.content);
          }
          content = $(cb.o.content);
          break;
        case 'html':
          key = cb.o.cacheKey || a.href;
          if (!cb.cache[key]) {
            if (cb.o.url) {
              $('#'+ cb.o.craqboxId +' .'+ cb.o.contentClass).addClass('craqbox_spinner');
              $.get(cb.o.url, function(data) {
                $('#'+ cb.o.craqboxId +' .'+ cb.o.contentClass).removeClass('craqbox_spinner');
                content = $('<div>').html(data);
                cb.cache[key] = content;
                cb.show(content);
              });
            }
            else if (cb.o.content) {
              content = cb.o.content;
              cb.cache[key] = content;
            }
            else {
              return false;
            }
          }
          else {
            content = cb.cache[key];
          }
          break;
      }
      // Display a craqbox if we have content.
      if (content) {
        cb.show(content);
      }

      return cb;
    };

     
    cb.center = function(x, y) {
      var c = $('#'+ cb.o.craqboxId);
      if (!x) {
        x = 0;
      }
      if (!y) {
        y = 0;
      }
      if (cb.o.verticalAlign) {
        var h = self.innerHeight || document.documentElement.clientHeight || $('body')[0].clientHeight || 0;
        c.css('top', ((h - $('#'+ cb.o.craqboxId).height()) / 2 + y) +'px');
      }
      else {
        c.css('top', (cb.o.padding) +'px');
      }
      if (cb.o.horizontalAlign) {
        c.css('left', (($(document.body).width() - cb.o.width) / 2 + x) +'px');
      }
      else {
        c.css('left', (cb.o.padding) +'px');
      }
      // Reset the hiders size.
      cb.hider();
    };

     
    cb.hider = function(toggle) {
      var yScroll;
      var xScroll;

      // Handle finding the proper document.body size so we can "hide" the content.
      // All the cool browsers.
      if (window.innerHeight && window.scrollMaxY || window.innerWidth && window.scrollMaxX) {
        yScroll = window.innerHeight + window.scrollMaxY;
        xScroll = window.innerWidth + window.scrollMaxX;
        var deff = document.documentElement;
        var wff = (deff && deff.clientWidth) || document.body.clientWidth || window.innerWidth || self.innerWidth;
        var hff = (deff && deff.clientHeight) || document.body.clientHeight || window.innerHeight || self.innerHeight;
        xScroll -= (window.innerWidth - wff);
        yScroll -= (window.innerHeight - hff);
      }
      // All other Explorers.
      else if (document.body.scrollHeight > document.body.offsetHeight || document.body.scrollWidth > document.body.offsetWidth) {
        yScroll = document.body.scrollHeight;
        xScroll = document.body.scrollWidth;
      }
      // Explorer 6 Strict.
      else {
        yScroll = document.body.offsetHeight;
        xScroll = document.body.offsetWidth;
      }
      // Hide the hider.
      if (toggle == 'hide') {
        $('#'+ cb.o.craqboxId +'_hider').fadeOut(cb.hiderSpeed, function() {
          $('#'+ cb.o.craqboxId +'_hider').removeClass('visible');
        });
      } 
      // Display the hider.
      else {
        // Make the site fade out a little.
        if ($('#'+ cb.o.craqboxId +'_hider').length > 0) {
          // Remove old click event to get new removeCallback() in cb.remove.
          $('#'+ cb.o.craqboxId +'_hider')
          .unbind('click')
          .bind('click', cb.remove)
          .css({ width: xScroll +'px', height: (document.body.offsetHeight) +'px' });
          // Fade back in if not visible.
          if (!$('#'+ cb.o.craqboxId +'_hider').is('.visible')) {
            $('#'+ cb.o.craqboxId +'_hider').fadeTo(cb.o.hiderSpeed, cb.o.hiderOpacity, function() {
              $('#'+ cb.o.craqboxId +'_hider').addClass('visible');
            });
          }
        }
        else {
          // Create the hider.
          $('<div>')
          .attr('id', cb.o.craqboxId +'_hider')
          .css({opacity: 0, width: xScroll +'px', height: (document.body.offsetHeight) +'px' })
          .click(cb.remove)
          .appendTo(document.body)
          .fadeTo(cb.o.hiderSpeed, cb.o.hiderOpacity, function() { $(this).addClass('visible') });
        }
      }
    };

     
    cb.hiderFixes = function(state) {
      $('object, embed, select').css('display', (state == 'off') ? 'block' : 'none');
    };

     
    cb.remove = function(event) {
      $(window).unbind('scroll', cb.scroll).unbind('resize', cb.scroll);
      $('#'+ cb.o.craqboxId).fadeOut(cb.o.outSpeed, function() {
        // Remove old content.
        $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).children().remove();
        // Remove browser fixes for hider.
        cb.hiderFixes('off');
        // Process removeCallback().
        cb.o.removeCallback();
      });
      cb.hider('hide');

      return false;
    };

     
    cb.scroll = function(event) {
      var yScrollTop;
      var xScrollLeft;

      // Handle grabbing the proper scroll values for each browser.
      // All the cool browsers.
      if (self.pageYOffset || self.pageXOffset) {
        yScrollTop = self.pageYOffset;
        xScrollLeft = self.pageXOffset;
      }
      // Explorer 6 Strict.
      else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ) {
        yScrollTop = document.documentElement.scrollTop;
        xScrollLeft = document.documentElement.scrollLeft;
      }
      // All other Explorers.
      else if (document.body) {
        yScrollTop = document.body.scrollTop;
        xScrollLeft = document.body.scrollLeft;
      }

      // Position craqbox.
      cb.center(xScrollLeft, yScrollTop);
    };

     
    cb.show = function(content) {
      // Do a few fixes because of weird browser issues with zIndex.
      cb.hiderFixes();
      // Display the hider.
      cb.hider();
      // Only redraw our Craqbox if we need to.
      if ($('#'+ cb.o.craqboxId).length > 0) {
        // Set the title.
        if (cb.o.title) {
          $('#'+ cb.o.craqboxId + ' h'+ cb.o.heading).html(cb.o.title);
        }
        // Reset the close button event to get the proper removeCallback().
        $('#'+ cb.o.craqboxId +' .'+ cb.o.closeButtonClass).unbind('click').bind('click', cb.remove);
        if ($('#'+ cb.o.craqboxId +'_hider').is('.visible')) {
          // Fade out the old content first.
          $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).fadeOut(cb.o.outSpeed, function() {
            // TODO: this is currently used to fix a bug with jQuery calling the completeCallback on this fadeOut twice.
            var faded = $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).attr('faded');
            if (!faded || faded == 0) {
              // Remove old content.
              $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).children().remove();
              // Show new content.
              $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass)
              .append(content)
              .fadeIn(cb.o.inSpeed, function() {
                cb.center();
                cb.o.completeCallback();
                $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).attr('faded', 0);
              });
              
              $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).attr('faded', 1);
            }
          });
        }
        else {
          $('#'+ cb.o.craqboxId).fadeTo(cb.o.inSpeed, 1.0);
          // Show new content.
          $('#'+ cb.o.craqboxId + ' .'+ cb.o.contentClass).append(content).fadeIn(cb.o.inSpeed, function() {
            cb.center();
            cb.o.completeCallback();
          });
        }

      } 
      // Create Craqbox UI.
      else {
        // Hide the site a bit with a "shader".
        cb.hider();

        // Create a close button.
        var closeButton = $('<a>')
        .attr({ title: cb.o.closeButtonTitle, className: cb.o.closeButtonClass, href: '#close' })
        .html(cb.o.closeButtonLabel)
        .click(function() { cb.remove(); return false; });

        // Add a title bar.
        if (cb.o.titleBar) {
          var titleBar = $('<div>')
          .addClass(cb.o.titleBarClass)
          .append($('<div>').addClass(cb.o.closeButtonContainerClass).append(closeButton));

          // Add drag and drop support.
          if (cb.o.dragable) {
            var mouseMove = function(event) {
              // Only support dragging on holding the title bar.
              if (event.target == $('#'+ cb.o.craqboxId +' .'+ cb.o.titleBarClass)[0]) {
                 
              }

              return false;
            };
            var mouseDown = function() { $(document).bind('mousemove', mouseMove); };

            $(document)
            .bind('mousedown', mouseDown)
            .bind('mouseup', function(event) { $(document).unbind('mousemove', mouseMove);  });
          }

          if (cb.o.title) {
            $('<h'+ cb.o.heading +'>').addClass('title').html(cb.o.title).appendTo(titleBar);
          }
        }

        // Display the container.
        $('<div>')
        .attr('id', cb.o.craqboxId)
        .css({ width: cb.o.width +'px' })
        .append(titleBar ? $(titleBar) : closeButton)
        .hide()
        .appendTo(document.body);

        // Display the content.
        $('<div>')
        .addClass(cb.o.contentClass)
        .append(content).hide().appendTo($('#'+ cb.o.craqboxId)).fadeIn(cb.o.inSpeed, function() {
          cb.o.completeCallback();
        });
        // Center and display our results to the screen.
        cb.center();
        $('#'+ cb.o.craqboxId).fadeTo(cb.o.inSpeed, 1.0);
      }
      // Bind the scroll event to the window.
      $(window).bind('scroll', cb.scroll).bind('resize', cb.scroll);
    };

    // Attach the Craqbox.
    if (cb.o.attachEvent) {
      $(a).bind(cb.o.attachEvent, function() { cb.build(); return false; });
    }

    return cb;
  };
})(jQuery);

;
/* AGGREGATED JS FILE: misc/autocomplete.js */
// $Id: autocomplete.js,v 1.17 2007/01/09 07:31:04 drumm Exp $

 
Drupal.autocompleteAutoAttach = function () {
  var acdb = [];
  $('input.autocomplete').each(function () {
    var uri = this.value;
    if (!acdb[uri]) {
      acdb[uri] = new Drupal.ACDB(uri);
    }
    var input = $('#' + this.id.substr(0, this.id.length - 13))
      .attr('autocomplete', 'OFF')[0];
    $(input.form).submit(Drupal.autocompleteSubmit);
    new Drupal.jsAC(input, acdb[uri]);
  });
}

 
Drupal.autocompleteSubmit = function () {
  return $('#autocomplete').each(function () {
    this.owner.hidePopup();
  }).size() == 0;
}

 
Drupal.jsAC = function (input, db) {
  var ac = this;
  this.input = input;
  this.db = db;

  $(this.input)
    .keydown(function (event) { return ac.onkeydown(this, event); })
    .keyup(function (event) { ac.onkeyup(this, event) })
    .blur(function () { ac.hidePopup(); ac.db.cancel(); });

};

 
Drupal.jsAC.prototype.onkeydown = function (input, e) {
  if (!e) {
    e = window.event;
  }
  switch (e.keyCode) {
    case 40: // down arrow
      this.selectDown();
      return false;
    case 38: // up arrow
      this.selectUp();
      return false;
    default: // all other keys
      return true;
  }
}

 
Drupal.jsAC.prototype.onkeyup = function (input, e) {
  if (!e) {
    e = window.event;
  }
  switch (e.keyCode) {
    case 16: // shift
    case 17: // ctrl
    case 18: // alt
    case 20: // caps lock
    case 33: // page up
    case 34: // page down
    case 35: // end
    case 36: // home
    case 37: // left arrow
    case 38: // up arrow
    case 39: // right arrow
    case 40: // down arrow
      return true;

    case 9:  // tab
    case 13: // enter
    case 27: // esc
      this.hidePopup(e.keyCode);
      return true;

    default: // all other keys
      if (input.value.length > 0)
        this.populatePopup();
      else
        this.hidePopup(e.keyCode);
      return true;
  }
}

 
Drupal.jsAC.prototype.select = function (node) {
  this.input.value = node.autocompleteValue;
}

 
Drupal.jsAC.prototype.selectDown = function () {
  if (this.selected && this.selected.nextSibling) {
    this.highlight(this.selected.nextSibling);
  }
  else {
    var lis = $('li', this.popup);
    if (lis.size() > 0) {
      this.highlight(lis.get(0));
    }
  }
}

 
Drupal.jsAC.prototype.selectUp = function () {
  if (this.selected && this.selected.previousSibling) {
    this.highlight(this.selected.previousSibling);
  }
}

 
Drupal.jsAC.prototype.highlight = function (node) {
  if (this.selected) {
    $(this.selected).removeClass('selected');
  }
  $(node).addClass('selected');
  this.selected = node;
}

 
Drupal.jsAC.prototype.unhighlight = function (node) {
  $(node).removeClass('selected');
  this.selected = false;
}

 
Drupal.jsAC.prototype.hidePopup = function (keycode) {
  // Select item if the right key or mousebutton was pressed
  if (this.selected && ((keycode && keycode != 46 && keycode != 8 && keycode != 27) || !keycode)) {
    this.input.value = this.selected.autocompleteValue;
  }
  // Hide popup
  var popup = this.popup;
  if (popup) {
    this.popup = null;
    $(popup).fadeOut('fast', function() { $(popup).remove(); });
  }
  this.selected = false;
}

 
Drupal.jsAC.prototype.populatePopup = function () {
  // Show popup
  if (this.popup) {
    $(this.popup).remove();
  }
  this.selected = false;
  this.popup = document.createElement('div');
  this.popup.id = 'autocomplete';
  this.popup.owner = this;
  $(this.popup).css({
    marginTop: this.input.offsetHeight +'px',
    width: (this.input.offsetWidth - 4) +'px',
    display: 'none'
  });
  $(this.input).before(this.popup);

  // Do search
  this.db.owner = this;
  this.db.search(this.input.value);
}

 
Drupal.jsAC.prototype.found = function (matches) {
  // If no value in the textfield, do not show the popup.
  if (!this.input.value.length) {
    return false;
  }

  // Prepare matches
  var ul = document.createElement('ul');
  var ac = this;
  for (key in matches) {
    var li = document.createElement('li');
    $(li)
      .html('<div>'+ matches[key] +'</div>')
      .mousedown(function () { ac.select(this); })
      .mouseover(function () { ac.highlight(this); })
      .mouseout(function () { ac.unhighlight(this); });
    li.autocompleteValue = key;
    $(ul).append(li);
  }

  // Show popup with matches, if any
  if (this.popup) {
    if (ul.childNodes.length > 0) {
      $(this.popup).empty().append(ul).show();
    }
    else {
      $(this.popup).css({visibility: 'hidden'});
      this.hidePopup();
    }
  }
}

Drupal.jsAC.prototype.setStatus = function (status) {
  switch (status) {
    case 'begin':
      $(this.input).addClass('throbbing');
      break;
    case 'cancel':
    case 'error':
    case 'found':
      $(this.input).removeClass('throbbing');
      break;
  }
}

 
Drupal.ACDB = function (uri) {
  this.uri = uri;
  this.delay = 300;
  this.cache = {};
}

 
Drupal.ACDB.prototype.search = function (searchString) {
  var db = this;
  this.searchString = searchString;

  // See if this key has been searched for before
  if (this.cache[searchString]) {
    return this.owner.found(this.cache[searchString]);
  }

  // Initiate delayed search
  if (this.timer) {
    clearTimeout(this.timer);
  }
  this.timer = setTimeout(function() {
    db.owner.setStatus('begin');

    // Ajax GET request for autocompletion
    $.ajax({
      type: "GET",
      url: db.uri +'/'+ Drupal.encodeURIComponent(searchString),
      success: function (data) {
        // Parse back result
        var matches = Drupal.parseJson(data);
        if (typeof matches['status'] == 'undefined' || matches['status'] != 0) {
          db.cache[searchString] = matches;
          // Verify if these are still the matches the user wants to see
          if (db.searchString == searchString) {
            db.owner.found(matches);
          }
          db.owner.setStatus('found');
        }
      },
      error: function (xmlhttp) {
        alert('An HTTP error '+ xmlhttp.status +' occured.\n'+ db.uri);
      }
    });
  }, this.delay);
}

 
Drupal.ACDB.prototype.cancel = function() {
  if (this.owner) this.owner.setStatus('cancel');
  if (this.timer) clearTimeout(this.timer);
  this.searchString = '';
}

// Global Killswitch
if (Drupal.jsEnabled) {
  $(document).ready(Drupal.autocompleteAutoAttach);
}

;
/* AGGREGATED JS FILE: modules/jquery_update/collapse-fix.js */
// $Id: collapse-fix.js,v 1.1 2007/04/26 15:14:38 jjeff Exp $
// redefining toggleFieldset for compatibility with later versions of JQuery
Drupal.toggleFieldset = function(fieldset) {
  if ($(fieldset).is('.collapsed')) {
    var content = $('> div', fieldset).hide();
    $(fieldset).removeClass('collapsed');
    content.slideDown( {
    duration: 300, // THE FIX
      complete: function() {
        // Make sure we open to height auto
        $(this).css('height', 'auto');
        Drupal.collapseScrollIntoView(this.parentNode);
        this.parentNode.animating = false;
      },
      step: function() {
         // Scroll the fieldset into view
        Drupal.collapseScrollIntoView(this.parentNode);
      }
    });
    if (typeof Drupal.textareaAttach != 'undefined') {
      // Initialize resizable textareas that are now revealed
      Drupal.textareaAttach(null, fieldset);
    }
  }
  else {
    var content = $('> div', fieldset).slideUp('medium', function() {
      $(this.parentNode).addClass('collapsed');
      this.parentNode.animating = false;
    });
  }
}
;
/* AGGREGATED JS FILE: themes/sibarth/js/jquery.pngFix.js */
 

(function(jQuery) {


jQuery.fn.pngFix = function() {

	var ie55 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 5.5") != -1);
	var ie6 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 6.0") != -1);

	if (jQuery.browser.msie && (ie55 || ie6)) {

		jQuery(this).find("img[@src$=.png]").each(function() {

			var prevStyle = '';
			var strNewHTML = '';
			var imgId = (jQuery(this).attr('id')) ? 'id="' + jQuery(this).attr('id') + '" ' : '';
			var imgClass = (jQuery(this).attr('class')) ? 'class="' + jQuery(this).attr('class') + '" ' : '';
			var imgTitle = (jQuery(this).attr('title')) ? 'title="' + jQuery(this).attr('title') + '" ' : '';
			var imgAlt = (jQuery(this).attr('alt')) ? 'alt="' + jQuery(this).attr('alt') + '" ' : '';
			var imgAlign = (jQuery(this).attr('align')) ? 'float:' + jQuery(this).attr('align') + ';' : '';
			var imgHand = (jQuery(this).parent().attr('href')) ? 'cursor:hand;' : '';
			if (this.style.border) {
				prevStyle += 'border:'+this.style.border+';';
				this.style.border = '';
			}
			if (this.style.padding) {
				prevStyle += 'padding:'+this.style.padding+';';
				this.style.padding = '';
			}
			if (this.style.margin) {
				prevStyle += 'margin:'+this.style.margin+';';
				this.style.margin = '';
			}
			var imgStyle = (this.style.cssText);

			strNewHTML += '<span '+imgId+imgClass+imgTitle+imgAlt;
			strNewHTML += 'style="position:relative;white-space:pre-line;display:inline-block;background:transparent;'+imgAlign+imgHand;
			strNewHTML += 'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;';
			strNewHTML += 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + jQuery(this).attr('src') + '\', sizingMethod=\'scale\');';
			strNewHTML += imgStyle+'"></span>';
			if (prevStyle != ''){
				strNewHTML = '<span style="position:relative;display:inline-block;'+prevStyle+imgHand+'width:' + jQuery(this).width() + 'px;' + 'height:' + jQuery(this).height() + 'px;'+'">' + strNewHTML + '</span>';
			}

			jQuery(this).hide();
			jQuery(this).after(strNewHTML);
			
		});

	}

};

})(jQuery);

;
/* AGGREGATED JS FILE: modules/quicksearch/quicksearch.js */
// $Id: quicksearch.js,v 1.1 2007/04/16 02:53:24 stevemckenzie Exp $

// Create an object for quicksearch data.
Drupal.quicksearch = { }

 
Drupal.quicksearch.autoAttach = function() {
  $('input.autocomplete').each(function () {
    Drupal.quicksearch.input = $('#' + this.id.substr(0, this.id.length - 13)).attr('autocomplete', 'OFF')[0];
    // Setup craqbox.
    if (Drupal.quicksearch.form(Drupal.quicksearch.input.id) && !Drupal.settings.quicksearch.selector) {
      // Change the search button click event.
      var form = $(Drupal.quicksearch.input).parent().parent().parent();
      $(form).submit(Drupal.autocompleteSubmit);
      
      Drupal.quicksearch.craqbox = $.craqbox(Drupal.quicksearch.input, {
        type: 'dom', 
        title: Drupal.settings.quicksearch.title,
        attachEvent: null,
        width: Drupal.settings.quicksearch.uiWidth,
        closeButtonTitle: Drupal.settings.quicksearch.closeButton,
        verticalAlign: false
      });
    }
  });
};

 
Drupal.quicksearch.pagerSetup = function() {
  var parent;
  
  // Setup pager caching.
  Drupal.quicksearch.pagerCache = Drupal.quicksearch.pagerCache || [];
  
  // Grab the right parent element based on what type of display quicksearch is setup for.
  if (Drupal.settings.quicksearch.selector) {
    parent = $(Drupal.settings.quicksearch.selector);
  } else {
    var craqbox = Drupal.quicksearch.craqbox;
    parent = $('#'+ craqbox.o.craqboxId +' .'+ craqbox.o.contentClass).get(0);
  }
  
  // Loop through the links in the pager turning the links into AJAX.
  $('.pager a', parent).each(function() {
    $(this).click(function(event) {
      // Cache id for this content.
      var key = this.href.replace('http://', '').replace(/\//g, '_');
      if (Drupal.quicksearch.pagerCache[key]) {
        Drupal.quicksearch.pagerDisplay(Drupal.quicksearch.pagerCache[key]);
      } else {
        $.get(this.href, function(results) {
          Drupal.quicksearch.pagerCache[key] = results;
          Drupal.quicksearch.pagerDisplay(results);
        });
      }
      
      return false;
    })
  });
};

 
Drupal.quicksearch.pagerDisplay = function(results) {
  if (Drupal.settings.quicksearch.selector) {
    
  } else {
    Drupal.quicksearch.craqbox.build({content: $('<div>').append(Drupal.quicksearch.input).append($('<div>').html(results)) });
  }
};

 
Drupal.quicksearch.display = function(db, results) {
  // Search results added to an element.
  if (Drupal.settings.quicksearch.selector) {
    var el = $(Drupal.settings.quicksearch.selector);
    // A close button so the original page content can be restored.
    var closeButton = $('<a>')
    .attr({ title: Drupal.settings.quicksearch.closeButtonTitle, className: 'quicksearch_close_button', href: '#close' })
    .click(function() { Drupal.quicksearch.remove(db.input); return false; })
    .html(Drupal.settings.quicksearch.closeButtonLabel);
    
    // Cache the original page content before quicksearch occurred.
    if ($('#quicksearch_cache').length == 0) {
      $('<div>').attr('id', 'quicksearch_cache').css('display', 'none').append($(el).children()).appendTo(document.body);
    }
    $(el).fadeOut('fast', function() { 
      $(el).html(results).prepend(closeButton).fadeIn('fast');
    });
    Drupal.quicksearch.pagerSetup();
  }
  // Search results displayed in craqbox.
  else {
    // Save the original parent so we can restore the element to its original state.
    if (!db.input.originalParent) {
      db.input.originalParent = db.input.parentNode;
    }

    // Remove craqbox on escape key.
    $(db.input).bind('keyup', Drupal.quicksearch.removeEsc);

    db.input.parentForm = $(db.input).parent().parent().parent();
    
    // Hide the the search submit button to avoid display problems when craqbox is removed and the input is restored.
    $('input[@type=submit]||[@type=image]', db.input.parentForm).hide();
    
    // Display in craqbox.
    Drupal.quicksearch.craqbox.build({
        content: $('<div>').append($(db.input)).append($('<div>').html(results)),
        completeCallback: function() {
          db.input.focus();
          Drupal.quicksearch.pagerSetup();          
        },
        removeCallback: function() {
          Drupal.quicksearch.remove(db.input);
        }
    });
  }
};

 
Drupal.quicksearch.form = function(id) {
  for (var i in Drupal.settings.quicksearch.fields) {
    field = 'edit-'+ Drupal.settings.quicksearch.fields[i].replace(/_/g, '-') +'-keys';
    if (id == field) {
      return true;
    }
  }
};

 
Drupal.quicksearch.remove = function(input) {
  if (Drupal.settings.quicksearch.selector) {
    // Remove the search results and bring back the original page content.
    $(Drupal.settings.quicksearch.selector).html('').append($('#quicksearch_cache').children());
    $('#quicksearch_cache').remove();
  } else {
    // Save the original display because one faded in, jQuery will set the display = block even if it was inline.
    $(input)
    .attr('originalDisplay', $(input).css('display'))
    .css('display', 'none')
    .unbind('keyup', Drupal.quicksearch.removeEsc)
    .appendTo(input.originalParent)
    .fadeIn('fast', function() { 
      input.focus();
      $(input).css('display', $(input).attr('originalDisplay'));
      $('input[@type=submit]||[@type=image]', input.parentForm).show().css('display');
    });
  }
}

 
Drupal.quicksearch.removeEsc = function(event) {
  if (event.keyCode == 27) {
    Drupal.quicksearch.craqbox.remove();
  }
  
 }

 

 
Drupal.ACDB.prototype.search = function (searchString, input) {
  var db = input ? input : this;
  db.searchString = searchString;
  var quicksearch = Drupal.quicksearch.form(db.owner.input.id);

  // Check the search module's min character count for a search so we don't get errors.
  if (quicksearch && searchString.length < Drupal.settings.quicksearch.minCharacters) {
    return false;
  }

  // See if db key has been searched for before
  if (db.cache[searchString]) {
    return db.owner.found(db.cache[searchString]);
  }

  // Initiate delayed search
  if (db.timer) {
    clearTimeout(db.timer);
  }
  db.timer = setTimeout(function() {
    db.owner.setStatus('begin');

    // Ajax GET request for autocompletion
    $.ajax({
      type: "GET",
      url: db.uri +'/'+ Drupal.encodeURIComponent(searchString),
      success: function (data) {
        // Custom solution for live searching.
        if (quicksearch && data) {
          db.cache[searchString] = data;

          // Verify if these are still the matches the user wants to see
          if (db.searchString == searchString) {
            db.owner.found(data);
          }
          db.owner.setStatus('found');
        } else {
          // Parse back result
          var matches = Drupal.parseJson(data);
          if (typeof matches['status'] == 'undefined' || matches['status'] != 0) {
            db.cache[searchString] = matches;
            // Verify if these are still the matches the user wants to see
            if (db.searchString == searchString) {
              db.owner.found(matches);
            }
            db.owner.setStatus('found');
          }
        }
      },
      error: function (xmlhttp) {
        alert('An HTTP error '+ xmlhttp.status +' occured.\n'+ db.uri);
      }
    });
  }, (quicksearch) ? Drupal.settings.quicksearch.uiDelay : db.delay);
}

 
Drupal.jsAC.prototype.found = function (matches) {
  // If no value in the textfield, do not show the popup.
  if (!this.input.value.length) {
    return false;
  }
  // Custom solution for live searching.
  if (Drupal.quicksearch.form(this.input.id)) {
    // We're not using the popup so just hide it.
    $(this.popup).css({visibility: 'hidden'});

    // Do not redraw because we now have the search textfield in this element and this would break functionality.
    if (this.lastMatches != matches) {
      Drupal.quicksearch.display(this, matches);
      this.lastMatches = matches;
    }
  } else {
    // Prepare matches
    var ul = document.createElement('ul');
    var ac = this;
    for (key in matches) {
      var li = document.createElement('li');
      $(li)
      .html('<div>'+ matches[key] +'</div>')
      .mousedown(function () { ac.select(this); })
      .mouseover(function () { ac.highlight(this); })
      .mouseout(function () { ac.unhighlight(this); });
      li.autocompleteValue = key;
      $(ul).append(li);
    }

    // Show popup with matches, if any
    if (this.popup) {
      if (ul.childNodes.length > 0) {
        $(this.popup).empty().append(ul).show();
      }
      else {
        $(this.popup).css({visibility: 'hidden'});
        this.hidePopup();
      }
    }
  }
}

// Global Killswitch.
if (Drupal.jsEnabled) {
  $(document).ready(Drupal.quicksearch.autoAttach);
}

