/*
  jQuery External Links Tracker Plugin
  Copyright (C) 2010 Paradigm New Media Group
  http://pnmg.com | http://github.com/pnmg/jquery-external-links-tracker
  GPL v2 license. See source file for more info.
*/
(function(a){a(document).ready(function(){var b=window.location.hostname;b=b.split(".");if(b.length==1){b=b[0]}else{if(b.length==4&&window.location.hostname.match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)){b=window.location.hostname}else{b=b[b.length-2]+"."+b[b.length-1]}}a("a[href*='"+b+"'],a[href^='/'],a[href^='./'],a[href^='../']").live("click",function(c){if(a(this).hasClass("newwindow")){c.preventDefault();if(window.console){window.console.log("Internal link not tracked as outging: "+a(this).attr("href"))}window.open(a(this).attr("href"))}});a("a[href^='http']:not([href*='"+b+"'])").live("click",function(f){f.preventDefault();var c=this.href.replace(/^(http|https):\/\//,"").replace(/www\./i,"").replace(/\./gi,"_");var d="/outgoing/"+c;if(typeof(pageTracker)!="undefined"){pageTracker._trackPageview(d);if(window.console){window.console.log("Tracked external link: "+d)}}else{if(typeof(_gat)=="object"){_gaq.push(["_trackPageview",d]);if(window.console){window.console.log("Tracked external link: "+d)}}else{if(window.console){window.console.log("Could not track external link: "+d)}}}window.open(a(this).attr("href"))})})})(jQuery);

/**
* DD_roundies, this adds rounded-corner CSS in standard browsers and VML sublayers in IE that accomplish a similar appearance when comparing said browsers.
* Author: Drew Diller
* Email: drew.diller@gmail.com
* URL: http://www.dillerdesign.com/experiment/DD_roundies/
* Version: 0.0.2a -  preview 2008.12.26
* Licensed under the MIT License: http://dillerdesign.com/experiment/DD_roundies/#license
*
* Usage:
* DD_roundies.addRule('#doc .container', '10px 5px'); // selector and multiple radii
* DD_roundies.addRule('.box', 5, true); // selector, radius, and optional addition of border-radius code for standard browsers.
* 
* Just want the PNG fixing effect for IE6, and don't want to also use the DD_belatedPNG library?  Don't give any additional arguments after the CSS selector.
* DD_roundies.addRule('.your .example img');
**/
eval(function(p,a,c,k,e,r){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--)r[e(c)]=k[c]||e(c);k=[function(e){return r[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}('t K={16:\'K\',1L:G,1M:G,1d:G,2f:y(){u(D.2g!=8&&D.1N&&!D.1N[q.16]){q.1L=M;q.1M=M}17 u(D.2g==8){q.1d=M}},2h:D.2i,1O:[],1b:{},2j:y(){u(q.1L||q.1M){D.1N.2L(q.16,\'2M:2N-2O-2P:x\')}u(q.1d){D.2Q(\'<?2R 2S="\'+q.16+\'" 2T="#1P#2k" ?>\')}},2l:y(){t a=D.1k(\'z\');D.2m.1w.1Q(a,D.2m.1w.1w);u(a.12){2n{t b=a.12;b.1x(q.16+\'\\\\:*\',\'{1l:2U(#1P#2k)}\');q.12=b}2o(2p){}}17{q.12=a}},1x:y(a,b,c){u(1R b==\'1S\'||b===2V){b=0}u(b.2W.2q().1y(\'2X\')==-1){b=b.2q().2Y(/[^0-9 ]/g,\'\').1T(\' \')}H(t i=0;i<4;i++){b[i]=(!b[i]&&b[i]!==0)?b[C.1e((i-2),0)]:b[i]}u(q.12){u(q.12.1x){t d=a.1T(\',\');H(t i=0;i<d.1U;i++){q.12.1x(d[i],\'1l:2Z(K.1V.2r(q, [\'+b.1W(\',\')+\']))\')}}17 u(c){t e=b.1W(\'F \')+\'F\';q.12.1z(D.2s(a+\' {Q-1f:\'+e+\'; -30-Q-1f:\'+e+\';}\'));q.12.1z(D.2s(a+\' {-1A-Q-1m-1n-1f:\'+b[0]+\'F \'+b[0]+\'F; -1A-Q-1m-1X-1f:\'+b[1]+\'F \'+b[1]+\'F; -1A-Q-1Y-1X-1f:\'+b[2]+\'F \'+b[2]+\'F; -1A-Q-1Y-1n-1f:\'+b[3]+\'F \'+b[3]+\'F;}\'))}}17 u(q.1d){q.1O.31({\'2t\':a,\'2u\':b})}},2v:y(a){2w(32.33){I\'z.Q\':I\'z.34\':I\'z.1B\':q.1o(a);13;I\'z.2x\':q.1Z(a);13;I\'z.1p\':I\'z.2y\':I\'z.2z\':q.1o(a);13;I\'z.20\':a.18.z.20=(a.z.20==\'S\')?\'S\':\'35\';13;I\'z.21\':q.22(a);13;I\'z.1c\':a.18.z.1c=a.z.1c;13}},1o:y(a){a.14.23=\'\';q.2A(a);q.1Z(a);q.1C(a);q.1D(a);q.24(a);q.2B(a);q.22(a)},22:y(a){u(a.W.21.1y(\'36\')!=-1){t b=a.W.21;b=1g(b.37(b.25(\'=\')+1,b.25(\')\')),10)/2C;H(t v 1h a.x){a.x[v].1i.38=b}}},2A:y(a){u(!a.W){1q}17{t b=a.W}a.14.1p=\'\';a.14.1E=\'\';t c=(b.1p==\'2D\');t d=M;u(b.1E!=\'S\'||a.1F){u(!a.1F){a.J=b.1E;a.J=a.J.39(5,a.J.25(\'")\')-5)}17{a.J=a.26}t e=q;u(!e.1b[a.J]){t f=D.1k(\'3a\');f.1r(\'3b\',y(){q.1s=q.3c;q.1t=q.3d;e.1D(a)});f.3e=e.16+\'3f\';f.14.23=\'1l:S; 1j:27; 1m:-2E; 1n:-2E; Q:S;\';f.26=a.J;f.2F(\'1s\');f.2F(\'1t\');D.2G.1Q(f,D.2G.1w);e.1b[a.J]=f}a.x.Z.1i.26=a.J;d=G}a.x.Z.2H=!d;a.x.Z.1G=\'S\';a.x.1u.2H=!c;a.x.1u.1G=b.1p;a.14.1E=\'S\';a.14.1p=\'2D\'},1Z:y(a){a.x.1H.1G=a.W.2x},1C:y(a){t c=[\'N\',\'19\',\'1a\',\'O\'];a.P={};H(t b=0;b<4;b++){a.P[c[b]]=1g(a.W[\'Q\'+c[b]+\'U\'],10)||0}},1D:y(c){t e=[\'O\',\'N\',\'U\',\'V\'];H(t d=0;d<4;d++){c.E[e[d]]=c[\'3g\'+e[d]]}t f=y(a,b){a.z.1n=(b?0:c.E.O)+\'F\';a.z.1m=(b?0:c.E.N)+\'F\';a.z.1s=c.E.U+\'F\';a.z.1t=c.E.V+\'F\'};H(t v 1h c.x){t g=(v==\'Z\')?1:2;c.x[v].3h=(c.E.U*g)+\', \'+(c.E.V*g);f(c.x[v],M)}f(c.18,G);u(K.1d){c.x.1H.z.28=\'-3i\';u(1R c.P==\'1S\'){q.1C(c)}c.x.1u.z.28=(c.P.N-1)+\'F \'+(c.P.O-1)+\'F\'}},24:y(j){t k=y(a,w,h,r,b,c,d){t e=a?[\'m\',\'1I\',\'l\',\'1J\',\'l\',\'1I\',\'l\',\'1J\',\'l\']:[\'1J\',\'l\',\'1I\',\'l\',\'1J\',\'l\',\'1I\',\'l\',\'m\'];b*=d;c*=d;w*=d;h*=d;t R=r.2I();H(t i=0;i<4;i++){R[i]*=d;R[i]=C.3j(w/2,h/2,R[i])}t f=[e[0]+C.11(0+b)+\',\'+C.11(R[0]+c),e[1]+C.11(R[0]+b)+\',\'+C.11(0+c),e[2]+C.15(w-R[1]+b)+\',\'+C.11(0+c),e[3]+C.15(w+b)+\',\'+C.11(R[1]+c),e[4]+C.15(w+b)+\',\'+C.15(h-R[2]+c),e[5]+C.15(w-R[2]+b)+\',\'+C.15(h+c),e[6]+C.11(R[3]+b)+\',\'+C.15(h+c),e[7]+C.11(0+b)+\',\'+C.15(h-R[3]+c),e[8]+C.11(0+b)+\',\'+C.11(R[0]+c)];u(!a){f.3k()}t g=f.1W(\'\');1q g};u(1R j.P==\'1S\'){q.1C(j)}t l=j.P;t m=j.2J.2I();t n=k(M,j.E.U,j.E.V,m,0,0,2);m[0]-=C.1e(l.O,l.N);m[1]-=C.1e(l.N,l.19);m[2]-=C.1e(l.19,l.1a);m[3]-=C.1e(l.1a,l.O);H(t i=0;i<4;i++){m[i]=C.1e(m[i],0)}t o=k(G,j.E.U-l.O-l.19,j.E.V-l.N-l.1a,m,l.O,l.N,2);t p=k(M,j.E.U-l.O-l.19+1,j.E.V-l.N-l.1a+1,m,l.O,l.N,1);j.x.1u.29=o;j.x.Z.29=p;j.x.1H.29=n+o;q.2K(j)},2B:y(a){t s=a.W;t b=[\'N\',\'O\',\'19\',\'1a\'];H(t i=0;i<4;i++){a.14[\'1B\'+b[i]]=(1g(s[\'1B\'+b[i]],10)||0)+(1g(s[\'Q\'+b[i]+\'U\'],10)||0)+\'F\'}a.14.Q=\'S\'},2K:y(e){t f=K;u(!e.J||!f.1b[e.J]){1q}t g=e.W;t h={\'X\':0,\'Y\':0};t i=y(a,b){t c=M;2w(b){I\'1n\':I\'1m\':h[a]=0;13;I\'3l\':h[a]=0.5;13;I\'1X\':I\'1Y\':h[a]=1;13;1P:u(b.1y(\'%\')!=-1){h[a]=1g(b,10)*0.3m}17{c=G}}t d=(a==\'X\');h[a]=C.15(c?((e.E[d?\'U\':\'V\']-(e.P[d?\'O\':\'N\']+e.P[d?\'19\':\'1a\']))*h[a])-(f.1b[e.J][d?\'1s\':\'1t\']*h[a]):1g(b,10));h[a]+=1};H(t b 1h h){i(b,g[\'2y\'+b])}e.x.Z.1i.1j=(h.X/(e.E.U-e.P.O-e.P.19+1))+\',\'+(h.Y/(e.E.V-e.P.N-e.P.1a+1));t j=g.2z;t c={\'T\':1,\'R\':e.E.U+1,\'B\':e.E.V+1,\'L\':1};t k={\'X\':{\'2a\':\'L\',\'2b\':\'R\',\'d\':\'U\'},\'Y\':{\'2a\':\'T\',\'2b\':\'B\',\'d\':\'V\'}};u(j!=\'2c\'){c={\'T\':(h.Y),\'R\':(h.X+f.1b[e.J].1s),\'B\':(h.Y+f.1b[e.J].1t),\'L\':(h.X)};u(j.1y(\'2c-\')!=-1){t v=j.1T(\'2c-\')[1].3n();c[k[v].2a]=1;c[k[v].2b]=e.E[k[v].d]+1}u(c.B>e.E.V){c.B=e.E.V+1}}e.x.Z.z.3o=\'3p(\'+c.T+\'F \'+c.R+\'F \'+c.B+\'F \'+c.L+\'F)\'},1v:y(a){t b=q;2d(y(){b.1o(a)},1)},2e:y(a){q.1D(a);q.24(a)},1V:y(b){q.z.1l=\'S\';u(!q.W){1q}17{t c=q.W}t d={3q:G,3r:G,3s:G,3t:G,3u:G,3v:G,3w:G};u(d[q.1K]===G){1q}t e=q;t f=K;q.2J=b;q.E={};t g={3x:\'2e\',3y:\'2e\'};u(q.1K==\'A\'){t i={3z:\'1v\',3A:\'1v\',3B:\'1v\',3C:\'1v\'};H(t a 1h i){g[a]=i[a]}}H(t h 1h g){q.1r(\'3D\'+h,y(){f[g[h]](e)})}q.1r(\'3E\',y(){f.2v(e)});t j=y(a){a.z.3F=1;u(a.W.1j==\'3G\'){a.z.1j=\'3H\'}};j(q.3I);j(q);q.18=D.1k(\'3J\');q.18.14.23=\'1l:S; 1j:27; 28:0; 1B:0; Q:0; 3K:S;\';q.18.z.1c=c.1c;q.x={\'1u\':M,\'Z\':M,\'1H\':M};H(t v 1h q.x){q.x[v]=D.1k(f.16+\':3L\');q.x[v].1i=D.1k(f.16+\':3M\');q.x[v].1z(q.x[v].1i);q.x[v].3N=G;q.x[v].z.1j=\'27\';q.x[v].z.1c=c.1c;q.x[v].3O=\'1,1\';q.18.1z(q.x[v])}q.x.Z.1G=\'S\';q.x.Z.1i.3P=\'3Q\';q.3R.1Q(q.18,q);q.1F=G;u(q.1K==\'3S\'){q.1F=M;q.z.3T=\'3U\'}2d(y(){f.1o(e)},1)}};2n{D.3V("3W",G,M)}2o(2p){}K.2f();K.2j();K.2l();u(K.1d&&D.1r&&K.2h){D.1r(\'3X\',y(){u(D.3Y==\'3Z\'){t d=K.1O;t e=d.1U;t f=y(a,b,c){2d(y(){K.1V.2r(a,b)},c*2C)};H(t i=0;i<e;i++){t g=D.2i(d[i].2t);t h=g.1U;H(t r=0;r<h;r++){u(g[r].1K!=\'40\'){f(g[r],d[i].2u,r)}}}}})}',62,249,'||||||||||||||||||||||||||this|||var|if|||vml|function|style|||Math|document|dim|px|false|for|case|vmlBg|DD_roundies||true|Top|Left|bW|border||none||Width|Height|currentStyle|||image||floor|styleSheet|break|runtimeStyle|ceil|ns|else|vmlBox|Right|Bottom|imgSize|zIndex|IE8|max|radius|parseInt|in|filler|position|createElement|behavior|top|left|applyVML|backgroundColor|return|attachEvent|width|height|color|pseudoClass|firstChild|addRule|search|appendChild|webkit|padding|vmlStrokeWeight|vmlOffsets|backgroundImage|isImg|fillcolor|stroke|qy|qx|nodeName|IE6|IE7|namespaces|selectorsToProcess|default|insertBefore|typeof|undefined|split|length|roundify|join|right|bottom|vmlStrokeColor|display|filter|vmlOpacity|cssText|vmlPath|lastIndexOf|src|absolute|margin|path|b1|b2|repeat|setTimeout|reposition|IEversion|documentMode|querySelector|querySelectorAll|createVmlNameSpace|VML|createVmlStyleSheet|documentElement|try|catch|err|toString|call|createTextNode|selector|radii|readPropertyChanges|switch|borderColor|backgroundPosition|backgroundRepeat|vmlFill|nixBorder|100|transparent|10000px|removeAttribute|body|filled|slice|DD_radii|clipImage|add|urn|schemas|microsoft|com|writeln|import|namespace|implementation|url|null|constructor|Array|replace|expression|moz|push|event|propertyName|borderWidth|block|lpha|substring|opacity|substr|img|onload|offsetWidth|offsetHeight|className|_sizeFinder|offset|coordsize|1px|min|reverse|center|01|toUpperCase|clip|rect|BODY|TABLE|TR|TD|SELECT|OPTION|TEXTAREA|resize|move|mouseleave|mouseenter|focus|blur|on|onpropertychange|zoom|static|relative|offsetParent|ignore|background|shape|fill|stroked|coordorigin|type|tile|parentNode|IMG|visibility|hidden|execCommand|BackgroundImageCache|onreadystatechange|readyState|complete|INPUT'.split('|'),0,{}))

/*!
 * Modernizr JavaScript library 1.5
 * http://www.modernizr.com/
 *
 * Copyright (c) 2009-2010 Faruk Ates - http://farukat.es/
 * Dual-licensed under the BSD and MIT licenses.
 * http://www.modernizr.com/license/
 *
 * Featuring major contributions by
 * Paul Irish  - http://paulirish.com
*/
window.Modernizr=function(i,e,I){function C(a,b){for(var c in a)if(m[a[c]]!==I&&(!b||b(a[c],D)))return true}function r(a,b){var c=a.charAt(0).toUpperCase()+a.substr(1);return!!C([a,"Webkit"+c,"Moz"+c,"O"+c,"ms"+c,"Khtml"+c],b)}function P(){j[E]=function(a){for(var b=0,c=a.length;b<c;b++)J[a[b]]=!!(a[b]in n);return J}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));j[Q]=function(a){for(var b=0,c,h=a.length;b<h;b++){n.setAttribute("type",a[b]);if(c=n.type!==
"text"){n.value=K;/tel|search/.test(n.type)||(c=/url|email/.test(n.type)?n.checkValidity&&n.checkValidity()===false:n.value!=K)}L[a[b]]=!!c}return L}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var j={},s=e.documentElement,D=e.createElement("modernizr"),m=D.style,n=e.createElement("input"),E="input",Q=E+"types",K=":)",M=Object.prototype.toString,y=" -o- -moz- -ms- -webkit- -khtml- ".split(" "),d={},L={},J={},N=[],u=function(){var a={select:"input",
change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"},b={};return function(c,h){var t=arguments.length==1;if(t&&b[c])return b[c];h=h||document.createElement(a[c]||"div");c="on"+c;var g=c in h;if(!g&&h.setAttribute){h.setAttribute(c,"return;");g=typeof h[c]=="function"}h=null;return t?(b[c]=g):g}}(),F={}.hasOwnProperty,O;O=typeof F!=="undefined"&&typeof F.call!=="undefined"?function(a,b){return F.call(a,b)}:function(a,b){return b in a&&typeof a.constructor.prototype[b]==="undefined"};
d.canvas=function(){return!!e.createElement("canvas").getContext};d.canvastext=function(){return!!(d.canvas()&&typeof e.createElement("canvas").getContext("2d").fillText=="function")};d.geolocation=function(){return!!navigator.geolocation};d.crosswindowmessaging=function(){return!!i.postMessage};d.websqldatabase=function(){var a=!!i.openDatabase;if(a)try{a=!!openDatabase("testdb","1.0","html5 test db",2E5)}catch(b){a=false}return a};d.indexedDB=function(){return!!i.indexedDB};d.hashchange=function(){return u("hashchange",
i)&&(document.documentMode===I||document.documentMode>7)};d.historymanagement=function(){return!!(i.history&&history.pushState)};d.draganddrop=function(){return u("drag")&&u("dragstart")&&u("dragenter")&&u("dragover")&&u("dragleave")&&u("dragend")&&u("drop")};d.websockets=function(){return"WebSocket"in i};d.rgba=function(){m.cssText="background-color:rgba(150,255,150,.5)";return(""+m.backgroundColor).indexOf("rgba")!==-1};d.hsla=function(){m.cssText="background-color:hsla(120,40%,100%,.5)";return(""+
m.backgroundColor).indexOf("rgba")!==-1};d.multiplebgs=function(){m.cssText="background:url(//:),url(//:),red url(//:)";return/(url\s*\(.*?){3}/.test(m.background)};d.backgroundsize=function(){return r("backgroundSize")};d.borderimage=function(){return r("borderImage")};d.borderradius=function(){return r("borderRadius","",function(a){return(""+a).indexOf("orderRadius")!==-1})};d.boxshadow=function(){return r("boxShadow")};d.opacity=function(){var a=y.join("opacity:.5;")+"";m.cssText=a;return(""+m.opacity).indexOf("0.5")!==
-1};d.cssanimations=function(){return r("animationName")};d.csscolumns=function(){return r("columnCount")};d.cssgradients=function(){var a=("background-image:"+y.join("gradient(linear,left top,right bottom,from(#9f9),to(white));background-image:")+y.join("linear-gradient(left top,#9f9, white);background-image:")).slice(0,-17);m.cssText=a;return(""+m.backgroundImage).indexOf("gradient")!==-1};d.cssreflections=function(){return r("boxReflect")};d.csstransforms=function(){return!!C(["transformProperty",
"WebkitTransform","MozTransform","OTransform","msTransform"])};d.csstransforms3d=function(){var a=!!C(["perspectiveProperty","WebkitPerspective","MozPerspective","OPerspective","msPerspective"]);if(a){var b=document.createElement("style"),c=e.createElement("div");b.textContent="@media ("+y.join("transform-3d),(")+"modernizr){#modernizr{height:3px}}";e.getElementsByTagName("head")[0].appendChild(b);c.id="modernizr";s.appendChild(c);a=c.offsetHeight===3;b.parentNode.removeChild(b);c.parentNode.removeChild(c)}return a};
d.csstransitions=function(){return r("transitionProperty")};d.fontface=function(){var a;if(/*@cc_on@if(@_jscript_version>=5)!@end@*/0)a=true;else{var b=e.createElement("style"),c=e.createElement("span"),h,t=false,g=e.body,o,w;b.textContent="@font-face{font-family:testfont;src:url('data:font/ttf;base64,AAEAAAAMAIAAAwBAT1MvMliohmwAAADMAAAAVmNtYXCp5qrBAAABJAAAANhjdnQgACICiAAAAfwAAAAEZ2FzcP//AAMAAAIAAAAACGdseWYv5OZoAAACCAAAANxoZWFk69bnvwAAAuQAAAA2aGhlYQUJAt8AAAMcAAAAJGhtdHgGDgC4AAADQAAAABRsb2NhAIQAwgAAA1QAAAAMbWF4cABVANgAAANgAAAAIG5hbWUgXduAAAADgAAABPVwb3N03NkzmgAACHgAAAA4AAECBAEsAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAACAAMDAAAAAAAAgAACbwAAAAoAAAAAAAAAAFBmRWQAAAAgqS8DM/8zAFwDMwDNAAAABQAAAAAAAAAAAAMAAAADAAAAHAABAAAAAABGAAMAAQAAAK4ABAAqAAAABgAEAAEAAgAuqQD//wAAAC6pAP///9ZXAwAAAAAAAAACAAAABgBoAAAAAAAvAAEAAAAAAAAAAAAAAAAAAAABAAIAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEACoAAAAGAAQAAQACAC6pAP//AAAALqkA////1lcDAAAAAAAAAAIAAAAiAogAAAAB//8AAgACACIAAAEyAqoAAwAHAC6xAQAvPLIHBADtMrEGBdw8sgMCAO0yALEDAC88sgUEAO0ysgcGAfw8sgECAO0yMxEhESczESMiARDuzMwCqv1WIgJmAAACAFUAAAIRAc0ADwAfAAATFRQWOwEyNj0BNCYrASIGARQGKwEiJj0BNDY7ATIWFX8aIvAiGhoi8CIaAZIoN/43KCg3/jcoAWD0JB4eJPQkHh7++EY2NkbVRjY2RgAAAAABAEH/+QCdAEEACQAANjQ2MzIWFAYjIkEeEA8fHw8QDxwWFhwWAAAAAQAAAAIAAIuYbWpfDzz1AAsEAAAAAADFn9IuAAAAAMWf0i797/8zA4gDMwAAAAgAAgAAAAAAAAABAAADM/8zAFwDx/3v/98DiAABAAAAAAAAAAAAAAAAAAAABQF2ACIAAAAAAVUAAAJmAFUA3QBBAAAAKgAqACoAWgBuAAEAAAAFAFAABwBUAAQAAgAAAAEAAQAAAEAALgADAAMAAAAQAMYAAQAAAAAAAACLAAAAAQAAAAAAAQAhAIsAAQAAAAAAAgAFAKwAAQAAAAAAAwBDALEAAQAAAAAABAAnAPQAAQAAAAAABQAKARsAAQAAAAAABgAmASUAAQAAAAAADgAaAUsAAwABBAkAAAEWAWUAAwABBAkAAQBCAnsAAwABBAkAAgAKAr0AAwABBAkAAwCGAscAAwABBAkABABOA00AAwABBAkABQAUA5sAAwABBAkABgBMA68AAwABBAkADgA0A/tDb3B5cmlnaHQgMjAwOSBieSBEYW5pZWwgSm9obnNvbi4gIFJlbGVhc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgT3BlbiBGb250IExpY2Vuc2UuIEtheWFoIExpIGdseXBocyBhcmUgcmVsZWFzZWQgdW5kZXIgdGhlIEdQTCB2ZXJzaW9uIDMuYmFlYzJhOTJiZmZlNTAzMiAtIHN1YnNldCBvZiBKdXJhTGlnaHRiYWVjMmE5MmJmZmU1MDMyIC0gc3Vic2V0IG9mIEZvbnRGb3JnZSAyLjAgOiBKdXJhIExpZ2h0IDogMjMtMS0yMDA5YmFlYzJhOTJiZmZlNTAzMiAtIHN1YnNldCBvZiBKdXJhIExpZ2h0VmVyc2lvbiAyIGJhZWMyYTkyYmZmZTUwMzIgLSBzdWJzZXQgb2YgSnVyYUxpZ2h0aHR0cDovL3NjcmlwdHMuc2lsLm9yZy9PRkwAQwBvAHAAeQByAGkAZwBoAHQAIAAyADAAMAA5ACAAYgB5ACAARABhAG4AaQBlAGwAIABKAG8AaABuAHMAbwBuAC4AIAAgAFIAZQBsAGUAYQBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAdABlAHIAbQBzACAAbwBmACAAdABoAGUAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALgAgAEsAYQB5AGEAaAAgAEwAaQAgAGcAbAB5AHAAaABzACAAYQByAGUAIAByAGUAbABlAGEAcwBlAGQAIAB1AG4AZABlAHIAIAB0AGgAZQAgAEcAUABMACAAdgBlAHIAcwBpAG8AbgAgADMALgBiAGEAZQBjADIAYQA5ADIAYgBmAGYAZQA1ADAAMwAyACAALQAgAHMAdQBiAHMAZQB0ACAAbwBmACAASgB1AHIAYQBMAGkAZwBoAHQAYgBhAGUAYwAyAGEAOQAyAGIAZgBmAGUANQAwADMAMgAgAC0AIABzAHUAYgBzAGUAdAAgAG8AZgAgAEYAbwBuAHQARgBvAHIAZwBlACAAMgAuADAAIAA6ACAASgB1AHIAYQAgAEwAaQBnAGgAdAAgADoAIAAyADMALQAxAC0AMgAwADAAOQBiAGEAZQBjADIAYQA5ADIAYgBmAGYAZQA1ADAAMwAyACAALQAgAHMAdQBiAHMAZQB0ACAAbwBmACAASgB1AHIAYQAgAEwAaQBnAGgAdABWAGUAcgBzAGkAbwBuACAAMgAgAGIAYQBlAGMAMgBhADkAMgBiAGYAZgBlADUAMAAzADIAIAAtACAAcwB1AGIAcwBlAHQAIABvAGYAIABKAHUAcgBhAEwAaQBnAGgAdABoAHQAdABwADoALwAvAHMAYwByAGkAcAB0AHMALgBzAGkAbAAuAG8AcgBnAC8ATwBGAEwAAAAAAgAAAAAAAP+BADMAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAQACAQIAEQt6ZXJva2F5YWhsaQ==')}";
e.getElementsByTagName("head")[0].appendChild(b);c.setAttribute("style","font:99px _,arial,helvetica;position:absolute;visibility:hidden");if(!g){g=s.appendChild(e.createElement("fontface"));t=true}c.innerHTML="........";c.id="fonttest";g.appendChild(c);h=c.offsetWidth*c.offsetHeight;c.style.font="99px testfont,_,arial,helvetica";a=h!==c.offsetWidth*c.offsetHeight;var v=function(){if(g.parentNode){a=j.fontface=h!==c.offsetWidth*c.offsetHeight;s.className=s.className.replace(/(no-)?fontface\b/,"")+
(a?" ":" no-")+"fontface"}};setTimeout(v,75);setTimeout(v,150);addEventListener("load",function(){v();(w=true)&&o&&o(a);setTimeout(function(){t||(g=c);g.parentNode.removeChild(g);b.parentNode.removeChild(b)},50)},false)}j._fontfaceready=function(p){w||a?p(a):(o=p)};return a||h!==c.offsetWidth};d.video=function(){var a=e.createElement("video"),b=!!a.canPlayType;if(b){b=new Boolean(b);b.ogg=a.canPlayType('video/ogg; codecs="theora"');b.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"');b.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"')}return b};
d.audio=function(){var a=e.createElement("audio"),b=!!a.canPlayType;if(b){b=new Boolean(b);b.ogg=a.canPlayType('audio/ogg; codecs="vorbis"');b.mp3=a.canPlayType("audio/mpeg;");b.wav=a.canPlayType('audio/wav; codecs="1"');b.m4a=a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")}return b};d.localStorage=function(){return"localStorage"in i&&i.localStorage!==null};d.sessionStorage=function(){try{return"sessionStorage"in i&&i.sessionStorage!==null}catch(a){return false}};d.webworkers=function(){return!!i.Worker};
d.applicationCache=function(){var a=i.applicationCache;return!!(a&&typeof a.status!="undefined"&&typeof a.update=="function"&&typeof a.swapCache=="function")};d.svg=function(){return!!e.createElementNS&&!!e.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect};d.smil=function(){return!!e.createElementNS&&/SVG/.test(M.call(e.createElementNS("http://www.w3.org/2000/svg","animate")))};d.svgclippaths=function(){return!!e.createElementNS&&/SVG/.test(M.call(e.createElementNS("http://www.w3.org/2000/svg",
"clipPath")))};for(var z in d)if(O(d,z))N.push(((j[z.toLowerCase()]=d[z]())?"":"no-")+z.toLowerCase());j[E]||P();j.addTest=function(a,b){a=a.toLowerCase();if(!j[a]){b=!!b();s.className+=" "+(b?"":"no-")+a;j[a]=b;return j}};m.cssText="";D=n=null;(function(){var a=e.createElement("div");a.innerHTML="<elem></elem>";return a.childNodes.length!==1})()&&function(a,b){function c(f,k){if(o[f])o[f].styleSheet.cssText+=k;else{var l=t[G],q=b[A]("style");q.media=f;l.insertBefore(q,l[G]);o[f]=q;c(f,k)}}function h(f,
k){for(var l=new RegExp("\\b("+w+")\\b(?!.*[;}])","gi"),q=function(B){return".iepp_"+B},x=-1;++x<f.length;){k=f[x].media||k;h(f[x].imports,k);c(k,f[x].cssText.replace(l,q))}}for(var t=b.documentElement,g=b.createDocumentFragment(),o={},w="abbr|article|aside|audio|canvas|command|datalist|details|figure|figcaption|footer|header|hgroup|keygen|mark|meter|nav|output|progress|section|source|summary|time|video",v=w.split("|"),p=[],H=-1,G="firstChild",A="createElement";++H<v.length;){b[A](v[H]);g[A](v[H])}g=
g.appendChild(b[A]("div"));a.attachEvent("onbeforeprint",function(){for(var f,k=b.getElementsByTagName("*"),l,q,x=new RegExp("^"+w+"$","i"),B=-1;++B<k.length;)if((f=k[B])&&(q=f.nodeName.match(x))){l=new RegExp("^\\s*<"+q+"(.*)\\/"+q+">\\s*$","i");g.innerHTML=f.outerHTML.replace(/\r|\n/g," ").replace(l,f.currentStyle.display=="block"?"<div$1/div>":"<span$1/span>");l=g.childNodes[0];l.className+=" iepp_"+q;l=p[p.length]=[f,l];f.parentNode.replaceChild(l[1],l[0])}h(b.styleSheets,"all")});a.attachEvent("onafterprint",
function(){for(var f=-1,k;++f<p.length;)p[f][1].parentNode.replaceChild(p[f][0],p[f][1]);for(k in o)t[G].removeChild(o[k]);o={};p=[]})}(this,e);j._enableHTML5=true;j._version="1.5";s.className=s.className.replace(/\bno-js\b/,"")+" js";s.className+=" "+N.join(" ");return j}(this,this.document);
/*
 * FullCalendar v1.4.5
 * http://arshaw.com/fullcalendar/
 *
 * Use fullcalendar.css for basic styling.
 * For event drag & drop, required jQuery UI draggable.
 * For event resizing, requires jQuery UI resizable.
 *
 * Copyright (c) 2009 Adam Shaw
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 * Date: Sun Feb 21 20:30:11 2010 -0800
 *
 */
(function(D){var I=D.fullCalendar={};var f=I.views={};var F={defaultView:"month",aspectRatio:1.35,header:{left:"title",center:"",right:"today prev,next"},weekends:true,allDayDefault:true,lazyFetching:true,startParam:"start",endParam:"end",titleFormat:{month:"MMMM yyyy",week:"MMM d[ yyyy]{ '&#8212;'[ MMM] d yyyy}",day:"dddd, MMM d, yyyy"},columnFormat:{month:"ddd",week:"ddd M/d",day:"dddd M/d"},timeFormat:{"":"h(:mm)t"},isRTL:false,firstDay:0,monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],buttonText:{prev:"&nbsp;&#9668;&nbsp;",next:"&nbsp;&#9658;&nbsp;",prevYear:"&nbsp;&lt;&lt;&nbsp;",nextYear:"&nbsp;&gt;&gt;&nbsp;",today:"today",month:"month",week:"week",day:"day"},theme:false,buttonIcons:{prev:"circle-triangle-w",next:"circle-triangle-e"}};var b={header:{left:"next,prev today",center:"",right:"title"},buttonText:{prev:"&nbsp;&#9658;&nbsp;",next:"&nbsp;&#9668;&nbsp;",prevYear:"&nbsp;&gt;&gt;&nbsp;",nextYear:"&nbsp;&lt;&lt;&nbsp;"},buttonIcons:{prev:"circle-triangle-e",next:"circle-triangle-w"}};var M=I.setDefaults=function(ac){D.extend(true,F,ac)};D.fn.fullCalendar=function(af){if(typeof af=="string"){var ae=Array.prototype.slice.call(arguments,1),ag;this.each(function(){var ai=D.data(this,"fullCalendar");if(ai){var ah=ai[af].apply(this,ae);if(ag==m){ag=ah}}});if(ag!=m){return ag}return this}var ad=af.eventSources||[];delete af.eventSources;if(af.events){ad.push(af.events);delete af.events}ad.unshift([]);af=D.extend(true,{},F,(af.isRTL||af.isRTL==m&&F.isRTL)?b:{},af);var ac=af.theme?"ui":"fc";this.each(function(){var aI=this,ax=D(aI).addClass("fc"),aB,ar=D("<div class='fc-content "+ac+"-widget-content' style='position:relative'/>").prependTo(aI),al,aD=0,aJ=0,aN=new Date(),ap,ai,aQ={},aq;if(af.isRTL){ax.addClass("fc-rtl")}if(af.theme){ax.addClass("ui-widget")}if(af.year!=m&&af.year!=aN.getFullYear()){aN.setDate(1);aN.setMonth(0);aN.setFullYear(af.year)}if(af.month!=m&&af.month!=aN.getMonth()){aN.setDate(1);aN.setMonth(af.month)}if(af.date!=m){aN.setDate(af.date)}function an(aU){if(aU!=ap){aJ++;var aV=ai,aT;if(aV){if(aV.eventsChanged){ah();aV.eventDirty=aV.eventsChanged=false}if(aV.beforeHide){aV.beforeHide()}aa(ar,ar.height());aV.element.hide()}else{aa(ar,1)}ar.css("overflow","hidden");if(aQ[aU]){(ai=aQ[aU]).element.show()}else{ai=aQ[aU]=D.fullCalendar.views[aU](aT=aq=D("<div class='fc-view fc-view-"+aU+"' style='position:absolute'/>").appendTo(ar),af)}if(aj){aj.find("div.fc-button-"+ap).removeClass(ac+"-state-active");aj.find("div.fc-button-"+aU).addClass(ac+"-state-active")}ai.name=ap=aU;aC();ar.css("overflow","");if(aV){aa(ar,1)}if(!aT&&ai.afterShow){ai.afterShow()}aJ--}}function aC(aU){if(aG()){aJ++;if(al==m){aE()}if(!ai.start||aU||aN<ai.start||aN>=ai.end){ai.render(aN,aU||0);aH(true);if(!aA||!af.lazyFetching||ai.visStart<aA||ai.visEnd>aO){aF()}else{ai.renderEvents(az)}}else{if(ai.sizeDirty||ai.eventsDirty||!af.lazyFetching){ai.clearEvents();if(ai.sizeDirty){aH()}if(af.lazyFetching){ai.renderEvents(az)}else{aF()}}}aB=ax.outerWidth();ai.sizeDirty=false;ai.eventsDirty=false;if(aj){aj.find("h2.fc-header-title").html(ai.title);var aT=new Date();if(aT>=ai.start&&aT<ai.end){aj.find("div.fc-button-today").addClass(ac+"-state-disabled")}else{aj.find("div.fc-button-today").removeClass(ac+"-state-disabled")}}aJ--;ai.trigger("viewDisplay",aI)}}function aG(){return aI.offsetWidth!==0}function av(){return D("body")[0].offsetWidth!==0}function au(){ah();if(aG()){ai.clearEvents();ai.renderEvents(az);ai.eventsDirty=false}}function ah(){D.each(aQ,function(){this.eventsDirty=true})}function ay(){aR();if(aG()){aE();aH();ai.rerenderEvents();ai.sizeDirty=false}}function aR(){D.each(aQ,function(){this.sizeDirty=true})}var az=[],aA,aO;function aP(aW){az=[];aA=Q(ai.visStart);aO=Q(ai.visEnd);var aV=ad.length,aT=function(){if(--aV==0){if(aW){aW(az)}}},aU=0;for(;aU<ad.length;aU++){aw(ad[aU],aT)}}function aw(aY,aZ){var aU=ai.name,aX=Q(aN),aW=function(a0){if(aU==ai.name&&+aX==+aN&&D.inArray(aY,ad)!=-1){for(var a1=0;a1<a0.length;a1++){C(a0[a1],af);a0[a1].source=aY}az=az.concat(a0);if(aZ){aZ(a0)}}},aT=function(a0){aW(a0);ak()};if(typeof aY=="string"){var aV={};aV[af.startParam]=Math.round(aA.getTime()/1000);aV[af.endParam]=Math.round(aO.getTime()/1000);if(af.cacheParam){aV[af.cacheParam]=(new Date()).getTime()}ao();D.ajax({url:aY,dataType:"json",data:aV,cache:af.cacheParam||false,success:aT})}else{if(D.isFunction(aY)){ao();aY(Q(aA),Q(aO),aT)}else{aW(aY)}}}function aF(){aP(function(aT){ai.renderEvents(aT)})}var aS=0;function ao(){if(!aS++){ai.trigger("loading",aI,true)}}function ak(){if(!--aS){ai.trigger("loading",aI,false)}}var aL={render:function(){aE();aR();ah();aC()},changeView:an,getView:function(){return ai},getDate:function(){return aN},option:function(aT,aU){if(aU==m){return af[aT]}if(aT=="height"||aT=="contentHeight"||aT=="aspectRatio"){af[aT]=aU;ay()}},destroy:function(){D(window).unbind("resize",at);if(aj){aj.remove()}ar.remove();D.removeData(aI,"fullCalendar")},prev:function(){aC(-1)},next:function(){aC(1)},prevYear:function(){Y(aN,-1);aC()},nextYear:function(){Y(aN,1);aC()},today:function(){aN=new Date();aC()},gotoDate:function(aT,aV,aU){if(typeof aT=="object"){aN=Q(aT)}else{if(aT!=m){aN.setFullYear(aT)}if(aV!=m){aN.setMonth(aV)}if(aU!=m){aN.setDate(aU)}}aC()},incrementDate:function(aU,aT,aV){if(aU!=m){Y(aN,aU)}if(aT!=m){p(aN,aT)}if(aV!=m){y(aN,aV)}aC()},updateEvent:function(aX){var aV,aT=az.length,aY,aW=aX.start-aX._start,aU=aX.end?(aX.end-(aX._end||ai.defaultEventEnd(aX))):0;for(aV=0;aV<aT;aV++){aY=az[aV];if(aY._id==aX._id&&aY!=aX){aY.start=new Date(+aY.start+aW);if(aX.end){if(aY.end){aY.end=new Date(+aY.end+aU)}else{aY.end=new Date(+ai.defaultEventEnd(aY)+aU)}}else{aY.end=null}aY.title=aX.title;aY.url=aX.url;aY.allDay=aX.allDay;aY.className=aX.className;aY.editable=aX.editable;C(aY,af)}}C(aX,af);au()},renderEvent:function(aU,aT){C(aU,af);if(!aU.source){if(aT){(aU.source=ad[0]).push(aU)}az.push(aU)}au()},removeEvents:function(aU){if(!aU){az=[];for(var aT=0;aT<ad.length;aT++){if(typeof ad[aT]=="object"){ad[aT]=[]}}}else{if(!D.isFunction(aU)){var aV=aU+"";aU=function(aW){return aW._id==aV}}az=D.grep(az,aU,true);for(var aT=0;aT<ad.length;aT++){if(typeof ad[aT]=="object"){ad[aT]=D.grep(ad[aT],aU,true)}}}au()},clientEvents:function(aT){if(D.isFunction(aT)){return D.grep(az,aT)}else{if(aT){aT+="";return D.grep(az,function(aU){return aU._id==aT})}}return az},rerenderEvents:au,addEventSource:function(aT){ad.push(aT);aw(aT,au)},removeEventSource:function(aT){ad=D.grep(ad,function(aU){return aU!=aT});az=D.grep(az,function(aU){return aU.source!=aT});au()},refetchEvents:function(){aP(au)}};D.data(this,"fullCalendar",aL);var aj,aK=af.header;if(aK){aj=D("<table class='fc-header'/>").append(D("<tr/>").append(D("<td class='fc-header-left'/>").append(aM(aK.left))).append(D("<td class='fc-header-center'/>").append(aM(aK.center))).append(D("<td class='fc-header-right'/>").append(aM(aK.right)))).prependTo(ax)}function aM(aT){if(aT){var aU=D("<tr/>");D.each(aT.split(" "),function(aW){if(aW>0){aU.append("<td><span class='fc-header-space'/></td>")}var aV;D.each(this.split(","),function(aZ,aY){if(aY=="title"){aU.append("<td><h2 class='fc-header-title'>&nbsp;</h2></td>");if(aV){aV.addClass(ac+"-corner-right")}aV=null}else{var aX;if(aL[aY]){aX=aL[aY]}else{if(f[aY]){aX=function(){a0.removeClass(ac+"-state-hover");an(aY)}}}if(aX){if(aV){aV.addClass(ac+"-no-right")}var a0,a1=af.theme?i(af.buttonIcons,aY):null,a2=i(af.buttonText,aY);if(a1){a0=D("<div class='fc-button-"+aY+" ui-state-default'><a><span class='ui-icon ui-icon-"+a1+"'/></a></div>")}else{if(a2){a0=D("<div class='fc-button-"+aY+" "+ac+"-state-default'><a><span>"+a2+"</span></a></div>")}}if(a0){a0.click(function(){if(!a0.hasClass(ac+"-state-disabled")){aX()}}).mousedown(function(){a0.not("."+ac+"-state-active").not("."+ac+"-state-disabled").addClass(ac+"-state-down")}).mouseup(function(){a0.removeClass(ac+"-state-down")}).hover(function(){a0.not("."+ac+"-state-active").not("."+ac+"-state-disabled").addClass(ac+"-state-hover")},function(){a0.removeClass(ac+"-state-hover").removeClass(ac+"-state-down")}).appendTo(D("<td/>").appendTo(aU));if(aV){aV.addClass(ac+"-no-right")}else{a0.addClass(ac+"-corner-left")}aV=a0}}}});if(aV){aV.addClass(ac+"-corner-right")}});return D("<table/>").append(aU)}}function aE(){if(af.contentHeight){al=af.contentHeight}else{if(af.height){al=af.height-(aj?aj.height():0)-O(ar[0])}else{al=Math.round(ar.width()/Math.max(af.aspectRatio,0.5))}}}function aH(aT){aJ++;ai.setHeight(al,aT);if(aq){aq.css("position","relative");aq=null}ai.setWidth(ar.width(),aT);aJ--}function at(){if(!aJ){if(ai.start){var aT=++aD;setTimeout(function(){if(aT==aD&&!aJ&&aG()){if(aB!=(aB=ax.outerWidth())){aJ++;ay();ai.trigger("windowResize",aI);aJ--}}},200)}else{am()}}}D(window).resize(at);an(af.defaultView);if(!av()){am()}function am(){setTimeout(function(){if(!ai.start&&av()){aC()}},0)}});return this};var P=0;function C(ad,ac){ad._id=ad._id||(ad.id==m?"_fc"+P++:ad.id+"");if(ad.date){if(!ad.start){ad.start=ad.date}delete ad.date}ad._start=Q(ad.start=g(ad.start));ad.end=g(ad.end);if(ad.end&&ad.end<=ad.start){ad.end=null}ad._end=ad.end?Q(ad.end):null;if(ad.allDay==m){ad.allDay=ac.allDayDefault}if(ad.className){if(typeof ad.className=="string"){ad.className=ad.className.split(/\s+/)}}else{ad.className=[]}}M({weekMode:"fixed"});f.month=function(ad,ac){return new E(ad,ac,{render:function(ag,ak){if(ak){p(ag,ak);ag.setDate(1)}var aj=this.start=Q(ag,true);aj.setDate(1);this.end=p(Q(aj),1);var af=this.visStart=Q(aj),ae=this.visEnd=Q(this.end),ah=ac.weekends?0:1;if(ah){Z(af);Z(ae,-1,true)}y(af,-((af.getDay()-Math.max(ac.firstDay,ah)+7)%7));y(ae,(7-ae.getDay()+Math.max(ac.firstDay,ah))%7);var ai=Math.round((ae-af)/(S*7));if(ac.weekMode=="fixed"){y(ae,(6-ai)*7);ai=6}this.title=N(aj,this.option("titleFormat"),ac);this.renderGrid(ai,ac.weekends?7:5,this.option("columnFormat"),true)}})};f.basicWeek=function(ad,ac){return new E(ad,ac,{render:function(ag,ah){if(ah){y(ag,ah*7)}var af=this.visStart=Q(this.start=y(Q(ag),-((ag.getDay()-ac.firstDay+7)%7))),ae=this.visEnd=Q(this.end=y(Q(af),7));if(!ac.weekends){Z(af);Z(ae,-1,true)}this.title=u(af,y(Q(ae),-1),this.option("titleFormat"),ac);this.renderGrid(1,ac.weekends?7:5,this.option("columnFormat"),false)}})};f.basicDay=function(ad,ac){return new E(ad,ac,{render:function(ae,af){if(af){y(ae,af);if(!ac.weekends){Z(ae,af<0?-1:1)}}this.title=N(ae,this.option("titleFormat"),ac);this.start=this.visStart=Q(ae,true);this.end=this.visEnd=y(Q(this.start),1);this.renderGrid(1,1,this.option("columnFormat"),false)}})};var G;function E(af,aj,aG){var ag,at,ak,am,az,ay,aD,ax,an,aC,aI,aE,ad,ap=[],ai,aw=new J(function(aJ){return ad.find("td:eq("+((aJ-Math.max(at,ak)+aC)%aC)+") div div")}),au=D.extend(this,l,aG,{renderGrid:aB,renderEvents:ah,rerenderEvents:aF,clearEvents:aq,setHeight:ao,setWidth:ae,defaultEventEnd:function(aJ){return Q(aJ.start)}});au.init(af,aj);af.addClass("fc-grid");if(af.disableSelection){af.disableSelection()}function aB(aJ,aP,aM,aR){an=aJ;aC=aP;ag=aj.theme?"ui":"fc";ak=aj.weekends?0:1;at=aj.firstDay;if(am=aj.isRTL){az=-1;ay=aC-1}else{az=1;ay=0}var aN=au.start.getMonth(),aQ=w(new Date()),aU,aL,aK,aO=Q(au.visStart);if(!ad){var aT=D("<table/>").appendTo(af);aU="<thead><tr>";for(aL=0;aL<aC;aL++){aU+="<th class='fc-"+U[aO.getDay()]+" "+ag+"-state-default"+(aL==ay?" fc-leftmost":"")+"'>"+N(aO,aM,aj)+"</th>";y(aO,1);if(ak){Z(aO)}}aE=D(aU+"</tr></thead>").appendTo(aT);aU="<tbody>";aO=Q(au.visStart);for(aL=0;aL<an;aL++){aU+="<tr class='fc-week"+aL+"'>";for(aK=0;aK<aC;aK++){aU+="<td class='fc-"+U[aO.getDay()]+" "+ag+"-state-default fc-day"+(aL*aC+aK)+(aK==ay?" fc-leftmost":"")+(an>1&&aO.getMonth()!=aN?" fc-other-month":"")+(+aO==+aQ?" fc-today "+ag+"-state-highlight":" fc-not-today")+"'>"+(aR?"<div class='fc-day-number'>"+aO.getDate()+"</div>":"")+"<div class='fc-day-content'><div style='position:relative'>&nbsp;</div></div></td>";y(aO,1);if(ak){Z(aO)}}aU+="</tr>"}ad=D(aU+"</tbody>").appendTo(aT);ad.find("td").click(ac);ai=D("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(af)}else{aq();var aS=ad.find("tr").length;if(an<aS){ad.find("tr:gt("+(an-1)+")").remove()}else{if(an>aS){aU="";for(aL=aS;aL<an;aL++){aU+="<tr class='fc-week"+aL+"'>";for(aK=0;aK<aC;aK++){aU+="<td class='fc-"+U[aO.getDay()]+" "+ag+"-state-default fc-new fc-day"+(aL*aC+aK)+(aK==ay?" fc-leftmost":"")+"'>"+(aR?"<div class='fc-day-number'></div>":"")+"<div class='fc-day-content'><div style='position:relative'>&nbsp;</div></div></td>";y(aO,1);if(ak){Z(aO)}}aU+="</tr>"}ad.append(aU)}}ad.find("td.fc-new").removeClass("fc-new").click(ac);aO=Q(au.visStart);ad.find("td").each(function(){var aV=D(this);if(an>1){if(aO.getMonth()==aN){aV.removeClass("fc-other-month")}else{aV.addClass("fc-other-month")}}if(+aO==+aQ){aV.removeClass("fc-not-today").addClass("fc-today").addClass(ag+"-state-highlight")}else{aV.addClass("fc-not-today").removeClass("fc-today").removeClass(ag+"-state-highlight")}aV.find("div.fc-day-number").text(aO.getDate());y(aO,1);if(ak){Z(aO)}});if(an==1){aO=Q(au.visStart);aE.find("th").each(function(){D(this).text(N(aO,aM,aj));this.className=this.className.replace(/^fc-\w+(?= )/,"fc-"+U[aO.getDay()]);y(aO,1);if(ak){Z(aO)}});aO=Q(au.visStart);ad.find("td").each(function(){this.className=this.className.replace(/^fc-\w+(?= )/,"fc-"+U[aO.getDay()]);y(aO,1);if(ak){Z(aO)}})}}}function ac(aK){var aL=parseInt(this.className.match(/fc\-day(\d+)/)[1]),aJ=y(Q(au.visStart),Math.floor(aL/aC)*7+aL%aC);au.trigger("dayClick",this,aJ,true,aK)}function ao(aJ){ax=aJ;var aK=ad.find("tr td:first-child"),aP=ax-aE.height(),aN,aM;if(aj.weekMode=="variable"){aN=aM=Math.floor(aP/(an==1?2:6))}else{aN=Math.floor(aP/an);aM=aP-aN*(an-1)}if(G==m){var aL=ad.find("tr:first"),aO=aL.find("td:first");aO.height(aN);G=aN!=aO.height()}if(G){aK.slice(0,-1).height(aN);aK.slice(-1).height(aM)}else{h(aK.slice(0,-1),aN);h(aK.slice(-1),aM)}}function ae(aJ){aD=aJ;aw.clear();V(aE.find("th").slice(0,-1),aI=Math.floor(aD/aC))}function ah(aJ){au.reportEvents(ap=aJ);al(ar(aJ))}function aF(aJ){aq();al(ar(ap),aJ)}function aq(){au._clearEvents();ai.empty()}function ar(aS){var aL=Q(au.visStart),aJ=y(Q(aL),aC),aR=D.map(aS,aA),aQ,aT,aP,aK,aN,aO,aM=[];for(aQ=0;aQ<an;aQ++){aT=H(au.sliceSegs(aS,aR,aL,aJ));for(aP=0;aP<aT.length;aP++){aK=aT[aP];for(aN=0;aN<aK.length;aN++){aO=aK[aN];aO.row=aQ;aO.level=aP;aM.push(aO)}}y(aL,7);y(aJ,7)}return aM}function al(aJ,aK){c(aJ,an,au,0,aD,function(aL){return ad.find("tr:eq("+aL+")")},aw.left,aw.right,ai,aH,aK)}function aA(aK){if(aK.end){var aJ=Q(aK.end);return(aK.allDay||aJ.getHours()||aJ.getMinutes())?y(aJ,1):aJ}else{return y(Q(aK.start),1)}}function aH(aL,aK,aJ){au.eventElementHandlers(aL,aK);if(aL.editable||aL.editable==m&&aj.editable){av(aL,aK);if(aJ.isEnd){au.resizableDayEvent(aL,aK,aI)}}}function av(aL,aK){if(!aj.disableDragging&&aK.draggable){var aJ;aK.draggable({zIndex:9,delay:50,opacity:au.option("dragOpacity"),revertDuration:aj.dragRevertDuration,start:function(aN,aO){au.hideEvents(aL,aK);au.trigger("eventDragStart",aK,aL,aN,aO);aJ=new e(function(aP){aK.draggable("option","revert",!aP||!aP.rowDelta&&!aP.colDelta);if(aP){au.showOverlay(aP)}else{au.hideOverlay()}});ad.find("tr").each(function(){aJ.row(this)});var aM=ad.find("tr:first td");if(am){aM=D(aM.get().reverse())}aM.each(function(){aJ.col(this)});aJ.mouse(aN.pageX,aN.pageY)},drag:function(aM){aJ.mouse(aM.pageX,aM.pageY)},stop:function(aN,aO){au.hideOverlay();au.trigger("eventDragStop",aK,aL,aN,aO);var aM=aJ.cell;if(!aM||!aM.rowDelta&&!aM.colDelta){if(D.browser.msie){aK.css("filter","")}au.showEvents(aL,aK)}else{aK.find("a").removeAttr("href");au.eventDrop(this,aL,aM.rowDelta*7+aM.colDelta*az,0,aL.allDay,aN,aO)}}})}}}function c(ar,ak,ao,au,ay,aA,aq,aK,ag,aG,at){var af=ao.options,aj=af.isRTL,aw,aD=ar.length,aB,av,ae,ai,aF,an="",aE,ax,al,aJ={},ac={},aI,aH,am,ap,ah,aC,ad=[],az=[];for(aw=0;aw<aD;aw++){aB=ar[aw];av=aB.event;ae="fc-event fc-event-hori ";if(aj){if(aB.isStart){ae+="fc-corner-right "}if(aB.isEnd){ae+="fc-corner-left "}ai=aB.isEnd?aq(aB.end.getDay()-1):au;aF=aB.isStart?aK(aB.start.getDay()):ay}else{if(aB.isStart){ae+="fc-corner-left "}if(aB.isEnd){ae+="fc-corner-right "}ai=aB.isStart?aq(aB.start.getDay()):au;aF=aB.isEnd?aK(aB.end.getDay()-1):ay}an+="<div class='"+ae+av.className.join(" ")+"' style='position:absolute;z-index:8;left:"+ai+"px'><a"+(av.url?" href='"+K(av.url)+"'":"")+">"+(!av.allDay&&aB.isStart?"<span class='fc-event-time'>"+K(u(av.start,av.end,ao.option("timeFormat"),af))+"</span>":"")+"<span class='fc-event-title'>"+K(av.title)+"</span></a>"+((av.editable||av.editable==m&&af.editable)&&!af.disableResizing&&D.fn.resizable?"<div class='ui-resizable-handle ui-resizable-"+(aj?"w":"e")+"'></div>":"")+"</div>";aB.left=ai;aB.outerWidth=aF-ai}ag[0].innerHTML=an;aE=ag.children();for(aw=0;aw<aD;aw++){aB=ar[aw];ax=D(aE[aw]);av=aB.event;al=ao.trigger("eventRender",av,av,ax);if(al===false){ax.remove()}else{if(al&&al!==true){ax.remove();ax=D(al).css({position:"absolute",left:aB.left}).appendTo(ag)}aB.element=ax;if(av._id===at){aG(av,ax,aB)}else{ax[0]._fci=aw}ao.reportEventElement(av,ax)}}T(ag,ar,aG);for(aw=0;aw<aD;aw++){aB=ar[aw];if(ax=aB.element){aH=aJ[aI=aB.key=X(ax[0])];aB.hsides=aH==m?(aJ[aI]=B(ax[0],true)):aH}}for(aw=0;aw<aD;aw++){aB=ar[aw];if(ax=aB.element){ax[0].style.width=aB.outerWidth-aB.hsides+"px"}}for(aw=0;aw<aD;aw++){aB=ar[aw];if(ax=aB.element){aH=ac[aI=aB.key];aB.outerHeight=ax[0].offsetHeight+(aH==m?(ac[aI]=t(ax[0])):aH)}}for(aw=0,am=0;am<ak;am++){ap=ah=aC=0;while(aw<aD&&(aB=ar[aw]).row==am){if(aB.level!=ah){ap+=aC;aC=0;ah++}aC=Math.max(aC,aB.outerHeight||0);aB.top=ap;aw++}ad[am]=aA(am).find("td:first div.fc-day-content > div").height(ap+aC)}for(am=0;am<ak;am++){az[am]=ad[am][0].offsetTop}for(aw=0;aw<aD;aw++){aB=ar[aw];if(ax=aB.element){ax[0].style.top=az[aB.row]+aB.top+"px";av=aB.event;ao.trigger("eventAfterRender",av,av,ax)}}}M({allDaySlot:true,allDayText:"all-day",firstHour:6,slotMinutes:30,defaultEventMinutes:120,axisFormat:"h(:mm)tt",timeFormat:{agenda:"h:mm{ - h:mm}"},dragOpacity:{agenda:0.5},minTime:0,maxTime:24});f.agendaWeek=function(ad,ac){return new v(ad,ac,{render:function(ag,ah){if(ah){y(ag,ah*7)}var af=this.visStart=Q(this.start=y(Q(ag),-((ag.getDay()-ac.firstDay+7)%7))),ae=this.visEnd=Q(this.end=y(Q(af),7));if(!ac.weekends){Z(af);Z(ae,-1,true)}this.title=u(af,y(Q(ae),-1),this.option("titleFormat"),ac);this.renderAgenda(ac.weekends?7:5,this.option("columnFormat"))}})};f.agendaDay=function(ad,ac){return new v(ad,ac,{render:function(ae,af){if(af){y(ae,af);if(!ac.weekends){Z(ae,af<0?-1:1)}}this.title=N(ae,this.option("titleFormat"),ac);this.start=this.visStart=Q(ae,true);this.end=this.visEnd=y(Q(this.start),1);this.renderAgenda(1,this.option("columnFormat"))}})};function v(at,aB,aH){var ar,aA,ai,av,aV,ak,ah,aC,ax,aT,aY,aI,aJ=[],am,al,aZ,az,aw,aO,aW,aU,aG,ad,aP=new J(function(a0){return aV.find("td:eq("+a0+") div div")}),ap={},af=D.extend(this,l,aH,{renderAgenda:aE,renderEvents:aj,rerenderEvents:ag,clearEvents:aD,setHeight:aK,setWidth:aQ,beforeHide:function(){aI=aA.scrollTop()},afterShow:function(){aA.scrollTop(aI)},defaultEventEnd:function(a0){var a1=Q(a0.start);if(a0.allDay){return a1}return o(a1,aB.defaultEventMinutes)}});af.init(at,aB);at.addClass("fc-agenda");if(at.disableSelection){at.disableSelection()}function aE(a6,a3){ak=a6;aZ=aB.theme?"ui":"fc";aw=aB.weekends?0:1;az=aB.firstDay;if(aO=aB.isRTL){aW=-1;aU=ak-1}else{aW=1;aU=0}aG=a(aB.minTime);ad=a(aB.maxTime);var a0=aO?y(Q(af.visEnd),-1):Q(af.visStart),a5=Q(a0),a8=w(new Date());if(!ar){var a2,a1,a7=aB.slotMinutes%15==0,a9="<div class='fc-agenda-head' style='position:relative;z-index:4'><table style='width:100%'><tr class='fc-first"+(aB.allDaySlot?"":" fc-last")+"'><th class='fc-leftmost "+aZ+"-state-default'>&nbsp;</th>";for(a2=0;a2<ak;a2++){a9+="<th class='fc-"+U[a5.getDay()]+" "+aZ+"-state-default'>"+N(a5,a3,aB)+"</th>";y(a5,aW);if(aw){Z(a5,aW)}}a9+="<th class='"+aZ+"-state-default'>&nbsp;</th></tr>";if(aB.allDaySlot){a9+="<tr class='fc-all-day'><th class='fc-axis fc-leftmost "+aZ+"-state-default'>"+aB.allDayText+"</th><td colspan='"+ak+"' class='"+aZ+"-state-default'><div class='fc-day-content'><div style='position:relative'>&nbsp;</div></div></td><th class='"+aZ+"-state-default'>&nbsp;</th></tr><tr class='fc-divider fc-last'><th colspan='"+(ak+2)+"' class='"+aZ+"-state-default fc-leftmost'><div/></th></tr>"}a9+="</table></div>";ar=D(a9).appendTo(at);ar.find("td").click(ac);am=D("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(ar);a5=d();var a4=o(Q(a5),ad);o(a5,aG);a9="<table>";for(a2=0;a5<a4;a2++){a1=a5.getMinutes();a9+="<tr class='"+(a2==0?"fc-first":(a1==0?"":"fc-minor"))+"'><th class='fc-axis fc-leftmost "+aZ+"-state-default'>"+((!a7||a1==0)?N(a5,aB.axisFormat):"&nbsp;")+"</th><td class='fc-slot"+a2+" "+aZ+"-state-default'><div style='position:relative'>&nbsp;</div></td></tr>";o(a5,aB.slotMinutes)}a9+="</table>";aA=D("<div class='fc-agenda-body' style='position:relative;z-index:2;overflow:auto'/>").append(ai=D("<div style='position:relative;overflow:hidden'>").append(av=D(a9))).appendTo(at);aA.find("td").click(ac);al=D("<div style='position:absolute;z-index:8;top:0;left:0'/>").appendTo(ai);a5=Q(a0);a9="<div class='fc-agenda-bg' style='position:absolute;z-index:1'><table style='width:100%;height:100%'><tr class='fc-first'>";for(a2=0;a2<ak;a2++){a9+="<td class='fc-"+U[a5.getDay()]+" "+aZ+"-state-default "+(a2==0?"fc-leftmost ":"")+(+a5==+a8?aZ+"-state-highlight fc-today":"fc-not-today")+"'><div class='fc-day-content'><div>&nbsp;</div></div></td>";y(a5,aW);if(aw){Z(a5,aW)}}a9+="</tr></table></div>";aV=D(a9).appendTo(at)}else{aD();ar.find("tr:first th").slice(1,-1).each(function(){D(this).text(N(a5,a3,aB));this.className=this.className.replace(/^fc-\w+(?= )/,"fc-"+U[a5.getDay()]);y(a5,aW);if(aw){Z(a5,aW)}});a5=Q(a0);aV.find("td").each(function(){this.className=this.className.replace(/^fc-\w+(?= )/,"fc-"+U[a5.getDay()]);if(+a5==+a8){D(this).removeClass("fc-not-today").addClass("fc-today").addClass(aZ+"-state-highlight")}else{D(this).addClass("fc-not-today").removeClass("fc-today").removeClass(aZ+"-state-highlight")}y(a5,aW);if(aw){Z(a5,aW)}})}}function ao(){var a3=d(),a1=Q(a3);a1.setHours(aB.firstHour);var a2=an(a3,a1)+1,a0=function(){aA.scrollTop(a2)};a0();setTimeout(a0,0)}function aK(a0,a1){aY=a0;ap={};aA.height(a0-ar.height());ax=aA.find("tr:first div").height()+1;aV.css({top:ar.find("tr").height(),height:a0});if(a1){ao()}}function aQ(a0){aT=a0;aP.clear();aA.width(a0);av.width("");var a3=ar.find("tr:first th"),a1=aV.find("td"),a2=aA[0].clientWidth;av.width(a2);ah=0;V(ar.find("tr:lt(2) th:first").add(aA.find("tr:first th")).width("").each(function(){ah=Math.max(ah,D(this).outerWidth())}),ah);aC=Math.floor((a2-ah)/ak);V(a1.slice(0,-1),aC);V(a3.slice(1,-2),aC);V(a3.slice(-2,-1),a2-ah-aC*(ak-1));aV.css({left:ah,width:a2-ah})}function ac(a4){var a2=Math.floor((a4.pageX-aV.offset().left)/aC),a1=y(Q(af.visStart),aU+aW*a2),a5=this.className.match(/fc-slot(\d+)/);if(a5){var a3=parseInt(a5[1])*aB.slotMinutes,a0=Math.floor(a3/60);a1.setHours(a0);a1.setMinutes(a3%60+aG);af.trigger("dayClick",this,a1,false,a4)}else{af.trigger("dayClick",this,a1,true,a4)}}function aj(a4,a2){af.reportEvents(aJ=a4);var a3,a1=a4.length,a5=[],a0=[];for(a3=0;a3<a1;a3++){if(a4[a3].allDay){a5.push(a4[a3])}else{a0.push(a4[a3])}}aM(ae(a5),a2);aq(ay(a0),a2)}function ag(a0){aD();aj(aJ,a0)}function aD(){af._clearEvents();am.empty();al.empty()}function ae(a4){var a6=H(af.sliceSegs(a4,D.map(a4,aL),af.visStart,af.visEnd)),a3,a5=a6.length,a7,a2,a1,a0=[];for(a3=0;a3<a5;a3++){a7=a6[a3];for(a2=0;a2<a7.length;a2++){a1=a7[a2];a1.row=0;a1.level=a3;a0.push(a1)}}return a0}function ay(a9){var a8=o(Q(af.visStart),aG),a6=D.map(a9,aL),a7,a2,a5,a0,a3,a4,a1=[];for(a7=0;a7<ak;a7++){a2=H(af.sliceSegs(a9,a6,a8,o(Q(a8),ad-aG)));L(a2);for(a5=0;a5<a2.length;a5++){a0=a2[a5];for(a3=0;a3<a0.length;a3++){a4=a0[a3];a4.col=a7;a4.level=a5;a1.push(a4)}}y(a8,1,true)}return a1}function aM(a0,a1){if(aB.allDaySlot){c(a0,1,af,ah,aT,function(){return ar.find("tr.fc-all-day")},function(a2){return ah+aP.left(aR(a2))},function(a2){return ah+aP.right(aR(a2))},am,aX,a1);aK(aY)}}function aq(bd,be){var bi,bl=bd.length,bk,bg,a1,bb,a8,a7,a3,a9,a6,bf,a0,a4,ba="",bm,bj,a5,a2={},bp={},bo,bn,bh,bc;for(bi=0;bi<bl;bi++){bk=bd[bi];bg=bk.event;a1="fc-event fc-event-vert ";if(bk.isStart){a1+="fc-corner-top "}if(bk.isEnd){a1+="fc-corner-bottom "}bb=an(bk.start,bk.start);a8=an(bk.start,bk.end);a7=bk.col;a3=bk.level;a9=bk.forward||0;a6=ah+aP.left(a7*aW+aU);bf=ah+aP.right(a7*aW+aU)-a6;bf=Math.min(bf-6,bf*0.95);if(a3){a0=bf/(a3+a9+1)}else{if(a9){a0=((bf/(a9+1))-(12/2))*2}else{a0=bf}}a4=a6+(bf/(a3+a9+1)*a3)*aW+(aO?bf-a0:0);bk.top=bb;bk.left=a4;bk.outerWidth=a0;bk.outerHeight=a8-bb;ba+="<div class='"+a1+bg.className.join(" ")+"' style='position:absolute;z-index:8;top:"+bb+"px;left:"+a4+"px'><a"+(bg.url?" href='"+K(bg.url)+"'":"")+"><span class='fc-event-bg'></span><span class='fc-event-time'>"+K(u(bg.start,bg.end,af.option("timeFormat")))+"</span><span class='fc-event-title'>"+K(bg.title)+"</span></a>"+((bg.editable||bg.editable==m&&aB.editable)&&!aB.disableResizing&&D.fn.resizable?"<div class='ui-resizable-handle ui-resizable-s'>=</div>":"")+"</div>"}al[0].innerHTML=ba;bm=al.children();for(bi=0;bi<bl;bi++){bk=bd[bi];bg=bk.event;bj=D(bm[bi]);a5=af.trigger("eventRender",bg,bg,bj);if(a5===false){bj.remove()}else{if(a5&&a5!==true){bj.remove();bj=D(a5).css({position:"absolute",top:bk.top,left:bk.left}).appendTo(al)}bk.element=bj;if(bg._id===be){aN(bg,bj,bk)}else{bj[0]._fci=bi}af.reportEventElement(bg,bj)}}T(al,bd,aN);for(bi=0;bi<bl;bi++){bk=bd[bi];if(bj=bk.element){bn=a2[bo=bk.key=X(bj[0])];bk.vsides=bn==m?(a2[bo]=O(bj[0],true)):bn;bn=bp[bo];bk.hsides=bn==m?(bp[bo]=B(bj[0],true)):bn;bh=bj.find("span.fc-event-title");if(bh.length){bk.titleTop=bh[0].offsetTop}}}for(bi=0;bi<bl;bi++){bk=bd[bi];if(bj=bk.element){bj[0].style.width=bk.outerWidth-bk.hsides+"px";bj[0].style.height=(bc=bk.outerHeight-bk.vsides)+"px";bg=bk.event;if(bk.titleTop!=m&&bc-bk.titleTop<10){bj.find("span.fc-event-time").text(N(bg.start,af.option("timeFormat"))+" - "+bg.title);bj.find("span.fc-event-title").remove()}af.trigger("eventAfterRender",bg,bg,bj)}}}function aL(a1){if(a1.allDay){if(a1.end){var a0=Q(a1.end);return(a1.allDay||a0.getHours()||a0.getMinutes())?y(a0,1):a0}else{return y(Q(a1.start),1)}}if(a1.end){return Q(a1.end)}else{return o(Q(a1.start),aB.defaultEventMinutes)}}function aX(a2,a1,a0){af.eventElementHandlers(a2,a1);if(a2.editable||a2.editable==m&&aB.editable){au(a2,a1,a0.isStart);if(a0.isEnd){af.resizableDayEvent(a2,a1,aC)}}}function aN(a2,a1,a0){af.eventElementHandlers(a2,a1);if(a2.editable||a2.editable==m&&aB.editable){var a3=a1.find("span.fc-event-time");aF(a2,a1,a3);if(a0.isEnd){aS(a2,a1,a3)}}}function au(a5,a2,a0){if(!aB.disableDragging&&a2.draggable){var a4,a7,a3,a6=true,a1;a2.draggable({zIndex:9,opacity:af.option("dragOpacity","month"),revertDuration:aB.dragRevertDuration,start:function(a8,a9){af.hideEvents(a5,a2);af.trigger("eventDragStart",a2,a5,a8,a9);a4=a2.position();a7=a2.width();a3=function(){if(!a6){a2.width(a7).height("").draggable("option","grid",null);a6=true}};a1=new e(function(ba){a2.draggable("option","revert",!ba||!ba.rowDelta&&!ba.colDelta);if(ba){if(!ba.row){a3();af.showOverlay(ba)}else{if(a0&&a6){h(a2.width(aC-10),ax*Math.round((a5.end?((a5.end-a5.start)/W):aB.defaultEventMinutes)/aB.slotMinutes));a2.draggable("option","grid",[aC,1]);a6=false}af.hideOverlay()}}else{af.hideOverlay()}});a1.row(ar.find("td"));aV.find("td").each(function(){a1.col(this)});a1.row(aA);a1.mouse(a8.pageX,a8.pageY)},drag:function(a8,a9){a1.mouse(a8.pageX,a8.pageY)},stop:function(ba,bb){af.hideOverlay();af.trigger("eventDragStop",a2,a5,ba,bb);var a8=a1.cell,a9=aW*(a6?(a8?a8.colDelta:0):Math.floor((bb.position.left-a4.left)/aC));if(!a8||!a9&&!a8.rowDelta){a3();if(D.browser.msie){a2.css("filter","")}af.showEvents(a5,a2)}else{a2.find("a").removeAttr("href");af.eventDrop(this,a5,a9,a6?0:Math.round((a2.offset().top-ai.offset().top)/ax)*aB.slotMinutes+aG-(a5.start.getHours()*60+a5.start.getMinutes()),a6,ba,bb)}}})}}function aF(a0,a4,a6){if(!aB.disableDragging&&a4.draggable){var a1,a2,a3,a7,a8=false,a5;a4.draggable({zIndex:9,scroll:false,grid:[aC,ax],axis:ak==1?"y":false,opacity:af.option("dragOpacity"),revertDuration:aB.dragRevertDuration,start:function(a9,ba){af.hideEvents(a0,a4);af.trigger("eventDragStart",a4,a0,a9,ba);if(D.browser.msie){a4.find("span.fc-event-bg").hide()}a1=a4.position();a2=function(){if(a8){a6.css("display","");a4.draggable("option","grid",[aC,ax]);a8=false}};a3=0;a5=new e(function(bb){a4.draggable("option","revert",!bb);if(bb){if(!bb.row&&aB.allDaySlot){if(!a8){a8=true;a6.hide();a4.draggable("option","grid",null)}af.showOverlay(bb)}else{a2();af.hideOverlay()}}else{af.hideOverlay()}});if(aB.allDaySlot){a5.row(ar.find("td"))}aV.find("td").each(function(){a5.col(this)});a5.row(aA);a5.mouse(a9.pageX,a9.pageY)},drag:function(bc,bd){a7=Math.round((bd.position.top-a1.top)/ax);if(a7!=a3){if(!a8){var ba=a7*aB.slotMinutes,a9=o(Q(a0.start),ba),bb;if(a0.end){bb=o(Q(a0.end),ba)}a6.text(u(a9,bb,af.option("timeFormat")))}a3=a7}a5.mouse(bc.pageX,bc.pageY)},stop:function(bb,bc){af.hideOverlay();af.trigger("eventDragStop",a4,a0,bb,bc);var a9=a5.cell,ba=aW*(a8?(a9?a9.colDelta:0):Math.floor((bc.position.left-a1.left)/aC));if(!a9||!a7&&!ba){a2();if(D.browser.msie){a4.css("filter","").find("span.fc-event-bg").css("display","")}a4.css(a1);af.showEvents(a0,a4)}else{af.eventDrop(this,a0,ba,a8?0:a7*aB.slotMinutes,a8,bb,bc)}}})}}function aS(a2,a1,a3){if(!aB.disableResizing&&a1.resizable){var a4,a0;a1.resizable({handles:{s:"div.ui-resizable-s"},grid:ax,start:function(a5,a6){a4=a0=0;af.hideEvents(a2,a1);if(D.browser.msie&&D.browser.version=="6.0"){a1.css("overflow","hidden")}a1.css("z-index",9);af.trigger("eventResizeStart",this,a2,a5,a6)},resize:function(a5,a6){a4=Math.round((Math.max(ax,a1.height())-a6.originalSize.height)/ax);if(a4!=a0){a3.text(u(a2.start,(!a4&&!a2.end)?null:o(af.eventEnd(a2),aB.slotMinutes*a4),af.option("timeFormat")));a0=a4}},stop:function(a5,a6){af.trigger("eventResizeStop",this,a2,a5,a6);if(a4){af.eventResize(this,a2,0,aB.slotMinutes*a4,a5,a6)}else{a1.css("z-index",8);af.showEvents(a2,a1)}}})}}function an(a1,a5){a1=Q(a1,true);if(a5<o(Q(a1),aG)){return 0}if(a5>=o(Q(a1),ad)){return ai.height()}var a0=aB.slotMinutes,a4=a5.getHours()*60+a5.getMinutes()-aG,a3=Math.floor(a4/a0),a2=ap[a3];if(a2==m){a2=ap[a3]=aA.find("tr:eq("+a3+") td div")[0].offsetTop}return Math.max(0,Math.round(a2-1+ax*((a4%a0)/a0)))}function aR(a0){return((a0-Math.max(az,aw)+ak)%ak)*aW+aU}}function L(ag){var ae,ad,ac,ai,ah,af;for(ae=ag.length-1;ae>0;ae--){ai=ag[ae];for(ad=0;ad<ai.length;ad++){ah=ai[ad];for(ac=0;ac<ag[ae-1].length;ac++){af=ag[ae-1][ac];if(x(ah,af)){af.forward=Math.max(af.forward||0,(ah.forward||0)+1)}}}}}var l={init:function(ad,ac){this.element=ad;this.options=ac;this.eventsByID={};this.eventElements=[];this.eventElementsByID={}},trigger:function(ac,ad){if(this.options[ac]){return this.options[ac].apply(ad||this,Array.prototype.slice.call(arguments,2).concat([this]))}},eventEnd:function(ac){return ac.end?Q(ac.end):this.defaultEventEnd(ac)},reportEvents:function(af){var ae,ac=af.length,ag,ad=this.eventsByID={};for(ae=0;ae<ac;ae++){ag=af[ae];if(ad[ag._id]){ad[ag._id].push(ag)}else{ad[ag._id]=[ag]}}},reportEventElement:function(ad,ac){this.eventElements.push(ac);var ae=this.eventElementsByID;if(ae[ad._id]){ae[ad._id].push(ac)}else{ae[ad._id]=[ac]}},_clearEvents:function(){this.eventElements=[];this.eventElementsByID={}},showEvents:function(ad,ac){this._eee(ad,ac,"show")},hideEvents:function(ad,ac){this._eee(ad,ac,"hide")},_eee:function(af,ae,ah){var ag=this.eventElementsByID[af._id],ad,ac=ag.length;for(ad=0;ad<ac;ad++){if(ag[ad][0]!=ae[0]){ag[ad][ah]()}}},eventDrop:function(af,ad,ae,ag,al,ai,ah){var aj=this,ak=ad.allDay,ac=ad._id;aj.moveEvents(aj.eventsByID[ac],ae,ag,al);aj.trigger("eventDrop",af,ad,ae,ag,al,function(){aj.moveEvents(aj.eventsByID[ac],-ae,-ag,ak);aj.rerenderEvents()},ai,ah);aj.eventsChanged=true;aj.rerenderEvents(ac)},eventResize:function(aj,ah,ae,ad,ag,ai){var ac=this,af=ah._id;ac.elongateEvents(ac.eventsByID[af],ae,ad);ac.trigger("eventResize",aj,ah,ae,ad,function(){ac.elongateEvents(ac.eventsByID[af],-ae,-ad);ac.rerenderEvents()},ag,ai);ac.eventsChanged=true;ac.rerenderEvents(af)},moveEvents:function(ag,ae,ad,ah){ad=ad||0;for(var ai,ac=ag.length,af=0;af<ac;af++){ai=ag[af];if(ah!=m){ai.allDay=ah}o(y(ai.start,ae,true),ad);if(ai.end){ai.end=o(y(ai.end,ae,true),ad)}C(ai,this.options)}},elongateEvents:function(ag,ae,ad){ad=ad||0;for(var ah,ac=ag.length,af=0;af<ac;af++){ah=ag[af];ah.end=o(y(this.eventEnd(ah),ae,true),ad);C(ah,this.options)}},showOverlay:function(ac){if(!this.dayOverlay){this.dayOverlay=D("<div class='fc-cell-overlay' style='position:absolute;z-index:3;display:none'/>").appendTo(this.element)}var ad=this.element.offset();this.dayOverlay.css({top:ac.top-ad.top,left:ac.left-ad.left,width:ac.width,height:ac.height}).show()},hideOverlay:function(){if(this.dayOverlay){this.dayOverlay.hide()}},resizableDayEvent:function(af,ad,ae){var ac=this;if(!ac.options.disableResizing&&ad.resizable){ad.resizable({handles:ac.options.isRTL?{w:"div.ui-resizable-w"}:{e:"div.ui-resizable-e"},grid:ae,minWidth:ae/2,containment:ac.element.parent().parent(),start:function(ag,ah){ad.css("z-index",9);ac.hideEvents(af,ad);ac.trigger("eventResizeStart",this,af,ag,ah)},stop:function(ah,ai){ac.trigger("eventResizeStop",this,af,ah,ai);var ag=Math.round((ad.width()-ai.originalSize.width)/ae);if(ag){ac.eventResize(this,af,ag,0,ah,ai)}else{ad.css("z-index",8);ac.showEvents(af,ad)}}})}},eventElementHandlers:function(ae,ad){var ac=this;ad.click(function(af){if(!ad.hasClass("ui-draggable-dragging")&&!ad.hasClass("ui-resizable-resizing")){return ac.trigger("eventClick",this,ae,af)}}).hover(function(af){ac.trigger("eventMouseover",this,ae,af)},function(af){ac.trigger("eventMouseout",this,ae,af)})},option:function(ad,ae){var ac=this.options[ad];if(typeof ac=="object"){return i(ac,ae||this.name)}return ac},sliceSegs:function(ao,ai,ae,ah){var af=[],aj,al=ao.length,ad,am,ak,an,ap,ac,ag;for(aj=0;aj<al;aj++){ad=ao[aj];am=ad.start;ak=ai[aj];if(ak>ae&&am<ah){if(am<ae){an=Q(ae);ac=false}else{an=am;ac=true}if(ak>ah){ap=Q(ah);ag=false}else{ap=ak;ag=true}af.push({event:ad,start:an,end:ap,isStart:ac,isEnd:ag,msLength:ap-an})}}return af.sort(z)}};function T(ad,ac,ae){ad.unbind("mouseover").mouseover(function(ai){var ah=ai.target,aj,ag,af;while(ah!=this){aj=ah;ah=ah.parentNode}if((ag=aj._fci)!=m){aj._fci=m;af=ac[ag];ae(af.event,af.element,af);D(ai.target).trigger(ai)}ai.stopPropagation()})}function H(ae){var ai=[],ah,ac=ae.length,ad,ag,aj,af;for(ah=0;ah<ac;ah++){ad=ae[ah];ag=0;while(true){aj=false;if(ai[ag]){for(af=0;af<ai[ag].length;af++){if(x(ai[ag][af],ad)){aj=true;break}}}if(aj){ag++}else{break}}if(ai[ag]){ai[ag].push(ad)}else{ai[ag]=[ad]}}return ai}function z(ad,ac){return(ac.msLength-ad.msLength)*100+(ad.event.start-ac.event.start)}function x(ad,ac){return ad.end>ac.start&&ad.start<ac.end}var S=86400000,q=3600000,W=60000;function Y(ad,ae,ac){ad.setFullYear(ad.getFullYear()+ae);if(!ac){w(ad)}return ad}function p(af,ag,ae){if(+af){var ac=af.getMonth()+ag,ad=Q(af);ad.setDate(1);ad.setMonth(ac);af.setMonth(ac);if(!ae){w(af)}while(af.getMonth()!=ad.getMonth()){af.setDate(af.getDate()+(af<ad?1:-1))}}return af}function y(af,ag,ae){if(+af){var ac=af.getDate()+ag,ad=Q(af);ad.setHours(9);ad.setDate(ac);af.setDate(ac);if(!ae){w(af)}r(af,ad)}return af}I.addDays=y;function r(ad,ac){if(+ad){while(ad.getDate()!=ac.getDate()){ad.setTime(+ad+(ad<ac?1:-1)*q)}}}function o(ac,ad){ac.setMinutes(ac.getMinutes()+ad);return ac}function w(ac){ac.setHours(0);ac.setMinutes(0);ac.setSeconds(0);ac.setMilliseconds(0);return ac}function Q(ac,ad){if(ad){return w(new Date(+ac))}return new Date(+ac)}function d(){var ac=0,ad;do{ad=new Date(1970,ac++,1)}while(ad.getHours()!=0);return ad}function Z(ac,ad,ae){ad=ad||1;while(ac.getDay()==0||(ae&&ac.getDay()==1||!ae&&ac.getDay()==6)){y(ac,ad)}return ac}var g=I.parseDate=function(ac){if(typeof ac=="object"){return ac}if(typeof ac=="number"){return new Date(ac*1000)}if(typeof ac=="string"){if(ac.match(/^\d+$/)){return new Date(parseInt(ac)*1000)}return k(ac,true)||(ac?new Date(ac):null)}return null};var k=I.parseISO8601=function(ag,ad){var ac=ag.match(/^([0-9]{4})(-([0-9]{2})(-([0-9]{2})([T ]([0-9]{2}):([0-9]{2})(:([0-9]{2})(\.([0-9]+))?)?(Z|(([-+])([0-9]{2}):([0-9]{2})))?)?)?)?$/);if(!ac){return null}var af=new Date(ac[1],0,1),ae=new Date(ac[1],0,1,9,0),ah=0;if(ac[3]){af.setMonth(ac[3]-1);ae.setMonth(ac[3]-1)}if(ac[5]){af.setDate(ac[5]);ae.setDate(ac[5])}r(af,ae);if(ac[7]){af.setHours(ac[7])}if(ac[8]){af.setMinutes(ac[8])}if(ac[10]){af.setSeconds(ac[10])}if(ac[12]){af.setMilliseconds(Number("0."+ac[12])*1000)}r(af,ae);if(!ad){if(ac[14]){ah=Number(ac[16])*60+Number(ac[17]);ah*=ac[15]=="-"?1:-1}ah-=af.getTimezoneOffset()}return new Date(+af+(ah*60*1000))};var a=I.parseTime=function(ae){if(typeof ae=="number"){return ae*60}if(typeof ae=="object"){return ae.getHours()*60+ae.getMinutes()}var ac=ae.match(/(\d+)(?::(\d+))?\s*(\w+)?/);if(ac){var ad=parseInt(ac[1]);if(ac[3]){ad%=12;if(ac[3].toLowerCase().charAt(0)=="p"){ad+=12}}return ad*60+(ac[2]?parseInt(ac[2]):0)}};var N=I.formatDate=function(ad,ae,ac){return u(ad,null,ae,ac)};var u=I.formatDates=function(ao,an,am,ap){ap=ap||F;var ad=ao,af=an,ag,ah=am.length,aj,ae,al,ai="";for(ag=0;ag<ah;ag++){aj=am.charAt(ag);if(aj=="'"){for(ae=ag+1;ae<ah;ae++){if(am.charAt(ae)=="'"){if(ad){if(ae==ag+1){ai+="'"}else{ai+=am.substring(ag+1,ae)}ag=ae}break}}}else{if(aj=="("){for(ae=ag+1;ae<ah;ae++){if(am.charAt(ae)==")"){var ac=N(ad,am.substring(ag+1,ae),ap);if(parseInt(ac.replace(/\D/,""))){ai+=ac}ag=ae;break}}}else{if(aj=="["){for(ae=ag+1;ae<ah;ae++){if(am.charAt(ae)=="]"){var ak=am.substring(ag+1,ae);var ac=N(ad,ak,ap);if(ac!=N(af,ak,ap)){ai+=ac}ag=ae;break}}}else{if(aj=="{"){ad=an;af=ao}else{if(aj=="}"){ad=ao;af=an}else{for(ae=ah;ae>ag;ae--){if(al=s[am.substring(ag,ae)]){if(ad){ai+=al(ad,ap)}ag=ae-1;break}}if(ae==ag){if(ad){ai+=aj}}}}}}}}return ai};var s={s:function(ac){return ac.getSeconds()},ss:function(ac){return R(ac.getSeconds())},m:function(ac){return ac.getMinutes()},mm:function(ac){return R(ac.getMinutes())},h:function(ac){return ac.getHours()%12||12},hh:function(ac){return R(ac.getHours()%12||12)},H:function(ac){return ac.getHours()},HH:function(ac){return R(ac.getHours())},d:function(ac){return ac.getDate()},dd:function(ac){return R(ac.getDate())},ddd:function(ad,ac){return ac.dayNamesShort[ad.getDay()]},dddd:function(ad,ac){return ac.dayNames[ad.getDay()]},M:function(ac){return ac.getMonth()+1},MM:function(ac){return R(ac.getMonth()+1)},MMM:function(ad,ac){return ac.monthNamesShort[ad.getMonth()]},MMMM:function(ad,ac){return ac.monthNames[ad.getMonth()]},yy:function(ac){return(ac.getFullYear()+"").substring(2)},yyyy:function(ac){return ac.getFullYear()},t:function(ac){return ac.getHours()<12?"a":"p"},tt:function(ac){return ac.getHours()<12?"am":"pm"},T:function(ac){return ac.getHours()<12?"A":"P"},TT:function(ac){return ac.getHours()<12?"AM":"PM"},u:function(ac){return N(ac,"yyyy-MM-dd'T'HH:mm:ss'Z'")},S:function(ad){var ac=ad.getDate();if(ac>10&&ac<20){return"th"}return["st","nd","rd"][ac%10-1]||"th"}};function V(ad,ae,ac){ad.each(function(ag,af){af.style.width=ae-B(af,ac)+"px"})}function h(ae,ac,ad){ae.each(function(ag,af){af.style.height=ac-O(af,ad)+"px"})}function B(ad,ac){return(parseFloat(jQuery.curCSS(ad,"paddingLeft",true))||0)+(parseFloat(jQuery.curCSS(ad,"paddingRight",true))||0)+(parseFloat(jQuery.curCSS(ad,"borderLeftWidth",true))||0)+(parseFloat(jQuery.curCSS(ad,"borderRightWidth",true))||0)+(ac?n(ad):0)}function n(ac){return(parseFloat(jQuery.curCSS(ac,"marginLeft",true))||0)+(parseFloat(jQuery.curCSS(ac,"marginRight",true))||0)}function O(ad,ac){return(parseFloat(jQuery.curCSS(ad,"paddingTop",true))||0)+(parseFloat(jQuery.curCSS(ad,"paddingBottom",true))||0)+(parseFloat(jQuery.curCSS(ad,"borderTopWidth",true))||0)+(parseFloat(jQuery.curCSS(ad,"borderBottomWidth",true))||0)+(ac?t(ad):0)}function t(ac){return(parseFloat(jQuery.curCSS(ac,"marginTop",true))||0)+(parseFloat(jQuery.curCSS(ac,"marginBottom",true))||0)}function aa(ac,ad){ad=typeof ad=="number"?ad+"px":ad;ac[0].style.cssText+=";min-height:"+ad+";_height:"+ad}var A;function ab(ad){if(A!==false){var ac;if(ad.is("th,td")){ad=(ac=ad).parent()}if(A==m&&ad.is("tr")){A=ad.position().top!=ad.children().position().top}if(A){return ad.parent().position().top+(ac?ad.position().top-ac.position().top:0)}}return 0}function e(ae){var ak=this,aj=[],ac=[],ai,ah,af,ag,al,ad;ak.row=function(am){ai=D(am);aj.push(ai.offset().top+ab(ai))};ak.col=function(am){ah=D(am);ac.push(ah.offset().left)};ak.mouse=function(am,ap){if(af==m){aj.push(aj[aj.length-1]+ai.outerHeight());ac.push(ac[ac.length-1]+ah.outerWidth());al=ad=-1}var an,ao;for(an=0;an<aj.length&&ap>=aj[an];an++){}for(ao=0;ao<ac.length&&am>=ac[ao];ao++){}an=an>=aj.length?-1:an-1;ao=ao>=ac.length?-1:ao-1;if(an!=al||ao!=ad){al=an;ad=ao;if(an==-1||ao==-1){ak.cell=null}else{if(af==m){af=an;ag=ao}ak.cell={row:an,col:ao,top:aj[an],left:ac[ao],width:ac[ao+1]-ac[ao],height:aj[an+1]-aj[an],isOrig:an==af&&ao==ag,rowDelta:an-af,colDelta:ao-ag}}ae(ak.cell)}}}var m,U=["sun","mon","tue","wed","thu","fri","sat"],j=Array.prototype.pop;function R(ac){return(ac<10?"0":"")+ac}function i(ag,ac){if(ag[ac]!=m){return ag[ac]}var af=ac.split(/(?=[A-Z])/),ae=af.length-1,ad;for(;ae>=0;ae--){ad=ag[af[ae].toLowerCase()];if(ad!=m){return ad}}return ag[""]}function K(ac){return ac.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&#039;").replace(/"/g,"&quot;")}function J(ad){var ac=this,ae={},ah={},ag={};function af(ai){return ae[ai]=ae[ai]||ad(ai)}ac.left=function(ai){return ah[ai]=ah[ai]==m?af(ai).position().left:ah[ai]};ac.right=function(ai){return ag[ai]=ag[ai]==m?ac.left(ai)+af(ai).width():ag[ai]};ac.clear=function(){ae={};ah={};ag={}}}function X(ac){return ac.id+"/"+ac.className+"/"+ac.style.cssText.replace(/(^|;)\s*(top|left|width|height)\s*:[^;]*/ig,"")}})(jQuery);

/* ------------------------------------------------------------------------
	Class: prettyPhoto
	Use: Lightbox clone for jQuery
	Author: Stephane Caron (http://www.no-margin-for-errors.com)
	Version: 3.0
------------------------------------------------------------------------- */

(function($) {
	$.prettyPhoto = {version: '3.0'};
	
	$.fn.prettyPhoto = function(pp_settings) {
		pp_settings = jQuery.extend({
    			animation_speed: 'fast', /* fast/slow/normal */
    			slideshow: false, /* false OR interval time in ms */
    			autoplay_slideshow: false, /* true/false */
    			opacity: 0.90, /* Value between 0 and 1 */
    			show_title: true, /* true/false */
    			allow_resize: true, /* Resize the photos bigger than viewport. true/false */
    			default_width: 500,
    			default_height: 344,
    			counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
    			theme: 'light_square', /* light_rounded / dark_rounded / light_square / dark_square / facebook */
    			hideflash: false, /* Hides all the flash object on a page, set to TRUE if flash appears over prettyPhoto */
    			wmode: 'opaque', /* Set the flash wmode attribute */
    			autoplay: true, /* Automatically start videos: True/False */
    			modal: false, /* If set to true, only the close button will close the window */
    			overlay_gallery: true, /* If set to true, a gallery will overlay the fullscreen image on mouse over */
    			keyboard_shortcuts: true, /* Set to false if you open forms inside prettyPhoto */
    			changepicturecallback: function(){
    			  strictNewWindow();
    			  $('#shareEmailModal').attr('href', '/email_a_friend/?url='+escape(window.location.href));
    			  $('#shareFacebookModal').attr('href', 'http://www.facebook.com/share.php?u='+escape(window.location.href));
    			  $('#shareTwitterModal').attr('href', 'http://twitter.com/home?status=Currently%20watching%20'+escape(window.location.href));
    			}, /* Called everytime an item is shown/changed */
    			callback: function(){}, /* Called when prettyPhoto is closed */
    			markup: '<div class="pp_pic_holder"> \
    						<div class="ppt">&nbsp;</div> \
    						<div class="pp_top"> \
    							<div class="pp_left"></div> \
    							<div class="pp_middle"></div> \
    							<div class="pp_right"></div> \
    						</div> \
    						<div class="pp_content_container"> \
    							<div class="pp_left"> \
    							<div class="pp_right"> \
    								<div class="pp_content"> \
    									<div class="pp_loaderIcon"></div> \
    									<div class="pp_fade"> \
    										<a href="#" class="pp_expand" title="Expand the image">Expand</a> \
    										<div class="pp_hoverContainer"> \
    											<a class="pp_next" href="#">next</a> \
    											<a class="pp_previous" href="#">previous</a> \
    										</div> \
    										<div id="pp_full_res"></div> \
    										<div class="pp_details clearfix"> \
    										  <div class="post"> \
    											  <ul class="share-menu"> \
                              <li><a id="shareEmailModal" class="newwindow" href="/email_a_friend/?url=' +  window.location.href + '">Email a Friend</a></li> \
                              <li><a id="shareFacebookModal" class="newwindow" href="http://www.facebook.com/share.php?u=' +  window.location.href + '">Share on Facebook</a></li> \
                              <li><a id="shareTwitterModal" class="newwindow" href="http://twitter.com/home?status=Currently%20watching%20' +  window.location.href + '">Share on Twitter</a></li> \
                            </ul> \
    									      <div class="pp_description"></div> \
    											</div> \
    											<div class="pp_nav"> \
    												<a href="#" class="pp_arrow_previous">Previous</a> \
    												<p class="currentTextHolder">0/0</p> \
    												<a href="#" class="pp_arrow_next">Next</a> \
    											</div> \
    										</div> \
    									</div> \
    								</div> \
    							</div> \
    							</div> \
    						</div> \
    						<div class="pp_bottom"> \
    							<div class="pp_left"></div> \
    							<div class="pp_middle"></div> \
    							<div class="pp_right"></div> \
    						</div> \
    						<a class="pp_close" href="#">Close</a> \
    					</div> \
    					<div class="pp_overlay"></div>',
    			gallery_markup: '<div class="pp_gallery"> \
    								<a href="#" class="pp_arrow_previous">Previous</a> \
    								<ul> \
    									{gallery} \
    								</ul> \
    								<a href="#" class="pp_arrow_next">Next</a> \
    							</div>',
    			image_markup: '<img id="fullResImage" src="" />',
    			flash_markup: '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="{width}" height="{height}"><param name="wmode" value="{wmode}" /><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="{path}" /><embed src="{path}" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="{width}" height="{height}" wmode="{wmode}"></embed></object>',
    			quicktime_markup: '<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab" height="{height}" width="{width}"><param name="src" value="{path}"><param name="autoplay" value="{autoplay}"><param name="type" value="video/quicktime"><embed src="{path}" height="{height}" width="{width}" autoplay="{autoplay}" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"></embed></object>',
    			iframe_markup: '<iframe src ="{path}" width="{width}" height="{height}" frameborder="no"></iframe>',
    			inline_markup: '<div class="pp_inline clearfix">{content}</div>',
    			custom_markup: ''
    		}, pp_settings);
		
		// Global variables accessible only by prettyPhoto
		var matchedObjects = this, percentBased = false, correctSizes, pp_open,
		
		// prettyPhoto container specific
		pp_contentHeight, pp_contentWidth, pp_containerHeight, pp_containerWidth,
		
		// Window size
		windowHeight = $(window).height(), windowWidth = $(window).width(),

		// Global elements
		pp_slideshow;
		
		doresize = true, scroll_pos = _get_scroll();
	
		// Window/Keyboard events
		$(window).unbind('resize').resize(function(){ _center_overlay(); _resize_overlay(); });
		
		if(pp_settings.keyboard_shortcuts) {
			$(document).unbind('keydown').keydown(function(e){
				if(typeof $pp_pic_holder != 'undefined'){
					if($pp_pic_holder.is(':visible')){
						switch(e.keyCode){
							case 37:
								$.prettyPhoto.changePage('previous');
								break;
							case 39:
								$.prettyPhoto.changePage('next');
								break;
							case 27:
								if(!settings.modal)
								$.prettyPhoto.close();
								break;
						};
						return false;
					};
				};
			});
		}
		
		
		/**
		* Initialize prettyPhoto.
		*/
		$.prettyPhoto.initialize = function() {
			settings = pp_settings;
			
			if($.browser.msie && parseInt($.browser.version) == 6) settings.theme = "light_square"; // Fallback to a supported theme for IE6
			
			_buildOverlay(this); // Build the overlay {this} being the caller
			
			if(settings.allow_resize)
				$(window).scroll(function(){ _center_overlay(); });
				
			_center_overlay();
			
			set_position = jQuery.inArray($(this).attr('href'), pp_images); // Define where in the array the clicked item is positionned
			
			$.prettyPhoto.open();
			
			return false;
		}


		/**
		* Opens the prettyPhoto modal box.
		* @param image {String,Array} Full path to the image to be open, can also be an array containing full images paths.
		* @param title {String,Array} The title to be displayed with the picture, can also be an array containing all the titles.
		* @param description {String,Array} The description to be displayed with the picture, can also be an array containing all the descriptions.
		*/
		$.prettyPhoto.open = function() {
			if(typeof settings == "undefined"){ // Means it's an API call, need to manually get the settings and set the variables
				settings = pp_settings;
				if($.browser.msie && $.browser.version == 6) settings.theme = "light_square"; // Fallback to a supported theme for IE6
				_buildOverlay(this); // Build the overlay {this} being the caller
				pp_images = $.makeArray(arguments[0]);
				pp_titles = (arguments[1]) ? $.makeArray(arguments[1]) : $.makeArray("");
				pp_descriptions = (arguments[2]) ? $.makeArray(arguments[2]) : $.makeArray("");
				isSet = (pp_images.length > 1) ? true : false;
				set_position = 0;
			}

			if($.browser.msie && $.browser.version == 6) $('select').css('visibility','hidden'); // To fix the bug with IE select boxes
			
			if(settings.hideflash) $('object,embed').css('visibility','hidden'); // Hide the flash

			_checkPosition($(pp_images).size()); // Hide the next/previous links if on first or last images.
		
			$('.pp_loaderIcon').show();
		
			// Fade the content in
			if($ppt.is(':hidden')) $ppt.css('opacity',0).show();
			$pp_overlay.show().fadeTo(settings.animation_speed,settings.opacity);

			// Display the current position
			$pp_pic_holder.find('.currentTextHolder').text((set_position+1) + settings.counter_separator_label + $(pp_images).size());

			// Set the description
			$pp_pic_holder.find('.pp_description').show().html(unescape(pp_descriptions[set_position]));

			// Set the title
			(settings.show_title && pp_titles[set_position] != "") ? $ppt.html(unescape(pp_titles[set_position])) : $ppt.html('&nbsp;');
			
			// Get the dimensions
			movie_width = ( parseFloat(grab_param('width',pp_images[set_position])) ) ? grab_param('width',pp_images[set_position]) : settings.default_width.toString();
			movie_height = ( parseFloat(grab_param('height',pp_images[set_position])) ) ? grab_param('height',pp_images[set_position]) : settings.default_height.toString();
			
			// If the size is % based, calculate according to window dimensions
			if(movie_width.indexOf('%') != -1 || movie_height.indexOf('%') != -1){
				movie_height = parseFloat(($(window).height() * parseFloat(movie_height) / 100) - 150);
				movie_width = parseFloat(($(window).width() * parseFloat(movie_width) / 100) - 150);
				percentBased = true;
			}else{
				percentBased = false;
			}
			
			// Fade the holder
			$pp_pic_holder.fadeIn(function(){
				imgPreloader = "";
				
				// Inject the proper content
				switch(_getFileType(pp_images[set_position])){
					case 'image':
						imgPreloader = new Image();

						// Preload the neighbour images
						nextImage = new Image();
						if(isSet && set_position > $(pp_images).size()) nextImage.src = pp_images[set_position + 1];
						prevImage = new Image();
						if(isSet && pp_images[set_position - 1]) prevImage.src = pp_images[set_position - 1];

						$pp_pic_holder.find('#pp_full_res')[0].innerHTML = settings.image_markup;
						$pp_pic_holder.find('#fullResImage').attr('src',pp_images[set_position]);

						imgPreloader.onload = function(){
							// Fit item to viewport
							correctSizes = _fitToViewport(imgPreloader.width,imgPreloader.height);

							_showContent();
						};

						imgPreloader.onerror = function(){
							alert('Image cannot be loaded. Make sure the path is correct and image exist.');
							$.prettyPhoto.close();
						};
					
						imgPreloader.src = pp_images[set_position];
					break;
				
					case 'youtube':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport

						movie = 'http://www.youtube.com/v/'+grab_param('v',pp_images[set_position]);
						if(settings.autoplay) movie += "&autoplay=1";
					  movie += '&rel=0';
						toInject = settings.flash_markup.replace(/{width}/g,correctSizes['width']).replace(/{height}/g,correctSizes['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,movie);
					break;
				
					case 'vimeo':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport
					
						movie_id = pp_images[set_position];
						var regExp = /http:\/\/(www\.)?vimeo.com\/(\d+)/;
						var match = movie_id.match(regExp);
						
						movie = 'http://player.vimeo.com/video/'+ match[2] +'?title=0&amp;byline=0&amp;portrait=0';
						if(settings.autoplay) movie += "&autoplay=1;";
				
						vimeo_width = correctSizes['width'] + '/embed/?moog_width='+ correctSizes['width'];
				
						toInject = settings.iframe_markup.replace(/{width}/g,vimeo_width).replace(/{height}/g,correctSizes['height']).replace(/{path}/g,movie);
					break;
				
					case 'quicktime':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport
						correctSizes['height']+=15; correctSizes['contentHeight']+=15; correctSizes['containerHeight']+=15; // Add space for the control bar
				
						toInject = settings.quicktime_markup.replace(/{width}/g,correctSizes['width']).replace(/{height}/g,correctSizes['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,pp_images[set_position]).replace(/{autoplay}/g,settings.autoplay);
					break;
				
					case 'flash':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport
					
						flash_vars = pp_images[set_position];
						flash_vars = flash_vars.substring(pp_images[set_position].indexOf('flashvars') + 10,pp_images[set_position].length);

						filename = pp_images[set_position];
						filename = filename.substring(0,filename.indexOf('?'));
					
						toInject =  settings.flash_markup.replace(/{width}/g,correctSizes['width']).replace(/{height}/g,correctSizes['height']).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,filename+'?'+flash_vars);
					break;
				
					case 'iframe':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport
				
						frame_url = pp_images[set_position];
						frame_url = frame_url.substr(0,frame_url.indexOf('iframe')-1);
				
						toInject = settings.iframe_markup.replace(/{width}/g,correctSizes['width']).replace(/{height}/g,correctSizes['height']).replace(/{path}/g,frame_url);
					break;
					
					case 'custom':
						correctSizes = _fitToViewport(movie_width,movie_height); // Fit item to viewport
					
						toInject = settings.custom_markup;
					break;
				
					case 'inline':
						// to get the item height clone it, apply default width, wrap it in the prettyPhoto containers , then delete
						myClone = $(pp_images[set_position]).clone().css({'width':settings.default_width}).wrapInner('<div id="pp_full_res"><div class="pp_inline clearfix"></div></div>').appendTo($('body'));
						correctSizes = _fitToViewport($(myClone).width(),$(myClone).height());
						$(myClone).remove();
						toInject = settings.inline_markup.replace(/{content}/g,$(pp_images[set_position]).html());
					break;
				};

				if(!imgPreloader){
					$pp_pic_holder.find('#pp_full_res')[0].innerHTML = toInject;
				
					// Show content
					_showContent();
				};
			});

			return false;
		};

	
		/**
		* Change page in the prettyPhoto modal box
		* @param direction {String} Direction of the paging, previous or next.
		*/
		$.prettyPhoto.changePage = function(direction){
			currentGalleryPage = 0;
			
			if(direction == 'previous') {
				set_position--;
				if (set_position < 0){
					set_position = 0;
					return;
				};
			}else if(direction == 'next'){
				set_position++;
				if(set_position > $(pp_images).size()-1) {
					set_position = 0;
				}
			}else{
				set_position=direction;
			};

			if(!doresize) doresize = true; // Allow the resizing of the images
			$('.pp_contract').removeClass('pp_contract').addClass('pp_expand');

			_hideContent(function(){ $.prettyPhoto.open(); });
		};


		/**
		* Change gallery page in the prettyPhoto modal box
		* @param direction {String} Direction of the paging, previous or next.
		*/
		$.prettyPhoto.changeGalleryPage = function(direction){
			if(direction=='next'){
				currentGalleryPage ++;

				if(currentGalleryPage > totalPage){
					currentGalleryPage = 0;
				};
			}else if(direction=='previous'){
				currentGalleryPage --;

				if(currentGalleryPage < 0){
					currentGalleryPage = totalPage;
				};
			}else{
				currentGalleryPage = direction;
			};
			
			// Slide the pages, if we're on the last page, find out how many items we need to slide. To make sure we don't have an empty space.
			itemsToSlide = (currentGalleryPage == totalPage) ? pp_images.length - ((totalPage) * itemsPerPage) : itemsPerPage;
			
			$pp_pic_holder.find('.pp_gallery li').each(function(i){
				$(this).animate({
					'left': (i * itemWidth) - ((itemsToSlide * itemWidth) * currentGalleryPage)
				});
			});
		};


		/**
		* Start the slideshow...
		*/
		$.prettyPhoto.startSlideshow = function(){
			if(typeof pp_slideshow == 'undefined'){
				$pp_pic_holder.find('.pp_play').unbind('click').removeClass('pp_play').addClass('pp_pause').click(function(){
					$.prettyPhoto.stopSlideshow();
					return false;
				});
				pp_slideshow = setInterval($.prettyPhoto.startSlideshow,settings.slideshow);
			}else{
				$.prettyPhoto.changePage('next');	
			};
		}


		/**
		* Stop the slideshow...
		*/
		$.prettyPhoto.stopSlideshow = function(){
			$pp_pic_holder.find('.pp_pause').unbind('click').removeClass('pp_pause').addClass('pp_play').click(function(){
				$.prettyPhoto.startSlideshow();
				return false;
			});
			clearInterval(pp_slideshow);
			pp_slideshow=undefined;
		}


		/**
		* Closes prettyPhoto.
		*/
		$.prettyPhoto.close = function(){

			clearInterval(pp_slideshow);
			
			$pp_pic_holder.stop().find('object,embed').css('visibility','hidden');
			
			$('div.pp_pic_holder,div.ppt,.pp_fade').fadeOut(settings.animation_speed,function(){ $(this).remove(); });
			
			$pp_overlay.fadeOut(settings.animation_speed, function(){
				if($.browser.msie && $.browser.version == 6) $('select').css('visibility','visible'); // To fix the bug with IE select boxes
				
				if(settings.hideflash) $('object,embed').css('visibility','visible'); // Show the flash
				
				$(this).remove(); // No more need for the prettyPhoto markup
				
				$(window).unbind('scroll');
				
				settings.callback();
				
				doresize = true;
				
				pp_open = false;
				
				delete settings;
			});
		};
	
		/**
		* Set the proper sizes on the containers and animate the content in.
		*/
		_showContent = function(){
			$('.pp_loaderIcon').hide();
			
			$ppt.fadeTo(settings.animation_speed,1);

			// Calculate the opened top position of the pic holder
			projectedTop = scroll_pos['scrollTop'] + ((windowHeight/2) - (correctSizes['containerHeight']/2));
			if(projectedTop < 0) projectedTop = 0;

			// Resize the content holder
			$pp_pic_holder.find('.pp_content').animate({'height':correctSizes['contentHeight']},settings.animation_speed);
			
			// Resize picture the holder
			$pp_pic_holder.animate({
				'top': projectedTop,
				'left': (windowWidth/2) - (correctSizes['containerWidth']/2),
				'width': correctSizes['containerWidth']
			},settings.animation_speed,function(){
				$pp_pic_holder.find('.pp_hoverContainer,#fullResImage').height(correctSizes['height']).width(correctSizes['width']);

				$pp_pic_holder.find('.pp_fade').fadeIn(settings.animation_speed); // Fade the new content

				// Show the nav
				if(isSet && _getFileType(pp_images[set_position])=="image") { $pp_pic_holder.find('.pp_hoverContainer').show(); }else{ $pp_pic_holder.find('.pp_hoverContainer').hide(); }
			
				if(correctSizes['resized']) $('a.pp_expand,a.pp_contract').fadeIn(settings.animation_speed); // Fade the resizing link if the image is resized
				
				if(settings.autoplay_slideshow && !pp_slideshow && !pp_open) $.prettyPhoto.startSlideshow();
				
				settings.changepicturecallback(); // Callback!
				
				pp_open = true;
			});
			
			_insert_gallery();
		};
		
		/**
		* Hide the content...DUH!
		*/
		function _hideContent(callback){
			// Fade out the current picture
			$pp_pic_holder.find('#pp_full_res object,#pp_full_res embed').css('visibility','hidden');
			$pp_pic_holder.find('.pp_fade').fadeOut(settings.animation_speed,function(){
				$('.pp_loaderIcon').show();
				
				callback();
			});
		};
	
		/**
		* Check the item position in the gallery array, hide or show the navigation links
		* @param setCount {integer} The total number of items in the set
		*/
		function _checkPosition(setCount){
			// If at the end, hide the next link
			if(set_position == setCount-1) {
				$pp_pic_holder.find('a.pp_next').css('visibility','hidden');
				$pp_pic_holder.find('a.pp_next').addClass('disabled').unbind('click');
			}else{ 
				$pp_pic_holder.find('a.pp_next').css('visibility','visible');
				$pp_pic_holder.find('a.pp_next.disabled').removeClass('disabled').bind('click',function(){
					$.prettyPhoto.changePage('next');
					return false;
				});
			};
		
			// If at the beginning, hide the previous link
			if(set_position == 0) {
				$pp_pic_holder
					.find('a.pp_previous')
					.css('visibility','hidden')
					.addClass('disabled')
					.unbind('click');
			}else{
				$pp_pic_holder.find('a.pp_previous.disabled')
					.css('visibility','visible')
					.removeClass('disabled')
					.bind('click',function(){
						$.prettyPhoto.changePage('previous');
						return false;
					});
			};
			
			(setCount > 1) ? $('.pp_nav').show() : $('.pp_nav').hide(); // Hide the bottom nav if it's not a set.
		};
	
		/**
		* Resize the item dimensions if it's bigger than the viewport
		* @param width {integer} Width of the item to be opened
		* @param height {integer} Height of the item to be opened
		* @return An array containin the "fitted" dimensions
		*/
		function _fitToViewport(width,height){
			resized = false;

			_getDimensions(width,height);
			
			// Define them in case there's no resize needed
			imageWidth = width, imageHeight = height;

			if( ((pp_containerWidth > windowWidth) || (pp_containerHeight > windowHeight)) && doresize && settings.allow_resize && !percentBased) {
				resized = true, fitting = false;
			
				while (!fitting){
					if((pp_containerWidth > windowWidth)){
						imageWidth = (windowWidth - 200);
						imageHeight = (height/width) * imageWidth;
					}else if((pp_containerHeight > windowHeight)){
						imageHeight = (windowHeight - 200);
						imageWidth = (width/height) * imageHeight;
					}else{
						fitting = true;
					};

					pp_containerHeight = imageHeight, pp_containerWidth = imageWidth;
				};
			
				_getDimensions(imageWidth,imageHeight);
			};

			return {
				width:Math.floor(imageWidth),
				height:Math.floor(imageHeight),
				containerHeight:Math.floor(pp_containerHeight),
				containerWidth:Math.floor(pp_containerWidth) + 40, // 40 behind the side padding
				contentHeight:Math.floor(pp_contentHeight),
				contentWidth:Math.floor(pp_contentWidth),
				resized:resized
			};
		};
		
		/**
		* Get the containers dimensions according to the item size
		* @param width {integer} Width of the item to be opened
		* @param height {integer} Height of the item to be opened
		*/
		function _getDimensions(width,height){
			width = parseFloat(width);
			height = parseFloat(height);
			
			// Get the details height, to do so, I need to clone it since it's invisible
			$pp_details = $pp_pic_holder.find('.pp_details');
			$pp_details.width(width);
			detailsHeight = parseFloat($pp_details.css('marginTop')) + parseFloat($pp_details.css('marginBottom'));
			$pp_details = $pp_details.clone().appendTo($('body')).css({
				'position':'absolute',
				'top':-10000
			});
			detailsHeight += $pp_details.height();
			detailsHeight = (detailsHeight <= 34) ? 36 : detailsHeight; // Min-height for the details
			if($.browser.msie && $.browser.version==7) detailsHeight+=8;
			$pp_details.remove();
			
			// Get the container size, to resize the holder to the right dimensions
			pp_contentHeight = height + detailsHeight;
			pp_contentWidth = width;
			pp_containerHeight = pp_contentHeight + $ppt.height() + $pp_pic_holder.find('.pp_top').height() + $pp_pic_holder.find('.pp_bottom').height();
			pp_containerWidth = width;
		}
	
		function _getFileType(itemSrc){
			if (itemSrc.match(/youtube\.com\/watch/i)) {
				return 'youtube';
			}else if (itemSrc.match(/vimeo\.com/i)) {
				return 'vimeo';
			}else if(itemSrc.indexOf('.mov') != -1){ 
				return 'quicktime';
			}else if(itemSrc.indexOf('.swf') != -1){
				return 'flash';
			}else if(itemSrc.indexOf('iframe') != -1){
				return 'iframe';
			}else if(itemSrc.indexOf('custom') != -1){
				return 'custom';
			}else if(itemSrc.substr(0,1) == '#'){
				return 'inline';
			}else{
				return 'image';
			};
		};
	
		function _center_overlay(){
			if(doresize && typeof $pp_pic_holder != 'undefined') {
				scroll_pos = _get_scroll();
				
				titleHeight = $ppt.height(), contentHeight = $pp_pic_holder.height(), contentwidth = $pp_pic_holder.width();
				
				projectedTop = (windowHeight/2) + scroll_pos['scrollTop'] - (contentHeight/2);
				
				$pp_pic_holder.css({
					'top': projectedTop,
					'left': (windowWidth/2) + scroll_pos['scrollLeft'] - (contentwidth/2)
				});
			};
		};
	
		function _get_scroll(){
			if (self.pageYOffset) {
				return {scrollTop:self.pageYOffset,scrollLeft:self.pageXOffset};
			} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
				return {scrollTop:document.documentElement.scrollTop,scrollLeft:document.documentElement.scrollLeft};
			} else if (document.body) {// all other Explorers
				return {scrollTop:document.body.scrollTop,scrollLeft:document.body.scrollLeft};
			};
		};
	
		function _resize_overlay() {
			windowHeight = $(window).height(), windowWidth = $(window).width();
			
			if(typeof $pp_overlay != "undefined") $pp_overlay.height($(document).height());
		};
	
		function _insert_gallery(){
			if(isSet && settings.overlay_gallery && _getFileType(pp_images[set_position])=="image") {
				itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
				navWidth = (settings.theme == "facebook") ? 58 : 38; // Define the arrow width depending on the theme
				
				itemsPerPage = Math.floor((correctSizes['containerWidth'] - 100 - navWidth) / itemWidth);
				itemsPerPage = (itemsPerPage < pp_images.length) ? itemsPerPage : pp_images.length;
				totalPage = Math.ceil(pp_images.length / itemsPerPage) - 1;

				// Hide the nav in the case there's no need for links
				if(totalPage == 0){
					navWidth = 0; // No nav means no width!
					$pp_pic_holder.find('.pp_gallery .pp_arrow_next,.pp_gallery .pp_arrow_previous').hide();
				}else{
					$pp_pic_holder.find('.pp_gallery .pp_arrow_next,.pp_gallery .pp_arrow_previous').show();
				};

				galleryWidth = itemsPerPage * itemWidth + navWidth;
				
				// Set the proper width to the gallery items
				$pp_pic_holder.find('.pp_gallery')
					.width(galleryWidth)
					.css('margin-left',-(galleryWidth/2));
					
				$pp_pic_holder
					.find('.pp_gallery ul')
					.width(itemsPerPage * itemWidth)
					.find('li.selected')
					.removeClass('selected');
				
				goToPage = (Math.floor(set_position/itemsPerPage) <= totalPage) ? Math.floor(set_position/itemsPerPage) : totalPage;
				
				
				if(itemsPerPage) {
					$pp_pic_holder.find('.pp_gallery').hide().show().removeClass('disabled');
				}else{
					$pp_pic_holder.find('.pp_gallery').hide().addClass('disabled');
				}
				
				$.prettyPhoto.changeGalleryPage(goToPage);
				
				$pp_pic_holder
					.find('.pp_gallery ul li:eq('+set_position+')')
					.addClass('selected');
			}else{
				$pp_pic_holder.find('.pp_content').unbind('mouseenter mouseleave');
				$pp_pic_holder.find('.pp_gallery').hide();
			}
		}
	
		function _buildOverlay(caller){
			// Find out if the picture is part of a set
			theRel = $(caller).attr('rel');
			galleryRegExp = /\[(?:.*)\]/;
			isSet = (galleryRegExp.exec(theRel)) ? true : false;
			
			// Put the SRCs, TITLEs, ALTs into an array.
			pp_images = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr('rel').indexOf(theRel) != -1) return $(n).attr('href'); }) : $.makeArray($(caller).attr('href'));
			pp_titles = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr('rel').indexOf(theRel) != -1) return ($(n).find('img').attr('alt')) ? $(n).find('img').attr('alt') : ""; }) : $.makeArray($(caller).find('img').attr('alt'));
			pp_descriptions = (isSet) ? jQuery.map(matchedObjects, function(n, i){ if($(n).attr('rel').indexOf(theRel) != -1) return ($(n).attr('title')) ? $(n).attr('title') : ""; }) : $.makeArray($(caller).attr('title'));
			
			$('body').append(settings.markup); // Inject the markup
			
			$pp_pic_holder = $('.pp_pic_holder') , $ppt = $('.ppt'), $pp_overlay = $('div.pp_overlay'); // Set my global selectors
			
			// Inject the inline gallery!
			if(isSet && settings.overlay_gallery) {
				currentGalleryPage = 0;
				toInject = "";
				for (var i=0; i < pp_images.length; i++) {
					var regex = new RegExp("(.*?)\.(jpg|jpeg|png|gif)$");
					var results = regex.exec( pp_images[i] );
					if(!results){
						classname = 'default';
					}else{
						classname = '';
					}
					toInject += "<li class='"+classname+"'><a href='#'><img src='" + pp_images[i] + "' width='50' alt='' /></a></li>";
				};
				
				toInject = settings.gallery_markup.replace(/{gallery}/g,toInject);
				
				$pp_pic_holder.find('#pp_full_res').after(toInject);
				
				$pp_pic_holder.find('.pp_gallery .pp_arrow_next').click(function(){
					$.prettyPhoto.changeGalleryPage('next');
					$.prettyPhoto.stopSlideshow();
					return false;
				});
				
				$pp_pic_holder.find('.pp_gallery .pp_arrow_previous').click(function(){
					$.prettyPhoto.changeGalleryPage('previous');
					$.prettyPhoto.stopSlideshow();
					return false;
				});
				
				$pp_pic_holder.find('.pp_content').hover(
					function(){
						$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeIn();
					},
					function(){
						$pp_pic_holder.find('.pp_gallery:not(.disabled)').fadeOut();
					});

				itemWidth = 52+5; // 52 beign the thumb width, 5 being the right margin.
				$pp_pic_holder.find('.pp_gallery ul li').each(function(i){
					$(this).css({
						'position':'absolute',
						'left': i * itemWidth
					});

					$(this).find('a').unbind('click').click(function(){
						$.prettyPhoto.changePage(i);
						$.prettyPhoto.stopSlideshow();
						return false;
					});
				});
			};
			
			
			// Inject the play/pause if it's a slideshow
			if(settings.slideshow){
				$pp_pic_holder.find('.pp_nav').prepend('<a href="#" class="pp_play">Play</a>')
				$pp_pic_holder.find('.pp_nav .pp_play').click(function(){
					$.prettyPhoto.startSlideshow();
					return false;
				});
			}
			
			$pp_pic_holder.attr('class','pp_pic_holder ' + settings.theme); // Set the proper theme
			
			$pp_overlay
				.css({
					'opacity':0,
					'height':$(document).height(),
					'width':$(document).width()
					})
				.bind('click',function(){
					if(!settings.modal) $.prettyPhoto.close();
				});

			$('a.pp_close').bind('click',function(){ $.prettyPhoto.close(); return false; });

			$('a.pp_expand').bind('click',function(e){
				// Expand the image
				if($(this).hasClass('pp_expand')){
					$(this).removeClass('pp_expand').addClass('pp_contract');
					doresize = false;
				}else{
					$(this).removeClass('pp_contract').addClass('pp_expand');
					doresize = true;
				};
			
				_hideContent(function(){ $.prettyPhoto.open(); });
		
				return false;
			});
		
			$pp_pic_holder.find('.pp_previous, .pp_nav .pp_arrow_previous').bind('click',function(){
				$.prettyPhoto.changePage('previous');
				$.prettyPhoto.stopSlideshow();
				return false;
			});
		
			$pp_pic_holder.find('.pp_next, .pp_nav .pp_arrow_next').bind('click',function(){
				$.prettyPhoto.changePage('next');
				$.prettyPhoto.stopSlideshow();
				return false;
			});
			
			_center_overlay(); // Center it
		};
		
		return this.unbind('click').click($.prettyPhoto.initialize); // Return the jQuery object for chaining. The unbind method is used to avoid click conflict when the plugin is called more than once
	};
	
	function grab_param(name,url){
	  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	  var regexS = "[\\?&]"+name+"=([^&#]*)";
	  var regex = new RegExp( regexS );
	  var results = regex.exec( url );
	  return ( results == null ) ? "" : results[1];
	}
	
})(jQuery);
