﻿var dnnJscriptVersion="6.0.0";if(typeof(Sys.Browser.Chrome)=="undefined"){Sys.Browser.Chrome={};if(navigator.userAgent.indexOf(" Chrome/")>-1){Sys.Browser.agent=Sys.Browser.Chrome;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Chrome\/(\d+\.\d+)/)[1]);Sys.Browser.name="Chrome";Sys.Browser.hasDebuggerStatement=true}}else{if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&Sys.Browser.version>10){HTMLAnchorElement.prototype.attachEvent=function(a,b){if(a.substr(0,2)=="on"){a=a.substr(2)}this.addEventListener(a,b,false)};HTMLAnchorElement.prototype.detachEvent=function(a,b){if(a.substr(0,2)=="on"){a=a.substr(2)}this.removeEventListener(a,b,false)}}}var DNN_HIGHLIGHT_COLOR="#9999FF";var COL_DELIMITER=String.fromCharCode(18);var ROW_DELIMITER=String.fromCharCode(17);var QUOTE_REPLACEMENT=String.fromCharCode(19);var KEY_LEFT_ARROW=37;var KEY_UP_ARROW=38;var KEY_RIGHT_ARROW=39;var KEY_DOWN_ARROW=40;var KEY_RETURN=13;var KEY_ESCAPE=27;Type.registerNamespace("dnn");dnn.extend=function(a,b){for(s in b){a[s]=b[s]}return a};dnn.extend(dnn,{apiversion:new Number("04.02"),pns:"",ns:"dnn",diagnostics:null,vars:null,dependencies:new Array(),isLoaded:false,delay:[],_delayedSet:null,getVars:function(){if(this.vars==null){var a=dnn.dom.getById("__dnnVariable");if(a!=null){if(a.value.indexOf("`")==0){a.value=a.value.substring(1).replace(/`/g,'"')}if(a.value.indexOf("__scdoff")!=-1){COL_DELIMITER="~|~";ROW_DELIMITER="~`~";QUOTE_REPLACEMENT="~!~"}}if(a!=null&&a.value.length>0){this.vars=Sys.Serialization.JavaScriptSerializer.deserialize(a.value)}else{this.vars=[]}}return this.vars},getVar:function(key,def){if(this.getVars()[key]!=null){var re=new RegExp(QUOTE_REPLACEMENT,"g");return this.getVars()[key].replace(re,'"')}return def},setVar:function(b,c){if(this.vars==null){this.getVars()}this.vars[b]=c;var a=dnn.dom.getById("__dnnVariable");if(a==null){a=dnn.dom.createElement("INPUT");a.type="hidden";a.id="__dnnVariable";dnn.dom.appendChild(dnn.dom.getByTagName("body")[0],a)}if(dnn.isLoaded){a.value=Sys.Serialization.JavaScriptSerializer.serialize(this.vars)}else{dnn._delayedSet={key:b,val:c}}return true},callPostBack:function(action){var postBack=dnn.getVar("__dnn_postBack");var data="";if(postBack.length>0){data+=action;for(var i=1;i<arguments.length;i++){var aryParam=arguments[i].split("=");data+=COL_DELIMITER+aryParam[0]+COL_DELIMITER+aryParam[1]}eval(postBack.replace("[DATA]",data));return true}return false},createDelegate:function(a,b){return Function.createDelegate(a,b)},doDelay:function(b,c,d,a){if(this.delay[b]==null){this.delay[b]=new dnn.delayObject(d,a,b);this.delay[b].num=window.setTimeout(dnn.createDelegate(this.delay[b],this.delay[b].complete),c)}},cancelDelay:function(a){if(this.delay[a]!=null){window.clearTimeout(this.delay[a].num);this.delay[a]=null}},decodeHTML:function(a){return a.toString().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"')},encode:function(a,c){var b=a;if(encodeURIComponent){b=encodeURIComponent(b)}else{b=escape(b)}if(c==false){return b}return b.replace(/%/g,"%25")},encodeHTML:function(a){return a.toString().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"&apos;").replace(/\"/g,"&quot;")},encodeJSON:function(a){return a.toString().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/'/g,"\u0027").replace(/\"/g,"&quot;").replace(/\\/g,"\\\\")},evalJSON:function(a){return Sys.Serialization.JavaScriptSerializer.deserialize(a)},escapeForEval:function(a){return a.replace(/\\/g,"\\\\").replace(/\'/g,"\\'").replace(/\r/g,"").replace(/\n/g,"\\n").replace(/\./,"\\.")},getEnumByValue:function(a,b){for(var c in a){if(typeof(a[c])=="number"&&a[c]==b){return c}}},_onload:function(){dnn.isLoaded=true;if(dnn._delayedSet){dnn.setVar(dnn._delayedSet.key,dnn._delayedSet.val)}},addIframeMask:function(c){if(dnn.dom.browser.isType("ie")&&(c.previousSibling==null||c.previousSibling.nodeName.toLowerCase()!="iframe")){var a=document.createElement("iframe");c.parentNode.insertBefore(a,c);var b=c.getBoundingClientRect();a.style.position="absolute";a.style.left=c.offsetLeft+"px";a.style.top=c.offsetTop+"px";a.style.width=(b.right-b.left)+"px";a.style.height=(b.bottom-b.top)+"px";a.style.opacity="0";a.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=0)";a.style.zIndex="-1";return a}return null},removeIframeMask:function(a){if(dnn.dom.browser.isType("ie")&&(a.previousSibling!=null&&a.previousSibling.nodeName.toLowerCase()=="iframe")){a.parentNode.removeChild(a.previousSibling)}}});dnn.delayObject=function(c,a,b){this.num=null;this.pfunc=c;this.context=a;this.type=b};dnn.delayObject.prototype={complete:function(){dnn.delay[this.type]=null;this.pfunc(this.context)}};dnn.delayObject.registerClass("dnn.delayObject");dnn.ScriptRequest=function(e,d,c){this.ctl=null;this.xmlhttp=null;this.src=null;this.text=null;if(e!=null&&e.length>0){var b=dnn.dom.scriptFile(e);var a=dnn.getVar(b+".resx","");if(a.length>0){this.src=a}else{this.src=e}}if(d!=null&&d.length>0){this.text=d}this.callBack=c;this.status="init";this.timeOut=5000;this._xmlhttpStatusChangeDelegate=dnn.createDelegate(this,this.xmlhttpStatusChange);this._statusChangeDelegate=dnn.createDelegate(this,this.statusChange);this._completeDelegate=dnn.createDelegate(this,this.complete);this._reloadDelegate=dnn.createDelegate(this,this.reload)};dnn.ScriptRequest.prototype={load:function(){this.status="loading";this.ctl=document.createElement("script");this.ctl.type="text/javascript";if(this.src!=null){if(dnn.dom.browser.isType(dnn.dom.browser.Safari)){this.xmlhttp=new XMLHttpRequest();this.xmlhttp.open("GET",this.src,true);this.xmlhttp.onreadystatechange=this._xmlhttpStatusChangeDelegate;this.xmlhttp.send(null);return}else{if(dnn.dom.browser.isType(dnn.dom.browser.InternetExplorer)){this.ctl.onreadystatechange=this._statusChangeDelegate}else{if(dnn.dom.browser.isType(dnn.dom.browser.Opera)==false){this.ctl.onload=this._completeDelegate}}this.ctl.src=this.src}dnn.dom.scriptElements[this.src]=this.ctl}else{if(dnn.dom.browser.isType(dnn.dom.browser.Safari)){this.ctl.innerHTML=dnn.encodeHTML(this.text)}else{this.ctl.text=this.text}}var a=dnn.dom.getByTagName("HEAD");if(a){if(dnn.dom.browser.isType(dnn.dom.browser.Opera)==false||this.src!=null){a[0].appendChild(this.ctl)}}else{alert("Cannot load dynamic script, no HEAD tag present.")}if(this.src==null||dnn.dom.browser.isType(dnn.dom.browser.Opera)){this.complete()}else{if(this.timeOut){dnn.doDelay("loadScript_"+this.src,this.timeOut,this._reloadDelegate,null)}}},xmlhttpStatusChange:function(){if(this.xmlhttp.readyState!=4){return}this.src=null;this.text=this.xmlhttp.responseText;this.load()},statusChange:function(){if((this.ctl.readyState=="loaded"||this.ctl.readyState=="complete")&&this.status!="complete"){this.complete()}},reload:function(){if(dnn.dom.scriptStatus(this.src)=="complete"){this.complete()}else{this.load()}},complete:function(){dnn.cancelDelay("loadScript_"+this.src);this.status="complete";if(typeof(this.callBack)!="undefined"){this.callBack(this)}this.dispose()},dispose:function(){this.callBack=null;if(this.ctl){if(this.ctl.onreadystatechange){this.ctl.onreadystatechange=new function(){}}else{if(this.ctl.onload){this.ctl.onload=null}}this.ctl=null}this.xmlhttp=null;this._xmlhttpStatusChangeDelegate=null;this._statusChangeDelegate=null;this._completeDelegate=null;this._reloadDelegate=null}};dnn.ScriptRequest.registerClass("dnn.ScriptRequest");Type.registerNamespace("dnn.dom");dnn.extend(dnn.dom,{pns:"dnn",ns:"dom",browser:null,__leakEvts:[],scripts:[],scriptElements:[],tweens:[],attachEvent:function(a,c,d){if(a.addEventListener){var b=c.substring(2);a.addEventListener(b,function(e){dnn.dom.event=new dnn.dom.eventObject(e,e.target);return d()},false)}else{a.attachEvent(c,function(){dnn.dom.event=new dnn.dom.eventObject(window.event,window.event.srcElement);return d()})}return true},cursorPos:function(b){if(b.value.length==0){return 0}var h=-1;if(b.selectionStart){h=b.selectionStart}else{if(b.createTextRange){var f=window.document.selection.createRange();var a=b.createTextRange();if(a==null||f==null||((f.text!="")&&a.inRange(f)==false)){return-1}if(f.text==""){if(a.boundingLeft==f.boundingLeft){h=0}else{var d=b.tagName.toLowerCase();if(d=="input"){var g=a.text;var c=1;while(c<g.length){a.findText(g.substring(c));if(a.boundingLeft==f.boundingLeft){break}c++}}else{if(d=="textarea"){var c=b.value.length+1;var e=document.selection.createRange().duplicate();while(e.parentElement()==b&&e.move("character",1)==1){--c}if(c==b.value.length+1){c=-1}}}h=c}}else{h=a.text.indexOf(f.text)}}}return h},cancelCollapseElement:function(a){dnn.cancelDelay(a.id+"col");a.style.display="none"},collapseElement:function(b,c,d){if(c==null){c=10}b.style.overflow="hidden";var a=new Object();a.num=c;a.ctl=b;a.pfunc=d;b.origHeight=b.offsetHeight;dnn.dom.__collapseElement(a)},__collapseElement:function(a){var c=a.num;var b=a.ctl;var d=b.origHeight/c;if(b.offsetHeight-(d*2)>0){b.style.height=(b.offsetHeight-d).toString()+"px";dnn.doDelay(b.id+"col",10,dnn.dom.__collapseElement,a)}else{b.style.display="none";if(a.pfunc!=null){a.pfunc()}}},cancelExpandElement:function(a){dnn.cancelDelay(a.id+"exp");a.style.overflow="";a.style.height=""},disableTextSelect:function(a){if(typeof a.onselectstart!="undefined"){a.onselectstart=function(){return false}}else{if(typeof a.style.MozUserSelect!="undefined"){a.style.MozUserSelect="none"}else{a.onmousedown=function(){return false}}}},expandElement:function(b,c,d){if(c==null){c=10}if(b.style.display=="none"&&b.origHeight==null){b.style.display="";b.style.overflow="";b.origHeight=b.offsetHeight;b.style.overflow="hidden";b.style.height="1px"}b.style.display="";var a=new Object();a.num=c;a.ctl=b;a.pfunc=d;dnn.dom.__expandElement(a)},__expandElement:function(a){var c=a.num;var b=a.ctl;var d=b.origHeight/c;if(b.offsetHeight+d<b.origHeight){b.style.height=(b.offsetHeight+d).toString()+"px";dnn.doDelay(b.id+"exp",10,dnn.dom.__expandElement,a)}else{b.style.overflow="";b.style.height="";if(a.pfunc!=null){a.pfunc()}}},deleteCookie:function(a,c,b){if(this.getCookie(a)){this.setCookie(a,"",-1,c,b);return true}return false},getAttr:function(b,a,c){if(b.getAttribute==null){return c}var d=b.getAttribute(a);if(d==null||d==""){return c}else{return d}},getById:function(b,a){return $get(b,a)},getByTagName:function(a,b){if(b==null){b=document}if(b.getElementsByTagName){return b.getElementsByTagName(a)}else{if(b.all&&b.all.tags){return b.all.tags(a)}else{return null}}},getParentByTagName:function(b,a){var c=b.parentNode;a=a.toLowerCase();while(c!=null){if(c.tagName&&c.tagName.toLowerCase()==a){return c}c=c.parentNode}return null},getCookie:function(c){var e=" "+document.cookie;var d=" "+c+"=";var b=null;var f=0;var a=0;if(e.length>0){f=e.indexOf(d);if(f!=-1){f+=d.length;a=e.indexOf(";",f);if(a==-1){a=e.length}b=unescape(e.substring(f,a))}}return(b)},getNonTextNode:function(a){if(this.isNonTextNode(a)){return a}while(a!=null&&this.isNonTextNode(a)){a=this.getSibling(a,1)}return a},addSafeHandler:function(b,a,c,d){b[a]=this.getObjMethRef(c,d);if(dnn.dom.browser.isType(dnn.dom.browser.InternetExplorer)){if(this.__leakEvts.length==0){dnn.dom.attachEvent(window,"onunload",dnn.dom.destroyHandlers)}this.__leakEvts[this.__leakEvts.length]=new dnn.dom.leakEvt(a,b,b[a])}},destroyHandlers:function(){var c=dnn.dom.__leakEvts.length-1;for(var a=c;a>=0;a--){var b=dnn.dom.__leakEvts[a];b.ctl.detachEvent(b.name,b.ptr);b.ctl[b.name]=null;dnn.dom.__leakEvts.length=dnn.dom.__leakEvts.length-1}},getObjMethRef:function(b,a){return(function(c){c=c||window.event;return b[a](c,this)})},getSibling:function(a,c){if(a!=null&&a.parentNode!=null){for(var b=0;b<a.parentNode.childNodes.length;b++){if(a.parentNode.childNodes[b].id==a.id){if(a.parentNode.childNodes[b+c]!=null){return a.parentNode.childNodes[b+c]}}}}return null},isNonTextNode:function(a){return(a.nodeType!=3&&a.nodeType!=8)},getScript:function(c){if(this.scriptElements[c]){return this.scriptElements[c]}var a=dnn.dom.getByTagName("SCRIPT");for(var b=0;b<a.length;b++){if(a[b].src!=null&&a[b].src.indexOf(c)>-1){this.scriptElements[c]=a[b];return a[b]}}},getScriptSrc:function(b){var a=dnn.getVar(b+".resx","");if(a.length>0){return a}return b},getScriptPath:function(){var a=dnn.dom.getScript("dnn.js");if(a){var b=a.src;if(b.indexOf("?")>-1){b=b.substr(0,b.indexOf("?"))}return b.replace("dnn.js","")}var c=dnn.getVar("__sp");if(c){return c}return""},scriptFile:function(b){var a=b.split("/");return a[a.length-1]},loadScript:function(e,d,b){var c;if(e!=null&&e.length>0){c=this.scriptFile(e);if(this.scripts[c]!=null){return}}var a=new dnn.ScriptRequest(e,d,b);if(c){this.scripts[c]=a}a.load();return a},loadScripts:function(a,b,c){if(dnn.scripts==null){var e=function(f,g,h){return(function(){dnn.dom.loadScripts(f,g,h)})};dnn.dom.loadScript(dnn.dom.getScriptPath()+"dnn.scripts.js",null,e(a,b,c));return}var d=new dnn.scripts.ScriptBatchRequest(a,b,c);d.load()},scriptStatus:function(c){var b=this.scriptFile(c);if(this.scripts[b]){return this.scripts[b].status}var a=this.getScript(c);if(a!=null){return"complete"}else{return""}},setScriptLoaded:function(b){var a=this.scriptFile(b);if(this.scripts[a]&&dnn.dom.scripts[a].status!="complete"){dnn.dom.scripts[a].complete()}},navigate:function(b,a){if(a!=null&&a.length>0){if(a=="_blank"||a=="_new"){window.open(b)}else{document.frames[a].location.href=b}}else{if(Sys.Browser.agent===Sys.Browser.InternetExplorer){window.navigate(b)}else{window.location.href=b}}return false},setCookie:function(b,f,h,e,d,c,a){var g;if(h){g=new Date();g.setTime(g.getTime()+(h*24*60*60*1000))}if(a){g=new Date();g.setTime(g.getTime()+(a))}document.cookie=b+"="+escape(f)+((g)?"; expires="+g.toGMTString():"")+((e)?"; path="+e:"")+((d)?"; domain="+d:"")+((c)?"; secure":"");if(document.cookie.length>0){return true}},getCurrentStyle:function(b,c){var a=Sys.UI.DomElement._getCurrentStyle(b);if(a){return a[c]}return""},getFormPostString:function(a){var c="";if(a!=null){if(a.tagName&&a.tagName.toLowerCase()=="form"){for(var b=0;b<a.elements.length;b++){c+=this.getElementPostString(a.elements[b])}}else{c=this.getElementPostString(a);for(var b=0;b<a.childNodes.length;b++){c+=this.getFormPostString(a.childNodes[b])}}}return c},getElementPostString:function(a){var c;if(a.tagName){c=a.tagName.toLowerCase()}if(c=="input"){var d=a.type.toLowerCase();if(d=="text"||d=="password"||d=="hidden"||((d=="checkbox"||d=="radio")&&a.checked)){return a.name+"="+dnn.encode(a.value,false)+"&"}}else{if(c=="select"){for(var b=0;b<a.options.length;b++){if(a.options[b].selected){return a.name+"="+dnn.encode(a.options[b].value,false)+"&"}}}else{if(c=="textarea"){return a.name+"="+dnn.encode(a.value,false)+"&"}}}return""},appendChild:function(b,a){return b.appendChild(a)},removeChild:function(a){return a.parentNode.removeChild(a)},createElement:function(a){return document.createElement(a.toLowerCase())}});dnn.dom.leakEvt=function(c,a,b){this.name=c;this.ctl=a;this.ptr=b};dnn.dom.leakEvt.registerClass("dnn.dom.leakEvt");dnn.dom.eventObject=function(b,a){this.object=b;this.srcElement=a};dnn.dom.eventObject.registerClass("dnn.dom.eventObject");dnn.dom.browserObject=function(){this.InternetExplorer="ie";this.Netscape="ns";this.Mozilla="mo";this.Opera="op";this.Safari="safari";this.Konqueror="kq";this.MacIE="macie";var b;var d=navigator.userAgent.toLowerCase();if(d.indexOf("konqueror")!=-1){b=this.Konqueror}else{if(d.indexOf("msie")!=-1&&d.indexOf("mac")!=-1){b=this.MacIE}else{if(Sys.Browser.agent===Sys.Browser.InternetExplorer){b=this.InternetExplorer}else{if(Sys.Browser.agent===Sys.Browser.FireFox){b=this.Mozilla}else{if(Sys.Browser.agent===Sys.Browser.Safari){b=this.Safari}else{if(Sys.Browser.agent===Sys.Browser.Opera){b=this.Opera}else{b=this.Mozilla}}}}}}this.type=b;this.version=Sys.Browser.version;var c=navigator.userAgent.toLowerCase();if(this.type==this.InternetExplorer){var a=navigator.appVersion.split("MSIE");this.version=parseFloat(a[1])}if(this.type==this.Netscape){var a=c.split("netscape");this.version=parseFloat(a[1].split("/")[1])}};dnn.dom.browserObject.prototype={toString:function(){return this.type+" "+this.version},isType:function(){for(var a=0;a<arguments.length;a++){if(dnn.dom.browser.type==arguments[a]){return true}}return false}};dnn.dom.browserObject.registerClass("dnn.dom.browserObject");dnn.dom.browser=new dnn.dom.browserObject();if(typeof($)=="undefined"){window.$=function $(){var ary=new Array();for(var i=0;i<arguments.length;i++){var arg=arguments[i];var ctl;if(typeof arg=='string')ctl=dnn.dom.getById(arg);else ctl=arg;if(ctl!=null&&typeof(Element)!='undefined'&&typeof(Element.extend)!='undefined')Element.extend(ctl);if(arguments.length==1)return ctl;ary[ary.length]=ctl;}return ary;}}try{document.execCommand("BackgroundImageCache",false,true)}catch(err){}Sys.Application.add_load(dnn._onload);
;;;!function(e){if(!e.hasInitialised){var t={escapeRegExp:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},hasClass:function(e,t){var i=" ";return 1===e.nodeType&&(i+e.className+i).replace(/[\n\t]/g,i).indexOf(i+t+i)>=0},addClass:function(e,t){e.className+=" "+t},removeClass:function(e,t){var i=new RegExp("\\b"+this.escapeRegExp(t)+"\\b");e.className=e.className.replace(i,"")},interpolateString:function(e,t){var i=/{{([a-z][a-z0-9\-_]*)}}/gi;return e.replace(i,function(e){return t(arguments[1])||""})},getCookie:function(e){var t="; "+document.cookie,i=t.split("; "+e+"=");return i.length<2?void 0:i.pop().split(";").shift()},setCookie:function(e,t,i,n,o,s){var r=new Date;r.setDate(r.getDate()+(i||365));var a=[e+"="+t,"expires="+r.toUTCString(),"path="+(o||"/")];n&&a.push("domain="+n),s&&a.push("secure"),document.cookie=a.join(";")},deepExtend:function(e,t){for(var i in t)t.hasOwnProperty(i)&&(i in e&&this.isPlainObject(e[i])&&this.isPlainObject(t[i])?this.deepExtend(e[i],t[i]):e[i]=t[i]);return e},throttle:function(e,t){var i=!1;return function(){i||(e.apply(this,arguments),i=!0,setTimeout(function(){i=!1},t))}},hash:function(e){var t,i,n,o=0;if(0===e.length)return o;for(t=0,n=e.length;t<n;++t)i=e.charCodeAt(t),o=(o<<5)-o+i,o|=0;return o},normaliseHex:function(e){return"#"==e[0]&&(e=e.substr(1)),3==e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]),e},getContrast:function(e){e=this.normaliseHex(e);var t=parseInt(e.substr(0,2),16),i=parseInt(e.substr(2,2),16),n=parseInt(e.substr(4,2),16),o=(299*t+587*i+114*n)/1e3;return o>=128?"#000":"#fff"},getLuminance:function(e){var t=parseInt(this.normaliseHex(e),16),i=38,n=(t>>16)+i,o=(t>>8&255)+i,s=(255&t)+i,r=(16777216+65536*(n<255?n<1?0:n:255)+256*(o<255?o<1?0:o:255)+(s<255?s<1?0:s:255)).toString(16).slice(1);return"#"+r},isMobile:function(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)},isPlainObject:function(e){return"object"==typeof e&&null!==e&&e.constructor==Object},traverseDOMPath:function(e,i){return e&&e.parentNode?t.hasClass(e,i)?e:this.traverseDOMPath(e.parentNode,i):null}};e.status={deny:"deny",allow:"allow",dismiss:"dismiss"},e.transitionEnd=function(){var e=document.createElement("div"),t={t:"transitionend",OT:"oTransitionEnd",msT:"MSTransitionEnd",MozT:"transitionend",WebkitT:"webkitTransitionEnd"};for(var i in t)if(t.hasOwnProperty(i)&&"undefined"!=typeof e.style[i+"ransition"])return t[i];return""}(),e.hasTransition=!!e.transitionEnd;var i=Object.keys(e.status).map(t.escapeRegExp);e.customStyles={},e.Popup=function(){function n(){this.initialise.apply(this,arguments)}function o(e){this.openingTimeout=null,t.removeClass(e,"cc-invisible")}function s(t){t.style.display="none",t.removeEventListener(e.transitionEnd,this.afterTransition),this.afterTransition=null}function r(){var t=this.options.onInitialise.bind(this);if(!window.navigator.cookieEnabled)return t(e.status.deny),!0;if(window.CookiesOK||window.navigator.CookiesOK)return t(e.status.allow),!0;var i=Object.keys(e.status),n=this.getStatus(),o=i.indexOf(n)>=0;return o&&t(n),o}function a(){var e=this.options.position.split("-"),t=[];return e.forEach(function(e){t.push("cc-"+e)}),t}function c(){var e=this.options,i="top"==e.position||"bottom"==e.position?"banner":"floating";t.isMobile()&&(i="floating");var n=["cc-"+i,"cc-type-"+e.type,"cc-theme-"+e.theme];e["static"]&&n.push("cc-static"),n.push.apply(n,a.call(this));p.call(this,this.options.palette);return this.customStyleSelector&&n.push(this.customStyleSelector),n}function l(){var e={},i=this.options;i.showLink||(i.elements.link="",i.elements.messagelink=i.elements.message),Object.keys(i.elements).forEach(function(n){e[n]=t.interpolateString(i.elements[n],function(e){var t=i.content[e];return e&&"string"==typeof t&&t.length?t:""})});var n=i.compliance[i.type];n||(n=i.compliance.info),e.compliance=t.interpolateString(n,function(t){return e[t]});var o=i.layouts[i.layout];return o||(o=i.layouts.basic),t.interpolateString(o,function(t){return e[t]})}function u(i){var n=this.options,o=document.createElement("div"),s=n.container&&1===n.container.nodeType?n.container:document.body;o.innerHTML=i;var r=o.children[0];return r.style.display="none",t.hasClass(r,"cc-window")&&e.hasTransition&&t.addClass(r,"cc-invisible"),this.onButtonClick=h.bind(this),r.addEventListener("click",this.onButtonClick),n.autoAttach&&(s.firstChild?s.insertBefore(r,s.firstChild):s.appendChild(r)),r}function h(n){var o=t.traverseDOMPath(n.target,"cc-btn")||n.target;if(t.hasClass(o,"cc-btn")){var s=o.className.match(new RegExp("\\bcc-("+i.join("|")+")\\b")),r=s&&s[1]||!1;r&&(this.setStatus(r),this.close(!0))}t.hasClass(o,"cc-close")&&(this.setStatus(e.status.dismiss),this.close(!0)),t.hasClass(o,"cc-revoke")&&this.revokeChoice()}function p(e){var i=t.hash(JSON.stringify(e)),n="cc-color-override-"+i,o=t.isPlainObject(e);return this.customStyleSelector=o?n:null,o&&d(i,e,"."+n),o}function d(i,n,o){if(e.customStyles[i])return void++e.customStyles[i].references;var s={},r=n.popup,a=n.button,c=n.highlight;r&&(r.text=r.text?r.text:t.getContrast(r.background),r.link=r.link?r.link:r.text,s[o+".cc-window"]=["color: "+r.text,"background-color: "+r.background],s[o+".cc-revoke"]=["color: "+r.text,"background-color: "+r.background],s[o+" .cc-link,"+o+" .cc-link:active,"+o+" .cc-link:visited"]=["color: "+r.link],a&&(a.text=a.text?a.text:t.getContrast(a.background),a.border=a.border?a.border:"transparent",s[o+" .cc-btn"]=["color: "+a.text,"border-color: "+a.border,"background-color: "+a.background],a.padding&&s[o+" .cc-btn"].push("padding: "+a.padding),"transparent"!=a.background&&(s[o+" .cc-btn:hover, "+o+" .cc-btn:focus"]=["background-color: "+(a.hover||v(a.background))]),c?(c.text=c.text?c.text:t.getContrast(c.background),c.border=c.border?c.border:"transparent",s[o+" .cc-highlight .cc-btn:first-child"]=["color: "+c.text,"border-color: "+c.border,"background-color: "+c.background]):s[o+" .cc-highlight .cc-btn:first-child"]=["color: "+r.text]));var l=document.createElement("style");document.head.appendChild(l),e.customStyles[i]={references:1,element:l.sheet};var u=-1;for(var h in s)s.hasOwnProperty(h)&&l.sheet.insertRule(h+"{"+s[h].join(";")+"}",++u)}function v(e){return e=t.normaliseHex(e),"000000"==e?"#222":t.getLuminance(e)}function f(i){if(t.isPlainObject(i)){var n=t.hash(JSON.stringify(i)),o=e.customStyles[n];if(o&&!--o.references){var s=o.element.ownerNode;s&&s.parentNode&&s.parentNode.removeChild(s),e.customStyles[n]=null}}}function m(e,t){for(var i=0,n=e.length;i<n;++i){var o=e[i];if(o instanceof RegExp&&o.test(t)||"string"==typeof o&&o.length&&o===t)return!0}return!1}function b(){var i=this.setStatus.bind(this),n=this.close.bind(this),o=this.options.dismissOnTimeout;"number"==typeof o&&o>=0&&(this.dismissTimeout=window.setTimeout(function(){i(e.status.dismiss),n(!0)},Math.floor(o)));var s=this.options.dismissOnScroll;if("number"==typeof s&&s>=0){var r=function(t){window.pageYOffset>Math.floor(s)&&(i(e.status.dismiss),n(!0),window.removeEventListener("scroll",r),this.onWindowScroll=null)};this.options.enabled&&(this.onWindowScroll=r,window.addEventListener("scroll",r))}var a=this.options.dismissOnWindowClick,c=this.options.ignoreClicksFrom;if(a){var l=function(o){for(var s=!1,r=o.path.length,a=c.length,u=0;u<r;u++)if(!s)for(var h=0;h<a;h++)s||(s=t.hasClass(o.path[u],c[h]));s||(i(e.status.dismiss),n(!0),window.removeEventListener("click",l),this.onWindowClick=null)}.bind(this);this.options.enabled&&(this.onWindowClick=l,window.addEventListener("click",l))}}function g(){if("info"!=this.options.type&&(this.options.revokable=!0),t.isMobile()&&(this.options.animateRevokable=!1),this.options.revokable){var e=a.call(this);this.options.animateRevokable&&e.push("cc-animate"),this.customStyleSelector&&e.push(this.customStyleSelector);var i=this.options.revokeBtn.replace("{{classes}}",e.join(" ")).replace("{{policy}}",this.options.content.policy);this.revokeBtn=u.call(this,i);var n=this.revokeBtn;if(this.options.animateRevokable){var o=t.throttle(function(e){var i=!1,o=20,s=window.innerHeight-20;t.hasClass(n,"cc-top")&&e.clientY<o&&(i=!0),t.hasClass(n,"cc-bottom")&&e.clientY>s&&(i=!0),i?t.hasClass(n,"cc-active")||t.addClass(n,"cc-active"):t.hasClass(n,"cc-active")&&t.removeClass(n,"cc-active")},200);this.onMouseMove=o,window.addEventListener("mousemove",o)}}}var y={enabled:!0,container:null,cookie:{name:"cookieconsent_status",path:"/",domain:"",expiryDays:365,secure:!1},onPopupOpen:function(){},onPopupClose:function(){},onInitialise:function(e){},onStatusChange:function(e,t){},onRevokeChoice:function(){},onNoCookieLaw:function(e,t){},content:{header:"Cookies used on the website!",message:"This website uses cookies to ensure you get the best experience on our website.",dismiss:"Got it!",allow:"Allow cookies",deny:"Decline",link:"Learn more",href:"https://cookiesandyou.com",close:"&#x274c;",target:"_blank",policy:"Cookie Policy"},elements:{header:'<span class="cc-header">{{header}}</span>&nbsp;',message:'<span id="cookieconsent:desc" class="cc-message">{{message}}</span>',messagelink:'<span id="cookieconsent:desc" class="cc-message">{{message}} <a aria-label="learn more about cookies" role=button tabindex="0" class="cc-link" href="{{href}}" rel="noopener noreferrer nofollow" target="{{target}}">{{link}}</a></span>',dismiss:'<a aria-label="dismiss cookie message" role=button tabindex="0" class="cc-btn cc-dismiss">{{dismiss}}</a>',allow:'<a aria-label="allow cookies" role=button tabindex="0"  class="cc-btn cc-allow">{{allow}}</a>',deny:'<a aria-label="deny cookies" role=button tabindex="0" class="cc-btn cc-deny">{{deny}}</a>',link:'<a aria-label="learn more about cookies" role=button tabindex="0" class="cc-link" href="{{href}}" rel="noopener noreferrer nofollow" target="{{target}}">{{link}}</a>',close:'<span aria-label="dismiss cookie message" role=button tabindex="0" class="cc-close">{{close}}</span>'},window:'<div role="dialog" aria-live="polite" aria-label="cookieconsent" aria-describedby="cookieconsent:desc" class="cc-window {{classes}}"><!--googleoff: all-->{{children}}<!--googleon: all--></div>',revokeBtn:'<div class="cc-revoke {{classes}}">{{policy}}</div>',compliance:{info:'<div class="cc-compliance">{{dismiss}}</div>',"opt-in":'<div class="cc-compliance cc-highlight">{{deny}}{{allow}}</div>',"opt-out":'<div class="cc-compliance cc-highlight">{{deny}}{{allow}}</div>'},type:"info",layouts:{basic:"{{messagelink}}{{compliance}}","basic-close":"{{messagelink}}{{compliance}}{{close}}","basic-header":"{{header}}{{message}}{{link}}{{compliance}}"},layout:"basic",position:"bottom",theme:"block","static":!1,palette:null,revokable:!1,animateRevokable:!0,showLink:!0,dismissOnScroll:!1,dismissOnTimeout:!1,dismissOnWindowClick:!1,ignoreClicksFrom:["cc-revoke","cc-btn"],autoOpen:!0,autoAttach:!0,whitelistPage:[],blacklistPage:[],overrideHTML:null};return n.prototype.initialise=function(e){this.options&&this.destroy(),t.deepExtend(this.options={},y),t.isPlainObject(e)&&t.deepExtend(this.options,e),r.call(this)&&(this.options.enabled=!1),m(this.options.blacklistPage,location.pathname)&&(this.options.enabled=!1),m(this.options.whitelistPage,location.pathname)&&(this.options.enabled=!0);var i=this.options.window.replace("{{classes}}",c.call(this).join(" ")).replace("{{children}}",l.call(this)),n=this.options.overrideHTML;if("string"==typeof n&&n.length&&(i=n),this.options["static"]){var o=u.call(this,'<div class="cc-grower">'+i+"</div>");o.style.display="",this.element=o.firstChild,this.element.style.display="none",t.addClass(this.element,"cc-invisible")}else this.element=u.call(this,i);b.call(this),g.call(this),this.options.autoOpen&&this.autoOpen()},n.prototype.destroy=function(){this.onButtonClick&&this.element&&(this.element.removeEventListener("click",this.onButtonClick),this.onButtonClick=null),this.dismissTimeout&&(clearTimeout(this.dismissTimeout),this.dismissTimeout=null),this.onWindowScroll&&(window.removeEventListener("scroll",this.onWindowScroll),this.onWindowScroll=null),this.onWindowClick&&(window.removeEventListener("click",this.onWindowClick),this.onWindowClick=null),this.onMouseMove&&(window.removeEventListener("mousemove",this.onMouseMove),this.onMouseMove=null),this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.element=null,this.revokeBtn&&this.revokeBtn.parentNode&&this.revokeBtn.parentNode.removeChild(this.revokeBtn),this.revokeBtn=null,f(this.options.palette),this.options=null},n.prototype.open=function(t){if(this.element)return this.isOpen()||(e.hasTransition?this.fadeIn():this.element.style.display="",this.options.revokable&&this.toggleRevokeButton(),this.options.onPopupOpen.call(this)),this},n.prototype.close=function(t){if(this.element)return this.isOpen()&&(e.hasTransition?this.fadeOut():this.element.style.display="none",t&&this.options.revokable&&this.toggleRevokeButton(!0),this.options.onPopupClose.call(this)),this},n.prototype.fadeIn=function(){var i=this.element;if(e.hasTransition&&i&&(this.afterTransition&&s.call(this,i),t.hasClass(i,"cc-invisible"))){if(i.style.display="",this.options["static"]){var n=this.element.clientHeight;this.element.parentNode.style.maxHeight=n+"px"}var r=20;this.openingTimeout=setTimeout(o.bind(this,i),r)}},n.prototype.fadeOut=function(){var i=this.element;e.hasTransition&&i&&(this.openingTimeout&&(clearTimeout(this.openingTimeout),o.bind(this,i)),t.hasClass(i,"cc-invisible")||(this.options["static"]&&(this.element.parentNode.style.maxHeight=""),this.afterTransition=s.bind(this,i),i.addEventListener(e.transitionEnd,this.afterTransition),t.addClass(i,"cc-invisible")))},n.prototype.isOpen=function(){return this.element&&""==this.element.style.display&&(!e.hasTransition||!t.hasClass(this.element,"cc-invisible"))},n.prototype.toggleRevokeButton=function(e){this.revokeBtn&&(this.revokeBtn.style.display=e?"":"none")},n.prototype.revokeChoice=function(e){this.options.enabled=!0,this.clearStatus(),this.options.onRevokeChoice.call(this),e||this.autoOpen()},n.prototype.hasAnswered=function(t){return Object.keys(e.status).indexOf(this.getStatus())>=0},n.prototype.hasConsented=function(t){var i=this.getStatus();return i==e.status.allow||i==e.status.dismiss},n.prototype.autoOpen=function(e){!this.hasAnswered()&&this.options.enabled?this.open():this.hasAnswered()&&this.options.revokable&&this.toggleRevokeButton(!0)},n.prototype.setStatus=function(i){var n=this.options.cookie,o=t.getCookie(n.name),s=Object.keys(e.status).indexOf(o)>=0;Object.keys(e.status).indexOf(i)>=0?(t.setCookie(n.name,i,n.expiryDays,n.domain,n.path,n.secure),this.options.onStatusChange.call(this,i,s)):this.clearStatus()},n.prototype.getStatus=function(){return t.getCookie(this.options.cookie.name)},n.prototype.clearStatus=function(){var e=this.options.cookie;t.setCookie(e.name,"",-1,e.domain,e.path)},n}(),e.Location=function(){function e(e){t.deepExtend(this.options={},s),t.isPlainObject(e)&&t.deepExtend(this.options,e),this.currentServiceIndex=-1}function i(e,t,i){var n,o=document.createElement("script");o.type="text/"+(e.type||"javascript"),o.src=e.src||e,o.async=!1,o.onreadystatechange=o.onload=function(){var e=o.readyState;clearTimeout(n),t.done||e&&!/loaded|complete/.test(e)||(t.done=!0,t(),o.onreadystatechange=o.onload=null)},document.body.appendChild(o),n=setTimeout(function(){t.done=!0,t(),o.onreadystatechange=o.onload=null},i)}function n(e,t,i,n,o){var s=new(window.XMLHttpRequest||window.ActiveXObject)("MSXML2.XMLHTTP.3.0");if(s.open(n?"POST":"GET",e,1),s.setRequestHeader("Content-type","application/x-www-form-urlencoded"),Array.isArray(o))for(var r=0,a=o.length;r<a;++r){var c=o[r].split(":",2);s.setRequestHeader(c[0].replace(/^\s+|\s+$/g,""),c[1].replace(/^\s+|\s+$/g,""))}"function"==typeof t&&(s.onreadystatechange=function(){s.readyState>3&&t(s)}),s.send(n)}function o(e){return new Error("Error ["+(e.code||"UNKNOWN")+"]: "+e.error)}var s={timeout:5e3,services:["ipinfo"],serviceDefinitions:{ipinfo:function(){return{url:"//ipinfo.io",headers:["Accept: application/json"],callback:function(e,t){try{var i=JSON.parse(t);return i.error?o(i):{code:i.country}}catch(n){return o({error:"Invalid response ("+n+")"})}}}},ipinfodb:function(e){return{url:"//api.ipinfodb.com/v3/ip-country/?key={api_key}&format=json&callback={callback}",isScript:!0,callback:function(e,t){try{var i=JSON.parse(t);return"ERROR"==i.statusCode?o({error:i.statusMessage}):{code:i.countryCode}}catch(n){return o({error:"Invalid response ("+n+")"})}}}},maxmind:function(){return{url:"//js.maxmind.com/js/apis/geoip2/v2.1/geoip2.js",isScript:!0,callback:function(e){return window.geoip2?void geoip2.country(function(t){try{e({code:t.country.iso_code})}catch(i){e(o(i))}},function(t){e(o(t))}):void e(new Error("Unexpected response format. The downloaded script should have exported `geoip2` to the global scope"))}}}}};return e.prototype.getNextService=function(){var e;do e=this.getServiceByIdx(++this.currentServiceIndex);while(this.currentServiceIndex<this.options.services.length&&!e);return e},e.prototype.getServiceByIdx=function(e){var i=this.options.services[e];if("function"==typeof i){var n=i();return n.name&&t.deepExtend(n,this.options.serviceDefinitions[n.name](n)),n}return"string"==typeof i?this.options.serviceDefinitions[i]():t.isPlainObject(i)?this.options.serviceDefinitions[i.name](i):null},e.prototype.locate=function(e,t){var i=this.getNextService();return i?(this.callbackComplete=e,this.callbackError=t,void this.runService(i,this.runNextServiceOnError.bind(this))):void t(new Error("No services to run"))},e.prototype.setupUrl=function(e){var t=this.getCurrentServiceOpts();return e.url.replace(/\{(.*?)\}/g,function(i,n){if("callback"===n){var o="callback"+Date.now();return window[o]=function(t){e.__JSONP_DATA=JSON.stringify(t)},o}if(n in t.interpolateUrl)return t.interpolateUrl[n]})},e.prototype.runService=function(e,t){var o=this;if(e&&e.url&&e.callback){var s=e.isScript?i:n,r=this.setupUrl(e);s(r,function(i){var n=i?i.responseText:"";e.__JSONP_DATA&&(n=e.__JSONP_DATA,delete e.__JSONP_DATA),o.runServiceCallback.call(o,t,e,n)},this.options.timeout,e.data,e.headers)}},e.prototype.runServiceCallback=function(e,t,i){var n=this,o=function(t){s||n.onServiceResult.call(n,e,t)},s=t.callback(o,i);s&&this.onServiceResult.call(this,e,s)},e.prototype.onServiceResult=function(e,t){t instanceof Error||t&&t.error?e.call(this,t,null):e.call(this,null,t)},e.prototype.runNextServiceOnError=function(e,t){if(e){this.logError(e);var i=this.getNextService();i?this.runService(i,this.runNextServiceOnError.bind(this)):this.completeService.call(this,this.callbackError,new Error("All services failed"))}else this.completeService.call(this,this.callbackComplete,t)},e.prototype.getCurrentServiceOpts=function(){var e=this.options.services[this.currentServiceIndex];return"string"==typeof e?{name:e}:"function"==typeof e?e():t.isPlainObject(e)?e:{}},e.prototype.completeService=function(e,t){this.currentServiceIndex=-1,e&&e(t)},e.prototype.logError=function(e){var t=this.currentServiceIndex,i=this.getServiceByIdx(t);console.warn("The service["+t+"] ("+i.url+") responded with the following error",e)},e}(),e.Law=function(){function e(e){this.initialise.apply(this,arguments)}var i={regionalLaw:!0,hasLaw:["AT","BE","BG","HR","CZ","CY","DK","EE","FI","FR","DE","EL","HU","IE","IT","LV","LT","LU","MT","NL","PL","PT","SK","ES","SE","GB","UK","GR","EU"],revokable:["HR","CY","DK","EE","FR","DE","LV","LT","NL","PT","ES"],explicitAction:["HR","IT","ES"]};return e.prototype.initialise=function(e){t.deepExtend(this.options={},i),t.isPlainObject(e)&&t.deepExtend(this.options,e)},e.prototype.get=function(e){var t=this.options;return{hasLaw:t.hasLaw.indexOf(e)>=0,revokable:t.revokable.indexOf(e)>=0,explicitAction:t.explicitAction.indexOf(e)>=0}},e.prototype.applyLaw=function(e,t){var i=this.get(t);return i.hasLaw||(e.enabled=!1,"function"==typeof e.onNoCookieLaw&&e.onNoCookieLaw(t,i)),this.options.regionalLaw&&(i.revokable&&(e.revokable=!0),i.explicitAction&&(e.dismissOnScroll=!1,e.dismissOnTimeout=!1)),e},e}(),e.initialise=function(i,n,o){var s=new e.Law(i.law);n||(n=function(){}),o||(o=function(){});var r=Object.keys(e.status),a=t.getCookie("cookieconsent_status"),c=r.indexOf(a)>=0;return c?void n(new e.Popup(i)):void e.getCountryCode(i,function(t){delete i.law,delete i.location,t.code&&(i=s.applyLaw(i,t.code)),n(new e.Popup(i))},function(t){delete i.law,delete i.location,o(t,new e.Popup(i))})},e.getCountryCode=function(t,i,n){if(t.law&&t.law.countryCode)return void i({code:t.law.countryCode});if(t.location){var o=new e.Location(t.location);return void o.locate(function(e){i(e||{})},n)}i({})},e.utils=t,e.hasInitialised=!0,window.cookieconsent=e}}(window.cookieconsent||{});
;;;!function(o,e){function i(o){for(var e=i.options,t=e.parser[e.strictMode?"strict":"loose"].exec(o),n={},a=14;a--;)n[e.key[a]]=t[a]||"";return n[e.q.name]={},n[e.key[12]].replace(e.q.parser,function(o,i,t){i&&(n[e.q.name][i]=t)}),n}i.options={strictMode:!1,key:["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],q:{name:"queryKey",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/}};var t=function(){var e=!1;return function(o){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(o)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(o.substr(0,4)))&&(e=!0)}(navigator.userAgent||navigator.vendor||o.opera),e}();o.dnnModal={load:function(){try{if(void 0!==parent.location.href){var o=parent;if(void 0!==o.parent.$find)if(-1==location.href.indexOf("popUp")||o.location.href.indexOf("popUp")>-1){var e=o.jQuery("#iPopUp"),i=e.dialog("option","refresh"),t=e.dialog("option","closingUrl"),n=e.dialog("option","minWidth"),a=e.dialog("option","minHeight"),r=e.dialog("option","showReturn");t||(t=location.href),!0===e.dialog("isOpen")&&e.dialog("option",{close:function(o,e){dnnModal.refreshPopup({url:t,width:n,height:a,showReturn:r,refresh:i})}}).dialog("close")}else o.jQuery("#iPopUp").dialog({autoOpen:!1,title:document.title})}return!1}catch(o){return!0}},show:function(n,a,r,l,d,s){var p=e("#iPopUp");p.length&&(p[0].src="about:blank",p.remove()),p=e('<iframe id="iPopUp" name="iPopUp" src="about:blank" scrolling="auto" frameborder="0"></iframe>'),e(document.body).append(p),e(document).find("html").css("overflow","hidden");for(var c=document.styleSheets,h=!1,m=0,g=c.length;m<g;m++){var u=c[m].href;if("string"==typeof u&&u.indexOf("admin.css")>-1){h=!0;break}}var f=!h&&(e(o).width()<481||t);f?e("html").addClass("mobileView"):e("html").removeClass("mobileView");var w=0,b=function(){p.prev(".dnnLoading").remove()},v=function(){p.on("load",function(){b();var e=document.getElementById("iPopUp"),t=o.location.hostname.toLowerCase(),a=o.location.port.toLowerCase(),r=i(n),l=r.host.toLowerCase(),d=r.port.toLowerCase();if(l=l||t,d=d||a,t===l&&a===d)try{if(f){var s=e.contentDocument.body,c=e.contentDocument.documentElement;c.style.width=w+"px",s.className+="mobileView dnnFormPopup dnnFormPopupMobileView";var h=Math.max(s.scrollHeight,s.offsetHeight,c.clientHeight,c.scrollHeight,c.offsetHeight);p.css("height",h+100).dialog("option","position",{my:"top",at:"top"})}e.contentWindow.dnnModal.show=function(o,e,i,t,n,a){var r=parent.jQuery("#iPopUp");a||(a=location.href),r.dialog("isOpen")&&r.dialog("option",{close:function(){parent.dnnModal.show(o,e,i,t,n,a)}}).dialog("close")}}catch(o){}}),p[0].src=n,"function"==typeof e.ui.dialog.prototype.options.open&&e.ui.dialog.prototype.options.open.apply(this,arguments)};if(f){w=e(o).width()-100;var y=e("body").css("height");p.dialog({modal:!0,autoOpen:!0,dialogClass:"dnnFormPopup dnnFormPopupMobileView",resizable:!1,closeOnEscape:!0,refresh:d,showReturn:a,closingUrl:s,minHeight:r,position:{my:"top",at:"top"},draggable:!1,open:function(){e("#Form").hide(),e("body").css("height","auto"),p.parent().css({width:"auto",left:"0",right:"0",top:"0","box-shadow":"none"}),o.scrollTo(0,0),v()},close:function(){e("#Form").show(),y&&e("body").css("height",y),o.scrollTo(0,0),o.dnnModal.closePopUp(d,s)}})}else if(p.dialog({modal:!0,autoOpen:!0,dialogClass:"dnnFormPopup",position:{my:"center",at:"center"},minWidth:l,minHeight:r,maxWidth:1920,maxHeight:1080,resizable:!0,closeOnEscape:!0,refresh:d,showReturn:a,closingUrl:s,open:v,close:function(){o.dnnModal.closePopUp(d,s)}}).width(l-11).height(r-11),0===p.parent().find(".ui-dialog-title").next("a.dnnModalCtrl").length){var k=e('<a class="dnnModalCtrl"></a>');p.parent().find(".ui-dialog-titlebar-close").wrap(k);var x=e('<a href="#" class="dnnToggleMax"><span>Max</span></a>');p.parent().find(".ui-dialog-titlebar-close").before(x),x.click(function(i){i.preventDefault();var t,n,a=e(o),r="center",l="center",d=0,s=0;if(e("button.ui-dialog-titlebar-close").length&&(s=e("button.ui-dialog-titlebar-close").parent(".dnnModalCtrl").height(),d=e("button.ui-dialog-titlebar-close").parent(".dnnModalCtrl").width()),p.data("isMaximized")){var c=p.data("height")+100;c>=a.height()&&(c=p.data("height")),t=c-s,n=p.data("width"),p.data("isMaximized",!1)}else{p.data("height",p.dialog("option","minHeight")).data("width",p.dialog("option","minWidth"));var h=0;e("#personaBar-iframe").length&&(h=e("#personaBar-iframe").width()),n=a.outerWidth()-h-d/7.5-40,t=a.height()-s,r="right-"+d/5.5+" center",l="right center-"+s/11,p.data("isMaximized",!0)}p.dialog("option","height",t),p.dialog("option","width",n),p.dialog("option","position",{my:r,at:l,of:o})})}if(function(){var o=e('<div class="dnnLoading"></div>');o.css({width:p.width(),height:p.height()}),p.before(o)}(),"true"===a.toString())return!1},closePopUp:function(o,i){var t=parent,n=t.jQuery("#iPopUp");void 0!==o&&null!=o||(o=!0),"true"==o.toString()?(void 0!==i&&""!=i||(i=t.location.href),t.location.href=i,n.hide()):n.dialog("option","close",null).dialog("close"),e(t.document).find("html").css("overflow","")},refreshPopup:function(o){var e=parent,i=e.parent;e.location.href!==i.location.href&&e.location.href!==o.url?i.dnnModal.show(o.url,o.showReturn,o.height,o.width,o.refresh,o.closingUrl):dnnModal.closePopUp(o.refresh,o.url)}},o.dnnModal.load()}(window,jQuery);
;;;jQuery(function($){var $body=$('body'),$window=$(window);$(document).ready(function(){$(".eds_pageLoader").fadeOut("slow");$(".EasyDNNSkin_Galore").addClass("eds_contentLoaded");});$window.on('scroll',function(){if($window.scrollTop()==0)
$body.removeClass('eds_pageScrolled');else
$body.addClass('eds_pageScrolled');});smoothScroll.init({selector:'.eds_scrollTo'});$(".eds_searchButton").click(function(){$(".eds_searchContainer").toggleClass("eds_searchVisible");});$(".eds_headerBigSearch .eds_searchButton").click(function(){$(".eds_header").toggleClass("eds_searchVisible");});$(".eds_searchClose").click(function(){$(".eds_searchContainer").removeClass("eds_searchVisible");$(".eds_headerBigSearch").removeClass("eds_searchVisible");});$(".eds_sideHeaderTriger").click(function(){$(".eds_fixedSideHeader").toggleClass("eds_headerActive");});$(".eds_pushContent .eds_sideHeaderTriger").click(function(){$("body").toggleClass("eds_headerActive");});$(".eds_sideHeader7Triger").click(function(){$(".eds_fixedSideHeader").toggleClass("eds_headerActive");});$(".eds_sideHeader7Close").click(function(){$(".eds_fixedSideHeader").removeClass("eds_headerActive");});$(".eds_sideHeader8Triger").click(function(){$(".eds_fixedSideHeader").toggleClass("eds_headerActive");$(".eds_sideHeader8Triger").toggleClass("eds_headerActive");});$(".eds_sideHeader8Close").click(function(){$(".eds_fixedSideHeader").removeClass("eds_headerActive");$(".eds_sideHeader8Triger").removeClass("eds_headerActive");});$(".eds_header8UserPanelTriger").click(function(){$(".eds_header8UserPanel").toggleClass("eds_header8UserPanelActive");$(".eds_header8UserPanelTriger").toggleClass("eds_header8UserPanelActive");});;$(".eds_header8SearchPanelTriger").click(function(){$(".eds_header8SearchPanel").toggleClass("eds_header8SearchPanelActive");$(".eds_header8SearchPanelTriger").toggleClass("eds_header8SearchPanelActive");});$(".eds_header8LanguageTriger").click(function(){$(".eds_header8Language").toggleClass("eds_header8LanguageActive");});$(".eds_Header8PaneTriger").click(function(){$(".eds_Header8Pane").toggleClass("eds_Header8PaneActive");});$('.eds_Tabs').edsTabulator_1();$('.eds_Accordion').edsAccordion_1();$('.eds_paralaxBackground').parallax({speed:0.15});$('.eds_paralaxBackground2').parallax({speed:0.15});$('.eds_headerContainer > .eds_headerHeight').headerSpacer();$('.responsAbilityMenu').responsAbilityMenu();$('.pulseOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated pulse',offset:100});$('.tadaOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated tada',offset:100});$('.fadeInOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeIn',offset:100});$('.fadeInDownOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInDown',offset:100});$('.fadeInLeftOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInLeft',offset:100});$('.fadeInLeftBigOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInLeftBig',offset:100});$('.fadeInRightOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInRight',offset:100});$('.fadeInRightBigOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInRightBig',offset:100});$('.fadeInUpOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInUp',offset:100});$('.fadeInUpBigOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated fadeInUpBig',offset:100});$('.flipInXOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated flipInX',offset:100});$('.flipInYOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated flipInY',offset:100});$('.lightSpeedInOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated lightSpeedIn',offset:100});$('.rotateInOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated rotateIn',offset:100});$('.rotateInDownLeftOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated rotateInDownLeft',offset:100});$('.rotateInDownRightOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated rotateInDownRight',offset:100});$('.rotateInUpLeftOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated rotateInUpLeft',offset:100});$('.rotateInUpRightOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated rotateInUpRight',offset:100});$('.slideInDownOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated slideInDown',offset:100});$('.slideInLeftOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated slideInLeft',offset:100});$('.slideInRightOnView').addClass("eds_hidden").viewportChecker({classToAdd:'eds_visible animated slideInRight',offset:100});$('.eds_counter').viewportChecker({offset:100,classToAdd:'',callbackFunction:function($el,action){var counterActivated='counterActivated';if($el.data(counterActivated))
return;$el.data(counterActivated,true);$el.prop('Counter',0).animate({Counter:$el.text()},{duration:2000,easing:'swing',step:function(now){$el.text(Math.ceil(now));}});}});$('.eds_progressAnimated').addClass("eds_nullValue").viewportChecker({classToRemove:'eds_nullValue',offset:100});$('.eds_floatingMenu').on('click','> span',function(){$(this).parent().toggleClass('eds_floatingMenuActive');}).filter('.eds_onClickCloseMenu').on('click','> ul > li a.edsfnl_action',function(){$(this).parents('.eds_floatingMenu > ul').eq(0).parent().removeClass("eds_floatingMenuActive");});});(function(){var didScroll;var lastScrollTop=0;var delta=150;var navbarHeight=$('.eds_animatedHeader').outerHeight();$(window).scroll(function(event){didScroll=true;});setInterval(function(){if(didScroll){hasScrolled();didScroll=false;}},250);function hasScrolled(){var st=$(this).scrollTop();if(Math.abs(lastScrollTop-st)<=delta)
return;if(st>lastScrollTop&&st>navbarHeight){$('.eds_animatedHeader').removeClass('eds_headerDow').addClass('eds_headerUp');}else{if(st+$(window).height()<$(document).height()){$('.eds_animatedHeader').removeClass('eds_headerUp').addClass('eds_headerDow');}}
lastScrollTop=st;}})();(function($){var menuInstanceKey='responsAbilityInstance',$window=$(window);$.fn.responsAbilityMenu=function(){return this.each(function(){var $mainWrapper=$(this),$menuWrapper=$('> .raMenuWrapper',$mainWrapper),$menuTriggerWrapper=$('> .raMenuTriggerWrapper',$mainWrapper),$placeholder=$mainWrapper.next('.responsAbilityMenuPlaceholder'),offsetTop,formTopMargin=parseInt($('#Form').css('marginTop'),10),resizeMenu=function(){var maxHeight=$window.height()-$menuTriggerWrapper.outerHeight(true),windowScrollTop;if($menuTriggerWrapper.is(':hidden')||!$mainWrapper.hasClass(menuOpenedClass))
return;maxHeight-=$mainWrapper.outerHeight(true)-$mainWrapper.height();windowScrollTop=$window.scrollTop();if(offsetTop>windowScrollTop)
maxHeight=maxHeight-formTopMargin-(offsetTop-windowScrollTop);$menuWrapper.css('maxHeight',maxHeight+'px');},updateOffsetTop=function(){if($mainWrapper.hasClass('raFixedMenu'))
return;offsetTop=$mainWrapper.offset().top-parseFloat($mainWrapper.css('marginTop'))-formTopMargin;},menuOpenedClass='raMenuOpened',itemOpenedClass='raItemOpened',openMenuItemTimerKey='raOpenMenuItemTimer',isSideMenu=$mainWrapper.hasClass('sideMenu');if($mainWrapper.data(menuInstanceKey))
return;$mainWrapper.data(menuInstanceKey,true);updateOffsetTop();if($placeholder.length>0)
$placeholder.height($mainWrapper.outerHeight(true));$mainWrapper.on('click','> .raMenuTriggerWrapper > .raMenuTrigger',function(){$mainWrapper.toggleClass(menuOpenedClass);resizeMenu();}).on('click','> .raMenuWrapper .edsmm_childIndicator',function(){$(this).parents('li').eq(0).toggleClass(itemOpenedClass)});if($mainWrapper.hasClass('hoverOpensItems'))
$mainWrapper.on('mouseenter','> .raMenuWrapper .edsmm_menuItem',function(){var $this=$(this),$siblings=$this.siblings('.edsmm_hasChild');$siblings=$siblings.add('.edsmm_menuItem.edsmm_hasChild',$siblings).each(function(){clearTimeout($(this).data(openMenuItemTimerKey));});$this.data(openMenuItemTimerKey,setTimeout(function(){if($this.hasClass('edsmm_hasChild'))
$this.addClass(itemOpenedClass);$siblings.removeClass(itemOpenedClass);},150));});if(isSideMenu)
$('> .raMenuWrapper .edsmm_menuItem.edsmm_active.edsmm_hasChild',$mainWrapper).addClass(itemOpenedClass);else
$menuWrapper.on('mouseenter','> ol > li.edsmm_megaMenu',function(){var $container=$('> div',this);if($container.length==0)
return;var avalibleHeight=$window.height()-Math.ceil($container.offset().top)-10;$container.css('max-height',avalibleHeight+$window.scrollTop());});$window.on('scroll',function(){updateOffsetTop();resizeMenu();if($placeholder.length==0)
return;if($window.scrollTop()>=offsetTop){$mainWrapper.addClass('raFixedMenu').css('marginTop',Math.abs(formTopMargin));$placeholder.addClass('show');}else{$mainWrapper.removeClass('raFixedMenu').css('marginTop','');$placeholder.removeClass('show');}}).on('resize',function(){updateOffsetTop();resizeMenu();if($menuTriggerWrapper.is(':hidden')){$mainWrapper.removeClass(menuOpenedClass);$menuWrapper.css('maxHeight','');}});});};})(jQuery);(function($,window){var activeClass='edsTabulator_active',tabTriggerSelector='.edsTabulator_tabTrigger',tabSelector='.edsTabulator_tab';function edsTabulator(elem){var self=this,$mainWrapper=$(elem);$mainWrapper.on('click',tabTriggerSelector,function(){var $clicked=$(this),itemIndex=$clicked.index(),$tabContentWrappers=$('.edsTabulator_tabsWrapper .edsTabulator_tab',$mainWrapper);if($clicked.hasClass(activeClass))
return;$tabContentWrappers.removeClass(activeClass);$(tabTriggerSelector,$mainWrapper).removeClass(activeClass);$clicked.addClass(activeClass);$tabContentWrappers.eq(itemIndex).addClass(activeClass);});if($(tabTriggerSelector+'.'+activeClass,$mainWrapper).length==0){$(tabSelector+'.'+activeClass,$mainWrapper).removeClass(activeClass);$(tabTriggerSelector,$mainWrapper).eq(0).addClass(activeClass);$(tabSelector,$mainWrapper).eq(0).addClass(activeClass);}}
edsTabulator.prototype={};$.fn.edsTabulator_1=function(){var instanceKey='edsTabulatorRun';return this.each(function(){var self=this;if(!$.data(self,instanceKey))
$.data(self,instanceKey,new edsTabulator(self));});};})(jQuery,window);(function($,window){var activeClass='edsAccordion_active',sectionClass='edsAccordion_section',sectionContentWrapper='edsAccordion_contentWrapper';function edsAccordion(elem){var self=this,$mainWrapper=$(elem);$mainWrapper.on('click','.'+sectionClass+' > .edsAccordion_title',function(e){var $clicked=$(this),$section=$clicked.parent(),$sectionContentWrapper=$('> .'+sectionContentWrapper,$section),$activeSections=$('.'+sectionClass+'.'+activeClass,$mainWrapper),currentlyActive=$section.hasClass(activeClass);$('> .'+sectionContentWrapper,$activeSections).stop(true).animate({height:0},{duration:200,complete:function(){$sectionContentWrapper.css('height','0');}});$activeSections.removeClass(activeClass);if(currentlyActive)
return false;$sectionContentWrapper.stop(true).animate({height:$('> .edsAccordion_content',$sectionContentWrapper).outerHeight(true)},{duration:200,complete:function(){$sectionContentWrapper.css('height','auto');}});$section.addClass(activeClass);return false;});}
edsAccordion.prototype={};$.fn.edsAccordion_1=function(){var instanceKey='edsAccordionRun';return this.each(function(){var elem=this;if(!$.data(elem,instanceKey))
$.data(elem,instanceKey,new edsAccordion(elem));});};})(jQuery,window);(function($){$.fn.parallax=function(options){var windowHeight=$(window).height();var settings=$.extend({speed:0.15},options);return this.each(function(){var $this=$(this);$(document).scroll(function(){var scrollTop=$(window).scrollTop();var offset=$this.offset().top;var height=$this.outerHeight();if(offset+height<=scrollTop||offset>=scrollTop+windowHeight){return;}
var yBgPosition=Math.round((offset-scrollTop)*settings.speed);$this.css('background-position','center '+yBgPosition+'px');});});}}(jQuery));(function($){$.fn.viewportChecker=function(useroptions){if($(this).length>0&&$(this).hasClass('edsBB_ProgressTemp'))
return;var options={classToAdd:'visible',classToRemove:'invisible',classToAddForFullView:'full-visible',removeClassAfterAnimation:false,offset:100,repeat:false,invertBottomOffset:true,callbackFunction:function(elem,action){},scrollHorizontal:false,scrollBox:window};$.extend(options,useroptions);var $elem=this,boxSize={height:$(options.scrollBox).height(),width:$(options.scrollBox).width()};this.checkElements=function(){var viewportStart,viewportEnd;if(!options.scrollHorizontal){viewportStart=Math.max($('html').scrollTop(),$('body').scrollTop(),$(window).scrollTop());viewportEnd=(viewportStart+boxSize.height);}
else{viewportStart=Math.max($('html').scrollLeft(),$('body').scrollLeft(),$(window).scrollLeft());viewportEnd=(viewportStart+boxSize.width);}
$elem.each(function(){var $obj=$(this),objOptions={},attrOptions={};if($obj.data('vp-add-class'))
attrOptions.classToAdd=$obj.data('vp-add-class');if($obj.data('vp-remove-class'))
attrOptions.classToRemove=$obj.data('vp-remove-class');if($obj.data('vp-add-class-full-view'))
attrOptions.classToAddForFullView=$obj.data('vp-add-class-full-view');if($obj.data('vp-keep-add-class'))
attrOptions.removeClassAfterAnimation=$obj.data('vp-remove-after-animation');if($obj.data('vp-offset'))
attrOptions.offset=$obj.data('vp-offset');if($obj.data('vp-repeat'))
attrOptions.repeat=$obj.data('vp-repeat');if($obj.data('vp-scrollHorizontal'))
attrOptions.scrollHorizontal=$obj.data('vp-scrollHorizontal');if($obj.data('vp-invertBottomOffset'))
attrOptions.scrollHorizontal=$obj.data('vp-invertBottomOffset');$.extend(objOptions,options);$.extend(objOptions,attrOptions);if($obj.data('vp-animated')&&!objOptions.repeat){return;}
if(String(objOptions.offset).indexOf("%")>0)
objOptions.offset=(parseInt(objOptions.offset)/100)*boxSize.height;var rawStart=(!objOptions.scrollHorizontal)?$obj.offset().top:$obj.offset().left,rawEnd=(!objOptions.scrollHorizontal)?rawStart+$obj.height():rawStart+$obj.width();var elemStart=Math.round(rawStart)+objOptions.offset,elemEnd=(!objOptions.scrollHorizontal)?elemStart+$obj.height():elemStart+$obj.width();if(objOptions.invertBottomOffset)
elemEnd-=(objOptions.offset*2);if((elemStart<viewportEnd)&&(elemEnd>viewportStart)){$obj.removeClass(objOptions.classToRemove);$obj.addClass(objOptions.classToAdd);objOptions.callbackFunction($obj,"add");if(rawEnd<=viewportEnd&&rawStart>=viewportStart)
$obj.addClass(objOptions.classToAddForFullView);else
$obj.removeClass(objOptions.classToAddForFullView);$obj.data('vp-animated',true);if(objOptions.removeClassAfterAnimation){$obj.one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend',function(){$obj.removeClass(objOptions.classToAdd);});}}else if($obj.hasClass(objOptions.classToAdd)&&(objOptions.repeat)){$obj.removeClass(objOptions.classToAdd+" "+objOptions.classToAddForFullView);objOptions.callbackFunction($obj,"remove");$obj.data('vp-animated',false);}});};if('ontouchstart' in window||'onmsgesturechange' in window){$(document).bind("touchmove MSPointerMove pointermove",this.checkElements);}
$(options.scrollBox).bind("load scroll",this.checkElements);$(window).resize(function(e){boxSize={height:$(options.scrollBox).height(),width:$(options.scrollBox).width()};$elem.checkElements();});this.checkElements();return this;};})(jQuery);(function($){var instanceKey='headerSpacerInstance',$window=$(window);$.fn.headerSpacer=function(){return this.each(function(){var $mainWrapper=$(this),$placeholder=$($mainWrapper.data('placeholderSelector')),align=function(){$placeholder.height($mainWrapper.outerHeight(true));};if($mainWrapper.data(instanceKey))
return;$mainWrapper.data(instanceKey,true);$(document).ready(function($){align();setTimeout(function(){align();},600);});$window.on('scroll',function(){align();setTimeout(function(){align();},600);}).on('resize',function(){align();setTimeout(function(){align();},600);});});};})(jQuery);jQuery(document).ready(function($){var offset=500,offset_opacity=1200,scroll_top_duration=700,$back_to_top=$('.eds_backToTop');$(window).scroll(function(){($(this).scrollTop()>offset)?$back_to_top.addClass('eds_backToTopVisible'):$back_to_top.removeClass('eds_backToTopVisible eds_backToTopFadeOut');if($(this).scrollTop()>offset_opacity){$back_to_top.addClass('eds_backToTopFadeOut');}});});(function(root,factory){if(typeof define==='function'&&define.amd){define([],factory(root));}else if(typeof exports==='object'){module.exports=factory(root);}else{root.smoothScroll=factory(root);}})(typeof global!=='undefined'?global:this.window||this.global,function(root){'use strict';var smoothScroll={};var supports='querySelector' in document&&'addEventListener' in root;var settings,eventTimeout,fixedHeader,headerHeight;var defaults={selector:'[data-scroll]',selectorHeader:'[data-scroll-header]',speed:500,easing:'easeInOutCubic',offset:0,updateURL:true,callback:function(){}};var extend=function(){var extended={};var deep=false;var i=0;var length=arguments.length;if(Object.prototype.toString.call(arguments[0])==='[object Boolean]'){deep=arguments[0];i++;}
var merge=function(obj){for(var prop in obj){if(Object.prototype.hasOwnProperty.call(obj,prop)){if(deep&&Object.prototype.toString.call(obj[prop])==='[object Object]'){extended[prop]=extend(true,extended[prop],obj[prop]);}else{extended[prop]=obj[prop];}}}};for(;i<length;i++){var obj=arguments[i];merge(obj);}
return extended;};var getHeight=function(elem){return Math.max(elem.scrollHeight,elem.offsetHeight,elem.clientHeight);};var getClosest=function(elem,selector){var firstChar=selector.charAt(0);var supports='classList' in document.documentElement;var attribute,value;if(firstChar==='['){selector=selector.substr(1,selector.length-2);attribute=selector.split('=');if(attribute.length>1){value=true;attribute[1]=attribute[1].replace(/"/g,'').replace(/'/g,'');}}
for(;elem&&elem!==document;elem=elem.parentNode){if(firstChar==='.'){if(supports){if(elem.classList.contains(selector.substr(1))){return elem;}}else{if(new RegExp('(^|\\s)'+selector.substr(1)+'(\\s|$)').test(elem.className)){return elem;}}}
if(firstChar==='#'){if(elem.id===selector.substr(1)){return elem;}}
if(firstChar==='['){if(elem.hasAttribute(attribute[0])){if(value){if(elem.getAttribute(attribute[0])===attribute[1]){return elem;}}else{return elem;}}}
if(elem.tagName.toLowerCase()===selector){return elem;}}
return null;};var escapeCharacters=function(id){var string=String(id);var length=string.length;var index=-1;var codeUnit;var result='';var firstCodeUnit=string.charCodeAt(0);while(++index<length){codeUnit=string.charCodeAt(index);if(codeUnit===0x0000){throw new InvalidCharacterError('Invalid character: the input contains U+0000.');}
if((codeUnit>=0x0001&&codeUnit<=0x001F)||codeUnit==0x007F||(index===0&&codeUnit>=0x0030&&codeUnit<=0x0039)||(index===1&&codeUnit>=0x0030&&codeUnit<=0x0039&&firstCodeUnit===0x002D)){result+='\\'+codeUnit.toString(16)+' ';continue;}
if(codeUnit>=0x0080||codeUnit===0x002D||codeUnit===0x005F||codeUnit>=0x0030&&codeUnit<=0x0039||codeUnit>=0x0041&&codeUnit<=0x005A||codeUnit>=0x0061&&codeUnit<=0x007A){result+=string.charAt(index);continue;}
result+='\\'+string.charAt(index);}
return result;};var easingPattern=function(type,time){var pattern;if(type==='easeInQuad')pattern=time*time;if(type==='easeOutQuad')pattern=time*(2-time);if(type==='easeInOutQuad')pattern=time<0.5?2*time*time:-1+(4-2*time)*time;if(type==='easeInCubic')pattern=time*time*time;if(type==='easeOutCubic')pattern=(--time)*time*time+1;if(type==='easeInOutCubic')pattern=time<0.5?4*time*time*time:(time-1)*(2*time-2)*(2*time-2)+1;if(type==='easeInQuart')pattern=time*time*time*time;if(type==='easeOutQuart')pattern=1-(--time)*time*time*time;if(type==='easeInOutQuart')pattern=time<0.5?8*time*time*time*time:1-8*(--time)*time*time*time;if(type==='easeInQuint')pattern=time*time*time*time*time;if(type==='easeOutQuint')pattern=1+(--time)*time*time*time*time;if(type==='easeInOutQuint')pattern=time<0.5?16*time*time*time*time*time:1+16*(--time)*time*time*time*time;return pattern||time;};var getEndLocation=function(anchor,headerHeight,offset){var location=0;if(anchor.offsetParent){do{location+=anchor.offsetTop;anchor=anchor.offsetParent;}while(anchor);}
location=location-headerHeight-offset;return location>=0?location:0;};var getDocumentHeight=function(){return Math.max(root.document.body.scrollHeight,root.document.documentElement.scrollHeight,root.document.body.offsetHeight,root.document.documentElement.offsetHeight,root.document.body.clientHeight,root.document.documentElement.clientHeight);};var getDataOptions=function(options){return!options||!(typeof JSON==='object'&&typeof JSON.parse==='function')?{}:JSON.parse(options);};var updateUrl=function(anchor,url){if(root.history.pushState&&(url||url==='true')&&root.location.protocol!=='file:'){root.history.pushState(null,null,[root.location.protocol,'//',root.location.host,root.location.pathname,root.location.search,anchor].join(''));}};var getHeaderHeight=function(header){return header===null?0:(getHeight(header)+header.offsetTop);};smoothScroll.animateScroll=function(toggle,anchor,options){var overrides=getDataOptions(toggle?toggle.getAttribute('data-options'):null);var settings=extend(settings||defaults,options||{},overrides);anchor='#'+escapeCharacters(anchor.substr(1));var anchorElem=anchor==='#'?root.document.documentElement:root.document.querySelector(anchor);var startLocation=root.pageYOffset;if(!fixedHeader){fixedHeader=root.document.querySelector(settings.selectorHeader);}
if(!headerHeight){headerHeight=getHeaderHeight(fixedHeader);}
var endLocation=getEndLocation(anchorElem,headerHeight,parseInt(settings.offset,10));var animationInterval;var distance=endLocation-startLocation;var documentHeight=getDocumentHeight();var timeLapsed=0;var percentage,position;updateUrl(anchor,settings.updateURL);var stopAnimateScroll=function(position,endLocation,animationInterval){var currentLocation=root.pageYOffset;if(position==endLocation||currentLocation==endLocation||((root.innerHeight+currentLocation)>=documentHeight)){clearInterval(animationInterval);anchorElem.focus();settings.callback(toggle,anchor);}};var loopAnimateScroll=function(){timeLapsed+=16;percentage=(timeLapsed/parseInt(settings.speed,10));percentage=(percentage>1)?1:percentage;position=startLocation+(distance*easingPattern(settings.easing,percentage));root.scrollTo(0,Math.floor(position));stopAnimateScroll(position,endLocation,animationInterval);};var startAnimateScroll=function(){animationInterval=setInterval(loopAnimateScroll,16);};if(root.pageYOffset===0){root.scrollTo(0,0);}
startAnimateScroll();};var eventHandler=function(event){var toggle=getClosest(event.target,settings.selector);if(toggle&&toggle.tagName.toLowerCase()==='a'){event.preventDefault();smoothScroll.animateScroll(toggle,toggle.hash,settings);}};var eventThrottler=function(event){if(!eventTimeout){eventTimeout=setTimeout(function(){eventTimeout=null;headerHeight=getHeaderHeight(fixedHeader);},66);}};smoothScroll.destroy=function(){if(!settings)return;root.document.removeEventListener('click',eventHandler,false);root.removeEventListener('resize',eventThrottler,false);settings=null;eventTimeout=null;fixedHeader=null;headerHeight=null;};smoothScroll.init=function(options){if(!supports)return;smoothScroll.destroy();settings=extend(defaults,options||{});fixedHeader=root.document.querySelector(settings.selectorHeader);headerHeight=getHeaderHeight(fixedHeader);root.document.addEventListener('click',eventHandler,false);if(fixedHeader){root.addEventListener('resize',eventThrottler,false);}};return smoothScroll;});
;;;(function($){'use strict';$.fn.equalHeight=function(){var heights=[];$.each(this,function(i,element){var $element=$(element);var elementHeight;var includePadding=($element.css('box-sizing')==='border-box')||($element.css('-moz-box-sizing')==='border-box');if(includePadding){elementHeight=$element.innerHeight();}else{elementHeight=$element.height();}
heights.push(elementHeight);});this.css('height',Math.max.apply(window,heights)+'px');return this;};$.fn.equalHeightGrid=function(columns){var $tiles=this.filter(':visible');$tiles.css('height','auto');for(var i=0;i<$tiles.length;i++){if(i%columns===0){var row=$($tiles[i]);for(var n=1;n<columns;n++){row=row.add($tiles[i+n]);}
row.equalHeight();}}
return this;};$.fn.detectGridColumns=function(){var offset=0,cols=0,$tiles=this.filter(':visible');$tiles.each(function(i,elem){var elemOffset=$(elem).offset().top;if(offset===0||elemOffset===offset){cols++;offset=elemOffset;}else{return false;}});return cols;};var grids_event_uid=0;$.fn.responsiveEqualHeightGrid=function(){var _this=this;var event_namespace='.grids_'+grids_event_uid;_this.data('grids-event-namespace',event_namespace);function syncHeights(){var cols=_this.detectGridColumns();_this.equalHeightGrid(cols);}
$(window).bind('resize'+event_namespace+' load'+event_namespace,syncHeights);syncHeights();grids_event_uid++;return this;};$.fn.responsiveEqualHeightGridDestroy=function(){var _this=this;_this.css('height','auto');$(window).unbind(_this.data('grids-event-namespace'));return this;};})(window.jQuery);
;;;;(function(factory){'use strict';if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof module!=='undefined'&&module.exports){module.exports=factory(require('jquery'));}else{factory(jQuery);}})(function($){var _previousResizeWidth=-1,_updateTimeout=-1;var _parse=function(value){return parseFloat(value)||0;};var _rows=function(elements){var tolerance=1,$elements=$(elements),lastTop=null,rows=[];$elements.each(function(){var $that=$(this),top=$that.offset().top-_parse($that.css('margin-top')),lastRow=rows.length>0?rows[rows.length-1]:null;if(lastRow===null){rows.push($that);}else{if(Math.floor(Math.abs(lastTop-top))<=tolerance){rows[rows.length-1]=lastRow.add($that);}else{rows.push($that);}}
lastTop=top;});return rows;};var _parseOptions=function(options){var opts={byRow:true,property:'height',target:null,remove:false};if(typeof options==='object'){return $.extend(opts,options);}
if(typeof options==='boolean'){opts.byRow=options;}else if(options==='remove'){opts.remove=true;}
return opts;};var matchHeight=$.fn.matchHeight=function(options){var opts=_parseOptions(options);if(opts.remove){var that=this;this.css(opts.property,'');$.each(matchHeight._groups,function(key,group){group.elements=group.elements.not(that);});return this;}
if(this.length<=1&&!opts.target){return this;}
matchHeight._groups.push({elements:this,options:opts});matchHeight._apply(this,opts);return this;};matchHeight.version='master';matchHeight._groups=[];matchHeight._throttle=80;matchHeight._maintainScroll=false;matchHeight._beforeUpdate=null;matchHeight._afterUpdate=null;matchHeight._rows=_rows;matchHeight._parse=_parse;matchHeight._parseOptions=_parseOptions;matchHeight._apply=function(elements,options){var opts=_parseOptions(options),$elements=$(elements),rows=[$elements];var scrollTop=$(window).scrollTop(),htmlHeight=$('html').outerHeight(true);var $hiddenParents=$elements.parents().filter(':hidden');$hiddenParents.each(function(){var $that=$(this);$that.data('style-cache',$that.attr('style'));});$hiddenParents.css('display','block');if(opts.byRow&&!opts.target){$elements.each(function(){var $that=$(this),display=$that.css('display');if(display!=='inline-block'&&display!=='flex'&&display!=='inline-flex'){display='block';}
$that.data('style-cache',$that.attr('style'));$that.css({'display':display,'padding-top':'0','padding-bottom':'0','margin-top':'0','margin-bottom':'0','border-top-width':'0','border-bottom-width':'0','height':'100px','overflow':'hidden'});});rows=_rows($elements);$elements.each(function(){var $that=$(this);$that.attr('style',$that.data('style-cache')||'');});}
$.each(rows,function(key,row){var $row=$(row),targetHeight=0;if(!opts.target){if(opts.byRow&&$row.length<=1){$row.css(opts.property,'');return;}
$row.each(function(){var $that=$(this),style=$that.attr('style'),display=$that.css('display');if(display!=='inline-block'&&display!=='flex'&&display!=='inline-flex'){display='block';}
var css={'display':display};css[opts.property]='';$that.css(css);if($that.outerHeight(false)>targetHeight){targetHeight=$that.outerHeight(false);}
if(style){$that.attr('style',style);}else{$that.css('display','');}});}else{targetHeight=opts.target.outerHeight(false);}
$row.each(function(){var $that=$(this),verticalPadding=0;if(opts.target&&$that.is(opts.target)){return;}
if($that.css('box-sizing')!=='border-box'){verticalPadding+=_parse($that.css('border-top-width'))+_parse($that.css('border-bottom-width'));verticalPadding+=_parse($that.css('padding-top'))+_parse($that.css('padding-bottom'));}
$that.css(opts.property,(targetHeight-verticalPadding)+'px');});});$hiddenParents.each(function(){var $that=$(this);$that.attr('style',$that.data('style-cache')||null);});if(matchHeight._maintainScroll){$(window).scrollTop((scrollTop/htmlHeight)*$('html').outerHeight(true));}
return this;};matchHeight._applyDataApi=function(){var groups={};$('[data-match-height], [data-mh]').each(function(){var $this=$(this),groupId=$this.attr('data-mh')||$this.attr('data-match-height');if(groupId in groups){groups[groupId]=groups[groupId].add($this);}else{groups[groupId]=$this;}});$.each(groups,function(){this.matchHeight(true);});};var _update=function(event){if(matchHeight._beforeUpdate){matchHeight._beforeUpdate(event,matchHeight._groups);}
$.each(matchHeight._groups,function(){matchHeight._apply(this.elements,this.options);});if(matchHeight._afterUpdate){matchHeight._afterUpdate(event,matchHeight._groups);}};matchHeight._update=function(throttle,event){if(event&&event.type==='resize'){var windowWidth=$(window).width();if(windowWidth===_previousResizeWidth){return;}
_previousResizeWidth=windowWidth;}
if(!throttle){_update(event);}else if(_updateTimeout===-1){_updateTimeout=setTimeout(function(){_update(event);_updateTimeout=-1;},matchHeight._throttle);}};$(matchHeight._applyDataApi);$(window).bind('load',function(event){matchHeight._update(false,event);});$(window).bind('resize orientationchange',function(event){matchHeight._update(true,event);});});
;;;var DNN_COL_DELIMITER=String.fromCharCode(16);var DNN_ROW_DELIMITER=String.fromCharCode(15);var __dnn_m_bPageLoaded=false;if(window.addEventListener){window.addEventListener("load",__dnn_Page_OnLoad,false)}else{window.attachEvent("onload",__dnn_Page_OnLoad)}function __dnn_ClientAPIEnabled(){return typeof(dnn)!="undefined"&&typeof(dnn.dom)!="undefined"}function __dnn_Page_OnLoad(){if(__dnn_ClientAPIEnabled()){dnn.dom.attachEvent(window,"onscroll",__dnn_bodyscroll)}__dnn_m_bPageLoaded=true}function __dnn_KeyDown(iKeyCode,sFunc,e){if(e==null){e=window.event}if(e.keyCode==iKeyCode){eval(unescape(sFunc));return false}}function __dnn_bodyscroll(){var a=document.forms[0];if(__dnn_ClientAPIEnabled()&&__dnn_m_bPageLoaded&&typeof(a.ScrollTop)!="undefined"){a.ScrollTop.value=document.documentElement.scrollTop?document.documentElement.scrollTop:dnn.dom.getByTagName("body")[0].scrollTop}}function __dnn_setScrollTop(c){if(__dnn_ClientAPIEnabled()){if(c==null){c=document.forms[0].ScrollTop.value}var a=dnn.getVar("ScrollToControl");if(a!=null&&a.length>0){var b=dnn.dom.getById(a);if(b!=null){c=dnn.dom.positioning.elementTop(b);dnn.setVar("ScrollToControl","")}}if(document.getElementsByTagName("html")[0].style.overflow!="hidden"){window.scrollTo(0,c)}}}function __dnn_SetInitialFocus(a){var b=dnn.dom.getById(a);if(b!=null&&__dnn_CanReceiveFocus(b)){b.focus()}}function __dnn_CanReceiveFocus(b){if(b.style.display!="none"&&b.tabIndex>-1&&b.disabled==false&&b.style.visible!="hidden"){var a=b.parentElement;while(a!=null&&a.tagName!="BODY"){if(a.style.display=="none"||a.disabled||a.style.visible=="hidden"){return false}a=a.parentElement}return true}else{return false}}function __dnn_ContainerMaxMin_OnClick(i,b){var g=dnn.dom.getById(b);if(g!=null){var e=i.childNodes[0];var l=dnn.getVar("containerid_"+b);var j=dnn.getVar("cookieid_"+b);var d=e.src.toLowerCase().substr(e.src.lastIndexOf("/"));var a;var h;var k;if(dnn.getVar("min_icon_"+l)){k=dnn.getVar("min_icon_"+l)}else{k=dnn.getVar("min_icon")}if(dnn.getVar("max_icon_"+l)){h=dnn.getVar("max_icon_"+l)}else{h=dnn.getVar("max_icon")}a=h.toLowerCase().substr(h.lastIndexOf("/"));var c=5;var f=dnn.getVar("animf_"+b);if(f!=null){c=new Number(f)}if(d==a){e.src=k;dnn.dom.expandElement(g,c);e.title=dnn.getVar("min_text");if(j!=null){if(dnn.getVar("__dnn_"+l+":defminimized")=="true"){dnn.dom.setCookie(j,"true",365)}else{dnn.dom.deleteCookie(j)}}else{dnn.setVar("__dnn_"+l+"_Visible","true")}}else{e.src=h;dnn.dom.collapseElement(g,c);e.title=dnn.getVar("max_text");if(j!=null){if(dnn.getVar("__dnn_"+l+":defminimized")=="true"){dnn.dom.deleteCookie(j)}else{dnn.dom.setCookie(j,"false",365)}}else{dnn.setVar("__dnn_"+l+"_Visible","false")}}return true}return false}function __dnn_Help_OnClick(a){var b=dnn.dom.getById(a);if(b!=null){if(b.style.display=="none"){b.style.display=""}else{b.style.display="none"}return true}return false}function __dnn_SectionMaxMin(f,c){var d=dnn.dom.getById(c);if(d!=null){var g=f.getAttribute("max_icon");var e=f.getAttribute("min_icon");var a=f.getAttribute("userctr")!=null;var b;if(d.style.display=="none"){f.src=e;d.style.display="";if(a){b="True"}else{dnn.setVar(f.id+":exp",1)}}else{f.src=g;d.style.display="none";if(a){b="False"}else{dnn.setVar(f.id+":exp",0)}}if(a){dnncore.setUserProp(f.getAttribute("userctr"),f.getAttribute("userkey"),b,null)}return true}return false}function __dnn_enableDragDrop(){var b=dnn.getVar("__dnn_dragDrop").split(";");var e;for(var c=0;c<b.length;c++){e=b[c].split(" ");if(e[0].length>0){var a=dnn.dom.getById(e[0]);var d=dnn.dom.getById(e[1]);if(a!=null&&d!=null){a.setAttribute("moduleid",e[2]);dnn.dom.positioning.enableDragAndDrop(a,d,"__dnn_dragComplete()","__dnn_dragOver()")}}}}var __dnn_oPrevSelPane;var __dnn_oPrevSelModule;var __dnn_dragEventCount=0;function __dnn_dragOver(){__dnn_dragEventCount++;if(__dnn_dragEventCount%75!=0){return}var c=dnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var a=__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);if(__dnn_oPrevSelPane!=null){__dnn_oPrevSelPane.pane.style.border=__dnn_oPrevSelPane.origBorder}if(a!=null){__dnn_oPrevSelPane=a;a.pane.style.border="4px double "+DNN_HIGHLIGHT_COLOR;var e=__dnn_getPaneControlIndex(c,a);var b;var f;for(var d=0;d<a.controls.length;d++){if(e>d&&a.controls[d].id!=c.id){b=a.controls[d]}if(e<=d&&a.controls[d].id!=c.id){f=a.controls[d];break}}if(__dnn_oPrevSelModule!=null){dnn.dom.getNonTextNode(__dnn_oPrevSelModule.control).style.border=__dnn_oPrevSelModule.origBorder}if(f!=null){__dnn_oPrevSelModule=f;dnn.dom.getNonTextNode(f.control).style.borderTop="5px groove "+DNN_HIGHLIGHT_COLOR}else{if(b!=null){__dnn_oPrevSelModule=b;dnn.dom.getNonTextNode(b.control).style.borderBottom="5px groove "+DNN_HIGHLIGHT_COLOR}}}}function __dnn_dragComplete(){var f=dnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var d=f.getAttribute("moduleid");if(__dnn_oPrevSelPane!=null){__dnn_oPrevSelPane.pane.style.border=__dnn_oPrevSelPane.origBorder}if(__dnn_oPrevSelModule!=null){dnn.dom.getNonTextNode(__dnn_oPrevSelModule.control).style.border=__dnn_oPrevSelModule.origBorder}var b=__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);var e;if(b==null){var a=__dnn_Panes();for(var c=0;c<a.length;c++){if(a[c].id==f.parentNode.id){b=a[c]}}}if(b!=null){e=__dnn_getPaneControlIndex(f,b);__dnn_MoveToPane(b,f,e);dnn.callPostBack("MoveToPane","moduleid="+d,"pane="+b.paneName,"order="+e*2)}}function __dnn_MoveToPane(a,e,d){if(a!=null){var c=new Array();for(var b=d;b<a.controls.length;b++){if(a.controls[b].control.id!=e.id){c[c.length]=a.controls[b].control}dnn.dom.removeChild(a.controls[b].control)}dnn.dom.appendChild(a.pane,e);e.style.top=0;e.style.left=0;e.style.position="relative";for(var b=0;b<c.length;b++){dnn.dom.appendChild(a.pane,c[b])}__dnn_RefreshPanes()}else{e.style.top=0;e.style.left=0;e.style.position="relative"}}function __dnn_RefreshPanes(){var b=dnn.getVar("__dnn_Panes").split(";");var a=dnn.getVar("__dnn_PaneNames").split(";");__dnn_m_aryPanes=new Array();for(var c=0;c<b.length;c++){if(b[c].length>0){__dnn_m_aryPanes[__dnn_m_aryPanes.length]=new __dnn_Pane(dnn.dom.getById(b[c]),a[c])}}}var __dnn_m_aryPanes;var __dnn_m_aryModules;function __dnn_Panes(){if(__dnn_m_aryPanes==null){__dnn_m_aryPanes=new Array();__dnn_RefreshPanes()}return __dnn_m_aryPanes}function __dnn_Modules(a){if(__dnn_m_aryModules==null){__dnn_RefreshPanes()}return __dnn_m_aryModules[a]}function __dnn_getMostSelectedPane(g){var c=new dnn.dom.positioning.dims(g);var f=0;var a;var h;for(var e=0;e<__dnn_Panes().length;e++){var b=__dnn_Panes()[e];var d=new dnn.dom.positioning.dims(b.pane);a=dnn.dom.positioning.elementOverlapScore(d,c);if(a>f){f=a;h=b}}return h}function __dnn_getPaneControlIndex(f,b){if(b==null){return}var a=new dnn.dom.positioning.dims(f);var e;if(b.controls.length==0){return 0}for(var c=0;c<b.controls.length;c++){e=b.controls[c];var d=new dnn.dom.positioning.dims(e.control);if(a.t<d.t){return e.index}}if(e!=null){return e.index+1}else{return 0}}function __dnn_Pane(a,b){this.pane=a;this.id=a.id;this.controls=new Array();this.origBorder=a.style.border;this.paneName=b;var f=0;var e="";for(var d=0;d<a.childNodes.length;d++){var g=a.childNodes[d];if(dnn.dom.isNonTextNode(g)){if(__dnn_m_aryModules==null){__dnn_m_aryModules=new Array()}var c=g.getAttribute("moduleid");if(c!=null&&c.length>0){e+=c+"~";this.controls[this.controls.length]=new __dnn_PaneControl(g,f);__dnn_m_aryModules[c]=g.id;f+=1}}}this.moduleOrder=e}function __dnn_PaneControl(a,b){this.control=a;this.id=a.id;this.index=b;this.origBorder=a.style.border}function __dnn_ShowModalPage(a){dnnModal.show(a,true,550,950,true,"")}function __dnncore(){this.GetUserVal=0;this.SetUserVal=1}__dnncore.prototype={getUserProp:function(b,c,a){this._doUserCallBack(dnncore.GetUserVal,b,c,null,new dnncore.UserPropArgs(b,c,a))},setUserProp:function(c,d,a,b){this._doUserCallBack(dnncore.SetUserVal,c,d,a,new dnncore.UserPropArgs(c,d,b))},_doUserCallBack:function(c,d,e,a,b){if(dnn&&dnn.xmlhttp){var f=c+COL_DELIMITER+d+COL_DELIMITER+e+COL_DELIMITER+a;dnn.xmlhttp.doCallBack("__Page",f,dnncore._callBackSuccess,b,dnncore._callBackFail,null,true,null,0)}else{alert("Client Personalization not enabled")}},_callBackSuccess:function(a,b,c){if(b.pFunc){b.pFunc(b.namingCtr,b.key,a)}},_callBackFail:function(a,b){window.status=a}};__dnncore.prototype.UserPropArgs=function(b,c,a){this.namingCtr=b;this.key=c;this.pFunc=a};var dnncore=new __dnncore();
;;;$(window).on('load',function(){window.cookieconsentoptions=window.cookieconsentoptions||{};window.cookieconsentoptions.content={message:window.dnn.getVar('cc_message'),dismiss:window.dnn.getVar('cc_dismiss'),link:window.dnn.getVar('cc_link')}
if(window.dnn.getVar('cc_morelink')!=''){window.cookieconsentoptions.content.href=window.dnn.getVar('cc_morelink')}
if(!window.cookieconsentoptions.palette){window.cookieconsentoptions.palette={"popup":{"background":"#000"},"button":{"background":"#f1d600"}}}
window.cookieconsent.initialise(window.cookieconsentoptions);});
;;;(function($){if(typeof dnn=='undefined')window.dnn={};if(typeof dnn.searchSkinObject=='undefined'){dnn.searchSkinObject=function(options){var settings={delayTriggerAutoSearch:100,minCharRequiredTriggerAutoSearch:2,searchType:'S',enableWildSearch:true,cultureCode:'en-US'};this.settings=$.extend({},settings,options);};dnn.searchSkinObject.prototype={_ignoreKeyCodes:[9,13,16,17,18,19,20,27,33,34,35,36,37,38,39,40,45],init:function(){var throttle=null,self=this;var makeUrl=function(val,service){var url=service?service.getServiceRoot('internalservices')+'searchService/preview':null;if(!url)return null;var params={};params['keywords']=val.replace(/^\s+|\s+$/g,'');if(!self.settings.enableWildSearch)params["forceWild"]="0";params['culture']=self.settings.cultureCode;if(self.settings.portalId>=0)
params['portal']=self.settings.portalId;var urlAppend=[];$.each(params,function(index,value){urlAppend.push([index,encodeURIComponent(value)].join('='));});if(urlAppend.length){url+=url.indexOf('?')===-1?'?':'&';url+=urlAppend.join('&');}
return url;};var generatePreviewTemplate=function(data,$wrap){var preview=$('.searchSkinObjectPreview',$wrap);if(preview.length)
preview.remove();var markup='<ul class="searchSkinObjectPreview">';if(data&&data.length){for(var i=0;i<data.length;i++){var group=data[i];if(group.Results&&group.Results.length){var groupTitle=group.DocumentTypeName;markup+='<li class="searchSkinObjectPreview_group">'+groupTitle+'</li>';for(var j=0;j<group.Results.length;j++){var item=group.Results[j];var itemTitle=item.Title;var itemUrl=item.DocumentUrl;var itemDescription=item.Description;var itemSnippet=item.Snippet;markup+='<li data-url="'+itemUrl+'">';if(item.Attributes.Avatar){markup+='<span><img src="'+item.Attributes.Avatar+'" class="userpic" /></span>';}
markup+='<span>'+itemTitle+'</span>';if(itemDescription){markup+='<p>'+itemDescription+'</p>';}
if(itemSnippet){markup+='<p>'+itemSnippet+'</p>';}
markup+='</li>';}}}
var moreResults=$wrap.attr('data-moreresults');markup+='<li><a href="javascript:void(0)" class="searchSkinObjectPreview_more">'+moreResults+'</a></li>';markup+='</ul>';}
else{var noResult=$wrap.attr('data-noresult');markup+='<li>'+noResult+'</li></ul>';}
$wrap.append(markup);preview=$('.searchSkinObjectPreview',$wrap);$('li',preview).on('click',function(){var navigateUrl=$(this).attr('data-url');if(navigateUrl){window.location.href=navigateUrl;}
return false;});$('.searchSkinObjectPreview_more',$wrap).on('click',function(){var $searchButton=$wrap.next();if(!$searchButton.length){$searchButton=$wrap.parent().next();}
$searchButton[0].click();return false;});};$('.searchInputContainer a.dnnSearchBoxClearText').on('click',function(){var $this=$(this);var $wrap=$this.parent();$('.searchInputContainer input').val('').focus();$this.removeClass('dnnShow');$('.searchSkinObjectPreview',$wrap).remove();return false;});$('.searchInputContainer').next().on('click',function(){var $this=$(this);var inputBox=$this.prev().find('input[type="text"]');var val=inputBox.val();if(val.length){return true;}
return false;});$('.searchInputContainer input').on('keyup',function(e){var k=e.keyCode||e.witch;if($.inArray(k,self._ignoreKeyCodes)>-1)return;var $this=$(this);var $wrap=$this.parent();var val=$this.val();var container=$this.parent('.searchInputContainer');if(!val){$('a.dnnSearchBoxClearText',$wrap).removeClass('dnnShow');$('.searchSkinObjectPreview',$wrap).remove();}else{$('a.dnnSearchBoxClearText',$wrap).addClass('dnnShow');if(self.settings.searchType!='S'||val.length<self.settings.minCharRequiredTriggerAutoSearch)return;if(throttle){clearTimeout(throttle);delete throttle;}
throttle=setTimeout(function(){var service=$.dnnSF?$.dnnSF(-1):null;var url=makeUrl(val,service);if(url){$.ajax({url:url,beforeSend:service?service.setModuleHeaders:null,success:function(result){if(result)
generatePreviewTemplate(result,container);},error:function(){},type:'GET',dataType:'json',contentType:"application/json"});}},self.settings.delayTriggerAutoSearch);}}).on('paste',function(){$(this).triggerHandler('keyup');}).on('keypress',function(e){var k=e.keyCode||e.which;if(k==13){var $this=$(this);var $wrap=$this.parent();var val=$this.val();if(val.length){var $searchButton=$wrap.next();if(!$searchButton.length){$searchButton=$wrap.parent().next();}
$searchButton[0].click();e.preventDefault();}else{e.preventDefault();}}});}};}})(jQuery);
;;;(function($){$.dnnSF=function(moduleId){var base=this;base.getServiceRoot=function(moduleName){var serviceRoot=dnn.getVar("sf_siteRoot","/");serviceRoot+="API/"+moduleName+"/";return serviceRoot;};base.getTabId=function(){return dnn.getVar("sf_tabId",-1);};base.getModuleId=function(){return moduleId;};base.setModuleHeaders=function(xhr){var tabId=base.getTabId();if(tabId>-1){xhr.setRequestHeader("ModuleId",base.getModuleId());xhr.setRequestHeader("TabId",tabId);}var afValue=base.getAntiForgeryValue();if(afValue){xhr.setRequestHeader("RequestVerificationToken",afValue);}};base.getAntiForgeryKey=function(){return"__RequestVerificationToken";};base.getAntiForgeryValue=function(){return $('[name="__RequestVerificationToken"]').val();};return base;};$.ServicesFramework=function(moduleId){return new $.dnnSF(moduleId);};})(jQuery);
;;;/*
 MIT | GPL | Apache 2.0, see LICENSE.txt
 @see https://github.com/dyve/jquery-autocomplete
*/
(function (c) {
	c.fn.autocomplete = function (a) { var d; 1 < arguments.length ? (d = a, a = arguments[1], a.url = d) : "string" === typeof a && (a = { url: a }); var b = c.extend({}, c.fn.autocomplete.defaults, a); return this.each(function () { var a = c(this); a.data("autocompleter", new c.Autocompleter(a, c.meta ? c.extend({}, b, a.data()) : b)) }) }; c.fn.autocomplete.defaults = {
		inputClass: "acInput", loadingClass: "acLoading", resultsClass: "acResults", selectClass: "acSelect", queryParamName: "q", extraParams: {}, remoteDataType: !1, lineSeparator: "\n", cellSeparator: "|",
		minChars: 2, maxItemsToShow: 10, delay: 400, useCache: !0, maxCacheLength: 10, matchSubset: !0, matchCase: !1, matchInside: !0, mustMatch: !1, selectFirst: !1, selectOnly: !1, showResult: null, preventDefaultReturn: 1, preventDefaultTab: 0, autoFill: !1, filterResults: !0, filter: !0, sortResults: !0, sortFunction: null, onItemSelect: null, onNoMatch: null, onFinish: null, matchStringConverter: null, beforeUseConverter: null, autoWidth: "min-width", useDelimiter: !1, delimiterChar: ",", delimiterKeyCode: 188, processData: null, onError: null, enabled: !0
	};
	var k = function (a, d, b) { a = parseInt(a, 10); b = b || {}; if (isNaN(a) || b.min && a < b.min) a = d; return a }, n = function (a, d) { var b = []; c.each(d, function (a, d) { b.push([a, encodeURIComponent(d)].join("=")) }); b.length && (a += -1 === a.indexOf("?") ? "?" : "&", a += b.join("&")); return a }; c.Autocompleter = function (a, d) {
		if (!(a && a instanceof c && 1 === a.length && "INPUT" === a.get(0).tagName.toUpperCase())) throw Error("Invalid parameter for jquery.Autocompleter, jQuery object with one element with INPUT tag expected."); var b = this; this.options = d;
		this.cacheData_ = {}; this.cacheLength_ = 0; this.selectClass_ = "jquery-autocomplete-selected-item"; this.lastSelectedValue_ = this.lastProcessedValue_ = this.lastKeyPressed_ = this.finishTimeout_ = this.keyTimeout_ = null; this.active_ = !1; this.finishOnBlur_ = !0; this.options.minChars = k(this.options.minChars, c.fn.autocomplete.defaults.minChars, { min: 0 }); this.options.maxItemsToShow = k(this.options.maxItemsToShow, c.fn.autocomplete.defaults.maxItemsToShow, { min: 0 }); this.options.maxCacheLength = k(this.options.maxCacheLength,
		c.fn.autocomplete.defaults.maxCacheLength, { min: 1 }); this.options.delay = k(this.options.delay, c.fn.autocomplete.defaults.delay, { min: 0 }); 2 != this.options.preventDefaultReturn && (this.options.preventDefaultReturn = this.options.preventDefaultReturn ? 1 : 0); 2 != this.options.preventDefaultTab && (this.options.preventDefaultTab = this.options.preventDefaultTab ? 1 : 0); this.dom = {}; this.dom.$elem = a; this.dom.$elem.attr("autocomplete", "off").addClass(this.options.inputClass); this.dom.$results = c("<div></div>").hide().addClass(this.options.resultsClass).css({ position: "absolute" });
		c("body").append(this.dom.$results); a.keydown(function (a) {
			b.lastKeyPressed_ = a.keyCode; switch (b.lastKeyPressed_) {
				case b.options.delimiterKeyCode: b.options.useDelimiter && b.active_ && b.selectCurrent(); break; case 35: case 36: case 16: case 17: case 18: case 37: case 39: break; case 38: return a.preventDefault(), b.active_ ? b.focusPrev() : b.activate(), !1; case 40: return a.preventDefault(), b.active_ ? b.focusNext() : b.activate(), !1; case 9: if (b.active_ && (b.selectCurrent(), b.options.preventDefaultTab) || 2 === b.options.preventDefaultTab) return a.preventDefault(),
				!1; break; case 13: if (b.active_ && (b.selectCurrent(), b.options.preventDefaultReturn) || 2 === b.options.preventDefaultReturn) return a.preventDefault(), !1; break; case 27: if (b.active_) return a.preventDefault(), b.deactivate(!0), !1; break; default: b.activate()
			}
		}); a.on("paste", function () { b.activate() }); var f = function () { b.deactivate(!0) }; a.blur(function () { b.finishOnBlur_ && (b.finishTimeout_ = setTimeout(f, 200)) }); a.parents("form").on("submit", f)
	}; c.Autocompleter.prototype.position = function () {
		var a = this.dom.$elem.offset(),
		d = this.dom.$results.outerHeight(), b = c(window).outerHeight(), f = a.top + this.dom.$elem.outerHeight(), e = { top: f, left: a.left }; f + d > b && (a = a.top - d, 0 <= a && (e.top = a)); this.dom.$results.css(e)
	}; c.Autocompleter.prototype.cacheRead = function (a) { var d, b, c, e, g; if (this.options.useCache) for (a = String(a), d = a.length, b = this.options.matchSubset ? 1 : d; b <= d;) { e = this.options.matchInside ? d - b : 0; for (g = 0; g <= e;) { c = a.substr(0, b); if (void 0 !== this.cacheData_[c]) return this.cacheData_[c]; g++ } b++ } return !1 }; c.Autocompleter.prototype.cacheWrite =
	function (a, d) { return this.options.useCache ? (this.cacheLength_ >= this.options.maxCacheLength && this.cacheFlush(), a = String(a), void 0 !== this.cacheData_[a] && this.cacheLength_++, this.cacheData_[a] = d, this.cacheData_[a]) : !1 }; c.Autocompleter.prototype.cacheFlush = function () { this.cacheData_ = {}; this.cacheLength_ = 0 }; c.Autocompleter.prototype.callHook = function (a, d) { var b = this.options[a]; return b && c.isFunction(b) ? b(d, this) : !1 }; c.Autocompleter.prototype.activate = function () {
		if (this.options.enabled) {
			var a = this; this.keyTimeout_ &&
			clearTimeout(this.keyTimeout_); this.keyTimeout_ = setTimeout(function () { a.activateNow() }, this.options.delay)
		}
	}; c.Autocompleter.prototype.activateNow = function () { var a = this.beforeUseConverter(this.dom.$elem.val()); a !== this.lastProcessedValue_ && a !== this.lastSelectedValue_ && this.fetchData(a) }; c.Autocompleter.prototype.fetchData = function (a) {
		var d = this, b = function (a, b) { d.options.processData && (a = d.options.processData(a)); d.showResults(d.filterResults(a, b), b) }; this.lastProcessedValue_ = a; a.length < this.options.minChars ?
		b([], a) : this.options.data ? b(this.options.data, a) : this.fetchRemoteData(a, function (d) { b(d, a) })
	}; c.Autocompleter.prototype.fetchRemoteData = function (a, d) {
		var b = this.cacheRead(a); if (b) d(b); else {
			var f = this, b = "json" === f.options.remoteDataType ? "json" : "text", e = function (b) { var c = !1; !1 !== b && (c = f.parseRemoteData(b), f.cacheWrite(a, c)); f.dom.$elem.removeClass(f.options.loadingClass); d(c) }; this.dom.$elem.addClass(this.options.loadingClass); c.ajax({
				url: this.makeUrl(a), success: e, error: function (a, b, d) {
					if (c.isFunction(f.options.onError)) f.options.onError(a,
					b, d); else e(!1)
				}, dataType: b
			})
		}
	}; c.Autocompleter.prototype.setExtraParam = function (a, d) { var b = c.trim(String(a)); b && (this.options.extraParams || (this.options.extraParams = {}), this.options.extraParams[b] !== d && (this.options.extraParams[b] = d, this.cacheFlush())) }; c.Autocompleter.prototype.makeUrl = function (a) { var d = this.options.url, b = c.extend({}, this.options.extraParams); !1 === this.options.queryParamName ? d += encodeURIComponent(a) : b[this.options.queryParamName] = a; return n(d, b) }; c.Autocompleter.prototype.parseRemoteData =
	function (a) { var d, b = a; if ("json" === this.options.remoteDataType) { d = typeof a; switch (d) { case "object": b = a; break; case "string": b = c.parseJSON(a); break; default: throw Error("Unexpected remote data type: " + d); } return b } var f = this.options.lineSeparator; a = this.options.cellSeparator; d = []; var e, g, h; h = String(b).replace("\r\n", "\n").split(f); for (b = 0; b < h.length; b++) { g = h[b].split(a); f = []; for (e = 0; e < g.length; e++) f.push(decodeURIComponent(g[e])); e = f.shift(); d.push({ value: e, data: f }) } return d }; c.Autocompleter.prototype.defaultFilter =
	function (a, d) { if (!a.value) return !1; if (this.options.filterResults) { var b = this.matchStringConverter(d), c = this.matchStringConverter(a.value); this.options.matchCase || (b = b.toLowerCase(), c = c.toLowerCase()); b = c.indexOf(b); return this.options.matchInside ? -1 < b : 0 === b } return !0 }; c.Autocompleter.prototype.filterResult = function (a, d) { return !1 === this.options.filter ? !0 : c.isFunction(this.options.filter) ? this.options.filter(a, d) : this.defaultFilter(a, d) }; c.Autocompleter.prototype.filterResults = function (a, d) {
		var b = [],
		f, e; for (f = 0; f < a.length; f++) { e = a[f]; var g = void 0, h = void 0, l = typeof e; "string" === l ? (g = e, h = {}) : c.isArray(e) ? (g = e[0], h = e.slice(1)) : "object" === l && (g = e.value, h = e.data); g = String(g); "object" !== typeof h && (h = {}); e = { value: g, data: h }; this.filterResult(e, d) && b.push(e) } this.options.sortResults && (b = this.sortResults(b, d)); 0 < this.options.maxItemsToShow && this.options.maxItemsToShow < b.length && (b.length = this.options.maxItemsToShow); return b
	}; c.Autocompleter.prototype.sortResults = function (a, d) {
		var b = this, f = this.options.sortFunction;
		c.isFunction(f) || (f = function (a, d, c) { a = String(a.value); d = String(d.value); b.options.matchCase || (a = a.toLowerCase(), d = d.toLowerCase()); d = a > d ? 1 : a < d ? -1 : 0; return d }); a.sort(function (a, c) { return f(a, c, d, b.options) }); return a
	}; c.Autocompleter.prototype.matchStringConverter = function (a, d, b) { var f = this.options.matchStringConverter; c.isFunction(f) && (a = f(a, d, b)); return a }; c.Autocompleter.prototype.beforeUseConverter = function (a) {
		a = this.getValue(a); var d = this.options.beforeUseConverter; c.isFunction(d) && (a = d(a));
		return a
	}; c.Autocompleter.prototype.enableFinishOnBlur = function () { this.finishOnBlur_ = !0 }; c.Autocompleter.prototype.disableFinishOnBlur = function () { this.finishOnBlur_ = !1 }; c.Autocompleter.prototype.createItemFromResult = function (a) { var d = this, b = c("<li/>"); b.html(this.showResult(a.value, a.data)); b.data({ value: a.value, data: a.data }).click(function () { d.selectItem(b) }).mousedown(d.disableFinishOnBlur).mouseup(d.enableFinishOnBlur); return b }; c.Autocompleter.prototype.getItems = function () { return c(">ul>li", this.dom.$results) };
	c.Autocompleter.prototype.showResults = function (a, d) {
		var b = a.length, f = this, e = c("<ul></ul>"), g, h, l, k = !1, m = !1; if (b) {
			for (g = 0; g < b; g++) h = a[g], l = this.createItemFromResult(h), e.append(l), !1 === k && (k = String(h.value), m = l, l.addClass(this.options.firstItemClass)), g === b - 1 && l.addClass(this.options.lastItemClass); this.dom.$results.html(e).show(); this.position(); this.options.autoWidth && (e = this.dom.$elem.outerWidth() - this.dom.$results.outerWidth() + this.dom.$results.width(), this.dom.$results.css(this.options.autoWidth,
			e)); this.getItems().hover(function () { f.focusItem(this) }, function () { }); (this.autoFill(k, d) || this.options.selectFirst || this.options.selectOnly && 1 === b) && this.focusItem(m); this.active_ = !0
		} else this.hideResults(), this.active_ = !1
	}; c.Autocompleter.prototype.showResult = function (a, d) { return c.isFunction(this.options.showResult) ? this.options.showResult(a, d) : a }; c.Autocompleter.prototype.autoFill = function (a, d) {
		var b, c, e, g; return this.options.autoFill && 8 !== this.lastKeyPressed_ && (b = String(a).toLowerCase(), c = String(d).toLowerCase(),
		e = a.length, g = d.length, b.substr(0, g) === c) ? (b = this.getDelimiterOffsets(), c = b.start ? " " : "", this.setValue(c + a), this.selectRange(g + b.start + c.length, e + b.start + c.length), !0) : !1
	}; c.Autocompleter.prototype.focusNext = function () { this.focusMove(1) }; c.Autocompleter.prototype.focusPrev = function () { this.focusMove(-1) }; c.Autocompleter.prototype.focusMove = function (a) { var d = this.getItems(); if (a = k(a, 0)) for (var b = 0; b < d.length; b++) if (c(d[b]).hasClass(this.selectClass_)) { this.focusItem(b + a); return } this.focusItem(0) }; c.Autocompleter.prototype.focusItem =
	function (a) { var d = this.getItems(); d.length && (d.removeClass(this.selectClass_).removeClass(this.options.selectClass), "number" === typeof a ? (0 > a ? a = 0 : a >= d.length && (a = d.length - 1), a = c(d[a])) : a = c(a), a && a.addClass(this.selectClass_).addClass(this.options.selectClass)) }; c.Autocompleter.prototype.selectCurrent = function () { var a = c("li." + this.selectClass_, this.dom.$results); 1 === a.length ? this.selectItem(a) : this.deactivate(!1) }; c.Autocompleter.prototype.selectItem = function (a) {
		var d = a.data("value"); a = a.data("data");
		var b = this.displayValue(d, a), c = this.beforeUseConverter(b); this.lastSelectedValue_ = this.lastProcessedValue_ = c; var c = this.getDelimiterOffsets(), e = this.options.delimiterChar, g = this.dom.$elem, h = 0; this.options.useDelimiter && (g.val().substring(c.start - 1, c.start) == e && " " != e && (b = " " + b), g.val().substring(c.end, c.end + 1) != e && this.lastKeyPressed_ != this.options.delimiterKeyCode ? b += e : h = 1); this.setValue(b); this.setCaret(c.start + b.length + h); this.callHook("onItemSelect", { value: d, data: a }); this.deactivate(!0); g.focus()
	};
	c.Autocompleter.prototype.displayValue = function (a, d) { return c.isFunction(this.options.displayValue) ? this.options.displayValue(a, d) : a }; c.Autocompleter.prototype.hideResults = function () { this.dom.$results.hide() }; c.Autocompleter.prototype.deactivate = function (a) {
		this.finishTimeout_ && clearTimeout(this.finishTimeout_); this.keyTimeout_ && clearTimeout(this.keyTimeout_); a && (this.lastProcessedValue_ !== this.lastSelectedValue_ && (this.options.mustMatch && this.setValue(""), this.callHook("onNoMatch")), this.active_ &&
		this.callHook("onFinish"), this.lastSelectedValue_ = this.lastProcessedValue_ = this.lastKeyPressed_ = null, this.active_ = !1); this.hideResults()
	}; c.Autocompleter.prototype.selectRange = function (a, d) { var b = this.dom.$elem.get(0); b.setSelectionRange ? (b.focus(), b.setSelectionRange(a, d)) : b.createTextRange && (b = b.createTextRange(), b.collapse(!0), b.moveEnd("character", d), b.moveStart("character", a), b.select()) }; c.Autocompleter.prototype.setCaret = function (a) { this.selectRange(a, a) }; c.Autocompleter.prototype.getCaret =
	function () {
		var a = this.dom.$elem, d = a[0], b, c; d.createTextRange ? (c = document.selection, "textarea" != d.tagName.toLowerCase() ? (b = a.val(), a = c.createRange().duplicate(), a.moveEnd("character", b.length), d = "" === a.text ? b.length : b.lastIndexOf(a.text), a = c.createRange().duplicate(), a.moveStart("character", -b.length), c = a.text.length) : (a = c.createRange(), c = a.duplicate(), c.moveToElementText(d), c.setEndPoint("EndToEnd", a), d = c.text.length - a.text.length, c = d + a.text.length)) : (d = a[0].selectionStart, c = a[0].selectionEnd); return {
			start: d,
			end: c
		}
	}; c.Autocompleter.prototype.setValue = function (a) { if (this.options.useDelimiter) { var c = this.dom.$elem.val(), b = this.getDelimiterOffsets(), f = c.substring(0, b.start), c = c.substring(b.end); a = f + a + c } this.dom.$elem.val(a) }; c.Autocompleter.prototype.getValue = function (a) { if (this.options.useDelimiter) { var c = this.getDelimiterOffsets(); return a.substring(c.start, c.end).trim() } return a }; c.Autocompleter.prototype.getDelimiterOffsets = function () {
		var a = this.dom.$elem.val(); if (this.options.useDelimiter) {
			var c = a.substring(0,
			this.getCaret().start).lastIndexOf(this.options.delimiterChar) + 1, b = a.substring(this.getCaret().start).indexOf(this.options.delimiterChar); -1 == b && (b = a.length); b += this.getCaret().start
		} else c = 0, b = a.length; return { start: c, end: b }
	}
})(eds3_5_jq);
;;;(function($){$.fn.rateit=function(p1,p2){var options={};var mode='init';if(this.length==0)return this;var tp1=$.type(p1);if(tp1=='object'||p1===undefined||p1==null){options=$.extend({},$.fn.rateit.defaults,p1);}
else if(tp1=='string'&&p2===undefined){return this.data('rateit-'+p1);}
else if(tp1=='string'){mode='setvalue'}
return this.each(function(){var item=$(this);var itemdata=function(k,v){k='rateit-'+k;if(arguments.length===1)
return item.data(k);item.data(k,v);return v;};if(!item.hasClass('rateit'))item.addClass('rateit');var ltr=item.css('direction')!='rtl';if(mode=='setvalue'){if(!itemdata('init'))throw'Can\'t set value before init';if(p1=='readonly'&&!itemdata('readonly')){item.find('.rateit-range').unbind();itemdata('wired',false);}
if(itemdata('backingfld')){var fld=$(itemdata('backingfld'));if(p1=='value')fld.val(p2);if(p1=='min'&&fld[0].min)fld[0].min=p2;if(p1=='max'&&fld[0].max)fld[0].max=p2;if(p1=='step'&&fld[0].step)fld[0].step=p2;}
itemdata(p1,p2);}
if(!itemdata('init')){itemdata('min',itemdata('min')||options.min);itemdata('max',itemdata('max')||options.max);itemdata('step',itemdata('step')||options.step);itemdata('readonly',itemdata('readonly')!==undefined?itemdata('readonly'):options.readonly);itemdata('resetable',itemdata('resetable')!==undefined?itemdata('resetable'):options.resetable);itemdata('backingfld',itemdata('backingfld')||options.backingfld);itemdata('starwidth',itemdata('starwidth')||options.starwidth);itemdata('starheight',itemdata('starheight')||options.starheight);itemdata('value',itemdata('value')||options.min);if(itemdata('backingfld')){var fld=$(itemdata('backingfld'));itemdata('value',fld.hide().val());if(fld[0].nodeName=='INPUT'){if(fld[0].type=='range'||fld[0].type=='text'){itemdata('min',parseInt(fld.attr('min'))||itemdata('min'));itemdata('max',parseInt(fld.attr('max'))||itemdata('max'));itemdata('step',parseInt(fld.attr('step'))||itemdata('step'));}}
if(fld[0].nodeName=='SELECT'&&fld[0].options.length>1){itemdata('min',Number(fld[0].options[0].value));itemdata('max',Number(fld[0].options[fld[0].length-1].value));itemdata('step',Number(fld[0].options[1].value)-Number(fld[0].options[0].value));}}
item.append('<div class="rateit-reset"></div><div class="rateit-range"><div class="rateit-selected" style="height:'+itemdata('starheight')+'px"></div><div class="rateit-hover" style="height:'+itemdata('starheight')+'px"></div></div>');if(!ltr){item.find('.rateit-reset').css('float','right');item.find('.rateit-selected').addClass('rateit-selected-rtl');item.find('.rateit-hover').addClass('rateit-hover-rtl');}
itemdata('init',true);}
var range=item.find('.rateit-range');range.width(itemdata('starwidth')*(itemdata('max')-itemdata('min'))).height(itemdata('starheight'));if(itemdata('value')){var score=(itemdata('value')-itemdata('min'))*itemdata('starwidth');item.find('.rateit-selected').width(score);}
var resetbtn=item.find('.rateit-reset');var calcRawScore=function(element,event){var pageX=(event.changedTouches)?event.changedTouches[0].pageX:event.pageX;var offsetx=pageX-$(element).offset().left;if(!ltr)offsetx=range.width()-offsetx;if(offsetx>range.width())offsetx=range.width();if(offsetx<0)offsetx=0;return score=Math.ceil(offsetx/itemdata('starwidth')*(1/itemdata('step')));};if(!itemdata('readonly')){if(itemdata('resetable')){resetbtn.click(function(){itemdata('value',itemdata('min'));range.find('.rateit-hover').hide().width(0);range.find('.rateit-selected').width(0).show();if(itemdata('backingfld'))$(itemdata('backingfld')).val(itemdata('min'));item.trigger('reset');});}
else{resetbtn.hide();}
if(!itemdata('wired')){range.bind('touchmove touchend',touchHandler);range.mousemove(function(e){var score=calcRawScore(this,e);var w=score*itemdata('starwidth')*itemdata('step');var h=range.find('.rateit-hover');if(h.data('width')!=w){range.find('.rateit-selected').hide();h.width(w).show().data('width',w);item.trigger('hover',[(score*itemdata('step'))+itemdata('min')]);}});range.mouseleave(function(e){range.find('.rateit-hover').hide().width(0).data('width','');item.trigger('hover',[null]);range.find('.rateit-selected').show();});range.mouseup(function(e){var score=calcRawScore(this,e);var newvalue=(score*itemdata('step'))+itemdata('min');itemdata('value',newvalue);if(itemdata('backingfld')){$(itemdata('backingfld')).val(newvalue);}
range.find('.rateit-hover').hide();range.find('.rateit-selected').width(score*itemdata('starwidth')*itemdata('step')).show();item.trigger('hover',[null]).trigger('rated',[newvalue]);});itemdata('wired',true);}
if(itemdata('resetable')){resetbtn.show();}}
else{resetbtn.hide();}});};function touchHandler(event){var touches=event.originalEvent.changedTouches,first=touches[0],type="";switch(event.type){case"touchmove":type="mousemove";break;case"touchend":type="mouseup";break;default:return;}
var simulatedEvent=document.createEvent("MouseEvent");simulatedEvent.initMouseEvent(type,true,true,window,1,first.screenX,first.screenY,first.clientX,first.clientY,false,false,false,false,0,null);first.target.dispatchEvent(simulatedEvent);event.preventDefault();};$.fn.rateit.defaults={min:0,max:5,step:0.5,starwidth:16,starheight:16,readonly:false,resetable:true};eds3_5_jq(document).ready(function($){$('div.rateit').rateit();});})(eds3_5_jq);
;;;(function(){var eds_mousewheel=function(a){function d(b){var c=b||window.event,d=[].slice.call(arguments,1),e=0,f=!0,g=0,h=0;return b=a.event.fix(c),b.type="mousewheel",c.wheelDelta&&(e=c.wheelDelta/120),c.detail&&(e=-c.detail/3),h=e,c.axis!==undefined&&c.axis===c.HORIZONTAL_AXIS&&(h=0,g=-1*e),c.wheelDeltaY!==undefined&&(h=c.wheelDeltaY/120),c.wheelDeltaX!==undefined&&(g=-1*c.wheelDeltaX/120),d.unshift(b,e,g,h),(a.event.dispatch||a.event.handle).apply(this,d)}var b=["DOMMouseScroll","mousewheel"];if(a.event.fixHooks)for(var c=b.length;c;)a.event.fixHooks[b[--c]]=a.event.mouseHooks;a.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=b.length;a;)this.addEventListener(b[--a],d,!1);else this.onmousewheel=d},teardown:function(){if(this.removeEventListener)for(var a=b.length;a;)this.removeEventListener(b[--a],d,!1);else this.onmousewheel=null}},a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})};if(typeof jQuery!=='undefined')
eds_mousewheel(jQuery);if(typeof eds3_5_jq!=='undefined')
eds_mousewheel(eds3_5_jq);})();
;;;(function(document,undefined){var eds_cookie=function($){var pluses=/\+/g;function raw(s){return s;}
function decoded(s){return decodeURIComponent(s.replace(pluses,' '));}
var config=$.cookie=function(key,value,options){if(value!==undefined){options=$.extend({},config.defaults,options);if(value===null){options.expires=-1;}
if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);}
value=config.json?JSON.stringify(value):String(value);return(document.cookie=[encodeURIComponent(key),'=',config.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));}
var decode=config.raw?raw:decoded;var cookies=document.cookie.split('; ');for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split('=');if(decode(parts.shift())===key){var cookie=decode(parts.join('='));return config.json?JSON.parse(cookie):cookie;}}
return null;};config.defaults={};$.removeCookie=function(key,options){if($.cookie(key)!==null){$.cookie(key,null,options);return true;}
return false;};};if(typeof jQuery!=='undefined')
eds_cookie(jQuery);if(typeof eds3_5_jq!=='undefined')
eds_cookie(eds3_5_jq);})(document);
;;;!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a(require("jquery")):a(eds3_5_jq)}(function(a){"use strict";function b(b,e){function f(){return o.update(),h(),o}function g(){t.css(y,o.thumbPosition),q.css(y,-o.contentPosition),r.css(x,o.trackSize),s.css(x,o.trackSize),t.css(x,o.thumbSize)}function h(){u&&(p[0].ontouchstart=function(a){1===a.touches.length&&(a.stopPropagation(),k(a.touches[0]))}),t.bind("mousedown",function(a){a.stopPropagation(),k(a)}),s.bind("mousedown",function(a){k(a,!0)}),a(window).resize(function(){o.update("relative")}),o.options.wheel&&window.addEventListener?b[0].addEventListener(v,l,!1):o.options.wheel&&(b[0].onmousewheel=l)}function i(){return o.contentPosition>0}function j(){return o.contentPosition<=o.contentSize-o.viewportSize-5}function k(b,d){o.hasContentToSroll&&(a("body").addClass("noSelect"),z=d?t.offset()[y]:w?b.pageX:b.pageY,u&&(document.ontouchmove=function(a){(o.options.touchLock||i()&&j())&&a.preventDefault(),a.touches[0][c+"Touch"]=1,m(a.touches[0])},document.ontouchend=n),a(document).bind("mousemove",m),a(document).bind("mouseup",n),t.bind("mouseup",n),s.bind("mouseup",n),m(b))}function l(c){if(o.hasContentToSroll){var d=c||window.event,e=-(d.deltaY||d.detail||-1/3*d.wheelDelta)/40,f=1===d.deltaMode?o.options.wheelSpeed:1;o.contentPosition-=e*f*o.options.wheelSpeed,o.contentPosition=Math.min(o.contentSize-o.viewportSize,Math.max(0,o.contentPosition)),o.thumbPosition=o.contentPosition/o.trackRatio,b.trigger("move"),t.css(y,o.thumbPosition),q.css(y,-o.contentPosition),(o.options.wheelLock||i()&&j())&&(d=a.event.fix(d),d.preventDefault())}c.stopPropagation()}function m(a){if(o.hasContentToSroll){var d=w?a.pageX:a.pageY,e=a[c+"Touch"]?z-d:d-z,f=Math.min(o.trackSize-o.thumbSize,Math.max(0,o.thumbPosition+e));o.contentPosition=f*o.trackRatio,b.trigger("move"),t.css(y,f),q.css(y,-o.contentPosition)}}function n(){o.thumbPosition=parseInt(t.css(y),10)||0,a("body").removeClass("noSelect"),a(document).unbind("mousemove",m),a(document).unbind("mouseup",n),t.unbind("mouseup",n),s.unbind("mouseup",n),document.ontouchmove=document.ontouchend=null}this.options=a.extend({},d,e),this._defaults=d,this._name=c;var o=this,p=b.find(".viewport"),q=b.find(".overview"),r=b.find(".scrollbar"),s=r.find(".track"),t=r.find(".thumb"),u="ontouchstart" in document.documentElement,v="onwheel" in document.createElement("div")?"wheel":void 0!==document.onmousewheel?"mousewheel":"DOMMouseScroll",w="x"===this.options.axis,x=w?"width":"height",y=w?"left":"top",z=0;return this.contentPosition=0,this.viewportSize=0,this.contentSize=0,this.contentRatio=0,this.trackSize=0,this.trackRatio=0,this.thumbSize=0,this.thumbPosition=0,this.hasContentToSroll=!1,this.update=function(a){var b=x.charAt(0).toUpperCase()+x.slice(1).toLowerCase();switch(this.viewportSize=p[0]["offset"+b],this.contentSize=q[0]["scroll"+b],this.contentRatio=this.viewportSize/this.contentSize,this.trackSize=this.options.trackSize||this.viewportSize,this.thumbSize=Math.min(this.trackSize,Math.max(this.options.thumbSizeMin,this.options.thumbSize||this.trackSize*this.contentRatio)),this.trackRatio=(this.contentSize-this.viewportSize)/(this.trackSize-this.thumbSize),this.hasContentToSroll=this.contentRatio<1,r.toggleClass("disable",!this.hasContentToSroll),a){case"bottom":this.contentPosition=Math.max(this.contentSize-this.viewportSize,0);break;case"relative":this.contentPosition=Math.min(Math.max(this.contentSize-this.viewportSize,0),Math.max(0,this.contentPosition));break;default:this.contentPosition=parseInt(a,10)||0}return this.thumbPosition=this.contentPosition/this.trackRatio,g(),o},f()}var c="eds_tinyscrollbar",d={axis:"y",wheel:!0,wheelSpeed:40,wheelLock:!0,touchLock:!0,trackSize:!1,thumbSize:!1,thumbSizeMin:20};a.fn[c]=function(d){return this.each(function(){a.data(this,"plugin_"+c)||a.data(this,"plugin_"+c,new b(a(this),d))})}});
;;;/*! fluidvids.js v2.4.1 | (c) 2014 @toddmotto | https://github.com/toddmotto/fluidvids */
!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t:e.edn_fluidvids=t()}(this,function(){"use strict";function e(e){return new RegExp("^(https?:)?//(?:"+d.players.join("|")+").*$","i").test(e)}function t(e,t){return parseInt(e,10)/parseInt(t,10)*100+"%"}function i(i){if((e(i.src)||e(i.data))&&!i.getAttribute("edn_data-fluidvids")){var n=document.createElement("div");i.parentNode.insertBefore(n,i),i.className+=(i.className?" ":"")+"edn_fluidvids-item",i.setAttribute("edn_data-fluidvids","loaded"),n.className+="edn_fluidvids",n.style.paddingTop=t(i.height,i.width),n.appendChild(i)}}function n(){var e=document.createElement("div");e.innerHTML="<p>x</p><style>"+o+"</style>",r.appendChild(e.childNodes[1])}var d={selector:["iframe","object"],players:["www.youtube.com","player.vimeo.com"]},o=[".edn_fluidvids {","width: 100%; max-width: 100%; position: relative;","}",".edn_fluidvids-item {","position: absolute; top: 0px; left: 0px; width: 100%; height: 100%;","}"].join(""),r=document.head||document.getElementsByTagName("head")[0];return d.render=function(){for(var e=document.querySelectorAll(d.selector.join()),t=e.length;t--;)i(e[t])},d.init=function(e){for(var t in e)d[t]=e[t];d.render(),n()},d});
;;;(function ($, window, document) {
	'use strict';

	var pluginName = 'chameleonSlider_2_1',

		stringEndsWith = function (s, e) {
			return s.indexOf(e, s.length - e.length) !== -1;
		};

	$.fn[pluginName] = function (options) {
		var defaults = {
				content_source: '',
				container_dimensions: {
					width: 750,
					height: 400,
					w_as_ratio: false,
					h_as_ratio: false,
					height_references_width: false
				},
				autoplay: {
					enable: true,
					interval: 4000,
					pause_on_hover: true,
					autostart_video_playback: false,
					indicator: {
						display: true,
						position: {
							vertical: 'top',
							horizontal: 'left',
							h_offset: 0,
							v_offset: 0,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						},
						dimensions: {
							height: 2,
							width: 750,
							h_as_ratio: false,
							w_as_ratio: false
						},
						orientation: 'horizontal',
						flip_direction: false
					}
				},
				arrows: {
					display: true,
					auto_hide: true,
					hide_speed: 250,
					prev: {
						position: {
							vertical: 'top',
							horizontal: 'left',
							h_offset: 0,
							v_offset: 183,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					},
					next: {
						position: {
							vertical: 'top',
							horizontal: 'right',
							h_offset: 0,
							v_offset: 183,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					}
				},
				autoplay_toggle: {
					display: true,
					auto_hide: true,
					hide_speed: 250,
					position: {
						vertical: 'top',
						horizontal: 'left',
						h_offset: 347,
						v_offset: 130,
						h_as_ratio: false,
						v_as_ratio: false,
						v_center_point: false,
						h_center_point: false
					}
				},
				scrollable_boxes: {
					item_info: {
						display: true,
						cutThumbWidth: false,
						cutCategoryWidth: false,
						container: {
							dimensions: {
								height: 100,
								width: 750,
								h_as_ratio: false,
								w_as_ratio: false
							},
							resize_to_content: true,
							show_on_hover: false,
							position: {
								vertical: 'top',
								horizontal: 'left',
								h_offset: 0,
								v_offset: 2,
								h_as_ratio: false,
								v_as_ratio: false,
								v_center_point: false,
								h_center_point: false
							}
						}
					},
					gallery_info: {
						display: false,
						container: {
							dimensions: {
								height: 100,
								width: 750,
								h_as_ratio: false,
								w_as_ratio: false
							},
							resize_to_content: true,
							show_on_hover: false,
							position: {
								vertical: 'top',
								horizontal: 'left',
								h_offset: 0,
								v_offset: 2,
								h_as_ratio: false,
								v_as_ratio: false,
								v_center_point: false,
								h_center_point: false
							}
						}
					}
				},
				thumbs: {
					display: true,
					auto_hide: false,
					hide_speed: 250,
					width: 100,
					height: 46,
					captions: true,
					display_item_types: false,
					pagination: {
						direction: 'horizontal',
						duration: 250,
						easing: 'swing'
					},
					tooltips: {
						enabled: false,
						title: true,
						description: false,
						position: {
							my: 'bottom center',
							at: 'top center'
						},
						classes: ''
					},
					container: {
						transparent: true,
						dimensions: {
							height: 20,
							width: 679,
							h_as_ratio: false,
							w_as_ratio: false
						},
						position: {
							vertical: 'bottom',
							horizontal: 'left',
							h_offset: 35,
							v_offset: 0,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					}
				},
				categories: {
					display: false,
					auto_hide: false,
					hide_speed: 250,
					width: 100,
					height: 46,
					pagination: {
						direction: 'horizontal',
						duration: 250,
						easing: 'swing'
					},
					container: {
						dimensions: {
							height: 20,
							width: 679,
							h_as_ratio: false,
							w_as_ratio: false
						},
						position: {
							vertical: 'bottom',
							horizontal: 'left',
							h_offset: 35,
							v_offset: 0,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					}
				},
				pagination: {
					display: true,
					pages_at_once: 7,
					direction: 'horizontal',
					position: {
						vertical: 'bottom',
						horizontal: 'right',
						h_offset: 35,
						v_offset: 58,
						h_as_ratio: false,
						v_as_ratio: false,
						v_center_point: false,
						h_center_point: false
					}
				},
				title_boxes: {
					current_item: {
						display: false,
						height: 35,
						position: {
							vertical: 'bottom',
							horizontal: 'left',
							h_offset: 0,
							v_offset: 200,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					},
					current_gallery: {
						display: false,
						height: 35,
						position: {
							vertical: 'top',
							horizontal: 'left',
							h_offset: 0,
							v_offset: 0,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					}
				},
				buttons: {
					email: {
						display: false,
						position: {
							vertical: 'top',
							horizontal: 'right',
							h_offset: 35,
							v_offset: 58,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						},
						email_subject: 'Look at this link'
					},
					download: {
						display: false,
						position: {
							vertical: 'top',
							horizontal: 'left',
							h_offset: 35,
							v_offset: 58,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					},
					fullscreen: {
						display: false,
						position: {
							vertical: 'top',
							horizontal: 'left',
							h_offset: 35,
							v_offset: 58,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					},
					exit_fullscreen: {
						display: false,
						position: {
							vertical: 'bottom',
							horizontal: 'right',
							h_offset: 35,
							v_offset: 58,
							h_as_ratio: false,
							v_as_ratio: false,
							v_center_point: false,
							h_center_point: false
						}
					}
				},
				social_buttons: {
					display: false,
					direction: 'horizontal',
					load_after_effect: true,
					position: {
						vertical: 'bottom',
						horizontal: 'right',
						h_offset: 35,
						v_offset: 58,
						h_as_ratio: false,
						v_as_ratio: false,
						v_center_point: false,
						h_center_point: false
					},
					buttons: {
						facebook: {
							display: true,
							html: '<iframe src="//www.facebook.com/plugins/like.php?href={location_href_encoded}&amp;layout=button_count&amp;show_faces=true&amp;action=like&amp;font&amp;colorscheme=light&amp;height=20" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:20px; width: 100px;" allowTransparency="true"></iframe>'
						},
						google: {
							display: true,
							html: '<g:plusone size="medium" href="{location_href}" annotation="bubble"></g:plusone><script type="text/javascript">gapi.plusone.go();</' + 'script>'
						},
						twitter: {
							display: true,
							html: '<a href="//twitter.com/share" class="twitter-share-button" data-url="{location_href}" data-count="horizontal">Tweet</a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></' + 'script>'
						}
					},
					hideable: false,
					container: {
						width: 100,
						height: 100
					}
				},
				main_panel: {
					display: true,
					fill_panel: false,
					stretch_small_image: false,
					top_left_align: false,
					drag_navigation: false,
					immediately_preload_all_images: false,
					dimensions: {
						width: 750,
						height: 400,
						h_as_ratio: false,
						w_as_ratio: false
					},
					position: {
						vertical: 'top',
						horizontal: 'left',
						h_offset: 0,
						v_offset: 0,
						h_as_ratio: false,
						v_as_ratio: false,
						v_center_point: false,
						h_center_point: false
					},
					trim: {
						top: 0,
						bottom: 0,
						left: 0,
						right: 0
					},
					transition: {
						duration: 800,
						effects: []
					}
				},
				lightbox_title: false,
				lightbox_description: false,
				key_browse: true,
				redirect_on_click: false,
				redirect_on_click_target: '_self',
				lightbox_on_click: false,
				module_id: 0,
				portal_id: 0,
				article_id: 0,
				filter_values: '',
				filter_types: '',
				locale: '',
				inhouse_player: 'flowplayer',
				flowplayer_src: '',
				fullscreen_provider: 'pp',
				pretty_photo_options: {},
				smb_options: {},
				smbLight_options: {},
				cycle_current_category: true,
				open_at: null,
				modify_browser_history: false,
				videoVolume: 1
			},
			option = $.extend(true, {}, defaults, options),

			location = window.history.location || window.location;

		return this.each(function () {
			var $t = $(this),
				$slider_container,

				slider_resize_interval,

				ajax = {
					trys: 0
				},
				$loading_overlay = $('<div class="loading_slider_overlay" />'),
				$loading_indicator = $('<div class="indicator" />'),
				$loading_msg = $('<p />'),

				slider_content,
				all_items_count = 0,
				selected_categories,
				current = {
					category: {},
					item: {}
				},

				previous_item_index = 0,

				item_panels = {},

				$main_panel,
				$main_panel_items_wrapper,
				$main_panel_media_link = $(),
				$lightbox_links_container,
				$lightbox_links,

				$pagination,
				$pagination_pages_container,
				$pagination_pages,

				$social_buttons,
				$social_buttons_toggle,

				$autoplay_indicator,
				$autoplay_container,
				$autoplay_toggle,

				autoplay = {
					interval: '',
					last_started: 0,
					pause_time: 0,
					start_pause_delta: 0,
					time_remaining: 0,
					pause: false,
					user_paused: false,
					fade_in: false,
					reset: false,
					transition_in_progres: false,
					video_playing: false
				},

				$navigation_prev,
				$navigation_next,

				rendering = {
					container_dimensions: {},
					thumbs: {
						page: {
							vertical_space: 0,
							horizontal_space: 0,
							width: 0,
							height: 0,
							count: 0
						},
						container: {},
						width: 0,
						height: 0,
						per_page: 0,
						per_row: 0,
						row_count: 0,
						window_width: 0,
						window_height: 0
					},
					categories: {
						page: {
							vertical_space: 0,
							horizontal_space: 0,
							width: 0,
							height: 0,
							count: 0
						},
						container: {},
						width: 0,
						height: 0,
						per_page: 0,
						per_row: 0,
						row_count: 0,
						window_width: 0,
						window_height: 0,
						render_categories: true
					},
					autoplay: {
						indicator: {}
					},
					title_boxes: {
						current_item: {},
						current_gallery: {}
					},
					scrollable_boxes: {
						item_info: {},
						gallery_info: {}
					},
					pagination: {
						pages_at_once: 0,
						page: {
							width: 0,
							height: 0
						}
					},
					main_panel: {
						dimensions: {},
						initialized: false,
						disable_clicking: false,
						disable_clicking_interval: ''
					},
					preloaded_images: {},
					preloading_item: false,
					buttons: {
						email: {},
						download: {},
						fullscreen: {},
						exit_fullscreen: {}
					},
					html5: {
						video: false
					},
					youtube_iframe_api: {
						called: false,
						loaded: false
					},
					youtube_player_object: undefined,
					mouse_entered: false,
					item_details_shown: false
				},

				get_item_src = function (item) {
					var item_src = item.src;

					if (item.sizes) {
						var i = 0,
							l = item.sizes.length;

						for (; i < l; i++) {
							var size = item.sizes[i];

							if (size.width < rendering.main_panel.dimensions.width)
								break;

							item_src = size.src;
						}
					}

					return item_src;
				},

				is_image_item = function (item) {
					if (typeof item == 'number')
						item = current.category.items[item];

					return item.type == 'image' || ((item.type == 'video' || item.type == 'audio') && option.lightbox_on_click);
				},

			slider = {
				init: function () {
					if (option.container_dimensions.w_as_ratio || option.container_dimensions.h_as_ratio) {
						$slider_container = $t.parent();

						rendering.container_dimensions = {
							width: option.container_dimensions.w_as_ratio ? Math.round($slider_container.width() * option.container_dimensions.width) : option.container_dimensions.width,
							height: 0
						};
						rendering.container_dimensions.height = option.container_dimensions.h_as_ratio
							? Math.round(
								(option.container_dimensions.height_references_width
									? rendering.container_dimensions.width
									: $slider_container.height()
								) * option.container_dimensions.height
							)
							: option.container_dimensions.height;

						$(window).bind('resize.chameleonSlider', function () {
							clearTimeout(slider_resize_interval);
							slider_resize_interval = setTimeout(function () {
								rendering.container_dimensions = {
									width: option.container_dimensions.w_as_ratio ? Math.round($slider_container.width() * option.container_dimensions.width) : option.container_dimensions.width,
									height: 0
								};
								rendering.container_dimensions.height = option.container_dimensions.h_as_ratio
									? Math.round(
										(option.container_dimensions.height_references_width
											? rendering.container_dimensions.width
											: $slider_container.height()
										) * option.container_dimensions.height
									)
									: option.container_dimensions.height;

								$t.trigger('resize_slider');
							}, 200);
						});
					} else
						rendering.container_dimensions = {
							width: option.container_dimensions.width,
							height: option.container_dimensions.height
						};

					$t
						.width(rendering.container_dimensions.width)
						.height(rendering.container_dimensions.height)
						.append($loading_overlay)
						.bind('destroy', function () {
							clearTimeout(autoplay.interval);
						});

					$loading_overlay
						.width(rendering.container_dimensions.width)
						.height(rendering.container_dimensions.height)
						.append($loading_indicator)
						.show(0);

					try {
						rendering.html5.video = !!document.createElement('video').canPlayType;
					} catch(e) {}

					if (option.modify_browser_history)
						$(window).on('popstate', function(e) {
							slider.parse_slider_url_hash(location.hash);
							slider.show_item(current.item.index, true, undefined, true);
						});

					slider.get_content_source();
				},

				get_content_source: function () {
					if (ajax.trys > 3) {
						if ($loading_msg.is(':visible')) {
							$loading_msg.html('Unable to display the items (requesting the items failed)');
						} else {
							$loading_indicator.fadeOut(250, function () {
								$loading_msg = $('<p>Unable to display the items (requesting the items failed)</p>');
								$loading_msg
									.appendTo($loading_overlay)
									.css({
										display: 'block',
										top: Math.floor((rendering.container_dimensions.height - $loading_msg.outerHeight(true)) / 2)
									});
							});
						}

						return;
					}

					ajax.trys += 1;

					$.ajax({
						dataType: 'json',
						type: 'get',
						url: option.content_source,
						timeout: 300000,
						data: 'mid=' + option.module_id + '&portal_id=' + option.portal_id + '&locale=' + option.locale + '&article_id=' + option.article_id + '&html5_player=' + (rendering.html5.video ? '1' : '0') + (option.filter_values === '' ? '' : '&filter_values=' + option.filter_values + '&filter_types=' + option.filter_types),
						success: slider.load,
						complete: slider.ajax_callback,
						cache: false
					});
				},

				ajax_callback: function (xhr, status) {
					if (status !== 'success') {
						slider.get_content_source();
					}
				},

				parse_slider_url_hash: function (hash) {
					var url_hash = hash.substring(1),
						first_slash_position = url_hash.indexOf('/'),
						categories_to_open,
						item_to_open = undefined;

					categories_to_open = url_hash.substring(first_slash_position + 1);

					first_slash_position = categories_to_open.indexOf('/');

					if (first_slash_position !== -1) {
						item_to_open = categories_to_open.substring(first_slash_position + 1);
						first_slash_position = item_to_open.indexOf('/');

						if (first_slash_position !== -1)
							item_to_open = item_to_open.substring(0, first_slash_position);

						if (!item_to_open) {
							item_to_open = undefined;
						}

						categories_to_open = categories_to_open.substring(0, categories_to_open.indexOf('/'));
					}

					selected_categories = {
						ids: categories_to_open.split('-'),
						indexes: []
					};

					selected_categories.indexes = slider.category_indexes_from_ids($.extend([], selected_categories.ids), slider_content);
					if (selected_categories.indexes.length == 0) {
						selected_categories.indexes = [0];
						selected_categories.ids = [slider_content[0].id];
					}

					current.category = slider.get_category(selected_categories.indexes);
					current.category.item_count = current.category.items.length;

					current.item = {
						id: 0,
						index: slider.item_index_from_id(item_to_open)
					};

					current.item.id = current.category.items[current.item.index].id;
				},

				load: function(data) {
					var url_hash = location.hash.substring(1),
						first_slash_position = url_hash.indexOf('/'),
						hashStart = first_slash_position == -1 ? '' : url_hash.substring(0, first_slash_position);

					if (data.content.length == 0) {
						$loading_indicator.fadeOut(250, function () {
							$loading_msg = $('<p>' + (data.user_friendly_msg ? data.user_friendly_msg : 'There are no items to display.') + '</p>');
							$loading_msg
								.appendTo($loading_overlay)
								.css({
									display: 'block',
									top: Math.floor((rendering.container_dimensions.height - $loading_msg.outerHeight(true)) / 2)
								});
						});

						return;
					}

					slider_content = data.content;

					if (option.open_at != null) {
						selected_categories = {
							ids: option.open_at.categories,
							indexes: []
						};

						selected_categories.indexes = slider.category_indexes_from_ids($.extend([], selected_categories.ids), slider_content);
						if (selected_categories.indexes.length == 0) {
							selected_categories.indexes = [0];
							selected_categories.ids = [slider_content[0].id];
						}

						current.category = slider.get_category(selected_categories.indexes);
						current.category.item_count = current.category.items.length;

						current.item = {
							id: 0,
							index: slider.item_index_from_id(option.open_at.item)
						};

						current.item.id = current.category.items[current.item.index].id;
					} else if (hashStart == 'slider_' + option.module_id || hashStart == 'gallery_' + option.module_id) {
						slider.parse_slider_url_hash('#' + url_hash);

						if (
							option.fullscreen_provider == 'smb'
							&& hashStart == 'gallery_' + option.module_id
							&& current.category.item_count > 0
						) {
							(function () {
								var smb_items = [];

								option.smb_options.openAt = 0;

								$.each(current.category.items, function (i, item) {
									if (item.id === current.item.id) {
										option.smb_options.openAt = i;
									}

									smb_items.push(item.smb_object);
								});

								$('<div />')
									.data('socialMediaBox', smb_items)
									.socialMediaBox(option.smb_options);
							})();
						}
					} else {
						selected_categories = {
							ids: [slider_content[0].id],
							indexes: [0]
						};

						current.category = slider_content[0];
						current.category.item_count = current.category.items.length;

						current.item = {
							id: undefined,
							index: slider.item_index_from_id(undefined)
						};
					}

					if ('YT' in window && 'Player' in window.YT) {
						rendering.youtube_iframe_api.called = true;
						rendering.youtube_iframe_api.loaded = true;
					}

					if (option.buttons.exit_fullscreen.display)
						slider.exit_fullscreen.init();

					if (option.autoplay.enable)
						slider.autoplay.init();

					if (option.pagination.display)
						slider.pagination.init();

					if (option.social_buttons.display)
						slider.social_buttons.init();

					if (option.buttons.email.display)
						slider.email_button.init();

					if (option.buttons.download.display)
						slider.download_button.init();

					if (option.buttons.fullscreen.display)
						slider.fullscreen_button.init();

					if (option.autoplay_toggle.display)
						slider.autoplay_toggle.init();

					if (option.arrows.display)
						slider.arrows.init();

					if (option.categories.display)
						slider.categories.init();

					if (option.thumbs.display)
						slider.thumbnails.init();

					if (option.title_boxes.current_item.display)
						slider.item_title.init();

					if (option.title_boxes.current_gallery.display)
						slider.gallery_title.init();

					if (option.scrollable_boxes.item_info.display)
						slider.item_info.init();

					if (option.scrollable_boxes.gallery_info.display)
						slider.gallery_info.init();

					if (option.main_panel.display)
						slider.main_panel.init();
					else
						slider.triggers();
				},

				show_item: function (index, force, transition, noPushState) {
					index = parseInt(index, 10);

					force = typeof force == 'undefined' ? false : true;

					if (index === current.item.index && !force)
						return;

					if (typeof slider._on_pre_item_change == 'function') {
						slider._on_pre_item_change();
						slider._on_pre_item_change = undefined;
					}

					autoplay.video_playing = false;

					if (index < 0) {
						index = current.category.item_count - 1;
					} else if (index >= current.category.item_count) {
						index = 0;
					}

					slider.autoplay.reset();

					previous_item_index = current.item.index;

					var current_item = current.category.items[index];

					current.item.index = index;
					current.item.id = current_item.id;

					slider.pagination.select(index);
					slider.thumbnails.select(index);

					rendering.item_details_shown = false;

					if (
						option.main_panel.immediately_preload_all_images ||
						(
							is_image_item(current_item) &&
							rendering.preloaded_images[current_item.src] &&
							rendering.preloaded_images[current_item.src].loaded
						)
					) {
						rendering.item_details_shown = true;

						slider.social_buttons.display(index);
						slider.item_title.select(index);
						slider.item_info.display(index);
						slider.download_button.display(index);
						slider.email_button.display(index);
					}

					if (option.modify_browser_history && !noPushState) {
						var hash_location = location.href.indexOf('#'),
							newHref;

						if (hash_location == -1)
							newHref = location.href
						else
							newHref = location.href.substring(0, hash_location);

						newHref += '#slider_' + option.module_id + '/' + selected_categories.ids.join('-') + '/' + current.item.id;

						history.pushState(null, null, newHref);
					}

					if (option.main_panel.display) {
						if (!rendering.preloading_item)
							if (typeof transition == 'undefined')
								slider.main_panel.display(index);
							else
								slider.main_panel.display(index, transition);
					} else
						$t.trigger('slider_transition_finnished');
				},

				next: function () {
					var next_cat_index,
						num_of_categories = slider_content.length;

					if (!option.cycle_current_category && current.item.index == current.category.item_count - 1) {
						next_cat_index = selected_categories.indexes.pop() + 1;

						if (selected_categories.indexes.length != 0)
							num_of_categories = slider.get_category(selected_categories.indexes).children.length;

						if (next_cat_index < num_of_categories)
							selected_categories.indexes.push(next_cat_index);
						else
							selected_categories.indexes.push(0);

						selected_categories.ids = slider.category_ids_from_indexes(selected_categories.indexes);

						current.category = slider.get_category(selected_categories.indexes);
						current.category.item_count = current.category.items.length;

						current.item = {
							id: current.category.items[0].id,
							index: 0
						};

						rendering.categories.render_categories = false;

						slider.change_category();

						return;
					}

					slider.show_item(current.item.index + 1);
				},

				prev: function () {
					var prev_cat_index,
						num_of_categories = slider_content.length;

					if (!option.cycle_current_category && current.item.index == 0) {
						prev_cat_index = selected_categories.indexes.pop() - 1;

						if (selected_categories.indexes.length != 0)
							num_of_categories = slider.get_category(selected_categories.indexes).children.length;

						if (prev_cat_index < 0)
							selected_categories.indexes.push(num_of_categories - 1);
						else
							selected_categories.indexes.push(prev_cat_index);

						selected_categories.ids = slider.category_ids_from_indexes(selected_categories.indexes);

						current.category = slider.get_category(selected_categories.indexes);
						current.category.item_count = current.category.items.length;

						current.item = {
							id: current.category.items[current.category.items.length - 1].id,
							index: current.category.items.length - 1
						};

						rendering.categories.render_categories = false;

						slider.change_category();

						return;
					}

					slider.show_item(current.item.index - 1);
				},

				pagination: {
					init: function () {
						var $page;

						$pagination = $('<div class="pagination" />');
						$pagination_pages_container = $('<ul class="pages_container" />');

						$pagination.append($pagination_pages_container);

						$pagination.css('visibility', 'hidden');

						$t.prepend($pagination);

						slider.position_element($pagination, option.pagination.position);

						$page = $('<li><span></span></li>');
						$pagination_pages_container.append($page);

						rendering.pagination.page.width = $page.outerWidth(true);
						rendering.pagination.page.height = $page.outerHeight(true);

						$pagination.css('visibility', '');

						slider.pagination.display_category();
						slider.pagination.select(current.item.index);

						$pagination_pages_container
							.delegate('li', 'click', function () {
								slider.show_item($(this).index());

								return false;
							});
					},

					display_category: function () {
						if (!option.pagination.display)
							return;

						var i = 0,
							pages_html = '';

						$pagination.css('display', 'none');

						$pagination_pages_container.html('');

						rendering.pagination.pages_at_once = current.category.item_count < option.pagination.pages_at_once ? current.category.item_count : option.pagination.pages_at_once;

						if (option.pagination.direction === 'horizontal') {
							$pagination.addClass('horizontal');

							$pagination.width(rendering.pagination.pages_at_once * rendering.pagination.page.width);
							$pagination.height(rendering.pagination.page.height);

							$pagination_pages_container.width(current.category.item_count * rendering.pagination.page.width);
							$pagination_pages_container.height(rendering.pagination.page.height);
						} else {
							$pagination.addClass('vertical');

							$pagination.width(rendering.pagination.page.width);
							$pagination.height(rendering.pagination.pages_at_once * rendering.pagination.page.height);

							$pagination_pages_container.width(rendering.pagination.page.width);
							$pagination_pages_container.height(current.category.item_count * rendering.pagination.page.height);
						}

						for (; i < current.category.item_count; i++)
							pages_html += '<li><span></span></li>';

						$pagination_pages = $(pages_html);
						$pagination_pages_container.append($pagination_pages);

						$pagination.css('display', '');
					},

					select: function (index) {
						if (!option.pagination.display)
							return;

						var offset_pages = Math.floor(rendering.pagination.pages_at_once / 2),
							align_to_page = index - offset_pages,
							to_animate = {};

						if (align_to_page < 0) {
							align_to_page = 0;
						} else if (index >= current.category.item_count - offset_pages) {
							align_to_page = current.category.item_count - rendering.pagination.pages_at_once;
						}

						if (option.pagination.direction == 'horizontal') {
							to_animate = {
								left: - (align_to_page * rendering.pagination.page.width)
							};
						} else {
							to_animate = {
								top: - (align_to_page * rendering.pagination.page.height)
							};
						}

						$pagination_pages_container.stop().animate(to_animate, 250);

						$pagination_pages.removeClass('current');
						$pagination_pages.eq(index).addClass('current');
					}
				},

				social_buttons: {
					init: function () {
						$social_buttons = $('<div class="social_buttons ' + option.social_buttons.direction + '" />');

						if (option.social_buttons.hideable) {
							$social_buttons_toggle = $('<div class="social_buttons_toggle ' + option.social_buttons.direction + '" />');
							$t.prepend($social_buttons_toggle);
							slider.position_element($social_buttons_toggle, option.social_buttons.position);

							$social_buttons
								.fadeTo(200, 0, function () {
									$social_buttons.hide();
								})
								.data('visible', false);
							$t.prepend($social_buttons);
							slider.position_element($social_buttons, $.extend({}, option.social_buttons.position, {h_offset: option.social_buttons.position.h_offset + $social_buttons_toggle.outerWidth(true) + 5}));

							$social_buttons_toggle.click(function () {
								if ($social_buttons.data('visible')) {
									$social_buttons
										.data('visible', false)
										.stop()
										.fadeTo(200, 0, function () {
											$social_buttons
												.empty()
												.hide();
										});

									$social_buttons_toggle.removeClass('active');
								} else {
									$social_buttons
										.data('visible', true)
										.stop()
										.fadeTo(200, 1);

									slider.social_buttons.display(current.item.index);

									$social_buttons_toggle.addClass('active');
								}
							});
						} else {
							$t.prepend($social_buttons);
							slider.position_element($social_buttons, option.social_buttons.position);
						}

						slider.social_buttons.display(current.item.index);
					},

					display: function (index) {
						if (!option.social_buttons.display || (option.social_buttons.hideable && !$social_buttons.data('visible')))
							return;

						var button_html = '',
							social_button_href = '';

						$social_buttons.html('');

						if (typeof current.category.items[index].social_button_url == 'string') {
							social_button_href = current.category.items[index].social_button_url;
						} else {
							if (location.href.indexOf('#') == -1) {
								social_button_href = location.href;
							} else {
								social_button_href = location.href.substring(0, location.href.indexOf('#'));
							}

							social_button_href = slider.set_url_param(slider.set_url_param(social_button_href, 'edgpid', current.category.items[index].id), 'edgmid', option.module_id) + '#slider_' + option.module_id + '/' + selected_categories.ids.join('-') + '/' + current.category.items[index].id + '/';
						}

						var button;

						for (button in option.social_buttons.buttons) {
							if (option.social_buttons.buttons[button].display) {
								button_html += '<div class="social_button">';

								button_html += option.social_buttons.buttons[button].html
									.replace(/{location_href}/g, social_button_href)
									.replace(/{location_href_encoded}/g, encodeURIComponent(social_button_href));

								button_html += '</div>';
							}
						}

						if (autoplay.transition_in_progres && option.social_buttons.load_after_effect) {
							$t.unbind('slider_transition_finnished.social_buttons');

							$t.bind('slider_transition_finnished.social_buttons', function () {
								$social_buttons
									.html('')
									.append(button_html);
							});
						} else {
							$social_buttons.append(button_html);
						}
					}
				},

				_button: {
					init: function (params) {
						rendering.buttons[params.type] = $('<a class="standalone_button' + (params.custom_class ? ' ' + params.custom_class : '') + '" href="#">' + params.text + '</a>');

						$t.prepend(rendering.buttons[params.type]);
						slider.position_element(rendering.buttons[params.type], option.buttons[params.type].position);
					},

					display: function (params) {
						params.target = typeof params.target == 'string' ? params.target : '_self'

						rendering.buttons[params.type].attr({
							href: params.href,
							target: params.target
						});
					}
				},

				email_button: {
					init: function () {
						slider._button.init({
							type: 'email',
							custom_class: 'email',
							text: 'Email this'
						});

						slider.email_button.display(current.item.index);
					},

					display: function (index) {
						var hash_location = location.href.indexOf('#'),
							href;

						if (!option.buttons.email.display)
							return;

						if (hash_location == -1)
							href = location.href
						else
							href = location.href.substring(0, hash_location);

						href += '#slider_' + option.module_id + '/' + selected_categories.ids.join('-') + '/' + current.category.items[current.item.index].id;

						slider._button.display({
							type: 'email',
							href: 'mailto:?subject=' + escape(option.buttons.email.email_subject) + '&body=' + encodeURIComponent(href)
						});
					}
				},

				download_button: {
					init: function () {
						slider._button.init({
							type: 'download',
							custom_class: 'download',
							text: 'Download'
						});

						slider.download_button.display(current.item.index);
					},

					display: function (index) {
						var url = current.category.items[index].download_url;

						if (!option.buttons.download.display)
							return;

						url = !url ? '#' : url;

						slider._button.display({
							type: 'download',
							href: url,
							target: '_blank'
						});

						if (url == '#')
							rendering.buttons.download.stop().fadeTo(200, 0);
						else
							rendering.buttons.download.stop().fadeTo(200, 1);
					}
				},

				fullscreen_button: {
					init: function () {
						slider._button.init({
							type: 'fullscreen',
							custom_class: 'fullscreen',
							text: 'Fullscreen'
						});

						rendering.buttons.fullscreen.click(function () {
							$(this)[pluginName + '_fullscreen'](option.fullscreen_options);

							return false;
						});
					}
				},

				exit_fullscreen: {
					init: function () {
						slider._button.init({
							type: 'exit_fullscreen',
							custom_class: 'exit_fullscreen',
							text: 'Exit fullscreen'
						});
					}
				},

				main_panel: {
					init: function () {
						var touch_events_present,
							mousedown = 'mousedown',
							mousemove = 'mousemove',
							mouseup = 'mouseup';

						$main_panel = $('<div class="main_panel" />');

						slider.main_panel.size();

						$main_panel_items_wrapper = $('<div class="items_wrapper" />');

						$main_panel.append($main_panel_items_wrapper);

						$t.prepend($main_panel);

						if (option.redirect_on_click || option.lightbox_on_click) {
							$main_panel_media_link = $('<a href="#" class="media_link" />');

							if (option.redirect_on_click)
								$main_panel_media_link.attr('target', option.redirect_on_click_target);

							$main_panel.append($main_panel_media_link);
						}

						$main_panel.append('<div class="preloading_item" />');

						if (!option.redirect_on_click && option.lightbox_on_click) {
							$lightbox_links_container = $('<div class="lightbox_links_container" style="display: none;"></div>');
							$main_panel_items_wrapper.append($lightbox_links_container);
						}

						$t.bind('slider_transition_finnished.main_panel', function () {
							autoplay.transition_in_progres = false;
						});

						slider.main_panel.display_category(true);

						if (!rendering.preloading_item) {
							slider.main_panel.display(current.item.index, '');
							slider.triggers();
						}

						if (option.main_panel.drag_navigation) {
							touch_events_present = 'ontouchstart' in window;

							if (touch_events_present) {
								mousedown = 'touchstart';
								mousemove = 'touchmove';
								mouseup = 'touchend';
							}

							$main_panel
								.delegate('a', 'click', function (e) {
									if (rendering.main_panel.disable_clicking)
										e.preventDefault();
								})
								.bind(mousedown + '.chameleon_' + option.module_id, function (e) {
									if (touch_events_present)
										if (e.originalEvent.touches && e.originalEvent.touches.length)
											e = e.originalEvent.touches[0];
										else if (e.originalEvent.changedTouches && e.originalEvent.changedTouches.length)
											e = e.originalEvent.changedTouches[0];

									$main_panel.data('dragging', {
										start_position: {
											left: e.pageX,
											top: e.pageY
										}
									});

									e.preventDefault();
								});

							$(document)
								.bind(mousemove + '.chameleon_' + option.module_id, function (e) {
									var position_delta,
										start_position;

									if (typeof $main_panel.data('dragging') != 'object')
										return;

									start_position = $main_panel.data('dragging').start_position;

									rendering.main_panel.disable_clicking = true;

									if (touch_events_present)
										if (e.originalEvent.touches && e.originalEvent.touches.length)
											e = e.originalEvent.touches[0];
										else if (e.originalEvent.changedTouches && e.originalEvent.changedTouches.length)
											e = e.originalEvent.changedTouches[0];

									if (Math.abs((start_position.top - e.pageY)/(e.pageX - start_position.left)) >= 1)
										return;

									position_delta = start_position.left - e.pageX;

									if (Math.abs(position_delta) < 50)
										return false;

									$main_panel.data('dragging', false);

									if (position_delta < 0)
										slider.prev();
									else
										slider.next();
								})
								.bind(mouseup + '.chameleon_' + option.module_id, function (e) {
									$main_panel.data('dragging', false);

									rendering.main_panel.disable_clicking_interval = setTimeout(function () {
										rendering.main_panel.disable_clicking = false;
									}, 10);
								});
						}

						rendering.main_panel.initialized = true;
					},

					size: function () {
						if (!option.main_panel.display)
							return;

						rendering.main_panel.dimensions = slider.get_dimensions(option.main_panel.dimensions);

						rendering.main_panel.dimensions.height -= option.main_panel.trim.top + option.main_panel.trim.bottom;
						rendering.main_panel.dimensions.width -= option.main_panel.trim.left + option.main_panel.trim.right;

						slider.position_element($main_panel, option.main_panel.position);

						$main_panel
							.width(rendering.main_panel.dimensions.width)
							.height(rendering.main_panel.dimensions.height);
					},

					display_category: function (first_run) {
						var lightbox_links_html = '',
							i = 0,
							item,
							current_item = current.category.items[current.item.index],
							smb_items = [];

						if (!option.main_panel.display)
							return;

						if (is_image_item(current_item)) {
							rendering.preloading_item = true;

							if (first_run) {
								$('<img />')
									.load(function () {
										rendering.preloading_item = false;

										slider.main_panel.display(current.item.index, '');
										slider.triggers();
									})
									.error(function () {
										rendering.preloading_item = false;

										slider.triggers();
									})
									.attr('src', current_item.src);
							} else {
								$main_panel.addClass('loading_category');
								var loadingCallback = function () {
									rendering.preloading_item = false;

									slider.main_panel.display(current.item.index, '');
									$main_panel.removeClass('loading_category');
								};

								$('<img />')
									.load(loadingCallback)
									.error(loadingCallback)
									.attr('src', current_item.src);
							}
						}

						for (; i < current.category.item_count; i++) {
							item = current.category.items[i];

							if (option.main_panel.immediately_preload_all_images) {
								if (is_image_item(item) && !rendering.preloaded_images[item.src]) {
									rendering.preloaded_images[item.src] = {
										loading: true,
										loaded: false
									};

									$('<img />')
										.load({src: item.src}, function (e) {
											rendering.preloaded_images[e.data.src] = {
												loading: false,
												loaded: true,
												width: this.width,
												height: this.height
											};
										})
										.attr('src', item.src);
								}
							}

							if (!option.redirect_on_click && option.lightbox_on_click) {
								var item_href,
									item_download,
									item_image;

								if (item.type == 'image' || item.type == 'video' || item.type == 'audio') {
									item_href = item.lightbox_url;
									item_download = item.download_url ? item.download_url : '';
									item_image = item.src;
								} else {
									item_href = '';
									item_download = '';
									item_image = '';
								}

								if (option.fullscreen_provider == 'pp') {
									if (item_href)
										lightbox_links_html += '<a href="' + item_href +
											'" rel="prettyPhoto_M' + option.module_id +
											'" edgmid="' + option.module_id +
											'" edgpid="' + item.id +
											'" downhref="' + item_download +
											(option.lightbox_description && item.info ? '" pptitle="' + item.info.replace('"', '&quot;') : '') +
											'"><img src="' + item_image + '" alt="' +
											(option.lightbox_title && item.title ? item.title : '') + '" /></a>';
								} else if (option.fullscreen_provider == 'smb') {
									if ($.isPlainObject(item.smb_object) && !$.isEmptyObject(item.smb_object))
										smb_items.push(item.smb_object);
								} else if (option.fullscreen_provider == 'smbLight') {
									if ($.isPlainObject(item.smbLight_object) && !$.isEmptyObject(item.smbLight_object))
										smb_items.push(item.smbLight_object);
								}
							}
						}

						if (!option.redirect_on_click && option.lightbox_on_click) {
							if (option.fullscreen_provider == 'pp') {
								$lightbox_links_container.html(lightbox_links_html);
								$lightbox_links = $lightbox_links_container.find('> a');

								$lightbox_links.prettyPhoto(option.pretty_photo_options);
							} else if (option.fullscreen_provider == 'smb') {
								$lightbox_links_container.data('socialMediaBox', smb_items);
							} else if (option.fullscreen_provider == 'smbLight') {
								$lightbox_links_container.data('smbLightItems', smb_items);
							}
						}
					},

					display: function (item_index) {
						var transition_effect = '',
							effect_object = '',
							random_effect_index,
							item = current.category.items[item_index];

						if (!option.main_panel.display)
							return;

						autoplay.transition_in_progres = true;

						$main_panel_media_link.unbind('click');

						if (arguments.length == 2) {
							effect_object = transition_effect = arguments[1];
						} else if (option.main_panel.transition.effects.length == 1) {
							effect_object = transition_effect = option.main_panel.transition.effects[0];
						} else if (option.main_panel.transition.effects.length > 1) {
							random_effect_index = Math.floor(Math.random() * option.main_panel.transition.effects.length);

							effect_object = transition_effect = option.main_panel.transition.effects[random_effect_index];
						}

						if (item.type == 'image') {
							$main_panel_media_link.css('display', 'block');

							if (option.redirect_on_click)
								$main_panel_media_link.attr('href', (typeof item.on_click_url == 'string' && item.on_click_url ? item.on_click_url : '#'));
						} else if (item.type == 'video' || item.type == 'audio') {
							transition_effect = '';
							effect_object = '';

							if (option.redirect_on_click || (typeof item.html != 'undefined' && item.html != '')) {
								$main_panel_media_link.css('display', 'none');
							} else {
								$main_panel_media_link.css('display', 'block');
							}
						} else if (item.type == 'html') {
							effect_object = '';

							if (transition_effect != 'fade')
								transition_effect = 'show';
						}

						if (!option.redirect_on_click && option.lightbox_on_click) {
							$main_panel_media_link
								.attr('href', '#')
								.click(function () {
									var smbLightItems;

									if (rendering.main_panel.disable_clicking)
										return false;

									if (option.fullscreen_provider == 'pp')
										$lightbox_links.filter('a[edgpid="' + item.id + '"]').trigger('click');
									else if (option.fullscreen_provider == 'smb') {
										option.smb_options.openAt = 0;
										$.each($lightbox_links_container.data('socialMediaBox'), function (i, smb_item) {
											if (smb_item.id === item.id) {
												option.smb_options.openAt = i;
												return false;
											}
										});
										$lightbox_links_container.socialMediaBox(option.smb_options);
									} else if (option.fullscreen_provider == 'smbLight') {
										smbLightItems = $lightbox_links_container.data('smbLightItems');

										option.smbLight_options.openAt = 0;
										$.each(smbLightItems, function (i, smb_item) {
											if (smb_item.id === item.id) {
												option.smbLight_options.openAt = i;
												return false;
											}
										});

										new SmbLight_1(smbLightItems, option.smbLight_options);
									}

									return false;
								});
						}

						if (typeof effect_object == 'object')
							transition_effect = effect_object.type;
						else if (transition_effect == '')
							transition_effect = 'show';

						if (rendering.youtube_player_object != undefined) {
							rendering.youtube_player_object.getIframe().src = '';
							rendering.youtube_player_object.stopVideo();
							rendering.youtube_player_object = undefined;
						}

						var _display = function (item_src) {
							if (!option.main_panel.immediately_preload_all_images && !rendering.item_details_shown) {
								slider.social_buttons.display(current.item.index);
								slider.item_title.select(current.item.index);
								slider.item_info.display(current.item.index);
								slider.download_button.display(current.item.index);
								slider.email_button.display(current.item.index);
							}

							slider.main_panel._transitions[transition_effect]({
								item_index: item_index,
								effect_settings: effect_object,
								item_src: (item_src ? item_src : item.src)
							});

							if (option.main_panel.fill_panel && is_image_item(item))
								slider.main_panel._fit_image($main_panel_items_wrapper.find('> .item_container').filter(':last').find('> img'));

							if (option.main_panel.immediately_preload_all_images)
								return;

							var nextItem = current.category.items[current.item.index + 1];

							if (!nextItem || !is_image_item(nextItem))
								return;

							var nextItemSrc = get_item_src(nextItem);

							if (rendering.preloaded_images[nextItemSrc])
								return;

							rendering.preloaded_images[nextItemSrc] = {
								loading: true,
								loaded: false
							};

							var current_category_id = current.category.id,
								current_item_index = current.item.index + 1;

							$('<img />')
								.load(function (e) {
									rendering.preloaded_images[nextItemSrc] = {
										loading: false,
										loaded: true,
										width: this.width,
										height: this.height
									};

									if (current_category_id != current.category.id || current_item_index != current.item.index)
										return;

									_display(nextItemSrc);

									slider.main_panel.remove_loading_effect('loading_item');
								})
								.attr('src', nextItemSrc);
						};

						if (is_image_item(item)) {
							if (option.main_panel.immediately_preload_all_images) {
								_display();
							} else {
								var item_src = get_item_src(item);

								if (rendering.preloaded_images[item_src]) {
									if (rendering.preloaded_images[item_src].loaded) {
										_display(item_src);
										slider.main_panel.remove_loading_effect('loading_item');
									}
								} else {
									slider.main_panel.show_loading_effect('loading_item');

									rendering.preloaded_images[item_src] = {
										loading: true,
										loaded: false
									};

									var current_category_id = current.category.id,
										current_item_index = current.item.index;

									$('<img />')
										.load(function (e) {
											rendering.preloaded_images[item_src] = {
												loading: false,
												loaded: true,
												width: this.width,
												height: this.height
											};

											if (current_category_id != current.category.id || current_item_index != current.item.index)
												return;

											_display(item_src);

											slider.main_panel.remove_loading_effect('loading_item');
										})
										.attr('src', item_src);
								}
							}
						} else {
							_display();
						}
					},

					show_loading_effect: function (element_class) {
						clearTimeout($main_panel.data('loading_effect_timeout'));
						$main_panel.addClass(element_class + ' loading_effect show_preload');
					},

					remove_loading_effect: function (element_class) {
						$main_panel.removeClass('show_preload');
						$main_panel.data(
							'loading_effect_timeout',
							setTimeout(
								function () {
									$main_panel.removeClass(element_class + ' loading_effect');
								},
								400
							)
						);
					},

					_fit_image: function ($img) {
						var src = $img.attr('src'),
							img_preload = rendering.preloaded_images[src],
							fit_image = function ($img, img_preload) {
								var mpw = rendering.main_panel.dimensions.width,
									mph = rendering.main_panel.dimensions.height,
									resize_ratio,
									image_height,
									image_width;

								if (img_preload.width == mpw && img_preload.height == mph)
									return;

								$img.css({
									position: 'relative'
								});

								if (img_preload.width > mpw || img_preload.height > mph || option.main_panel.stretch_small_image) {
									$img.css({
										width: '100%',
										height: 'auto'
									});

									resize_ratio = mpw / img_preload.width;
									image_height = Math.floor(img_preload.height * resize_ratio);

									if (image_height < mph) {
										resize_ratio = mph / img_preload.height;
										image_width = Math.floor(img_preload.width * resize_ratio);

										$img.css({
											height: '100%',
											width: 'auto'
										});

										if (!option.main_panel.top_left_align)
											$img.css({
												left: -Math.floor((image_width - mpw) / 2)
											});
									} else if (image_height > mph && !option.main_panel.top_left_align)
										$img.css({
											top: -Math.floor((image_height - mph) / 2)
										});
								} else {
									if (!option.main_panel.top_left_align) {
										if (img_preload.width < mpw)
											$img.css({
												left: Math.floor((mpw - img_preload.width) / 2)
											});

										if (img_preload.height < mph)
											$img.css({
												top: Math.floor((mph - img_preload.height) / 2)
											});
									}
								}
							};

						if (img_preload && img_preload.loaded) {
							fit_image($img, img_preload);
						} else {
							$('<img />')
								.load({'src': src, '$img': $img}, function (e) {
									rendering.preloaded_images[e.data.src] = {
										loading: false,
										loaded: true,
										width: this.width,
										height: this.height
									};

									fit_image(e.data.$img, rendering.preloaded_images[e.data.src]);
								})
								.attr('src', src);
						}
					},

					_transitions: {
						show: function (args) {
							var next_item_html = '<div class="item_container new_item">',
								current_item = current.category.items[args.item_index],
								$next_item,
								$last_item = $main_panel_items_wrapper.find('> .item_container').eq(0),
								item_html = typeof current_item.html == 'undefined' || current_item.html == '' ? '' : current_item.html,
								video_src,
								video_provider = '',
								video_id,
								video_container_id,
								flash_autoplay_manipulation = false,
								image_alt = '';

							if ((current_item.type == 'html' || current_item.type == 'video' || current_item.type == 'audio') && item_html) {
								video_src = typeof current_item.video_src == 'undefined' || current_item.video_src == '' ? '' : current_item.video_src;

								if (video_src == '') {
									if (option.autoplay.enable) {
										video_provider = slider._video.get_provider(item_html);
										video_id = slider._video.get_video_id(video_provider, item_html);
									}
								} else {
									video_provider = option.inhouse_player;
									video_id = video_src;
								}

								if (video_provider === '') {
									next_item_html += item_html;
								} else {
									flash_autoplay_manipulation = true;
									video_container_id = 'chameleon_video_container_' + option.module_id + '_' + selected_categories.indexes.join('-') + '_' + current.item.index + '_' + Math.round(Math.random() * 100000);
									next_item_html += '<div id="' + video_container_id + '"></div>';
								}
							} else {
								image_alt = typeof current_item.thumb == 'object' && current_item.thumb.caption ? current_item.thumb.caption : '';
								next_item_html += '<img alt="' + image_alt + '" src="' + args.item_src + '" />';
							}

							next_item_html += '</div>';

							$next_item = $(next_item_html);

							$main_panel_items_wrapper.find('> .item_container.new_item').removeClass('new_item');

							$next_item
								.css({
									width: rendering.main_panel.dimensions.width,
									height: rendering.main_panel.dimensions.height
								})
								.appendTo($main_panel_items_wrapper);

							if (flash_autoplay_manipulation)
								slider._video.player_setup({
									container: video_container_id,
									provider: video_provider,
									id: video_id,
									dimensions: rendering.main_panel.dimensions
								});

							if (!$last_item.hasClass('new_item'))
								$last_item.remove();

							if (!flash_autoplay_manipulation)
								$t.trigger('slider_transition_finnished');
						},

						fade: function (args) {
							var current_item = current.category.items[args.item_index],
								image_alt = typeof current_item.thumb == 'object' && current_item.thumb.caption ? current_item.thumb.caption : '',
								item_html = typeof current_item.html == 'undefined' || current_item.html == '' ? '' : current_item.html,
								$next_item;

							if (current_item.type == 'image') {
								$next_item = $('<div class="item_container new_item"><img alt="' + image_alt + '" src="' + args.item_src + '" /></div>');
							} else if (item_html) {
								$next_item = $('<div class="item_container new_item">' + item_html + '</div>');
							}

							$main_panel_items_wrapper.find('> .item_container.new_item').removeClass('new_item');

							$next_item
								.css({
									width: rendering.main_panel.dimensions.width,
									height: rendering.main_panel.dimensions.height,
									display: 'none'
								})
								.appendTo($main_panel_items_wrapper)
								.fadeIn(option.main_panel.transition.duration, function () {
									var $last_item = $main_panel_items_wrapper.find('> .item_container').eq(0);

									if (!$last_item.hasClass('new_item')) {
										$last_item.remove();
									}

									$t.trigger('slider_transition_finnished');
								});
						},

						slide: function (args) {
							var current_item = current.category.items[args.item_index],
								image_alt = typeof current_item.thumb == 'object' && current_item.thumb.caption ? current_item.thumb.caption : '',
								$next_item = $('<div class="item_container new_item"><img alt="' + image_alt + '" src="' + args.item_src + '" /></div>'),
								$prev_item = $main_panel_items_wrapper.find('> .item_container').filter(':last'),
								slide_direction = 'left',
								slide_ended = function () {
									var $last_item = $main_panel_items_wrapper.find('> .item_container').eq(0);

									if (!$last_item.hasClass('new_item')) {
										$last_item.remove();
									}

									$t.trigger('slider_transition_finnished');
								};

							if (args.effect_settings.force_horizontal) {
								if (previous_item_index < args.item_index)
									slide_direction = 'left';
								else
									slide_direction = 'right';
							} else if (args.effect_settings.force_vertical) {
								if (previous_item_index < args.item_index)
									slide_direction = 'up';
								else
									slide_direction = 'down';
							} else {
								if (args.effect_settings.directions.length == 1) {
									slide_direction = args.effect_settings.directions[0];
								} else if (args.effect_settings.directions.length > 1) {
									slide_direction = args.effect_settings.directions[Math.floor(Math.random() * args.effect_settings.directions.length)];
								}
							}

							$main_panel_items_wrapper.find('> .item_container.new_item').removeClass('new_item');

							$next_item
								.css({
									width: rendering.main_panel.dimensions.width,
									height: rendering.main_panel.dimensions.height
								});

							switch (slide_direction) {
							case 'down':
								$next_item
									.css('top', - (rendering.main_panel.dimensions.height))
									.appendTo($main_panel_items_wrapper)
									.animate({top: 0}, option.main_panel.transition.duration, 'swing', slide_ended);

								$prev_item
									.animate({top: rendering.main_panel.dimensions.height}, option.main_panel.transition.duration, 'swing');
								break;

							case 'up':
								$next_item
									.css('top', rendering.main_panel.dimensions.height)
									.appendTo($main_panel_items_wrapper)
									.animate({top: 0}, option.main_panel.transition.duration, 'swing', slide_ended);

								$prev_item
									.animate({top: - (rendering.main_panel.dimensions.height)}, option.main_panel.transition.duration, 'swing');
								break;

							case 'right':
								$next_item
									.css('left', - (rendering.main_panel.dimensions.width))
									.appendTo($main_panel_items_wrapper)
									.animate({left: 0}, option.main_panel.transition.duration, 'swing', slide_ended);

								$prev_item
									.animate({left: rendering.main_panel.dimensions.width}, option.main_panel.transition.duration, 'swing');
								break;

							default:
								$next_item
									.css('left', rendering.main_panel.dimensions.width)
									.appendTo($main_panel_items_wrapper)
									.animate({left: 0}, option.main_panel.transition.duration, 'swing', slide_ended);

								$prev_item
									.animate({left: - (rendering.main_panel.dimensions.width)}, option.main_panel.transition.duration, 'swing');
							}
						},

						stripes: function (args) {
							var stripe_width = 0,
								stripe_height = 0,
								last_stripe_width = 0,
								last_stripe_height = 0,
								strip_top = 0,
								strip_left = 0,
								strip_background_top = 0,
								strip_background_left = 0,
								$stripe,

								image_top_offset = 0,
								image_left_offset = 0,

								item_src = args.item_src,

								effect_settings = $.extend(true, {
									orientation: 'vertical',
									num_of_stripes: 12,
									direction: 0, // 0 = bottom/right, 1 = top/left, 2 = alternating
									start_at: 0, // 0 = top/left, 1 = bottom/right, 2 = center, 3 = outer
									randomize: {
										orientation: false,
										direction: false,
										start_at: false
									}
								}, args.effect_settings),

								fx_duration = Math.floor(option.main_panel.transition.duration / effect_settings.num_of_stripes),

								$next_item = $('<div class="item_container new_item"></div>'),
								slide_ended = function () {
									var $last_item = $main_panel_items_wrapper.find('> .item_container').eq(0);

									if (!$last_item.hasClass('new_item')) {
										$last_item.remove();
									}

									$t.trigger('slider_transition_finnished');
								},

								create_stripe = function ($stripe, i) {
									var w = stripe_width,
										h = stripe_height,
										start_animation = function () {
											var props;

											if (effect_settings.orientation == 'horizontal') {
												props = {left: 0, opacity: 1};
											} else {
												props = {top: 0, opacity: 1};
											}

											$stripe.animate(props, {
												duration: option.main_panel.transition.duration,
												easing: 'swing',
												complete: function () {
													if (effect_settings.start_at == 0 || effect_settings.start_at == 2) {
														if (i + 1 == effect_settings.num_of_stripes) {
															slide_ended();
														}
													} else if (effect_settings.start_at == 1) {
														if (i == 0) {
															slide_ended();
														}
													} else {
														if (i == Math.floor(effect_settings.num_of_stripes / 2)) {
															slide_ended();
														}
													}
												}
											});
										};

									if (effect_settings.orientation == 'horizontal') {
										strip_top = i * stripe_height;

										if (effect_settings.direction === 0) {
											strip_left = - (stripe_width);
										} else if (effect_settings.direction === 1) {
											strip_left = stripe_width;
										} else {
											if (i % 2 == 0) {
												strip_left = - (stripe_width);
											} else {
												strip_left = stripe_width;
											}
										}

										strip_background_top = image_top_offset - strip_top;
										strip_background_left = image_left_offset;
									} else {
										strip_left = i * stripe_width;

										if (effect_settings.direction === 0) {
											strip_top = - (stripe_height);
										} else if (effect_settings.direction === 1) {
											strip_top = stripe_height;
										} else {
											if (i % 2 == 0) {
												strip_top = - (stripe_height);
											} else {
												strip_top = stripe_height;
											}
										}

										strip_background_top = image_top_offset;
										strip_background_left = image_left_offset - strip_left;
									}

									if (i + 1 == effect_settings.num_of_stripes) {
										w = last_stripe_width;
										h = last_stripe_height;
									}

									$stripe = $('<div class="fancy_effect_element" />');

									$stripe.css({
											width: w,
											height: h,
											top: strip_top,
											left: strip_left,
											opacity: 0,
											background: 'url(\'' + item_src + '\') no-repeat '+strip_background_left+'px '+strip_background_top+'px ' + $t.css('background-color')
										})
										.appendTo($next_item);

									if (effect_settings.start_at === 0) {
										setTimeout(start_animation, (i * fx_duration + 1));
									} else if (effect_settings.start_at == 1) {
										setTimeout(start_animation, ((effect_settings.num_of_stripes - 1 - i) * fx_duration + 1));
									} else if (effect_settings.start_at == 2 || effect_settings.start_at == 3) {
										var multiplyer = 0,
											middle;

										if (effect_settings.num_of_stripes % 2 == 0) {
											middle = effect_settings.num_of_stripes / 2;
											if (i < middle) {
												if (effect_settings.start_at == 3) {
													multiplyer = i;
												} else {
													multiplyer = Math.abs(i - middle + 1);
												}
											} else {
												multiplyer = i - middle;
												if (effect_settings.start_at == 3) {
													multiplyer = middle - 1 - multiplyer;
												}
											}
										} else {
											middle = Math.floor(effect_settings.num_of_stripes / 2);
											if (i < middle) {
												multiplyer = middle - i;
											} else {
												multiplyer = i - middle;
											}
											if (effect_settings.start_at == 3) {
												multiplyer = middle - multiplyer;
											}
										}

										setTimeout(start_animation, (multiplyer * fx_duration + 1));
									}
								};

							if (effect_settings.randomize.orientation) {
								if (Math.floor(Math.random() * 2) == 0) {
									effect_settings.orientation = 'horizontal';
								} else {
									effect_settings.orientation = 'vertical';
								}
							}

							if (effect_settings.randomize.direction) {
								effect_settings.direction = Math.floor(Math.random() * 3);
							}

							if (effect_settings.randomize.start_at) {
								effect_settings.start_at = Math.floor(Math.random() * 4);
							}

							$main_panel_items_wrapper.find('> .item_container.new_item').removeClass('new_item');

							$next_item
								.css({
									width: rendering.main_panel.dimensions.width,
									height: rendering.main_panel.dimensions.height
								})
								.appendTo($main_panel_items_wrapper);

							if (effect_settings.orientation == 'horizontal') {
								last_stripe_width = stripe_width = rendering.main_panel.dimensions.width;

								stripe_height = Math.ceil(rendering.main_panel.dimensions.height / effect_settings.num_of_stripes);
								last_stripe_height = stripe_height * effect_settings.num_of_stripes - rendering.main_panel.dimensions.height;
								if (last_stripe_height == 0) {
									last_stripe_height = stripe_height;
								} else {
									last_stripe_height = stripe_height - last_stripe_height;
								}
							} else {
								last_stripe_height = stripe_height = rendering.main_panel.dimensions.height;

								stripe_width = Math.ceil(rendering.main_panel.dimensions.width / effect_settings.num_of_stripes);
								last_stripe_width = stripe_width * effect_settings.num_of_stripes - rendering.main_panel.dimensions.width;
								if (last_stripe_width == 0) {
									last_stripe_width = stripe_width;
								} else {
									last_stripe_width = stripe_width - last_stripe_width;
								}
							}

							(function (img) {
								var mpw = rendering.main_panel.dimensions.width,
									mph = rendering.main_panel.dimensions.height;

								if (img.width == mpw && img.height == mph)
									return;

								if (img.width < mpw)
									image_left_offset = Math.floor((mpw - img.width) / 2);
								else if (img.width > mpw)
									image_left_offset = - Math.floor((img.width - mpw) / 2);

								if (img.height < mph)
									image_top_offset = Math.floor((mph - img.height) / 2);
								else if (img.height > mph)
									image_top_offset = - Math.floor((img.height - mph) / 2);
							})(rendering.preloaded_images[item_src]);

							for (var i = 0; i < effect_settings.num_of_stripes; i++) {
								create_stripe($stripe, i);
							}
						}
					}
				},

				_on_pre_item_change: undefined,

				_video: {
					get_provider: function (embed_code) {
						if (embed_code.substring(0, 7) == '<iframe')
							if (embed_code.indexOf('youtube.com/embed/', 7) !== -1)
								return 'youtube';
							else if (embed_code.indexOf('player.vimeo.com/video/', 7) !== -1)
								return 'vimeo';

						return '';
					},

					get_video_id: function (provider, embed_code) {
						var url,
							url_has_params;

						switch (provider) {
						case 'youtube':
						case 'vimeo':
							url = $('<div>' + embed_code + '</div>').find('iframe:first').attr('src');
							url_has_params = url.indexOf('?');

							if (url_has_params !== -1)
								url = url.substring(0, url_has_params);

							if (url[url.length - 1] == '/')
								url = url.substring(0, url.length - 1);

							return url.substring(url.lastIndexOf('/') + 1);

						default:
							return '';
						}
					},

					player_setup: function (param) {
						var $container = $('#' + param.container);

						$container.css(param.dimensions);

						param.container = $container;

						switch (param.provider) {
						case 'youtube':
							slider._video._youtube_player(param);
							break;

						case 'vimeo':
							slider._video._vimeo_player(param);
							break;

						case 'flowplayer':
							slider._video._flow_player(param);
							break;

						default:
						}
					},

					_youtube_player: function (param) {
						var player_id = param.container.attr('id') + '_object',
							player_html = '<iframe allowFullScreen="allowFullScreen" id="' + player_id + '" type="text/html" width="' + param.dimensions.width + '" height="' + param.dimensions.height + '" ' +
								'src="//www.youtube.com/embed/' + param.id + '?enablejsapi=1&amp;wmode=transparent&amp;origin=' + location.protocol + '//' + location.host + '" ' +
								'frameborder="0"></iframe>',

							srcipt_tag,
							first_script_tag,

							yt_player,
							setup_player = function () {
								yt_player = new YT.Player(player_id, {
									events: {
										'onReady': function () {
											rendering.youtube_player_object = yt_player;
											$t.trigger('slider_transition_finnished');

											if (option.autoplay.autostart_video_playback)
												yt_player.playVideo();
										},
										'onStateChange': function (e) {
											switch (e.data) {
											case YT.PlayerState.PLAYING:
												autoplay.video_playing = true;
												slider.autoplay.reset();
												break;

											case YT.PlayerState.ENDED:
												setTimeout(slider.next, 1000);
												break;

											default:
											}
										}
									}
								});
							};

						param.container.append(player_html);

						if (!rendering.youtube_iframe_api.called) {
							rendering.youtube_iframe_api.called = true;

							srcipt_tag = document.createElement('script');
							srcipt_tag.src = "//www.youtube.com/iframe_api";
							first_script_tag = document.getElementsByTagName('script')[0];
							first_script_tag.parentNode.insertBefore(srcipt_tag, first_script_tag);
						}

						if (rendering.youtube_iframe_api.loaded) {
							setup_player();
						} else {
							window.onYouTubeIframeAPIReady = function () {
								rendering.youtube_iframe_api.loaded = true;
								setup_player();
							};
						}
					},

					_vimeo_player: function (param) {
						var playback_initialized = false,

							post = function (action, value) {
								var data = {method: action};

								if (value) {
									data.value = value;
								}

								$player[0].contentWindow.postMessage(JSON.stringify(data), 'https://player.vimeo.com');
							},

							onPlayerEvent = function (e) {
								var data = JSON.parse(e.data);

								switch (data.event) {
								case 'ready':
									$t.trigger('slider_transition_finnished');

									post('addEventListener', 'finish');
									post('addEventListener', 'play');

									if (option.autoplay.autostart_video_playback)
										post('play');
									break;

								case 'play':
									if (playback_initialized)
										break;

									autoplay.video_playing = playback_initialized = true;
									slider.autoplay.reset();
									break;

								case 'finish':
									setTimeout(slider.next, 1000);
									break;
								}
							},

							$player = $(
								'<iframe src="//player.vimeo.com/video/' + param.id +
								'?api=1" width="' + param.dimensions.width + '" height="' + param.dimensions.height +
								'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>'
							);

						slider._on_pre_item_change = function () {
							if (window.addEventListener)
								window.removeEventListener('message', onPlayerEvent, false);
							else
								window.detachEvent('onmessage', onPlayerEvent);
						};

						if (window.addEventListener)
							window.addEventListener('message', onPlayerEvent, false);
						else
							window.attachEvent('onmessage', onPlayerEvent);

						param.container.append($player);
					},

					_flow_player: function (param) {
						var started_playing = false,
							videoType = '';

						if (stringEndsWith(param.id, '.mp4')) {
							videoType = 'video/mp4';
						} else if (stringEndsWith(param.id, '.webm')) {
							videoType = 'video/webm';
						} else if (stringEndsWith(param.id, '.ogg')) {
							videoType = 'video/ogg';
						} else if (stringEndsWith(param.id, '.flv')) {
							videoType = 'video/flash';
						}

						flowplayer(param.container[0], {
							swf: option.flowplayer_src,
							volume: option.videoVolume,
							clip: {
								sources: [
									{
										type: videoType,
										src: param.id
									}
								]
							}
						})
							.on('ready', function () {
								$t.trigger('slider_transition_finnished');

								if (option.autoplay.autostart_video_playback)
									flowplayer(param.container).play();
							})
							.on('resume', function () {
								if (!option.autoplay.enable || started_playing)
									return;

								started_playing = true;

								autoplay.video_playing = true;
								slider.autoplay.reset();
							})
							.on('finish', function () {
								if (!option.autoplay.enable)
									return;

								setTimeout(slider.next, 1000);
							});
					}
				},

				key_browse: function () {
					$(document).keyup(function(e) {
						if (e.keyCode === 37){
							slider.prev();
						}
						if (e.keyCode === 39){
							slider.next();
						}

						return false;
					});
				},

				_scrollable_boxes: {
					init: function (props) {
						var box,
							box_options = option.scrollable_boxes[props.box];

						box = rendering.scrollable_boxes[props.box] = {
							jq: {
								container: $('<div class="scrollable_box' + (props.custom_class ? ' ' + props.custom_class : '') + '" />').data('disabled', false),
								viewport: $('<div class="viewport" />'),
								content: $('<div class="overview" />'),
								scrollbar: $()
							}
						};

						box.jq.container.append(box.jq.viewport);
						box.jq.viewport.append(box.jq.content);
						$t.prepend(box.jq.container);

						slider._scrollable_boxes.size(props.box);

						if (!box_options.container.resize_to_content)
							box.jq.container.height(box.dimensions.height);

						slider._scrollable_boxes.display(props);

						if (box_options.container.show_on_hover)
							$t.hover(
								function () {
									rendering.mouse_entered = true;

									if (box.jq.container.data('disabled') == false)
										box.jq.container.stop(true).fadeTo(200, 1, function () {box.jq.container.css('display', 'block');});
								},
								function () {
									rendering.mouse_entered = false;

									if (box.jq.container.data('disabled') == false)
										box.jq.container.stop(true).fadeTo(200, 0, function () {box.jq.container.css('display', 'none');});
								}
							);
					},

					size: function (box) {
						var obj = rendering.scrollable_boxes[box],
							box_options = option.scrollable_boxes[box];

						if (!box_options.display)
							return;

						obj.jq.scrollbar.remove();

						obj.jq.scrollbar = $('<div class="scrollbar"><div class="track"><div class="thumb"><div class="end"></div></div></div></div>');

						obj.dimensions = slider.get_dimensions(box_options.container.dimensions);

						slider.position_element(obj.jq.container, box_options.container.position);

						if (obj.dimensions.height > rendering.container_dimensions.height)
							obj.dimensions.height = rendering.container_dimensions.height;

						if (obj.dimensions.width > rendering.container_dimensions.width)
							obj.dimensions.width = rendering.container_dimensions.width;

						if (option.scrollable_boxes.item_info.cutThumbWidth)
							obj.dimensions.width = obj.dimensions.width - option.thumbs.container.dimensions.width;
						
						if (option.scrollable_boxes.item_info.cutCategoryWidth)
							obj.dimensions.width = obj.dimensions.width - option.categories.container.dimensions.width;
						
						obj.jq.container
							.width(obj.dimensions.width)
							.css({
								maxHeight: obj.dimensions.height
							})
							.append(obj.jq.scrollbar)
							.eds_tinyscrollbar({
								size: obj.dimensions.height - (obj.jq.scrollbar.outerHeight(true) - obj.jq.scrollbar.height())
							})
							.hide(0);

						obj.jq.viewport.css({
							maxHeight: (obj.dimensions.height - obj.jq.viewport.outerHeight(true))
						});

						if (!box_options.container.resize_to_content)
							obj.jq.container.height(obj.dimensions.height);
					},

					display: function (props) {
						var box = rendering.scrollable_boxes[props.box],
							box_options = option.scrollable_boxes[props.box],
							show_content = function () {
								var fade_in = function () {
									box.jq.viewport.stop(true).fadeTo(200, 1, function () {box.jq.scrollbar.css('display', 'block');});

									if (!box.jq.scrollbar.hasClass('disable'))
										box.jq.scrollbar.stop(true).fadeTo(200, 1, function () {box.jq.scrollbar.css('display', 'block');});
								};

								box.jq.viewport.css({ visibility: '', display: 'none' });

								if (box_options.container.show_on_hover)
									if (rendering.mouse_entered) {
										fade_in();
									} else {
										box.jq.viewport.css({display: 'block'});

										if (!box.jq.scrollbar.hasClass('disable'))
											box.jq.scrollbar.css({display: 'block'});
									}
								else
									fade_in();
							};

						if (!box_options.display)
							return;

						if (typeof props.content == 'string' && props.content) {
							box.jq.container.data('disabled', false);

							if (box.jq.container.is(':visible')) {
								box.jq.container.css({ height: box.jq.container.height() });

								box.jq.scrollbar.stop(true).fadeTo(200, 0, function () {box.jq.scrollbar.css('display', 'none');});
								box.jq.viewport.stop(true).fadeTo(200, 0, function () {
									box.jq.content.html(props.content);
									box.jq.viewport
										.css({ visibility: 'hidden', display: 'block' })
										.removeClass('scrollable');
									box.jq.container.data('plugin_eds_tinyscrollbar').update();

									if (!box.jq.scrollbar.hasClass('disable')) {
										box.jq.viewport.addClass('scrollable');
										box.jq.container.data('plugin_eds_tinyscrollbar').update();
									}

									if (box_options.container.resize_to_content && (!box_options.container.show_on_hover || rendering.mouse_entered)) {
										box.jq.container.animate({
												height: box.jq.viewport.outerHeight(true)
											}, 200, show_content);
									} else {
										box.jq.container.height(box.dimensions.height);
										show_content();
									}
								});
							} else {
								box.jq.container.css({ visibility: 'hidden', display: 'block' });

								box.jq.viewport.removeClass('scrollable');

								box.jq.content.html(props.content);
								box.jq.container.data('plugin_eds_tinyscrollbar').update();

								if (box.jq.scrollbar.hasClass('disable')) {
									box.jq.scrollbar.css({ display: 'none' });
								} else {
									box.jq.viewport.addClass('scrollable');
									box.jq.scrollbar.css({ display: 'block', opacity: 1 });
									box.jq.container.data('plugin_eds_tinyscrollbar').update();
								}

								box.jq.container
									.css({
										visibility: '',
										display: 'none',
										height: (box_options.container.resize_to_content ? box.jq.viewport.outerHeight(true) : box.dimensions.height)
									});

								if (!box_options.container.show_on_hover || rendering.mouse_entered)
									box.jq.container.stop(true).fadeTo(200, 1, function () {box.jq.container.css('display', 'block');});
							}
						} else
							box.jq.container
								.data('disabled', true)
								.stop(true)
								.fadeTo(200, 0, function () {box.jq.container.css('display', 'none');});
					}
				},

				item_info: {
					init: function () {
						slider._scrollable_boxes.init({
							box: 'item_info',
							custom_class: 'item_info',
							content: current.category.items[current.item.index].info
						});
					},

					display: function (index) {
						slider._scrollable_boxes.display({
							box: 'item_info',
							content: current.category.items[index].info
						});
					}
				},

				gallery_info: {
					init: function () {
						slider._scrollable_boxes.init({
							box: 'gallery_info',
							custom_class: 'gallery_info',
							content: current.category.info
						});
					},

					display: function () {
						slider._scrollable_boxes.display({
							box: 'gallery_info',
							content: current.category.info
						});
					}
				},

				autoplay_toggle: {
					init: function () {
						$autoplay_toggle = $('<a href="#" class="autoplay_toggle">Play/Pause</a>');

						if (option.autoplay.enable) {
							$autoplay_toggle.addClass('pause');
						} else {
							autoplay.user_paused = true;
						}

						$autoplay_toggle
							.prependTo($t)
							.click(function () {
								if (autoplay.user_paused) {
									autoplay.user_paused = false;
									$autoplay_toggle.addClass('pause');

									if (!option.autoplay.enable) {
										autoplay.fade_in = true;
										option.autoplay.enable = true;
										slider.autoplay.init();
									}

									if (!option.autoplay.pause_on_hover) {
										slider.autoplay.start();
									}
								} else {
									$autoplay_toggle.removeClass('pause');
									autoplay.user_paused = true;
									if (!autoplay.pause) {
										slider.autoplay.pause();
									}
								}

								return false;
							});

						slider.position_element($autoplay_toggle, option.autoplay_toggle.position);

						if (current.category.item_count < 2)
							$autoplay_toggle.css('display', 'none');

						if (option.autoplay_toggle.auto_hide) {
							$autoplay_toggle.css('display', 'none');
							$t.hover(function () {
								if (current.category.item_count < 2)
									return;

								$autoplay_toggle.stop().fadeTo(option.autoplay_toggle.hide_speed, 1);
							}, function () {
								$autoplay_toggle.stop().fadeTo(option.autoplay_toggle.hide_speed, 0);
							});
						}
					},

					display_category: function () {
						var display = '';

						if (!option.autoplay_toggle.display)
							return;

						if (current.category.item_count < 2)
							display = 'none';

						$autoplay_toggle.css('display', display);
					}
				},

				autoplay: {
					init: function () {
						if (option.autoplay.indicator.display) {
							$autoplay_indicator = $('<div class="indicator" />');
							$autoplay_container = $('<div class="autoplay_container" />');

							slider.autoplay.size();

							if (option.autoplay.indicator.orientation == 'vertical' && !option.autoplay.indicator.flip_direction)
								$autoplay_indicator.css({
									top: 'auto',
									bottom: 0
								});
							else if (option.autoplay.indicator.flip_direction)
								$autoplay_indicator.css({
									left: 'auto',
									right: 0
								});

							$autoplay_container
								.append($autoplay_indicator)
								.css('display', 'none');

							if (autoplay.fade_in) {
								$t.append($autoplay_container);
								$autoplay_container.fadeIn(300);
							} else {
								$t.prepend($autoplay_container);
								$autoplay_container.css('display', '');
							}
						}

						$t.bind('slider_transition_finnished', function () {
							if (autoplay.user_paused || autoplay.pause)
								return;

							slider.autoplay.start();
						});
					},

					size: function () {
						if (!option.autoplay.enable || !option.autoplay.indicator.display)
							return;

						rendering.autoplay.indicator = slider.get_dimensions(option.autoplay.indicator.dimensions);

						slider.position_element($autoplay_container, option.autoplay.indicator.position);

						if (option.autoplay.indicator.orientation == 'vertical')
							$autoplay_indicator.width(rendering.autoplay.indicator.width);
						else
							$autoplay_indicator.height(rendering.autoplay.indicator.height);

						$autoplay_container.css(rendering.autoplay.indicator)
					},

					start: function () {
						var interval = option.autoplay.interval,
							reset_indicator = true;

						if (current.category.item_count < 2) {
							if (option.autoplay.indicator.display)
								$autoplay_container.css('display', 'none');

							return;
						}

						if (option.autoplay.enable && autoplay.interval == '') {
							autoplay.last_started = new Date().getTime();

							autoplay.reset = false;

							if (autoplay.time_remaining != 0) {
								reset_indicator = false;
								interval = autoplay.time_remaining;
							}

							if (option.autoplay.indicator.display) {
								$autoplay_container.css('display', '');

								$autoplay_indicator.stop();
								if (option.autoplay.indicator.orientation == 'vertical') {
									if (reset_indicator) {
										$autoplay_indicator.height(0);
									}

									$autoplay_indicator.animate({height: rendering.autoplay.indicator.height}, interval, 'linear');
								} else {
									if (reset_indicator) {
										$autoplay_indicator.width(0);
									}

									$autoplay_indicator.animate({width: rendering.autoplay.indicator.width}, interval, 'linear');
								}
							}

							autoplay.interval = setTimeout(slider.next, interval);
						}
					},

					pause: function () {
						if (!option.autoplay.enable || autoplay.reset)
							return;

						autoplay.pause_time = new Date().getTime();
						autoplay.start_pause_delta = autoplay.pause_time - autoplay.last_started;

						if (option.autoplay.indicator.display)
							$autoplay_indicator.stop();

						autoplay.time_remaining = (autoplay.time_remaining == 0 ? option.autoplay.interval : autoplay.time_remaining) - autoplay.start_pause_delta;

						clearTimeout(autoplay.interval);
						autoplay.interval = '';
					},

					reset: function () {
						if (!option.autoplay.enable)
							return;

						clearTimeout(autoplay.interval);
						autoplay.interval = '';
						autoplay.time_remaining = 0;

						autoplay.reset = true;

						if (option.autoplay.indicator.display) {
							$autoplay_indicator.stop();
							if (option.autoplay.indicator.orientation == 'vertical') {
								$autoplay_indicator.height(0);
							} else {
								$autoplay_indicator.width(0);
							}
						}
					},

					display_category: function () {
						if (!option.autoplay.enable)
							return;

						if (option.autoplay.indicator.display)
							if (current.category.item_count < 2)
								$autoplay_container.css('display', 'none');
							else
								$autoplay_container.css('display', '');
					}
				},

				_items_panel: {
					init: function (params) {
						params.page
							.append(params.item)
							.appendTo(item_panels[params.panel].container);

						rendering[params.panel].width = params.item.outerWidth(true);
						rendering[params.panel].height = params.item.outerHeight(true);

						rendering[params.panel].page.horizontal_space = params.page.outerWidth(true) - params.page.width();
						rendering[params.panel].page.vertical_space = params.page.outerHeight(true) - params.page.height();

						params.page.remove();

						if (!option[params.panel].container.transparent)
							item_panels[params.panel].wrapper.addClass('not_transparent');
					},

					calculate_pages: function (params) {
						var minimum_container_dimension;

						rendering[params.panel].container = slider.get_dimensions(option[params.panel].container.dimensions);

						rendering[params.panel].page.width = rendering[params.panel].width + rendering[params.panel].page.horizontal_space;
						if (rendering[params.panel].page.width > rendering[params.panel].container.width) {
							rendering[params.panel].container.width = rendering[params.panel].page.width;
						} else {
							rendering[params.panel].page.width = rendering[params.panel].container.width - rendering[params.panel].page.horizontal_space;
						}

						rendering[params.panel].page.height = rendering[params.panel].height + rendering[params.panel].page.vertical_space;
						if (rendering[params.panel].page.height > rendering[params.panel].container.height) {
							rendering[params.panel].container.height = rendering[params.panel].page.height;
						} else {
							rendering[params.panel].page.height = rendering[params.panel].container.height - rendering[params.panel].page.vertical_space;
						}

						// Calculate page dimensions
						rendering[params.panel].per_row = Math.floor(rendering[params.panel].page.width / rendering[params.panel].width);
						rendering[params.panel].page.width = rendering[params.panel].per_row * rendering[params.panel].width;

						rendering[params.panel].row_count = Math.floor(rendering[params.panel].page.height / rendering[params.panel].height);
						rendering[params.panel].page.height = rendering[params.panel].row_count * rendering[params.panel].height;

						rendering[params.panel].per_page = rendering[params.panel].per_row * rendering[params.panel].row_count;

						rendering[params.panel].page.count = Math.ceil(params.item_count / rendering[params.panel].per_page);

						// If there are multiple pages, setup the thumbnail navigation and recalculate page and container dimensions
						if (rendering[params.panel].page.count > 1) {
							if (item_panels[params.panel].pagination) {
								item_panels[params.panel].pagination.next.css('display', 'block');
								item_panels[params.panel].pagination.prev.css('display', 'block');
							} else {
								item_panels[params.panel].wrapper.append('<a href="#" class="navigation ' + option[params.panel].pagination.direction + ' prev">Previous</a><a href="#" class="navigation ' + option[params.panel].pagination.direction + ' next">Next</a>');
								item_panels[params.panel].pagination = {
									prev: item_panels[params.panel].wrapper.find('> a.navigation.prev'),
									next: item_panels[params.panel].wrapper.find('> a.navigation.next')
								};

								item_panels[params.panel].pagination.next.click(function () {
									var current_page_index = item_panels[params.panel].pages.filter('.current').index();

									slider._items_panel.move_to_page(params.panel, current_page_index + 1);

									return false;
								});

								item_panels[params.panel].pagination.prev.click(function () {
									var current_page_index = item_panels[params.panel].pages.filter('.current').index();

									slider._items_panel.move_to_page(params.panel, current_page_index - 1);

									return false;
								});
							}

							if (option[params.panel].pagination.direction == 'vertical') {
								minimum_container_dimension = rendering[params.panel].height + rendering[params.panel].page.vertical_space + 2 * item_panels[params.panel].pagination.prev.outerHeight(true);
								if (minimum_container_dimension > rendering[params.panel].container.height)
									rendering[params.panel].container.height = minimum_container_dimension;

								item_panels[params.panel].pagination.next.css({ top: (rendering[params.panel].container.height - item_panels[params.panel].pagination.next.height())});

								rendering[params.panel].row_count = Math.floor((rendering[params.panel].container.height - 2 * item_panels[params.panel].pagination.prev.outerHeight(true) - rendering[params.panel].page.vertical_space) / rendering[params.panel].height);
								rendering[params.panel].page.height = rendering[params.panel].row_count * rendering[params.panel].height;
							} else {
								minimum_container_dimension = rendering[params.panel].width + rendering[params.panel].page.horizontal_space + 2 * item_panels[params.panel].pagination.prev.outerWidth(true);
								if (minimum_container_dimension > rendering[params.panel].container.width)
									rendering[params.panel].container.width = minimum_container_dimension;

								rendering[params.panel].per_row = Math.floor((rendering[params.panel].container.width - 2 * item_panels[params.panel].pagination.prev.outerWidth(true) - rendering[params.panel].page.horizontal_space) / rendering[params.panel].width);
								rendering[params.panel].page.width = rendering[params.panel].per_row * rendering[params.panel].width;
							}

							rendering[params.panel].per_page = rendering[params.panel].per_row * rendering[params.panel].row_count;

							rendering[params.panel].page.count = Math.ceil(params.item_count / rendering[params.panel].per_page);
						} else {
							if (item_panels[params.panel].pagination) {
								item_panels[params.panel].pagination.next.css('display', 'none');
								item_panels[params.panel].pagination.prev.css('display', 'none');
							}
						}

						item_panels[params.panel].wrapper.css(rendering[params.panel].container);

						rendering[params.panel].window_width = rendering[params.panel].page.width + rendering[params.panel].page.horizontal_space;
						rendering[params.panel].window_height = rendering[params.panel].page.height + rendering[params.panel].page.vertical_space;

						item_panels[params.panel].window
							.width(rendering[params.panel].window_width)
							.height(rendering[params.panel].window_height)
							.css({ top: Math.floor((rendering[params.panel].container.height - rendering[params.panel].window_height) / 2) });

						// Set page container dimensions and position it
						if (option[params.panel].pagination.direction == 'vertical') {
							item_panels[params.panel].container
								.width(rendering[params.panel].window_width)
								.height(0);
						} else {
							item_panels[params.panel].container
								.width(0)
								.height(rendering[params.panel].window_height);
						}

						slider.position_element(item_panels[params.panel].wrapper, option[params.panel].container.position);
					},

					move_to_page: function (panel, page_index) {
						var properties,
							max_page_index = item_panels[panel].pages.length - 1,
							move_to_nonexistant_offset = 10;

						if (max_page_index < 0)
							return;

						if (item_panels[panel].pages.eq(page_index).hasClass('current'))
							return;

						if (page_index > max_page_index) {
							if (option[panel].pagination.direction == 'vertical') {
								properties = {
									top: max_page_index * -(rendering[panel].page.height + rendering[panel].page.vertical_space) - move_to_nonexistant_offset
								};
							} else {
								properties = {
									left: max_page_index * -(rendering[panel].page.width + rendering[panel].page.horizontal_space) - move_to_nonexistant_offset
								};
							}

							item_panels[panel].container.animate(properties, 40, 'swing', function () {
								if (option[panel].pagination.direction == 'vertical') {
									properties = {
										top: max_page_index * -(rendering[panel].page.height + rendering[panel].page.vertical_space)
									};
								} else {
									properties = {
										left: max_page_index * -(rendering[panel].page.width + rendering[panel].page.horizontal_space)
									};
								}

								item_panels[panel].container.animate(properties, 50, 'swing');
							});

							return;
						} else if (page_index < 0) {
							if (option[panel].pagination.direction == 'vertical') {
								properties = {
									top: move_to_nonexistant_offset
								};
							} else {
								properties = {
									left: move_to_nonexistant_offset
								};
							}

							item_panels[panel].container.animate(properties, 40, 'swing', function () {
								if (option[panel].pagination.direction == 'vertical') {
									properties = {
										top: 0
									};
								} else {
									properties = {
										left: 0
									};
								}
								item_panels[panel].container.animate(properties, 50, 'swing');
							});

							return;
						}

						item_panels[panel].pages.removeClass('current').eq(page_index).addClass('current');

						if (option[panel].pagination.direction == 'vertical') {
							properties = {
								top: page_index * -(rendering[panel].page.height + rendering[panel].page.vertical_space)
							};
						} else {
							properties = {
								left: page_index * -(rendering[panel].page.width + rendering[panel].page.horizontal_space)
							};
						}

						item_panels[panel].container.stop(true, false).animate(properties, option[panel].pagination.duration, option[panel].pagination.easing);
					}
				},

				thumbnails: {
					init: function () {
						item_panels.thumbs = {
							container: $('<div class="thumb_container" />'),
							window: $('<div class="thumb_window" />'),
							wrapper: $('<div class="thumb_wrapper" />')
						}

						item_panels.thumbs.window.append(item_panels.thumbs.container);
						item_panels.thumbs.wrapper.append(item_panels.thumbs.window);

						$t.prepend(item_panels.thumbs.wrapper);

						slider._items_panel.init({
							panel: 'thumbs',
							page: $('<ul />'),
							item: $('<li><img src="' + slider_content[0].items[0].thumb.src + '" alt="" style="width: ' + option.thumbs.width + 'px !important; height: ' + option.thumbs.height + 'px !important;" /></li>')
						});

						if (option.thumbs.auto_hide) {
							item_panels.thumbs.wrapper.css({
								display: 'none'
							});

							$t.hover(function () {
								item_panels.thumbs.wrapper.stop().fadeTo(option.thumbs.hide_speed, 1);
							}, function () {
								item_panels.thumbs.wrapper.stop().fadeTo(option.thumbs.hide_speed, 0);
							});
						}

						slider.thumbnails.display_category(false);
						slider.thumbnails.select(current.item.index);
					},

					display_category: function () {
						var $page,
							thumb_html,
							thumb_caption,
							thumb_type_html,
							i = 0,
							preload_images = arguments.length > 0 && arguments[0] === false ? false : true,
							tooltip_content,
							empty_tooltip;

						if (!option.thumbs.display)
							return;

						slider._items_panel.calculate_pages({
							panel: 'thumbs',
							item_count: current.category.item_count
						});

						item_panels.thumbs.container.html('');

						for (; i < current.category.item_count; i++) {
							if (i % rendering.thumbs.per_page === 0) {
								if (option.thumbs.pagination.direction == 'vertical')
									item_panels.thumbs.container.height(item_panels.thumbs.container.height() + rendering.thumbs.window_height);
								else
									item_panels.thumbs.container.width(item_panels.thumbs.container.width() + rendering.thumbs.window_width);

								$page = $('<ul />');
								$page
									.width(rendering.thumbs.page.width)
									.height(rendering.thumbs.page.height)
									.appendTo(item_panels.thumbs.container);
							}

							thumb_caption = option.thumbs.captions && typeof current.category.items[i].thumb.caption == 'string' && current.category.items[i].thumb.caption ? '<div class="caption_wrapper"><div class="caption">' + current.category.items[i].thumb.caption + '</div></div>' : '';
							thumb_type_html = option.thumbs.display_item_types ? '<span class="item_type_icon ' + current.category.items[i].type + '"></span>' : '';

							thumb_html = '<li><img style="width: ' + option.thumbs.width + 'px !important; height: ' + option.thumbs.height + 'px !important;" src="' + current.category.items[i].thumb.src + '" alt="" />' + thumb_type_html + thumb_caption;

							if (preload_images) {
								$('<img />')
									.load(
										{
											index: i
										}, function (e) {
											item_panels.thumbs.pages.find('.thumb_preloading').eq(e.data.index).fadeTo(500, 0, function () {
												$(this).remove();
											});
										}
									)
									.attr('src', current.category.items[i].thumb.src);

								thumb_html += '<div class="thumb_preloading"></div>';
							}

							$page.append(thumb_html + '</li>');

							if (option.thumbs.tooltips.enabled && $.fn.qtip) {
								empty_tooltip = true;
								tooltip_content = '';

								if (current.category.items[i].thumb.tooltip) {
									if (option.thumbs.tooltips.title && current.category.items[i].thumb.tooltip.title) {
										tooltip_content = '<p class="title">' + current.category.items[i].thumb.tooltip.title + '</p>';
										empty_tooltip = false;
									}

									if (option.thumbs.tooltips.description && current.category.items[i].thumb.tooltip.description) {
										tooltip_content += '<div class="description">' + current.category.items[i].thumb.tooltip.description + '</div>';
										empty_tooltip = false;
									}

									if (!empty_tooltip)
										$page.find('> li').filter(':last').qtip({
											content: {
												text: tooltip_content
											},
											position: option.thumbs.tooltips.position,
											style: {
												classes: 'chameleon_slider_tooltip ' + option.thumbs.tooltips.classes,
												tip: {
													corner: true
												}
											}
										});
								}
							}
						}

						item_panels.thumbs.pages = item_panels.thumbs.container.find('> ul');
					},

					trigger: function () {
						item_panels.thumbs.container.delegate('ul > li', 'click', function () {
							var $clicked = $(this);

							slider.show_item($clicked.parent().index() * rendering.thumbs.per_page + $clicked.index());

							return false;
						});
					},

					select: function (index) {
						if (!option.thumbs.display)
							return;

						var $new_item = item_panels.thumbs.pages.find('> li').eq(index);

						slider._items_panel.move_to_page('thumbs', $new_item.parent().index());

						item_panels.thumbs.pages.find('> li.on').removeClass('on');
						$new_item.addClass('on');
					}
				},

				categories: {
					init: function () {
						item_panels.categories = {
							container: $('<div class="categories_container" />'),
							window: $('<div class="categories_window" />'),
							wrapper: $('<div class="categories_wrapper ' + option.categories.pagination.direction + '" />')
						}

						item_panels.categories.window.append(item_panels.categories.container);
						item_panels.categories.wrapper.append(item_panels.categories.window);

						$t.prepend(item_panels.categories.wrapper);

						slider._items_panel.init({
							panel: 'categories',
							page: $('<ul />'),
							item: $('<li style="width: ' + option.categories.width + 'px; height: ' + option.categories.height + 'px;" />')
						});

						if (option.categories.auto_hide) {
							item_panels.categories.wrapper.css({
								display: 'none'
							});

							$t.hover(function () {
								item_panels.categories.wrapper.stop().fadeTo(option.categories.hide_speed, 1);
							}, function () {
								item_panels.categories.wrapper.stop().fadeTo(option.categories.hide_speed, 0);
							});
						}

						slider.categories.display_categories();
					},

					display_categories: function () {
						var $page,
							category_html,
							categories = [],
							num_of_categories,
							i = 0,
							category_opened = selected_categories.indexes[selected_categories.indexes.length - 1],
							category_indexes,
							has_children,
							$first_category,
							$category_links,
							category_height;

						if (!option.categories.display)
							return;

						if (rendering.categories.render_categories) {
							if (selected_categories.indexes.length == 1) {
								categories = slider_content;
							} else {
								category_indexes = $.extend([], selected_categories.indexes);
								category_indexes.pop();
								categories = slider.get_category(category_indexes).children;

								categories = [{
									id: -1,
									name: '&lt;Back',
									open_parent: true
								}].concat(categories);

								category_opened++;
							}

							num_of_categories = categories.length;

							slider._items_panel.calculate_pages({
								panel: 'categories',
								item_count: num_of_categories
							});

							item_panels.categories.container.empty();

							for (i = 0; i < num_of_categories; i++) {
								if (i % rendering.categories.per_page === 0) {
									if (option.categories.pagination.direction == 'vertical')
										item_panels.categories.container.height(item_panels.categories.container.height() + rendering.categories.window_height);
									else
										item_panels.categories.container.width(item_panels.categories.container.width() + rendering.categories.window_width);

									$page = $('<ul />');
									$page
										.width(rendering.categories.page.width)
										.height(rendering.categories.page.height)
										.appendTo(item_panels.categories.container);
								}

								has_children = typeof categories[i].children != 'undefined' && categories[i].children.length > 0;

								category_html = '<li' + (categories[i].open_parent ? ' class="open_parent"' : '') + (has_children ? ' class="has_children"' : '') + ' style="width: ' + option.categories.width + 'px; height: ' + option.categories.height + 'px;"><a href="#" class="' + (categories[i].open_parent ? 'back_button' : 'category') + '"><span>' + categories[i].name + '</span></a>';

								if (has_children)
									category_html += '<a href="#" class="open_children"></a>';

								category_html += '</li>';

								$page.append(category_html);
							}

							item_panels.categories.pages = item_panels.categories.container.find('> ul');

							$category_links = item_panels.categories.pages.find('> li > a.category');
							$first_category = $category_links.eq(0);
							category_height = option.categories.height - ($first_category.outerHeight(true) - $first_category.height());

							$category_links.height(category_height);

							$category_links.each(function () {
								var $link = $(this),
									$span = $link.find('span'),
									height = $span.height();

								if (category_height > height)
									$span.css({
										top: Math.floor((category_height - height) / 2)
									});
								else
									$span.css({
										top: 0
									});
							});
						} else {
							if (selected_categories.indexes.length > 1)
								category_opened++;

							rendering.categories.render_categories = true;
						}

						slider.categories.select(category_opened);
					},

					trigger: function () {
						item_panels.categories.container.delegate('li > a', 'click', function () {
							var $clicked = $(this),
								$first_category,
								$parent = $clicked.parent(),
								$page = $parent.parent(),
								index = $page.index() * rendering.categories.per_page + $parent.index();

							$first_category = item_panels.categories.pages.find('> li').eq(0);

							if ($first_category.hasClass('open_parent'))
								index--;

							if ($clicked.hasClass('category')) {
								if ($parent.hasClass('on'))
									return false;

								selected_categories.indexes.pop();
								selected_categories.indexes.push(index);

								selected_categories.ids = slider.category_ids_from_indexes(selected_categories.indexes);

								current.category = slider.get_category(selected_categories.indexes);
								current.category.item_count = current.category.items.length;

								current.item = {
									id: current.category.items[0].id,
									index: 0
								};

								rendering.categories.render_categories = false;

								slider.change_category();
							} else if ($clicked.hasClass('open_children')) {
								selected_categories.indexes.pop();
								selected_categories.indexes.push(index);
								selected_categories.indexes.push(0);

								selected_categories.ids = slider.category_ids_from_indexes(selected_categories.indexes);

								current.category = slider.get_category(selected_categories.indexes);
								current.category.item_count = current.category.items.length;

								current.item = {
									id: current.category.items[0].id,
									index: 0
								};

								slider.change_category();
							} else if ($clicked.hasClass('back_button')) {
								selected_categories.indexes.pop();

								selected_categories.ids = slider.category_ids_from_indexes(selected_categories.indexes);

								current.category = slider.get_category(selected_categories.indexes);
								current.category.item_count = current.category.items.length;

								current.item = {
									id: current.category.items[0].id,
									index: 0
								};

								slider.change_category();
							}

							return false;
						});
					},

					select: function (index) {
						var $new_item = item_panels.categories.pages.find('> li').eq(index);

						slider._items_panel.move_to_page('categories', $new_item.parent().index());

						item_panels.categories.pages.find('> li.on').removeClass('on');
						$new_item.addClass('on');
					}
				},

				change_category: function () {
					slider.main_panel.display_category();
					slider.categories.display_categories();
					slider.thumbnails.display_category();
					slider.pagination.display_category();
					slider.gallery_title.select();
					slider.gallery_info.display();
					slider.arrows.display_category();
					slider.autoplay_toggle.display_category();
					slider.autoplay.display_category();

					slider.show_item(current.item.index, true);
				},

				arrows: {
					init: function () {
						$navigation_prev = $('<a href="#" class="navigation_button prev">Previous</a>');
						$navigation_next = $('<a href="#" class="navigation_button next">Next</a>');

						$t.prepend($navigation_prev, $navigation_next);

						slider.position_element($navigation_prev, option.arrows.prev.position);
						slider.position_element($navigation_next, option.arrows.next.position);

						slider.arrows.display_category();
					},

					trigger: function () {
						$navigation_prev.click(function () {
							slider.prev();

							return false;
						});
						$navigation_next.click(function () {
							slider.next();

							return false;
						});

						if (option.arrows.auto_hide) {
							$navigation_prev.fadeTo(0, 0);
							$navigation_next.fadeTo(0, 0);
							$t.hover(function () {
								if (current.category.item_count == 1)
									return;

								$navigation_prev.stop().fadeTo(option.arrows.hide_speed, 1);
								$navigation_next.stop().fadeTo(option.arrows.hide_speed, 1);
							}, function () {
								$navigation_prev.stop().fadeTo(option.arrows.hide_speed, 0);
								$navigation_next.stop().fadeTo(option.arrows.hide_speed, 0);
							});
						}
					},

					display_category: function () {
						var display = '';

						if (current.category.item_count == 1)
							display = 'none';

						$navigation_prev.css('display', display);
						$navigation_next.css('display', display);
					}
				},

				_title_box: {
					init: function (props) {
						var $text_span,
							text_span_top;

						rendering.title_boxes[props.box] = $('<span class="title_box' + (props.custom_class ? ' ' + props.custom_class : '') + '" style="height: ' + option.title_boxes[props.box].height + 'px;"><span>T</span></span>');

						$text_span = rendering.title_boxes[props.box].find('> span');

						rendering.title_boxes[props.box].css('visibility', 'hidden');

						$t.prepend(rendering.title_boxes[props.box]);

						slider.position_element(rendering.title_boxes[props.box], option.title_boxes[props.box].position);

						text_span_top = Math.floor((option.title_boxes[props.box].height - $text_span.height()) / 2);

						if (text_span_top < 0)
							text_span_top = 0

						$text_span
							.css({
								top: text_span_top
							})
							.empty();

						rendering.title_boxes[props.box].css('visibility', '');
					},

					change_text: function (props) {
						if (!props.text) {
							rendering.title_boxes[props.box]
								.stop()
								.fadeTo(200, 0);
						} else {
							if (rendering.title_boxes[props.box].is(':visible')) {
								rendering.title_boxes[props.box]
									.stop()
									.fadeTo(200, 0, function () {
										rendering.title_boxes[props.box]
											.fadeTo(400, 1)
											.find('> span')
												.html(props.text);
									});
							} else {
								rendering.title_boxes[props.box]
									.stop()
									.fadeTo(400, 1)
									.find('> span')
										.html(props.text);
							}
						}
					}
				},

				item_title: {
					init: function () {
						slider._title_box.init({
							box: 'current_item',
							custom_class: 'current_item'
						});

						slider.item_title.select(current.item.index);
					},

					select: function (index) {
						if (!option.title_boxes.current_item.display)
							return;

						slider._title_box.change_text({
							box: 'current_item',
							text: current.category.items[index].title
						});
					},

					size: function () {
						if (!option.title_boxes.current_item.display)
							return;

						slider.position_element(rendering.title_boxes.current_item, option.title_boxes.current_item.position);
					}
				},

				gallery_title: {
					init: function () {
						slider._title_box.init({
							box: 'current_gallery',
							custom_class: 'current_gallery'
						});

						slider.gallery_title.select();
					},

					select: function () {
						if (!option.title_boxes.current_gallery.display)
							return;

						slider._title_box.change_text({
							box: 'current_gallery',
							text: current.category.name
						});
					},

					size: function () {
						if (!option.title_boxes.current_gallery.display)
							return;

						slider.position_element(rendering.title_boxes.current_gallery, option.title_boxes.current_gallery.position);
					}
				},

				triggers: function () {
					if (option.arrows.display) {
						slider.arrows.trigger();
					}
					if (option.thumbs.display) {
						slider.thumbnails.trigger();
					}
					if (option.categories.display) {
						slider.categories.trigger();
					}
					if (option.key_browse) {
						slider.key_browse();
					}
					if (option.autoplay.enable) {
						slider.autoplay.start();
					}
					if (option.autoplay.pause_on_hover) {
						$t.hover(function () {
							if (current.category.item_count < 2)
								return;

							if (autoplay.user_paused || autoplay.pause)
								return;

							autoplay.pause = true;
							slider.autoplay.pause();
						}, function () {
							if (current.category.item_count < 2)
								return;

							autoplay.pause = false;

							if (autoplay.video_playing || autoplay.user_paused || autoplay.transition_in_progres)
								return;

							slider.autoplay.start();
						});
					}

					$t.bind('resize_slider', function () {
						slider.autoplay.reset();

						$t.css(rendering.container_dimensions);

						slider.main_panel.size();
						slider.autoplay.size();

						slider._scrollable_boxes.size('gallery_info');
						slider._scrollable_boxes.size('item_info');

						slider.gallery_title.size();
						slider.item_title.size();

						slider.thumbnails.display_category(false);
						slider.categories.display_categories();

						if (option.pagination.display)
							slider.position_element($pagination, option.pagination.position);

						if (option.autoplay_toggle.display)
							slider.position_element($autoplay_toggle, option.autoplay_toggle.position);

						if (option.arrows.display) {
							slider.position_element($navigation_prev, option.arrows.prev.position);
							slider.position_element($navigation_next, option.arrows.next.position);
						}

						slider.show_item(current.item.index, true, '');
					});

					$loading_overlay.fadeOut(200, function () {
						$loading_overlay.remove();
					})

					$t.trigger('slider_initialized');
				},

				get_dimensions: function (d) {
					var reference;

					if (arguments.length > 1 && typeof arguments[1] == 'object')
						reference = arguments[1];
					else
						reference = {
							width: rendering.container_dimensions.width,
							height: rendering.container_dimensions.height
						};

					return { width: (d.w_as_ratio ? Math.floor(reference.width * d.width) : d.width), height: (d.h_as_ratio ? Math.floor(reference.height * d.height) : d.height) };
				},

				position_element: function (element, position) {
					var v_offset = position.v_as_ratio ? Math.floor(position.v_offset * rendering.container_dimensions.height) : position.v_offset,
						h_offset = position.h_as_ratio ? Math.floor(position.h_offset * rendering.container_dimensions.width) : position.h_offset;

					if (position.v_center_point)
						v_offset -= Math.floor(element.outerHeight() / 2);

					if (position.h_center_point)
						h_offset -= Math.floor(element.outerWidth() / 2);

					if (position.vertical == 'top') {
						element.css('top', v_offset);
					} else {
						element.css({
							top: 'auto',
							bottom: v_offset
						});
					}

					if (position.horizontal == 'left') {
						element.css('left', h_offset);
					} else {
						element.css({
							left: 'auto',
							right: h_offset
						});
					}
				},

				category_indexes_from_ids: function (ids, categories) {
					var i = 0,
						num_of_cats,
						next_index = [];

					if (ids.length == 0) {
						return [];
					}

					num_of_cats = $.isArray(categories) ? categories.length : 0;
					for (; i < num_of_cats; i++) {
						if (categories[i].id == ids[0]) {
							ids.shift();
							if (ids.length != 0) {
								next_index = slider.category_indexes_from_ids(ids, categories[i].children);
								if (next_index.length == 0) {
									return [];
								}
							}
							return [i].concat(next_index);
						}
					}

					return [];
				},

				category_ids_from_indexes: function (indexes) {
					var m = indexes.length,
						i = 1,
						ids,
						selected = slider_content[indexes[0]];

					ids = [selected.id];

					for (; i < m; i++) {
						selected = selected.children[indexes[i]];
						ids.push(selected.id);
					}

					return ids;
				},

				get_category: function (indexes) {
					var m = indexes.length,
						i = 1,
						selected;

					if (!$.isArray(indexes) || indexes.length == 0)
						return slider_content[0];

					selected = slider_content[indexes[0]];

					for (; i < m; i++)
						selected = selected.children[indexes[i]];

					return selected;
				},

				item_index_from_id: function (id) {
					var items = current.category.items,
						num_of_items = items.length,
						i = 0;

					if (id == undefined)
						return 0;

					for (; i < num_of_items; i++)
						if (items[i].id == id)
							return i;

					return 0;
				},

				set_url_param: function (url, param) {
					var url_hash = '',
						return_url = '',
						param_string = param + (arguments.length > 2 ? '=' + arguments[2] : ''),
						params,
						segment = false,
						found = false,
						i;

					url = url.split('#');

					if (url.length == 1) {
						url_hash = false;
					} else {
						url_hash = url[1];
					}

					url = url[0].split('?');
					if (url.length == 1 || url[1] == '') {
						return_url = url[0] + '?' + param_string;
					} else {
						return_url = url[0] + '?';

						params = url[1].split('&');
						for (i in params) {
							if (typeof params[i] != 'string')
								continue;

							segment = params[i].split('=');

							if (segment[0] == param) {
								found = true;
								return_url += param_string + '&';
							} else {
								if (segment.length == 1) {
									return_url += segment[0] + '&';
								} else {
									return_url += segment[0] + '=' + segment[1] + '&';
								}
							}
						}

						if (found)
							return_url = return_url.substring(0, return_url.length - 1);
						else
							return_url += param_string;
					}

					return return_url + (url_hash === false ? '' : '#' + url_hash);
				}
			};

			slider.init();
		});
	};

	$.fn[pluginName + '_fullscreen'] = function (options) {
		var $fullscreenContainer,
			$theSlider,
			resize_deley_timeout,
			close_fullscreen = function () {
				$fullscreenContainer.fadeTo(500, 0, function () {
					$theSlider.trigger('destroy');
					$fullscreenContainer.remove();
				});

				$(document).unbind('keydown.chameleonslider_fullscreen_' + options.module_id);
			};

		$fullscreenContainer = $('<div id="chameleonSliderFullscreen_' + options.module_id + '" style="z-index: 15000; overflow: hidden; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, .5);"><div class="chameleon_slider ' + options.theme + '" /></div>');

		$('body').append($fullscreenContainer);

		$theSlider = $fullscreenContainer.find('> .chameleon_slider');

		$.extend(true, options, {
			container_dimensions: {
				width: 1,
				height: 1,
				w_as_ratio: true,
				h_as_ratio: true
			},
			autoplay: {
				pause_on_hover: false
			},
			buttons: {
				exit_fullscreen: {
					display: true
				},
				fullscreen: {
					display: false
				}
			},
			main_panel: {
				stretch_small_image: true
			}
		});

		$theSlider.bind('slider_initialized', function () {
			$theSlider.find('> .exit_fullscreen').click(function () {
				close_fullscreen();
				return false;
			});

			$(document).bind('keydown.chameleonslider_fullscreen_' + options.module_id, function(e) {
				if (e.which == 27)
					close_fullscreen();
			});
		});

		$theSlider[pluginName](options);
	};
}(eds3_5_jq, window, document));

;;;/*!
 * imagesLoaded PACKAGED v3.1.4
 * JavaScript is all like "You images are done yet or what?"
 * MIT License
 */

(function () { function e() { } function t(e, t) { for (var n = e.length; n--;)if (e[n].listener === t) return n; return -1 } function n(e) { return function () { return this[e].apply(this, arguments) } } var i = e.prototype, r = this, o = r.EventEmitter; i.getListeners = function (e) { var t, n, i = this._getEvents(); if ("object" == typeof e) { t = {}; for (n in i) i.hasOwnProperty(n) && e.test(n) && (t[n] = i[n]) } else t = i[e] || (i[e] = []); return t }, i.flattenListeners = function (e) { var t, n = []; for (t = 0; e.length > t; t += 1)n.push(e[t].listener); return n }, i.getListenersAsObject = function (e) { var t, n = this.getListeners(e); return n instanceof Array && (t = {}, t[e] = n), t || n }, i.addListener = function (e, n) { var i, r = this.getListenersAsObject(e), o = "object" == typeof n; for (i in r) r.hasOwnProperty(i) && -1 === t(r[i], n) && r[i].push(o ? n : { listener: n, once: !1 }); return this }, i.on = n("addListener"), i.addOnceListener = function (e, t) { return this.addListener(e, { listener: t, once: !0 }) }, i.once = n("addOnceListener"), i.defineEvent = function (e) { return this.getListeners(e), this }, i.defineEvents = function (e) { for (var t = 0; e.length > t; t += 1)this.defineEvent(e[t]); return this }, i.removeListener = function (e, n) { var i, r, o = this.getListenersAsObject(e); for (r in o) o.hasOwnProperty(r) && (i = t(o[r], n), -1 !== i && o[r].splice(i, 1)); return this }, i.off = n("removeListener"), i.addListeners = function (e, t) { return this.manipulateListeners(!1, e, t) }, i.removeListeners = function (e, t) { return this.manipulateListeners(!0, e, t) }, i.manipulateListeners = function (e, t, n) { var i, r, o = e ? this.removeListener : this.addListener, s = e ? this.removeListeners : this.addListeners; if ("object" != typeof t || t instanceof RegExp) for (i = n.length; i--;)o.call(this, t, n[i]); else for (i in t) t.hasOwnProperty(i) && (r = t[i]) && ("function" == typeof r ? o.call(this, i, r) : s.call(this, i, r)); return this }, i.removeEvent = function (e) { var t, n = typeof e, i = this._getEvents(); if ("string" === n) delete i[e]; else if ("object" === n) for (t in i) i.hasOwnProperty(t) && e.test(t) && delete i[t]; else delete this._events; return this }, i.removeAllListeners = n("removeEvent"), i.emitEvent = function (e, t) { var n, i, r, o, s = this.getListenersAsObject(e); for (r in s) if (s.hasOwnProperty(r)) for (i = s[r].length; i--;)n = s[r][i], n.once === !0 && this.removeListener(e, n.listener), o = n.listener.apply(this, t || []), o === this._getOnceReturnValue() && this.removeListener(e, n.listener); return this }, i.trigger = n("emitEvent"), i.emit = function (e) { var t = Array.prototype.slice.call(arguments, 1); return this.emitEvent(e, t) }, i.setOnceReturnValue = function (e) { return this._onceReturnValue = e, this }, i._getOnceReturnValue = function () { return this.hasOwnProperty("_onceReturnValue") ? this._onceReturnValue : !0 }, i._getEvents = function () { return this._events || (this._events = {}) }, e.noConflict = function () { return r.EventEmitter = o, e }, "function" == typeof define && define.amd ? define("eventEmitter/EventEmitter", [], function () { return e }) : "object" == typeof module && module.exports ? module.exports = e : this.EventEmitter = e }).call(this), function (e) { function t(t) { var n = e.event; return n.target = n.target || n.srcElement || t, n } var n = document.documentElement, i = function () { }; n.addEventListener ? i = function (e, t, n) { e.addEventListener(t, n, !1) } : n.attachEvent && (i = function (e, n, i) { e[n + i] = i.handleEvent ? function () { var n = t(e); i.handleEvent.call(i, n) } : function () { var n = t(e); i.call(e, n) }, e.attachEvent("on" + n, e[n + i]) }); var r = function () { }; n.removeEventListener ? r = function (e, t, n) { e.removeEventListener(t, n, !1) } : n.detachEvent && (r = function (e, t, n) { e.detachEvent("on" + t, e[t + n]); try { delete e[t + n] } catch (i) { e[t + n] = void 0 } }); var o = { bind: i, unbind: r }; "function" == typeof define && define.amd ? define("eventie/eventie", o) : e.eventie = o }(this), function (e, t) { "function" == typeof define && define.amd ? define(["eventEmitter/EventEmitter", "eventie/eventie"], function (n, i) { return t(e, n, i) }) : "object" == typeof exports ? module.exports = t(e, require("eventEmitter"), require("eventie")) : e.imagesLoaded = t(e, e.EventEmitter, e.eventie) }(this, function (e, t, n) { function i(e, t) { for (var n in t) e[n] = t[n]; return e } function r(e) { return "[object Array]" === d.call(e) } function o(e) { var t = []; if (r(e)) t = e; else if ("number" == typeof e.length) for (var n = 0, i = e.length; i > n; n++)t.push(e[n]); else t.push(e); return t } function s(e, t, n) { if (!(this instanceof s)) return new s(e, t); "string" == typeof e && (e = document.querySelectorAll(e)), this.elements = o(e), this.options = i({}, this.options), "function" == typeof t ? n = t : i(this.options, t), n && this.on("always", n), this.getImages(), a && (this.jqDeferred = new a.Deferred); var r = this; setTimeout(function () { r.check() }) } function c(e) { this.img = e } function f(e) { this.src = e, v[e] = this } var a = e.eds3_5_jq,u=e.console,h=u!==void 0,d=Object.prototype.toString;s.prototype=new t,s.prototype.options={},s.prototype.getImages=function(){this.images=[];for(var e=0,t=this.elements.length;t>e;e++){var n=this.elements[e];"IMG"===n.nodeName&&this.addImage(n);for(var i=n.querySelectorAll("img"),r=0,o=i.length;o>r;r++){var s=i[r];this.addImage(s)}}},s.prototype.addImage=function(e){var t=new c(e);this.images.push(t)},s.prototype.check=function(){function e(e,r){return t.options.debug&&h&&u.log("confirm",e,r),t.progress(e),n++,n===i&&t.complete(),!0}var t=this,n=0,i=this.images.length;if(this.hasAnyBroken=!1,!i)return this.complete(),void 0;for(var r=0;i>r;r++){var o=this.images[r];o.on("confirm",e),o.check()}},s.prototype.progress=function(e){this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded;var t=this;setTimeout(function(){t.emit("progress",t,e),t.jqDeferred&&t.jqDeferred.notify&&t.jqDeferred.notify(t,e)})},s.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";this.isComplete=!0;var t=this;setTimeout(function(){if(t.emit(e,t),t.emit("always",t),t.jqDeferred){var n=t.hasAnyBroken?"reject":"resolve";t.jqDeferred[n](t)}})},a&&(a.fn.imagesLoaded=function(e,t){var n=new s(this,e,t);return n.jqDeferred.promise(a(this))}),c.prototype=new t,c.prototype.check=function(){var e=v[this.img.src]||new f(this.img.src);if(e.isConfirmed)return this.confirm(e.isLoaded,"cached was confirmed"),void 0;if(this.img.complete&&void 0!==this.img.naturalWidth)return this.confirm(0!==this.img.naturalWidth,"naturalWidth"),void 0;var t=this;e.on("confirm",function(e,n){return t.confirm(e.isLoaded,n),!0}),e.check()},c.prototype.confirm=function(e,t){this.isLoaded=e,this.emit("confirm",this,t)};var v={};return f.prototype=new t,f.prototype.check=function(){if(!this.isChecked){var e=new Image;n.bind(e,"load",this),n.bind(e,"error",this),e.src=this.src,this.isChecked=!0}},f.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},f.prototype.onload=function(e){this.confirm(!0,"onload"),this.unbindProxyEvents(e)},f.prototype.onerror=function(e){this.confirm(!1,"onerror"),this.unbindProxyEvents(e)},f.prototype.confirm=function(e,t){this.isConfirmed=!0,this.isLoaded=e,this.emit("confirm",this,t)},f.prototype.unbindProxyEvents=function(e){n.unbind(e.target,"load",this),n.unbind(e.target,"error",this)},s});
;;;!function(e,t){"use strict";var a={portalId:0,moduleId:0,tabId:0,autoplayVideo:!1,userLoggedIn:!1,googleReCaptchaSiteKey:"",websiteRoot:"",portfolioMode:!1,openAt:0,wrapperResizeDuration:200,flowplayerSwf:"",flowplayer:{key:"",logo:""},socialButtons:{facebook:!1,gplus:!1,twitter:!1,inshare:!1,pinterest:!1},cssClass:"",events:{onBeforeClose:function(){}},comments:{requireAuthorInfo:!0,useReCaptcha:!1,permissions:{show:!1,commenting:!1}},like:{permissions:{liking:!1}},mobile:!1,i18n:{}},o=0,i=1,s=2,n="positionAnimation",r="swipeAnimation",m=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,l=function(t,a){var o=this,i=o.items[t];if(i&&"image"==i.type){var s=o.images[i.src];if(s)"function"==typeof a&&(s.stats.preloadFinished?a(s.stats):s.callbacks.push(a));else{s=o.images[i.src]={callbacks:[],stats:{preloadFinished:!1,isLoaded:!1,width:0,height:0}},"function"==typeof a&&s.callbacks.push(a);var n=e('<img class="smbLightImage_'+i.id+'" />');n.imagesLoaded().progress(function(e,t){if(!o.viewClosed){var a=o.images[i.src];if(a.stats.preloadFinished=!0,a.stats.isLoaded=t.isLoaded,!o.smbPlus&&t.isLoaded&&o.$imagesWrapper.append(n),a.stats.width=n.width(),a.stats.height=n.height(),o.smbPlus)n.css(p.call(o,a.stats.width,a.stats.height,!1)),n.parent().removeClass("loading");else{var s=o.items[o.currentItemIndex];"image"==s.type&&s.src==i.src&&(o.initialItemLoaded=!0,$.call(o))}n=null;for(var r=0,m=a.callbacks.length;r<m;r++)a.callbacks[r](a.stats)}}),o.smbPlus&&n.appendTo(e("> div.item_"+t,o.$contentWrapper)),n.attr("src",i.src)}}},c=function(){for(var e=0,t=this.items.length;e<t;e++)l.call(this,e)},p=function(e,t,a,o){var i,s,n=this.overlayWidth-this.main.horizontalSpace,r=this.overlayHeight-this.main.verticalSpace,m=e,l=t;return(a||e>n||t>r)&&(m=n,l=r,(s=e/t)<(i=n/r)?m=Math.round(r/t*e):s>i&&(l=Math.round(n/e*t))),o&&(l=t),{width:m,height:l,top:Math.floor((r-l)/2),left:Math.floor((n-m)/2)}},d=function(e){var t=this,a=function(){t.$loadingOverlay.stop(!0).fadeTo(200,0,function(){t.$loadingOverlay.css("display","none")}),v.call(t)},o=function(e,a){0==t.options.wrapperResizeDuration?(t.$mainWrapper.css(e),a()):t.$mainWrapper.stop(!0).animate(e,{duration:t.options.wrapperResizeDuration,complete:function(){t.$mainWrapper.css("overflow",""),a()}})},i=function(){t.$mainWrapper.height()!=e.height?o({height:e.height,top:e.top},a):a()};t.$loadingOverlay.removeClass("inProgress"),t.$mainWrapper.width()!=e.width?o({width:e.width,left:e.left},i):i()},h=function(t){var a="",o="",i=this.items[t];switch(this.smbPlus||this.$mainWrapper.addClass("videoItem"),i.source){case"youtube":a='<iframe src="//www.youtube.com/embed/'+i.videoId+(this.options.autoplayVideo?"?autoplay=1":"")+'" frameborder="0" allowfullscreen></iframe>';break;case"vimeo":a='<iframe src="//player.vimeo.com/video/'+i.videoId+(this.options.autoplayVideo?"?autoplay=1":"")+'" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>';break;case"wistia":a='<iframe name="wistia_embed" src="//fast.wistia.net/embed/iframe/'+i.videoId+'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>';break;case"flowplayer":W(i.src,".mp4")?o="video/mp4":W(i.src,".webm")?o="video/webm":W(i.src,".ogg")?o="video/ogg":W(i.src,".flv")&&(o="video/flash"),a='<div class="flowplayerContainer"></div>'}var s=this.$audioVideo;this.smbPlus?("flowplayer"!=i.source&&(a="<div>"+a+"</div>"),s=e("> div.item_"+this.currentItemIndex,this.$contentWrapper)):s.addClass("activeElement"),s.html(a).removeClass("loading"),"flowplayer"==i.source&&e("> .flowplayerContainer",s).flowplayer({swf:this.options.flowplayerSwf,ratio:i.height/i.width,autoplay:this.options.autoplayVideo,tooltip:!1,embed:!1,clip:{sources:[{type:o,src:i.src}]},key:this.options.flowplayer.key,logo:this.options.flowplayer.logo});var n=p.call(this,i.width,i.height,!0);this.smbPlus?e(">",s).css(n):d.call(this,n),this.initialItemLoaded=!0},u=function(t){this.smbPlus||this.$mainWrapper.addClass("audioItem");var a=this.$audioVideo,o='<audio src="'+t.src+'" />',i="> audio";this.smbPlus?(o="<div>"+o+"</div>",i="> div > audio",a=e("> div.item_"+this.currentItemIndex,this.$contentWrapper)):a.addClass("activeElement"),a.html(o).removeClass("loading"),audiojs.create(e(i,a)[0]);var s=p.call(this,460,36,!1,!0);this.smbPlus?e(">",a).css(s):d.call(this,s),this.initialItemLoaded=!0},v=function(){var e=this.items[this.currentItemIndex];"string"==typeof e.title&&""!=e.title&&this.$itemTitle.html(e.title).stop(!0).fadeTo(200,1),(this.options.socialButtons.facebook||this.options.socialButtons.twitter||this.options.socialButtons.gplus||this.options.socialButtons.inshare||this.options.socialButtons.pinterest&&"image"==e.type)&&"string"==typeof e.socialUrl&&""!=e.socialUrl?this.$socialButtonsTrigger.css("display",""):this.$socialButtonsTrigger.css("display","none")},g=function(e){var t=this.items.length;return e<0?e=t-1:e>=t&&(e=0),e},$=function(){if(this.$itemTitle.text("").stop(!0).fadeTo(0,0),this.$socialButtonsTrigger.removeClass("show"),this.$socialButtonsWrapper.removeClass("show").html(""),this.currentItemIndex=g.call(this,this.currentItemIndex),this.$root.removeClass("firstItem lastItem"),0===this.currentItemIndex&&this.$root.addClass("firstItem"),this.currentItemIndex===this.items.length-1&&this.$root.addClass("lastItem"),this.smbPlus){var t=g.call(this,this.currentItemIndex-1),a=g.call(this,this.currentItemIndex+1);e("> div.videoItem.item_"+t+",> div.audioItem.item_"+t+",> div.videoItem.item_"+a+",> div.audioItem.item_"+a,this.$contentWrapper).html(""),v.call(this)}var o=this.items[this.currentItemIndex],i="imageActive";"video"==o.type?i="videoActive":"audio"==o.type&&(i="audioActive"),this.$root.removeClass("imageActive videoActive audioActive").addClass(i),this.showItem()},C=function(){if(this.smbPlus){var e=this.$window.height();t.innerHeight&&(e=t.innerHeight),e+=1,this.$root.height(e),this.overlayWidth=this.$root.width(),this.overlayHeight=e}else this.overlayWidth=this.$contentWrapper.width(),this.overlayHeight=this.$contentWrapper.height();this.center()},f=function(e){var t=this;if(!(t.skipGestures||-1==e&&0==t.currentItemIndex||1==e&&t.currentItemIndex==this.items.length-1)){t.skipGestures=!0;var a=-t.currentItemIndex*t.overlayWidth;1==e?a-=t.overlayWidth:a+=t.overlayWidth,t.$contentWrapper.removeClass(n).addClass(r).css({transform:"translate3d("+a+"px, 0, 0)"}),setTimeout(function(){t.currentItemIndex+=e,$.call(t),t.skipGestures=!1},250)}},I=function(){this.initialItemLoaded&&(this.smbPlus?f.call(this,-1):(this.currentItemIndex-=1,$.call(this)))},y=function(){this.initialItemLoaded&&(this.smbPlus?f.call(this,1):(this.currentItemIndex+=1,$.call(this)))},w=function(){var e=this;"function"==typeof e.options.events.onBeforeClose&&!1===e.options.events.onBeforeClose({activeItem:e.currentItemIndex,displayItems:e.items})||(e.$document.off(".smbLightEvent"),e.$window.off(".smbLightEvent"),e.viewClosed=!0,e.$root.stop(!0).fadeOut(200,function(){e.$root.remove(),e.$body.removeClass("smbLightFixed")}),e.smbPlus&&(void 0===e.oldViewportMetaContent?e.$viewportMeta.remove():e.$viewportMeta.attr("content",e.oldViewportMetaContent),void 0===e.oldIeTapHighlight?e.$ieTapHighlight.remove():e.$ieTapHighlight.attr("content",e.oldIeTapHighlight)))},W=function(e,t){return-1!==e.indexOf(t,e.length-t.length)},k=function(){var t=this,a=t.items[t.currentItemIndex],o=t.comments[a.id],i="";if(t.$mainCommentsCount.text(o.count),t.$internalCommentsCount.text(o.count),0==o.cache.comments.length)return t.$commentList.html(""),void t.$commentsModal.addClass("noComments");t.$commentsModal.removeClass("noComments"),e.each(o.cache.comments,function(){var a=o.cache.authors[this.author],s=encodeURI(a.url),n='<li><a class="authorAvatar" href="'+s+'"><img src="'+encodeURI(a.avatar)+'" alt="" /></a><a class="author" href="'+s+'">'+e("<p />").text(a.name).html()+"</a><div>"+this.content+'</div><p class="datetime">'+this.dateHtml+"</p></li>";"asc"==t.commentSorting?i+=n:i=n+i}),t.$commentList.html(i)},b=function(o,i){return this.$body=e("body"),!this.$body.hasClass("smbLightFixed")&&0!=o.length&&(this.$body.addClass("smbLightFixed"),this.$window=e(t),this.$document=e(document),this.initialItemLoaded=!1,this.viewClosed=!1,this.items=o,this.options=e.extend(!0,{},a,i),this.currentItemIndex=this.options.openAt,(this.currentItemIndex<0||this.currentItemIndex>=o.length)&&(this.currentItemIndex=0),this.images={},!0)},x=function(){var t=this;t.$window.on("resize.smbLightEvent",function(){if(t.comments){var e=t.items[t.currentItemIndex],a=t.comments?t.comments[e.id]:void 0;t.desktopVersion&&a&&a.state.open&&t.$root.width(t.$window.width()-t.$commentsModal.outerWidth(!0))}C.call(t)}),t.$document.on("keyup.smbLightEvent",function(e){switch(e.keyCode){case 37:I.call(t);break;case 39:y.call(t);break;case 27:if(t.commentsOpened)return t.closeComments(),!1;w.call(t)}return!1}),t.$root.on("click",".navigation",function(){t.$root.hasClass("initializing")||(e(this).hasClass("prev")?I.call(t):y.call(t))}).on("click",".close",function(){w.call(t)}),t.$socialButtonsTrigger.on("click",function(){if(!t.$root.hasClass("initializing")){var a=t.items[t.currentItemIndex],o=encodeURIComponent(a.socialUrl),i="",s="";"string"==typeof a.title&&""!=a.title&&(s=a.title.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),s+=" "+a.socialUrl.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&#39;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),i=encodeURIComponent(a.title));var n="";t.options.socialButtons.facebook&&(n='<div><iframe src="//www.facebook.com/plugins/like.php?href='+o+'&amp;width&amp;layout=button_count&amp;action=like&amp;show_faces=false&amp;share=false&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:21px; width: 135px;" allowTransparency="true"></iframe></div>'),t.options.socialButtons.twitter&&(n+='<div><a href="//twitter.com/share" class="twitter-share-button" data-url="'+o+'" data-text="'+s+'">Tweet</a><script type="text/javascript">twttr.widgets.load();<\/script></div>'),t.options.socialButtons.gplus&&(n+='<div><div class="g-plusone" data-size="medium" data-href="'+a.socialUrl+'"></div><script type="text/javascript">gapi.plusone.go();<\/script></div>'),t.options.socialButtons.inshare&&(n+='<div><script type="IN/Share" data-url="'+a.socialUrl+'" data-counter="right"><\/script><script type="text/javascript">if (IN.parse) IN.parse();<\/script></div>'),t.options.socialButtons.pinterest&&"image"==a.type&&(n+='<div><a href="//www.pinterest.com/pin/create/button/?url='+o+"&media="+encodeURIComponent(a.src)+"&description="+i+'" data-pin-do="buttonPin" data-pin-config="beside"><img src="//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png" /></a></div>'),""!=n&&(t.$socialButtonsWrapper.toggleClass("show").html(n),t.options.socialButtons.pinterest&&"image"==a.type&&e.ajax({url:"//assets.pinterest.com/js/pinit.js",dataType:"script",cache:!0}),e(this).toggleClass("show"))}})},T=function(e){var t=this.options.i18n[e];return t||e};function L(t,a){var o,i=this,s="";if(b.call(i,t,a))return i.$root=e('<div class="smbLightOverlayWrapper initializing"><div class="contentWrapper"></div></div>'),i.$root.addClass(i.options.cssClass),i.$contentWrapper=e("> div.contentWrapper",i.$root),t.length>1&&(s='<span class="navigation prev"><span></span></span><span class="navigation next"><span></span></span>'),s+='<span class="close"><span></span></span><div class="socialButtonsWrapper"></div><span class="actions socialButtonsTrigger"><span>'+T.call(i,"Share")+"</span></span>",i.$mainWrapper=e('<div class="mainWrapper"><div class="viewWrapper"><div class="images"><p>'+T.call(i,"This image is currently unavailable")+'</p></div><div class="audioVideo"></div></div>'+s+"</div>").appendTo(i.$contentWrapper),i.$itemTitle=e('<h2 class="itemTitle" />').appendTo(i.$mainWrapper),i.$loadingOverlay=e('<div class="loadingOverlay inProgress"></div>').appendTo(i.$mainWrapper),i.$imagesWrapper=e("> .viewWrapper > .images",i.$mainWrapper),i.$audioVideo=e("> .viewWrapper > .audioVideo",i.$mainWrapper),i.$socialButtonsWrapper=e(".socialButtonsWrapper",i.$mainWrapper),i.$socialButtonsTrigger=e(".socialButtonsTrigger",i.$mainWrapper),"image"==(o=i.items[i.currentItemIndex]).type?l.call(i,i.currentItemIndex,function(){c.call(i)}):c.call(i),i.$root.appendTo(i.$body),i.main={horizontalSpace:i.$mainWrapper.outerWidth(!0)-i.$mainWrapper.width(),verticalSpace:i.$mainWrapper.outerHeight(!0)-i.$mainWrapper.height()},C.call(i),i.$root.fadeTo(200,1,function(){"image"!=o.type&&$.call(i)}),x.call(i),i}function M(t,a){var o=this,i="";if(o.smbPlus=!0,b.call(o,t,a)){if(o.options.wrapperResizeDuration=0,o.$viewportMeta=e('meta[name="viewport"]'),o.oldViewportMetaContent=void 0,o.$viewportMeta.length>0?(o.oldViewportMetaContent=o.$viewportMeta.attr("content"),o.$viewportMeta.attr("content","user-scalable=no, width=device-width, initial-scale=1, maximum-scale=1")):o.$viewportMeta=e('<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1, maximum-scale=1" />').appendTo(e("head")),o.$ieTapHighlight=e('meta[name="msapplication-tap-highlight"]'),o.oldIeTapHighlight=void 0,o.$ieTapHighlight.length>0?(o.oldIeTapHighlight=o.$ieTapHighlight.attr("content"),o.$ieTapHighlight.attr("content","no")):o.$ieTapHighlight=e('<meta name="msapplication-tap-highlight" content="no" />').appendTo(e("head")),o.$root=e('<div class="smbLightOverlayWrapper smbPlus initializing"><div class="contentWrapper"></div></div>').addClass(o.options.cssClass),/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase())||(o.$root.addClass("desktopUserAgent"),o.desktopVersion=!0),o.$contentWrapper=e("> div.contentWrapper",o.$root),i='<div class="mobileOverlay"></div><div class="modalOverlay"></div>',t.length>1&&(i+='<span class="navigation prev"><span></span></span><span class="navigation next"><span></span></span>'),i+='<span class="close"><span></span></span><div class="socialButtonsWrapper"></div><span class="actions socialButtonsTrigger"><span>'+T.call(o,"Share")+"</span></span>",o.$root.append(i),o.$itemTitle=e('<h2 class="itemTitle" />').appendTo(o.$root),o.$socialButtonsWrapper=e(".socialButtonsWrapper",o.$root),o.$socialButtonsTrigger=e(".socialButtonsTrigger",o.$root),o.$modalOverlay=e("> .modalOverlay",o.$root),o.options.comments.permissions.show){var s;o.comments={},o.$root.append('<span class="actions commentsTrigger"><span>0</span></span><div class="commentsModalWrapper"><div class="main"><div class="top"><span class="comments">0</span><span class="likes">0</span><span class="sort">'+T.call(o,"Sort")+'</span></div><ul /><p class="noComments">'+T.call(o,"No comments yet")+'</p><div class="newCommentWrapper"><textarea placeholder="'+T.call(o,"Write a comment")+'"></textarea><button>'+T.call(o,"Post")+'</button></div></div><div class="anonymCommentWrapper"><p>'+T.call(o,"Add a comment")+'</p><div class="authorName"><input type="text" placeholder="'+T.call(o,"Name")+'" /></div><div class="authorEmail"><input type="text" placeholder="'+T.call(o,"Email")+'" /></div><div class="authorTextarea"><textarea placeholder="'+T.call(o,"Write a comment")+'"></textarea></div>'+(o.options.comments.requireAuthorInfo&&o.options.comments.useReCaptcha?'<div class="captchaContainer"><p class="captchaError">'+T.call(o,"Please solve the test correctly.")+'</p><div class="captcha"></div></div>':"")+'<div class="actions"><button class="cancel">'+T.call(o,"Cancel")+'</button><button class="post">'+T.call(o,"Post")+'</button></div></div><span class="closeComments">'+T.call(o,"Hide")+'</span><p class="loading">'+T.call(o,"Loading comments")+"</p></div>"),o.$commentsTrigger=e("> .actions.commentsTrigger",o.$root),o.$mainCommentsCount=e("> span",o.$commentsTrigger),o.$commentsModal=e("> .commentsModalWrapper",o.$root),o.$commentsMainWrapper=e("> .main",o.$commentsModal),o.$newCommentWrapper=e("> .newCommentWrapper",o.$commentsMainWrapper),o.$newCommentInput=e("> textarea",o.$newCommentWrapper),o.$newCommentButton=e("> button",o.$newCommentWrapper),o.$commentsTopBar=e("> .top",o.$commentsMainWrapper),o.$internalCommentsCount=e("> .comments",o.$commentsTopBar),o.$commentsLikes=e("> .likes",o.$commentsTopBar),o.$commentsSorting=e("> .sort",o.$commentsTopBar),o.$commentList=e("> ul",o.$commentsMainWrapper),o.$anonymCommentWrapper=e("> .anonymCommentWrapper",o.$commentsModal),o.$anonymCommenterNameInput=e("> .authorName > input",o.$anonymCommentWrapper),o.$anonymCommenterEmailInput=e("> .authorEmail > input",o.$anonymCommentWrapper),o.$anonymCommentInput=e("> .authorTextarea > textarea",o.$anonymCommentWrapper),o.$anonymCommentCancel=e("> .actions > .cancel",o.$anonymCommentWrapper),o.$anonymCommentPost=e("> .actions > .post",o.$anonymCommentWrapper),o.$newCommentCaptchaContainer=e("> .captchaContainer",o.$anonymCommentWrapper),o.commentSorting="asc",o.addingAjaxRequest=void 0,o.commentsOpened=!1,o.commentsAnimationTimeout,o.$commentsTrigger.on("click",function(){o.desktopVersion&&1==o.commentsOpened?o.closeComments():(o.updateItemComments(),o.desktopVersion?(o.commentsOpened=!0,clearTimeout(o.commentsAnimationTimeout),o.$root.addClass("animateComments moveComments"),o.commentsAnimationTimeout=setTimeout(function(){o.$root.removeClass("animateComments moveComments"),o.$root.width(o.$root.width()-o.$commentsModal.outerWidth(!0)),C.call(o)},200)):(o.$root.addClass("modalActive"),o.$modalOverlay.stop(!0).animate({opacity:1},{duration:200})))}),o.$commentsSorting.on("click",function(){"asc"==o.commentSorting?o.commentSorting="desc":o.commentSorting="asc",o.$commentsSorting.toggleClass("desc","desc"==o.commentSorting),k.call(o)}),o.$commentsModal.on("click","> span.closeComments",function(){o.closeComments()}),o.$newCommentInput.on("change keyup",function(){var e=o.$newCommentInput.val();o.$newCommentWrapper.toggleClass("filledIn",""!==e)}).on("focus",function(){o.options.comments.requireAuthorInfo&&(o.$anonymCommenterNameInput.trigger("focus").val("").parent().removeClass("error"),o.$anonymCommenterEmailInput.val("").parent().removeClass("error"),o.$anonymCommentInput.val("").parent().removeClass("error"),o.$newCommentCaptchaContainer.removeClass("error"),o.options.comments.useReCaptcha&&(s?grecaptcha.reset(s):s=grecaptcha.render(e("> .captcha",o.$newCommentCaptchaContainer)[0],{sitekey:o.options.googleReCaptchaSiteKey,size:"compact"})),o.$commentsModal.addClass("showAnonymWindow"))}),o.$anonymCommentCancel.on("click",function(){o.$commentsModal.removeClass("showAnonymWindow"),o.$anonymCommentWrapper.removeClass("addingAnonComment"),o.addingAjaxRequest&&(o.addingAjaxRequest.abort(),o.addingAjaxRequest=void 0)});var l=function(t,a,i,s,n,r){var m=o.currentItemIndex,l=o.items[m],c=o.comments[l.id],p=o.options.comments.requireAuthorInfo?s:o.$newCommentInput.val(),d={action:"add_comment"},h=!1;""===p||o.$newCommentWrapper.hasClass("addingComment")||(o.$newCommentCaptchaContainer.removeClass("error"),o.$newCommentInput.val(""),o.$newCommentWrapper.removeClass("filledIn").addClass("addingComment"),d.comment=p,o.options.comments.requireAuthorInfo&&(d.name=a,d.email=i),n&&(d.captcha=n),o.addingAjaxRequest=e.ajax({data:d,dataType:"json",type:"POST",url:l.comments.backend,timeout:3e4,cache:!1,error:function(){},success:function(e){null!=e.status&&("success"==e.status?(c.cache.comments.push({author:e.author.id,content:e.comment,raw:p,id:e.id,dateHtml:e.dateHtml}),c.count+=1,null==c.cache.authors[e.author.id]&&(c.cache.authors[e.author.id]={avatar:e.author.avatar,name:e.author.name,url:e.author.url})):"captcha_error"==e.status&&(o.$newCommentCaptchaContainer.addClass("error"),h=!0))},complete:function(){o.addingAjaxRequest=void 0,c.state.open&&m==o.currentItemIndex&&(r&&(o.$anonymCommentWrapper.removeClass("addingAnonComment"),o.$anonymCommentPost.text(T.call(o,"Post"))),o.$newCommentWrapper.removeClass("addingComment"),h||(r&&(o.$commentsModal.removeClass("showAnonymWindow"),o.$newCommentCaptchaContainer.removeClass("error")),k.call(o)))}}))};o.$anonymCommentPost.on("click",function(){var e=o.$anonymCommenterNameInput.val(),t=o.$anonymCommenterEmailInput.val(),a=o.$anonymCommentInput.val(),i=!1,n=void 0;o.$anonymCommenterNameInput.attr("placeholder",T.call(o,"Name")),o.$anonymCommenterEmailInput.attr("placeholder",T.call(o,"Email")),o.$anonymCommentInput.attr("placeholder",T.call(o,"Write a comment")),o.$anonymCommenterNameInput.parent().removeClass("error"),o.$anonymCommenterEmailInput.parent().removeClass("error"),o.$anonymCommentInput.parent().removeClass("error"),e||(o.$anonymCommenterNameInput.attr("placeholder",T.call(o,"Please specify your name")).parent().addClass("error"),i=!0),t&&m.test(t)||(o.$anonymCommenterEmailInput.attr("placeholder",T.call(o,"Please specify your email")).parent().addClass("error"),i=!0),a||(o.$anonymCommentInput.attr("placeholder",T.call(o,"Please write a comment")).parent().addClass("error"),i=!0),o.options.comments.useReCaptcha&&0==(n=grecaptcha.getResponse(s)).length&&(o.$newCommentCaptchaContainer.addClass("error"),i=!0),i||(o.$anonymCommentWrapper.addClass("addingAnonComment"),o.$anonymCommentPost.text(T.call(o,"Commenting")),l(0,e,t,a,n,!0))}),o.$newCommentButton.on("click",l)}o.options.like.permissions.liking&&(o.$root.append('<span class="actions likeTrigger"><span>0</span></span>'),o.$likeTrigger=e("> .actions.likeTrigger",o.$root),o.$mainLikeCount=e("> span",o.$likeTrigger),o.$likeTrigger.on("click",function(){if(!o.$root.hasClass("initializing")){var t=o.currentItemIndex,a=o.items[t],i=!a.likes.likedByUser,s={portalId:o.options.portalId,moduleId:o.options.moduleId,mediaId:a.id};a.likes.likedByUser=i,i?a.likes.numOfLikes+=1:a.likes.numOfLikes>0&&(a.likes.numOfLikes-=1),o.$mainLikeCount.text(a.likes.numOfLikes),o.$likeTrigger.toggleClass("liked",i),"number"==typeof a.journalId?(s.action="like",s.journalid=a.journalId,s.liked=i):(s.action="media_like",s.vote=i?1:-1),e.ajax({data:s,dataType:"json",type:"POST",url:o.options.websiteRoot+"DesktopModules/EasyDNNGallery/Services/SocialMediaBox.ashx",timeout:1e4,cache:!1,error:function(){},success:function(){},complete:function(){}})}})),o.$root.appendTo(o.$body),o.main={horizontalSpace:0,verticalSpace:0},e.each(o.items,function(t){var a=e("<div></div>");a.addClass("loading item_"+t).data("itemIndex",t),"image"==this.type?a.addClass("imageItem"):"video"==this.type?a.addClass("videoItem"):"audio"==this.type&&a.addClass("audioItem"),a.appendTo(o.$contentWrapper)}),C.call(o),o.$root.addClass("show"),setTimeout(function(){$.call(o)},200);var c,p=new Hammer(e("> .mobileOverlay",o.$root)[0]);return o.skipGestures=!1,p.on("swipeleft swiperight panleft panright panend tap",function(e){var a=-o.currentItemIndex*o.overlayWidth,i=e.deltaX;if("tap"==e.type)return clearTimeout(c),void(o.$root.hasClass("hideControls")?o.$root.removeClass("hideControls fadeOutControls"):(o.$root.addClass("fadeOutControls"),c=setTimeout(function(){o.$root.addClass("hideControls")},500)));if(!o.skipGestures&&o.initialItemLoaded)if(("swipeleft"==e.type||"swiperight"==e.type)&&t.length>1)"swipeleft"==e.type&&(o.currentItemIndex<o.items.length-1?y.call(o):0==o.currentItemIndex&&I.call(o));else{if("panend"==e.type){if(0==o.currentItemIndex&&i>=0||o.currentItemIndex==o.items.length-1&&i<0||Math.abs(i)<o.overlayWidth/2)return void o.$contentWrapper.removeClass(r).addClass(n).css({transform:"translate3d("+a+"px, 0, 0)"});o.skipGestures=!0;var s=-o.overlayWidth,m=1;return i>0&&(s=o.overlayWidth,m=-1),s=a+s,o.$contentWrapper.addClass(n).removeClass(r).css({transform:"translate3d("+s+"px, 0, 0)"}),void setTimeout(function(){o.skipGestures=!1,o.currentItemIndex+=m,$.call(o)},550)}(0==o.currentItemIndex&&i>=0||o.currentItemIndex==o.items.length-1&&i<0)&&((i=1-Math.abs(i)/o.overlayWidth)<.5?(i=Math.round(o.overlayWidth/4),e.deltaX<1&&(i=-i)):i=Math.round(i*e.deltaX)),o.$contentWrapper.removeClass(n).removeClass(r).css({transform:"translate3d("+(a+i)+"px, 0, 0)"})}}),x.call(o),o}}L.prototype={center:function(){var e,t,a={},o=!1,i=0,s=0,n=!1,r=!1;if(this.initialItemLoaded){switch((e=this.items[this.currentItemIndex]).type){case"image":(t=this.images[e.src].stats).isLoaded?(i=t.width,s=t.height):(i=400,s=400);break;case"video":i=e.width,s=e.height,n=!0;break;case"audio":i=460,s=36,r=!0}a=p.call(this,i,s,n,r),o=!0}o||(a.width=this.$mainWrapper.width(),a.height=this.$mainWrapper.height(),a.left=Math.floor((this.overlayWidth-(a.width+this.main.horizontalSpace))/2),a.top=Math.floor((this.overlayHeight-(a.height+this.main.verticalSpace))/2)),this.$mainWrapper.stop(!0).css(a)},showItem:function(){var t=this;t.$imagesWrapper.removeClass("imageNotLoaded"),t.$loadingOverlay.addClass("inProgress").stop(!0).fadeTo(0,1,function(){t.$loadingOverlay.css("display","")}),t.$audioVideo.html(""),e("> .viewWrapper > div",t.$mainWrapper).removeClass("activeElement"),t.$mainWrapper.removeClass("audioItem").removeClass("videoItem").removeClass("imageItem");var a=t.items[t.currentItemIndex];switch(a.type){case"image":(function(t){var a,o,i=this.images[t.src].stats;i.preloadFinished&&(this.$mainWrapper.addClass("imageItem"),e("> img",this.$imagesWrapper).removeClass("activeElement").filter(".smbLightImage_"+t.id).addClass("activeElement"),i.isLoaded?(a=i.width,o=i.height):(a=400,o=400,this.$imagesWrapper.addClass("imageNotLoaded")),this.$imagesWrapper.addClass("activeElement"),d.call(this,p.call(this,a,o)))}).call(t,a);break;case"video":h.call(t,t.currentItemIndex);break;case"audio":u.call(t,a);break;default:t.initialItemLoaded=!0}t.initialItemLoaded&&t.$root.removeClass("initializing")}},M.prototype={center:function(){var t=this,a=0;t.options.comments.permissions.show&&((a=e(">",t.$commentsModal).height()-t.$commentsTopBar.outerHeight(!0)-t.$newCommentWrapper.outerHeight(!0))<0&&(a=0),t.$commentList.css("height",a)),t.$contentWrapper.removeClass(n).removeClass(r).css({width:t.items.length*t.overlayWidth,transform:"translate3d(-"+t.currentItemIndex*t.overlayWidth+"px, 0, 0)"}),e(">",t.$contentWrapper).width(t.overlayWidth).each(function(){var a=e(this),o=a.data("itemIndex"),i=t.items[o];if(!(a.hasClass("loading")||"image"!=i.type&&o!=t.currentItemIndex))if("image"==i.type){var s=t.images[i.src].stats;e("> img",a).css(p.call(t,s.width,s.height,!1))}else"video"==i.type?e("> div",a).css(p.call(t,i.width,i.height,!0)):"audio"==i.type&&e("> div",a).css(p.call(t,460,36,!1,!0))})},showItem:function(){var t=this,a=e("> div.item_"+t.currentItemIndex,t.$contentWrapper),i=t.currentItemIndex,s=t.items[i],m=function(){i>0&&l.call(t,g.call(t,i-1)),i<t.items.length-1&&l.call(t,g.call(t,i+1))};switch(t.$contentWrapper.removeClass(n).removeClass(r).css({transform:"translate3d(-"+i*t.overlayWidth+"px, 0, 0)"}),t.options.comments.permissions.show&&(t.$newCommentInput.val(""),t.$newCommentWrapper.removeClass("filledIn"),t.comments[s.id]||(t.comments[s.id]={state:{open:!1,commentsRequest:o},count:s.comments.count,cache:{authors:{},comments:[]}}),t.$mainCommentsCount.text(t.comments[s.id].count),t.desktopVersion&&(e.each(t.comments,function(){this.state.open=!1}),t.updateItemComments())),t.options.like.permissions.liking&&(t.$likeTrigger.toggleClass("liked",s.likes.likedByUser),t.$mainLikeCount.text(s.likes.numOfLikes)),s.type){case"image":if(a.data("initialized"))return;l.call(t,i,function(){t.currentItemIndex==i&&(t.initialItemLoaded=!0,m())}),a.data("initialized",!0);break;case"video":h.call(t,t.currentItemIndex);break;case"audio":u.call(t,s);break;default:t.initialItemLoaded=!0}"image"!=s.type&&m(),t.$root.removeClass("initializing")},updateItemComments:function(){var t=this,a=t.currentItemIndex,n=t.items[a],r=t.comments[n.id];r.state.open||t.$root.hasClass("initializing")||(r.state.open=!0,r.state.commentsRequest==o?(r.state.commentsRequest=i,t.$commentsModal.addClass("loading"),e.ajax({data:{action:"list_comments"},dataType:"json",type:"GET",url:n.comments.backend,timeout:15e3,cache:!1,error:function(){r.state.commentsRequest=o},success:function(e){r.cache=e,r.count=e.comments.length,r.state.commentsRequest=s},complete:function(){r.state.open&&a==t.currentItemIndex&&(t.$commentsModal.removeClass("loading"),k.call(t))}})):(k.call(t),t.$commentsModal.removeClass("loading")),t.$internalCommentsCount.text(r.count),t.$commentsLikes.text(n.likes.numOfLikes).toggleClass("liked",n.likes.likedByUser))},closeComments:function(){var e=this,t=e.items[e.currentItemIndex];e.comments[t.id].state.open=!1,e.desktopVersion?(clearTimeout(e.commentsAnimationTimeout),e.$root.addClass("moveComments"),e.$root.css("width",""),C.call(e),e.$root.addClass("animateComments").removeClass("moveComments"),e.commentsAnimationTimeout=setTimeout(function(){e.$root.removeClass("animateComments")},300)):(e.$root.removeClass("modalActive"),e.$modalOverlay.stop(!0).animate({opacity:0},{duration:200})),e.$commentsModal.removeClass("showAnonymWindow"),e.$anonymCommentWrapper.removeClass("addingAnonComment"),e.commentsOpened=!1}},t.SmbLight_1=function(e,t){return this instanceof SmbLight_1?t.mobile?new M(e,t):new L(e,t):new SmbLight_1(e,t)}}(eds3_5_jq,window);
;;;/*! Hammer.JS - v2.0.4 - 2014-09-28
 * http://hammerjs.github.io/
 *
 * Copyright (c) 2014 Jorik Tangelder;
 * Licensed under the MIT license */
!function(a,b,c,d){"use strict";function e(a,b,c){return setTimeout(k(a,c),b)}function f(a,b,c){return Array.isArray(a)?(g(a,c[b],c),!0):!1}function g(a,b,c){var e;if(a)if(a.forEach)a.forEach(b,c);else if(a.length!==d)for(e=0;e<a.length;)b.call(c,a[e],e,a),e++;else for(e in a)a.hasOwnProperty(e)&&b.call(c,a[e],e,a)}function h(a,b,c){for(var e=Object.keys(b),f=0;f<e.length;)(!c||c&&a[e[f]]===d)&&(a[e[f]]=b[e[f]]),f++;return a}function i(a,b){return h(a,b,!0)}function j(a,b,c){var d,e=b.prototype;d=a.prototype=Object.create(e),d.constructor=a,d._super=e,c&&h(d,c)}function k(a,b){return function(){return a.apply(b,arguments)}}function l(a,b){return typeof a==kb?a.apply(b?b[0]||d:d,b):a}function m(a,b){return a===d?b:a}function n(a,b,c){g(r(b),function(b){a.addEventListener(b,c,!1)})}function o(a,b,c){g(r(b),function(b){a.removeEventListener(b,c,!1)})}function p(a,b){for(;a;){if(a==b)return!0;a=a.parentNode}return!1}function q(a,b){return a.indexOf(b)>-1}function r(a){return a.trim().split(/\s+/g)}function s(a,b,c){if(a.indexOf&&!c)return a.indexOf(b);for(var d=0;d<a.length;){if(c&&a[d][c]==b||!c&&a[d]===b)return d;d++}return-1}function t(a){return Array.prototype.slice.call(a,0)}function u(a,b,c){for(var d=[],e=[],f=0;f<a.length;){var g=b?a[f][b]:a[f];s(e,g)<0&&d.push(a[f]),e[f]=g,f++}return c&&(d=b?d.sort(function(a,c){return a[b]>c[b]}):d.sort()),d}function v(a,b){for(var c,e,f=b[0].toUpperCase()+b.slice(1),g=0;g<ib.length;){if(c=ib[g],e=c?c+f:b,e in a)return e;g++}return d}function w(){return ob++}function x(a){var b=a.ownerDocument;return b.defaultView||b.parentWindow}function y(a,b){var c=this;this.manager=a,this.callback=b,this.element=a.element,this.target=a.options.inputTarget,this.domHandler=function(b){l(a.options.enable,[a])&&c.handler(b)},this.init()}function z(a){var b,c=a.options.inputClass;return new(b=c?c:rb?N:sb?Q:qb?S:M)(a,A)}function A(a,b,c){var d=c.pointers.length,e=c.changedPointers.length,f=b&yb&&d-e===0,g=b&(Ab|Bb)&&d-e===0;c.isFirst=!!f,c.isFinal=!!g,f&&(a.session={}),c.eventType=b,B(a,c),a.emit("hammer.input",c),a.recognize(c),a.session.prevInput=c}function B(a,b){var c=a.session,d=b.pointers,e=d.length;c.firstInput||(c.firstInput=E(b)),e>1&&!c.firstMultiple?c.firstMultiple=E(b):1===e&&(c.firstMultiple=!1);var f=c.firstInput,g=c.firstMultiple,h=g?g.center:f.center,i=b.center=F(d);b.timeStamp=nb(),b.deltaTime=b.timeStamp-f.timeStamp,b.angle=J(h,i),b.distance=I(h,i),C(c,b),b.offsetDirection=H(b.deltaX,b.deltaY),b.scale=g?L(g.pointers,d):1,b.rotation=g?K(g.pointers,d):0,D(c,b);var j=a.element;p(b.srcEvent.target,j)&&(j=b.srcEvent.target),b.target=j}function C(a,b){var c=b.center,d=a.offsetDelta||{},e=a.prevDelta||{},f=a.prevInput||{};(b.eventType===yb||f.eventType===Ab)&&(e=a.prevDelta={x:f.deltaX||0,y:f.deltaY||0},d=a.offsetDelta={x:c.x,y:c.y}),b.deltaX=e.x+(c.x-d.x),b.deltaY=e.y+(c.y-d.y)}function D(a,b){var c,e,f,g,h=a.lastInterval||b,i=b.timeStamp-h.timeStamp;if(b.eventType!=Bb&&(i>xb||h.velocity===d)){var j=h.deltaX-b.deltaX,k=h.deltaY-b.deltaY,l=G(i,j,k);e=l.x,f=l.y,c=mb(l.x)>mb(l.y)?l.x:l.y,g=H(j,k),a.lastInterval=b}else c=h.velocity,e=h.velocityX,f=h.velocityY,g=h.direction;b.velocity=c,b.velocityX=e,b.velocityY=f,b.direction=g}function E(a){for(var b=[],c=0;c<a.pointers.length;)b[c]={clientX:lb(a.pointers[c].clientX),clientY:lb(a.pointers[c].clientY)},c++;return{timeStamp:nb(),pointers:b,center:F(b),deltaX:a.deltaX,deltaY:a.deltaY}}function F(a){var b=a.length;if(1===b)return{x:lb(a[0].clientX),y:lb(a[0].clientY)};for(var c=0,d=0,e=0;b>e;)c+=a[e].clientX,d+=a[e].clientY,e++;return{x:lb(c/b),y:lb(d/b)}}function G(a,b,c){return{x:b/a||0,y:c/a||0}}function H(a,b){return a===b?Cb:mb(a)>=mb(b)?a>0?Db:Eb:b>0?Fb:Gb}function I(a,b,c){c||(c=Kb);var d=b[c[0]]-a[c[0]],e=b[c[1]]-a[c[1]];return Math.sqrt(d*d+e*e)}function J(a,b,c){c||(c=Kb);var d=b[c[0]]-a[c[0]],e=b[c[1]]-a[c[1]];return 180*Math.atan2(e,d)/Math.PI}function K(a,b){return J(b[1],b[0],Lb)-J(a[1],a[0],Lb)}function L(a,b){return I(b[0],b[1],Lb)/I(a[0],a[1],Lb)}function M(){this.evEl=Nb,this.evWin=Ob,this.allow=!0,this.pressed=!1,y.apply(this,arguments)}function N(){this.evEl=Rb,this.evWin=Sb,y.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function O(){this.evTarget=Ub,this.evWin=Vb,this.started=!1,y.apply(this,arguments)}function P(a,b){var c=t(a.touches),d=t(a.changedTouches);return b&(Ab|Bb)&&(c=u(c.concat(d),"identifier",!0)),[c,d]}function Q(){this.evTarget=Xb,this.targetIds={},y.apply(this,arguments)}function R(a,b){var c=t(a.touches),d=this.targetIds;if(b&(yb|zb)&&1===c.length)return d[c[0].identifier]=!0,[c,c];var e,f,g=t(a.changedTouches),h=[],i=this.target;if(f=c.filter(function(a){return p(a.target,i)}),b===yb)for(e=0;e<f.length;)d[f[e].identifier]=!0,e++;for(e=0;e<g.length;)d[g[e].identifier]&&h.push(g[e]),b&(Ab|Bb)&&delete d[g[e].identifier],e++;return h.length?[u(f.concat(h),"identifier",!0),h]:void 0}function S(){y.apply(this,arguments);var a=k(this.handler,this);this.touch=new Q(this.manager,a),this.mouse=new M(this.manager,a)}function T(a,b){this.manager=a,this.set(b)}function U(a){if(q(a,bc))return bc;var b=q(a,cc),c=q(a,dc);return b&&c?cc+" "+dc:b||c?b?cc:dc:q(a,ac)?ac:_b}function V(a){this.id=w(),this.manager=null,this.options=i(a||{},this.defaults),this.options.enable=m(this.options.enable,!0),this.state=ec,this.simultaneous={},this.requireFail=[]}function W(a){return a&jc?"cancel":a&hc?"end":a&gc?"move":a&fc?"start":""}function X(a){return a==Gb?"down":a==Fb?"up":a==Db?"left":a==Eb?"right":""}function Y(a,b){var c=b.manager;return c?c.get(a):a}function Z(){V.apply(this,arguments)}function $(){Z.apply(this,arguments),this.pX=null,this.pY=null}function _(){Z.apply(this,arguments)}function ab(){V.apply(this,arguments),this._timer=null,this._input=null}function bb(){Z.apply(this,arguments)}function cb(){Z.apply(this,arguments)}function db(){V.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function eb(a,b){return b=b||{},b.recognizers=m(b.recognizers,eb.defaults.preset),new fb(a,b)}function fb(a,b){b=b||{},this.options=i(b,eb.defaults),this.options.inputTarget=this.options.inputTarget||a,this.handlers={},this.session={},this.recognizers=[],this.element=a,this.input=z(this),this.touchAction=new T(this,this.options.touchAction),gb(this,!0),g(b.recognizers,function(a){var b=this.add(new a[0](a[1]));a[2]&&b.recognizeWith(a[2]),a[3]&&b.requireFailure(a[3])},this)}function gb(a,b){var c=a.element;g(a.options.cssProps,function(a,d){c.style[v(c.style,d)]=b?a:""})}function hb(a,c){var d=b.createEvent("Event");d.initEvent(a,!0,!0),d.gesture=c,c.target.dispatchEvent(d)}var ib=["","webkit","moz","MS","ms","o"],jb=b.createElement("div"),kb="function",lb=Math.round,mb=Math.abs,nb=Date.now,ob=1,pb=/mobile|tablet|ip(ad|hone|od)|android/i,qb="ontouchstart"in a,rb=v(a,"PointerEvent")!==d,sb=qb&&pb.test(navigator.userAgent),tb="touch",ub="pen",vb="mouse",wb="kinect",xb=25,yb=1,zb=2,Ab=4,Bb=8,Cb=1,Db=2,Eb=4,Fb=8,Gb=16,Hb=Db|Eb,Ib=Fb|Gb,Jb=Hb|Ib,Kb=["x","y"],Lb=["clientX","clientY"];y.prototype={handler:function(){},init:function(){this.evEl&&n(this.element,this.evEl,this.domHandler),this.evTarget&&n(this.target,this.evTarget,this.domHandler),this.evWin&&n(x(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&o(this.element,this.evEl,this.domHandler),this.evTarget&&o(this.target,this.evTarget,this.domHandler),this.evWin&&o(x(this.element),this.evWin,this.domHandler)}};var Mb={mousedown:yb,mousemove:zb,mouseup:Ab},Nb="mousedown",Ob="mousemove mouseup";j(M,y,{handler:function(a){var b=Mb[a.type];b&yb&&0===a.button&&(this.pressed=!0),b&zb&&1!==a.which&&(b=Ab),this.pressed&&this.allow&&(b&Ab&&(this.pressed=!1),this.callback(this.manager,b,{pointers:[a],changedPointers:[a],pointerType:vb,srcEvent:a}))}});var Pb={pointerdown:yb,pointermove:zb,pointerup:Ab,pointercancel:Bb,pointerout:Bb},Qb={2:tb,3:ub,4:vb,5:wb},Rb="pointerdown",Sb="pointermove pointerup pointercancel";a.MSPointerEvent&&(Rb="MSPointerDown",Sb="MSPointerMove MSPointerUp MSPointerCancel"),j(N,y,{handler:function(a){var b=this.store,c=!1,d=a.type.toLowerCase().replace("ms",""),e=Pb[d],f=Qb[a.pointerType]||a.pointerType,g=f==tb,h=s(b,a.pointerId,"pointerId");e&yb&&(0===a.button||g)?0>h&&(b.push(a),h=b.length-1):e&(Ab|Bb)&&(c=!0),0>h||(b[h]=a,this.callback(this.manager,e,{pointers:b,changedPointers:[a],pointerType:f,srcEvent:a}),c&&b.splice(h,1))}});var Tb={touchstart:yb,touchmove:zb,touchend:Ab,touchcancel:Bb},Ub="touchstart",Vb="touchstart touchmove touchend touchcancel";j(O,y,{handler:function(a){var b=Tb[a.type];if(b===yb&&(this.started=!0),this.started){var c=P.call(this,a,b);b&(Ab|Bb)&&c[0].length-c[1].length===0&&(this.started=!1),this.callback(this.manager,b,{pointers:c[0],changedPointers:c[1],pointerType:tb,srcEvent:a})}}});var Wb={touchstart:yb,touchmove:zb,touchend:Ab,touchcancel:Bb},Xb="touchstart touchmove touchend touchcancel";j(Q,y,{handler:function(a){var b=Wb[a.type],c=R.call(this,a,b);c&&this.callback(this.manager,b,{pointers:c[0],changedPointers:c[1],pointerType:tb,srcEvent:a})}}),j(S,y,{handler:function(a,b,c){var d=c.pointerType==tb,e=c.pointerType==vb;if(d)this.mouse.allow=!1;else if(e&&!this.mouse.allow)return;b&(Ab|Bb)&&(this.mouse.allow=!0),this.callback(a,b,c)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Yb=v(jb.style,"touchAction"),Zb=Yb!==d,$b="compute",_b="auto",ac="manipulation",bc="none",cc="pan-x",dc="pan-y";T.prototype={set:function(a){a==$b&&(a=this.compute()),Zb&&(this.manager.element.style[Yb]=a),this.actions=a.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var a=[];return g(this.manager.recognizers,function(b){l(b.options.enable,[b])&&(a=a.concat(b.getTouchAction()))}),U(a.join(" "))},preventDefaults:function(a){if(!Zb){var b=a.srcEvent,c=a.offsetDirection;if(this.manager.session.prevented)return void b.preventDefault();var d=this.actions,e=q(d,bc),f=q(d,dc),g=q(d,cc);return e||f&&c&Hb||g&&c&Ib?this.preventSrc(b):void 0}},preventSrc:function(a){this.manager.session.prevented=!0,a.preventDefault()}};var ec=1,fc=2,gc=4,hc=8,ic=hc,jc=16,kc=32;V.prototype={defaults:{},set:function(a){return h(this.options,a),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(a){if(f(a,"recognizeWith",this))return this;var b=this.simultaneous;return a=Y(a,this),b[a.id]||(b[a.id]=a,a.recognizeWith(this)),this},dropRecognizeWith:function(a){return f(a,"dropRecognizeWith",this)?this:(a=Y(a,this),delete this.simultaneous[a.id],this)},requireFailure:function(a){if(f(a,"requireFailure",this))return this;var b=this.requireFail;return a=Y(a,this),-1===s(b,a)&&(b.push(a),a.requireFailure(this)),this},dropRequireFailure:function(a){if(f(a,"dropRequireFailure",this))return this;a=Y(a,this);var b=s(this.requireFail,a);return b>-1&&this.requireFail.splice(b,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(a){return!!this.simultaneous[a.id]},emit:function(a){function b(b){c.manager.emit(c.options.event+(b?W(d):""),a)}var c=this,d=this.state;hc>d&&b(!0),b(),d>=hc&&b(!0)},tryEmit:function(a){return this.canEmit()?this.emit(a):void(this.state=kc)},canEmit:function(){for(var a=0;a<this.requireFail.length;){if(!(this.requireFail[a].state&(kc|ec)))return!1;a++}return!0},recognize:function(a){var b=h({},a);return l(this.options.enable,[this,b])?(this.state&(ic|jc|kc)&&(this.state=ec),this.state=this.process(b),void(this.state&(fc|gc|hc|jc)&&this.tryEmit(b))):(this.reset(),void(this.state=kc))},process:function(){},getTouchAction:function(){},reset:function(){}},j(Z,V,{defaults:{pointers:1},attrTest:function(a){var b=this.options.pointers;return 0===b||a.pointers.length===b},process:function(a){var b=this.state,c=a.eventType,d=b&(fc|gc),e=this.attrTest(a);return d&&(c&Bb||!e)?b|jc:d||e?c&Ab?b|hc:b&fc?b|gc:fc:kc}}),j($,Z,{defaults:{event:"pan",threshold:10,pointers:1,direction:Jb},getTouchAction:function(){var a=this.options.direction,b=[];return a&Hb&&b.push(dc),a&Ib&&b.push(cc),b},directionTest:function(a){var b=this.options,c=!0,d=a.distance,e=a.direction,f=a.deltaX,g=a.deltaY;return e&b.direction||(b.direction&Hb?(e=0===f?Cb:0>f?Db:Eb,c=f!=this.pX,d=Math.abs(a.deltaX)):(e=0===g?Cb:0>g?Fb:Gb,c=g!=this.pY,d=Math.abs(a.deltaY))),a.direction=e,c&&d>b.threshold&&e&b.direction},attrTest:function(a){return Z.prototype.attrTest.call(this,a)&&(this.state&fc||!(this.state&fc)&&this.directionTest(a))},emit:function(a){this.pX=a.deltaX,this.pY=a.deltaY;var b=X(a.direction);b&&this.manager.emit(this.options.event+b,a),this._super.emit.call(this,a)}}),j(_,Z,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[bc]},attrTest:function(a){return this._super.attrTest.call(this,a)&&(Math.abs(a.scale-1)>this.options.threshold||this.state&fc)},emit:function(a){if(this._super.emit.call(this,a),1!==a.scale){var b=a.scale<1?"in":"out";this.manager.emit(this.options.event+b,a)}}}),j(ab,V,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[_b]},process:function(a){var b=this.options,c=a.pointers.length===b.pointers,d=a.distance<b.threshold,f=a.deltaTime>b.time;if(this._input=a,!d||!c||a.eventType&(Ab|Bb)&&!f)this.reset();else if(a.eventType&yb)this.reset(),this._timer=e(function(){this.state=ic,this.tryEmit()},b.time,this);else if(a.eventType&Ab)return ic;return kc},reset:function(){clearTimeout(this._timer)},emit:function(a){this.state===ic&&(a&&a.eventType&Ab?this.manager.emit(this.options.event+"up",a):(this._input.timeStamp=nb(),this.manager.emit(this.options.event,this._input)))}}),j(bb,Z,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[bc]},attrTest:function(a){return this._super.attrTest.call(this,a)&&(Math.abs(a.rotation)>this.options.threshold||this.state&fc)}}),j(cb,Z,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Hb|Ib,pointers:1},getTouchAction:function(){return $.prototype.getTouchAction.call(this)},attrTest:function(a){var b,c=this.options.direction;return c&(Hb|Ib)?b=a.velocity:c&Hb?b=a.velocityX:c&Ib&&(b=a.velocityY),this._super.attrTest.call(this,a)&&c&a.direction&&a.distance>this.options.threshold&&mb(b)>this.options.velocity&&a.eventType&Ab},emit:function(a){var b=X(a.direction);b&&this.manager.emit(this.options.event+b,a),this.manager.emit(this.options.event,a)}}),j(db,V,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[ac]},process:function(a){var b=this.options,c=a.pointers.length===b.pointers,d=a.distance<b.threshold,f=a.deltaTime<b.time;if(this.reset(),a.eventType&yb&&0===this.count)return this.failTimeout();if(d&&f&&c){if(a.eventType!=Ab)return this.failTimeout();var g=this.pTime?a.timeStamp-this.pTime<b.interval:!0,h=!this.pCenter||I(this.pCenter,a.center)<b.posThreshold;this.pTime=a.timeStamp,this.pCenter=a.center,h&&g?this.count+=1:this.count=1,this._input=a;var i=this.count%b.taps;if(0===i)return this.hasRequireFailures()?(this._timer=e(function(){this.state=ic,this.tryEmit()},b.interval,this),fc):ic}return kc},failTimeout:function(){return this._timer=e(function(){this.state=kc},this.options.interval,this),kc},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==ic&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),eb.VERSION="2.0.4",eb.defaults={domEvents:!1,touchAction:$b,enable:!0,inputTarget:null,inputClass:null,preset:[[bb,{enable:!1}],[_,{enable:!1},["rotate"]],[cb,{direction:Hb}],[$,{direction:Hb},["swipe"]],[db],[db,{event:"doubletap",taps:2},["tap"]],[ab]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};var lc=1,mc=2;fb.prototype={set:function(a){return h(this.options,a),a.touchAction&&this.touchAction.update(),a.inputTarget&&(this.input.destroy(),this.input.target=a.inputTarget,this.input.init()),this},stop:function(a){this.session.stopped=a?mc:lc},recognize:function(a){var b=this.session;if(!b.stopped){this.touchAction.preventDefaults(a);var c,d=this.recognizers,e=b.curRecognizer;(!e||e&&e.state&ic)&&(e=b.curRecognizer=null);for(var f=0;f<d.length;)c=d[f],b.stopped===mc||e&&c!=e&&!c.canRecognizeWith(e)?c.reset():c.recognize(a),!e&&c.state&(fc|gc|hc)&&(e=b.curRecognizer=c),f++}},get:function(a){if(a instanceof V)return a;for(var b=this.recognizers,c=0;c<b.length;c++)if(b[c].options.event==a)return b[c];return null},add:function(a){if(f(a,"add",this))return this;var b=this.get(a.options.event);return b&&this.remove(b),this.recognizers.push(a),a.manager=this,this.touchAction.update(),a},remove:function(a){if(f(a,"remove",this))return this;var b=this.recognizers;return a=this.get(a),b.splice(s(b,a),1),this.touchAction.update(),this},on:function(a,b){var c=this.handlers;return g(r(a),function(a){c[a]=c[a]||[],c[a].push(b)}),this},off:function(a,b){var c=this.handlers;return g(r(a),function(a){b?c[a].splice(s(c[a],b),1):delete c[a]}),this},emit:function(a,b){this.options.domEvents&&hb(a,b);var c=this.handlers[a]&&this.handlers[a].slice();if(c&&c.length){b.type=a,b.preventDefault=function(){b.srcEvent.preventDefault()};for(var d=0;d<c.length;)c[d](b),d++}},destroy:function(){this.element&&gb(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},h(eb,{INPUT_START:yb,INPUT_MOVE:zb,INPUT_END:Ab,INPUT_CANCEL:Bb,STATE_POSSIBLE:ec,STATE_BEGAN:fc,STATE_CHANGED:gc,STATE_ENDED:hc,STATE_RECOGNIZED:ic,STATE_CANCELLED:jc,STATE_FAILED:kc,DIRECTION_NONE:Cb,DIRECTION_LEFT:Db,DIRECTION_RIGHT:Eb,DIRECTION_UP:Fb,DIRECTION_DOWN:Gb,DIRECTION_HORIZONTAL:Hb,DIRECTION_VERTICAL:Ib,DIRECTION_ALL:Jb,Manager:fb,Input:y,TouchAction:T,TouchInput:Q,MouseInput:M,PointerEventInput:N,TouchMouseInput:S,SingleTouchInput:O,Recognizer:V,AttrRecognizer:Z,Tap:db,Pan:$,Swipe:cb,Pinch:_,Rotate:bb,Press:ab,on:n,off:o,each:g,merge:i,extend:h,inherit:j,bindFn:k,prefixed:v}),typeof define==kb&&define.amd?define(function(){return eb}):"undefined"!=typeof module&&module.exports?module.exports=eb:a[c]=eb}(window,document,"Hammer");
//# sourceMappingURL=hammer.min.map
;;;(function($){var defaultOptions={instanceGlobal:'EasyDnnSolutions1_1_instance',google:{maps:{api:{key:'',libraries:[]}}}},$window=$(window),getExplicitStyleValue=function($element,styleProperty){var propertyValue='',styleAttribute=$element.attr('style'),zIndexStartPosition,semicolonPosition;if(typeof styleAttribute!='string')
return propertyValue;zIndexStartPosition=styleAttribute.indexOf(' '+styleProperty+':');if(zIndexStartPosition==-1){zIndexStartPosition=styleAttribute.indexOf(';'+styleProperty+':');if(zIndexStartPosition==-1){zIndexStartPosition=styleAttribute.indexOf(styleProperty+':');if(zIndexStartPosition!=0)
return propertyValue;}else
zIndexStartPosition++;}else
zIndexStartPosition++;propertyValue=styleAttribute.substr(zIndexStartPosition+styleProperty.length+1);semicolonPosition=propertyValue.indexOf(';');if(semicolonPosition==-1)
return propertyValue.trim();propertyValue=propertyValue.substr(0,semicolonPosition).trim();return propertyValue;};GoogleHelper=function(parent){var self=this;self.parent=parent;self.maps={api:{loaded:(typeof window.google=='object'&&typeof window.google.maps=='object'),callbacks:[]}}
self.options=parent.options.google;self.public={maps:{api:{callback:function(){var i=0,l=self.maps.api.callbacks.length;self.maps.api.loaded=true;for(;i<l;i++)
self.maps.api.callbacks[i]();},load:function(){var tagId='eds_googleMapsApi',gMapsKey=self.options.maps.api.key,script,src='https://maps.googleapis.com/maps/api/js?v=3.39&callback='+self.parent.options.instanceGlobal+'.google.maps.api.callback';if($('script#'+tagId,self.parent.$head).length==0){if(typeof gMapsKey!='string')
gMapsKey='';if(gMapsKey!='')
gMapsKey='&key='+gMapsKey;script=document.createElement('script');script.type='text/javascript';script.id=tagId;if(self.options.maps.api.libraries)
src+='&libraries='+self.options.maps.api.libraries.join(',');src+=gMapsKey;script.src=src;self.parent.$head[0].appendChild(script);}
return self.parent;},onLoad:function(toExecute){if(self.maps.api.loaded)
toExecute();else{self.maps.api.callbacks.push(toExecute)
self.public.maps.api.load();}
return self.parent;}}}};return self.public;}
window.EasyDnnSolutions1_1=function(instanceOptions){var self=this;self.options=$.extend(true,{},defaultOptions,instanceOptions);self.google=new GoogleHelper(this);self.$head=$('html > head');$(function(){$('body').on('click','.eds_openModal',function(){var $clicked=$(this),$modalTarget=$('.eds_modalWrapper').filter(function(){return $clicked.data('targetId')==this.id||$(this).hasClass($clicked.data('targetClass'));}),$dnnModuleElements=$modalTarget.parents('.DnnModule'),$modalContent,$modalResizeWrapper,$modalContentTitle,initialHeight,resizeContent=function(){var windowHeight=$window.height(),ContentHDiff=Math.round($modalContent.outerHeight(true)-$modalContent.height()),resizeWrapperHDiff=Math.round($modalResizeWrapper.outerHeight(true)-$modalResizeWrapper.height()),titleHeight=$modalContentTitle.outerHeight(true),maxHeight=windowHeight-ContentHDiff-resizeWrapperHDiff-titleHeight;if(maxHeight<initialHeight)
$modalResizeWrapper.height(maxHeight);else
$modalResizeWrapper.css('height','');};$dnnModuleElements.each(function(){var $this=$(this);$this.data('previousZIndex',getExplicitStyleValue($this,'z-index')).css('z-index',99999);});$modalTarget.addClass("eds_modalVisible");$("> .eds_modalContent",$modalTarget).addClass("eds_fadeInDown");if($modalTarget.hasClass('eds_resizable')){$modalContent=$('>',$modalTarget);$modalContentTitle=$('> h3',$modalContent);$modalResizeWrapper=$('> div',$modalContent);initialHeight=$modalResizeWrapper.height();resizeContent()
$window.on('resize.eds_modalWrapper',function(){resizeContent();});}}).on('click','.eds_modalClose',function(){var $clicked=$(this),$modalTarget=$('.eds_modalWrapper'),$dnnModuleElements=$modalTarget.parents('.DnnModule');$dnnModuleElements.each(function(){var $this=$(this);$this.css('z-index',$this.data('previousZIndex'));});$modalTarget.filter(function(){return $clicked.data('targetId')==this.id||$(this).hasClass($clicked.data('targetClass'));}).removeClass("eds_modalVisible").css('z-index','');});});}
var initOptions=null;if($('#eds_js1_1').length>0){initOptions=$('#eds_js1_1').data('initJson')}
if($('meta[name="eds__GmapsInitData"]').length>0){initOptions=JSON.parse($('meta[name="eds__GmapsInitData"]').attr("content"));}
if(window[initOptions.instanceGlobal]==undefined&&initOptions!=null)
window[initOptions.instanceGlobal]=new EasyDnnSolutions1_1(initOptions);})(eds3_5_jq);
;;;