/*
* jQuery Watermark plugin
* Version 1.2 (7-DEC-2010)
* @requires jQuery v1.3 or later
*
* Examples at: http://mario.ec/static/jq-watermark/
* Copyright (c) 2010 Mario Estrada
* Licensed under the MIT license:
* http://www.opensource.org/licenses/mit-license.php
*
*/
(function($){var old_ie=$.browser.msie&&$.browser.version<8;var hard_left=4;$.watermarker=function(){};$.extend($.watermarker,{defaults:{color:"#999",left:0,top:0,fallback:false,animDuration:0,minOpacity:0},setDefaults:function(settings){$.extend($.watermarker.defaults,settings)},checkVal:function(val,label,event_blur){if(val.length==0){$(label).show()}else{$(label).hide()}return val.length>0},html5_support:function(){var i=document.createElement("input");return"placeholder" in i}});$.fn.watermark=function(text,options){var options,elems;options=$.extend($.watermarker.defaults,options);elems=this.filter("textarea, input:not(:checkbox,:radio,:file,:submit,:reset)");if(options.fallback&&$.watermarker.html5_support()){return}elems.each(function(){var $elem,attr_name,label_text,watermark_container,watermark_label;var e_margin_left,e_margin_top,pos,e_top=0,height,line_height;$elem=$(this);if($elem.attr("data-jq-watermark")=="processed"){return}attr_name=$elem.attr("placeholder")!=undefined&&$elem.attr("placeholder")!=""?"placeholder":"title";label_text=text===undefined||text===""?$(this).attr(attr_name):text;watermark_container=$('<span class="watermark_container"></span>');watermark_label=$('<span class="watermark">'+label_text+"</span>");if(attr_name=="placeholder"){$elem.removeAttr("placeholder")}watermark_container.css({display:"inline-block",position:"relative"});if(old_ie){watermark_container.css({zoom:1,display:"inline"})}$elem.wrap(watermark_container).attr("data-jq-watermark","processed");if(this.nodeName.toLowerCase()=="textarea"){e_height=$elem.css("line-height");e_height=e_height==="normal"?parseInt($elem.css("font-size")):e_height;e_top=($elem.css("padding-top")!="auto"?parseInt($elem.css("padding-top")):0)}else{e_height=$elem.outerHeight();if(e_height<=0){e_height=($elem.css("padding-top")!="auto"?parseInt($elem.css("padding-top")):0);e_height+=($elem.css("padding-bottom")!="auto"?parseInt($elem.css("padding-bottom")):0);e_height+=($elem.css("height")!="auto"?parseInt($elem.css("height")):0)}}e_top+=($elem.css("margin-top")!="auto"?parseInt($elem.css("margin-top")):0);e_margin_left=$elem.css("margin-left")!="auto"?parseInt($elem.css("margin-left")):0;e_margin_left+=$elem.css("padding-left")!="auto"?parseInt($elem.css("padding-left")):0;watermark_label.css({position:"absolute",display:"block",fontFamily:$elem.css("font-family"),color:options.color,left:hard_left+options.left+e_margin_left,top:options.top+e_top,height:e_height,lineHeight:e_height+"px",textAlign:"left",pointerEvents:"none"}).data("jq_watermark_element",$elem);$.watermarker.checkVal($elem.val(),watermark_label);watermark_label.click(function(){$($(this).data("jq_watermark_element")).trigger("focus")});$elem.before(watermark_label).bind("focus.jq_watermark",function(){$(watermark_label).hide()}).bind("blur.jq_watermark change.jq_watermark",function(){if(!$.watermarker.checkVal($(this).val(),watermark_label)){$(watermark_label).show()}})});return this};$(document).ready(function(){$(".jq_watermark").watermark()})})(jQuery);
/*
* jQuery blockUI plugin
* Version 2.37 (29-JAN-2011)
* @requires jQuery v1.2.3 or later
*
* Examples at: http://malsup.com/jquery/block/
* Copyright (c) 2007-2010 M. Alsup
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* Thanks to Amir-Hossein Sobhi for some excellent contributions!
*/
(function($){if(/1\.(0|1|2)\.(0|1|2)/.test($.fn.jquery)||/^1.1/.test($.fn.jquery)){alert("blockUI requires jQuery v1.2.3 or later!  You are using v"+$.fn.jquery);return}$.fn._fadeIn=$.fn.fadeIn;var noOp=function(){};var mode=document.documentMode||0;var setExpr=$.browser.msie&&(($.browser.version<8&&!mode)||mode<8);var ie6=$.browser.msie&&/MSIE 6.0/.test(navigator.userAgent)&&!mode;$.blockUI=function(opts){install(window,opts)};$.unblockUI=function(opts){remove(window,opts)};$.growlUI=function(title,message,timeout,onClose){var $m=$('<div class="growlUI"></div>');if(title){$m.append("<h1>"+title+"</h1>")}if(message){$m.append("<h2>"+message+"</h2>")}if(timeout==undefined){timeout=3000}$.blockUI({message:$m,fadeIn:700,fadeOut:1000,centerY:false,timeout:timeout,showOverlay:false,onUnblock:onClose,css:$.blockUI.defaults.growlCSS})};$.fn.block=function(opts){return this.unblock({fadeOut:0}).each(function(){if($.css(this,"position")=="static"){this.style.position="relative"}if($.browser.msie){this.style.zoom=1}install(this,opts)})};$.fn.unblock=function(opts){return this.each(function(){remove(this,opts)})};$.blockUI.version=2.37;$.blockUI.defaults={message:"<h1>Please wait...</h1>",title:null,draggable:true,theme:false,css:{padding:0,margin:0,width:"30%",top:"40%",left:"35%",textAlign:"center",color:"#000",border:"3px solid #aaa",backgroundColor:"#fff",cursor:"wait"},themedCSS:{width:"30%",top:"40%",left:"35%"},overlayCSS:{backgroundColor:"#000",opacity:0.6,cursor:"wait"},growlCSS:{width:"350px",top:"10px",left:"",right:"10px",border:"none",padding:"5px",opacity:0.6,cursor:"default",color:"#fff",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px","border-radius":"10px"},iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank",forceIframe:false,baseZ:1000,centerX:true,centerY:true,allowBodyStretch:true,bindEvents:true,constrainTabKey:true,fadeIn:200,fadeOut:400,timeout:0,showOverlay:true,focusInput:true,applyPlatformOpacityRules:true,onBlock:null,onUnblock:null,quirksmodeOffsetHack:4,blockMsgClass:"blockMsg"};var pageBlock=null;var pageBlockEls=[];function install(el,opts){var full=(el==window);var msg=opts&&opts.message!==undefined?opts.message:undefined;opts=$.extend({},$.blockUI.defaults,opts||{});opts.overlayCSS=$.extend({},$.blockUI.defaults.overlayCSS,opts.overlayCSS||{});var css=$.extend({},$.blockUI.defaults.css,opts.css||{});var themedCSS=$.extend({},$.blockUI.defaults.themedCSS,opts.themedCSS||{});msg=msg===undefined?opts.message:msg;if(full&&pageBlock){remove(window,{fadeOut:0})}if(msg&&typeof msg!="string"&&(msg.parentNode||msg.jquery)){var node=msg.jquery?msg[0]:msg;var data={};$(el).data("blockUI.history",data);data.el=node;data.parent=node.parentNode;data.display=node.style.display;data.position=node.style.position;if(data.parent){data.parent.removeChild(node)}}var z=opts.baseZ;var lyr1=($.browser.msie||opts.forceIframe)?$('<iframe class="blockUI" style="z-index:'+(z++)+';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+opts.iframeSrc+'"></iframe>'):$('<div class="blockUI" style="display:none"></div>');var lyr2=$('<div class="blockUI blockOverlay" style="z-index:'+(z++)+';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');var lyr3,s;if(opts.theme&&full){s='<div class="blockUI '+opts.blockMsgClass+' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:fixed"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(opts.theme){s='<div class="blockUI '+opts.blockMsgClass+' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+z+';display:none;position:absolute"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(opts.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(full){s='<div class="blockUI '+opts.blockMsgClass+' blockPage" style="z-index:'+z+';display:none;position:fixed"></div>'}else{s='<div class="blockUI '+opts.blockMsgClass+' blockElement" style="z-index:'+z+';display:none;position:absolute"></div>'}}}lyr3=$(s);if(msg){if(opts.theme){lyr3.css(themedCSS);lyr3.addClass("ui-widget-content")}else{lyr3.css(css)}}if(!opts.applyPlatformOpacityRules||!($.browser.mozilla&&/Linux/.test(navigator.platform))){lyr2.css(opts.overlayCSS)}lyr2.css("position",full?"fixed":"absolute");if($.browser.msie||opts.forceIframe){lyr1.css("opacity",0)}var layers=[lyr1,lyr2,lyr3],$par=full?$("body"):$(el);$.each(layers,function(){this.appendTo($par)});if(opts.theme&&opts.draggable&&$.fn.draggable){lyr3.draggable({handle:".ui-dialog-titlebar",cancel:"li"})}var expr=setExpr&&(!$.boxModel||$("object,embed",full?null:el).length>0);if(ie6||expr){if(full&&opts.allowBodyStretch&&$.boxModel){$("html,body").css("height","100%")}if((ie6||!$.boxModel)&&!full){var t=sz(el,"borderTopWidth"),l=sz(el,"borderLeftWidth");var fixT=t?"(0 - "+t+")":0;var fixL=l?"(0 - "+l+")":0}$.each([lyr1,lyr2,lyr3],function(i,o){var s=o[0].style;s.position="absolute";if(i<2){full?s.setExpression("height","Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:"+opts.quirksmodeOffsetHack+') + "px"'):s.setExpression("height",'this.parentNode.offsetHeight + "px"');full?s.setExpression("width",'jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"'):s.setExpression("width",'this.parentNode.offsetWidth + "px"');if(fixL){s.setExpression("left",fixL)}if(fixT){s.setExpression("top",fixT)}}else{if(opts.centerY){if(full){s.setExpression("top",'(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"')}s.marginTop=0}else{if(!opts.centerY&&full){var top=(opts.css&&opts.css.top)?parseInt(opts.css.top):0;var expression="((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "+top+') + "px"';s.setExpression("top",expression)}}}})}if(msg){if(opts.theme){lyr3.find(".ui-widget-content").append(msg)}else{lyr3.append(msg)}if(msg.jquery||msg.nodeType){$(msg).show()}}if(($.browser.msie||opts.forceIframe)&&opts.showOverlay){lyr1.show()}if(opts.fadeIn){var cb=opts.onBlock?opts.onBlock:noOp;var cb1=(opts.showOverlay&&!msg)?cb:noOp;var cb2=msg?cb:noOp;if(opts.showOverlay){lyr2._fadeIn(opts.fadeIn,cb1)}if(msg){lyr3._fadeIn(opts.fadeIn,cb2)}}else{if(opts.showOverlay){lyr2.show()}if(msg){lyr3.show()}if(opts.onBlock){opts.onBlock()}}bind(1,el,opts);if(full){pageBlock=lyr3[0];pageBlockEls=$(":input:enabled:visible",pageBlock);if(opts.focusInput){setTimeout(focus,20)}}else{center(lyr3[0],opts.centerX,opts.centerY)}if(opts.timeout){var to=setTimeout(function(){full?$.unblockUI(opts):$(el).unblock(opts)},opts.timeout);$(el).data("blockUI.timeout",to)}}function remove(el,opts){var full=(el==window);var $el=$(el);var data=$el.data("blockUI.history");var to=$el.data("blockUI.timeout");if(to){clearTimeout(to);$el.removeData("blockUI.timeout")}opts=$.extend({},$.blockUI.defaults,opts||{});bind(0,el,opts);var els;if(full){els=$("body").children().filter(".blockUI").add("body > .blockUI")}else{els=$(".blockUI",el)}if(full){pageBlock=pageBlockEls=null}if(opts.fadeOut){els.fadeOut(opts.fadeOut);setTimeout(function(){reset(els,data,opts,el)},opts.fadeOut)}else{reset(els,data,opts,el)}}function reset(els,data,opts,el){els.each(function(i,o){if(this.parentNode){this.parentNode.removeChild(this)}});if(data&&data.el){data.el.style.display=data.display;data.el.style.position=data.position;if(data.parent){data.parent.appendChild(data.el)}$(el).removeData("blockUI.history")}if(typeof opts.onUnblock=="function"){opts.onUnblock(el,opts)}}function bind(b,el,opts){var full=el==window,$el=$(el);if(!b&&(full&&!pageBlock||!full&&!$el.data("blockUI.isBlocked"))){return}if(!full){$el.data("blockUI.isBlocked",b)}if(!opts.bindEvents||(b&&!opts.showOverlay)){return}var events="mousedown mouseup keydown keypress";b?$(document).bind(events,opts,handler):$(document).unbind(events,handler)}function handler(e){if(e.keyCode&&e.keyCode==9){if(pageBlock&&e.data.constrainTabKey){var els=pageBlockEls;var fwd=!e.shiftKey&&e.target===els[els.length-1];var back=e.shiftKey&&e.target===els[0];if(fwd||back){setTimeout(function(){focus(back)},10);return false}}}var opts=e.data;if($(e.target).parents("div."+opts.blockMsgClass).length>0){return true}return $(e.target).parents().children().filter("div.blockUI").length==0}function focus(back){if(!pageBlockEls){return}var e=pageBlockEls[back===true?pageBlockEls.length-1:0];if(e){e.focus()}}function center(el,x,y){var p=el.parentNode,s=el.style;var l=((p.offsetWidth-el.offsetWidth)/2)-sz(p,"borderLeftWidth");var t=((p.offsetHeight-el.offsetHeight)/2)-sz(p,"borderTopWidth");if(x){s.left=l>0?(l+"px"):"0"}if(y){s.top=t>0?(t+"px"):"0"}}function sz(el,p){return parseInt($.css(el,p))||0}})(jQuery);
/*
* 	Easy Slider - jQuery plugin
*	written by Alen Grakalic	
*	http://cssglobe.com/post/3783/jquery-plugin-easy-image-or-content-slider
*
*	Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
*	Dual licensed under the MIT (MIT-LICENSE.txt)
*	and GPL (GPL-LICENSE.txt) licenses.
*
*	Built for jQuery library
*	http://jquery.com
*
*/
(function($){$.fn.easySlider=function(options){var defaults={prevId:"linkPrev",nextId:"linkNext",orientation:"",speed:800};var options=$.extend(defaults,options);return this.each(function(){obj=$(this);var s=$("li",obj).length;var lim=s*190;var w=obj.width();var h=obj.height();var ts=s/3-1;var t=0;var vertical=(options.orientation=="vertical");$("ul",obj).css("width",s*w);if(!vertical){$("li",obj).css("float","left")}$(obj).append('<span id="'+options.prevId+'"><a href="javascript:void(0);"></a></span> <span id="'+options.nextId+'"><a href="javascript:void(0);"></a></span>');$("a","#"+options.prevId).hide();$("a","#"+options.nextId).hide();$("a","#"+options.nextId).click(function(){animate("next");if(t>ts){$(this).fadeOut()}$("a","#"+options.prevId).fadeIn()});$("a","#"+options.prevId).click(function(){animate("prev");if(t<=0){$(this).fadeOut()}$("a","#"+options.nextId).fadeIn()});function animate(dir){if(dir=="next"){if(t>=ts){t=Math.ceil(ts)}else{t=t+1}}else{t=(t<=0)?0:t-1}if(!vertical){p=(t*w*-1);$("ul",obj).animate({marginLeft:p},options.speed)}else{p=(t*h*-1);$("ul",obj).animate({marginTop:p},options.speed)}}if(ts>0){$("a","#"+options.nextId).fadeIn()}})}})(jQuery);
/*
* jQuery UI Stars v3.0.1
* http://plugins.jquery.com/project/Star_Rating_widget
*
* Copyright (c) 2010 Marek "Orkan" Zajac (orkans@gmail.com)
* Dual licensed under the MIT and GPL licenses.
* http://docs.jquery.com/License
*
* $Rev: 164 $
* $Date:: 2010-05-01 #$
* $Build: 35 (2010-05-01)
*
* Depends:
*	jquery.ui.core.js
*	jquery.ui.widget.js
*
*/
(function($){$.widget("ui.stars",{options:{inputType:"radio",split:0,disabled:false,cancelTitle:"Cancel Rating",cancelValue:0,cancelShow:true,disableValue:true,oneVoteOnly:false,showTitles:false,captionEl:null,callback:null,starWidth:16,cancelClass:"ui-stars-cancel",starClass:"ui-stars-star",starOnClass:"ui-stars-star-on",starHoverClass:"ui-stars-star-hover",starDisabledClass:"ui-stars-star-disabled",cancelHoverClass:"ui-stars-cancel-hover",cancelDisabledClass:"ui-stars-cancel-disabled"},_create:function(){var self=this,o=this.options,starId=0;this.element.data("former.stars",this.element.html());o.isSelect=o.inputType=="select";this.$form=$(this.element).closest("form");this.$selec=o.isSelect?$("select",this.element):null;this.$rboxs=o.isSelect?$("option",this.$selec):$(":radio",this.element);this.$stars=this.$rboxs.map(function(i){var el={value:this.value,title:(o.isSelect?this.text:this.title)||this.value,isDefault:(o.isSelect&&this.defaultSelected)||this.defaultChecked};if(i==0){o.split=typeof o.split!="number"?0:o.split;o.val2id=[];o.id2val=[];o.id2title=[];o.name=o.isSelect?self.$selec.get(0).name:this.name;o.disabled=o.disabled||(o.isSelect?$(self.$selec).attr("disabled"):$(this).attr("disabled"))}if(el.value==o.cancelValue){o.cancelTitle=el.title;return null}o.val2id[el.value]=starId;o.id2val[starId]=el.value;o.id2title[starId]=el.title;if(el.isDefault){o.checked=starId;o.value=o.defaultValue=el.value;o.title=el.title}var $s=$("<div/>").addClass(o.starClass);var $a=$("<a/>").attr("title",o.showTitles?el.title:"").text(el.value);if(o.split){var oddeven=(starId%o.split);var stwidth=Math.floor(o.starWidth/o.split);$s.width(stwidth);$a.css("margin-left","-"+(oddeven*stwidth)+"px")}starId++;return $s.append($a).get(0)});o.items=starId;o.isSelect?this.$selec.remove():this.$rboxs.remove();this.$cancel=$("<div/>").addClass(o.cancelClass).append($("<a/>").attr("title",o.showTitles?o.cancelTitle:"").text(o.cancelValue));o.cancelShow&=!o.disabled&&!o.oneVoteOnly;o.cancelShow&&this.element.append(this.$cancel);this.element.append(this.$stars);if(o.checked===undefined){o.checked=-1;o.value=o.defaultValue=o.cancelValue;o.title=""}this.$value=$("<input type='hidden' name='"+o.name+"' value='"+o.value+"' />");this.element.append(this.$value);this.$stars.bind("click.stars",function(e){if(!o.forceSelect&&o.disabled){return false}var i=self.$stars.index(this);o.checked=i;o.value=o.id2val[i];o.title=o.id2title[i];self.$value.attr({disabled:o.disabled?"disabled":"",value:o.value});fillTo(i,false);self._disableCancel();!o.forceSelect&&self.callback(e,"star")}).bind("mouseover.stars",function(){if(o.disabled){return false}var i=self.$stars.index(this);fillTo(i,true)}).bind("mouseout.stars",function(){if(o.disabled){return false}fillTo(self.options.checked,false)});this.$cancel.bind("click.stars",function(e){if(!o.forceSelect&&(o.disabled||o.value==o.cancelValue)){return false}o.checked=-1;o.value=o.cancelValue;o.title="";self.$value.val(o.value);o.disableValue&&self.$value.attr({disabled:"disabled"});fillNone();self._disableCancel();!o.forceSelect&&self.callback(e,"cancel")}).bind("mouseover.stars",function(){if(self._disableCancel()){return false}self.$cancel.addClass(o.cancelHoverClass);fillNone();self._showCap(o.cancelTitle)}).bind("mouseout.stars",function(){if(self._disableCancel()){return false}self.$cancel.removeClass(o.cancelHoverClass);self.$stars.triggerHandler("mouseout.stars")});this.$form.bind("reset.stars",function(){!o.disabled&&self.select(o.defaultValue)});$(window).unload(function(){self.$cancel.unbind(".stars");self.$stars.unbind(".stars");self.$form.unbind(".stars");self.$selec=self.$rboxs=self.$stars=self.$value=self.$cancel=self.$form=null});function fillTo(index,hover){if(index!=-1){var addClass=hover?o.starHoverClass:o.starOnClass;var remClass=hover?o.starOnClass:o.starHoverClass;self.$stars.eq(index).prevAll("."+o.starClass).andSelf().removeClass(remClass).addClass(addClass);self.$stars.eq(index).nextAll("."+o.starClass).removeClass(o.starHoverClass+" "+o.starOnClass);self._showCap(o.id2title[index])}else{fillNone()}}function fillNone(){self.$stars.removeClass(o.starOnClass+" "+o.starHoverClass);self._showCap("")}this.select(o.value);o.disabled&&this.disable()},_disableCancel:function(){var o=this.options,disabled=o.disabled||o.oneVoteOnly||(o.value==o.cancelValue);if(disabled){this.$cancel.removeClass(o.cancelHoverClass).addClass(o.cancelDisabledClass)}else{this.$cancel.removeClass(o.cancelDisabledClass)}this.$cancel.css("opacity",disabled?0.5:1);return disabled},_disableAll:function(){var o=this.options;this._disableCancel();if(o.disabled){this.$stars.filter("div").addClass(o.starDisabledClass)}else{this.$stars.filter("div").removeClass(o.starDisabledClass)}},_showCap:function(s){var o=this.options;if(o.captionEl){o.captionEl.text(s)}},value:function(){return this.options.value},select:function(val){var o=this.options,e=(val==o.cancelValue)?this.$cancel:this.$stars.eq(o.val2id[val]);o.forceSelect=true;e.triggerHandler("click.stars");o.forceSelect=false},selectID:function(id){var o=this.options,e=(id==-1)?this.$cancel:this.$stars.eq(id);o.forceSelect=true;e.triggerHandler("click.stars");o.forceSelect=false},enable:function(){this.options.disabled=false;this._disableAll()},disable:function(){this.options.disabled=true;this._disableAll()},destroy:function(){this.$form.unbind(".stars");this.$cancel.unbind(".stars").remove();this.$stars.unbind(".stars").remove();this.$value.remove();this.element.unbind(".stars").html(this.element.data("former.stars")).removeData("stars");return this},callback:function(e,type){var o=this.options;o.callback&&o.callback(this,type,o.value,e);o.oneVoteOnly&&!o.disabled&&this.disable()}});$.extend($.ui.stars,{version:"3.0.1"})})(jQuery);if(!document.createElement("canvas").getContext){(function(){var m=Math;var mr=m.round;var ms=m.sin;var mc=m.cos;var abs=m.abs;var sqrt=m.sqrt;var Z=10;var Z2=Z/2;function getContext(){return this.context_||(this.context_=new CanvasRenderingContext2D_(this))}var slice=Array.prototype.slice;function bind(f,obj,var_args){var a=slice.call(arguments,2);return function(){return f.apply(obj,a.concat(slice.call(arguments)))}}var G_vmlCanvasManager_={init:function(opt_doc){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var doc=opt_doc||document;doc.createElement("canvas");doc.attachEvent("onreadystatechange",bind(this.init_,this,doc))}},init_:function(doc){if(!doc.namespaces.g_vml_){doc.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML")}if(!doc.namespaces.g_o_){doc.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML")}if(!doc.styleSheets.ex_canvas_){var ss=doc.createStyleSheet();ss.owningElement.id="ex_canvas_";ss.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}g_vml_\\:*{behavior:url(#default#VML)}g_o_\\:*{behavior:url(#default#VML)}"}var els=doc.getElementsByTagName("canvas");for(var i=0;i<els.length;i++){this.initElement(els[i])}},initElement:function(el){if(!el.getContext){el.getContext=getContext;el.innerHTML="";el.attachEvent("onpropertychange",onPropertyChange);el.attachEvent("onresize",onResize);var attrs=el.attributes;if(attrs.width&&attrs.width.specified){el.style.width=attrs.width.nodeValue+"px"}else{el.width=el.clientWidth}if(attrs.height&&attrs.height.specified){el.style.height=attrs.height.nodeValue+"px"}else{el.height=el.clientHeight}}return el}};function onPropertyChange(e){var el=e.srcElement;switch(e.propertyName){case"width":el.style.width=el.attributes.width.nodeValue+"px";el.getContext().clearRect();break;case"height":el.style.height=el.attributes.height.nodeValue+"px";el.getContext().clearRect();break}}function onResize(e){var el=e.srcElement;if(el.firstChild){el.firstChild.style.width=el.clientWidth+"px";el.firstChild.style.height=el.clientHeight+"px"}}G_vmlCanvasManager_.init();var dec2hex=[];for(var i=0;i<16;i++){for(var j=0;j<16;j++){dec2hex[i*16+j]=i.toString(16)+j.toString(16)}}function createMatrixIdentity(){return[[1,0,0],[0,1,0],[0,0,1]]}function matrixMultiply(m1,m2){var result=createMatrixIdentity();for(var x=0;x<3;x++){for(var y=0;y<3;y++){var sum=0;for(var z=0;z<3;z++){sum+=m1[x][z]*m2[z][y]}result[x][y]=sum}}return result}function copyState(o1,o2){o2.fillStyle=o1.fillStyle;o2.lineCap=o1.lineCap;o2.lineJoin=o1.lineJoin;o2.lineWidth=o1.lineWidth;o2.miterLimit=o1.miterLimit;o2.shadowBlur=o1.shadowBlur;o2.shadowColor=o1.shadowColor;o2.shadowOffsetX=o1.shadowOffsetX;o2.shadowOffsetY=o1.shadowOffsetY;o2.strokeStyle=o1.strokeStyle;o2.globalAlpha=o1.globalAlpha;o2.arcScaleX_=o1.arcScaleX_;o2.arcScaleY_=o1.arcScaleY_;o2.lineScale_=o1.lineScale_}function processStyle(styleString){var str,alpha=1;styleString=String(styleString);if(styleString.substring(0,3)=="rgb"){var start=styleString.indexOf("(",3);var end=styleString.indexOf(")",start+1);var guts=styleString.substring(start+1,end).split(",");str="#";for(var i=0;i<3;i++){str+=dec2hex[Number(guts[i])]}if(guts.length==4&&styleString.substr(3,1)=="a"){alpha=guts[3]}}else{str=styleString}return{color:str,alpha:alpha}}function processLineCap(lineCap){switch(lineCap){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function CanvasRenderingContext2D_(surfaceElement){this.m_=createMatrixIdentity();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=Z*1;this.globalAlpha=1;this.canvas=surfaceElement;var el=surfaceElement.ownerDocument.createElement("div");el.style.width=surfaceElement.clientWidth+"px";el.style.height=surfaceElement.clientHeight+"px";el.style.overflow="hidden";el.style.position="absolute";surfaceElement.appendChild(el);this.element_=el;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var contextPrototype=CanvasRenderingContext2D_.prototype;contextPrototype.clearRect=function(){this.element_.innerHTML=""};contextPrototype.beginPath=function(){this.currentPath_=[]};contextPrototype.moveTo=function(aX,aY){var p=this.getCoords_(aX,aY);this.currentPath_.push({type:"moveTo",x:p.x,y:p.y});this.currentX_=p.x;this.currentY_=p.y};contextPrototype.lineTo=function(aX,aY){var p=this.getCoords_(aX,aY);this.currentPath_.push({type:"lineTo",x:p.x,y:p.y});this.currentX_=p.x;this.currentY_=p.y};contextPrototype.bezierCurveTo=function(aCP1x,aCP1y,aCP2x,aCP2y,aX,aY){var p=this.getCoords_(aX,aY);var cp1=this.getCoords_(aCP1x,aCP1y);var cp2=this.getCoords_(aCP2x,aCP2y);bezierCurveTo(this,cp1,cp2,p)};function bezierCurveTo(self,cp1,cp2,p){self.currentPath_.push({type:"bezierCurveTo",cp1x:cp1.x,cp1y:cp1.y,cp2x:cp2.x,cp2y:cp2.y,x:p.x,y:p.y});self.currentX_=p.x;self.currentY_=p.y}contextPrototype.quadraticCurveTo=function(aCPx,aCPy,aX,aY){var cp=this.getCoords_(aCPx,aCPy);var p=this.getCoords_(aX,aY);var cp1={x:this.currentX_+2/3*(cp.x-this.currentX_),y:this.currentY_+2/3*(cp.y-this.currentY_)};var cp2={x:cp1.x+(p.x-this.currentX_)/3,y:cp1.y+(p.y-this.currentY_)/3};bezierCurveTo(this,cp1,cp2,p)};contextPrototype.arc=function(aX,aY,aRadius,aStartAngle,aEndAngle,aClockwise){aRadius*=Z;var arcType=aClockwise?"at":"wa";var xStart=aX+mc(aStartAngle)*aRadius-Z2;var yStart=aY+ms(aStartAngle)*aRadius-Z2;var xEnd=aX+mc(aEndAngle)*aRadius-Z2;var yEnd=aY+ms(aEndAngle)*aRadius-Z2;if(xStart==xEnd&&!aClockwise){xStart+=0.125}var p=this.getCoords_(aX,aY);var pStart=this.getCoords_(xStart,yStart);var pEnd=this.getCoords_(xEnd,yEnd);this.currentPath_.push({type:arcType,x:p.x,y:p.y,radius:aRadius,xStart:pStart.x,yStart:pStart.y,xEnd:pEnd.x,yEnd:pEnd.y})};contextPrototype.rect=function(aX,aY,aWidth,aHeight){this.moveTo(aX,aY);this.lineTo(aX+aWidth,aY);this.lineTo(aX+aWidth,aY+aHeight);this.lineTo(aX,aY+aHeight);this.closePath()};contextPrototype.strokeRect=function(aX,aY,aWidth,aHeight){var oldPath=this.currentPath_;this.beginPath();this.moveTo(aX,aY);this.lineTo(aX+aWidth,aY);this.lineTo(aX+aWidth,aY+aHeight);this.lineTo(aX,aY+aHeight);this.closePath();this.stroke();this.currentPath_=oldPath};contextPrototype.fillRect=function(aX,aY,aWidth,aHeight){var oldPath=this.currentPath_;this.beginPath();this.moveTo(aX,aY);this.lineTo(aX+aWidth,aY);this.lineTo(aX+aWidth,aY+aHeight);this.lineTo(aX,aY+aHeight);this.closePath();this.fill();this.currentPath_=oldPath};contextPrototype.createLinearGradient=function(aX0,aY0,aX1,aY1){var gradient=new CanvasGradient_("gradient");gradient.x0_=aX0;gradient.y0_=aY0;gradient.x1_=aX1;gradient.y1_=aY1;return gradient};contextPrototype.createRadialGradient=function(aX0,aY0,aR0,aX1,aY1,aR1){var gradient=new CanvasGradient_("gradientradial");gradient.x0_=aX0;gradient.y0_=aY0;gradient.r0_=aR0;gradient.x1_=aX1;gradient.y1_=aY1;gradient.r1_=aR1;return gradient};contextPrototype.drawImage=function(image,var_args){var dx,dy,dw,dh,sx,sy,sw,sh;var oldRuntimeWidth=image.runtimeStyle.width;var oldRuntimeHeight=image.runtimeStyle.height;image.runtimeStyle.width="auto";image.runtimeStyle.height="auto";var w=image.width;var h=image.height;image.runtimeStyle.width=oldRuntimeWidth;image.runtimeStyle.height=oldRuntimeHeight;if(arguments.length==3){dx=arguments[1];dy=arguments[2];sx=sy=0;sw=dw=w;sh=dh=h}else{if(arguments.length==5){dx=arguments[1];dy=arguments[2];dw=arguments[3];dh=arguments[4];sx=sy=0;sw=w;sh=h}else{if(arguments.length==9){sx=arguments[1];sy=arguments[2];sw=arguments[3];sh=arguments[4];dx=arguments[5];dy=arguments[6];dw=arguments[7];dh=arguments[8]}else{throw Error("Invalid number of arguments")}}}var d=this.getCoords_(dx,dy);var w2=sw/2;var h2=sh/2;var vmlStr=[];var W=10;var H=10;vmlStr.push(" <g_vml_:group",' coordsize="',Z*W,",",Z*H,'"',' coordorigin="0,0"',' style="width:',W,"px;height:",H,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]){var filter=[];filter.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",mr(d.x/Z),",","Dy=",mr(d.y/Z),"");var max=d;var c2=this.getCoords_(dx+dw,dy);var c3=this.getCoords_(dx,dy+dh);var c4=this.getCoords_(dx+dw,dy+dh);max.x=m.max(max.x,c2.x,c3.x,c4.x);max.y=m.max(max.y,c2.y,c3.y,c4.y);vmlStr.push("padding:0 ",mr(max.x/Z),"px ",mr(max.y/Z),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",filter.join(""),", sizingmethod='clip');")}else{vmlStr.push("top:",mr(d.y/Z),"px;left:",mr(d.x/Z),"px;")}vmlStr.push(' ">','<g_vml_:image src="',image.src,'"',' style="width:',Z*dw,"px;"," height:",Z*dh,'px;"',' cropleft="',sx/w,'"',' croptop="',sy/h,'"',' cropright="',(w-sx-sw)/w,'"',' cropbottom="',(h-sy-sh)/h,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",vmlStr.join(""))};contextPrototype.stroke=function(aFill){var lineStr=[];var lineOpen=false;var a=processStyle(aFill?this.fillStyle:this.strokeStyle);var color=a.color;var opacity=a.alpha*this.globalAlpha;var W=10;var H=10;lineStr.push("<g_vml_:shape",' filled="',!!aFill,'"',' style="position:absolute;width:',W,"px;height:",H,'px;"',' coordorigin="0 0" coordsize="',Z*W," ",Z*H,'"',' stroked="',!aFill,'"',' path="');var newSeq=false;var min={x:null,y:null};var max={x:null,y:null};for(var i=0;i<this.currentPath_.length;i++){var p=this.currentPath_[i];var c;switch(p.type){case"moveTo":c=p;lineStr.push(" m ",mr(p.x),",",mr(p.y));break;case"lineTo":lineStr.push(" l ",mr(p.x),",",mr(p.y));break;case"close":lineStr.push(" x ");p=null;break;case"bezierCurveTo":lineStr.push(" c ",mr(p.cp1x),",",mr(p.cp1y),",",mr(p.cp2x),",",mr(p.cp2y),",",mr(p.x),",",mr(p.y));break;case"at":case"wa":lineStr.push(" ",p.type," ",mr(p.x-this.arcScaleX_*p.radius),",",mr(p.y-this.arcScaleY_*p.radius)," ",mr(p.x+this.arcScaleX_*p.radius),",",mr(p.y+this.arcScaleY_*p.radius)," ",mr(p.xStart),",",mr(p.yStart)," ",mr(p.xEnd),",",mr(p.yEnd));break}if(p){if(min.x==null||p.x<min.x){min.x=p.x}if(max.x==null||p.x>max.x){max.x=p.x}if(min.y==null||p.y<min.y){min.y=p.y}if(max.y==null||p.y>max.y){max.y=p.y}}}lineStr.push(' ">');if(!aFill){var lineWidth=this.lineScale_*this.lineWidth;if(lineWidth<1){opacity*=lineWidth}lineStr.push("<g_vml_:stroke",' opacity="',opacity,'"',' joinstyle="',this.lineJoin,'"',' miterlimit="',this.miterLimit,'"',' endcap="',processLineCap(this.lineCap),'"',' weight="',lineWidth,'px"',' color="',color,'" />')}else{if(typeof this.fillStyle=="object"){var fillStyle=this.fillStyle;var angle=0;var focus={x:0,y:0};var shift=0;var expansion=1;if(fillStyle.type_=="gradient"){var x0=fillStyle.x0_/this.arcScaleX_;var y0=fillStyle.y0_/this.arcScaleY_;var x1=fillStyle.x1_/this.arcScaleX_;var y1=fillStyle.y1_/this.arcScaleY_;var p0=this.getCoords_(x0,y0);var p1=this.getCoords_(x1,y1);var dx=p1.x-p0.x;var dy=p1.y-p0.y;angle=Math.atan2(dx,dy)*180/Math.PI;if(angle<0){angle+=360}if(angle<0.000001){angle=0}}else{var p0=this.getCoords_(fillStyle.x0_,fillStyle.y0_);var width=max.x-min.x;var height=max.y-min.y;focus={x:(p0.x-min.x)/width,y:(p0.y-min.y)/height};width/=this.arcScaleX_*Z;height/=this.arcScaleY_*Z;var dimension=m.max(width,height);shift=2*fillStyle.r0_/dimension;expansion=2*fillStyle.r1_/dimension-shift}var stops=fillStyle.colors_;stops.sort(function(cs1,cs2){return cs1.offset-cs2.offset});var length=stops.length;var color1=stops[0].color;var color2=stops[length-1].color;var opacity1=stops[0].alpha*this.globalAlpha;var opacity2=stops[length-1].alpha*this.globalAlpha;var colors=[];for(var i=0;i<length;i++){var stop=stops[i];colors.push(stop.offset*expansion+shift+" "+stop.color)}lineStr.push('<g_vml_:fill type="',fillStyle.type_,'"',' method="none" focus="100%"',' color="',color1,'"',' color2="',color2,'"',' colors="',colors.join(","),'"',' opacity="',opacity2,'"',' g_o_:opacity2="',opacity1,'"',' angle="',angle,'"',' focusposition="',focus.x,",",focus.y,'" />')}else{lineStr.push('<g_vml_:fill color="',color,'" opacity="',opacity,'" />')}}lineStr.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",lineStr.join(""))};contextPrototype.fill=function(){this.stroke(true)};contextPrototype.closePath=function(){this.currentPath_.push({type:"close"})};contextPrototype.getCoords_=function(aX,aY){var m=this.m_;return{x:Z*(aX*m[0][0]+aY*m[1][0]+m[2][0])-Z2,y:Z*(aX*m[0][1]+aY*m[1][1]+m[2][1])-Z2}};contextPrototype.save=function(){var o={};copyState(this,o);this.aStack_.push(o);this.mStack_.push(this.m_);this.m_=matrixMultiply(createMatrixIdentity(),this.m_)};contextPrototype.restore=function(){copyState(this.aStack_.pop(),this);this.m_=this.mStack_.pop()};function matrixIsFinite(m){for(var j=0;j<3;j++){for(var k=0;k<2;k++){if(!isFinite(m[j][k])||isNaN(m[j][k])){return false}}}return true}function setM(ctx,m,updateLineScale){if(!matrixIsFinite(m)){return}ctx.m_=m;if(updateLineScale){var det=m[0][0]*m[1][1]-m[0][1]*m[1][0];ctx.lineScale_=sqrt(abs(det))}}contextPrototype.translate=function(aX,aY){var m1=[[1,0,0],[0,1,0],[aX,aY,1]];setM(this,matrixMultiply(m1,this.m_),false)};contextPrototype.rotate=function(aRot){var c=mc(aRot);var s=ms(aRot);var m1=[[c,s,0],[-s,c,0],[0,0,1]];setM(this,matrixMultiply(m1,this.m_),false)};contextPrototype.scale=function(aX,aY){this.arcScaleX_*=aX;this.arcScaleY_*=aY;var m1=[[aX,0,0],[0,aY,0],[0,0,1]];setM(this,matrixMultiply(m1,this.m_),true)};contextPrototype.transform=function(m11,m12,m21,m22,dx,dy){var m1=[[m11,m12,0],[m21,m22,0],[dx,dy,1]];setM(this,matrixMultiply(m1,this.m_),true)};contextPrototype.setTransform=function(m11,m12,m21,m22,dx,dy){var m=[[m11,m12,0],[m21,m22,0],[dx,dy,1]];setM(this,m,true)};contextPrototype.clip=function(){};contextPrototype.arcTo=function(){};contextPrototype.createPattern=function(){return new CanvasPattern_};function CanvasGradient_(aType){this.type_=aType;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}CanvasGradient_.prototype.addColorStop=function(aOffset,aColor){aColor=processStyle(aColor);this.colors_.push({offset:aOffset,color:aColor.color,alpha:aColor.alpha})};function CanvasPattern_(){}G_vmlCanvasManager=G_vmlCanvasManager_;CanvasRenderingContext2D=CanvasRenderingContext2D_;CanvasGradient=CanvasGradient_;CanvasPattern=CanvasPattern_})();
/*
* @name BeautyTips
* @desc a tooltips/baloon-help plugin for jQuery
*
* @author Jeff Robbins - Lullabot - http://www.lullabot.com
* @version 0.9.5 release candidate 1  (5/20/2009)
*/
}jQuery.bt={version:"0.9.5-rc1"};(function($){jQuery.fn.bt=function(content,options){if(typeof content!="string"){var contentSelect=true;options=content;content=false}else{var contentSelect=false}if(jQuery.fn.hoverIntent&&jQuery.bt.defaults.trigger=="hover"){jQuery.bt.defaults.trigger="hoverIntent"}return this.each(function(index){var opts=jQuery.extend(false,jQuery.bt.defaults,jQuery.bt.options,options);opts.spikeLength=numb(opts.spikeLength);opts.spikeGirth=numb(opts.spikeGirth);opts.overlap=numb(opts.overlap);var ajaxTimeout=false;if(opts.killTitle){$(this).find("[title]").andSelf().each(function(){if(!$(this).attr("bt-xTitle")){$(this).attr("bt-xTitle",$(this).attr("title")).attr("title","")}})}if(typeof opts.trigger=="string"){opts.trigger=[opts.trigger]}if(opts.trigger[0]=="hoverIntent"){var hoverOpts=jQuery.extend(opts.hoverIntentOpts,{over:function(){this.btOn()},out:function(){this.btOff()}});$(this).hoverIntent(hoverOpts)}else{if(opts.trigger[0]=="hover"){$(this).hover(function(){this.btOn()},function(){this.btOff()})}else{if(opts.trigger[0]=="now"){if($(this).hasClass("bt-active")){this.btOff()}else{this.btOn()}}else{if(opts.trigger[0]=="none"){}else{if(opts.trigger.length>1&&opts.trigger[0]!=opts.trigger[1]){$(this).bind(opts.trigger[0],function(){this.btOn()}).bind(opts.trigger[1],function(){this.btOff()})}else{$(this).bind(opts.trigger[0],function(){if($(this).hasClass("bt-active")){this.btOff()}else{this.btOn()}})}}}}}this.btOn=function(){if(typeof $(this).data("bt-box")=="object"){this.btOff()}opts.preBuild.apply(this);$(jQuery.bt.vars.closeWhenOpenStack).btOff();$(this).addClass("bt-active "+opts.activeClass);if(contentSelect&&opts.ajaxPath==null){if(opts.killTitle){$(this).attr("title",$(this).attr("bt-xTitle"))}content=$.isFunction(opts.contentSelector)?opts.contentSelector.apply(this):eval(opts.contentSelector);if(opts.killTitle){$(this).attr("title","")}}if(opts.ajaxPath!=null&&content==false){if(typeof opts.ajaxPath=="object"){var url=eval(opts.ajaxPath[0]);url+=opts.ajaxPath[1]?" "+opts.ajaxPath[1]:""}else{var url=opts.ajaxPath}var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off)}var cacheData=opts.ajaxCache?$(document.body).data("btCache-"+url.replace(/\./g,"")):null;if(typeof cacheData=="string"){content=selector?$("<div/>").append(cacheData.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):cacheData}else{var target=this;var ajaxOpts=jQuery.extend(false,{type:opts.ajaxType,data:opts.ajaxData,cache:opts.ajaxCache,url:url,complete:function(XMLHttpRequest,textStatus){if(textStatus=="success"||textStatus=="notmodified"){if(opts.ajaxCache){$(document.body).data("btCache-"+url.replace(/\./g,""),XMLHttpRequest.responseText)}ajaxTimeout=false;content=selector?$("<div/>").append(XMLHttpRequest.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):XMLHttpRequest.responseText}else{if(textStatus=="timeout"){ajaxTimeout=true}content=opts.ajaxError.replace(/%error/g,XMLHttpRequest.statusText)}if($(target).hasClass("bt-active")){target.btOn()}}},opts.ajaxOpts);jQuery.ajax(ajaxOpts);content=opts.ajaxLoading}}var shadowMarginX=0;var shadowMarginY=0;var shadowShiftX=0;var shadowShiftY=0;if(opts.shadow&&!shadowSupport()){opts.shadow=false;jQuery.extend(opts,opts.noShadowOpts)}if(opts.shadow){if(opts.shadowBlur>Math.abs(opts.shadowOffsetX)){shadowMarginX=opts.shadowBlur*2}else{shadowMarginX=opts.shadowBlur+Math.abs(opts.shadowOffsetX)}shadowShiftX=(opts.shadowBlur-opts.shadowOffsetX)>0?opts.shadowBlur-opts.shadowOffsetX:0;if(opts.shadowBlur>Math.abs(opts.shadowOffsetY)){shadowMarginY=opts.shadowBlur*2}else{shadowMarginY=opts.shadowBlur+Math.abs(opts.shadowOffsetY)}shadowShiftY=(opts.shadowBlur-opts.shadowOffsetY)>0?opts.shadowBlur-opts.shadowOffsetY:0}if(opts.offsetParent){var offsetParent=$(opts.offsetParent);var offsetParentPos=offsetParent.offset();var pos=$(this).offset();var top=numb(pos.top)-numb(offsetParentPos.top)+numb($(this).css("margin-top"))-shadowShiftY;var left=numb(pos.left)-numb(offsetParentPos.left)+numb($(this).css("margin-left"))-shadowShiftX}else{var offsetParent=($(this).css("position")=="absolute")?$(this).parents().eq(0).offsetParent():$(this).offsetParent();var pos=$(this).btPosition();var top=numb(pos.top)+numb($(this).css("margin-top"))-shadowShiftY;var left=numb(pos.left)+numb($(this).css("margin-left"))-shadowShiftX}var width=$(this).btOuterWidth();var height=$(this).outerHeight();if(typeof content=="object"){var original=content;var clone=$(original).clone(true).show();var origClones=$(original).data("bt-clones")||[];origClones.push(clone);$(original).data("bt-clones",origClones);$(clone).data("bt-orig",original);$(this).data("bt-content-orig",{original:original,clone:clone});content=clone}if(typeof content=="null"||content==""){return}var $text=$('<div class="bt-content"></div>').append(content).css({padding:opts.padding,position:"absolute",width:(opts.shrinkToFit?"auto":opts.width),zIndex:opts.textzIndex,left:shadowShiftX,top:shadowShiftY}).css(opts.cssStyles);var $box=$('<div class="bt-wrapper"></div>').append($text).addClass(opts.cssClass).css({position:"absolute",width:opts.width,zIndex:opts.wrapperzIndex,visibility:"hidden"}).appendTo(offsetParent);if(jQuery.fn.bgiframe){$text.bgiframe();$box.bgiframe()}$(this).data("bt-box",$box);var scrollTop=numb($(document).scrollTop());var scrollLeft=numb($(document).scrollLeft());var docWidth=numb($(window).width());var docHeight=numb($(window).height());var winRight=scrollLeft+docWidth;var winBottom=scrollTop+docHeight;var space=new Object();var thisOffset=$(this).offset();space.top=thisOffset.top-scrollTop;space.bottom=docHeight-((thisOffset+height)-scrollTop);space.left=thisOffset.left-scrollLeft;space.right=docWidth-((thisOffset.left+width)-scrollLeft);var textOutHeight=numb($text.outerHeight());var textOutWidth=numb($text.btOuterWidth());if(opts.positions.constructor==String){opts.positions=opts.positions.replace(/ /,"").split(",")}if(opts.positions[0]=="most"){var position="top";for(var pig in space){position=space[pig]>space[position]?pig:position}}else{for(var x in opts.positions){var position=opts.positions[x];if((position=="left"||position=="right")&&space[position]>textOutWidth+opts.spikeLength){break}else{if((position=="top"||position=="bottom")&&space[position]>textOutHeight+opts.spikeLength){break}}}}var horiz=left+((width-textOutWidth)*0.5);var vert=top+((height-textOutHeight)*0.5);var points=new Array();var textTop,textLeft,textRight,textBottom,textTopSpace,textBottomSpace,textLeftSpace,textRightSpace,crossPoint,textCenter,spikePoint;switch(position){case"top":$text.css("margin-bottom",opts.spikeLength+"px");$box.css({top:(top-$text.outerHeight(true))+opts.overlap,left:horiz});textRightSpace=(winRight-opts.windowMargin)-($text.offset().left+$text.btOuterWidth(true));var xShift=shadowShiftX;if(textRightSpace<0){$box.css("left",(numb($box.css("left"))+textRightSpace)+"px");xShift-=textRightSpace}textLeftSpace=($text.offset().left+numb($text.css("margin-left")))-(scrollLeft+opts.windowMargin);if(textLeftSpace<0){$box.css("left",(numb($box.css("left"))-textLeftSpace)+"px");xShift+=textLeftSpace}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={y:textBottom+opts.spikeLength,x:((textRight-textLeft)*0.5)+xShift,type:"spike"};crossPoint=findIntersectX(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textBottom);crossPoint.x=crossPoint.x<textLeft+opts.spikeGirth/2+opts.cornerRadius?textLeft+opts.spikeGirth/2+opts.cornerRadius:crossPoint.x;crossPoint.x=crossPoint.x>(textRight-opts.spikeGirth/2)-opts.cornerRadius?(textRight-opts.spikeGirth/2)-opts.CornerRadius:crossPoint.x;points[points.length]={x:crossPoint.x-(opts.spikeGirth/2),y:textBottom,type:"join"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:crossPoint.x+(opts.spikeGirth/2),y:textBottom,type:"join"};points[points.length]=spikePoint;break;case"left":$text.css("margin-right",opts.spikeLength+"px");$box.css({top:vert+"px",left:((left-$text.btOuterWidth(true))+opts.overlap)+"px"});textBottomSpace=(winBottom-opts.windowMargin)-($text.offset().top+$text.outerHeight(true));var yShift=shadowShiftY;if(textBottomSpace<0){$box.css("top",(numb($box.css("top"))+textBottomSpace)+"px");yShift-=textBottomSpace}textTopSpace=($text.offset().top+numb($text.css("margin-top")))-(scrollTop+opts.windowMargin);if(textTopSpace<0){$box.css("top",(numb($box.css("top"))-textTopSpace)+"px");yShift+=textTopSpace}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:textRight+opts.spikeLength,y:((textBottom-textTop)*0.5)+yShift,type:"spike"};crossPoint=findIntersectY(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textRight);crossPoint.y=crossPoint.y<textTop+opts.spikeGirth/2+opts.cornerRadius?textTop+opts.spikeGirth/2+opts.cornerRadius:crossPoint.y;crossPoint.y=crossPoint.y>(textBottom-opts.spikeGirth/2)-opts.cornerRadius?(textBottom-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.y;points[points.length]={x:textRight,y:crossPoint.y+opts.spikeGirth/2,type:"join"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:crossPoint.y-opts.spikeGirth/2,type:"join"};points[points.length]=spikePoint;break;case"bottom":$text.css("margin-top",opts.spikeLength+"px");$box.css({top:(top+height)-opts.overlap,left:horiz});textRightSpace=(winRight-opts.windowMargin)-($text.offset().left+$text.btOuterWidth(true));var xShift=shadowShiftX;if(textRightSpace<0){$box.css("left",(numb($box.css("left"))+textRightSpace)+"px");xShift-=textRightSpace}textLeftSpace=($text.offset().left+numb($text.css("margin-left")))-(scrollLeft+opts.windowMargin);if(textLeftSpace<0){$box.css("left",(numb($box.css("left"))-textLeftSpace)+"px");xShift+=textLeftSpace}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:((textRight-textLeft)*0.5)+xShift,y:shadowShiftY,type:"spike"};crossPoint=findIntersectX(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textTop);crossPoint.x=crossPoint.x<textLeft+opts.spikeGirth/2+opts.cornerRadius?textLeft+opts.spikeGirth/2+opts.cornerRadius:crossPoint.x;crossPoint.x=crossPoint.x>(textRight-opts.spikeGirth/2)-opts.cornerRadius?(textRight-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.x;points[points.length]={x:crossPoint.x+opts.spikeGirth/2,y:textTop,type:"join"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:crossPoint.x-(opts.spikeGirth/2),y:textTop,type:"join"};points[points.length]=spikePoint;break;case"right":$text.css("margin-left",(opts.spikeLength+"px"));$box.css({top:vert+"px",left:((left+width)-opts.overlap)+"px"});textBottomSpace=(winBottom-opts.windowMargin)-($text.offset().top+$text.outerHeight(true));var yShift=shadowShiftY;if(textBottomSpace<0){$box.css("top",(numb($box.css("top"))+textBottomSpace)+"px");yShift-=textBottomSpace}textTopSpace=($text.offset().top+numb($text.css("margin-top")))-(scrollTop+opts.windowMargin);if(textTopSpace<0){$box.css("top",(numb($box.css("top"))-textTopSpace)+"px");yShift+=textTopSpace}textTop=$text.btPosition().top+numb($text.css("margin-top"));textLeft=$text.btPosition().left+numb($text.css("margin-left"));textRight=textLeft+$text.btOuterWidth();textBottom=textTop+$text.outerHeight();textCenter={x:textLeft+($text.btOuterWidth()*opts.centerPointX),y:textTop+($text.outerHeight()*opts.centerPointY)};points[points.length]=spikePoint={x:shadowShiftX,y:((textBottom-textTop)*0.5)+yShift,type:"spike"};crossPoint=findIntersectY(spikePoint.x,spikePoint.y,textCenter.x,textCenter.y,textLeft);crossPoint.y=crossPoint.y<textTop+opts.spikeGirth/2+opts.cornerRadius?textTop+opts.spikeGirth/2+opts.cornerRadius:crossPoint.y;crossPoint.y=crossPoint.y>(textBottom-opts.spikeGirth/2)-opts.cornerRadius?(textBottom-opts.spikeGirth/2)-opts.cornerRadius:crossPoint.y;points[points.length]={x:textLeft,y:crossPoint.y-opts.spikeGirth/2,type:"join"};points[points.length]={x:textLeft,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textTop,type:"corner"};points[points.length]={x:textRight,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:textBottom,type:"corner"};points[points.length]={x:textLeft,y:crossPoint.y+opts.spikeGirth/2,type:"join"};points[points.length]=spikePoint;break}var canvas=document.createElement("canvas");$(canvas).attr("width",(numb($text.btOuterWidth(true))+opts.strokeWidth*2+shadowMarginX)).attr("height",(numb($text.outerHeight(true))+opts.strokeWidth*2+shadowMarginY)).appendTo($box).css({position:"absolute",zIndex:opts.boxzIndex});if(typeof G_vmlCanvasManager!="undefined"){canvas=G_vmlCanvasManager.initElement(canvas)}if(opts.cornerRadius>0){var newPoints=new Array();var newPoint;for(var i=0;i<points.length;i++){if(points[i].type=="corner"){newPoint=betweenPoint(points[i],points[(i-1)%points.length],opts.cornerRadius);newPoint.type="arcStart";newPoints[newPoints.length]=newPoint;newPoints[newPoints.length]=points[i];newPoint=betweenPoint(points[i],points[(i+1)%points.length],opts.cornerRadius);newPoint.type="arcEnd";newPoints[newPoints.length]=newPoint}else{newPoints[newPoints.length]=points[i]}}points=newPoints}var ctx=canvas.getContext("2d");if(opts.shadow&&opts.shadowOverlap!==true){var shadowOverlap=numb(opts.shadowOverlap);switch(position){case"top":if(opts.shadowOffsetX+opts.shadowBlur-shadowOverlap>0){$box.css("top",(numb($box.css("top"))-(opts.shadowOffsetX+opts.shadowBlur-shadowOverlap)))}break;case"right":if(shadowShiftX-shadowOverlap>0){$box.css("left",(numb($box.css("left"))+shadowShiftX-shadowOverlap))}break;case"bottom":if(shadowShiftY-shadowOverlap>0){$box.css("top",(numb($box.css("top"))+shadowShiftY-shadowOverlap))}break;case"left":if(opts.shadowOffsetY+opts.shadowBlur-shadowOverlap>0){$box.css("left",(numb($box.css("left"))-(opts.shadowOffsetY+opts.shadowBlur-shadowOverlap)))}break}}drawIt.apply(ctx,[points],opts.strokeWidth);ctx.fillStyle=opts.fill;if(opts.shadow){ctx.shadowOffsetX=opts.shadowOffsetX;ctx.shadowOffsetY=opts.shadowOffsetY;ctx.shadowBlur=opts.shadowBlur;ctx.shadowColor=opts.shadowColor}ctx.closePath();ctx.fill();if(opts.strokeWidth>0){ctx.shadowColor="rgba(0, 0, 0, 0)";ctx.lineWidth=opts.strokeWidth;ctx.strokeStyle=opts.strokeStyle;ctx.beginPath();drawIt.apply(ctx,[points],opts.strokeWidth);ctx.closePath();ctx.stroke()}opts.preShow.apply(this,[$box[0]]);$box.css({display:"none",visibility:"visible"});opts.showTip.apply(this,[$box[0]]);if(opts.overlay){var overlay=$('<div class="bt-overlay"></div>').css({position:"absolute",backgroundColor:"blue",top:top,left:left,width:width,height:height,opacity:".2"}).appendTo(offsetParent);$(this).data("overlay",overlay)}if((opts.ajaxPath!=null&&opts.ajaxCache==false)||ajaxTimeout){content=false}if(opts.clickAnywhereToClose){jQuery.bt.vars.clickAnywhereStack.push(this);$(document).click(jQuery.bt.docClick)}if(opts.closeWhenOthersOpen){jQuery.bt.vars.closeWhenOpenStack.push(this)}opts.postShow.apply(this,[$box[0]])};this.btOff=function(){var box=$(this).data("bt-box");if(typeof box=="undefined"){return}opts.preHide.apply(this,[box]);var i=this;i.btCleanup=function(){var box=$(i).data("bt-box");var contentOrig=$(i).data("bt-content-orig");var overlay=$(i).data("bt-overlay");if(typeof box=="object"){$(box).remove();$(i).removeData("bt-box")}if(typeof contentOrig=="object"){var clones=$(contentOrig.original).data("bt-clones");$(contentOrig).data("bt-clones",arrayRemove(clones,contentOrig.clone))}if(typeof overlay=="object"){$(overlay).remove();$(i).removeData("bt-overlay")}jQuery.bt.vars.clickAnywhereStack=arrayRemove(jQuery.bt.vars.clickAnywhereStack,i);jQuery.bt.vars.closeWhenOpenStack=arrayRemove(jQuery.bt.vars.closeWhenOpenStack,i);$(i).removeClass("bt-active "+opts.activeClass);opts.postHide.apply(i)};opts.hideTip.apply(this,[box,i.btCleanup])};var refresh=this.btRefresh=function(){this.btOff();this.btOn()}});function drawIt(points,strokeWidth){this.moveTo(points[0].x,points[0].y);for(i=1;i<points.length;i++){if(points[i-1].type=="arcStart"){this.quadraticCurveTo(round5(points[i].x,strokeWidth),round5(points[i].y,strokeWidth),round5(points[(i+1)%points.length].x,strokeWidth),round5(points[(i+1)%points.length].y,strokeWidth));i++}else{this.lineTo(round5(points[i].x,strokeWidth),round5(points[i].y,strokeWidth))}}}function round5(num,strokeWidth){var ret;strokeWidth=numb(strokeWidth);if(strokeWidth%2){ret=num}else{ret=Math.round(num-0.5)+0.5}return ret}function numb(num){return parseInt(num)||0}function arrayRemove(arr,elem){var x,newArr=new Array();for(x in arr){if(arr[x]!=elem){newArr.push(arr[x])}}return newArr}function canvasSupport(){var canvas_compatible=false;try{canvas_compatible=!!(document.createElement("canvas").getContext("2d"))}catch(e){canvas_compatible=!!(document.createElement("canvas").getContext)}return canvas_compatible}function shadowSupport(){try{var userAgent=navigator.userAgent.toLowerCase();if(/webkit/.test(userAgent)){return true}else{if(/gecko|mozilla/.test(userAgent)&&parseFloat(userAgent.match(/firefox\/(\d+(?:\.\d+)+)/)[1])>=3.1){return true}}}catch(err){}return false}function betweenPoint(point1,point2,dist){var y,x;if(point1.x==point2.x){y=point1.y<point2.y?point1.y+dist:point1.y-dist;return{x:point1.x,y:y}}else{if(point1.y==point2.y){x=point1.x<point2.x?point1.x+dist:point1.x-dist;return{x:x,y:point1.y}}}}function centerPoint(arcStart,corner,arcEnd){var x=corner.x==arcStart.x?arcEnd.x:arcStart.x;var y=corner.y==arcStart.y?arcEnd.y:arcStart.y;var startAngle,endAngle;if(arcStart.x<arcEnd.x){if(arcStart.y>arcEnd.y){startAngle=(Math.PI/180)*180;endAngle=(Math.PI/180)*90}else{startAngle=(Math.PI/180)*90;endAngle=0}}else{if(arcStart.y>arcEnd.y){startAngle=(Math.PI/180)*270;endAngle=(Math.PI/180)*180}else{startAngle=0;endAngle=(Math.PI/180)*270}}return{x:x,y:y,type:"center",startAngle:startAngle,endAngle:endAngle}}function findIntersect(r1x1,r1y1,r1x2,r1y2,r2x1,r2y1,r2x2,r2y2){if(r2x1==r2x2){return findIntersectY(r1x1,r1y1,r1x2,r1y2,r2x1)}if(r2y1==r2y2){return findIntersectX(r1x1,r1y1,r1x2,r1y2,r2y1)}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var r2m=(r2y1-r2y2)/(r2x1-r2x2);var r2b=r2y1-(r2m*r2x1);var x=(r2b-r1b)/(r1m-r2m);var y=r1m*x+r1b;return{x:x,y:y}}function findIntersectY(r1x1,r1y1,r1x2,r1y2,x){if(r1y1==r1y2){return{x:x,y:r1y1}}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var y=r1m*x+r1b;return{x:x,y:y}}function findIntersectX(r1x1,r1y1,r1x2,r1y2,y){if(r1x1==r1x2){return{x:r1x1,y:y}}var r1m=(r1y1-r1y2)/(r1x1-r1x2);var r1b=r1y1-(r1m*r1x1);var x=(y-r1b)/r1m;return{x:x,y:y}}};jQuery.fn.btPosition=function(){function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0}var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,"marginTop");offset.left-=num(this,"marginLeft");parentOffset.top+=num(offsetParent,"borderTopWidth");parentOffset.left+=num(offsetParent,"borderLeftWidth");results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left}}return results};jQuery.fn.btOuterWidth=function(margin){function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0}return this["innerWidth"]()+num(this,"borderLeftWidth")+num(this,"borderRightWidth")+(margin?num(this,"marginLeft")+num(this,"marginRight"):0)};jQuery.fn.btOn=function(){return this.each(function(index){if(jQuery.isFunction(this.btOn)){this.btOn()}})};jQuery.fn.btOff=function(){return this.each(function(index){if(jQuery.isFunction(this.btOff)){this.btOff()}})};jQuery.bt.vars={clickAnywhereStack:[],closeWhenOpenStack:[]};jQuery.bt.docClick=function(e){if(!e){var e=window.event}if(!$(e.target).parents().andSelf().filter(".bt-wrapper, .bt-active").length&&jQuery.bt.vars.clickAnywhereStack.length){$(jQuery.bt.vars.clickAnywhereStack).btOff();$(document).unbind("click",jQuery.bt.docClick)}};jQuery.bt.defaults={trigger:"hover",clickAnywhereToClose:true,closeWhenOthersOpen:false,shrinkToFit:false,width:"200px",padding:"10px",spikeGirth:10,spikeLength:15,overlap:0,overlay:false,killTitle:true,textzIndex:9999,boxzIndex:9998,wrapperzIndex:9997,offsetParent:null,positions:["most"],fill:"rgb(255, 255, 102)",windowMargin:10,strokeWidth:1,strokeStyle:"#000",cornerRadius:5,centerPointX:0.5,centerPointY:0.5,shadow:false,shadowOffsetX:2,shadowOffsetY:2,shadowBlur:3,shadowColor:"#000",shadowOverlap:false,noShadowOpts:{strokeStyle:"#999"},cssClass:"",cssStyles:{},activeClass:"bt-active",contentSelector:"$(this).attr('title')",ajaxPath:null,ajaxError:"<strong>ERROR:</strong> <em>%error</em>",ajaxLoading:"<blink>Loading...</blink>",ajaxData:{},ajaxType:"GET",ajaxCache:true,ajaxOpts:{},preBuild:function(){},preShow:function(box){},showTip:function(box){$(box).show()},postShow:function(box){},preHide:function(box){},hideTip:function(box,callback){$(box).hide();callback()},postHide:function(){},hoverIntentOpts:{interval:300,timeout:500}};jQuery.bt.options={}})(jQuery);(function($){function Datepicker(){this._defaults={pickerClass:"",showOnFocus:true,showTrigger:null,showAnim:"show",showOptions:{},showSpeed:"normal",popupContainer:null,alignment:"bottom",fixedWeeks:false,firstDay:0,calculateWeek:this.iso8601Week,monthsToShow:1,monthsOffset:0,monthsToStep:1,monthsToJump:12,useMouseWheel:true,changeMonth:true,yearRange:"c-10:c+10",shortYearCutoff:"+10",showOtherMonths:false,selectOtherMonths:false,defaultDate:null,selectDefaultDate:false,minDate:null,maxDate:null,dateFormat:"mm/dd/yyyy",autoSize:false,rangeSelect:false,rangeSeparator:" - ",multiSelect:0,multiSeparator:",",title:"",anchorDirection:null,anchorDate:null,onDate:null,onShow:null,onChangeMonthYear:null,onSelect:null,onClose:null,onClear:null,altField:null,altFormat:null,constrainInput:true,commandsAsDateFormat:false,commands:this.commands};this.regional={"":{monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesDisplay:["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"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],dateFormat:"mm/dd/yyyy",firstDay:0,renderer:this.defaultRenderer,prevText:"&lt;Prev",prevStatus:"Show the previous month",prevJumpText:"&lt;&lt;",prevJumpStatus:"Show the previous year",nextText:"Next&gt;",nextStatus:"Show the next month",nextJumpText:"&gt;&gt;",nextJumpStatus:"Show the next year",currentText:"Current",currentStatus:"Show the current month",todayText:"Today",todayStatus:"Show today's month",clearText:"Clear",clearStatus:"Clear all the dates",closeText:"Close",closeStatus:"Close the datepicker",yearStatus:"Change the year",monthStatus:"Change the month",weekText:"Wk",weekStatus:"Week of the year",dayStatus:"Select DD, M d, yyyy",defaultStatus:"Select a date",isRTL:false}};$.extend(this._defaults,this.regional[""]);this._disabled=[]}$.extend(Datepicker.prototype,{dataName:"datepick",markerClass:"hasDatepick",_popupClass:"datepick-popup",_triggerClass:"datepick-trigger",_disableClass:"datepick-disable",_coverClass:"datepick-cover",_monthYearClass:"datepick-month-year",_monthMonthClass:"datepick-month-month",_curMonthClass:"datepick-month-",_anyYearClass:"datepick-any-year",_curDoWClass:"datepick-dow-",commands:{prev:{text:"prevText",status:"prevStatus",keystroke:{keyCode:33},enabled:function(inst){var minDate=inst.curMinDate();return(!minDate||$.datepick.add($.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),1-inst.get("monthsToStep"),"m"),inst),1),-1,"d").getTime()>=minDate.getTime())},date:function(inst){return $.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),-inst.get("monthsToStep"),"m"),inst),1)},action:function(inst){$.datepick.changeMonth(this,-inst.get("monthsToStep"))}},prevJump:{text:"prevJumpText",status:"prevJumpStatus",keystroke:{keyCode:33,ctrlKey:true},enabled:function(inst){var minDate=inst.curMinDate();return(!minDate||$.datepick.add($.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),1-inst.get("monthsToJump"),"m"),inst),1),-1,"d").getTime()>=minDate.getTime())},date:function(inst){return $.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),-inst.get("monthsToJump"),"m"),inst),1)},action:function(inst){$.datepick.changeMonth(this,-inst.get("monthsToJump"))}},next:{text:"nextText",status:"nextStatus",keystroke:{keyCode:34},enabled:function(inst){var maxDate=inst.get("maxDate");return(!maxDate||$.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),inst.get("monthsToStep"),"m"),inst),1).getTime()<=maxDate.getTime())},date:function(inst){return $.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),inst.get("monthsToStep"),"m"),inst),1)},action:function(inst){$.datepick.changeMonth(this,inst.get("monthsToStep"))}},nextJump:{text:"nextJumpText",status:"nextJumpStatus",keystroke:{keyCode:34,ctrlKey:true},enabled:function(inst){var maxDate=inst.get("maxDate");return(!maxDate||$.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),inst.get("monthsToJump"),"m"),inst),1).getTime()<=maxDate.getTime())},date:function(inst){return $.datepick.day($.datepick._applyMonthsOffset($.datepick.add($.datepick.newDate(inst.drawDate),inst.get("monthsToJump"),"m"),inst),1)},action:function(inst){$.datepick.changeMonth(this,inst.get("monthsToJump"))}},current:{text:"currentText",status:"currentStatus",keystroke:{keyCode:36,ctrlKey:true},enabled:function(inst){var minDate=inst.curMinDate();var maxDate=inst.get("maxDate");var curDate=inst.selectedDates[0]||$.datepick.today();return(!minDate||curDate.getTime()>=minDate.getTime())&&(!maxDate||curDate.getTime()<=maxDate.getTime())},date:function(inst){return inst.selectedDates[0]||$.datepick.today()},action:function(inst){var curDate=inst.selectedDates[0]||$.datepick.today();$.datepick.showMonth(this,curDate.getFullYear(),curDate.getMonth()+1)}},today:{text:"todayText",status:"todayStatus",keystroke:{keyCode:36,ctrlKey:true},enabled:function(inst){var minDate=inst.curMinDate();var maxDate=inst.get("maxDate");return(!minDate||$.datepick.today().getTime()>=minDate.getTime())&&(!maxDate||$.datepick.today().getTime()<=maxDate.getTime())},date:function(inst){return $.datepick.today()},action:function(inst){$.datepick.showMonth(this)}},clear:{text:"clearText",status:"clearStatus",keystroke:{keyCode:35,ctrlKey:true},enabled:function(inst){return true},date:function(inst){return null},action:function(inst){$.datepick.clear(this)}},close:{text:"closeText",status:"closeStatus",keystroke:{keyCode:27},enabled:function(inst){return true},date:function(inst){return null},action:function(inst){$.datepick.hide(this)}},prevWeek:{text:"prevWeekText",status:"prevWeekStatus",keystroke:{keyCode:38,ctrlKey:true},enabled:function(inst){var minDate=inst.curMinDate();return(!minDate||$.datepick.add($.datepick.newDate(inst.drawDate),-7,"d").getTime()>=minDate.getTime())},date:function(inst){return $.datepick.add($.datepick.newDate(inst.drawDate),-7,"d")},action:function(inst){$.datepick.changeDay(this,-7)}},prevDay:{text:"prevDayText",status:"prevDayStatus",keystroke:{keyCode:37,ctrlKey:true},enabled:function(inst){var minDate=inst.curMinDate();return(!minDate||$.datepick.add($.datepick.newDate(inst.drawDate),-1,"d").getTime()>=minDate.getTime())},date:function(inst){return $.datepick.add($.datepick.newDate(inst.drawDate),-1,"d")},action:function(inst){$.datepick.changeDay(this,-1)}},nextDay:{text:"nextDayText",status:"nextDayStatus",keystroke:{keyCode:39,ctrlKey:true},enabled:function(inst){var maxDate=inst.get("maxDate");return(!maxDate||$.datepick.add($.datepick.newDate(inst.drawDate),1,"d").getTime()<=maxDate.getTime())},date:function(inst){return $.datepick.add($.datepick.newDate(inst.drawDate),1,"d")},action:function(inst){$.datepick.changeDay(this,1)}},nextWeek:{text:"nextWeekText",status:"nextWeekStatus",keystroke:{keyCode:40,ctrlKey:true},enabled:function(inst){var maxDate=inst.get("maxDate");return(!maxDate||$.datepick.add($.datepick.newDate(inst.drawDate),7,"d").getTime()<=maxDate.getTime())},date:function(inst){return $.datepick.add($.datepick.newDate(inst.drawDate),7,"d")},action:function(inst){$.datepick.changeDay(this,7)}}},defaultRenderer:{picker:'<div class="datepick"><div class="datepick-head">{link:title}{link:close}</div><div class="datepick-nav">{link:prev}{link:next}</div>{months}{popup:start}<div class="datepick-ctrl">{link:clear}{link:today}</div>{popup:end}<div class="datepick-clear-fix"></div></div>',monthRow:'<div class="datepick-month-row">{months}</div>',month:'<div class="datepick-month"><div class="datepick-month-header">{monthHeader}</div><table><thead>{weekHeader}</thead><tbody>{weeks}</tbody></table></div>',weekHeader:"<tr>{days}</tr>",dayHeader:"<th>{day}</th>",week:"<tr>{days}</tr>",day:"<td>{day}</td>",monthSelector:".datepick-month",daySelector:"td",rtlClass:"datepick-rtl",multiClass:"datepick-multi",defaultClass:"",selectedClass:"datepick-selected",highlightedClass:"datepick-highlight",todayClass:"datepick-today",otherMonthClass:"datepick-other-month",weekendClass:"datepick-weekend",commandClass:"datepick-cmd",commandButtonClass:"",commandLinkClass:"",disabledClass:"datepick-disabled",anchorClass:"datepick-anchor",anchorPeriodClass:"datepick-anchor-period",anchorHighlightedClass:"datepick-anchor-period-highlighted"},setDefaults:function(settings){$.extend(this._defaults,settings||{});return this},_ticksTo1970:(((1970-1)*365+Math.floor(1970/4)-Math.floor(1970/100)+Math.floor(1970/400))*24*60*60*10000000),_msPerDay:24*60*60*1000,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(format,date,settings){if(typeof format!="string"){settings=date;date=format;format=""}if(!date){return""}format=format||this._defaults.dateFormat;settings=settings||{};var dayNamesShort=settings.dayNamesShort||this._defaults.dayNamesShort;var dayNames=settings.dayNames||this._defaults.dayNames;var monthNamesShort=settings.monthNamesShort||this._defaults.monthNamesShort;var monthNames=settings.monthNamesDisplay||this._defaults.monthNamesDisplay;var calculateWeek=settings.calculateWeek||this._defaults.calculateWeek;var doubled=function(match,step){var matches=1;while(iFormat+matches<format.length&&format.charAt(iFormat+matches)==match){matches++}iFormat+=matches-1;return Math.floor(matches/(step||1))>1};var formatNumber=function(match,value,len,step){var num=""+value;if(doubled(match,step)){while(num.length<len){num="0"+num}}return num};var formatName=function(match,value,shortNames,longNames){return(doubled(match)?longNames[value]:shortNames[value])};var output="";var literal=false;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!doubled("'")){literal=false}else{output+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":output+=formatNumber("d",date.getDate(),2);break;case"D":output+=formatName("D",date.getDay(),dayNamesShort,dayNames);break;case"o":output+=formatNumber("o",this.dayOfYear(date),3);break;case"w":output+=formatNumber("w",calculateWeek(date),2);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(doubled("y",2)?date.getFullYear():(date.getFullYear()%100<10?"0":"")+date.getFullYear()%100);break;case"@":output+=Math.floor(date.getTime()/1000);break;case"!":output+=date.getTime()*10000+this._ticksTo1970;break;case"'":if(doubled("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}return output},parseDate:function(format,value,settings){if(value==null){throw"Invalid arguments"}value=(typeof value=="object"?value.toString():value+"");if(value==""){return null}format=format||this._defaults.dateFormat;settings=settings||{};var shortYearCutoff=settings.shortYearCutoff||this._defaults.shortYearCutoff;shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:this.today().getFullYear()%100+parseInt(shortYearCutoff,10));var dayNamesShort=settings.dayNamesShort||this._defaults.dayNamesShort;var dayNames=settings.dayNames||this._defaults.dayNames;var monthNamesShort=settings.monthNamesShort||this._defaults.monthNamesShort;var monthNames=settings.monthNamesDisplay||this._defaults.monthNamesDisplay;var year=-1;var month=-1;var day=-1;var doy=-1;var shortYear=false;var literal=false;var doubled=function(match,step){var matches=1;while(iFormat+matches<format.length&&format.charAt(iFormat+matches)==match){matches++}iFormat+=matches-1;return Math.floor(matches/(step||1))>1};var getNumber=function(match,step){var isDoubled=doubled(match,step);var size=[2,3,isDoubled?4:2,11,20]["oy@!".indexOf(match)+1];var digits=new RegExp("^-?\\d{1,"+size+"}");var num=value.substring(iValue).match(digits);if(!num){throw"Missing number at position {0}".replace(/\{0\}/,iValue)}iValue+=num[0].length;return parseInt(num[0],10)};var getName=function(match,shortNames,longNames,step){var names=(doubled(match,step)?longNames:shortNames);for(var i=0;i<names.length;i++){if(value.substr(iValue,names[i].length)==names[i]){iValue+=names[i].length;return i+1}}throw"Unknown name at position {0}".replace(/\{0\}/,iValue)};var checkLiteral=function(){if(value.charAt(iValue)!=format.charAt(iFormat)){throw"Unexpected literal at position {0}".replace(/\{0\}/,iValue)}iValue++};var iValue=0;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!doubled("'")){literal=false}else{checkLiteral()}}else{switch(format.charAt(iFormat)){case"d":day=getNumber("d");break;case"D":getName("D",dayNamesShort,dayNames);break;case"o":doy=getNumber("o");break;case"w":getNumber("w");break;case"m":month=getNumber("m");break;case"M":month=getName("M",monthNamesShort,monthNames);break;case"y":var iSave=iFormat;shortYear=!doubled("y",2);iFormat=iSave;year=getNumber("y",2);break;case"@":var date=this._normaliseDate(new Date(getNumber("@")*1000));year=date.getFullYear();month=date.getMonth()+1;day=date.getDate();break;case"!":var date=this._normaliseDate(new Date((getNumber("!")-this._ticksTo1970)/10000));year=date.getFullYear();month=date.getMonth()+1;day=date.getDate();break;case"*":iValue=value.length;break;case"'":if(doubled("'")){checkLiteral()}else{literal=true}break;default:checkLiteral()}}}if(iValue<value.length){throw"Additional text found at end"}if(year==-1){year=this.today().getFullYear()}else{if(year<100&&shortYear){year+=(shortYearCutoff==-1?1900:this.today().getFullYear()-this.today().getFullYear()%100-(year<=shortYearCutoff?0:100))}}if(doy>-1){month=1;day=doy;for(var dim=this.daysInMonth(year,month);day>dim;dim=this.daysInMonth(year,month)){month++;day-=dim}}var date=this.newDate(year,month,day);if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},determineDate:function(dateSpec,defaultDate,currentDate,dateFormat,settings){if(currentDate&&typeof currentDate!="object"){settings=dateFormat;dateFormat=currentDate;currentDate=null}if(typeof dateFormat!="string"){settings=dateFormat;dateFormat=""}var offsetString=function(offset){try{return $.datepick.parseDate(dateFormat,offset,settings)}catch(e){}offset=offset.toLowerCase();var date=(offset.match(/^c/)&&currentDate?$.datepick.newDate(currentDate):null)||$.datepick.today();var pattern=/([+-]?[0-9]+)\s*(d|w|m|y)?/g;var matches=pattern.exec(offset);while(matches){date=$.datepick.add(date,parseInt(matches[1],10),matches[2]||"d");matches=pattern.exec(offset)}return date};defaultDate=(defaultDate?$.datepick.newDate(defaultDate):null);dateSpec=(dateSpec==null?defaultDate:(typeof dateSpec=="string"?offsetString(dateSpec):(typeof dateSpec=="number"?(isNaN(dateSpec)||dateSpec==Infinity||dateSpec==-Infinity?defaultDate:$.datepick.add($.datepick.today(),dateSpec,"d")):$.datepick.newDate(dateSpec))));return dateSpec},daysInMonth:function(year,month){month=(year.getFullYear?year.getMonth()+1:month);year=(year.getFullYear?year.getFullYear():year);return this.newDate(year,month+1,0).getDate()},dayOfYear:function(year,month,day){var date=(year.getFullYear?year:this.newDate(year,month,day));var newYear=this.newDate(date.getFullYear(),1,1);return Math.floor((date.getTime()-newYear.getTime())/this._msPerDay)+1},iso8601Week:function(year,month,day){var checkDate=(year.getFullYear?new Date(year.getTime()):this.newDate(year,month,day));checkDate.setDate(checkDate.getDate()+4-(checkDate.getDay()||7));var time=checkDate.getTime();checkDate.setMonth(0,1);return Math.floor(Math.round((time-checkDate)/86400000)/7)+1},today:function(){return this._normaliseDate(new Date())},newDate:function(year,month,day){return(!year?null:(year.getFullYear?this._normaliseDate(new Date(year.getTime())):new Date(year,month-1,day,12)))},_normaliseDate:function(date){if(date){date.setHours(12,0,0,0)}return date},year:function(date,year){date.setFullYear(year);return this._normaliseDate(date)},month:function(date,month){date.setMonth(month-1);return this._normaliseDate(date)},day:function(date,day){date.setDate(day);return this._normaliseDate(date)},add:function(date,amount,period){if(period=="d"||period=="w"){this._normaliseDate(date);date.setDate(date.getDate()+amount*(period=="w"?7:1))}else{var year=date.getFullYear()+(period=="y"?amount:0);var month=date.getMonth()+(period=="m"?amount:0);date.setTime($.datepick.newDate(year,month+1,Math.min(date.getDate(),this.daysInMonth(year,month+1))).getTime())}return date},_applyMonthsOffset:function(date,inst){var monthsOffset=inst.get("monthsOffset");if($.isFunction(monthsOffset)){monthsOffset=monthsOffset.apply(inst.target[0],[date])}return $.datepick.add(date,-monthsOffset,"m")},_attachPicker:function(target,settings){target=$(target);if(target.hasClass(this.markerClass)){return}target.addClass(this.markerClass);var inst={target:target,selectedDates:[],drawDate:null,pickingRange:false,inline:($.inArray(target[0].nodeName.toLowerCase(),["div","span"])>-1),get:function(name){var value=this.settings[name]!==undefined?this.settings[name]:$.datepick._defaults[name];if($.inArray(name,["defaultDate","minDate","maxDate"])>-1){value=$.datepick.determineDate(value,null,this.selectedDates[0],this.get("dateFormat"),inst.getConfig())}return value},curMinDate:function(){return(this.pickingRange?this.selectedDates[0]:this.get("minDate"))},getConfig:function(){return{dayNamesShort:this.get("dayNamesShort"),dayNames:this.get("dayNames"),monthNamesShort:this.get("monthNamesShort"),monthNames:this.get("monthNames"),calculateWeek:this.get("calculateWeek"),shortYearCutoff:this.get("shortYearCutoff")}}};$.data(target[0],this.dataName,inst);var inlineSettings=($.fn.metadata?target.metadata():{});inst.settings=$.extend({},settings||{},inlineSettings||{});if(inst.inline){inst.drawDate=$.datepick._checkMinMax($.datepick.newDate(inst.selectedDates[0]||inst.get("defaultDate")||$.datepick.today()),inst);inst.prevDate=$.datepick.newDate(inst.drawDate);this._update(target[0]);if($.fn.mousewheel){target.mousewheel(this._doMouseWheel)}}else{this._attachments(target,inst);target.bind("keydown."+this.dataName,this._keyDown).bind("keypress."+this.dataName,this._keyPress).bind("keyup."+this.dataName,this._keyUp);if(target.attr("disabled")){this.disable(target[0])}}},options:function(target,name){var inst=$.data(target,this.dataName);return(inst?(name?(name=="all"?inst.settings:inst.settings[name]):$.datepick._defaults):{})},option:function(target,settings,value){target=$(target);if(!target.hasClass(this.markerClass)){return}settings=settings||{};if(typeof settings=="string"){var name=settings;settings={};settings[name]=value}var inst=$.data(target[0],this.dataName);var dates=inst.selectedDates;extendRemove(inst.settings,settings);this.setDate(target[0],dates,null,false,true);inst.pickingRange=false;inst.drawDate=$.datepick.newDate(this._checkMinMax((settings.defaultDate?inst.get("defaultDate"):inst.drawDate)||inst.get("defaultDate")||$.datepick.today(),inst));if(!inst.inline){this._attachments(target,inst)}if(inst.inline||inst.div){this._update(target[0])}},_attachments:function(target,inst){target.unbind("focus."+this.dataName);if(inst.get("showOnFocus")){target.bind("focus."+this.dataName,this.show)}if(inst.trigger){inst.trigger.remove()}var trigger=inst.get("showTrigger");inst.trigger=(!trigger?$([]):$(trigger).clone().removeAttr("id").addClass(this._triggerClass)[inst.get("isRTL")?"insertBefore":"insertAfter"](target).click(function(){if(!$.datepick.isDisabled(target[0])){$.datepick[$.datepick.curInst==inst?"hide":"show"](target[0])}}));this._autoSize(target,inst);var dates=inst.selectedDates;if(dates){this.setDate(target[0],dates,null,true)}if(inst.get("selectDefaultDate")&&inst.get("defaultDate")&&inst.selectedDates.length==0){this.setDate(target[0],$.datepick.newDate(inst.get("defaultDate")||$.datepick.today()))}},_autoSize:function(target,inst){if(inst.get("autoSize")&&!inst.inline){var date=$.datepick.newDate(2009,10,20);var dateFormat=inst.get("dateFormat");if(dateFormat.match(/[DM]/)){var findMax=function(names){var max=0;var maxI=0;for(var i=0;i<names.length;i++){if(names[i].length>max){max=names[i].length;maxI=i}}return maxI};date.setMonth(findMax(inst.get(dateFormat.match(/MM/)?"monthNames":"monthNamesShort")));date.setDate(findMax(inst.get(dateFormat.match(/DD/)?"dayNames":"dayNamesShort"))+20-date.getDay())}inst.target.attr("size",$.datepick.formatDate(dateFormat,date,inst.getConfig()).length)}},destroy:function(target){target=$(target);if(!target.hasClass(this.markerClass)){return}var inst=$.data(target[0],this.dataName);if(inst.trigger){inst.trigger.remove()}target.removeClass(this.markerClass).empty().unbind("."+this.dataName);if(inst.inline&&$.fn.mousewheel){target.unmousewheel()}if(!inst.inline&&inst.get("autoSize")){target.removeAttr("size")}$.removeData(target[0],this.dataName)},multipleEvents:function(fns){var funcs=arguments;return function(args){for(var i=0;i<funcs.length;i++){funcs[i].apply(this,arguments)}}},enable:function(target){var $target=$(target);if(!$target.hasClass(this.markerClass)){return}var inst=$.data(target,this.dataName);if(inst.inline){$target.children("."+this._disableClass).remove().end().find("button,select").attr("disabled","").end().find("a").attr("href","javascript:void(0)")}else{target.disabled=false;inst.trigger.filter("button."+this._triggerClass).attr("disabled","").end().filter("img."+this._triggerClass).css({opacity:"1.0",cursor:""})}this._disabled=$.map(this._disabled,function(value){return(value==target?null:value)})},disable:function(target){var $target=$(target);if(!$target.hasClass(this.markerClass)){return}var inst=$.data(target,this.dataName);if(inst.inline){var inline=$target.children(":last");var offset=inline.offset();var relOffset={left:0,top:0};inline.parents().each(function(){if($(this).css("position")=="relative"){relOffset=$(this).offset();return false}});var zIndex=$target.css("zIndex");zIndex=(zIndex=="auto"?0:parseInt(zIndex,10))+1;$target.prepend('<div class="'+this._disableClass+'" style="width: '+inline.outerWidth()+"px; height: "+inline.outerHeight()+"px; left: "+(offset.left-relOffset.left)+"px; top: "+(offset.top-relOffset.top)+"px; z-index: "+zIndex+'"></div>').find("button,select").attr("disabled","disabled").end().find("a").removeAttr("href")}else{target.disabled=true;inst.trigger.filter("button."+this._triggerClass).attr("disabled","disabled").end().filter("img."+this._triggerClass).css({opacity:"0.5",cursor:"default"})}this._disabled=$.map(this._disabled,function(value){return(value==target?null:value)});this._disabled.push(target)},isDisabled:function(target){return(target&&$.inArray(target,this._disabled)>-1)},show:function(target){target=target.target||target;var inst=$.data(target,$.datepick.dataName);if($.datepick.curInst==inst){return}if($.datepick.curInst){$.datepick.hide($.datepick.curInst,true)}if(inst){inst.lastVal=null;inst.pickingRange=false;inst.drawDate=$.datepick._checkMinMax($.datepick.newDate(inst.selectedDates[0]||inst.get("defaultDate")||$.datepick.today()),inst);inst.prevDate=$.datepick.newDate(inst.drawDate);$.datepick.curInst=inst;$.datepick._update(target,true);var offset=$.datepick._checkOffset(inst);inst.div.css({left:offset.left,top:offset.top});var showAnim=inst.get("showAnim");var showSpeed=inst.get("showSpeed");showSpeed=(showSpeed=="normal"&&$.ui&&$.ui.version>="1.8"?"_default":showSpeed);var postProcess=function(){var cover=inst.div.find("."+$.datepick._coverClass);if(cover.length){var borders=$.datepick._getBorders(inst.div);cover.css({left:-borders[0],top:-borders[1],width:inst.div.outerWidth()+borders[0],height:inst.div.outerHeight()+borders[1]})}};if($.effects&&$.effects[showAnim]){var data=inst.div.data();for(var key in data){if(key.match(/^ec\.storage\./)){data[key]=inst._mainDiv.css(key.replace(/ec\.storage\./,""))}}inst.div.data(data).show(showAnim,inst.get("showOptions"),showSpeed,postProcess)}else{inst.div[showAnim||"show"]((showAnim?showSpeed:""),postProcess)}if(!showAnim){postProcess()}}},_extractDates:function(inst,datesText){if(datesText==inst.lastVal){return}inst.lastVal=datesText;var dateFormat=inst.get("dateFormat");var multiSelect=inst.get("multiSelect");var rangeSelect=inst.get("rangeSelect");datesText=datesText.split(multiSelect?inst.get("multiSeparator"):(rangeSelect?inst.get("rangeSeparator"):"\x00"));var dates=[];for(var i=0;i<datesText.length;i++){try{var date=$.datepick.parseDate(dateFormat,datesText[i],inst.getConfig());if(date){var found=false;for(var j=0;j<dates.length;j++){if(dates[j].getTime()==date.getTime()){found=true;break}}if(!found){dates.push(date)}}}catch(e){}}dates.splice(multiSelect||(rangeSelect?2:1),dates.length);if(rangeSelect&&dates.length==1){dates[1]=dates[0]}return dates},_update:function(target,hidden){target=$(target.target||target);var inst=$.data(target[0],$.datepick.dataName);if(inst){if(inst.inline||$.datepick.curInst==inst){var onChange=inst.get("onChangeMonthYear");if(onChange&&(!inst.prevDate||inst.prevDate.getFullYear()!=inst.drawDate.getFullYear()||inst.prevDate.getMonth()!=inst.drawDate.getMonth())){onChange.apply(target[0],[inst.drawDate.getFullYear(),inst.drawDate.getMonth()+1])}}if(inst.inline){target.html(this._generateContent(target[0],inst))}else{if($.datepick.curInst==inst){if(!inst.div){inst.div=$("<div></div>").addClass(this._popupClass).css({display:(hidden?"none":"static"),position:"absolute",left:target.offset().left,top:target.offset().top+target.outerHeight()}).appendTo($(inst.get("popupContainer")||"body"));if($.fn.mousewheel){inst.div.mousewheel(this._doMouseWheel)}}inst.div.html(this._generateContent(target[0],inst));target.focus()}}}},_updateInput:function(target,keyUp){var inst=$.data(target,this.dataName);if(inst){var value="";var altValue="";var sep=(inst.get("multiSelect")?inst.get("multiSeparator"):inst.get("rangeSeparator"));var dateFormat=inst.get("dateFormat");var altFormat=inst.get("altFormat")||dateFormat;for(var i=0;i<inst.selectedDates.length;i++){value+=(keyUp?"":(i>0?sep:"")+$.datepick.formatDate(dateFormat,inst.selectedDates[i],inst.getConfig()));altValue+=(i>0?sep:"")+$.datepick.formatDate(altFormat,inst.selectedDates[i],inst.getConfig())}if(!inst.inline&&!keyUp){$(target).val(value)}$(inst.get("altField")).val(altValue);var onSelect=inst.get("onSelect");if(onSelect&&!keyUp&&!inst.inSelect){inst.inSelect=true;onSelect.apply(target,[inst.selectedDates]);inst.inSelect=false}}},_getBorders:function(elem){var convert=function(value){var extra=($.browser.msie?1:0);return{thin:1+extra,medium:3+extra,thick:5+extra}[value]||value};return[parseFloat(convert(elem.css("border-left-width"))),parseFloat(convert(elem.css("border-top-width")))]},_checkOffset:function(inst){var base=(inst.target.is(":hidden")&&inst.trigger?inst.trigger:inst.target);var offset=base.offset();var isFixed=false;$(inst.target).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){offset.left-=document.documentElement.scrollLeft;offset.top-=document.documentElement.scrollTop}var browserWidth=(!$.browser.mozilla||document.doctype?document.documentElement.clientWidth:0)||document.body.clientWidth;var browserHeight=(!$.browser.mozilla||document.doctype?document.documentElement.clientHeight:0)||document.body.clientHeight;if(browserWidth==0){return offset}var alignment=inst.get("alignment");var isRTL=inst.get("isRTL");var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;var above=offset.top-inst.div.outerHeight()-(isFixed&&$.browser.opera?document.documentElement.scrollTop:0);var below=offset.top+base.outerHeight();var alignL=offset.left;var alignR=offset.left+base.outerWidth()-inst.div.outerWidth()-(isFixed&&$.browser.opera?document.documentElement.scrollLeft:0);var tooWide=(offset.left+inst.div.outerWidth()-scrollX)>browserWidth;var tooHigh=(offset.top+inst.target.outerHeight()+inst.div.outerHeight()-scrollY)>browserHeight;if(alignment=="topLeft"){offset={left:alignL,top:above}}else{if(alignment=="topRight"){offset={left:alignR,top:above}}else{if(alignment=="bottomLeft"){offset={left:alignL,top:below}}else{if(alignment=="bottomRight"){offset={left:alignR,top:below}}else{if(alignment=="top"){offset={left:(isRTL||tooWide?alignR:alignL),top:above}}else{if(alignment=="rightTop"){offset={left:offset.left+base.outerWidth(),top:offset.top}}else{offset={left:(isRTL||tooWide?alignR:alignL),top:below}}}}}}}offset.left=Math.max((isFixed?0:scrollX),offset.left-(isFixed?scrollX:0));offset.top=Math.max((isFixed?0:scrollY),offset.top-(isFixed?scrollY:0));return offset},_checkExternalClick:function(event){if(!$.datepick.curInst){return}var target=$(event.target);if(!target.parents().andSelf().hasClass($.datepick._popupClass)&&!target.hasClass($.datepick.markerClass)&&!target.parents().andSelf().hasClass($.datepick._triggerClass)){$.datepick.hide($.datepick.curInst)}},hide:function(target,immediate){var inst=$.data(target,this.dataName)||target;if(inst&&inst==$.datepick.curInst){var showAnim=(immediate?"":inst.get("showAnim"));var showSpeed=inst.get("showSpeed");showSpeed=(showSpeed=="normal"&&$.ui&&$.ui.version>="1.8"?"_default":showSpeed);var postProcess=function(){inst.div.remove();inst.div=null;$.datepick.curInst=null;var onClose=inst.get("onClose");if(onClose){onClose.apply(target,[inst.selectedDates])}};inst.div.stop();if($.effects&&$.effects[showAnim]){inst.div.hide(showAnim,inst.get("showOptions"),showSpeed,postProcess)}else{var hideAnim=(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide"));inst.div[hideAnim]((showAnim?showSpeed:""),postProcess)}if(!showAnim){postProcess()}}},_keyDown:function(event){var target=event.target;var inst=$.data(target,$.datepick.dataName);var handled=false;if(inst.div){if(event.keyCode==9){$.datepick.hide(target)}else{if(event.keyCode==13){$.datepick.selectDate(target,$("a."+inst.get("renderer").highlightedClass,inst.div)[0]);handled=true}else{var commands=inst.get("commands");for(var name in commands){var command=commands[name];if(command.keystroke.keyCode==event.keyCode&&!!command.keystroke.ctrlKey==!!(event.ctrlKey||event.metaKey)&&!!command.keystroke.altKey==event.altKey&&!!command.keystroke.shiftKey==event.shiftKey){$.datepick.performAction(target,name);handled=true;break}}}}}else{var command=inst.get("commands").current;if(command.keystroke.keyCode==event.keyCode&&!!command.keystroke.ctrlKey==!!(event.ctrlKey||event.metaKey)&&!!command.keystroke.altKey==event.altKey&&!!command.keystroke.shiftKey==event.shiftKey){$.datepick.show(target);handled=true}}inst.ctrlKey=((event.keyCode<48&&event.keyCode!=32)||event.ctrlKey||event.metaKey);if(handled){event.preventDefault();event.stopPropagation()}return !handled},_keyPress:function(event){event.preventDefault();return false;var target=event.target;var inst=$.data(target,$.datepick.dataName);if(inst&&inst.get("constrainInput")){var ch=String.fromCharCode(event.keyCode||event.charCode);var allowedChars=$.datepick._allowedChars(inst);return(event.metaKey||inst.ctrlKey||ch<" "||!allowedChars||allowedChars.indexOf(ch)>-1)}return true},_allowedChars:function(inst){var dateFormat=inst.get("dateFormat");var allowedChars=(inst.get("multiSelect")?inst.get("multiSeparator"):(inst.get("rangeSelect")?inst.get("rangeSeparator"):""));var literal=false;var hasNum=false;for(var i=0;i<dateFormat.length;i++){var ch=dateFormat.charAt(i);if(literal){if(ch=="'"&&dateFormat.charAt(i+1)!="'"){literal=false}else{allowedChars+=ch}}else{switch(ch){case"d":case"m":case"o":case"w":allowedChars+=(hasNum?"":"0123456789");hasNum=true;break;case"y":case"@":case"!":allowedChars+=(hasNum?"":"0123456789")+"-";hasNum=true;break;case"J":allowedChars+=(hasNum?"":"0123456789")+"-.";hasNum=true;break;case"D":case"M":case"Y":return null;case"'":if(dateFormat.charAt(i+1)=="'"){allowedChars+="'"}else{literal=true}break;default:allowedChars+=ch}}}return allowedChars},_keyUp:function(event){var target=event.target;var inst=$.data(target,$.datepick.dataName);if(inst&&!inst.ctrlKey&&inst.lastVal!=inst.target.val()){try{var dates=$.datepick._extractDates(inst,inst.target.val());if(dates.length>0){$.datepick.setDate(target,dates,null,true)}}catch(event){}}return true},_doMouseWheel:function(event,delta){var target=($.datepick.curInst&&$.datepick.curInst.target[0])||$(event.target).closest("."+$.datepick.markerClass)[0];if($.datepick.isDisabled(target)){return}var inst=$.data(target,$.datepick.dataName);if(inst.get("useMouseWheel")){delta=($.browser.opera?-delta:delta);delta=(delta<0?-1:+1);$.datepick.changeMonth(target,-inst.get(event.ctrlKey?"monthsToJump":"monthsToStep")*delta)}event.preventDefault()},clear:function(target){var inst=$.data(target,this.dataName);if(inst){inst.selectedDates=[];this.hide(target);if(inst.get("selectDefaultDate")&&inst.get("defaultDate")){this.setDate(target,$.datepick.newDate(inst.get("defaultDate")||$.datepick.today()))}else{this._updateInput(target)}var onClear=inst.get("onClear");if(onClear){onClear.apply(target)}}},getDate:function(target){var inst=$.data(target,this.dataName);return(inst?inst.selectedDates:[])},setDate:function(target,dates,endDate,keyUp,setOpt){var inst=$.data(target,this.dataName);if(inst){if(!$.isArray(dates)){dates=[dates];if(endDate){dates.push(endDate)}}var dateFormat=inst.get("dateFormat");var minDate=inst.get("minDate");var maxDate=inst.get("maxDate");var curDate=inst.selectedDates[0];inst.selectedDates=[];for(var i=0;i<dates.length;i++){var date=$.datepick.determineDate(dates[i],null,curDate,dateFormat,inst.getConfig());if(date){if((!minDate||date.getTime()>=minDate.getTime())&&(!maxDate||date.getTime()<=maxDate.getTime())){var found=false;for(var j=0;j<inst.selectedDates.length;j++){if(inst.selectedDates[j].getTime()==date.getTime()){found=true;break}}if(!found){inst.selectedDates.push(date)}}}}var rangeSelect=inst.get("rangeSelect");inst.selectedDates.splice(inst.get("multiSelect")||(rangeSelect?2:1),inst.selectedDates.length);if(rangeSelect){switch(inst.selectedDates.length){case 1:inst.selectedDates[1]=inst.selectedDates[0];break;case 2:inst.selectedDates[1]=(inst.selectedDates[0].getTime()>inst.selectedDates[1].getTime()?inst.selectedDates[0]:inst.selectedDates[1]);break}inst.pickingRange=false}inst.prevDate=(inst.drawDate?$.datepick.newDate(inst.drawDate):null);inst.drawDate=this._checkMinMax($.datepick.newDate(inst.selectedDates[0]||inst.get("defaultDate")||$.datepick.today()),inst);if(!setOpt){this._update(target);this._updateInput(target,keyUp)}}},isSelectable:function(target,date){var inst=$.data(target,this.dataName);if(!inst){return false}date=$.datepick.determineDate(date,inst.selectedDates[0]||this.today(),null,inst.get("dateFormat"),inst.getConfig());return this._isSelectable(target,date,inst.get("onDate"),inst.get("minDate"),inst.get("maxDate"))},_isSelectable:function(target,date,onDate,minDate,maxDate){var dateInfo=(typeof onDate=="boolean"?{selectable:onDate}:(!onDate?{}:onDate.apply(target,[date,true])));return(dateInfo.selectable!=false)&&(!minDate||date.getTime()>=minDate.getTime())&&(!maxDate||date.getTime()<=maxDate.getTime())},performAction:function(target,action){var inst=$.data(target,this.dataName);if(inst&&!this.isDisabled(target)){var commands=inst.get("commands");if(commands[action]&&commands[action].enabled.apply(target,[inst])){commands[action].action.apply(target,[inst])}}},showMonth:function(target,year,month,day){var inst=$.data(target,this.dataName);if(inst&&(day!=null||(inst.drawDate.getFullYear()!=year||inst.drawDate.getMonth()+1!=month))){inst.prevDate=$.datepick.newDate(inst.drawDate);var show=this._checkMinMax((year!=null?$.datepick.newDate(year,month,1):$.datepick.today()),inst);inst.drawDate=$.datepick.newDate(show.getFullYear(),show.getMonth()+1,(day!=null?day:Math.min(inst.drawDate.getDate(),$.datepick.daysInMonth(show.getFullYear(),show.getMonth()+1))));this._update(target)}},changeMonth:function(target,offset){var inst=$.data(target,this.dataName);if(inst){var date=$.datepick.add($.datepick.newDate(inst.drawDate),offset,"m");this.showMonth(target,date.getFullYear(),date.getMonth()+1)}},changeDay:function(target,offset){var inst=$.data(target,this.dataName);if(inst){var date=$.datepick.add($.datepick.newDate(inst.drawDate),offset,"d");this.showMonth(target,date.getFullYear(),date.getMonth()+1,date.getDate())}},_checkMinMax:function(date,inst){var minDate=inst.get("minDate");var maxDate=inst.get("maxDate");date=(minDate&&date.getTime()<minDate.getTime()?$.datepick.newDate(minDate):date);date=(maxDate&&date.getTime()>maxDate.getTime()?$.datepick.newDate(maxDate):date);return date},retrieveDate:function(target,elem){var inst=$.data(target,this.dataName);return(!inst?null:this._normaliseDate(new Date(parseInt(elem.className.replace(/^.*dp(-?\d+).*$/,"$1"),10))))},selectDate:function(target,elem){var inst=$.data(target,this.dataName);if(inst&&!this.isDisabled(target)){var date=this.retrieveDate(target,elem);var multiSelect=inst.get("multiSelect");var rangeSelect=inst.get("rangeSelect");if(multiSelect){var found=false;for(var i=0;i<inst.selectedDates.length;i++){if(date.getTime()==inst.selectedDates[i].getTime()){inst.selectedDates.splice(i,1);found=true;break}}if(!found&&inst.selectedDates.length<multiSelect){inst.selectedDates.push(date)}}else{if(rangeSelect){if(inst.pickingRange){inst.selectedDates[1]=date}else{inst.selectedDates=[date,date]}inst.pickingRange=!inst.pickingRange}else{inst.selectedDates=[date]}}inst.prevDate=$.datepick.newDate(date);this._updateInput(target);if(inst.inline||inst.pickingRange||inst.selectedDates.length<(multiSelect||(rangeSelect?2:1))){this._update(target)}else{this.hide(target)}}},_generateContent:function(target,inst){var renderer=inst.get("renderer");var monthsToShow=inst.get("monthsToShow");monthsToShow=($.isArray(monthsToShow)?monthsToShow:[1,monthsToShow]);inst.drawDate=this._checkMinMax(inst.drawDate||inst.get("defaultDate")||$.datepick.today(),inst);var drawDate=$.datepick._applyMonthsOffset($.datepick.newDate(inst.drawDate),inst);var monthRows="";for(var row=0;row<monthsToShow[0];row++){var months="";for(var col=0;col<monthsToShow[1];col++){months+=this._generateMonth(target,inst,drawDate.getFullYear(),drawDate.getMonth()+1,renderer,(row==0&&col==0));$.datepick.add(drawDate,1,"m")}monthRows+=this._prepare(renderer.monthRow,inst).replace(/\{months\}/,months)}var picker=this._prepare(renderer.picker,inst).replace(/\{months\}/,monthRows).replace(/\{weekHeader\}/g,this._generateDayHeaders(inst,renderer))+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'<iframe src="javascript:void(0);" class="'+this._coverClass+'"></iframe>':"");var commands=inst.get("commands");var asDateFormat=inst.get("commandsAsDateFormat");var addCommand=function(type,open,close,name,classes){if(picker.indexOf("{"+type+":"+name+"}")==-1){return}var command=commands[name];var date=(asDateFormat?command.date.apply(target,[inst]):null);picker=picker.replace(new RegExp("\\{"+type+":"+name+"\\}","g"),"<"+open+(command.status?' title="'+inst.get(command.status)+'"':"")+' class="'+renderer.commandClass+" "+renderer.commandClass+"-"+name+" "+classes+(command.enabled(inst)?"":" "+renderer.disabledClass)+'">'+(date?$.datepick.formatDate(inst.get(command.text),date,inst.getConfig()):inst.get(command.text))+"</"+close+">")};for(var name in commands){addCommand("button",'button type="button"',"button",name,renderer.commandButtonClass);addCommand("link",'a href="javascript:void(0)"',"a",name,renderer.commandLinkClass)}picker=picker.replace(new RegExp("\\{link:title\\}","g"),'<span class="datepick-title">'+inst.get("title")+"</span>");picker=$(picker);if(monthsToShow[1]>1){var count=0;$(renderer.monthSelector,picker).each(function(){var nth=++count%monthsToShow[1];$(this).addClass(nth==1?"first":(nth==0?"last":""))})}var self=this;picker.find(renderer.daySelector+" a").hover(function(){var aList=(inst.inline?$(this).parents("."+self.markerClass):inst.div).find(renderer.daySelector+" a");var sList=(inst.inline?$(this).parents("."+self.markerClass):inst.div).find(renderer.daySelector+" span");if(!inst.pickingRange){aList.removeClass(renderer.highlightedClass);sList.removeClass(renderer.highlightedClass)}$(this).addClass(renderer.highlightedClass);if(inst.pickingRange){var curTs=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);var firstTs=inst.selectedDates[0].getTime();$.each(aList,function(){var ts=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);if(firstTs<ts&&ts<curTs){$(this).addClass(renderer.selectedClass)}})}var anchorDirection=inst.get("anchorDirection");var anchorDate=inst.get("anchorDate");if(anchorDirection&&anchorDate){aList.removeClass(renderer.anchorHighlightedClass);var firstTs=anchorDate.getTime();var curTs=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);var selTs=inst.selectedDates[0]?inst.selectedDates[0].getTime():null;if(anchorDirection=="right"){$.each(aList,function(){var ts=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);if(firstTs<=ts&&ts<=curTs){$(this).addClass(renderer.anchorHighlightedClass)}});$.each(sList,function(){var ts=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);if(firstTs==ts){$(this).addClass(renderer.anchorHighlightedClass)}})}if(anchorDirection=="left"){$.each(aList,function(){var ts=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);if(firstTs>=ts&&ts>=curTs){$(this).addClass(renderer.anchorHighlightedClass)}})}}},function(){var aList=(inst.inline?$(this).parents("."+self.markerClass):inst.div).find(renderer.daySelector+" a, span");aList.removeClass(renderer.highlightedClass);aList.removeClass(renderer.anchorHighlightedClass);var firstTs=inst.selectedDates[0]?inst.selectedDates[0].getTime():0;if(inst.pickingRange){$.each(aList,function(){var ts=parseInt(this.className.replace(/^.*dp(-?\d+).*$/,"$1"),10);if(firstTs!=ts){$(this).removeClass(renderer.selectedClass)}})}}).click(function(){self.selectDate(target,this)}).end().find("select."+this._monthYearClass+":not(."+this._anyYearClass+")").change(function(){var monthYear=$(this).val().split("/");self.showMonth(target,parseInt(monthYear[1],10),parseInt(monthYear[0],10))}).end().find("select."+this._monthMonthClass+":not(."+this._anyYearClass+")").change(function(){var monthYear=$(this).val().split("/");self.showMonth(target,parseInt(monthYear[1],10),parseInt(monthYear[0],10))}).end().find("select."+this._anyYearClass).click(function(){$(this).css("visibility","hidden").next("input").css({left:this.offsetLeft,top:this.offsetTop,width:this.offsetWidth,height:this.offsetHeight}).show().focus()}).end().find("input."+self._monthYearClass).change(function(){try{var year=parseInt($(this).val(),10);year=(isNaN(year)?inst.drawDate.getFullYear():year);self.showMonth(target,year,inst.drawDate.getMonth()+1,inst.drawDate.getDate())}catch(e){alert(e)}}).keydown(function(event){if(event.keyCode==13){$(event.target).change()}else{if(event.keyCode==27){$(event.target).hide().prev("select").css("visibility","visible");inst.target.focus()}}});picker.find("."+renderer.commandClass).click(function(){if(!$(this).hasClass(renderer.disabledClass)){var action=this.className.replace(new RegExp("^.*"+renderer.commandClass+"-([^ ]+).*$"),"$1");$.datepick.performAction(target,action)}});if(inst.get("isRTL")){picker.addClass(renderer.rtlClass)}if(monthsToShow[0]*monthsToShow[1]>1){picker.addClass(renderer.multiClass)}var pickerClass=inst.get("pickerClass");if(pickerClass){picker.addClass(pickerClass)}$("body").append(picker);var width=0;picker.find(renderer.monthSelector).each(function(){width+=$(this).outerWidth()});picker.width(width/monthsToShow[0]);var onShow=inst.get("onShow");if(onShow){onShow.apply(target,[picker,inst])}return picker},_generateMonth:function(target,inst,year,month,renderer,first){var daysInMonth=$.datepick.daysInMonth(year,month);var monthsToShow=inst.get("monthsToShow");monthsToShow=($.isArray(monthsToShow)?monthsToShow:[1,monthsToShow]);var fixedWeeks=inst.get("fixedWeeks")||(monthsToShow[0]*monthsToShow[1]>1);var firstDay=inst.get("firstDay");var leadDays=($.datepick.newDate(year,month,1).getDay()-firstDay+7)%7;var numWeeks=(fixedWeeks?6:Math.ceil((leadDays+daysInMonth)/7));var showOtherMonths=inst.get("showOtherMonths");var selectOtherMonths=inst.get("selectOtherMonths")&&showOtherMonths;var dayStatus=inst.get("dayStatus");var minDate=(inst.pickingRange?inst.selectedDates[0]:inst.get("minDate"));var maxDate=inst.get("maxDate");var rangeSelect=inst.get("rangeSelect");var onDate=inst.get("onDate");var showWeeks=renderer.week.indexOf("{weekOfYear}")>-1;var calculateWeek=inst.get("calculateWeek");var today=$.datepick.today();var drawDate=$.datepick.newDate(year,month,1);var anchorDate=inst.get("anchorDate");$.datepick.add(drawDate,-leadDays-(fixedWeeks&&(drawDate.getDay()==firstDay)?7:0),"d");var ts=drawDate.getTime();var weeks="";for(var week=0;week<numWeeks;week++){var weekOfYear=(!showWeeks?"":'<span class="dp'+ts+'">'+(calculateWeek?calculateWeek(drawDate):0)+"</span>");var days="";for(var day=0;day<7;day++){var selected=false;if(rangeSelect&&inst.selectedDates.length>0){selected=(drawDate.getTime()>=inst.selectedDates[0]&&drawDate.getTime()<=inst.selectedDates[1])}else{for(var i=0;i<inst.selectedDates.length;i++){if(inst.selectedDates[i].getTime()==drawDate.getTime()){selected=true;break}}}var anchorPeriodSelected=false;var anchorDirection=inst.get("anchorDirection");if(anchorDirection&&anchorDate&&inst.selectedDates[0]){if(anchorDirection=="left"&&inst.selectedDates[0].getTime()<drawDate.getTime()&&drawDate.getTime()<anchorDate.getTime()){anchorPeriodSelected=true}if(anchorDirection=="right"&&inst.selectedDates[0].getTime()>drawDate.getTime()&&drawDate.getTime()>anchorDate.getTime()){anchorPeriodSelected=true}}var dateInfo=(!onDate?{}:onDate.apply(target,[drawDate,drawDate.getMonth()+1==month]));var selectable=(selectOtherMonths||drawDate.getMonth()+1==month)&&this._isSelectable(target,drawDate,dateInfo.selectable,minDate,maxDate);days+=this._prepare(renderer.day,inst).replace(/\{day\}/g,(selectable?'<a href="javascript:void(0)"':"<span")+' class="dp'+ts+" "+(dateInfo.dateClass||"")+(selected&&(selectOtherMonths||drawDate.getMonth()+1==month)?" "+renderer.selectedClass:"")+(selectable?" "+renderer.defaultClass:"")+((drawDate.getDay()||7)<6?"":" "+renderer.weekendClass)+(drawDate.getMonth()+1==month?"":" "+renderer.otherMonthClass)+(drawDate.getTime()==today.getTime()&&(drawDate.getMonth()+1)==month?" "+renderer.todayClass:"")+(anchorDate&&drawDate.getTime()==anchorDate.getTime()?" "+renderer.anchorClass:"")+(anchorPeriodSelected?" "+renderer.anchorPeriodClass:"")+'"'+(dateInfo.title||(dayStatus&&selectable)?' title="'+(dateInfo.title||$.datepick.formatDate(dayStatus,drawDate,inst.getConfig()))+'"':"")+">"+(showOtherMonths||(drawDate.getMonth()+1)==month?dateInfo.content||drawDate.getDate():"&nbsp;")+(selectable?"</a>":"</span>"));$.datepick.add(drawDate,1,"d");ts=drawDate.getTime()}weeks+=this._prepare(renderer.week,inst).replace(/\{days\}/g,days).replace(/\{weekOfYear\}/g,weekOfYear)}var monthHeader=this._prepare(renderer.month,inst).match(/\{monthHeader(:[^\}]+)?\}/);var monthNames=inst.getConfig().monthNames||this._defaults.monthNames;monthHeader=(monthHeader[0].length<=13?"MM yyyy":monthHeader[0].substring(13,monthHeader[0].length-1));monthHeader=(first?this._generateMonthSelection(inst,year,month,minDate,maxDate,monthHeader,renderer):monthNames[month-1]+" "+year);var weekHeader=this._prepare(renderer.weekHeader,inst).replace(/\{days\}/g,this._generateDayHeaders(inst,renderer));return this._prepare(renderer.month,inst).replace(/\{monthHeader(:[^\}]+)?\}/g,monthHeader).replace(/\{weekHeader\}/g,weekHeader).replace(/\{weeks\}/g,weeks)},_generateDayHeaders:function(inst,renderer){var firstDay=inst.get("firstDay");var dayNames=inst.get("dayNames");var dayNamesMin=inst.get("dayNamesMin");var header="";for(var day=0;day<7;day++){var dow=(day+firstDay)%7;header+=this._prepare(renderer.dayHeader,inst).replace(/\{day\}/g,'<span class="'+this._curDoWClass+dow+'" title="'+dayNames[dow]+'">'+dayNamesMin[dow]+"</span>")}return header},_generateMonthSelection:function(inst,year,month,minDate,maxDate,monthHeader){if(!inst.get("changeMonth")){return $.datepick.formatDate(monthHeader,$.datepick.newDate(year,month,1),inst.getConfig())}var monthNames=inst.get("monthNames"+(monthHeader.match(/mm/i)?"":"Short"));var html=monthHeader.replace(/m+/i,"\\x2E").replace(/y+/i,"\\x2F");var selector='<select class="'+this._monthMonthClass+'" title="'+inst.get("monthStatus")+'">';var todayYear=$.datepick.today().getFullYear();var endYear=(maxDate)?maxDate.getFullYear():todayYear+1;for(var y=todayYear;y<=endYear;y++){for(var m=1;m<=12;m++){if((!minDate||$.datepick.newDate(y,m,$.datepick.daysInMonth(y,m)).getTime()>=minDate.getTime())&&(!maxDate||$.datepick.newDate(y,m,1).getTime()<=maxDate.getTime())){selector+='<option value="'+m+"/"+y+'"'+((month==m&&y==year)?' selected="selected"':"")+">"+monthNames[m-1]+" "+y+"</option>"}}}selector+="</select>";html=html.replace(/\\x2E/,selector);html=html.replace(/\\x2F/,"");return html},_prepare:function(text,inst){var replaceSection=function(type,retain){while(true){var start=text.indexOf("{"+type+":start}");if(start==-1){return}var end=text.substring(start).indexOf("{"+type+":end}");if(end>-1){text=text.substring(0,start)+(retain?text.substr(start+type.length+8,end-type.length-8):"")+text.substring(start+end+type.length+6)}}};replaceSection("inline",inst.inline);replaceSection("popup",!inst.inline);var pattern=/\{l10n:([^\}]+)\}/;var matches=null;while(matches=pattern.exec(text)){text=text.replace(matches[0],inst.get(matches[1]))}return text}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}$.fn.datepick=function(options){var otherArgs=Array.prototype.slice.call(arguments,1);if($.inArray(options,["getDate","isDisabled","isSelectable","options","retrieveDate"])>-1){return $.datepick[options].apply($.datepick,[this[0]].concat(otherArgs))}return this.each(function(){if(typeof options=="string"){$.datepick[options].apply($.datepick,[this].concat(otherArgs))}else{$.datepick._attachPicker(this,options||{})}})};$.datepick=new Datepicker();$(function(){$(document).mousedown($.datepick._checkExternalClick).resize(function(){$.datepick.hide($.datepick.curInst)})})})(jQuery);(function($){$.datepick.regional.ru={monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesDisplay:["Января","Февраля","Марта","Апреля","Мая","Июня","Июля","Августа","Сентября","Октября","Ноября","Декабря"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],dayNamesShort:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],dayNamesMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],dateFormat:"dd.mm.yyyy",firstDay:1,renderer:$.datepick.defaultRenderer,prevText:"",prevStatus:"",prevJumpText:"&#x3c;&#x3c;",prevJumpStatus:"",nextText:"",nextStatus:"",nextJumpText:"&#x3e;&#x3e;",nextJumpStatus:"",currentText:"",currentStatus:"",todayText:"",todayStatus:"",clearText:"очистить даты",clearStatus:"",closeText:"",closeStatus:"",yearStatus:"",monthStatus:"",weekText:"Не",weekStatus:"",dayStatus:"D, M d",defaultStatus:"",isRTL:false};$.datepick.setDefaults($.datepick.regional.ru)})(jQuery);
/* http://keith-wood.name/datetimeEntry.html
Date and time entry for jQuery v1.0.0.
Written by Keith Wood (kbwood{at}iinet.com.au) September 2010.
Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and 
MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses. 
Please attribute the author if you use it. */
(function($){function DatetimeEntry(){this._disabledInputs=[];this.regional=[];this.regional[""]={datetimeFormat:"O/D/Y H:Ma",datetimeSeparators:".",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"],ampmNames:["AM","PM"],spinnerTexts:["Today","Previous field","Next field","Increment","Decrement"],isRTL:false};this._defaults={appendText:"",initialField:0,useMouseWheel:true,shortYearCutoff:"+10",defaultDatetime:null,minDatetime:null,maxDatetime:null,minTime:null,maxTime:null,timeSteps:[1,1,1],spinnerImage:"spinnerDefault.png",spinnerSize:[20,20,8],spinnerBigImage:"",spinnerBigSize:[40,40,16],spinnerIncDecOnly:false,spinnerRepeat:[500,250],beforeShow:null,altField:null,altFormat:null};$.extend(this._defaults,this.regional[""])}var PROP_NAME="datetimeEntry";$.extend(DatetimeEntry.prototype,{markerClassName:"hasDatetimeEntry",setDefaults:function(options){extendRemove(this._defaults,options||{});return this},_connectDatetimeEntry:function(target,options){var input=$(target);if(input.hasClass(this.markerClassName)){return}var inst={};inst.options=$.extend({},options);inst._selectedYear=0;inst._selectedMonth=0;inst._selectedDay=0;inst._selectedHour=0;inst._selectedMinute=0;inst._selectedSecond=0;inst._field=0;this._decodeDatetimeFormat(inst);inst.input=$(target);$.data(target,PROP_NAME,inst);var spinnerImage=this._get(inst,"spinnerImage");var spinnerText=this._get(inst,"spinnerText");var spinnerSize=this._get(inst,"spinnerSize");var appendText=this._get(inst,"appendText");var spinner=(!spinnerImage?null:$('<span class="datetimeEntry_control" style="display: inline-block; background: url(\''+spinnerImage+"') 0 0 no-repeat; width: "+spinnerSize[0]+"px; height: "+spinnerSize[1]+"px;"+($.browser.mozilla&&$.browser.version<"1.9"?" padding-left: "+spinnerSize[0]+"px; padding-bottom: "+(spinnerSize[1]-18)+"px;":"")+'"></span>'));input.wrap('<span class="datetimeEntry_wrap"></span>').after(appendText?'<span class="datetimeEntry_append">'+appendText+"</span>":"").after(spinner||"");input.addClass(this.markerClassName).bind("focus.datetimeEntry",this._doFocus).bind("blur.datetimeEntry",this._doBlur).bind("click.datetimeEntry",this._doClick).bind("keydown.datetimeEntry",this._doKeyDown).bind("keypress.datetimeEntry",this._doKeyPress);if($.browser.mozilla){input.bind("input.datetimeEntry",function(event){$.datetimeEntry._extractDatetime(inst)})}if($.browser.msie){input.bind("paste.datetimeEntry",function(event){setTimeout(function(){$.datetimeEntry._extractDatetime(inst)},1)})}if(this._get(inst,"useMouseWheel")&&$.fn.mousewheel){input.mousewheel(this._doMouseWheel)}if(spinner){spinner.mousedown(this._handleSpinner).mouseup(this._endSpinner).mouseover(this._expandSpinner).mouseout(this._endSpinner).mousemove(this._describeSpinner)}},_enableDatetimeEntry:function(input){this._enableDisable(input,false)},_disableDatetimeEntry:function(input){this._enableDisable(input,true)},_enableDisable:function(input,disable){var inst=$.data(input,PROP_NAME);if(!inst){return}input.disabled=disable;if(input.nextSibling&&input.nextSibling.nodeName.toLowerCase()=="span"){$.datetimeEntry._changeSpinner(inst,input.nextSibling,(disable?5:-1))}$.datetimeEntry._disabledInputs=$.map($.datetimeEntry._disabledInputs,function(value){return(value==input?null:value)});if(disable){$.datetimeEntry._disabledInputs.push(input)}},_isDisabledDatetimeEntry:function(input){return $.inArray(input,this._disabledInputs)>-1},_changeDatetimeEntry:function(input,options,value){var inst=$.data(input,PROP_NAME);if(inst){if(typeof options=="string"){var name=options;options={};options[name]=value}var currentDate=this._parseDatetime(inst,$(input).val());extendRemove(inst.options,options||{});this._decodeDatetimeFormat(inst);if(currentDate){this._setDatetime(inst,currentDate)}}$.data(input,PROP_NAME,inst)},_decodeDatetimeFormat:function(inst){var datetimeFormat=this._get(inst,"datetimeFormat");inst._fields=[];inst._ampmField=-1;for(var i=0;i<datetimeFormat.length;i++){if(datetimeFormat.charAt(i).match(/y|Y|o|O|n|N|d|D|w|W|h|H|m|M|s|S|a/)){inst._fields.push(i)}if(datetimeFormat.charAt(i)=="a"){inst._ampmField=inst._fields.length-1}}},_destroyDatetimeEntry:function(input){$input=$(input);if(!$input.hasClass(this.markerClassName)){return}$input.removeClass(this.markerClassName).unbind(".datetimeEntry");if($.fn.mousewheel){$input.unmousewheel()}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==input?null:value)});$input.parent().replaceWith($input);$.removeData(input,PROP_NAME)},_setDatetimeDatetimeEntry:function(input,datetime){var inst=$.data(input,PROP_NAME);if(inst){this._setDatetime(inst,datetime?(typeof datetime=="object"?new Date(datetime.getTime()):datetime):null)}},_getDatetimeDatetimeEntry:function(input){var inst=$.data(input,PROP_NAME);return(inst?this._parseDatetime(inst,$(input).val()):null)},_getOffsetDatetimeEntry:function(input){var inst=$.data(input,PROP_NAME);var time=(inst?$.datetimeEntry._parseDatetime(inst,inst.input.val()):null);return(!time?0:(time.getHours()*3600+time.getMinutes()*60+time.getSeconds())*1000)},_doFocus:function(target){var input=(target.nodeName&&target.nodeName.toLowerCase()=="input"?target:this);if($.datetimeEntry._lastInput==input||$.datetimeEntry._isDisabledDatetimeEntry(input)){$.datetimeEntry._focussed=false;return}var inst=$.data(input,PROP_NAME);$.datetimeEntry._focussed=true;$.datetimeEntry._lastInput=input;$.datetimeEntry._blurredInput=null;var beforeShow=$.datetimeEntry._get(inst,"beforeShow");extendRemove(inst.options,(beforeShow?beforeShow.apply(input,[input]):{}));$.data(input,PROP_NAME,inst);$.datetimeEntry._extractDatetime(inst);setTimeout(function(){$.datetimeEntry._showField(inst)},10)},_doBlur:function(event){$.datetimeEntry._blurredInput=$.datetimeEntry._lastInput;$.datetimeEntry._lastInput=null},_doClick:function(event){var input=event.target;var inst=$.data(input,PROP_NAME);if(!$.datetimeEntry._focussed){var datetimeFormat=$.datetimeEntry._get(inst,"datetimeFormat");inst._field=0;if(input.selectionStart!=null){var end=0;for(var i=0;i<datetimeFormat.length;i++){end+=$.datetimeEntry._fieldLength(inst,datetimeFormat.charAt(i));if(input.selectionStart<end){break}inst._field+=(datetimeFormat.charAt(i).match(/[yondwhmsa]/i)?1:0)}}else{if(input.createTextRange){var src=$(event.srcElement);var range=input.createTextRange();var convert=function(value){return{thin:2,medium:4,thick:6}[value]||value};var offsetX=event.clientX+document.documentElement.scrollLeft-(src.offset().left+parseInt(convert(src.css("border-left-width")),10))-range.offsetLeft;var end=0;for(var i=0;i<datetimeFormat.length;i++){end+=$.datetimeEntry._fieldLength(inst,datetimeFormat.charAt(i));range.collapse();range.moveEnd("character",end);if(offsetX<range.boundingWidth){break}inst._field+=(datetimeFormat.charAt(i).match(/[yondwhmsa]/i)?1:0)}}}}$.data(input,PROP_NAME,inst);$.datetimeEntry._showField(inst);$.datetimeEntry._focussed=false},_doKeyDown:function(event){if(event.keyCode>=48){return true}var inst=$.data(event.target,PROP_NAME);switch(event.keyCode){case 9:return(event.shiftKey?$.datetimeEntry._changeField(inst,-1,true):$.datetimeEntry._changeField(inst,+1,true));case 35:if(event.ctrlKey){$.datetimeEntry._setValue(inst,"")}else{inst._field=inst._fields.length-1;$.datetimeEntry._adjustField(inst,0)}break;case 36:if(event.ctrlKey){$.datetimeEntry._setDatetime(inst)}else{inst._field=0;$.datetimeEntry._adjustField(inst,0)}break;case 37:$.datetimeEntry._changeField(inst,-1,false);break;case 38:$.datetimeEntry._adjustField(inst,+1);break;case 39:$.datetimeEntry._changeField(inst,+1,false);break;case 40:$.datetimeEntry._adjustField(inst,-1);break;case 46:$.datetimeEntry._setValue(inst,"");break}return false},_doKeyPress:function(event){var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);if(chr<" "){return true}var inst=$.data(event.target,PROP_NAME);$.datetimeEntry._handleKeyPress(inst,chr);return false},_doMouseWheel:function(event,delta){if($.datetimeEntry._isDisabledDatetimeEntry(event.target)){return}delta=($.browser.opera?-delta/Math.abs(delta):($.browser.safari?delta/Math.abs(delta):delta));var inst=$.data(event.target,PROP_NAME);inst.input.focus();if(!inst.input.val()){$.datetimeEntry._extractDatetime(inst)}$.datetimeEntry._adjustField(inst,delta);event.preventDefault()},_expandSpinner:function(event){var spinner=$.datetimeEntry._getSpinnerTarget(event);var inst=$.data($.datetimeEntry._getInput(spinner),PROP_NAME);var spinnerBigImage=$.datetimeEntry._get(inst,"spinnerBigImage");if(spinnerBigImage){inst._expanded=true;var offset=$(spinner).offset();var relative=null;$(spinner).parents().each(function(){var parent=$(this);if(parent.css("position")=="relative"||parent.css("position")=="absolute"){relative=parent.offset()}return !relative});var spinnerSize=$.datetimeEntry._get(inst,"spinnerSize");var spinnerBigSize=$.datetimeEntry._get(inst,"spinnerBigSize");$('<div class="datetimeEntry_expand" style="position: absolute; left: '+(offset.left-(spinnerBigSize[0]-spinnerSize[0])/2-(relative?relative.left:0))+"px; top: "+(offset.top-(spinnerBigSize[1]-spinnerSize[1])/2-(relative?relative.top:0))+"px; width: "+spinnerBigSize[0]+"px; height: "+spinnerBigSize[1]+"px; background: #fff url("+spinnerBigImage+') no-repeat 0px 0px; z-index: 10;"></div>').mousedown($.datetimeEntry._handleSpinner).mouseup($.datetimeEntry._endSpinner).mouseout($.datetimeEntry._endExpand).mousemove($.datetimeEntry._describeSpinner).insertAfter(spinner)}},_getInput:function(spinner){return $(spinner).siblings("."+$.datetimeEntry.markerClassName)[0]},_describeSpinner:function(event){var spinner=$.datetimeEntry._getSpinnerTarget(event);var inst=$.data($.datetimeEntry._getInput(spinner),PROP_NAME);spinner.title=$.datetimeEntry._get(inst,"spinnerTexts")[$.datetimeEntry._getSpinnerRegion(inst,event)]},_handleSpinner:function(event){var spinner=$.datetimeEntry._getSpinnerTarget(event);var input=$.datetimeEntry._getInput(spinner);if($.datetimeEntry._isDisabledDatetimeEntry(input)){return}if(input==$.datetimeEntry._blurredInput){$.datetimeEntry._lastInput=input;$.datetimeEntry._blurredInput=null}var inst=$.data(input,PROP_NAME);$.datetimeEntry._doFocus(input);var region=$.datetimeEntry._getSpinnerRegion(inst,event);$.datetimeEntry._changeSpinner(inst,spinner,region);$.datetimeEntry._actionSpinner(inst,region);$.datetimeEntry._timer=null;$.datetimeEntry._handlingSpinner=true;var spinnerRepeat=$.datetimeEntry._get(inst,"spinnerRepeat");if(region>=3&&spinnerRepeat[0]){$.datetimeEntry._timer=setTimeout(function(){$.datetimeEntry._repeatSpinner(inst,region)},spinnerRepeat[0]);$(spinner).one("mouseout",$.datetimeEntry._releaseSpinner).one("mouseup",$.datetimeEntry._releaseSpinner)}},_actionSpinner:function(inst,region){if(!inst.input.val()){$.datetimeEntry._extractDatetime(inst)}switch(region){case 0:this._setDatetime(inst);break;case 1:this._changeField(inst,-1,false);break;case 2:this._changeField(inst,+1,false);break;case 3:this._adjustField(inst,+1);break;case 4:this._adjustField(inst,-1);break}},_repeatSpinner:function(inst,region){if(!$.datetimeEntry._timer){return}$.datetimeEntry._lastInput=$.datetimeEntry._blurredInput;this._actionSpinner(inst,region);this._timer=setTimeout(function(){$.datetimeEntry._repeatSpinner(inst,region)},this._get(inst,"spinnerRepeat")[1])},_releaseSpinner:function(event){clearTimeout($.datetimeEntry._timer);$.datetimeEntry._timer=null},_endExpand:function(event){$.datetimeEntry._timer=null;var spinner=$.datetimeEntry._getSpinnerTarget(event);var input=$.datetimeEntry._getInput(spinner);var inst=$.data(input,PROP_NAME);$(spinner).remove();inst._expanded=false},_endSpinner:function(event){$.datetimeEntry._timer=null;var spinner=$.datetimeEntry._getSpinnerTarget(event);var input=$.datetimeEntry._getInput(spinner);var inst=$.data(input,PROP_NAME);if(!$.datetimeEntry._isDisabledDatetimeEntry(input)){$.datetimeEntry._changeSpinner(inst,spinner,-1)}if($.datetimeEntry._handlingSpinner){$.datetimeEntry._lastInput=$.datetimeEntry._blurredInput}if($.datetimeEntry._lastInput&&$.datetimeEntry._handlingSpinner){$.datetimeEntry._showField(inst)}$.datetimeEntry._handlingSpinner=false},_getSpinnerTarget:function(event){return event.target||event.srcElement},_getSpinnerRegion:function(inst,event){var spinner=this._getSpinnerTarget(event);var pos=($.browser.opera||$.browser.safari?$.datetimeEntry._findPos(spinner):$(spinner).offset());var scrolled=($.browser.safari?$.datetimeEntry._findScroll(spinner):[document.documentElement.scrollLeft||document.body.scrollLeft,document.documentElement.scrollTop||document.body.scrollTop]);var spinnerIncDecOnly=this._get(inst,"spinnerIncDecOnly");var left=(spinnerIncDecOnly?99:event.clientX+scrolled[0]-pos.left-($.browser.msie?2:0));var top=event.clientY+scrolled[1]-pos.top-($.browser.msie?2:0);var spinnerSize=this._get(inst,(inst._expanded?"spinnerBigSize":"spinnerSize"));var right=(spinnerIncDecOnly?99:spinnerSize[0]-1-left);var bottom=spinnerSize[1]-1-top;if(spinnerSize[2]>0&&Math.abs(left-right)<=spinnerSize[2]&&Math.abs(top-bottom)<=spinnerSize[2]){return 0}var min=Math.min(left,top,right,bottom);return(min==left?1:(min==right?2:(min==top?3:4)))},_changeSpinner:function(inst,spinner,region){$(spinner).css("background-position","-"+((region+1)*this._get(inst,(inst._expanded?"spinnerBigSize":"spinnerSize"))[0])+"px 0px")},_findPos:function(obj){var curLeft=curTop=0;if(obj.offsetParent){curLeft=obj.offsetLeft;curTop=obj.offsetTop;while(obj=obj.offsetParent){var origCurLeft=curLeft;curLeft+=obj.offsetLeft;if(curLeft<0){curLeft=origCurLeft}curTop+=obj.offsetTop}}return{left:curLeft,top:curTop}},_findScroll:function(obj){var isFixed=false;$(obj).parents().each(function(){isFixed|=$(this).css("position")=="fixed"});if(isFixed){return[0,0]}var scrollLeft=obj.scrollLeft;var scrollTop=obj.scrollTop;while(obj=obj.parentNode){scrollLeft+=obj.scrollLeft||0;scrollTop+=obj.scrollTop||0}return[scrollLeft,scrollTop]},_get:function(inst,name){return(inst.options[name]!=null?inst.options[name]:$.datetimeEntry._defaults[name])},_extractDatetime:function(inst){var currentDatetime=this._parseDatetime(inst,$(inst.input).val())||this._normaliseDatetime(this._determineDatetime(inst,this._get(inst,"defaultDatetime"))||new Date());var fields=this._constrainTime(inst,[currentDatetime.getHours(),currentDatetime.getMinutes(),currentDatetime.getSeconds()]);inst._selectedYear=currentDatetime.getFullYear();inst._selectedMonth=currentDatetime.getMonth();inst._selectedDay=currentDatetime.getDate();inst._selectedHour=fields[0];inst._selectedMinute=fields[1];inst._selectedSecond=fields[2];inst._lastChr="";inst._field=Math.max(0,this._get(inst,"initialField"));if(inst.input.val()!=""){this._showDatetime(inst)}},_parseDatetime:function(inst,value){if(!value){return null}var year=0;var month=0;var day=0;var hour=0;var minute=0;var second=0;var index=0;var datetimeFormat=this._get(inst,"datetimeFormat");var skipNumber=function(){while(index<value.length&&value.charAt(index).match(/^[0-9]/)){index++}};var i;for(i=0;i<datetimeFormat.length&&index<value.length;i++){var field=datetimeFormat.charAt(i);var num=parseInt(value.substring(index),10);if(field.match(/y|o|d|h|m|s/i)&&isNaN(num)){throw"Invalid date"}num=(isNaN(num)?0:num);switch(field){case"y":case"Y":year=num;skipNumber();break;case"o":case"O":month=num;skipNumber();break;case"n":case"N":var monthNames=this._get(inst,field=="N"?"monthNames":"monthNamesShort");for(var j=0;j<monthNames.length;j++){if(value.substring(index).substr(0,monthNames[j].length).toLowerCase()==monthNames[j].toLowerCase()){month=j+1;index+=monthNames[j].length;break}}break;case"w":case"W":var dayNames=this._get(inst,field=="W"?"dayNames":"dayNamesShort");for(var j=0;j<dayNames.length;j++){if(value.substring(index).substr(0,dayNames[j].length).toLowerCase()==dayNames[j].toLowerCase()){index+=dayNames[j].length+1;break}}num=parseInt(value.substring(index),10);num=(isNaN(num)?0:num);case"d":case"D":day=num;skipNumber();break;case"h":case"H":hour=num;skipNumber();break;case"m":case"M":minute=num;skipNumber();break;case"s":case"S":second=num;skipNumber();break;case"a":var ampmNames=this._get(inst,"ampmNames");var pm=(value.substr(index,ampmNames[1].length).toLowerCase()==ampmNames[1].toLowerCase());hour=(hour==12?0:hour)+(pm?12:0);index+=ampmNames[0].length;break;default:index++}}if(i<datetimeFormat.length){throw"Invalid date"}year+=(year>=100||datetimeFormat.indexOf("y")==-1?0:(year>this._shortYearCutoff(inst)?1900:2000));var fields=this._constrainTime(inst,[hour,minute,second]);var date=new Date(year,Math.max(0,month-1),day,fields[0],fields[1],fields[2]);if(datetimeFormat.match(/y|o|n|d|w/i)&&(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day)){throw"Invalid date"}return date},_showDatetime:function(inst){this._setValue(inst,this._formatDatetime(inst,this._get(inst,"datetimeFormat")));this._showField(inst)},_formatDatetime:function(inst,format){var currentDatetime="";var ampm=format.indexOf("a")>-1;for(var i=0;i<format.length;i++){var field=format.charAt(i);switch(field){case"y":currentDatetime+=this._formatNumber(inst._selectedYear%100);break;case"Y":currentDatetime+=this._formatNumber(inst._selectedYear,4);break;case"o":case"O":currentDatetime+=this._formatNumber(inst._selectedMonth+1,field=="o"?1:2);break;case"n":case"N":currentDatetime+=this._get(inst,(field=="N"?"monthNames":"monthNamesShort"))[inst._selectedMonth];break;case"d":case"D":currentDatetime+=this._formatNumber(inst._selectedDay,field=="d"?1:2);break;case"w":case"W":currentDatetime+=this._get(inst,(field=="W"?"dayNames":"dayNamesShort"))[new Date(inst._selectedYear,inst._selectedMonth,inst._selectedDay).getDay()]+" "+this._formatNumber(inst._selectedDay);break;case"h":case"H":currentDatetime+=this._formatNumber(!ampm?inst._selectedHour:inst._selectedHour%12||12,field=="h"?1:2);break;case"m":case"M":currentDatetime+=this._formatNumber(inst._selectedMinute,field=="m"?1:2);break;case"s":case"S":currentDatetime+=this._formatNumber(inst._selectedSecond,field=="s"?1:2);break;case"a":currentDatetime+=this._get(inst,"ampmNames")[inst._selectedHour<12?0:1];break;default:currentDatetime+=field;break}}return currentDatetime},_showField:function(inst){var input=inst.input[0];if(inst.input.is(":hidden")||$.datetimeEntry._lastInput!=input){return}var datetimeFormat=this._get(inst,"datetimeFormat");var start=0;for(var i=0;i<inst._fields[inst._field];i++){start+=this._fieldLength(inst,datetimeFormat.charAt(i))}var end=start+this._fieldLength(inst,datetimeFormat.charAt(i));if(input.setSelectionRange){input.setSelectionRange(start,end)}else{if(input.createTextRange){var range=input.createTextRange();range.moveStart("character",start);range.moveEnd("character",end-inst.input.val().length);range.select()}}if(!input.disabled){input.focus()}},_fieldLength:function(inst,format){switch(format){case"Y":return 4;case"n":case"N":return this._get(inst,(format=="N"?"monthNames":"monthNamesShort"))[inst._selectedMonth].length;case"w":case"W":return this._get(inst,(format=="W"?"dayNames":"dayNamesShort"))[new Date(inst._selectedYear,inst._selectedMonth,inst._selectedDay).getDay()].length+3;case"y":case"O":case"D":case"H":case"M":case"S":return 2;case"o":return(""+(inst._selectedMonth+1)).length;case"d":return(""+inst._selectedDay).length;case"h":return(""+(inst._ampmField==-1?inst._selectedHour:inst._selectedHour%12||12)).length;case"m":return(""+inst._selectedMinute).length;case"s":return(""+inst._selectedSecond).length;case"a":return this._get(inst,"ampmNames")[0].length;default:return 1}},_formatNumber:function(value,length){value=""+value;length=length||2;while(value.length<length){value="0"+value}return value},_setValue:function(inst,value){if(value!=inst.input.val()){var altField=this._get(inst,"altField");if(altField){$(altField).val(!value?"":this._formatDatetime(inst,this._get(inst,"altFormat")||this._get(inst,"datetimeFormat")))}inst.input.val(value).trigger("change")}},_changeField:function(inst,offset,moveOut){var atFirstLast=(inst.input.val()==""||inst._field==(offset==-1?0:inst._fields.length-1));if(!atFirstLast){inst._field+=offset}this._showField(inst);inst._lastChr="";$.data(inst.input[0],PROP_NAME,inst);return(atFirstLast&&moveOut)},_adjustField:function(inst,offset){if(inst.input.val()==""){offset=0}var field=this._get(inst,"datetimeFormat").charAt(inst._fields[inst._field]);var year=inst._selectedYear+(field.match(/y/i)?offset:0);var month=inst._selectedMonth+(field.match(/o|n/i)?offset:0);var day=(field.match(/d|w/i)?inst._selectedDay+offset:Math.min(inst._selectedDay,this._getDaysInMonth(year,month)));var timeSteps=this._get(inst,"timeSteps");var hour=inst._selectedHour+(field.match(/h/i)?offset*timeSteps[0]:0)+(field=="a"&&offset!=0?(inst._selectedHour<12?+12:-12):0);var minute=inst._selectedMinute+(field.match(/m/i)?offset*timeSteps[1]:0);var second=inst._selectedSecond+(field.match(/s/i)?offset*timeSteps[2]:0);this._setDatetime(inst,new Date(year,month,day,hour,minute,second))},_getDaysInMonth:function(year,month){return new Date(year,month+1,0).getDate()},_setDatetime:function(inst,datetime){datetime=this._normaliseDatetime(this._determineDatetime(inst,datetime||this._get(inst,"defaultDatetime"))||new Date());var fields=this._constrainTime(inst,[datetime.getHours(),datetime.getMinutes(),datetime.getSeconds()]);datetime.setHours(fields[0],fields[1],fields[2]);var minDatetime=this._normaliseDatetime(this._determineDatetime(inst,this._get(inst,"minDatetime")));var maxDatetime=this._normaliseDatetime(this._determineDatetime(inst,this._get(inst,"maxDatetime")));var minTime=this._normaliseDatetime(this._determineDatetime(inst,this._get(inst,"minTime")),"d");var maxTime=this._normaliseDatetime(this._determineDatetime(inst,this._get(inst,"maxTime")),"d");datetime=(minDatetime&&datetime<minDatetime?minDatetime:(maxDatetime&&datetime>maxDatetime?maxDatetime:datetime));if(minTime&&this._normaliseDatetime(new Date(datetime.getTime()),"d")<minTime){this._copyTime(minTime,datetime)}if(maxTime&&this._normaliseDatetime(new Date(datetime.getTime()),"d")>maxTime){this._copyTime(maxTime,datetime)}inst._selectedYear=datetime.getFullYear();inst._selectedMonth=datetime.getMonth();inst._selectedDay=datetime.getDate();inst._selectedHour=datetime.getHours();inst._selectedMinute=datetime.getMinutes();inst._selectedSecond=datetime.getSeconds();this._showDatetime(inst);$.data(inst.input[0],PROP_NAME,inst)},_copyDate:function(dateFrom,dateTo){dateTo.setFullYear(dateFrom.getFullYear());dateTo.setMonth(dateFrom.getMonth());dateTo.setDate(dateFrom.getDate())},_copyTime:function(timeFrom,timeTo){timeTo.setHours(timeFrom.getHours());timeTo.setMinutes(timeFrom.getMinutes());timeTo.setSeconds(timeFrom.getSeconds())},_determineDatetime:function(inst,setting){var offsetNumeric=function(offset){var datetime=new Date();datetime.setSeconds(datetime.getSeconds()+offset);return datetime};var offsetString=function(offset){var datetime;try{datetime=$.datetimeEntry._parseDatetime(inst,offset);if(datetime){return datetime}}catch(e){}offset=offset.toLowerCase();datetime=new Date();var year=datetime.getFullYear();var month=datetime.getMonth();var day=datetime.getDate();var hour=datetime.getHours();var minute=datetime.getMinutes();var second=datetime.getSeconds();var pattern=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"s"){case"s":second+=parseInt(matches[1],10);break;case"m":minute+=parseInt(matches[1],10);break;case"h":hour+=parseInt(matches[1],10);break;case"d":day+=parseInt(matches[1],10);break;case"w":day+=parseInt(matches[1],10)*7;break;case"o":month+=parseInt(matches[1],10);break;case"y":year+=parseInt(matches[1],10);break}matches=pattern.exec(offset)}return new Date(year,month,day,hour,minute,second)};return(setting?(typeof setting=="string"?offsetString(setting):(typeof setting=="number"?offsetNumeric(setting):setting)):null)},_normaliseDatetime:function(datetime,type){if(!datetime){return null}if(type=="d"){datetime.setFullYear(0);datetime.setMonth(0);datetime.setDate(0)}if(type=="t"){datetime.setHours(0);datetime.setMinutes(0);datetime.setSeconds(0)}datetime.setMilliseconds(0);return datetime},_handleKeyPress:function(inst,chr){chr=chr.toLowerCase();var datetimeFormat=this._get(inst,"datetimeFormat");var datetimeSeps=this._get(inst,"datetimeSeparators");var field=datetimeFormat.charAt(inst._fields[inst._field]);var sep=datetimeFormat.charAt(inst._fields[inst._field]+1);sep=("yYoOnNdDwWhHmMsSa".indexOf(sep)==-1?sep:"");if((datetimeSeps+sep).indexOf(chr)>-1){this._changeField(inst,+1,false)}else{if(chr>="0"&&chr<="9"){var key=parseInt(chr,10);var value=parseInt(inst._lastChr+chr,10);var year=(!field.match(/y/i)?inst._selectedYear:value);var month=(!field.match(/o|n/i)?inst._selectedMonth+1:(value>=1&&value<=12?value:(key>0?key:inst._selectedMonth+1)));var day=(!field.match(/d|w/i)?inst._selectedDay:(value>=1&&value<=this._getDaysInMonth(year,month-1)?value:(key>0?key:inst._selectedDay)));var hour=(!field.match(/h/i)?inst._selectedHour:(inst._ampmField==-1?(value<24?value:key):(value>=1&&value<=12?value:(key>0?key:inst._selectedHour))%12+(inst._selectedHour>=12?12:0)));var minute=(!field.match(/m/i)?inst._selectedMinute:(value<60?value:key));var second=(!field.match(/s/i)?inst._selectedSecond:(value<60?value:key));var fields=this._constrainTime(inst,[hour,minute,second]);var shortYearCutoff=this._shortYearCutoff(inst);this._setDatetime(inst,new Date(year+(year>=100||field!="y"?0:(year>shortYearCutoff?1900:2000)),month-1,day,fields[0],fields[1],fields[2]));inst._lastChr=(field!="Y"?"":inst._lastChr.substr(Math.max(0,inst._lastChr.length-2)))+chr}else{if(field.match(/n/i)){inst._lastChr+=chr;var names=this._get(inst,(field=="n"?"monthNamesShort":"monthNames"));var findMonth=function(){for(var i=0;i<names.length;i++){if(names[i].toLowerCase().substring(0,inst._lastChr.length)==inst._lastChr){return i;break}}return -1};var month=findMonth();if(month==-1){inst._lastChr=chr;month=findMonth()}if(month==-1){inst._lastChr=""}else{var year=inst._selectedYear;var day=Math.min(inst._selectedDay,this._getDaysInMonth(year,month));this._setDatetime(inst,this._normaliseDatetime(new Date(year,month,day,inst._selectedHour,inst._selectedMinute,inst._selectedSecond)))}}else{if(inst._ampmField>-1){var ampmNames=this._get(inst,"ampmNames");if((chr==ampmNames[0].substring(0,1).toLowerCase()&&inst._selectedHour>=12)||(chr==ampmNames[1].substring(0,1).toLowerCase()&&inst._selectedHour<12)){var saveField=inst._field;inst._field=inst._ampmField;this._adjustField(inst,+1);inst._field=saveField;this._showField(inst)}}}}}},_shortYearCutoff:function(inst){var cutoff=this._get(inst,"shortYearCutoff");if(typeof cutoff=="string"){cutoff=new Date().getFullYear()+parseInt(cutoff,10)}return cutoff%100},_constrainTime:function(inst,fields){var specified=(fields!=null);if(!specified){var now=this._determineTime(inst,this._get(inst,"defaultTime"))||new Date();fields=[now.getHours(),now.getMinutes(),now.getSeconds()]}var reset=false;var timeSteps=this._get(inst,"timeSteps");for(var i=0;i<timeSteps.length;i++){if(reset){fields[i]=0}else{if(timeSteps[i]>1){fields[i]=Math.round(fields[i]/timeSteps[i])*timeSteps[i];reset=true}}}return fields}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null){target[name]=null}}return target}var getters=["getDatetime","getOffset","isDisabled"];$.fn.datetimeEntry=function(options){var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&$.inArray(options,getters)>-1){return $.datetimeEntry["_"+options+"DatetimeEntry"].apply($.datetimeEntry,[this[0]].concat(otherArgs))}return this.each(function(){var nodeName=this.nodeName.toLowerCase();if(nodeName=="input"){if(typeof options=="string"){$.datetimeEntry["_"+options+"DatetimeEntry"].apply($.datetimeEntry,[this].concat(otherArgs))}else{var inlineSettings=($.fn.metadata?$(this).metadata():{});$.datetimeEntry._connectDatetimeEntry(this,$.extend(inlineSettings,options))}}})};$.datetimeEntry=new DatetimeEntry()})(jQuery);(function($){$.datetimeEntry.regional.ru={datetimeFormat:"D.O.Y H:M",monthNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthNamesShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],dayNames:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],dayNamesShort:["вск","пнд","втр","срд","чтв","птн","сбт"],ampmNames:["AM","PM"],spinnerTexts:["Сейчас","Предыдущее поле","Следующее поле","Больше","Меньше"],isRTL:false};$.datetimeEntry.setDefaults($.datetimeEntry.regional.ru)})(jQuery);
/*
* Cookie plugin
*
* Copyright (c) 2006 Klaus Hartl (stilbuero.de)
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
*/
jQuery.cookie=function(name,value,options){if(typeof value!="undefined"){options=options||{};if(value===null){value="";options.expires=-1}var expires="";if(options.expires&&(typeof options.expires=="number"||options.expires.toUTCString)){var date;if(typeof options.expires=="number"){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000))}else{date=options.expires}expires="; expires="+date.toUTCString()}var path=options.path?"; path="+(options.path):"";var domain=options.domain?"; domain="+(options.domain):"";var secure=options.secure?"; secure":"";document.cookie=[name,"=",encodeURIComponent(value),expires,path,domain,secure].join("")}else{var cookieValue=null;if(document.cookie&&document.cookie!=""){var cookies=document.cookie.split(";");for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+"=")){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break}}}return cookieValue}};
/* 
* Class: prettyPhoto
* Use: Lightbox clone for jQuery
* Author: Stephane Caron (http://www.no-margin-for-errors.com)
* Version: 3.0.3
*/
(function($){$.prettyPhoto={version:"3.0.2"};$.fn.prettyPhoto=function(pp_settings){pp_settings=jQuery.extend({animation_speed:"fast",slideshow:false,autoplay_slideshow:false,opacity:0.8,show_title:true,allow_resize:true,default_width:500,default_height:344,counter_separator_label:"/",theme:"facebook",hideflash:false,wmode:"opaque",autoplay:true,modal:false,overlay_gallery:true,keyboard_shortcuts:true,changepicturecallback:function(){},callback:function(){},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"> 											<p class="pp_description"></p> 											<a class="pp_close" href="#">Close</a> 											<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> 					</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="{path}" />',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);var matchedObjects=this,percentBased=false,pp_dimensions,pp_open,pp_contentHeight,pp_contentWidth,pp_containerHeight,pp_containerWidth,windowHeight=$(window).height(),windowWidth=$(window).width(),pp_slideshow;doresize=true,scroll_pos=_get_scroll();$(window).unbind("resize.prettyphoto").bind("resize.prettyphoto",function(){_center_overlay();_resize_overlay()});if(pp_settings.keyboard_shortcuts){$(document).unbind("keydown.prettyphoto").bind("keydown.prettyphoto",function(e){if(typeof $pp_pic_holder!="undefined"){if($pp_pic_holder.is(":visible")){switch(e.keyCode){case 37:$.prettyPhoto.changePage("previous");e.preventDefault();break;case 39:$.prettyPhoto.changePage("next");e.preventDefault();break;case 27:if(!settings.modal){$.prettyPhoto.close()}e.preventDefault();break}}}})}$.prettyPhoto.initialize=function(){settings=pp_settings;if($.browser.msie&&parseInt($.browser.version)==6){settings.theme="light_square"}theRel=$(this).attr("rel");galleryRegExp=/\[(?:.*)\]/;isSet=(galleryRegExp.exec(theRel))?true:false;pp_images=(isSet)?jQuery.map(matchedObjects,function(n,i){if($(n).attr("rel").indexOf(theRel)!=-1){return $(n).attr("href")}}):$.makeArray($(this).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($(this).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($(this).attr("title"));_buildOverlay(this);if(settings.allow_resize){$(window).bind("scroll.prettyphoto",function(){_center_overlay()})}set_position=jQuery.inArray($(this).attr("href"),pp_images);$.prettyPhoto.open();return false};$.prettyPhoto.open=function(event){if(typeof settings=="undefined"){settings=pp_settings;if($.browser.msie&&$.browser.version==6){settings.theme="light_square"}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;_buildOverlay(event.target)}if($.browser.msie&&$.browser.version==6){$("select").css("visibility","hidden")}if(settings.hideflash){$("object,embed").css("visibility","hidden")}_checkPosition($(pp_images).size());$(".pp_loaderIcon").show();if($ppt.is(":hidden")){$ppt.css("opacity",0).show()}$pp_overlay.show().fadeTo(settings.animation_speed,settings.opacity);$pp_pic_holder.find(".currentTextHolder").text((set_position+1)+settings.counter_separator_label+$(pp_images).size());$pp_pic_holder.find(".pp_description").show().html(unescape(pp_descriptions[set_position]));(settings.show_title&&pp_titles[set_position]!=""&&typeof pp_titles[set_position]!="undefined")?$ppt.html(unescape(pp_titles[set_position])):$ppt.html("&nbsp;");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(movie_height.indexOf("%")!=-1){movie_height=parseFloat(($(window).height()*parseFloat(movie_height)/100)-150);percentBased=true}if(movie_width.indexOf("%")!=-1){movie_width=parseFloat(($(window).width()*parseFloat(movie_width)/100)-150);percentBased=true}$pp_pic_holder.fadeIn(function(){imgPreloader="";switch(_getFileType(pp_images[set_position])){case"image":imgPreloader=new Image();nextImage=new Image();if(isSet&&set_position<$(pp_images).size()-1){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.replace(/{path}/g,pp_images[set_position]);imgPreloader.onload=function(){pp_dimensions=_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":pp_dimensions=_fitToViewport(movie_width,movie_height);movie="http://www.youtube.com/v/"+grab_param("v",pp_images[set_position]);if(settings.autoplay){movie+="&autoplay=1"}toInject=settings.flash_markup.replace(/{width}/g,pp_dimensions.width).replace(/{height}/g,pp_dimensions.height).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,movie);break;case"vimeo":pp_dimensions=_fitToViewport(movie_width,movie_height);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=pp_dimensions.width+"/embed/?moog_width="+pp_dimensions.width;toInject=settings.iframe_markup.replace(/{width}/g,vimeo_width).replace(/{height}/g,pp_dimensions.height).replace(/{path}/g,movie);break;case"quicktime":pp_dimensions=_fitToViewport(movie_width,movie_height);pp_dimensions.height+=15;pp_dimensions.contentHeight+=15;pp_dimensions.containerHeight+=15;toInject=settings.quicktime_markup.replace(/{width}/g,pp_dimensions.width).replace(/{height}/g,pp_dimensions.height).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,pp_images[set_position]).replace(/{autoplay}/g,settings.autoplay);break;case"flash":pp_dimensions=_fitToViewport(movie_width,movie_height);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,pp_dimensions.width).replace(/{height}/g,pp_dimensions.height).replace(/{wmode}/g,settings.wmode).replace(/{path}/g,filename+"?"+flash_vars);break;case"iframe":pp_dimensions=_fitToViewport(movie_width,movie_height);frame_url=pp_images[set_position];frame_url=frame_url.substr(0,frame_url.indexOf("iframe")-1);toInject=settings.iframe_markup.replace(/{width}/g,pp_dimensions.width).replace(/{height}/g,pp_dimensions.height).replace(/{path}/g,frame_url);break;case"custom":pp_dimensions=_fitToViewport(movie_width,movie_height);toInject=settings.custom_markup;break;case"inline":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")).show();doresize=false;pp_dimensions=_fitToViewport($(myClone).width(),$(myClone).height());doresize=true;$(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;_showContent()}});return false};$.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}$(".pp_contract").removeClass("pp_contract").addClass("pp_expand");_hideContent(function(){$.prettyPhoto.open()})};$.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}}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)})})};$.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")}};$.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};$.prettyPhoto.close=function(){if($pp_overlay.is(":animated")){return}$.prettyPhoto.stopSlideshow();$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")}if(settings.hideflash){$("object,embed").css("visibility","visible")}$(this).remove();$(window).unbind("scroll");settings.callback();doresize=true;pp_open=false;delete settings})};function _showContent(){$(".pp_loaderIcon").hide();$ppt.fadeTo(settings.animation_speed,1);projectedTop=scroll_pos.scrollTop+((windowHeight/2)-(pp_dimensions.containerHeight/2));if(projectedTop<0){projectedTop=0}$pp_pic_holder.find(".pp_content").animate({height:pp_dimensions.contentHeight,width:pp_dimensions.contentWidth},settings.animation_speed);$pp_pic_holder.animate({top:projectedTop,left:(windowWidth/2)-(pp_dimensions.containerWidth/2),width:pp_dimensions.containerWidth},settings.animation_speed,function(){$pp_pic_holder.find(".pp_hoverContainer,#fullResImage").height(pp_dimensions.height).width(pp_dimensions.width);$pp_pic_holder.find(".pp_fade").fadeIn(settings.animation_speed);if(isSet&&_getFileType(pp_images[set_position])=="image"){$pp_pic_holder.find(".pp_hoverContainer").show()}else{$pp_pic_holder.find(".pp_hoverContainer").hide()}if(pp_dimensions.resized){$("a.pp_expand,a.pp_contract").show()}else{$("a.pp_expand,a.pp_contract").hide()}if(settings.autoplay_slideshow&&!pp_slideshow&&!pp_open){$.prettyPhoto.startSlideshow()}settings.changepicturecallback();pp_open=true});_insert_gallery()}function _hideContent(callback){$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()})}function _checkPosition(setCount){(setCount>1)?$(".pp_nav").show():$(".pp_nav").hide()}function _fitToViewport(width,height){resized=false;_getDimensions(width,height);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,contentHeight:Math.floor(pp_contentHeight),contentWidth:Math.floor(pp_contentWidth),resized:resized}}function _getDimensions(width,height){width=parseFloat(width);height=parseFloat(height);$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;if($.browser.msie&&$.browser.version==7){detailsHeight+=8}$pp_details.remove();$pp_title=$pp_pic_holder.find(".ppt");$pp_title.width(width);titleHeight=parseFloat($pp_title.css("marginTop"))+parseFloat($pp_title.css("marginBottom"));$pp_title=$pp_title.clone().appendTo($("body")).css({position:"absolute",top:-10000});titleHeight+=$pp_title.height();$pp_title.remove();pp_contentHeight=height+detailsHeight;pp_contentWidth=width;pp_containerHeight=pp_contentHeight+titleHeight+$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.match(/\b.mov\b/i)){return"quicktime"}else{if(itemSrc.match(/\b.swf\b/i)){return"flash"}else{if(itemSrc.match(/\biframe=true\b/i)){return"iframe"}else{if(itemSrc.match(/\bcustom=true\b/i)){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();contentHeight=$pp_pic_holder.height(),contentwidth=$pp_pic_holder.width();projectedTop=(windowHeight/2)+scroll_pos.scrollTop-(contentHeight/2);if(projectedTop<0){projectedTop=0}$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){return{scrollTop:document.documentElement.scrollTop,scrollLeft:document.documentElement.scrollLeft}}else{if(document.body){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()).width(windowWidth)}}function _insert_gallery(){if(isSet&&settings.overlay_gallery&&_getFileType(pp_images[set_position])=="image"){itemWidth=52+5;navWidth=(settings.theme=="facebook")?58:38;itemsPerPage=Math.floor((pp_dimensions.containerWidth-100-navWidth)/itemWidth);itemsPerPage=(itemsPerPage<pp_images.length)?itemsPerPage:pp_images.length;totalPage=Math.ceil(pp_images.length/itemsPerPage)-1;if(totalPage==0){navWidth=0;$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;$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.ceil((set_position+1)/itemsPerPage)<totalPage)?Math.ceil((set_position+1)/itemsPerPage):totalPage;$.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){$("body").append(settings.markup);$pp_pic_holder=$(".pp_pic_holder"),$ppt=$(".ppt"),$pp_overlay=$("div.pp_overlay");if(isSet&&settings.overlay_gallery){currentGalleryPage=0;toInject="";for(var i=0;i<pp_images.length;i++){if(!pp_images[i].match(/\b(jpg|jpeg|png|gif)\b/gi)){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;$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})})}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);$pp_overlay.css({opacity:0,height:$(document).height(),width:$(window).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){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()}return this.unbind("click.prettyphoto").bind("click.prettyphoto",$.prettyPhoto.initialize)};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);
/*
* jQuery postMessage - v0.5 - 9/11/2009
* http://benalman.com/projects/jquery-postmessage-plugin/
* 
* Copyright (c) 2009 "Cowboy" Ben Alman
* Dual licensed under the MIT and GPL licenses.
* http://benalman.com/about/license/
*/
(function($){var interval_id,last_hash,cache_bust=1,rm_callback,window=this,FALSE=!1,postMessage="postMessage",addEventListener="addEventListener",p_receiveMessage,has_postMessage=window[postMessage];$[postMessage]=function(message,target_url,target){if(!target_url){return}message=typeof message==="string"?message:$.param(message);target=target||parent;if(has_postMessage){target[postMessage](message,target_url.replace(/([^:]+:\/\/[^\/]+).*/,"$1"))}else{if(target_url){target.location=target_url.replace(/#.*$/,"")+"#"+(+new Date)+(cache_bust++)+"&"+message}}};$.receiveMessage=p_receiveMessage=function(callback,source_origin,delay){if(has_postMessage){if(callback){rm_callback&&p_receiveMessage();rm_callback=function(e){if((typeof source_origin==="string"&&e.origin!==source_origin)||($.isFunction(source_origin)&&source_origin(e.origin)===FALSE)){return FALSE}callback(e)}}if(window[addEventListener]){window[callback?addEventListener:"removeEventListener"]("message",rm_callback,FALSE)}else{window[callback?"attachEvent":"detachEvent"]("onmessage",rm_callback)}}else{interval_id&&clearInterval(interval_id);interval_id=null;if(callback){delay=typeof source_origin==="number"?source_origin:typeof delay==="number"?delay:100;interval_id=setInterval(function(){var hash=document.location.hash,re=/^#?\d+&/;if(hash!==last_hash&&re.test(hash)){last_hash=hash;callback({data:hash.replace(re,"")})}},delay)}}}})(jQuery);
/*
* This plugin filters keyboard input by specified regular expression.
* Version 1.7
* $Id: jquery.keyfilter.js,v 1.14 2009/05/19 11:46:10 aabdulin Exp $
*
* Source code inspired by Ext.JS (Ext.form.TextField, Ext.EventManager)
*
* Procedural style:
* $('#ggg').keyfilter(/[\dA-F]/);
* Also you can pass test function instead of regexp. Its arguments:
* this - HTML DOM Element (event target).
* c - String that contains incoming character.
* $('#ggg').keyfilter(function(c) { return c != 'a'; });
*
* Class style:
* <input type="text" class="mask-num" />
*
* Available classes:
* mask-pint:     /[\d]/
* mask-int:      /[\d\-]/
* mask-pnum:     /[\d\.]/
* mask-money     /[\d\.\s,]/
* mask-num:      /[\d\-\.]/
* mask-hex:      /[0-9a-f]/i
* mask-email:    /[a-z0-9_\.\-@]/i
* mask-alpha:    /[a-z_]/i
* mask-alphanum: /[a-z0-9_]/i
*/
(function($){var defaultMasks={pint:/[\d]/,"int":/[\d\-]/,pnum:/[\d\.]/,money:/[\d\.\s,]/,num:/[\d\-\.]/,hex:/[0-9a-f]/i,email:/[a-z0-9_\.\-@]/i,alpha:/[a-z_]/i,alphanum:/[a-z0-9_]/i};var Keys={TAB:9,RETURN:13,ESC:27,BACKSPACE:8,DELETE:46};var SafariKeys={63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35};var isNavKeyPress=function(e){var k=e.keyCode;k=$.browser.safari?(SafariKeys[k]||k):k;return(k>=33&&k<=40)||k==Keys.RETURN||k==Keys.TAB||k==Keys.ESC};var isSpecialKey=function(e){var k=e.keyCode;var c=e.charCode;return k==9||k==13||(k==40&&(!$.browser.opera||!e.shiftKey))||k==27||k==16||k==17||(k>=18&&k<=20)||($.browser.opera&&!e.shiftKey&&(k==8||(k>=33&&k<=35)||(k>=36&&k<=39)||(k>=44&&k<=45)))};var getKey=function(e){var k=e.keyCode||e.charCode;return $.browser.safari?(SafariKeys[k]||k):k};var getCharCode=function(e){return e.charCode||e.keyCode||e.which};$.fn.keyfilter=function(re,callback){return this.keypress(function(e){if(e.ctrlKey||e.altKey){return}var k=getKey(e);if(isNavKeyPress(e)||k==Keys.BACKSPACE||(k==Keys.DELETE&&(e.charCode==0||e.charCode!="undefined"))){return}var c=getCharCode(e),cc=String.fromCharCode(c),ok=true;if(!$.browser.mozilla&&(isSpecialKey(e)||!cc)){return}if($.isFunction(re)){ok=re.call(this,cc)}else{ok=re.test(cc)}if($.isFunction(callback)){ok=callback.call(this,ok)}if(!ok){e.preventDefault()}})};$.extend($.fn.keyfilter,{defaults:{masks:defaultMasks},version:1.7});$(document).ready(function(){var tags=$("input[class*=mask],textarea[class*=mask]");for(var key in $.fn.keyfilter.defaults.masks){tags.filter(".mask-"+key).keyfilter($.fn.keyfilter.defaults.masks[key])}});$.fn.pastefilter=function(re,callback){return($.browser.msie)?this.bind("input1",function(e){var val=$(this).val(),ok=true;if($.isFunction(re)){ok=re.call(this,val)}else{ok=re.test(val)}if($.isFunction(callback)){ok=callback.call(this,ok)}if(!ok){e.preventDefault()}}):this.bind("input",function(e){var val=$(this).val(),ok=true;if($.isFunction(re)){ok=re.call(this,val)}else{ok=re.test(val)}if($.isFunction(callback)){ok=callback.call(this,ok)}if(!ok){e.preventDefault()}})}})(jQuery);
/*
* Plug-in that would provide an interface for jQuery.fn.bind("input"). 
* The plug-in decides between attaching to input, propertychange or a host 
* of fall back events that may or may not be supported in the browser. 
* In short, it tries to get as much of the functionality of input as possible, 
* but there’ll always be at least some functionality, for instance, plain keyboard input detection.
*
* Note that the plug-in does have the following limitations in browsers that don’t support input:
*   • It currently only works with input and textarea elements. I may be able to get some support 
*     in for contentEditable elements in the future, but they don’t fire a propertychange event 
*     in IE when typing or pasting, which makes them awkward for capturing input. 
*   • It will not work with live() or delegate(). This is due to how the propertychange event doesn’t bubble. 
*   • It doesn’t work around the bugs Opera has with the input event. I’m not sure which versions  
*     are affected and it would be a pain to figure it all out. 
*
* ex: 
* <input type="text">
* <div></div>
*
* $(function () {
*    $("input").bind("input", function (e) {
*        $(this).next().text(this.value)
*    });
* });
*
*/
(function($){function propHandler(){var $this=$(this);if(window.event.propertyName=="value"&&!$this.data("triggering.inputEvent")){$this.data("triggering.inputEvent",true).trigger("input");window.setTimeout(function(){$this.data("triggering.inputEvent",false)},0)}}$.event.special.input1={setup:function(data,namespaces){var timer,elem=this,state=elem.value,tester=document.createElement(this.tagName),oninput="oninput" in tester||checkEvent(tester),onprop="onpropertychange" in tester,ns="inputEventNS"+~~(Math.random()*10000000),evts=["focus","blur","paste","cut","keydown","drop",""].join("."+ns+" ");function checkState(){var $this=$(elem);if(elem.value!=state&&!$this.data("triggering.inputEvent")){state=elem.value;$this.data("triggering.inputEvent",true).trigger("input");window.setTimeout(function(){$this.data("triggering.inputEvent",false)},0)}}function handler(e){if(e.type=="focus"){checkState();clearInterval(timer),timer=window.setInterval(checkState,250)}else{if(e.type=="blur"){window.clearInterval(timer)}else{window.setTimeout(checkState,0)}}}if(oninput){return false}else{if(onprop){$(this).find("input, textarea").andSelf().filter("input, textarea").bind("propertychange."+ns,propHandler)}else{$(this).find("input, textarea").andSelf().filter("input, textarea").bind(evts,handler)}}$(this).data("inputEventHandlerNS",ns)},teardown:function(){var elem=$(this);elem.find("input, textarea").unbind(elem.data("inputEventHandlerNS"));elem.data("inputEventHandlerNS","")}};$.fn.input=function(handler){return handler?this.bind("input",handler):this.trigger("input")};function checkEvent(el){el.setAttribute("oninput","return");if(typeof el.oninput=="function"){return true}try{var e=document.createEvent("KeyboardEvent"),ok=false,tester=function(e){ok=true;e.preventDefault();e.stopPropagation()};e.initKeyEvent("keypress",true,true,window,false,false,false,false,0,"e".charCodeAt(0));document.body.appendChild(el);el.addEventListener("input",tester,false);el.focus();el.dispatchEvent(e);el.removeEventListener("input",tester,false);document.body.removeChild(el);return ok}catch(e){}}})(jQuery);
/*
* toJSON plugin
*/
(function($){m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},$.toJSON=function(value,whitelist){var a,i,k,l,r=/["\\\x00-\x1f\x7f-\x9f]/g,v;switch(typeof value){case"string":return r.test(value)?'"'+value.replace(r,function(a){var c=m[a];if(c){return c}c=a.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16)})+'"':'"'+value+'"';case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}if(typeof value.toJSON==="function"){return $.toJSON(value.toJSON())}a=[];if(typeof value.length==="number"&&!(value.propertyIsEnumerable("length"))){l=value.length;for(i=0;i<l;i+=1){a.push($.toJSON(value[i],whitelist)||"null")}return"["+a.join(",")+"]"}if(whitelist){l=whitelist.length;for(i=0;i<l;i+=1){k=whitelist[i];if(typeof k==="string"){v=$.toJSON(value[k],whitelist);if(v){a.push($.toJSON(k)+":"+v)}}}}else{for(k in value){if(typeof k==="string"){v=$.toJSON(value[k],whitelist);if(v){a.push($.toJSON(k)+":"+v)}}}}return"{"+a.join(",")+"}"}}})(jQuery);(function($){var allImages={};var imageCounter=0;$.galleriffic={version:"2.0.1",normalizeHash:function(hash){return hash.replace(/^.*#/,"").replace(/\?.*$/,"")},getImage:function(hash){if(!hash){return undefined}hash=$.galleriffic.normalizeHash(hash);return allImages[hash]},gotoImage:function(hash){var imageData=$.galleriffic.getImage(hash);if(!imageData){return false}var gallery=imageData.gallery;gallery.gotoImage(imageData);return true},removeImageByHash:function(hash,ownerGallery){var imageData=$.galleriffic.getImage(hash);if(!imageData){return false}var gallery=imageData.gallery;if(ownerGallery&&ownerGallery!=gallery){return false}return gallery.removeImageByIndex(imageData.index)}};var defaults={maxWidth:350,delay:3000,numThumbs:20,preloadAhead:40,enableTopPager:false,enableBottomPager:true,maxPagesToShow:7,imageContainerSel:"",captionContainerSel:"",controlsContainerSel:"",loadingContainerSel:"",renderSSControls:true,renderNavControls:true,playLinkText:"Просмотр",pauseLinkText:"Пауза",prevLinkText:"Предыдущая",nextLinkText:"Следующая",nextPageLinkText:"Предыдущая &rsaquo;",prevPageLinkText:"&lsaquo; Следующая",enableHistory:false,enableKeyboardNavigation:true,autoStart:false,syncTransitions:false,defaultTransitionDuration:1000,onSlideChange:undefined,onTransitionOut:undefined,onTransitionIn:undefined,onPageTransitionOut:undefined,onPageTransitionIn:undefined,onImageAdded:undefined,onImageRemoved:undefined};$.fn.galleriffic=function(settings){$.extend(this,{version:$.galleriffic.version,isSlideshowRunning:false,slideshowTimeout:undefined,clickHandler:function(e,link){this.pause();if(!this.enableHistory){var hash=$.galleriffic.normalizeHash($(link).attr("href"));$.galleriffic.gotoImage(hash);e.preventDefault()}},appendImage:function(listItem){this.addImage(listItem,false,false);return this},insertImage:function(listItem,position){this.addImage(listItem,false,true,position);return this},addImage:function(listItem,thumbExists,insert,position){var $li=(typeof listItem==="string")?$(listItem):listItem;var $aThumb=$li.find("a.thumb");var slideUrl=$aThumb.attr("href");var title=$aThumb.attr("title");var $caption=$li.find(".caption").remove();var hash=$aThumb.attr("name");var thumbUrl=$aThumb.attr("data-thumb-src");var imgStr='<img src="'+thumbUrl+'" alt="'+title+'" width="104" height="78" />';imageCounter++;if(!hash||allImages[""+hash]){hash=imageCounter}if(!insert){position=this.data.length}var imageData={title:title,slideUrl:slideUrl,caption:$caption,hash:hash,gallery:this,index:position};if(insert){this.data.splice(position,0,imageData);this.updateIndices(position)}else{this.data.push(imageData)}var gallery=this;if(!thumbExists){this.updateThumbs(function(){var $thumbsUl=gallery.find("ul.thumbs");if(insert){$thumbsUl.children(":eq("+position+")").before($li)}else{$thumbsUl.append($li)}if(gallery.onImageAdded){gallery.onImageAdded(imageData,$li)}})}allImages[""+hash]=imageData;$aThumb.attr("rel","history").attr("href","#"+hash).removeAttr("name").click(function(e){gallery.clickHandler(e,this)});if(thumbUrl){$aThumb.html(imgStr)}return this},removeImageByIndex:function(index){if(index<0||index>=this.data.length){return false}var imageData=this.data[index];if(!imageData){return false}this.removeImage(imageData);return true},removeImageByHash:function(hash){return $.galleriffic.removeImageByHash(hash,this)},removeImage:function(imageData){var index=imageData.index;this.data.splice(index,1);delete allImages[""+imageData.hash];this.updateThumbs(function(){var $li=gallery.find("ul.thumbs").children(":eq("+index+")").remove();if(gallery.onImageRemoved){gallery.onImageRemoved(imageData,$li)}});this.updateIndices(index);return this},updateIndices:function(startIndex){for(i=startIndex;i<this.data.length;i++){this.data[i].index=i}return this},initializeThumbs:function(){this.data=[];var gallery=this;this.find("ul.thumbs > li").each(function(i){gallery.addImage($(this),true,false)});return this},isPreloadComplete:false,preloadInit:function(){if(this.preloadAhead==0){return this}this.preloadStartIndex=this.currentImage.index;var nextIndex=this.getNextIndex(this.preloadStartIndex);return this.preloadRecursive(this.preloadStartIndex,nextIndex)},preloadRelocate:function(index){this.preloadStartIndex=index;return this},preloadRecursive:function(startIndex,currentIndex){if(startIndex!=this.preloadStartIndex){var nextIndex=this.getNextIndex(this.preloadStartIndex);return this.preloadRecursive(this.preloadStartIndex,nextIndex)}var gallery=this;var preloadCount=currentIndex-startIndex;if(preloadCount<0){preloadCount=this.data.length-1-startIndex+currentIndex}if(this.preloadAhead>=0&&preloadCount>this.preloadAhead){setTimeout(function(){gallery.preloadRecursive(startIndex,currentIndex)},500);return this}var imageData=this.data[currentIndex];if(!imageData){return this}if(imageData.image){return this.preloadNext(startIndex,currentIndex)}var image=new Image();image.onload=function(){imageData.image=this;gallery.preloadNext(startIndex,currentIndex)};image.alt=imageData.title;image.src=imageData.slideUrl;return this},preloadNext:function(startIndex,currentIndex){var nextIndex=this.getNextIndex(currentIndex);if(nextIndex==startIndex){this.isPreloadComplete=true}else{var gallery=this;setTimeout(function(){gallery.preloadRecursive(startIndex,nextIndex)},100)}return this},getNextIndex:function(index){var nextIndex=index+1;if(nextIndex>=this.data.length){nextIndex=0}return nextIndex},getPrevIndex:function(index){var prevIndex=index-1;if(prevIndex<0){prevIndex=this.data.length-1}return prevIndex},pause:function(){this.isSlideshowRunning=false;if(this.slideshowTimeout){clearTimeout(this.slideshowTimeout);this.slideshowTimeout=undefined}if(this.$controlsContainer){this.$controlsContainer.find("div.ss-controls a").removeClass().addClass("play").attr("title",this.playLinkText).attr("href","#play").html(this.playLinkText)}return this},play:function(){this.isSlideshowRunning=true;if(this.$controlsContainer){this.$controlsContainer.find("div.ss-controls a").removeClass().addClass("pause").attr("title",this.pauseLinkText).attr("href","#pause").html(this.pauseLinkText)}if(!this.slideshowTimeout){var gallery=this;this.slideshowTimeout=setTimeout(function(){gallery.ssAdvance()},this.delay)}return this},toggleSlideshow:function(){if(this.isSlideshowRunning){this.pause()}else{this.play()}return this},ssAdvance:function(){if(this.isSlideshowRunning){this.next(true)}return this},next:function(dontPause,bypassHistory){this.gotoIndex(this.getNextIndex(this.currentImage.index),dontPause,bypassHistory);return this},previous:function(dontPause,bypassHistory){this.gotoIndex(this.getPrevIndex(this.currentImage.index),dontPause,bypassHistory);return this},nextPage:function(dontPause,bypassHistory){var page=this.getCurrentPage();var lastPage=this.getNumPages()-1;if(page<lastPage){var startIndex=page*this.numThumbs;var nextPage=startIndex+this.numThumbs;this.gotoIndex(nextPage,dontPause,bypassHistory)}return this},previousPage:function(dontPause,bypassHistory){var page=this.getCurrentPage();if(page>0){var startIndex=page*this.numThumbs;var prevPage=startIndex-this.numThumbs;this.gotoIndex(prevPage,dontPause,bypassHistory)}return this},gotoIndex:function(index,dontPause,bypassHistory){if(!dontPause){this.pause()}if(index<0){index=0}else{if(index>=this.data.length){index=this.data.length-1}}var imageData=this.data[index];if(!bypassHistory&&this.enableHistory){$.historyLoad(String(imageData.hash))}else{this.gotoImage(imageData)}return this},gotoImage:function(imageData){var index=imageData.index;if(this.onSlideChange){this.onSlideChange(this.currentImage.index,index)}this.currentImage=imageData;this.preloadRelocate(index);this.refresh();return this},getDefaultTransitionDuration:function(isSync){if(isSync){return this.defaultTransitionDuration}return this.defaultTransitionDuration/2},refresh:function(){var imageData=this.currentImage;if(!imageData){return this}var index=imageData.index;if(this.$controlsContainer){this.$controlsContainer.find("div.nav-controls a.prev").attr("href","#"+this.data[this.getPrevIndex(index)].hash).end().find("div.nav-controls a.next").attr("href","#"+this.data[this.getNextIndex(index)].hash)}var previousSlide=this.$imageContainer.find("span.current").addClass("previous").removeClass("current");var previousCaption=0;if(this.$captionContainer){previousCaption=this.$captionContainer.find("span.current").addClass("previous").removeClass("current")}var isSync=this.syncTransitions&&imageData.image;var isTransitioning=true;var gallery=this;var transitionOutCallback=function(){isTransitioning=false;previousSlide.remove();if(previousCaption){previousCaption.remove()}if(!isSync){if(imageData.image&&imageData.hash==gallery.data[gallery.currentImage.index].hash){gallery.buildImage(imageData,isSync)}else{if(gallery.$loadingContainer){gallery.$loadingContainer.show()}}}};if(previousSlide.length==0){transitionOutCallback()}else{if(this.onTransitionOut){this.onTransitionOut(previousSlide,previousCaption,isSync,transitionOutCallback)}else{previousSlide.fadeTo(this.getDefaultTransitionDuration(isSync),0,transitionOutCallback);if(previousCaption){previousCaption.fadeTo(this.getDefaultTransitionDuration(isSync),0)}}}if(isSync){this.buildImage(imageData,isSync)}if(!imageData.image){var image=new Image();image.onload=function(){imageData.image=this;var w=imageData.image.width;var h=imageData.image.height;if(w&&gallery.maxWidth&&w>gallery.maxWidth){imageData.image.width=gallery.maxWidth;imageData.image.height=gallery.maxWidth*h/w}if(!isTransitioning&&imageData.hash==gallery.data[gallery.currentImage.index].hash){gallery.buildImage(imageData,isSync)}};image.alt=imageData.title;image.src=imageData.slideUrl}this.relocatePreload=true;return this.syncThumbs()},buildImage:function(imageData,isSync){var gallery=this;var nextIndex=this.getNextIndex(imageData.index);var newSlide=this.$imageContainer.html('<span class="image-wrapper current"><a class="advance-link" rel="history" href="#'+this.data[nextIndex].hash+'" title="'+imageData.title+'">&nbsp;</a></span>').find("span.current").css("opacity","0");newSlide.find("a").append(imageData.image).click(function(e){gallery.clickHandler(e,this)});var newCaption=0;if(this.$captionContainer){newCaption=this.$captionContainer.append('<span class="image-caption current"></span>').find("span.current").css("opacity","0").append(imageData.caption)}if(this.$loadingContainer){this.$loadingContainer.hide()}if(this.onTransitionIn){this.onTransitionIn(newSlide,newCaption,isSync)}else{newSlide.fadeTo(this.getDefaultTransitionDuration(isSync),1);if(newCaption){newCaption.fadeTo(this.getDefaultTransitionDuration(isSync),1)}}if(this.isSlideshowRunning){if(this.slideshowTimeout){clearTimeout(this.slideshowTimeout)}this.slideshowTimeout=setTimeout(function(){gallery.ssAdvance()},this.delay)}return this},getCurrentPage:function(){return Math.floor(this.currentImage.index/this.numThumbs)},syncThumbs:function(){var page=this.getCurrentPage();if(page!=this.displayedPage){this.updateThumbs()}var $thumbs=this.find("ul.thumbs").children();$thumbs.filter(".selected").removeClass("selected");$thumbs.eq(this.currentImage.index).addClass("selected");return this},updateThumbs:function(postTransitionOutHandler){var gallery=this;var transitionOutCallback=function(){if(postTransitionOutHandler){postTransitionOutHandler()}gallery.rebuildThumbs();if(gallery.onPageTransitionIn){gallery.onPageTransitionIn()}else{gallery.show()}};if(this.onPageTransitionOut){this.onPageTransitionOut(transitionOutCallback)}else{this.hide();transitionOutCallback()}return this},rebuildThumbs:function(){var needsPagination=this.data.length>this.numThumbs;if(this.enableTopPager){var $topPager=this.find("div.top");if($topPager.length==0){$topPager=this.prepend('<div class="top pagination"></div>').find("div.top")}else{$topPager.empty()}if(needsPagination){this.buildPager($topPager)}}if(this.enableBottomPager){var $bottomPager=this.find("div.bottom");if($bottomPager.length==0){$bottomPager=this.append('<div class="bottom pagination"></div>').find("div.bottom")}else{$bottomPager.empty()}if(needsPagination){this.buildPager($bottomPager)}}var page=this.getCurrentPage();var startIndex=page*this.numThumbs;var stopIndex=startIndex+this.numThumbs-1;if(stopIndex>=this.data.length){stopIndex=this.data.length-1}var $thumbsUl=this.find("ul.thumbs");$thumbsUl.find("li").each(function(i){var $li=$(this);if(i>=startIndex&&i<=stopIndex){$li.show()}else{$li.hide()}});this.displayedPage=page;$thumbsUl.removeClass("noscript");return this},getNumPages:function(){return Math.ceil(this.data.length/this.numThumbs)},buildPager:function(pager){var gallery=this;var numPages=this.getNumPages();var page=this.getCurrentPage();var startIndex=page*this.numThumbs;var pagesRemaining=this.maxPagesToShow-1;var pageNum=page-Math.floor((this.maxPagesToShow-1)/2)+1;if(pageNum>0){var remainingPageCount=numPages-pageNum;if(remainingPageCount<pagesRemaining){pageNum=pageNum-(pagesRemaining-remainingPageCount)}}if(pageNum<0){pageNum=0}if(page>0){var prevPage=startIndex-this.numThumbs;pager.append('<a rel="history" href="#'+this.data[prevPage].hash+'" title="'+this.prevPageLinkText+'">'+this.prevPageLinkText+"</a>")}if(pageNum>0){this.buildPageLink(pager,0,numPages);if(pageNum>1){pager.append('<span class="ellipsis">&hellip;</span>')}pagesRemaining--}while(pagesRemaining>0){this.buildPageLink(pager,pageNum,numPages);pagesRemaining--;pageNum++}if(pageNum<numPages){var lastPageNum=numPages-1;if(pageNum<lastPageNum){pager.append('<span class="ellipsis">&hellip;</span>')}this.buildPageLink(pager,lastPageNum,numPages)}var nextPage=startIndex+this.numThumbs;if(nextPage<this.data.length){pager.append('<a rel="history" href="#'+this.data[nextPage].hash+'" title="'+this.nextPageLinkText+'">'+this.nextPageLinkText+"</a>")}pager.find("a").click(function(e){gallery.clickHandler(e,this)});return this},buildPageLink:function(pager,pageNum,numPages){var pageLabel=pageNum+1;var currentPage=this.getCurrentPage();if(pageNum==currentPage){pager.append('<span class="current">'+pageLabel+"</span>")}else{if(pageNum<numPages){var imageIndex=pageNum*this.numThumbs;pager.append('<a rel="history" href="#'+this.data[imageIndex].hash+'" title="'+pageLabel+'">'+pageLabel+"</a>")}}return this}});$.extend(this,defaults,settings);if(this.enableHistory&&!$.historyInit){this.enableHistory=false}if(this.imageContainerSel){this.$imageContainer=$(this.imageContainerSel)}if(this.captionContainerSel){this.$captionContainer=$(this.captionContainerSel)}if(this.loadingContainerSel){this.$loadingContainer=$(this.loadingContainerSel)}this.initializeThumbs();if(this.maxPagesToShow<3){this.maxPagesToShow=3}this.displayedPage=-1;this.currentImage=this.data[0];var gallery=this;if(this.$loadingContainer){this.$loadingContainer.hide()}if(this.controlsContainerSel){this.$controlsContainer=$(this.controlsContainerSel).empty();if(this.renderSSControls){if(this.autoStart){this.$controlsContainer.append('<div class="ss-controls"><a href="#pause" class="pause" title="'+this.pauseLinkText+'">'+this.pauseLinkText+"</a></div>")}else{this.$controlsContainer.append('<div class="ss-controls"><a href="#play" class="play" title="'+this.playLinkText+'">'+this.playLinkText+"</a></div>")}this.$controlsContainer.find("div.ss-controls a").click(function(e){gallery.toggleSlideshow();e.preventDefault();return false})}if(this.renderNavControls){this.$controlsContainer.append('<div class="nav-controls"><a class="prev" rel="history" title="'+this.prevLinkText+'">'+this.prevLinkText+'</a><a class="next" rel="history" title="'+this.nextLinkText+'">'+this.nextLinkText+"</a></div>").find("div.nav-controls a").click(function(e){gallery.clickHandler(e,this)})}}var initFirstImage=!this.enableHistory||!location.hash;if(this.enableHistory&&location.hash){var hash=$.galleriffic.normalizeHash(location.hash);var imageData=allImages[hash];if(!imageData){initFirstImage=true}}if(initFirstImage){this.gotoIndex(0,false,true)}if(this.enableKeyboardNavigation){$(document).keydown(function(e){var key=e.charCode?e.charCode:e.keyCode?e.keyCode:0;switch(key){case 32:gallery.next();e.preventDefault();break;case 33:gallery.previousPage();e.preventDefault();break;case 34:gallery.nextPage();e.preventDefault();break;case 35:gallery.gotoIndex(gallery.data.length-1);e.preventDefault();break;case 36:gallery.gotoIndex(0);e.preventDefault();break;case 37:gallery.previous();e.preventDefault();break;case 39:gallery.next();e.preventDefault();break}})}if(this.autoStart){this.play()}setTimeout(function(){gallery.preloadInit()},1000);return this}})(jQuery);
/*
* Raphael 1.4.7 - JavaScript Vector Library
*
* Copyright (c) 2010 Dmitry Baranovskiy (http://raphaeljs.com)
* Licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) license.
*/
Raphael=(function(){function R(){if(R.is(arguments[0],array)){var a=arguments[0],cnv=create[apply](R,a.splice(0,3+R.is(a[0],nu))),res=cnv.set();for(var i=0,ii=a[length];i<ii;i++){var j=a[i]||{};elements.test(j.type)&&res[push](cnv[j.type]().attr(j))}return res}return create[apply](R,arguments)}R.version="1.4.7";var separator=/[, ]+/,elements=/^(circle|rect|path|ellipse|text|image)$/,proto="prototype",has="hasOwnProperty",doc=document,win=window,oldRaphael={was:Object[proto][has].call(win,"Raphael"),is:win.Raphael},Paper=function(){},appendChild="appendChild",apply="apply",concat="concat",supportsTouch="createTouch" in doc,E="",S=" ",Str=String,split="split",events="click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend orientationchange touchcancel gesturestart gesturechange gestureend"[split](S),touchMap={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},join="join",length="length",lowerCase=String[proto].toLowerCase,math=Math,mmax=math.max,mmin=math.min,nu="number",string="string",array="array",toString="toString",fillString="fill",objectToString=Object[proto][toString],paper={},pow=math.pow,push="push",rg=/^(?=[\da-f]$)/,ISURL=/^url\(['"]?([^\)]+?)['"]?\)$/i,colourRegExp=/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+\s*,\s*[\d\.]+\s*,\s*[\d\.]+(?:\s*,\s*[\d\.]+)?)\s*\)|rgba?\(\s*([\d\.]+%\s*,\s*[\d\.]+%\s*,\s*[\d\.]+%(?:\s*,\s*[\d\.]+%)?)\s*\)|hsb\(\s*([\d\.]+(?:deg|\xb0)?\s*,\s*[\d\.]+\s*,\s*[\d\.]+)\s*\)|hsb\(\s*([\d\.]+(?:deg|\xb0|%)\s*,\s*[\d\.]+%\s*,\s*[\d\.]+%)\s*\)|hsl\(\s*([\d\.]+(?:deg|\xb0)?\s*,\s*[\d\.]+\s*,\s*[\d\.]+)\s*\)|hsl\(\s*([\d\.]+(?:deg|\xb0|%)\s*,\s*[\d\.]+%\s*,\s*[\d\.]+%)\s*\))\s*$/i,round=math.round,setAttribute="setAttribute",toFloat=parseFloat,toInt=parseInt,ms=" progid:DXImageTransform.Microsoft",upperCase=String[proto].toUpperCase,availableAttrs={blur:0,"clip-rect":"0 0 1e9 1e9",cursor:"default",cx:0,cy:0,fill:"#fff","fill-opacity":1,font:'10px "Arial"',"font-family":'"Arial"',"font-size":"10","font-style":"normal","font-weight":400,gradient:0,height:0,href:"http://raphaeljs.com/",opacity:1,path:"M0,0",r:0,rotation:0,rx:0,ry:0,scale:"1 1",src:"",stroke:"#000","stroke-dasharray":"","stroke-linecap":"butt","stroke-linejoin":"butt","stroke-miterlimit":0,"stroke-opacity":1,"stroke-width":1,target:"_blank","text-anchor":"middle",title:"Raphael",translation:"0 0",width:0,x:0,y:0},availableAnimAttrs={along:"along",blur:nu,"clip-rect":"csv",cx:nu,cy:nu,fill:"colour","fill-opacity":nu,"font-size":nu,height:nu,opacity:nu,path:"path",r:nu,rotation:"csv",rx:nu,ry:nu,scale:"csv",stroke:"colour","stroke-opacity":nu,"stroke-width":nu,translation:"csv",width:nu,x:nu,y:nu},rp="replace";R.type=(win.SVGAngle||doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML");if(R.type=="VML"){var d=doc.createElement("div"),b;d.innerHTML='<v:shape adj="1"/>';b=d.firstChild;b.style.behavior="url(#default#VML)";if(!(b&&typeof b.adj=="object")){return R.type=null}d=null}R.svg=!(R.vml=R.type=="VML");Paper[proto]=R[proto];R._id=0;R._oid=0;R.fn={};R.is=function(o,type){type=lowerCase.call(type);return(type=="object"&&o===Object(o))||(type=="undefined"&&typeof o==type)||(type=="null"&&o==null)||(type=="array"&&Array.isArray&&Array.isArray(o))||lowerCase.call(objectToString.call(o).slice(8,-1))==type};R.setWindow=function(newwin){win=newwin;doc=win.document};var toHex=function(color){if(R.vml){var trim=/^\s+|\s+$/g;toHex=cacher(function(color){var bod;color=Str(color)[rp](trim,E);try{var docum=new win.ActiveXObject("htmlfile");docum.write("<body>");docum.close();bod=docum.body}catch(e){bod=win.createPopup().document.body}var range=bod.createTextRange();try{bod.style.color=color;var value=range.queryCommandValue("ForeColor");value=((value&255)<<16)|(value&65280)|((value&16711680)>>>16);return"#"+("000000"+value[toString](16)).slice(-6)}catch(e){return"none"}})}else{var i=doc.createElement("i");i.title="Rapha\xebl Colour Picker";i.style.display="none";doc.body[appendChild](i);toHex=cacher(function(color){i.style.color=color;return doc.defaultView.getComputedStyle(i,E).getPropertyValue("color")})}return toHex(color)},hsbtoString=function(){return"hsb("+[this.h,this.s,this.b]+")"},hsltoString=function(){return"hsl("+[this.h,this.s,this.l]+")"},rgbtoString=function(){return this.hex};R.hsb2rgb=function(h,s,b){if(R.is(h,"object")&&"h" in h&&"s" in h&&"b" in h){b=h.b;s=h.s;h=h.h}return R.hsl2rgb(h,s,b/2)};R.hsl2rgb=function(h,s,l){if(R.is(h,"object")&&"h" in h&&"s" in h&&"l" in h){l=h.l;s=h.s;h=h.h}var rgb={},channels=["r","g","b"],t2,t1,t3,r,g,b;if(!s){rgb={r:l,g:l,b:l}}else{if(l<0.5){t2=l*(1+s)}else{t2=l+s-l*s}t1=2*l-t2;for(var i=0,ii=channels.length;i<ii;i++){t3=h+1/3*-(i-1);t3<0&&t3++;t3>1&&t3--;if(t3*6<1){rgb[channels[i]]=t1+(t2-t1)*6*t3}else{if(t3*2<1){rgb[channels[i]]=t2}else{if(t3*3<2){rgb[channels[i]]=t1+(t2-t1)*(2/3-t3)*6}else{rgb[channels[i]]=t1}}}}}rgb.r*=255;rgb.g*=255;rgb.b*=255;r=(~~rgb.r)[toString](16);g=(~~rgb.g)[toString](16);b=(~~rgb.b)[toString](16);r=r[rp](rg,"0");g=g[rp](rg,"0");b=b[rp](rg,"0");rgb.hex="#"+r+g+b;rgb.toString=rgbtoString;return rgb};R.rgb2hsb=function(red,green,blue){if(green==null&&R.is(red,"object")&&"r" in red&&"g" in red&&"b" in red){blue=red.b;green=red.g;red=red.r}if(green==null&&R.is(red,string)){var clr=R.getRGB(red);red=clr.r;green=clr.g;blue=clr.b}if(red>1||green>1||blue>1){red/=255;green/=255;blue/=255}var max=mmax(red,green,blue),min=mmin(red,green,blue),hue,saturation,brightness=max;if(min==max){return{h:0,s:0,b:max,toString:hsbtoString}}else{var delta=(max-min);saturation=delta/max;if(red==max){hue=(green-blue)/delta}else{if(green==max){hue=2+((blue-red)/delta)}else{hue=4+((red-green)/delta)}}hue/=6;hue<0&&hue++;hue>1&&hue--}return{h:hue,s:saturation,b:brightness,toString:hsbtoString}};R.rgb2hsl=function(red,green,blue){if(green==null&&R.is(red,"object")&&"r" in red&&"g" in red&&"b" in red){blue=red.b;green=red.g;red=red.r}if(green==null&&R.is(red,string)){var clr=R.getRGB(red);red=clr.r;green=clr.g;blue=clr.b}if(red>1||green>1||blue>1){red/=255;green/=255;blue/=255}var max=mmax(red,green,blue),min=mmin(red,green,blue),h,s,l=(max+min)/2,hsl;if(min==max){hsl={h:0,s:0,l:l}}else{var delta=max-min;s=l<0.5?delta/(max+min):delta/(2-max-min);if(red==max){h=(green-blue)/delta}else{if(green==max){h=2+(blue-red)/delta}else{h=4+(red-green)/delta}}h/=6;h<0&&h++;h>1&&h--;hsl={h:h,s:s,l:l}}hsl.toString=hsltoString;return hsl};var p2s=/,?([achlmqrstvxz]),?/gi,commaSpaces=/\s*,\s*/,hsrg={hs:1,rg:1};R._path2string=function(){return this.join(",")[rp](p2s,"$1")};function cacher(f,scope,postprocessor){function newf(){var arg=Array[proto].slice.call(arguments,0),args=arg[join]("\u25ba"),cache=newf.cache=newf.cache||{},count=newf.count=newf.count||[];if(cache[has](args)){return postprocessor?postprocessor(cache[args]):cache[args]}count[length]>=1000&&delete cache[count.shift()];count[push](args);cache[args]=f[apply](scope,arg);return postprocessor?postprocessor(cache[args]):cache[args]}return newf}R.getRGB=cacher(function(colour){if(!colour||!!((colour=Str(colour)).indexOf("-")+1)){return{r:-1,g:-1,b:-1,hex:"none",error:1}}if(colour=="none"){return{r:-1,g:-1,b:-1,hex:"none"}}!(hsrg[has](colour.substring(0,2))||colour.charAt()=="#")&&(colour=toHex(colour));var res,red,green,blue,opacity,t,rgb=colour.match(colourRegExp);if(rgb){if(rgb[2]){blue=toInt(rgb[2].substring(5),16);green=toInt(rgb[2].substring(3,5),16);red=toInt(rgb[2].substring(1,3),16)}if(rgb[3]){blue=toInt((t=rgb[3].charAt(3))+t,16);green=toInt((t=rgb[3].charAt(2))+t,16);red=toInt((t=rgb[3].charAt(1))+t,16)}if(rgb[4]){rgb=rgb[4][split](commaSpaces);red=toFloat(rgb[0]);green=toFloat(rgb[1]);blue=toFloat(rgb[2]);opacity=toFloat(rgb[3])}if(rgb[5]){rgb=rgb[5][split](commaSpaces);red=toFloat(rgb[0])*2.55;green=toFloat(rgb[1])*2.55;blue=toFloat(rgb[2])*2.55;opacity=toFloat(rgb[3])}if(rgb[6]){rgb=rgb[6][split](commaSpaces);red=toFloat(rgb[0]);green=toFloat(rgb[1]);blue=toFloat(rgb[2]);(rgb[0].slice(-3)=="deg"||rgb[0].slice(-1)=="\xb0")&&(red/=360);return R.hsb2rgb(red,green,blue)}if(rgb[7]){rgb=rgb[7][split](commaSpaces);red=toFloat(rgb[0])*2.55;green=toFloat(rgb[1])*2.55;blue=toFloat(rgb[2])*2.55;(rgb[0].slice(-3)=="deg"||rgb[0].slice(-1)=="\xb0")&&(red/=360*2.55);return R.hsb2rgb(red,green,blue)}if(rgb[8]){rgb=rgb[8][split](commaSpaces);red=toFloat(rgb[0]);green=toFloat(rgb[1]);blue=toFloat(rgb[2]);(rgb[0].slice(-3)=="deg"||rgb[0].slice(-1)=="\xb0")&&(red/=360);return R.hsl2rgb(red,green,blue)}if(rgb[9]){rgb=rgb[9][split](commaSpaces);red=toFloat(rgb[0])*2.55;green=toFloat(rgb[1])*2.55;blue=toFloat(rgb[2])*2.55;(rgb[0].slice(-3)=="deg"||rgb[0].slice(-1)=="\xb0")&&(red/=360*2.55);return R.hsl2rgb(red,green,blue)}rgb={r:red,g:green,b:blue};var r=(~~red)[toString](16),g=(~~green)[toString](16),b=(~~blue)[toString](16);r=r[rp](rg,"0");g=g[rp](rg,"0");b=b[rp](rg,"0");rgb.hex="#"+r+g+b;isFinite(toFloat(opacity))&&(rgb.o=opacity);return rgb}return{r:-1,g:-1,b:-1,hex:"none",error:1}},R);R.getColor=function(value){var start=this.getColor.start=this.getColor.start||{h:0,s:1,b:value||0.75},rgb=this.hsb2rgb(start.h,start.s,start.b);start.h+=0.075;if(start.h>1){start.h=0;start.s-=0.2;start.s<=0&&(this.getColor.start={h:0,s:1,b:start.b})}return rgb.hex};R.getColor.reset=function(){delete this.start};var pathCommand=/([achlmqstvz])[\s,]*((-?\d*\.?\d*(?:e[-+]?\d+)?\s*,?\s*)+)/ig,pathValues=/(-?\d*\.?\d*(?:e[-+]?\d+)?)\s*,?\s*/ig;R.parsePathString=cacher(function(pathString){if(!pathString){return null}var paramCounts={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},data=[];if(R.is(pathString,array)&&R.is(pathString[0],array)){data=pathClone(pathString)}if(!data[length]){Str(pathString)[rp](pathCommand,function(a,b,c){var params=[],name=lowerCase.call(b);c[rp](pathValues,function(a,b){b&&params[push](+b)});if(name=="m"&&params[length]>2){data[push]([b][concat](params.splice(0,2)));name="l";b=b=="m"?"l":"L"}while(params[length]>=paramCounts[name]){data[push]([b][concat](params.splice(0,paramCounts[name])));if(!paramCounts[name]){break}}})}data[toString]=R._path2string;return data});R.findDotsAtSegment=function(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t){var t1=1-t,x=pow(t1,3)*p1x+pow(t1,2)*3*t*c1x+t1*3*t*t*c2x+pow(t,3)*p2x,y=pow(t1,3)*p1y+pow(t1,2)*3*t*c1y+t1*3*t*t*c2y+pow(t,3)*p2y,mx=p1x+2*t*(c1x-p1x)+t*t*(c2x-2*c1x+p1x),my=p1y+2*t*(c1y-p1y)+t*t*(c2y-2*c1y+p1y),nx=c1x+2*t*(c2x-c1x)+t*t*(p2x-2*c2x+c1x),ny=c1y+2*t*(c2y-c1y)+t*t*(p2y-2*c2y+c1y),ax=(1-t)*p1x+t*c1x,ay=(1-t)*p1y+t*c1y,cx=(1-t)*c2x+t*p2x,cy=(1-t)*c2y+t*p2y,alpha=(90-math.atan((mx-nx)/(my-ny))*180/math.PI);(mx>nx||my<ny)&&(alpha+=180);return{x:x,y:y,m:{x:mx,y:my},n:{x:nx,y:ny},start:{x:ax,y:ay},end:{x:cx,y:cy},alpha:alpha}};var pathDimensions=cacher(function(path){if(!path){return{x:0,y:0,width:0,height:0}}path=path2curve(path);var x=0,y=0,X=[],Y=[],p;for(var i=0,ii=path[length];i<ii;i++){p=path[i];if(p[0]=="M"){x=p[1];y=p[2];X[push](x);Y[push](y)}else{var dim=curveDim(x,y,p[1],p[2],p[3],p[4],p[5],p[6]);X=X[concat](dim.min.x,dim.max.x);Y=Y[concat](dim.min.y,dim.max.y);x=p[5];y=p[6]}}var xmin=mmin[apply](0,X),ymin=mmin[apply](0,Y);return{x:xmin,y:ymin,width:mmax[apply](0,X)-xmin,height:mmax[apply](0,Y)-ymin}}),pathClone=function(pathArray){var res=[];if(!R.is(pathArray,array)||!R.is(pathArray&&pathArray[0],array)){pathArray=R.parsePathString(pathArray)}for(var i=0,ii=pathArray[length];i<ii;i++){res[i]=[];for(var j=0,jj=pathArray[i][length];j<jj;j++){res[i][j]=pathArray[i][j]}}res[toString]=R._path2string;return res},pathToRelative=cacher(function(pathArray){if(!R.is(pathArray,array)||!R.is(pathArray&&pathArray[0],array)){pathArray=R.parsePathString(pathArray)}var res=[],x=0,y=0,mx=0,my=0,start=0;if(pathArray[0][0]=="M"){x=pathArray[0][1];y=pathArray[0][2];mx=x;my=y;start++;res[push](["M",x,y])}for(var i=start,ii=pathArray[length];i<ii;i++){var r=res[i]=[],pa=pathArray[i];if(pa[0]!=lowerCase.call(pa[0])){r[0]=lowerCase.call(pa[0]);switch(r[0]){case"a":r[1]=pa[1];r[2]=pa[2];r[3]=pa[3];r[4]=pa[4];r[5]=pa[5];r[6]=+(pa[6]-x).toFixed(3);r[7]=+(pa[7]-y).toFixed(3);break;case"v":r[1]=+(pa[1]-y).toFixed(3);break;case"m":mx=pa[1];my=pa[2];default:for(var j=1,jj=pa[length];j<jj;j++){r[j]=+(pa[j]-((j%2)?x:y)).toFixed(3)}}}else{r=res[i]=[];if(pa[0]=="m"){mx=pa[1]+x;my=pa[2]+y}for(var k=0,kk=pa[length];k<kk;k++){res[i][k]=pa[k]}}var len=res[i][length];switch(res[i][0]){case"z":x=mx;y=my;break;case"h":x+=+res[i][len-1];break;case"v":y+=+res[i][len-1];break;default:x+=+res[i][len-2];y+=+res[i][len-1]}}res[toString]=R._path2string;return res},0,pathClone),pathToAbsolute=cacher(function(pathArray){if(!R.is(pathArray,array)||!R.is(pathArray&&pathArray[0],array)){pathArray=R.parsePathString(pathArray)}var res=[],x=0,y=0,mx=0,my=0,start=0;if(pathArray[0][0]=="M"){x=+pathArray[0][1];y=+pathArray[0][2];mx=x;my=y;start++;res[0]=["M",x,y]}for(var i=start,ii=pathArray[length];i<ii;i++){var r=res[i]=[],pa=pathArray[i];if(pa[0]!=upperCase.call(pa[0])){r[0]=upperCase.call(pa[0]);switch(r[0]){case"A":r[1]=pa[1];r[2]=pa[2];r[3]=pa[3];r[4]=pa[4];r[5]=pa[5];r[6]=+(pa[6]+x);r[7]=+(pa[7]+y);break;case"V":r[1]=+pa[1]+y;break;case"H":r[1]=+pa[1]+x;break;case"M":mx=+pa[1]+x;my=+pa[2]+y;default:for(var j=1,jj=pa[length];j<jj;j++){r[j]=+pa[j]+((j%2)?x:y)}}}else{for(var k=0,kk=pa[length];k<kk;k++){res[i][k]=pa[k]}}switch(r[0]){case"Z":x=mx;y=my;break;case"H":x=r[1];break;case"V":y=r[1];break;case"M":mx=res[i][res[i][length]-2];my=res[i][res[i][length]-1];default:x=res[i][res[i][length]-2];y=res[i][res[i][length]-1]}}res[toString]=R._path2string;return res},null,pathClone),l2c=function(x1,y1,x2,y2){return[x1,y1,x2,y2,x2,y2]},q2c=function(x1,y1,ax,ay,x2,y2){var _13=1/3,_23=2/3;return[_13*x1+_23*ax,_13*y1+_23*ay,_13*x2+_23*ax,_13*y2+_23*ay,x2,y2]},a2c=function(x1,y1,rx,ry,angle,large_arc_flag,sweep_flag,x2,y2,recursive){var PI=math.PI,_120=PI*120/180,rad=PI/180*(+angle||0),res=[],xy,rotate=cacher(function(x,y,rad){var X=x*math.cos(rad)-y*math.sin(rad),Y=x*math.sin(rad)+y*math.cos(rad);return{x:X,y:Y}});if(!recursive){xy=rotate(x1,y1,-rad);x1=xy.x;y1=xy.y;xy=rotate(x2,y2,-rad);x2=xy.x;y2=xy.y;var cos=math.cos(PI/180*angle),sin=math.sin(PI/180*angle),x=(x1-x2)/2,y=(y1-y2)/2;var h=(x*x)/(rx*rx)+(y*y)/(ry*ry);if(h>1){h=math.sqrt(h);rx=h*rx;ry=h*ry}var rx2=rx*rx,ry2=ry*ry,k=(large_arc_flag==sweep_flag?-1:1)*math.sqrt(math.abs((rx2*ry2-rx2*y*y-ry2*x*x)/(rx2*y*y+ry2*x*x))),cx=k*rx*y/ry+(x1+x2)/2,cy=k*-ry*x/rx+(y1+y2)/2,f1=math.asin(((y1-cy)/ry).toFixed(7)),f2=math.asin(((y2-cy)/ry).toFixed(7));f1=x1<cx?PI-f1:f1;f2=x2<cx?PI-f2:f2;f1<0&&(f1=PI*2+f1);f2<0&&(f2=PI*2+f2);if(sweep_flag&&f1>f2){f1=f1-PI*2}if(!sweep_flag&&f2>f1){f2=f2-PI*2}}else{f1=recursive[0];f2=recursive[1];cx=recursive[2];cy=recursive[3]}var df=f2-f1;if(math.abs(df)>_120){var f2old=f2,x2old=x2,y2old=y2;f2=f1+_120*(sweep_flag&&f2>f1?1:-1);x2=cx+rx*math.cos(f2);y2=cy+ry*math.sin(f2);res=a2c(x2,y2,rx,ry,angle,0,sweep_flag,x2old,y2old,[f2,f2old,cx,cy])}df=f2-f1;var c1=math.cos(f1),s1=math.sin(f1),c2=math.cos(f2),s2=math.sin(f2),t=math.tan(df/4),hx=4/3*rx*t,hy=4/3*ry*t,m1=[x1,y1],m2=[x1+hx*s1,y1-hy*c1],m3=[x2+hx*s2,y2-hy*c2],m4=[x2,y2];m2[0]=2*m1[0]-m2[0];m2[1]=2*m1[1]-m2[1];if(recursive){return[m2,m3,m4][concat](res)}else{res=[m2,m3,m4][concat](res)[join]()[split](",");var newres=[];for(var i=0,ii=res[length];i<ii;i++){newres[i]=i%2?rotate(res[i-1],res[i],rad).y:rotate(res[i],res[i+1],rad).x}return newres}},findDotAtSegment=function(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t){var t1=1-t;return{x:pow(t1,3)*p1x+pow(t1,2)*3*t*c1x+t1*3*t*t*c2x+pow(t,3)*p2x,y:pow(t1,3)*p1y+pow(t1,2)*3*t*c1y+t1*3*t*t*c2y+pow(t,3)*p2y}},curveDim=cacher(function(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y){var a=(c2x-2*c1x+p1x)-(p2x-2*c2x+c1x),b=2*(c1x-p1x)-2*(c2x-c1x),c=p1x-c1x,t1=(-b+math.sqrt(b*b-4*a*c))/2/a,t2=(-b-math.sqrt(b*b-4*a*c))/2/a,y=[p1y,p2y],x=[p1x,p2x],dot;math.abs(t1)>1000000000000&&(t1=0.5);math.abs(t2)>1000000000000&&(t2=0.5);if(t1>0&&t1<1){dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t1);x[push](dot.x);y[push](dot.y)}if(t2>0&&t2<1){dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t2);x[push](dot.x);y[push](dot.y)}a=(c2y-2*c1y+p1y)-(p2y-2*c2y+c1y);b=2*(c1y-p1y)-2*(c2y-c1y);c=p1y-c1y;t1=(-b+math.sqrt(b*b-4*a*c))/2/a;t2=(-b-math.sqrt(b*b-4*a*c))/2/a;math.abs(t1)>1000000000000&&(t1=0.5);math.abs(t2)>1000000000000&&(t2=0.5);if(t1>0&&t1<1){dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t1);x[push](dot.x);y[push](dot.y)}if(t2>0&&t2<1){dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,t2);x[push](dot.x);y[push](dot.y)}return{min:{x:mmin[apply](0,x),y:mmin[apply](0,y)},max:{x:mmax[apply](0,x),y:mmax[apply](0,y)}}}),path2curve=cacher(function(path,path2){var p=pathToAbsolute(path),p2=path2&&pathToAbsolute(path2),attrs={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},attrs2={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},processPath=function(path,d){var nx,ny;if(!path){return["C",d.x,d.y,d.x,d.y,d.x,d.y]}!(path[0] in {T:1,Q:1})&&(d.qx=d.qy=null);switch(path[0]){case"M":d.X=path[1];d.Y=path[2];break;case"A":path=["C"][concat](a2c[apply](0,[d.x,d.y][concat](path.slice(1))));break;case"S":nx=d.x+(d.x-(d.bx||d.x));ny=d.y+(d.y-(d.by||d.y));path=["C",nx,ny][concat](path.slice(1));break;case"T":d.qx=d.x+(d.x-(d.qx||d.x));d.qy=d.y+(d.y-(d.qy||d.y));path=["C"][concat](q2c(d.x,d.y,d.qx,d.qy,path[1],path[2]));break;case"Q":d.qx=path[1];d.qy=path[2];path=["C"][concat](q2c(d.x,d.y,path[1],path[2],path[3],path[4]));break;case"L":path=["C"][concat](l2c(d.x,d.y,path[1],path[2]));break;case"H":path=["C"][concat](l2c(d.x,d.y,path[1],d.y));break;case"V":path=["C"][concat](l2c(d.x,d.y,d.x,path[1]));break;case"Z":path=["C"][concat](l2c(d.x,d.y,d.X,d.Y));break}return path},fixArc=function(pp,i){if(pp[i][length]>7){pp[i].shift();var pi=pp[i];while(pi[length]){pp.splice(i++,0,["C"][concat](pi.splice(0,6)))}pp.splice(i,1);ii=mmax(p[length],p2&&p2[length]||0)}},fixM=function(path1,path2,a1,a2,i){if(path1&&path2&&path1[i][0]=="M"&&path2[i][0]!="M"){path2.splice(i,0,["M",a2.x,a2.y]);a1.bx=0;a1.by=0;a1.x=path1[i][1];a1.y=path1[i][2];ii=mmax(p[length],p2&&p2[length]||0)}};for(var i=0,ii=mmax(p[length],p2&&p2[length]||0);i<ii;i++){p[i]=processPath(p[i],attrs);fixArc(p,i);p2&&(p2[i]=processPath(p2[i],attrs2));p2&&fixArc(p2,i);fixM(p,p2,attrs,attrs2,i);fixM(p2,p,attrs2,attrs,i);var seg=p[i],seg2=p2&&p2[i],seglen=seg[length],seg2len=p2&&seg2[length];attrs.x=seg[seglen-2];attrs.y=seg[seglen-1];attrs.bx=toFloat(seg[seglen-4])||attrs.x;attrs.by=toFloat(seg[seglen-3])||attrs.y;attrs2.bx=p2&&(toFloat(seg2[seg2len-4])||attrs2.x);attrs2.by=p2&&(toFloat(seg2[seg2len-3])||attrs2.y);attrs2.x=p2&&seg2[seg2len-2];attrs2.y=p2&&seg2[seg2len-1]}return p2?[p,p2]:p},null,pathClone),parseDots=cacher(function(gradient){var dots=[];for(var i=0,ii=gradient[length];i<ii;i++){var dot={},par=gradient[i].match(/^([^:]*):?([\d\.]*)/);dot.color=R.getRGB(par[1]);if(dot.color.error){return null}dot.color=dot.color.hex;par[2]&&(dot.offset=par[2]+"%");dots[push](dot)}for(i=1,ii=dots[length]-1;i<ii;i++){if(!dots[i].offset){var start=toFloat(dots[i-1].offset||0),end=0;for(var j=i+1;j<ii;j++){if(dots[j].offset){end=dots[j].offset;break}}if(!end){end=100;j=ii}end=toFloat(end);var d=(end-start)/(j-i+1);for(;i<j;i++){start+=d;dots[i].offset=start+"%"}}}return dots}),getContainer=function(x,y,w,h){var container;if(R.is(x,string)||R.is(x,"object")){container=R.is(x,string)?doc.getElementById(x):x;if(container.tagName){if(y==null){return{container:container,width:container.style.pixelWidth||container.offsetWidth,height:container.style.pixelHeight||container.offsetHeight}}else{return{container:container,width:y,height:w}}}}else{return{container:1,x:x,y:y,width:w,height:h}}},plugins=function(con,add){var that=this;for(var prop in add){if(add[has](prop)&&!(prop in con)){switch(typeof add[prop]){case"function":(function(f){con[prop]=con===that?f:function(){return f[apply](that,arguments)}})(add[prop]);break;case"object":con[prop]=con[prop]||{};plugins.call(this,con[prop],add[prop]);break;default:con[prop]=add[prop];break}}}},tear=function(el,paper){el==paper.top&&(paper.top=el.prev);el==paper.bottom&&(paper.bottom=el.next);el.next&&(el.next.prev=el.prev);el.prev&&(el.prev.next=el.next)},tofront=function(el,paper){if(paper.top===el){return}tear(el,paper);el.next=null;el.prev=paper.top;paper.top.next=el;paper.top=el},toback=function(el,paper){if(paper.bottom===el){return}tear(el,paper);el.next=paper.bottom;el.prev=null;paper.bottom.prev=el;paper.bottom=el},insertafter=function(el,el2,paper){tear(el,paper);el2==paper.top&&(paper.top=el);el2.next&&(el2.next.prev=el);el.next=el2.next;el.prev=el2;el2.next=el},insertbefore=function(el,el2,paper){tear(el,paper);el2==paper.bottom&&(paper.bottom=el);el2.prev&&(el2.prev.next=el);el.prev=el2.prev;el2.prev=el;el.next=el2},removed=function(methodname){return function(){throw new Error("Rapha\xebl: you are calling to method \u201c"+methodname+"\u201d of removed object")}},radial_gradient=/^r(?:\(([^,]+?)\s*,\s*([^\)]+?)\))?/;R.pathToRelative=pathToRelative;if(R.svg){Paper[proto].svgns="http://www.w3.org/2000/svg";Paper[proto].xlink="http://www.w3.org/1999/xlink";round=function(num){return +num+(~~num===num)*0.5};var $=function(el,attr){if(attr){for(var key in attr){if(attr[has](key)){el[setAttribute](key,Str(attr[key]))}}}else{el=doc.createElementNS(Paper[proto].svgns,el);el.style.webkitTapHighlightColor="rgba(0,0,0,0)";return el}};R[toString]=function(){return"Your browser supports SVG.\nYou are running Rapha\xebl "+this.version};var thePath=function(pathString,SVG){var el=$("path");SVG.canvas&&SVG.canvas[appendChild](el);var p=new Element(el,SVG);p.type="path";setFillAndStroke(p,{fill:"none",stroke:"#000",path:pathString});return p};var addGradientFill=function(o,gradient,SVG){var type="linear",fx=0.5,fy=0.5,s=o.style;gradient=Str(gradient)[rp](radial_gradient,function(all,_fx,_fy){type="radial";if(_fx&&_fy){fx=toFloat(_fx);fy=toFloat(_fy);var dir=((fy>0.5)*2-1);pow(fx-0.5,2)+pow(fy-0.5,2)>0.25&&(fy=math.sqrt(0.25-pow(fx-0.5,2))*dir+0.5)&&fy!=0.5&&(fy=fy.toFixed(5)-0.00001*dir)}return E});gradient=gradient[split](/\s*\-\s*/);if(type=="linear"){var angle=gradient.shift();angle=-toFloat(angle);if(isNaN(angle)){return null}var vector=[0,0,math.cos(angle*math.PI/180),math.sin(angle*math.PI/180)],max=1/(mmax(math.abs(vector[2]),math.abs(vector[3]))||1);vector[2]*=max;vector[3]*=max;if(vector[2]<0){vector[0]=-vector[2];vector[2]=0}if(vector[3]<0){vector[1]=-vector[3];vector[3]=0}}var dots=parseDots(gradient);if(!dots){return null}var id=o.getAttribute(fillString);id=id.match(/^url\(#(.*)\)$/);id&&SVG.defs.removeChild(doc.getElementById(id[1]));var el=$(type+"Gradient");el.id="r"+(R._id++)[toString](36);$(el,type=="radial"?{fx:fx,fy:fy}:{x1:vector[0],y1:vector[1],x2:vector[2],y2:vector[3]});SVG.defs[appendChild](el);for(var i=0,ii=dots[length];i<ii;i++){var stop=$("stop");$(stop,{offset:dots[i].offset?dots[i].offset:!i?"0%":"100%","stop-color":dots[i].color||"#fff"});el[appendChild](stop)}$(o,{fill:"url(#"+el.id+")",opacity:1,"fill-opacity":1});s.fill=E;s.opacity=1;s.fillOpacity=1;return 1};var updatePosition=function(o){var bbox=o.getBBox();$(o.pattern,{patternTransform:R.format("translate({0},{1})",bbox.x,bbox.y)})};var setFillAndStroke=function(o,params){var dasharray={"":[0],none:[0],"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},node=o.node,attrs=o.attrs,rot=o.rotate(),addDashes=function(o,value){value=dasharray[lowerCase.call(value)];if(value){var width=o.attrs["stroke-width"]||"1",butt={round:width,square:width,butt:0}[o.attrs["stroke-linecap"]||params["stroke-linecap"]]||0,dashes=[];var i=value[length];while(i--){dashes[i]=value[i]*width+((i%2)?1:-1)*butt}$(node,{"stroke-dasharray":dashes[join](",")})}};params[has]("rotation")&&(rot=params.rotation);var rotxy=Str(rot)[split](separator);if(!(rotxy.length-1)){rotxy=null}else{rotxy[1]=+rotxy[1];rotxy[2]=+rotxy[2]}toFloat(rot)&&o.rotate(0,true);for(var att in params){if(params[has](att)){if(!availableAttrs[has](att)){continue}var value=params[att];attrs[att]=value;switch(att){case"blur":o.blur(value);break;case"rotation":o.rotate(value,true);break;case"href":case"title":case"target":var pn=node.parentNode;if(lowerCase.call(pn.tagName)!="a"){var hl=$("a");pn.insertBefore(hl,node);hl[appendChild](node);pn=hl}pn.setAttributeNS(o.paper.xlink,att,value);break;case"cursor":node.style.cursor=value;break;case"clip-rect":var rect=Str(value)[split](separator);if(rect[length]==4){o.clip&&o.clip.parentNode.parentNode.removeChild(o.clip.parentNode);var el=$("clipPath"),rc=$("rect");el.id="r"+(R._id++)[toString](36);$(rc,{x:rect[0],y:rect[1],width:rect[2],height:rect[3]});el[appendChild](rc);o.paper.defs[appendChild](el);$(node,{"clip-path":"url(#"+el.id+")"});o.clip=rc}if(!value){var clip=doc.getElementById(node.getAttribute("clip-path")[rp](/(^url\(#|\)$)/g,E));clip&&clip.parentNode.removeChild(clip);$(node,{"clip-path":E});delete o.clip}break;case"path":if(o.type=="path"){$(node,{d:value?attrs.path=pathToAbsolute(value):"M0,0"})}break;case"width":node[setAttribute](att,value);if(attrs.fx){att="x";value=attrs.x}else{break}case"x":if(attrs.fx){value=-attrs.x-(attrs.width||0)}case"rx":if(att=="rx"&&o.type=="rect"){break}case"cx":rotxy&&(att=="x"||att=="cx")&&(rotxy[1]+=value-attrs[att]);node[setAttribute](att,value);o.pattern&&updatePosition(o);break;case"height":node[setAttribute](att,value);if(attrs.fy){att="y";value=attrs.y}else{break}case"y":if(attrs.fy){value=-attrs.y-(attrs.height||0)}case"ry":if(att=="ry"&&o.type=="rect"){break}case"cy":rotxy&&(att=="y"||att=="cy")&&(rotxy[2]+=value-attrs[att]);node[setAttribute](att,value);o.pattern&&updatePosition(o);break;case"r":if(o.type=="rect"){$(node,{rx:value,ry:value})}else{node[setAttribute](att,value)}break;case"src":if(o.type=="image"){node.setAttributeNS(o.paper.xlink,"href",value)}break;case"stroke-width":node.style.strokeWidth=value;node[setAttribute](att,value);if(attrs["stroke-dasharray"]){addDashes(o,attrs["stroke-dasharray"])}break;case"stroke-dasharray":addDashes(o,value);break;case"translation":var xy=Str(value)[split](separator);xy[0]=+xy[0]||0;xy[1]=+xy[1]||0;if(rotxy){rotxy[1]+=xy[0];rotxy[2]+=xy[1]}translate.call(o,xy[0],xy[1]);break;case"scale":xy=Str(value)[split](separator);o.scale(+xy[0]||1,+xy[1]||+xy[0]||1,isNaN(toFloat(xy[2]))?null:+xy[2],isNaN(toFloat(xy[3]))?null:+xy[3]);break;case fillString:var isURL=Str(value).match(ISURL);if(isURL){el=$("pattern");var ig=$("image");el.id="r"+(R._id++)[toString](36);$(el,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1});$(ig,{x:0,y:0});ig.setAttributeNS(o.paper.xlink,"href",isURL[1]);el[appendChild](ig);var img=doc.createElement("img");img.style.cssText="position:absolute;left:-9999em;top-9999em";img.onload=function(){$(el,{width:this.offsetWidth,height:this.offsetHeight});$(ig,{width:this.offsetWidth,height:this.offsetHeight});doc.body.removeChild(this);o.paper.safari()};doc.body[appendChild](img);img.src=isURL[1];o.paper.defs[appendChild](el);node.style.fill="url(#"+el.id+")";$(node,{fill:"url(#"+el.id+")"});o.pattern=el;o.pattern&&updatePosition(o);break}var clr=R.getRGB(value);if(!clr.error){delete params.gradient;delete attrs.gradient;!R.is(attrs.opacity,"undefined")&&R.is(params.opacity,"undefined")&&$(node,{opacity:attrs.opacity});!R.is(attrs["fill-opacity"],"undefined")&&R.is(params["fill-opacity"],"undefined")&&$(node,{"fill-opacity":attrs["fill-opacity"]})}else{if((({circle:1,ellipse:1})[has](o.type)||Str(value).charAt()!="r")&&addGradientFill(node,value,o.paper)){attrs.gradient=value;attrs.fill="none";break}}clr[has]("o")&&$(node,{"fill-opacity":clr.o/100});case"stroke":clr=R.getRGB(value);node[setAttribute](att,clr.hex);att=="stroke"&&clr[has]("o")&&$(node,{"stroke-opacity":clr.o/100});break;case"gradient":(({circle:1,ellipse:1})[has](o.type)||Str(value).charAt()!="r")&&addGradientFill(node,value,o.paper);break;case"opacity":case"fill-opacity":if(attrs.gradient){var gradient=doc.getElementById(node.getAttribute(fillString)[rp](/^url\(#|\)$/g,E));if(gradient){var stops=gradient.getElementsByTagName("stop");stops[stops[length]-1][setAttribute]("stop-opacity",value)}break}default:att=="font-size"&&(value=toInt(value,10)+"px");var cssrule=att[rp](/(\-.)/g,function(w){return upperCase.call(w.substring(1))});node.style[cssrule]=value;node[setAttribute](att,value);break}}}tuneText(o,params);if(rotxy){o.rotate(rotxy.join(S))}else{toFloat(rot)&&o.rotate(rot,true)}};var leading=1.2,tuneText=function(el,params){if(el.type!="text"||!(params[has]("text")||params[has]("font")||params[has]("font-size")||params[has]("x")||params[has]("y"))){return}var a=el.attrs,node=el.node,fontSize=node.firstChild?toInt(doc.defaultView.getComputedStyle(node.firstChild,E).getPropertyValue("font-size"),10):10;if(params[has]("text")){a.text=params.text;while(node.firstChild){node.removeChild(node.firstChild)}var texts=Str(params.text)[split]("\n");for(var i=0,ii=texts[length];i<ii;i++){if(texts[i]){var tspan=$("tspan");i&&$(tspan,{dy:fontSize*leading,x:a.x});tspan[appendChild](doc.createTextNode(texts[i]));node[appendChild](tspan)}}}else{texts=node.getElementsByTagName("tspan");for(i=0,ii=texts[length];i<ii;i++){i&&$(texts[i],{dy:fontSize*leading,x:a.x})}}$(node,{y:a.y});var bb=el.getBBox(),dif=a.y-(bb.y+bb.height/2);dif&&isFinite(dif)&&$(node,{y:a.y+dif})},Element=function(node,svg){var X=0,Y=0;this[0]=node;this.id=R._oid++;this.node=node;node.raphael=this;this.paper=svg;this.attrs=this.attrs||{};this.transformations=[];this._={tx:0,ty:0,rt:{deg:0,cx:0,cy:0},sx:1,sy:1};!svg.bottom&&(svg.bottom=this);this.prev=svg.top;svg.top&&(svg.top.next=this);svg.top=this;this.next=null};Element[proto].rotate=function(deg,cx,cy){if(this.removed){return this}if(deg==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy][join](S)}return this._.rt.deg}var bbox=this.getBBox();deg=Str(deg)[split](separator);if(deg[length]-1){cx=toFloat(deg[1]);cy=toFloat(deg[2])}deg=toFloat(deg[0]);if(cx!=null){this._.rt.deg=deg}else{this._.rt.deg+=deg}(cy==null)&&(cx=null);this._.rt.cx=cx;this._.rt.cy=cy;cx=cx==null?bbox.x+bbox.width/2:cx;cy=cy==null?bbox.y+bbox.height/2:cy;if(this._.rt.deg){this.transformations[0]=R.format("rotate({0} {1} {2})",this._.rt.deg,cx,cy);this.clip&&$(this.clip,{transform:R.format("rotate({0} {1} {2})",-this._.rt.deg,cx,cy)})}else{this.transformations[0]=E;this.clip&&$(this.clip,{transform:E})}$(this.node,{transform:this.transformations[join](S)});return this};Element[proto].hide=function(){!this.removed&&(this.node.style.display="none");return this};Element[proto].show=function(){!this.removed&&(this.node.style.display="");return this};Element[proto].remove=function(){if(this.removed){return}tear(this,this.paper);this.node.parentNode.removeChild(this.node);for(var i in this){delete this[i]}this.removed=true};Element[proto].getBBox=function(){if(this.removed){return this}if(this.type=="path"){return pathDimensions(this.attrs.path)}if(this.node.style.display=="none"){this.show();var hide=true}var bbox={};try{bbox=this.node.getBBox()}catch(e){}finally{bbox=bbox||{}}if(this.type=="text"){bbox={x:bbox.x,y:Infinity,width:0,height:0};for(var i=0,ii=this.node.getNumberOfChars();i<ii;i++){var bb=this.node.getExtentOfChar(i);(bb.y<bbox.y)&&(bbox.y=bb.y);(bb.y+bb.height-bbox.y>bbox.height)&&(bbox.height=bb.y+bb.height-bbox.y);(bb.x+bb.width-bbox.x>bbox.width)&&(bbox.width=bb.x+bb.width-bbox.x)}}hide&&this.hide();return bbox};Element[proto].attr=function(name,value){if(this.removed){return this}if(name==null){var res={};for(var i in this.attrs){if(this.attrs[has](i)){res[i]=this.attrs[i]}}this._.rt.deg&&(res.rotation=this.rotate());(this._.sx!=1||this._.sy!=1)&&(res.scale=this.scale());res.gradient&&res.fill=="none"&&(res.fill=res.gradient)&&delete res.gradient;return res}if(value==null&&R.is(name,string)){if(name=="translation"){return translate.call(this)}if(name=="rotation"){return this.rotate()}if(name=="scale"){return this.scale()}if(name==fillString&&this.attrs.fill=="none"&&this.attrs.gradient){return this.attrs.gradient}return this.attrs[name]}if(value==null&&R.is(name,array)){var values={};for(var j=0,jj=name.length;j<jj;j++){values[name[j]]=this.attr(name[j])}return values}if(value!=null){var params={};params[name]=value;setFillAndStroke(this,params)}else{if(name!=null&&R.is(name,"object")){setFillAndStroke(this,name)}}return this};Element[proto].toFront=function(){if(this.removed){return this}this.node.parentNode[appendChild](this.node);var svg=this.paper;svg.top!=this&&tofront(this,svg);return this};Element[proto].toBack=function(){if(this.removed){return this}if(this.node.parentNode.firstChild!=this.node){this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild);toback(this,this.paper);var svg=this.paper}return this};Element[proto].insertAfter=function(element){if(this.removed){return this}var node=element.node||element[element.length].node;if(node.nextSibling){node.parentNode.insertBefore(this.node,node.nextSibling)}else{node.parentNode[appendChild](this.node)}insertafter(this,element,this.paper);return this};Element[proto].insertBefore=function(element){if(this.removed){return this}var node=element.node||element[0].node;node.parentNode.insertBefore(this.node,node);insertbefore(this,element,this.paper);return this};Element[proto].blur=function(size){var t=this;if(+size!==0){var fltr=$("filter"),blur=$("feGaussianBlur");t.attrs.blur=size;fltr.id="r"+(R._id++)[toString](36);$(blur,{stdDeviation:+size||1.5});fltr.appendChild(blur);t.paper.defs.appendChild(fltr);t._blur=fltr;$(t.node,{filter:"url(#"+fltr.id+")"})}else{if(t._blur){t._blur.parentNode.removeChild(t._blur);delete t._blur;delete t.attrs.blur}t.node.removeAttribute("filter")}};var theCircle=function(svg,x,y,r){var el=$("circle");svg.canvas&&svg.canvas[appendChild](el);var res=new Element(el,svg);res.attrs={cx:x,cy:y,r:r,fill:"none",stroke:"#000"};res.type="circle";$(el,res.attrs);return res};var theRect=function(svg,x,y,w,h,r){var el=$("rect");svg.canvas&&svg.canvas[appendChild](el);var res=new Element(el,svg);res.attrs={x:x,y:y,width:w,height:h,r:r||0,rx:r||0,ry:r||0,fill:"none",stroke:"#000"};res.type="rect";$(el,res.attrs);return res};var theEllipse=function(svg,x,y,rx,ry){var el=$("ellipse");svg.canvas&&svg.canvas[appendChild](el);var res=new Element(el,svg);res.attrs={cx:x,cy:y,rx:rx,ry:ry,fill:"none",stroke:"#000"};res.type="ellipse";$(el,res.attrs);return res};var theImage=function(svg,src,x,y,w,h){var el=$("image");$(el,{x:x,y:y,width:w,height:h,preserveAspectRatio:"none"});el.setAttributeNS(svg.xlink,"href",src);svg.canvas&&svg.canvas[appendChild](el);var res=new Element(el,svg);res.attrs={x:x,y:y,width:w,height:h,src:src};res.type="image";return res};var theText=function(svg,x,y,text){var el=$("text");$(el,{x:x,y:y,"text-anchor":"middle"});svg.canvas&&svg.canvas[appendChild](el);var res=new Element(el,svg);res.attrs={x:x,y:y,"text-anchor":"middle",text:text,font:availableAttrs.font,stroke:"none",fill:"#000"};res.type="text";setFillAndStroke(res,res.attrs);return res};var setSize=function(width,height){this.width=width||this.width;this.height=height||this.height;this.canvas[setAttribute]("width",this.width);this.canvas[setAttribute]("height",this.height);return this};var create=function(){var con=getContainer[apply](0,arguments),container=con&&con.container,x=con.x,y=con.y,width=con.width,height=con.height;if(!container){throw new Error("SVG container not found.")}var cnvs=$("svg");x=x||0;y=y||0;width=width||512;height=height||342;$(cnvs,{xmlns:"http://www.w3.org/2000/svg",version:1.1,width:width,height:height});if(container==1){cnvs.style.cssText="position:absolute;left:"+x+"px;top:"+y+"px";doc.body[appendChild](cnvs)}else{if(container.firstChild){container.insertBefore(cnvs,container.firstChild)}else{container[appendChild](cnvs)}}container=new Paper;container.width=width;container.height=height;container.canvas=cnvs;plugins.call(container,container,R.fn);container.clear();return container};Paper[proto].clear=function(){var c=this.canvas;while(c.firstChild){c.removeChild(c.firstChild)}this.bottom=this.top=null;(this.desc=$("desc"))[appendChild](doc.createTextNode("Created with Rapha\xebl"));c[appendChild](this.desc);c[appendChild](this.defs=$("defs"))};Paper[proto].remove=function(){this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var i in this){this[i]=removed(i)}}}if(R.vml){var map={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},bites=/([clmz]),?([^clmz]*)/gi,val=/-?[^,\s-]+/g,coordsize=1000+S+1000,zoom=10,pathlike={path:1,rect:1},path2vml=function(path){var total=/[ahqstv]/ig,command=pathToAbsolute;Str(path).match(total)&&(command=path2curve);total=/[clmz]/g;if(command==pathToAbsolute&&!Str(path).match(total)){var res=Str(path)[rp](bites,function(all,command,args){var vals=[],isMove=lowerCase.call(command)=="m",res=map[command];args[rp](val,function(value){if(isMove&&vals[length]==2){res+=vals+map[command=="m"?"l":"L"];vals=[]}vals[push](round(value*zoom))});return res+vals});return res}var pa=command(path),p,r;res=[];for(var i=0,ii=pa[length];i<ii;i++){p=pa[i];r=lowerCase.call(pa[i][0]);r=="z"&&(r="x");for(var j=1,jj=p[length];j<jj;j++){r+=round(p[j]*zoom)+(j!=jj-1?",":E)}res[push](r)}return res[join](S)};R[toString]=function(){return"Your browser doesn\u2019t support SVG. Falling down to VML.\nYou are running Rapha\xebl "+this.version};thePath=function(pathString,vml){var g=createNode("group");g.style.cssText="position:absolute;left:0;top:0;width:"+vml.width+"px;height:"+vml.height+"px";g.coordsize=vml.coordsize;g.coordorigin=vml.coordorigin;var el=createNode("shape"),ol=el.style;ol.width=vml.width+"px";ol.height=vml.height+"px";el.coordsize=coordsize;el.coordorigin=vml.coordorigin;g[appendChild](el);var p=new Element(el,g,vml),attr={fill:"none",stroke:"#000"};pathString&&(attr.path=pathString);p.isAbsolute=true;p.type="path";p.path=[];p.Path=E;setFillAndStroke(p,attr);vml.canvas[appendChild](g);return p};setFillAndStroke=function(o,params){o.attrs=o.attrs||{};var node=o.node,a=o.attrs,s=node.style,xy,newpath=(params.x!=a.x||params.y!=a.y||params.width!=a.width||params.height!=a.height||params.r!=a.r)&&o.type=="rect",res=o;for(var par in params){if(params[has](par)){a[par]=params[par]}}if(newpath){a.path=rectPath(a.x,a.y,a.width,a.height,a.r);o.X=a.x;o.Y=a.y;o.W=a.width;o.H=a.height}params.href&&(node.href=params.href);params.title&&(node.title=params.title);params.target&&(node.target=params.target);params.cursor&&(s.cursor=params.cursor);"blur" in params&&o.blur(params.blur);if(params.path&&o.type=="path"||newpath){node.path=path2vml(a.path)}if(params.rotation!=null){o.rotate(params.rotation,true)}if(params.translation){xy=Str(params.translation)[split](separator);translate.call(o,xy[0],xy[1]);if(o._.rt.cx!=null){o._.rt.cx+=+xy[0];o._.rt.cy+=+xy[1];o.setBox(o.attrs,xy[0],xy[1])}}if(params.scale){xy=Str(params.scale)[split](separator);o.scale(+xy[0]||1,+xy[1]||+xy[0]||1,+xy[2]||null,+xy[3]||null)}if("clip-rect" in params){var rect=Str(params["clip-rect"])[split](separator);if(rect[length]==4){rect[2]=+rect[2]+(+rect[0]);rect[3]=+rect[3]+(+rect[1]);var div=node.clipRect||doc.createElement("div"),dstyle=div.style,group=node.parentNode;dstyle.clip=R.format("rect({1}px {2}px {3}px {0}px)",rect);if(!node.clipRect){dstyle.position="absolute";dstyle.top=0;dstyle.left=0;dstyle.width=o.paper.width+"px";dstyle.height=o.paper.height+"px";group.parentNode.insertBefore(div,group);div[appendChild](group);node.clipRect=div}}if(!params["clip-rect"]){node.clipRect&&(node.clipRect.style.clip=E)}}if(o.type=="image"&&params.src){node.src=params.src}if(o.type=="image"&&params.opacity){node.filterOpacity=ms+".Alpha(opacity="+(params.opacity*100)+")";s.filter=(node.filterMatrix||E)+(node.filterOpacity||E)}params.font&&(s.font=params.font);params["font-family"]&&(s.fontFamily='"'+params["font-family"][split](",")[0][rp](/^['"]+|['"]+$/g,E)+'"');params["font-size"]&&(s.fontSize=params["font-size"]);params["font-weight"]&&(s.fontWeight=params["font-weight"]);params["font-style"]&&(s.fontStyle=params["font-style"]);if(params.opacity!=null||params["stroke-width"]!=null||params.fill!=null||params.stroke!=null||params["stroke-width"]!=null||params["stroke-opacity"]!=null||params["fill-opacity"]!=null||params["stroke-dasharray"]!=null||params["stroke-miterlimit"]!=null||params["stroke-linejoin"]!=null||params["stroke-linecap"]!=null){node=o.shape||node;var fill=(node.getElementsByTagName(fillString)&&node.getElementsByTagName(fillString)[0]),newfill=false;!fill&&(newfill=fill=createNode(fillString));if("fill-opacity" in params||"opacity" in params){var opacity=((+a["fill-opacity"]+1||2)-1)*((+a.opacity+1||2)-1)*((+R.getRGB(params.fill).o+1||2)-1);opacity<0&&(opacity=0);opacity>1&&(opacity=1);fill.opacity=opacity}params.fill&&(fill.on=true);if(fill.on==null||params.fill=="none"){fill.on=false}if(fill.on&&params.fill){var isURL=params.fill.match(ISURL);if(isURL){fill.src=isURL[1];fill.type="tile"}else{fill.color=R.getRGB(params.fill).hex;fill.src=E;fill.type="solid";if(R.getRGB(params.fill).error&&(res.type in {circle:1,ellipse:1}||Str(params.fill).charAt()!="r")&&addGradientFill(res,params.fill)){a.fill="none";a.gradient=params.fill}}}newfill&&node[appendChild](fill);var stroke=(node.getElementsByTagName("stroke")&&node.getElementsByTagName("stroke")[0]),newstroke=false;!stroke&&(newstroke=stroke=createNode("stroke"));if((params.stroke&&params.stroke!="none")||params["stroke-width"]||params["stroke-opacity"]!=null||params["stroke-dasharray"]||params["stroke-miterlimit"]||params["stroke-linejoin"]||params["stroke-linecap"]){stroke.on=true}(params.stroke=="none"||stroke.on==null||params.stroke==0||params["stroke-width"]==0)&&(stroke.on=false);var strokeColor=R.getRGB(params.stroke);stroke.on&&params.stroke&&(stroke.color=strokeColor.hex);opacity=((+a["stroke-opacity"]+1||2)-1)*((+a.opacity+1||2)-1)*((+strokeColor.o+1||2)-1);var width=(toFloat(params["stroke-width"])||1)*0.75;opacity<0&&(opacity=0);opacity>1&&(opacity=1);params["stroke-width"]==null&&(width=a["stroke-width"]);params["stroke-width"]&&(stroke.weight=width);width&&width<1&&(opacity*=width)&&(stroke.weight=1);stroke.opacity=opacity;params["stroke-linejoin"]&&(stroke.joinstyle=params["stroke-linejoin"]||"miter");stroke.miterlimit=params["stroke-miterlimit"]||8;params["stroke-linecap"]&&(stroke.endcap=params["stroke-linecap"]=="butt"?"flat":params["stroke-linecap"]=="square"?"square":"round");if(params["stroke-dasharray"]){var dasharray={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};stroke.dashstyle=dasharray[has](params["stroke-dasharray"])?dasharray[params["stroke-dasharray"]]:E}newstroke&&node[appendChild](stroke)}if(res.type=="text"){s=res.paper.span.style;a.font&&(s.font=a.font);a["font-family"]&&(s.fontFamily=a["font-family"]);a["font-size"]&&(s.fontSize=a["font-size"]);a["font-weight"]&&(s.fontWeight=a["font-weight"]);a["font-style"]&&(s.fontStyle=a["font-style"]);res.node.string&&(res.paper.span.innerHTML=Str(res.node.string)[rp](/</g,"&#60;")[rp](/&/g,"&#38;")[rp](/\n/g,"<br>"));res.W=a.w=res.paper.span.offsetWidth;res.H=a.h=res.paper.span.offsetHeight;res.X=a.x;res.Y=a.y+round(res.H/2);switch(a["text-anchor"]){case"start":res.node.style["v-text-align"]="left";res.bbx=round(res.W/2);break;case"end":res.node.style["v-text-align"]="right";res.bbx=-round(res.W/2);break;default:res.node.style["v-text-align"]="center";break}}};addGradientFill=function(o,gradient){o.attrs=o.attrs||{};var attrs=o.attrs,fill,type="linear",fxfy=".5 .5";o.attrs.gradient=gradient;gradient=Str(gradient)[rp](radial_gradient,function(all,fx,fy){type="radial";if(fx&&fy){fx=toFloat(fx);fy=toFloat(fy);pow(fx-0.5,2)+pow(fy-0.5,2)>0.25&&(fy=math.sqrt(0.25-pow(fx-0.5,2))*((fy>0.5)*2-1)+0.5);fxfy=fx+S+fy}return E});gradient=gradient[split](/\s*\-\s*/);if(type=="linear"){var angle=gradient.shift();angle=-toFloat(angle);if(isNaN(angle)){return null}}var dots=parseDots(gradient);if(!dots){return null}o=o.shape||o.node;fill=o.getElementsByTagName(fillString)[0]||createNode(fillString);!fill.parentNode&&o.appendChild(fill);if(dots[length]){fill.on=true;fill.method="none";fill.color=dots[0].color;fill.color2=dots[dots[length]-1].color;var clrs=[];for(var i=0,ii=dots[length];i<ii;i++){dots[i].offset&&clrs[push](dots[i].offset+S+dots[i].color)}fill.colors&&(fill.colors.value=clrs[length]?clrs[join]():"0% "+fill.color);if(type=="radial"){fill.type="gradientradial";fill.focus="100%";fill.focussize=fxfy;fill.focusposition=fxfy}else{fill.type="gradient";fill.angle=(270-angle)%360}}return 1};Element=function(node,group,vml){var Rotation=0,RotX=0,RotY=0,Scale=1;this[0]=node;this.id=R._oid++;this.node=node;node.raphael=this;this.X=0;this.Y=0;this.attrs={};this.Group=group;this.paper=vml;this._={tx:0,ty:0,rt:{deg:0},sx:1,sy:1};!vml.bottom&&(vml.bottom=this);this.prev=vml.top;vml.top&&(vml.top.next=this);vml.top=this;this.next=null};Element[proto].rotate=function(deg,cx,cy){if(this.removed){return this}if(deg==null){if(this._.rt.cx){return[this._.rt.deg,this._.rt.cx,this._.rt.cy][join](S)}return this._.rt.deg}deg=Str(deg)[split](separator);if(deg[length]-1){cx=toFloat(deg[1]);cy=toFloat(deg[2])}deg=toFloat(deg[0]);if(cx!=null){this._.rt.deg=deg}else{this._.rt.deg+=deg}cy==null&&(cx=null);this._.rt.cx=cx;this._.rt.cy=cy;this.setBox(this.attrs,cx,cy);this.Group.style.rotation=this._.rt.deg;return this};Element[proto].setBox=function(params,cx,cy){if(this.removed){return this}var gs=this.Group.style,os=(this.shape&&this.shape.style)||this.node.style;params=params||{};for(var i in params){if(params[has](i)){this.attrs[i]=params[i]}}cx=cx||this._.rt.cx;cy=cy||this._.rt.cy;var attr=this.attrs,x,y,w,h;switch(this.type){case"circle":x=attr.cx-attr.r;y=attr.cy-attr.r;w=h=attr.r*2;break;case"ellipse":x=attr.cx-attr.rx;y=attr.cy-attr.ry;w=attr.rx*2;h=attr.ry*2;break;case"image":x=+attr.x;y=+attr.y;w=attr.width||0;h=attr.height||0;break;case"text":this.textpath.v=["m",round(attr.x),", ",round(attr.y-2),"l",round(attr.x)+1,", ",round(attr.y-2)][join](E);x=attr.x-round(this.W/2);y=attr.y-this.H/2;w=this.W;h=this.H;break;case"rect":case"path":if(!this.attrs.path){x=0;y=0;w=this.paper.width;h=this.paper.height}else{var dim=pathDimensions(this.attrs.path);x=dim.x;y=dim.y;w=dim.width;h=dim.height}break;default:x=0;y=0;w=this.paper.width;h=this.paper.height;break}cx=(cx==null)?x+w/2:cx;cy=(cy==null)?y+h/2:cy;var left=cx-this.paper.width/2,top=cy-this.paper.height/2,t;gs.left!=(t=left+"px")&&(gs.left=t);gs.top!=(t=top+"px")&&(gs.top=t);this.X=pathlike[has](this.type)?-left:x;this.Y=pathlike[has](this.type)?-top:y;this.W=w;this.H=h;if(pathlike[has](this.type)){os.left!=(t=-left*zoom+"px")&&(os.left=t);os.top!=(t=-top*zoom+"px")&&(os.top=t)}else{if(this.type=="text"){os.left!=(t=-left+"px")&&(os.left=t);os.top!=(t=-top+"px")&&(os.top=t)}else{gs.width!=(t=this.paper.width+"px")&&(gs.width=t);gs.height!=(t=this.paper.height+"px")&&(gs.height=t);os.left!=(t=x-left+"px")&&(os.left=t);os.top!=(t=y-top+"px")&&(os.top=t);os.width!=(t=w+"px")&&(os.width=t);os.height!=(t=h+"px")&&(os.height=t)}}};Element[proto].hide=function(){!this.removed&&(this.Group.style.display="none");return this};Element[proto].show=function(){!this.removed&&(this.Group.style.display="block");return this};Element[proto].getBBox=function(){if(this.removed){return this}if(pathlike[has](this.type)){return pathDimensions(this.attrs.path)}return{x:this.X+(this.bbx||0),y:this.Y,width:this.W,height:this.H}};Element[proto].remove=function(){if(this.removed){return}tear(this,this.paper);this.node.parentNode.removeChild(this.node);this.Group.parentNode.removeChild(this.Group);this.shape&&this.shape.parentNode.removeChild(this.shape);for(var i in this){delete this[i]}this.removed=true};Element[proto].attr=function(name,value){if(this.removed){return this}if(name==null){var res={};for(var i in this.attrs){if(this.attrs[has](i)){res[i]=this.attrs[i]}}this._.rt.deg&&(res.rotation=this.rotate());(this._.sx!=1||this._.sy!=1)&&(res.scale=this.scale());res.gradient&&res.fill=="none"&&(res.fill=res.gradient)&&delete res.gradient;return res}if(value==null&&R.is(name,string)){if(name=="translation"){return translate.call(this)}if(name=="rotation"){return this.rotate()}if(name=="scale"){return this.scale()}if(name==fillString&&this.attrs.fill=="none"&&this.attrs.gradient){return this.attrs.gradient}return this.attrs[name]}if(this.attrs&&value==null&&R.is(name,array)){var ii,values={};for(i=0,ii=name[length];i<ii;i++){values[name[i]]=this.attr(name[i])}return values}var params;if(value!=null){params={};params[name]=value}value==null&&R.is(name,"object")&&(params=name);if(params){if(params.text&&this.type=="text"){this.node.string=params.text}setFillAndStroke(this,params);if(params.gradient&&(({circle:1,ellipse:1})[has](this.type)||Str(params.gradient).charAt()!="r")){addGradientFill(this,params.gradient)}(!pathlike[has](this.type)||this._.rt.deg)&&this.setBox(this.attrs)}return this};Element[proto].toFront=function(){!this.removed&&this.Group.parentNode[appendChild](this.Group);this.paper.top!=this&&tofront(this,this.paper);return this};Element[proto].toBack=function(){if(this.removed){return this}if(this.Group.parentNode.firstChild!=this.Group){this.Group.parentNode.insertBefore(this.Group,this.Group.parentNode.firstChild);toback(this,this.paper)}return this};Element[proto].insertAfter=function(element){if(this.removed){return this}if(element.constructor==Set){element=element[element.length]}if(element.Group.nextSibling){element.Group.parentNode.insertBefore(this.Group,element.Group.nextSibling)}else{element.Group.parentNode[appendChild](this.Group)}insertafter(this,element,this.paper);return this};Element[proto].insertBefore=function(element){if(this.removed){return this}if(element.constructor==Set){element=element[0]}element.Group.parentNode.insertBefore(this.Group,element.Group);insertbefore(this,element,this.paper);return this};var blurregexp=/ progid:\S+Blur\([^\)]+\)/g;Element[proto].blur=function(size){var s=this.node.runtimeStyle,f=s.filter;f=f.replace(blurregexp,E);if(+size!==0){this.attrs.blur=size;s.filter=f+S+ms+".Blur(pixelradius="+(+size||1.5)+")";s.margin=R.format("-{0}px 0 0 -{0}px",round(+size||1.5))}else{s.filter=f;s.margin=0;delete this.attrs.blur}};theCircle=function(vml,x,y,r){var g=createNode("group"),o=createNode("oval"),ol=o.style;g.style.cssText="position:absolute;left:0;top:0;width:"+vml.width+"px;height:"+vml.height+"px";g.coordsize=coordsize;g.coordorigin=vml.coordorigin;g[appendChild](o);var res=new Element(o,g,vml);res.type="circle";setFillAndStroke(res,{stroke:"#000",fill:"none"});res.attrs.cx=x;res.attrs.cy=y;res.attrs.r=r;res.setBox({x:x-r,y:y-r,width:r*2,height:r*2});vml.canvas[appendChild](g);return res};function rectPath(x,y,w,h,r){if(r){return R.format("M{0},{1}l{2},0a{3},{3},0,0,1,{3},{3}l0,{5}a{3},{3},0,0,1,{4},{3}l{6},0a{3},{3},0,0,1,{4},{4}l0,{7}a{3},{3},0,0,1,{3},{4}z",x+r,y,w-r*2,r,-r,h-r*2,r*2-w,r*2-h)}else{return R.format("M{0},{1}l{2},0,0,{3},{4},0z",x,y,w,h,-w)}}theRect=function(vml,x,y,w,h,r){var path=rectPath(x,y,w,h,r),res=vml.path(path),a=res.attrs;res.X=a.x=x;res.Y=a.y=y;res.W=a.width=w;res.H=a.height=h;a.r=r;a.path=path;res.type="rect";return res};theEllipse=function(vml,x,y,rx,ry){var g=createNode("group"),o=createNode("oval"),ol=o.style;g.style.cssText="position:absolute;left:0;top:0;width:"+vml.width+"px;height:"+vml.height+"px";g.coordsize=coordsize;g.coordorigin=vml.coordorigin;g[appendChild](o);var res=new Element(o,g,vml);res.type="ellipse";setFillAndStroke(res,{stroke:"#000"});res.attrs.cx=x;res.attrs.cy=y;res.attrs.rx=rx;res.attrs.ry=ry;res.setBox({x:x-rx,y:y-ry,width:rx*2,height:ry*2});vml.canvas[appendChild](g);return res};theImage=function(vml,src,x,y,w,h){var g=createNode("group"),o=createNode("image"),ol=o.style;g.style.cssText="position:absolute;left:0;top:0;width:"+vml.width+"px;height:"+vml.height+"px";g.coordsize=coordsize;g.coordorigin=vml.coordorigin;o.src=src;g[appendChild](o);var res=new Element(o,g,vml);res.type="image";res.attrs.src=src;res.attrs.x=x;res.attrs.y=y;res.attrs.w=w;res.attrs.h=h;res.setBox({x:x,y:y,width:w,height:h});vml.canvas[appendChild](g);return res};theText=function(vml,x,y,text){var g=createNode("group"),el=createNode("shape"),ol=el.style,path=createNode("path"),ps=path.style,o=createNode("textpath");g.style.cssText="position:absolute;left:0;top:0;width:"+vml.width+"px;height:"+vml.height+"px";g.coordsize=coordsize;g.coordorigin=vml.coordorigin;path.v=R.format("m{0},{1}l{2},{1}",round(x*10),round(y*10),round(x*10)+1);path.textpathok=true;ol.width=vml.width;ol.height=vml.height;o.string=Str(text);o.on=true;el[appendChild](o);el[appendChild](path);g[appendChild](el);var res=new Element(o,g,vml);res.shape=el;res.textpath=path;res.type="text";res.attrs.text=text;res.attrs.x=x;res.attrs.y=y;res.attrs.w=1;res.attrs.h=1;setFillAndStroke(res,{font:availableAttrs.font,stroke:"none",fill:"#000"});res.setBox();vml.canvas[appendChild](g);return res};setSize=function(width,height){var cs=this.canvas.style;width==+width&&(width+="px");height==+height&&(height+="px");cs.width=width;cs.height=height;cs.clip="rect(0 "+width+" "+height+" 0)";return this};var createNode;doc.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)");try{!doc.namespaces.rvml&&doc.namespaces.add("rvml","urn:schemas-microsoft-com:vml");createNode=function(tagName){return doc.createElement("<rvml:"+tagName+' class="rvml">')}}catch(e){createNode=function(tagName){return doc.createElement("<"+tagName+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}create=function(){var con=getContainer[apply](0,arguments),container=con.container,height=con.height,s,width=con.width,x=con.x,y=con.y;if(!container){throw new Error("VML container not found.")}var res=new Paper,c=res.canvas=doc.createElement("div"),cs=c.style;x=x||0;y=y||0;width=width||512;height=height||342;width==+width&&(width+="px");height==+height&&(height+="px");res.width=1000;res.height=1000;res.coordsize=zoom*1000+S+zoom*1000;res.coordorigin="0 0";res.span=doc.createElement("span");res.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";c[appendChild](res.span);cs.cssText=R.format("width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",width,height);if(container==1){doc.body[appendChild](c);cs.left=x+"px";cs.top=y+"px";cs.position="absolute"}else{if(container.firstChild){container.insertBefore(c,container.firstChild)}else{container[appendChild](c)}}plugins.call(res,res,R.fn);return res};Paper[proto].clear=function(){this.canvas.innerHTML=E;this.span=doc.createElement("span");this.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;";this.canvas[appendChild](this.span);this.bottom=this.top=null};Paper[proto].remove=function(){this.canvas.parentNode.removeChild(this.canvas);for(var i in this){this[i]=removed(i)}return true}}if((navigator.vendor=="Apple Computer, Inc.")&&(navigator.userAgent.match(/Version\/(.*?)\s/)[1]<4||win.navigator.platform.slice(0,2)=="iP")){Paper[proto].safari=function(){var rect=this.rect(-99,-99,this.width+99,this.height+99).attr({stroke:"none"});win.setTimeout(function(){rect.remove()})}}else{Paper[proto].safari=function(){}}var preventDefault=function(){this.returnValue=false},preventTouch=function(){return this.originalEvent.preventDefault()},stopPropagation=function(){this.cancelBubble=true},stopTouch=function(){return this.originalEvent.stopPropagation()},addEvent=(function(){if(doc.addEventListener){return function(obj,type,fn,element){var realName=supportsTouch&&touchMap[type]?touchMap[type]:type;var f=function(e){if(supportsTouch&&touchMap[has](type)){for(var i=0,ii=e.targetTouches&&e.targetTouches.length;i<ii;i++){if(e.targetTouches[i].target==obj){var olde=e;e=e.targetTouches[i];e.originalEvent=olde;e.preventDefault=preventTouch;e.stopPropagation=stopTouch;break}}}return fn.call(element,e)};obj.addEventListener(realName,f,false);return function(){obj.removeEventListener(realName,f,false);return true}}}else{if(doc.attachEvent){return function(obj,type,fn,element){var f=function(e){e=e||win.event;e.preventDefault=e.preventDefault||preventDefault;e.stopPropagation=e.stopPropagation||stopPropagation;return fn.call(element,e)};obj.attachEvent("on"+type,f);var detacher=function(){obj.detachEvent("on"+type,f);return true};return detacher}}}})(),drag=[],dragMove=function(e){var x=e.clientX,y=e.clientY,dragi,j=drag.length;while(j--){dragi=drag[j];if(supportsTouch){var i=e.touches.length,touch;while(i--){touch=e.touches[i];if(touch.identifier==dragi.el._drag.id){x=touch.clientX;y=touch.clientY;(e.originalEvent?e.originalEvent:e).preventDefault();break}}}else{e.preventDefault()}dragi.move&&dragi.move.call(dragi.el,x-dragi.el._drag.x,y-dragi.el._drag.y,x,y)}},dragUp=function(){R.unmousemove(dragMove).unmouseup(dragUp);var i=drag.length,dragi;while(i--){dragi=drag[i];dragi.el._drag={};dragi.end&&dragi.end.call(dragi.el)}drag=[]};for(var i=events[length];i--;){(function(eventName){R[eventName]=Element[proto][eventName]=function(fn){if(R.is(fn,"function")){this.events=this.events||[];this.events.push({name:eventName,f:fn,unbind:addEvent(this.shape||this.node||doc,eventName,fn,this)})}return this};R["un"+eventName]=Element[proto]["un"+eventName]=function(fn){var events=this.events,l=events[length];while(l--){if(events[l].name==eventName&&events[l].f==fn){events[l].unbind();events.splice(l,1);!events.length&&delete this.events;return this}}return this}})(events[i])}Element[proto].hover=function(f_in,f_out){return this.mouseover(f_in).mouseout(f_out)};Element[proto].unhover=function(f_in,f_out){return this.unmouseover(f_in).unmouseout(f_out)};Element[proto].drag=function(onmove,onstart,onend){this._drag={};this.mousedown(function(e){(e.originalEvent||e).preventDefault();this._drag.x=e.clientX;this._drag.y=e.clientY;this._drag.id=e.identifier;onstart&&onstart.call(this,e.clientX,e.clientY);!drag.length&&R.mousemove(dragMove).mouseup(dragUp);drag.push({el:this,move:onmove,end:onend})});return this};Element[proto].undrag=function(onmove,onstart,onend){var i=drag.length;while(i--){drag[i].el==this&&(drag[i].move==onmove&&drag[i].end==onend)&&drag.splice(i,1);!drag.length&&R.unmousemove(dragMove).unmouseup(dragUp)}};Paper[proto].circle=function(x,y,r){return theCircle(this,x||0,y||0,r||0)};Paper[proto].rect=function(x,y,w,h,r){return theRect(this,x||0,y||0,w||0,h||0,r||0)};Paper[proto].ellipse=function(x,y,rx,ry){return theEllipse(this,x||0,y||0,rx||0,ry||0)};Paper[proto].path=function(pathString){pathString&&!R.is(pathString,string)&&!R.is(pathString[0],array)&&(pathString+=E);return thePath(R.format[apply](R,arguments),this)};Paper[proto].image=function(src,x,y,w,h){return theImage(this,src||"about:blank",x||0,y||0,w||0,h||0)};Paper[proto].text=function(x,y,text){return theText(this,x||0,y||0,text||E)};Paper[proto].set=function(itemsArray){arguments[length]>1&&(itemsArray=Array[proto].splice.call(arguments,0,arguments[length]));return new Set(itemsArray)};Paper[proto].setSize=setSize;Paper[proto].top=Paper[proto].bottom=null;Paper[proto].raphael=R;function x_y(){return this.x+S+this.y}Element[proto].resetScale=function(){if(this.removed){return this}this._.sx=1;this._.sy=1;this.attrs.scale="1 1"};Element[proto].scale=function(x,y,cx,cy){if(this.removed){return this}if(x==null&&y==null){return{x:this._.sx,y:this._.sy,toString:x_y}}y=y||x;!+y&&(y=x);var dx,dy,dcx,dcy,a=this.attrs;if(x!=0){var bb=this.getBBox(),rcx=bb.x+bb.width/2,rcy=bb.y+bb.height/2,kx=x/this._.sx,ky=y/this._.sy;cx=(+cx||cx==0)?cx:rcx;cy=(+cy||cy==0)?cy:rcy;var dirx=~~(x/math.abs(x)),diry=~~(y/math.abs(y)),s=this.node.style,ncx=cx+(rcx-cx)*kx,ncy=cy+(rcy-cy)*ky;switch(this.type){case"rect":case"image":var neww=a.width*dirx*kx,newh=a.height*diry*ky;this.attr({height:newh,r:a.r*mmin(dirx*kx,diry*ky),width:neww,x:ncx-neww/2,y:ncy-newh/2});break;case"circle":case"ellipse":this.attr({rx:a.rx*dirx*kx,ry:a.ry*diry*ky,r:a.r*mmin(dirx*kx,diry*ky),cx:ncx,cy:ncy});break;case"text":this.attr({x:ncx,y:ncy});break;case"path":var path=pathToRelative(a.path),skip=true;for(var i=0,ii=path[length];i<ii;i++){var p=path[i],P0=upperCase.call(p[0]);if(P0=="M"&&skip){continue}else{skip=false}if(P0=="A"){p[path[i][length]-2]*=kx;p[path[i][length]-1]*=ky;p[1]*=dirx*kx;p[2]*=diry*ky;p[5]=+!(dirx+diry?!+p[5]:+p[5])}else{if(P0=="H"){for(var j=1,jj=p[length];j<jj;j++){p[j]*=kx}}else{if(P0=="V"){for(j=1,jj=p[length];j<jj;j++){p[j]*=ky}}else{for(j=1,jj=p[length];j<jj;j++){p[j]*=(j%2)?kx:ky}}}}}var dim2=pathDimensions(path);dx=ncx-dim2.x-dim2.width/2;dy=ncy-dim2.y-dim2.height/2;path[0][1]+=dx;path[0][2]+=dy;this.attr({path:path});break}if(this.type in {text:1,image:1}&&(dirx!=1||diry!=1)){if(this.transformations){this.transformations[2]="scale("[concat](dirx,",",diry,")");this.node[setAttribute]("transform",this.transformations[join](S));dx=(dirx==-1)?-a.x-(neww||0):a.x;dy=(diry==-1)?-a.y-(newh||0):a.y;this.attr({x:dx,y:dy});a.fx=dirx-1;a.fy=diry-1}else{this.node.filterMatrix=ms+".Matrix(M11="[concat](dirx,", M12=0, M21=0, M22=",diry,", Dx=0, Dy=0, sizingmethod='auto expand', filtertype='bilinear')");s.filter=(this.node.filterMatrix||E)+(this.node.filterOpacity||E)}}else{if(this.transformations){this.transformations[2]=E;this.node[setAttribute]("transform",this.transformations[join](S));a.fx=0;a.fy=0}else{this.node.filterMatrix=E;s.filter=(this.node.filterMatrix||E)+(this.node.filterOpacity||E)}}a.scale=[x,y,cx,cy][join](S);this._.sx=x;this._.sy=y}return this};Element[proto].clone=function(){if(this.removed){return null}var attr=this.attr();delete attr.scale;delete attr.translation;return this.paper[this.type]().attr(attr)};var getPointAtSegmentLength=cacher(function(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,length){var len=0,old;for(var i=0;i<1.01;i+=0.01){var dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,i);i&&(len+=pow(pow(old.x-dot.x,2)+pow(old.y-dot.y,2),0.5));if(len>=length){return dot}old=dot}}),getLengthFactory=function(istotal,subpath){return function(path,length,onlystart){path=path2curve(path);var x,y,p,l,sp="",subpaths={},point,len=0;for(var i=0,ii=path.length;i<ii;i++){p=path[i];if(p[0]=="M"){x=+p[1];y=+p[2]}else{l=segmentLength(x,y,p[1],p[2],p[3],p[4],p[5],p[6]);if(len+l>length){if(subpath&&!subpaths.start){point=getPointAtSegmentLength(x,y,p[1],p[2],p[3],p[4],p[5],p[6],length-len);sp+=["C",point.start.x,point.start.y,point.m.x,point.m.y,point.x,point.y];if(onlystart){return sp}subpaths.start=sp;sp=["M",point.x,point.y+"C",point.n.x,point.n.y,point.end.x,point.end.y,p[5],p[6]][join]();len+=l;x=+p[5];y=+p[6];continue}if(!istotal&&!subpath){point=getPointAtSegmentLength(x,y,p[1],p[2],p[3],p[4],p[5],p[6],length-len);return{x:point.x,y:point.y,alpha:point.alpha}}}len+=l;x=+p[5];y=+p[6]}sp+=p}subpaths.end=sp;point=istotal?len:subpath?subpaths:R.findDotsAtSegment(x,y,p[1],p[2],p[3],p[4],p[5],p[6],1);point.alpha&&(point={x:point.x,y:point.y,alpha:point.alpha});return point}},segmentLength=cacher(function(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y){var old={x:0,y:0},len=0;for(var i=0;i<1.01;i+=0.01){var dot=findDotAtSegment(p1x,p1y,c1x,c1y,c2x,c2y,p2x,p2y,i);i&&(len+=pow(pow(old.x-dot.x,2)+pow(old.y-dot.y,2),0.5));old=dot}return len});var getTotalLength=getLengthFactory(1),getPointAtLength=getLengthFactory(),getSubpathsAtLength=getLengthFactory(0,1);Element[proto].getTotalLength=function(){if(this.type!="path"){return}if(this.node.getTotalLength){return this.node.getTotalLength()}return getTotalLength(this.attrs.path)};Element[proto].getPointAtLength=function(length){if(this.type!="path"){return}if(this.node.getPointAtLength){return this.node.getPointAtLength(length)}return getPointAtLength(this.attrs.path,length)};Element[proto].getSubpath=function(from,to){if(this.type!="path"){return}if(math.abs(this.getTotalLength()-to)<0.000001){return getSubpathsAtLength(this.attrs.path,from).end}var a=getSubpathsAtLength(this.attrs.path,to,1);return from?getSubpathsAtLength(a,from).end:a};R.easing_formulas={linear:function(n){return n},"<":function(n){return pow(n,3)},">":function(n){return pow(n-1,3)+1},"<>":function(n){n=n*2;if(n<1){return pow(n,3)/2}n-=2;return(pow(n,3)+2)/2},backIn:function(n){var s=1.70158;return n*n*((s+1)*n-s)},backOut:function(n){n=n-1;var s=1.70158;return n*n*((s+1)*n+s)+1},elastic:function(n){if(n==0||n==1){return n}var p=0.3,s=p/4;return pow(2,-10*n)*math.sin((n-s)*(2*math.PI)/p)+1},bounce:function(n){var s=7.5625,p=2.75,l;if(n<(1/p)){l=s*n*n}else{if(n<(2/p)){n-=(1.5/p);l=s*n*n+0.75}else{if(n<(2.5/p)){n-=(2.25/p);l=s*n*n+0.9375}else{n-=(2.625/p);l=s*n*n+0.984375}}}return l}};var animationElements={length:0},animation=function(){var Now=+new Date;for(var l in animationElements){if(l!="length"&&animationElements[has](l)){var e=animationElements[l];if(e.stop||e.el.removed){delete animationElements[l];animationElements[length]--;continue}var time=Now-e.start,ms=e.ms,easing=e.easing,from=e.from,diff=e.diff,to=e.to,t=e.t,prev=e.prev||0,that=e.el,callback=e.callback,set={},now;if(time<ms){var pos=R.easing_formulas[easing]?R.easing_formulas[easing](time/ms):time/ms;for(var attr in from){if(from[has](attr)){switch(availableAnimAttrs[attr]){case"along":now=pos*ms*diff[attr];to.back&&(now=to.len-now);var point=getPointAtLength(to[attr],now);that.translate(diff.sx-diff.x||0,diff.sy-diff.y||0);diff.x=point.x;diff.y=point.y;that.translate(point.x-diff.sx,point.y-diff.sy);to.rot&&that.rotate(diff.r+point.alpha,point.x,point.y);break;case nu:now=+from[attr]+pos*ms*diff[attr];break;case"colour":now="rgb("+[upto255(round(from[attr].r+pos*ms*diff[attr].r)),upto255(round(from[attr].g+pos*ms*diff[attr].g)),upto255(round(from[attr].b+pos*ms*diff[attr].b))][join](",")+")";break;case"path":now=[];for(var i=0,ii=from[attr][length];i<ii;i++){now[i]=[from[attr][i][0]];for(var j=1,jj=from[attr][i][length];j<jj;j++){now[i][j]=+from[attr][i][j]+pos*ms*diff[attr][i][j]}now[i]=now[i][join](S)}now=now[join](S);break;case"csv":switch(attr){case"translation":var x=diff[attr][0]*(time-prev),y=diff[attr][1]*(time-prev);t.x+=x;t.y+=y;now=x+S+y;break;case"rotation":now=+from[attr][0]+pos*ms*diff[attr][0];from[attr][1]&&(now+=","+from[attr][1]+","+from[attr][2]);break;case"scale":now=[+from[attr][0]+pos*ms*diff[attr][0],+from[attr][1]+pos*ms*diff[attr][1],(2 in to[attr]?to[attr][2]:E),(3 in to[attr]?to[attr][3]:E)][join](S);break;case"clip-rect":now=[];i=4;while(i--){now[i]=+from[attr][i]+pos*ms*diff[attr][i]}break}break}set[attr]=now}}that.attr(set);that._run&&that._run.call(that)}else{if(to.along){point=getPointAtLength(to.along,to.len*!to.back);that.translate(diff.sx-(diff.x||0)+point.x-diff.sx,diff.sy-(diff.y||0)+point.y-diff.sy);to.rot&&that.rotate(diff.r+point.alpha,point.x,point.y)}(t.x||t.y)&&that.translate(-t.x,-t.y);to.scale&&(to.scale+=E);that.attr(to);delete animationElements[l];animationElements[length]--;that.in_animation=null;R.is(callback,"function")&&callback.call(that)}e.prev=time}}R.svg&&that&&that.paper&&that.paper.safari();animationElements[length]&&win.setTimeout(animation)},upto255=function(color){return mmax(mmin(color,255),0)},translate=function(x,y){if(x==null){return{x:this._.tx,y:this._.ty,toString:x_y}}this._.tx+=+x;this._.ty+=+y;switch(this.type){case"circle":case"ellipse":this.attr({cx:+x+this.attrs.cx,cy:+y+this.attrs.cy});break;case"rect":case"image":case"text":this.attr({x:+x+this.attrs.x,y:+y+this.attrs.y});break;case"path":var path=pathToRelative(this.attrs.path);path[0][1]+=+x;path[0][2]+=+y;this.attr({path:path});break}return this};Element[proto].animateWith=function(element,params,ms,easing,callback){animationElements[element.id]&&(params.start=animationElements[element.id].start);return this.animate(params,ms,easing,callback)};Element[proto].animateAlong=along();Element[proto].animateAlongBack=along(1);function along(isBack){return function(path,ms,rotate,callback){var params={back:isBack};R.is(rotate,"function")?(callback=rotate):(params.rot=rotate);path&&path.constructor==Element&&(path=path.attrs.path);path&&(params.along=path);return this.animate(params,ms,callback)}}Element[proto].onAnimation=function(f){this._run=f||0;return this};Element[proto].animate=function(params,ms,easing,callback){if(R.is(easing,"function")||!easing){callback=easing||null}var from={},to={},diff={};for(var attr in params){if(params[has](attr)){if(availableAnimAttrs[has](attr)){from[attr]=this.attr(attr);(from[attr]==null)&&(from[attr]=availableAttrs[attr]);to[attr]=params[attr];switch(availableAnimAttrs[attr]){case"along":var len=getTotalLength(params[attr]);var point=getPointAtLength(params[attr],len*!!params.back);var bb=this.getBBox();diff[attr]=len/ms;diff.tx=bb.x;diff.ty=bb.y;diff.sx=point.x;diff.sy=point.y;to.rot=params.rot;to.back=params.back;to.len=len;params.rot&&(diff.r=toFloat(this.rotate())||0);break;case nu:diff[attr]=(to[attr]-from[attr])/ms;break;case"colour":from[attr]=R.getRGB(from[attr]);var toColour=R.getRGB(to[attr]);diff[attr]={r:(toColour.r-from[attr].r)/ms,g:(toColour.g-from[attr].g)/ms,b:(toColour.b-from[attr].b)/ms};break;case"path":var pathes=path2curve(from[attr],to[attr]);from[attr]=pathes[0];var toPath=pathes[1];diff[attr]=[];for(var i=0,ii=from[attr][length];i<ii;i++){diff[attr][i]=[0];for(var j=1,jj=from[attr][i][length];j<jj;j++){diff[attr][i][j]=(toPath[i][j]-from[attr][i][j])/ms}}break;case"csv":var values=Str(params[attr])[split](separator),from2=Str(from[attr])[split](separator);switch(attr){case"translation":from[attr]=[0,0];diff[attr]=[values[0]/ms,values[1]/ms];break;case"rotation":from[attr]=(from2[1]==values[1]&&from2[2]==values[2])?from2:[0,values[1],values[2]];diff[attr]=[(values[0]-from[attr][0])/ms,0,0];break;case"scale":params[attr]=values;from[attr]=Str(from[attr])[split](separator);diff[attr]=[(values[0]-from[attr][0])/ms,(values[1]-from[attr][1])/ms,0,0];break;case"clip-rect":from[attr]=Str(from[attr])[split](separator);diff[attr]=[];i=4;while(i--){diff[attr][i]=(values[i]-from[attr][i])/ms}break}to[attr]=values}}}}this.stop();this.in_animation=1;animationElements[this.id]={start:params.start||+new Date,ms:ms,easing:easing,from:from,diff:diff,to:to,el:this,callback:callback,t:{x:0,y:0}};++animationElements[length]==1&&animation();return this};Element[proto].stop=function(){animationElements[this.id]&&animationElements[length]--;delete animationElements[this.id];return this};Element[proto].translate=function(x,y){return this.attr({translation:x+" "+y})};Element[proto][toString]=function(){return"Rapha\xebl\u2019s object"};R.ae=animationElements;var Set=function(items){this.items=[];this[length]=0;this.type="set";if(items){for(var i=0,ii=items[length];i<ii;i++){if(items[i]&&(items[i].constructor==Element||items[i].constructor==Set)){this[this.items[length]]=this.items[this.items[length]]=items[i];this[length]++}}}};Set[proto][push]=function(){var item,len;for(var i=0,ii=arguments[length];i<ii;i++){item=arguments[i];if(item&&(item.constructor==Element||item.constructor==Set)){len=this.items[length];this[len]=this.items[len]=item;this[length]++}}return this};Set[proto].pop=function(){delete this[this[length]--];return this.items.pop()};for(var method in Element[proto]){if(Element[proto][has](method)){Set[proto][method]=(function(methodname){return function(){for(var i=0,ii=this.items[length];i<ii;i++){this.items[i][methodname][apply](this.items[i],arguments)}return this}})(method)}}Set[proto].attr=function(name,value){if(name&&R.is(name,array)&&R.is(name[0],"object")){for(var j=0,jj=name[length];j<jj;j++){this.items[j].attr(name[j])}}else{for(var i=0,ii=this.items[length];i<ii;i++){this.items[i].attr(name,value)}}return this};Set[proto].animate=function(params,ms,easing,callback){(R.is(easing,"function")||!easing)&&(callback=easing||null);var len=this.items[length],i=len,item,set=this,collector;callback&&(collector=function(){!--len&&callback.call(set)});easing=R.is(easing,string)?easing:collector;item=this.items[--i].animate(params,ms,easing,collector);while(i--){this.items[i].animateWith(item,params,ms,easing,collector)}return this};Set[proto].insertAfter=function(el){var i=this.items[length];while(i--){this.items[i].insertAfter(el)}return this};Set[proto].getBBox=function(){var x=[],y=[],w=[],h=[];for(var i=this.items[length];i--;){var box=this.items[i].getBBox();x[push](box.x);y[push](box.y);w[push](box.x+box.width);h[push](box.y+box.height)}x=mmin[apply](0,x);y=mmin[apply](0,y);return{x:x,y:y,width:mmax[apply](0,w)-x,height:mmax[apply](0,h)-y}};Set[proto].clone=function(s){s=new Set;for(var i=0,ii=this.items[length];i<ii;i++){s[push](this.items[i].clone())}return s};R.registerFont=function(font){if(!font.face){return font}this.fonts=this.fonts||{};var fontcopy={w:font.w,face:{},glyphs:{}},family=font.face["font-family"];for(var prop in font.face){if(font.face[has](prop)){fontcopy.face[prop]=font.face[prop]}}if(this.fonts[family]){this.fonts[family][push](fontcopy)}else{this.fonts[family]=[fontcopy]}if(!font.svg){fontcopy.face["units-per-em"]=toInt(font.face["units-per-em"],10);for(var glyph in font.glyphs){if(font.glyphs[has](glyph)){var path=font.glyphs[glyph];fontcopy.glyphs[glyph]={w:path.w,k:{},d:path.d&&"M"+path.d[rp](/[mlcxtrv]/g,function(command){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[command]||"M"})+"z"};if(path.k){for(var k in path.k){if(path[has](k)){fontcopy.glyphs[glyph].k[k]=path.k[k]}}}}}}return font};Paper[proto].getFont=function(family,weight,style,stretch){stretch=stretch||"normal";style=style||"normal";weight=+weight||{normal:400,bold:700,lighter:300,bolder:800}[weight]||400;if(!R.fonts){return}var font=R.fonts[family];if(!font){var name=new RegExp("(^|\\s)"+family[rp](/[^\w\d\s+!~.:_-]/g,E)+"(\\s|$)","i");for(var fontName in R.fonts){if(R.fonts[has](fontName)){if(name.test(fontName)){font=R.fonts[fontName];break}}}}var thefont;if(font){for(var i=0,ii=font[length];i<ii;i++){thefont=font[i];if(thefont.face["font-weight"]==weight&&(thefont.face["font-style"]==style||!thefont.face["font-style"])&&thefont.face["font-stretch"]==stretch){break}}}return thefont};Paper[proto].print=function(x,y,string,font,size,origin){origin=origin||"middle";var out=this.set(),letters=Str(string)[split](E),shift=0,path=E,scale;R.is(font,string)&&(font=this.getFont(font));if(font){scale=(size||16)/font.face["units-per-em"];var bb=font.face.bbox.split(separator),top=+bb[0],height=+bb[1]+(origin=="baseline"?bb[3]-bb[1]+(+font.face.descent):(bb[3]-bb[1])/2);for(var i=0,ii=letters[length];i<ii;i++){var prev=i&&font.glyphs[letters[i-1]]||{},curr=font.glyphs[letters[i]];shift+=i?(prev.w||font.w)+(prev.k&&prev.k[letters[i]]||0):0;curr&&curr.d&&out[push](this.path(curr.d).attr({fill:"#000",stroke:"none",translation:[shift,0]}))}out.scale(scale,scale,top,height).translate(x-top,y-height)}return out};var formatrg=/\{(\d+)\}/g;R.format=function(token,params){var args=R.is(params,array)?[0][concat](params):arguments;token&&R.is(token,string)&&args[length]-1&&(token=token[rp](formatrg,function(str,i){return args[++i]==null?E:args[i]}));return token||E};R.ninja=function(){oldRaphael.was?(Raphael=oldRaphael.is):delete Raphael;return R};R.el=Element[proto];return R})();
