(function(){if(!Array.prototype.map)Array.prototype.map=function(h,f){var g=this.length>>>0,c=new Array(g);if(typeof h!=="function")throw new TypeError;for(var a=0;a<g;a++)if(a in this)c[a]=h.call(f,this[a],a,this);return c};if(!Array.prototype.forEach)Array.prototype.forEach=function(h,f){var g=this.length>>>0;if(typeof h!=="function")throw new TypeError;for(var c=0;c<g;c++)c in this&&h.call(f,this[c],c,this)};if(!Array.prototype.filter)Array.prototype.filter=function(h,f){var g=this.length>>>0,
c=[],a;if(typeof h!=="function")throw new TypeError;for(var b=0;b<g;b++)if(b in this){a=this[b];h.call(f,a,b,this)&&c.push(a)}return c}})();window.org=window.org||{};window.org.upcomingjs=window.org.upcomingjs||{};
org.upcomingjs.Tmpl=function(){var h={};return{render:function(f,g){f=!/\W/.test(f)?(h[f]=h[f]||this.render(document.getElementById(f).innerHTML)):new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push('"+f.replace(/[\r\t\n]/g," ").split("<%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return g?f(g):f}}}();window.org=window.org||{};window.org.upcomingjs=window.org.upcomingjs||{};org.upcomingjs.Util=function(){return{extend:function(h,f){for(var g in f)h[g]=f[g]}}}();window.org=window.org||{};window.org.upcomingjs=window.org.upcomingjs||{};
org.upcomingjs.Dates=function(){var h=/d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloOSZ]|"[^"]*"|'[^']*'/g,f=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,g=/[^-+\dA-Z]/g,c=function(a,b){a=String(a);for(b=b||2;a.length<b;)a="0"+a;return a};return{format:function(a,b,d){if(arguments.length==1&&Object.prototype.toString.call(a)=="[object String]"&&!/\d/.test(a)){b=a;a=undefined}a=a?new Date(a):new Date;if(isNaN(a))throw SyntaxError("invalid date");
b=String(this.masks[b]||b||this.masks["default"]);if(b.slice(0,4)=="UTC:"){b=b.slice(4);d=true}var e=d?"getUTC":"get",i=a[e+"Date"](),l=a[e+"Day"](),j=a[e+"Month"](),p=a[e+"FullYear"](),k=a[e+"Hours"](),o=a[e+"Minutes"](),q=a[e+"Seconds"](),n=a[e+"Milliseconds"](),m=d?0:a.getTimezoneOffset(),s={d:i,dd:c(i),ddd:this.i18n.dayNames[l],dddd:this.i18n.dayNames[l+7],m:j+1,mm:c(j+1),mmm:this.i18n.monthNames[j],mmmm:this.i18n.monthNames[j+12],yy:String(p).slice(2),yyyy:p,h:k%12||12,hh:c(k%12||12),H:k,HH:c(k),
M:o,MM:c(o),s:q,ss:c(q),l:c(n,3),L:c(n>99?Math.round(n/10):n),t:k<12?"a":"p",tt:k<12?"am":"pm",T:k<12?"A":"P",TT:k<12?"AM":"PM",Z:d?"UTC":(String(a).match(f)||[""]).pop().replace(g,""),o:(m>0?"-":"+")+c(Math.floor(Math.abs(m)/60)*100+Math.abs(m)%60,4),O:(m>0?"-":"+")+c(Math.floor(Math.abs(m)/60),2)+":"+c(Math.abs(m)%60,2),S:["th","st","nd","rd"][i%10>3?0:(i%100-i%10!=10)*i%10]};return b.replace(h,function(r){return r in s?s[r]:r.slice(1,r.length-1)})},masks:{"default":"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",
mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:ss",isoDateTimeO:"yyyy-mm-dd'T'HH:MM:ssO",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'"},i18n:{dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep",
"Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"]},zeroTimestamp:function(a){a.setHours(0);a.setMinutes(0);a.setSeconds(0);a.setMilliseconds(0);return a},isoString:function(a){a=a.match(new RegExp("([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})))?)?)?)?"));var b=0,d=new Date(a[1],0,1),e=new Date;a[3]&&d.setMonth(a[3]-1);a[5]&&d.setDate(a[5]);a[7]&&d.setHours(a[7]);
a[8]&&d.setMinutes(a[8]);a[10]&&d.setSeconds(a[10]);a[12]&&d.setMilliseconds(Number("0."+a[12])*1E3);if(a[14]){b=Number(a[16])*60+Number(a[17]);b*=a[15]=="-"?1:-1}b-=d.getTimezoneOffset();time=Number(d)+b*60*1E3;e.setTime(Number(time));return e}}}();window.org=window.org||{};window.org.upcomingjs=window.org.upcomingjs||{};
org.upcomingjs.Events=function(){function h(b,d){this.date=b;this.events=d||[]}var f=org.upcomingjs.Tmpl,g=org.upcomingjs.Util,c=org.upcomingjs.Dates,a={period:7,element:"upcoming",error:function(b){window.alert("Upcoming.js has encountered an error:\n\n"+(b.cause?b.cause.statusText:b.message))},tmpl:'                 <table class="vcalendar">                     <thead>                         <tr>                             <th id="event-date">Date</th>                             <th id="event-info">Info</th>                         </tr>                     </thead>                     <tbody>                         <% if (!days.length) { %>                         <tr>                             <td colspan="2">No upcoming events found.</td>                         </tr>                         <% } else { %>                         <% var d = org.upcomingjs.Dates; %>                         <% for (var i = 0; i < days.length; i++) { %>                         <% var day = days[i]; %>                         <tr>                             <th colspan="2">                                 <%=d.format(day.date, "dddd, mmmm dS")%>                             </th>                         </tr>                         <% for (var j = 0; j < day.events.length; j++) { %>                         <% var event = day.events[j]; %>                         <% var start = d.format(event.dtstart, (event.dtstart.getMinutes() === 0 ? "htt" : "h:MMtt")); %>                         <% var end = d.format(event.dtend, (event.dtend.getMinutes() === 0 ? "htt" : "h:MMtt")); %>                         <tr class="vevent">                             <td headers="event-date">                                 <abbr title="<%=d.format(event.dtstart, d.masks.isoDateTimeO)%>" class="dtstart"><%=start%></abbr>&#8211;<abbr title="<%=d.format(event.dtend, d.masks.isoDateTimeO)%>" class="dtend"><%=end%></abbr>                             </td>                             <td headers="event-info">                                 <a class="url summary" href="<%=event.url%>"><%=event.summary%></a>                                 <% if (event.description) { %>                                 <div class="description"><%=event.description%></div>                                 <% } %>                                 <% if (event.location) { %>                                 <div class="location"><%=event.location%></div>                                 <% } %>                             </td>                         </tr>                         <% } %>                         <% } %>                         <% } %>                     </tbody>                 </table>             ',img:"data:image/gif,GIF89a%10%00%10%00%F3%0F%00%DD%DD%DD%BB%BB%BB%99%99%99wwwUUU333%11%11%11%00%00%00%EE%EE%EE%AA%AA%AA%88%88%88fffDDD%22%22%22%00%11%00%00%00%00!%FF%0BNETSCAPE2.0%03%01%00%00%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%10%00%10%00%00%04q%F0%C9%87%E8%22u%EA%07%1A%40%C7%01P%9B%04%1C%0D%E2%88%C8%A8%01%A3r(%2B%9CI%083%83%0EA%7C%A6%0C%40%E7%08%B8p%40%1C%22Q8%E24%0A%86OP%A2%20%AEQ%06%83Z%BA%5E%AD%81%C1-%A8A(%0C%0Cg%CB8%194%04f%05%0C%90%A0%B09%23%40!%90%10%00%E4O%13%08%04%03%0F%02T%00p%25%00%03%23%87%12%01c%25%01%01U%11%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%0F%00%10%00%00%04%5D%F0%C9%F9%C6%92%88N%26%9B%04F%A2I%05%D28%40s%04%A3%244%86pp%13%11%23Fa%1DG%96I%84C%010%09%10%5B%B4%D6%23%B1%18%0CX%CA%87%80%B0X%40%A3%1F%C1%E87I0%08%5B%C0O%C1H%20%04%09%80%FA(%D6%2C%00%01%F3U3%D0%C6%25s%8C%20s%7F%1C%95j%23%11%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%10%00%0F%00%00%04Z%F0%C9%F9%84%A2X.%C9%1ABE%269%04%D2!%84%88TG%D2%25%13%10HC%91%80%8C%A2%14%07%A0%1C%3D%8D!%15%13%00%0F%B3I%60%B1R%1E.%92%80N%00%C8%7C%AE%89%81V%C4%7D%C0%BA%94%85%A2%D9%15%0C%02%88%00%FA%AA%92(%00p%04%80%8C%11%CC%E0%0F9%F7%8B%CFS%22%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%10%00%10%00%00%04%5D%F0%C9)%05%BDr%20D%D8%26%01%F6%14Z%87%2C%182%19A%17%1C(%02H%CA%02%20%CC%20%08%CC%81%08%07%83%EA1%20%DD%26%81%86%88x%01%C0n%88%80%20%91%10-%0C%06%07h'%98%5D%16%87p%81%12j%02%CEC%80%C2%B2Dve%DE%E50%BA%19%B6%03%B3M%5B%E2%D5%EF'~%17%11%00!%F9%04%05%07%00%08%00%2C%00%00%00%00%10%00%0E%00%00%04F%10%C9%89%C6%A0X%12y%0E%CF%DC%D6!%06(%0DG%D0%09GI%11F%80%1C%85%E5U%A3vlXw%08%18%1E%A60%01%08%8E%A0%82%2Ff%B9d%0C%BE%9B%04%80Q%111%C0%AA%8F%8A%E0%9A%7C%19%2F%25%20%9C%9A%26%11%00!%F9%04%05%07%00%0E%00%2C%00%00%00%00%10%00%10%00%00%04l%D0%C9%E9B%A0%D8%A1%84%90%1A%DD%00d%C8%C0)%8A%D7%8C%19%B0%00(%60(X%90%00%9E%60%0D%05%124%0C%89O%11%40L%10%00%C2%A1%C0%92%00%12%18%04C%D0%E9%00%AEF%8C%80%40%60(%AE%D8%8C%A0%D10%2C(%D9%09%A0%20%88%5E)%CF%C3!(%C4U%3B%86C%F2%60Hg%12%07%04%12PQ%14%0D%07%17%24%18%00%07m%19%8F~%11%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%10%00%10%00%00%04_%F0%C9%F9%00%A0X%06%84%84%E0B%26%09%00%92%7C%02%23J%8AI2%09fqI%60%09%8B%C4%E4%12%60g%0B%03%01%83%B8%60%16%09%8E%92%23J%2C%16%84%96%B2%C9(%14%06%AB%09!%89%C8j%0E%87EW4X4%0E%88%C5%A1%B02%1C%14%07%ACO%84p%1B%8Dt%C7%C1%E2%88%AD%10%04%05c%14%11%00!%F9%04%05%07%00%0E%00%2C%01%00%01%00%0F%00%0F%00%00%04Z%D0I%80P%085%C9-C%C7%C1%C2q%60%00%2C%9E%83%A8%1B%E0%02%C9%80%00%84R%CD%EB8%14%C3%98s%8A%D4h%18%18%185%C3M%88PKJ%10%A8%E1%0C%F0%044%0E%BD%D1%E1%A0P0%1A%08%C5%81%01%C46%1A%02%EE%10%B0%05%18%0C%88B2q%C0%BCg%0DakCHF%00%00!%F9%04%05%07%00%0F%00%2C%00%00%00%00%10%00%10%00%00%04%60%F0%C9%F9%10%A2XZ%04%80%0DW%E6q%1E%20%84%18G%22%0A%90mp%90H%8A%90%A5%C2b%DF%98%E0%F2%18%80b%08%9C%00%06%C8%99%24%D0%08%60Z%14%00%E3p%D8M%18%06%85%C6q(%00%0E%0DAb%C1%40%08%1A%0B%89%C0I%2B%14%12U%C9%8F%D2%40%B8%11%04%07%CF%E1i%14%24%0C%3C!H7%11%00!%F9%04%05%07%00%0E%00%2C%00%00%01%00%10%00%0F%00%00%04%5C%D0%C9%E9%90E%80jie%D8%DA%F5m%C0u%01%99%23%8C%E0%94(%01%A2%A5%14%EB%2CF%BE%80I%1F%14%87%20%03%24%10%C00%00%81%81%26%11%B4%1C%B1%09bQpJ%1A%87%05%A2%C1%E8)%08%88%00a%20I%D0%04%04F%C0%90%A8%80%0A%884bP%00%05%1A%12%C6%F0%C6%DC(%14%20%11%00!%F9%04%05%07%00%0F%00%2C%00%00%01%00%10%00%0F%00%00%04%5D%F0%C9I%1F%AAx%22P%01%C7%C0E%1D%87%82%9C%A8%84%04_%40%1E%DF%04%B0%D5p%24%9D(5%7C%F6%04%40%00%C1a0%0C2%C0%C4%07%91%60%60p%15%02)%26Q%2C%A0%8F%C2a%80%60%10%80%82%85d%20%90%04%24%82%DB%60%01(%F8%1E%06%06b%8D%108A%F7%05%E1t%7C%3F%04e%18%11%00!%F9%04%05%07%00%0F%00%2C%00%00%01%00%0F%00%0F%00%00%04%5E%F0%C9%60%80%BC%F8%86%D3%B2%97%C4%91%7CR%F7%00%C7%E1%01%C8%D9%A4%C2x!%2C%268A%86%EC%88R0%0C%85%87%06%00%0C%1AH%A1%AE%C8%DA%05%08%9E%DClp0x%12%8A%C0.%A4%40%2C%06%C5%84%80%16%3BM%0C%01%05xay%B4%24%88%C2%A27%40%24%EA%9E%85D%BD%13%90%24%092%18%11%00%3B"};
return{init:function(b,d){g.extend(a,d);a.element=document.getElementById(a.element)||a.element;a.element.nodeType||a.error({message:'Unable to find the element "'+a.element+'".'});if(a.element&&a.img)a.element.innerHTML='<img width="16" height="16" alt="Loading..." src="'+a.img+'"/>';var e=new Date,i=(new Date).setDate(e.getDate()+a.period);d=document.createElement("script");b=this.buildURL(b,{alt:"json-in-script",start_min:c.format(e,c.masks.isoDateTimeO),start_max:c.format(i,c.masks.isoDateTimeO),
callback:"window.org.upcomingjs.Events.parseFeed",orderby:"starttime",sortorder:"ascending",singleevents:true});d.src=b;d.setAttribute("async","true");document.documentElement.firstChild.appendChild(d)},buildURL:function(b,d){b=[b+"?"];for(var e in d)b.push("&"+e.replace(/_/g,"-")+"="+d[e]);return b.join("")},parseFeed:function(b){var d={days:[]},e=[];e=[];var i;e=b.feed.entry.filter(function(l){return l.gd$when.length&&l.gd$when[0]});if(e.length){e=e.map(this.entry2Event);e.sort(function(l,j){return l.dtstart.getTime()-
j.dtstart.getTime()});i=new h(c.zeroTimestamp(new Date(e[0].dtstart)));d.days.push(i);e.forEach(function(l){var j=c.zeroTimestamp(new Date(l.dtstart));if(j.getTime()!==i.date.getTime()){i=new h(j);d.days.push(i)}i.events.push(l)})}a.element.innerHTML=f.render(a.tmpl,d)},entry2Event:function(b){function d(o){for(var q=[],n=0;n<o.length;n++){var m=o[n];q.push({name:m.name.$t,email:m.email?m.email.$t:""})}return q}function e(o){return o.replace(/http:\/\/schemas\.google\.com\/g\/2005\#event\./,"")}for(var i=
b.gd$when[0],l=b.gd$where[0],j=b.link,p,k=0;k<j.length;k++)if(j[k].type=="text/html"&&j[k].rel=="alternate")p=j[k].href;return{attendee:[],category:[],clazz:null,contact:null,description:b.content.$t,dtend:c.isoString(i.endTime),dtstart:c.isoString(i.startTime),duration:null,geo:{latitude:null,longitude:null},last_modified:c.isoString(b.updated.$t),location:l.valueString,organizer:d(b.author),rdate:null,rrule:null,status:e(b.gd$eventStatus.value),summary:b.title.$t,url:p}}}}();
window.jQuery&&function(h){h.fn.upcoming=function(f,g){g=g||{};g.element=this[0];org.upcomingjs.Events.init(f,g)}}(jQuery);
