PageSourceSearch

https://profiklass.ru/bitrix/cache/js/s1/internetclient_pk_s1_new/…e5fb996587bf8af7d80c_v1.js?1778161450489230

js profiklass.ru collected 2026-10-07 20:25:14 UTC 489,230 bytes, 6,679 lines download raw bytes

1
2; /* Start:"a:4:{s:4:"full";s:85:"/bitrix/templates/internetclient_pk_s1_new/vendor/jquery-2.1.4.min.js?177747263984345";s:6:"source";s:69:"/bitrix/templates/internetclient_pk_s1_new/vendor/jquery-2.1.4.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
vendor: 84,345 bytes, lines 3-6
3/*! jQuery v2.1.4 | (c) 2005, 2015 jQuery Foundation, Inc. | jquery.org/license */
4!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l=a.document,m="2.1.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)+1>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b="length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,aa=/[+~]/,ba=/'|\\/g,ca=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),da=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ea=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fa){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(ba,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+ra(o[l]);w=aa.test(a)&&pa(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",ea,!1):e.attachEvent&&e.attachEvent("onunload",ea)),p=!f(g),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ca,da);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?la(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ca,da),a[3]=(a[3]||a[4]||a[5]||"").replace(ca,da),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ca,da).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(ca,da),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return W.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(ca,da).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:oa(function(){return[0]}),last:oa(function(a,b){return[b-1]}),eq:oa(function(a,b,c){return[0>c?c+b:c]}),even:oa(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:oa(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:oa(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:oa(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=ma(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=na(b);function qa(){}qa.prototype=d.filters=d.pseudos,d.setFilters=new qa,g=ga.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?ga.error(a):z(a,i).slice(0)};function ra(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sa(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function ta(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ua(a,b,c){for(var d=0,e=b.length;e>d;d++)ga(a,b[d],c);return c}function va(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wa(a,b,c,d,e,f){return d&&!d[u]&&(d=wa(d)),e&&!e[u]&&(e=wa(e,f)),ia(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ua(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:va(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=va(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=va(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sa(function(a){return a===b},h,!0),l=sa(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sa(ta(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wa(i>1&&ta(m),i>1&&ra(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xa(a.slice(i,e)),f>e&&xa(a=a.slice(e)),f>e&&ra(a))}m.push(c)}return ta(m)}function ya(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=va(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&ga.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,ya(e,d)),f.selector=a}return f},i=ga.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ca,da),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ca,da),aa.test(j[0].type)&&pa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&ra(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,aa.test(a)&&pa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ja(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+K.uid++}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){
5return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b)},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?n.queue(this[0],a):void 0===b?this:this.each(function(){var c=n.queue(this,a,b);n._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&n.dequeue(this,a)})},dequeue:function(a){return this.each(function(){n.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=n.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=L.get(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var Q=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,R=["Top","Right","Bottom","Left"],S=function(a,b){return a=b||a,"none"===n.css(a,"display")||!n.contains(a.ownerDocument,a)},T=/^(?:checkbox|radio)$/i;!function(){var a=l.createDocumentFragment(),b=a.appendChild(l.createElement("div")),c=l.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button;return null==a.pageX&&null!=b.clientX&&(c=a.target.ownerDocument||l,d=c.documentElement,e=c.body,a.pageX=b.clientX+(d&&d.scrollLeft||e&&e.scrollLeft||0)-(d&&d.clientLeft||e&&e.clientLeft||0),a.pageY=b.clientY+(d&&d.scrollTop||e&&e.scrollTop||0)-(d&&d.clientTop||e&&e.clientTop||0)),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},fix:function(a){if(a[n.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=W.test(e)?this.mouseHooks:V.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new n.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=l),3===a.target.nodeType&&(a.target=a.target.parentNode),g.filter?g.filter(a,f):a},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==_()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===_()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&n.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(a){return n.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=n.extend(new n.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?n.event.trigger(e,null,b):n.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},n.removeEvent=function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)},n.Event=function(a,b){return this instanceof n.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?Z:$):this.type=a,b&&n.extend(this,b),this.timeStamp=a&&a.timeStamp||n.now(),void(this[n.expando]=!0)):new n.Event(a,b)},n.Event.prototype={isDefaultPrevented:$,isPropagationStopped:$,isImmediatePropagationStopped:$,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=Z,a&&a.preventDefault&&a.preventDefault()},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=Z,a&&a.stopPropagation&&a.stopPropagation()},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=Z,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},n.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){n.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!n.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.focusinBubbles||n.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){n.event.simulate(b,a.target,n.event.fix(a),!0)};n.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=L.access(d,b);e||d.addEventListener(a,c,!0),L.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=L.access(d,b)-1;e?L.access(d,b,e):(d.removeEventListener(a,c,!0),L.remove(d,b))}}}),n.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(g in a)this.on(g,b,c,a[g],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=$;else if(!d)return this;return 1===e&&(f=d,d=function(a){return n().off(a),f.apply(this,arguments)},d.guid=f.guid||(f.guid=n.guid++)),this.each(function(){n.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,n(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=$),this.each(function(){n.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){n.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?n.event.trigger(a,b,c,!0):void 0}});var aa=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,ba=/<([\w:]+)/,ca=/<|&#?\w+;/,da=/<(?:script|style|link)/i,ea=/checked\s*(?:[^=]|=\s*.checked.)/i,fa=/^$|\/(?:java|ecma)script/i,ga=/^true\/(.*)/,ha=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,ia={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};ia.optgroup=ia.option,ia.tbody=ia.tfoot=ia.colgroup=ia.caption=ia.thead,ia.th=ia.td;function ja(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function ka(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function la(a){var b=ga.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function ma(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function na(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function oa(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pa(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=oa(h),f=oa(a),d=0,e=f.length;e>d;d++)pa(f[d],g[d]);if(b)if(c)for(f=f||oa(a),g=g||oa(h),d=0,e=f.length;e>d;d++)na(f[d],g[d]);else na(a,h);return g=oa(h,"script"),g.length>0&&ma(g,!i&&oa(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(ca.test(e)){f=f||k.appendChild(b.createElement("div")),g=(ba.exec(e)||["",""])[1].toLowerCase(),h=ia[g]||ia._default,f.innerHTML=h[1]+e.replace(aa,"<$1></$2>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=oa(k.appendChild(e),"script"),i&&ma(f),c)){j=0;while(e=f[j++])fa.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=ja(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(oa(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&ma(oa(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(oa(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!da.test(a)&&!ia[(ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(aa,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(oa(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(oa(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&ea.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(oa(c,"script"),ka),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,oa(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,la),j=0;g>j;j++)h=f[j],fa.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(ha,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qa,ra={};function sa(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function ta(a){var b=l,c=ra[a];return c||(c=sa(a,b),"none"!==c&&c||(qa=(qa||n("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=qa[0].contentDocument,b.write(),b.close(),c=sa(a,b),qa.detach()),ra[a]=c),c}var ua=/^margin/,va=new RegExp("^("+Q+")(?!px)[a-z%]+$","i"),wa=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)};function xa(a,b,c){var d,e,f,g,h=a.style;return c=c||wa(a),c&&(g=c.getPropertyValue(b)||c[b]),c&&(""!==g||n.contains(a.ownerDocument,a)||(g=n.style(a,b)),va.test(g)&&ua.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0!==g?g+"":g}function ya(a,b){return{get:function(){return a()?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d=l.documentElement,e=l.createElement("div"),f=l.createElement("div");if(f.style){f.style.backgroundClip="content-box",f.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===f.style.backgroundClip,e.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",e.appendChild(f);function g(){f.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",f.innerHTML="",d.appendChild(e);var g=a.getComputedStyle(f,null);b="1%"!==g.top,c="4px"===g.width,d.removeChild(e)}a.getComputedStyle&&n.extend(k,{pixelPosition:function(){return g(),b},boxSizingReliable:function(){return null==c&&g(),c},reliableMarginRight:function(){var b,c=f.appendChild(l.createElement("div"));return c.style.cssText=f.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",c.style.marginRight=c.style.width="0",f.style.width="1px",d.appendChild(e),b=!parseFloat(a.getComputedStyle(c,null).marginRight),d.removeChild(e),f.removeChild(c),b}})}}(),n.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var za=/^(none|table(?!-c[ea]).+)/,Aa=new RegExp("^("+Q+")(.*)$","i"),Ba=new RegExp("^([+-])=("+Q+")","i"),Ca={position:"absolute",visibility:"hidden",display:"block"},Da={letterSpacing:"0",fontWeight:"400"},Ea=["Webkit","O","Moz","ms"];function Fa(a,b){if(b in a)return b;var c=b[0].toUpperCase()+b.slice(1),d=b,e=Ea.length;while(e--)if(b=Ea[e]+c,b in a)return b;return d}function Ga(a,b,c){var d=Aa.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Ha(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=n.css(a,c+R[f],!0,e)),d?("content"===c&&(g-=n.css(a,"padding"+R[f],!0,e)),"margin"!==c&&(g-=n.css(a,"border"+R[f]+"Width",!0,e))):(g+=n.css(a,"padding"+R[f],!0,e),"padding"!==c&&(g+=n.css(a,"border"+R[f]+"Width",!0,e)));return g}function Ia(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=wa(a),g="border-box"===n.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=xa(a,b,f),(0>e||null==e)&&(e=a.style[b]),va.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Ha(a,b,c||(g?"border":"content"),d,f)+"px"}function Ja(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=L.get(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&S(d)&&(f[g]=L.access(d,"olddisplay",ta(d.nodeName)))):(e=S(d),"none"===c&&e||L.set(d,"olddisplay",e?c:n.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}n.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=xa(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=n.camelCase(b),i=a.style;return b=n.cssProps[h]||(n.cssProps[h]=Fa(i,h)),g=n.cssHooks[b]||n.cssHooks[h],void 0===c?g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b]:(f=typeof c,"string"===f&&(e=Ba.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(n.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||n.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),g&&"set"in g&&void 0===(c=g.set(a,c,d))||(i[b]=c)),void 0)}},css:function(a,b,c,d){var e,f,g,h=n.camelCase(b);return b=n.cssProps[h]||(n.cssProps[h]=Fa(a.style,h)),g=n.cssHooks[b]||n.cssHooks[h],g&&"get"in g&&(e=g.get(a,!0,c)),void 0===e&&(e=xa(a,b,d)),"normal"===e&&b in Da&&(e=Da[b]),""===c||c?(f=parseFloat(e),c===!0||n.isNumeric(f)?f||0:e):e}}),n.each(["height","width"],function(a,b){n.cssHooks[b]={get:function(a,c,d){return c?za.test(n.css(a,"display"))&&0===a.offsetWidth?n.swap(a,Ca,function(){return Ia(a,b,d)}):Ia(a,b,d):void 0},set:function(a,c,d){var e=d&&wa(a);return Ga(a,c,d?Ha(a,b,d,"border-box"===n.css(a,"boxSizing",!1,e),e):0)}}}),n.cssHooks.marginRight=ya(k.reliableMarginRight,function(a,b){return b?n.swap(a,{display:"inline-block"},xa,[a,"marginRight"]):void 0}),n.each({margin:"",padding:"",border:"Width"},function(a,b){n.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+R[d]+b]=f[d]||f[d-2]||f[0];return e}},ua.test(a)||(n.cssHooks[a+b].set=Ga)}),n.fn.extend({css:function(a,b){return J(this,function(a,b,c){var d,e,f={},g=0;if(n.isArray(b)){for(d=wa(a),e=b.length;e>g;g++)f[b[g]]=n.css(a,b[g],!1,d);return f}return void 0!==c?n.style(a,b,c):n.css(a,b)},a,b,arguments.length>1)},show:function(){return Ja(this,!0)},hide:function(){return Ja(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){S(this)?n(this).show():n(this).hide()})}});function Ka(a,b,c,d,e){return new Ka.prototype.init(a,b,c,d,e)}n.Tween=Ka,Ka.prototype={constructor:Ka,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(n.cssNumber[c]?"":"px")},cur:function(){var a=Ka.propHooks[this.prop];return a&&a.get?a.get(this):Ka.propHooks._default.get(this)},run:function(a){var b,c=Ka.propHooks[this.prop];return this.options.duration?this.pos=b=n.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Ka.propHooks._default.set(this),this}},Ka.prototype.init.prototype=Ka.prototype,Ka.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=n.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){n.fx.step[a.prop]?n.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[n.cssProps[a.prop]]||n.cssHooks[a.prop])?n.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Ka.propHooks.scrollTop=Ka.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},n.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},n.fx=Ka.prototype.init,n.fx.step={};var La,Ma,Na=/^(?:toggle|show|hide)$/,Oa=new RegExp("^(?:([+-])=|)("+Q+")([a-z%]*)$","i"),Pa=/queueHooks$/,Qa=[Va],Ra={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=Oa.exec(b),f=e&&e[3]||(n.cssNumber[a]?"":"px"),g=(n.cssNumber[a]||"px"!==f&&+d)&&Oa.exec(n.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,n.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function Sa(){return setTimeout(function(){La=void 0}),La=n.now()}function Ta(a,b){var c,d=0,e={height:a};for(b=b?1:0;4>d;d+=2-b)c=R[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function Ua(a,b,c){for(var d,e=(Ra[b]||[]).concat(Ra["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function Va(a,b,c){var d,e,f,g,h,i,j,k,l=this,m={},o=a.style,p=a.nodeType&&S(a),q=L.get(a,"fxshow");c.queue||(h=n._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,l.always(function(){l.always(function(){h.unqueued--,n.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[o.overflow,o.overflowX,o.overflowY],j=n.css(a,"display"),k="none"===j?L.get(a,"olddisplay")||ta(a.nodeName):j,"inline"===k&&"none"===n.css(a,"float")&&(o.display="inline-block")),c.overflow&&(o.overflow="hidden",l.always(function(){o.overflow=c.overflow[0],o.overflowX=c.overflow[1],o.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],Na.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(p?"hide":"show")){if("show"!==e||!q||void 0===q[d])continue;p=!0}m[d]=q&&q[d]||n.style(a,d)}else j=void 0;if(n.isEmptyObject(m))"inline"===("none"===j?ta(a.nodeName):j)&&(o.display=j);else{q?"hidden"in q&&(p=q.hidden):q=L.access(a,"fxshow",{}),f&&(q.hidden=!p),p?n(a).show():l.done(function(){n(a).hide()}),l.done(function(){var b;L.remove(a,"fxshow");for(b in m)n.style(a,b,m[b])});for(d in m)g=Ua(p?q[d]:0,d,l),d in q||(q[d]=g.start,p&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function Wa(a,b){var c,d,e,f,g;for(c in a)if(d=n.camelCase(c),e=b[d],f=a[c],n.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=n.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function Xa(a,b,c){var d,e,f=0,g=Qa.length,h=n.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=La||Sa(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:n.extend({},b),opts:n.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:La||Sa(),duration:c.duration,tweens:[],createTween:function(b,c){var d=n.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(Wa(k,j.opts.specialEasing);g>f;f++)if(d=Qa[f].call(j,a,k,j.opts))return d;return n.map(k,Ua,j),n.isFunction(j.opts.start)&&j.opts.start.call(a,j),n.fx.timer(n.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}n.Animation=n.extend(Xa,{tweener:function(a,b){n.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],Ra[c]=Ra[c]||[],Ra[c].unshift(b)},prefilter:function(a,b){b?Qa.unshift(a):Qa.push(a)}}),n.speed=function(a,b,c){var d=a&&"object"==typeof a?n.extend({},a):{complete:c||!c&&b||n.isFunction(a)&&a,duration:a,easing:c&&b||b&&!n.isFunction(b)&&b};return d.duration=n.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in n.fx.speeds?n.fx.speeds[d.duration]:n.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){n.isFunction(d.old)&&d.old.call(this),d.queue&&n.dequeue(this,d.queue)},d},n.fn.extend({fadeTo:function(a,b,c,d){return this.filter(S).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=n.isEmptyObject(a),f=n.speed(b,c,d),g=function(){var b=Xa(this,n.extend({},a),f);(e||L.get(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=n.timers,g=L.get(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&Pa.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&n.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=L.get(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=n.timers,g=d?d.length:0;for(c.finish=!0,n.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),n.each(["toggle","show","hide"],function(a,b){var c=n.fn[b];n.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(Ta(b,!0),a,d,e)}}),n.each({slideDown:Ta("show"),slideUp:Ta("hide"),slideToggle:Ta("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){n.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),n.timers=[],n.fx.tick=function(){var a,b=0,c=n.timers;for(La=n.now();b<c.length;b++)a=c[b],a()||c[b]!==a||c.splice(b--,1);c.length||n.fx.stop(),La=void 0},n.fx.timer=function(a){n.timers.push(a),a()?n.fx.start():n.timers.pop()},n.fx.interval=13,n.fx.start=function(){Ma||(Ma=setInterval(n.fx.tick,n.fx.interval))},n.fx.stop=function(){clearInterval(Ma),Ma=null},n.fx.speeds={slow:600,fast:200,_default:400},n.fn.delay=function(a,b){return a=n.fx?n.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a=l.createElement("input"),b=l.createElement("select"),c=b.appendChild(l.createElement("option"));a.type="checkbox",k.checkOn=""!==a.value,k.optSelected=c.selected,b.disabled=!0,k.optDisabled=!c.disabled,a=l.createElement("input"),a.value="t",a.type="radio",k.radioValue="t"===a.value}();var Ya,Za,$a=n.expr.attrHandle;n.fn.extend({attr:function(a,b){return J(this,n.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){n.removeAttr(this,a)})}}),n.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===U?n.prop(a,b,c):(1===f&&n.isXMLDoc(a)||(b=b.toLowerCase(),d=n.attrHooks[b]||(n.expr.match.bool.test(b)?Za:Ya)),
6void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=n.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void n.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=n.propFix[c]||c,n.expr.match.bool.test(c)&&(a[d]=!1),a.removeAttribute(c)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&n.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),Za={set:function(a,b,c){return b===!1?n.removeAttr(a,c):a.setAttribute(c,c),c}},n.each(n.expr.match.bool.source.match(/\w+/g),function(a,b){var c=$a[b]||n.find.attr;$a[b]=function(a,b,d){var e,f;return d||(f=$a[b],$a[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,$a[b]=f),e}});var _a=/^(?:input|select|textarea|button)$/i;n.fn.extend({prop:function(a,b){return J(this,n.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[n.propFix[a]||a]})}}),n.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!n.isXMLDoc(a),f&&(b=n.propFix[b]||b,e=n.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){return a.hasAttribute("tabindex")||_a.test(a.nodeName)||a.href?a.tabIndex:-1}}}}),k.optSelected||(n.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null}}),n.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){n.propFix[this.toLowerCase()]=this});var ab=/[\t\r\n\f]/g;n.fn.extend({addClass:function(a){var b,c,d,e,f,g,h="string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).addClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=n.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0===arguments.length||"string"==typeof a&&a,i=0,j=this.length;if(n.isFunction(a))return this.each(function(b){n(this).removeClass(a.call(this,b,this.className))});if(h)for(b=(a||"").match(E)||[];j>i;i++)if(c=this[i],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(ab," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?n.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(n.isFunction(a)?function(c){n(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=n(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===U||"boolean"===c)&&(this.className&&L.set(this,"__className__",this.className),this.className=this.className||a===!1?"":L.get(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(ab," ").indexOf(b)>=0)return!0;return!1}});var bb=/\r/g;n.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=n.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,n(this).val()):a,null==e?e="":"number"==typeof e?e+="":n.isArray(e)&&(e=n.map(e,function(a){return null==a?"":a+""})),b=n.valHooks[this.type]||n.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=n.valHooks[e.type]||n.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(bb,""):null==c?"":c)}}}),n.extend({valHooks:{option:{get:function(a){var b=n.find.attr(a,"value");return null!=b?b:n.trim(n.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&n.nodeName(c.parentNode,"optgroup"))){if(b=n(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=n.makeArray(b),g=e.length;while(g--)d=e[g],(d.selected=n.inArray(d.value,f)>=0)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),n.each(["radio","checkbox"],function(){n.valHooks[this]={set:function(a,b){return n.isArray(b)?a.checked=n.inArray(n(a).val(),b)>=0:void 0}},k.checkOn||(n.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})}),n.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){n.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),n.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var cb=n.now(),db=/\?/;n.parseJSON=function(a){return JSON.parse(a+"")},n.parseXML=function(a){var b,c;if(!a||"string"!=typeof a)return null;try{c=new DOMParser,b=c.parseFromString(a,"text/xml")}catch(d){b=void 0}return(!b||b.getElementsByTagName("parsererror").length)&&n.error("Invalid XML: "+a),b};var eb=/#.*$/,fb=/([?&])_=[^&]*/,gb=/^(.*?):[ \t]*([^\r\n]*)$/gm,hb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,ib=/^(?:GET|HEAD)$/,jb=/^\/\//,kb=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,lb={},mb={},nb="*/".concat("*"),ob=a.location.href,pb=kb.exec(ob.toLowerCase())||[];function qb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(n.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function rb(a,b,c,d){var e={},f=a===mb;function g(h){var i;return e[h]=!0,n.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function sb(a,b){var c,d,e=n.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&n.extend(!0,a,d),a}function tb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function ub(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ob,type:"GET",isLocal:hb.test(pb[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":nb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":n.parseJSON,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?sb(sb(a,n.ajaxSettings),b):sb(n.ajaxSettings,a)},ajaxPrefilter:qb(lb),ajaxTransport:qb(mb),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=n.ajaxSetup({},b),l=k.context||k,m=k.context&&(l.nodeType||l.jquery)?n(l):n.event,o=n.Deferred(),p=n.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!f){f={};while(b=gb.exec(e))f[b[1].toLowerCase()]=b[2]}b=f[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?e:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return c&&c.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||ob)+"").replace(eb,"").replace(jb,pb[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=n.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(h=kb.exec(k.url.toLowerCase()),k.crossDomain=!(!h||h[1]===pb[1]&&h[2]===pb[2]&&(h[3]||("http:"===h[1]?"80":"443"))===(pb[3]||("http:"===pb[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=n.param(k.data,k.traditional)),rb(lb,k,b,v),2===t)return v;i=n.event&&k.global,i&&0===n.active++&&n.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!ib.test(k.type),d=k.url,k.hasContent||(k.data&&(d=k.url+=(db.test(d)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=fb.test(d)?d.replace(fb,"$1_="+cb++):d+(db.test(d)?"&":"?")+"_="+cb++)),k.ifModified&&(n.lastModified[d]&&v.setRequestHeader("If-Modified-Since",n.lastModified[d]),n.etag[d]&&v.setRequestHeader("If-None-Match",n.etag[d])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+nb+"; q=0.01":""):k.accepts["*"]);for(j in k.headers)v.setRequestHeader(j,k.headers[j]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(j in{success:1,error:1,complete:1})v[j](k[j]);if(c=rb(mb,k,b,v)){v.readyState=1,i&&m.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,c.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,f,h){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),c=void 0,e=h||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,f&&(u=tb(k,v,f)),u=ub(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(n.lastModified[d]=w),w=v.getResponseHeader("etag"),w&&(n.etag[d]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,i&&m.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),i&&(m.trigger("ajaxComplete",[v,k]),--n.active||n.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return n.get(a,b,c,"json")},getScript:function(a,b){return n.get(a,void 0,b,"script")}}),n.each(["get","post"],function(a,b){n[b]=function(a,c,d,e){return n.isFunction(c)&&(e=e||d,d=c,c=void 0),n.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),n._evalUrl=function(a){return n.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},n.fn.extend({wrapAll:function(a){var b;return n.isFunction(a)?this.each(function(b){n(this).wrapAll(a.call(this,b))}):(this[0]&&(b=n(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this)},wrapInner:function(a){return this.each(n.isFunction(a)?function(b){n(this).wrapInner(a.call(this,b))}:function(){var b=n(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=n.isFunction(a);return this.each(function(c){n(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){n.nodeName(this,"body")||n(this).replaceWith(this.childNodes)}).end()}}),n.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0},n.expr.filters.visible=function(a){return!n.expr.filters.hidden(a)};var vb=/%20/g,wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(n.isArray(b))n.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==n.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}n.param=function(a,b){var c,d=[],e=function(a,b){b=n.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=n.ajaxSettings&&n.ajaxSettings.traditional),n.isArray(a)||a.jquery&&!n.isPlainObject(a))n.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&").replace(vb,"+")},n.fn.extend({serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=n.prop(this,"elements");return a?n.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!n(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!T.test(a))}).map(function(a,b){var c=n(this).val();return null==c?null:n.isArray(c)?n.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}}),n.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(a){}};var Bb=0,Cb={},Db={0:200,1223:204},Eb=n.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Cb)Cb[a]()}),k.cors=!!Eb&&"withCredentials"in Eb,k.ajax=Eb=!!Eb,n.ajaxTransport(function(a){var b;return k.cors||Eb&&!a.crossDomain?{send:function(c,d){var e,f=a.xhr(),g=++Bb;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)f.setRequestHeader(e,c[e]);b=function(a){return function(){b&&(delete Cb[g],b=f.onload=f.onerror=null,"abort"===a?f.abort():"error"===a?d(f.status,f.statusText):d(Db[f.status]||f.status,f.statusText,"string"==typeof f.responseText?{text:f.responseText}:void 0,f.getAllResponseHeaders()))}},f.onload=b(),f.onerror=b("error"),b=Cb[g]=b("abort");try{f.send(a.hasContent&&a.data||null)}catch(h){if(b)throw h}},abort:function(){b&&b()}}:void 0}),n.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return n.globalEval(a),a}}}),n.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),n.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(d,e){b=n("<script>").prop({async:!0,charset:a.scriptCharset,src:a.url}).on("load error",c=function(a){b.remove(),c=null,a&&e("error"===a.type?404:200,a.type)}),l.head.appendChild(b[0])},abort:function(){c&&c()}}}});var Fb=[],Gb=/(=)\?(?=&|$)|\?\?/;n.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=Fb.pop()||n.expando+"_"+cb++;return this[a]=!0,a}}),n.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(Gb.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&Gb.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=n.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(Gb,"$1"+e):b.jsonp!==!1&&(b.url+=(db.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,Fb.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||l;var d=v.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=n.buildFragment([a],b,e),e&&e.length&&n(e).remove(),n.merge([],d.childNodes))};var Hb=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&Hb)return Hb.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=n.trim(a.slice(h)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e,dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("<div>").append(n.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,f||[a.responseText,b,a])}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};var Ib=a.document.documentElement;function Jb(a){return n.isWindow(a)?a:9===a.nodeType&&a.defaultView}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&(f+i).indexOf("auto")>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d=this[0],e={top:0,left:0},f=d&&d.ownerDocument;if(f)return b=f.documentElement,n.contains(b,d)?(typeof d.getBoundingClientRect!==U&&(e=d.getBoundingClientRect()),c=Jb(f),{top:e.top+c.pageYOffset-b.clientTop,left:e.left+c.pageXOffset-b.clientLeft}):e},position:function(){if(this[0]){var a,b,c=this[0],d={top:0,left:0};return"fixed"===n.css(c,"position")?b=c.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(d=a.offset()),d.top+=n.css(a[0],"borderTopWidth",!0),d.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-d.top-n.css(c,"marginTop",!0),left:b.left-d.left-n.css(c,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||Ib;while(a&&!n.nodeName(a,"html")&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Ib})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(b,c){var d="pageYOffset"===c;n.fn[b]=function(e){return J(this,function(b,e,f){var g=Jb(b);return void 0===f?g?g[c]:b[e]:void(g?g.scrollTo(d?a.pageXOffset:f,d?f:a.pageYOffset):b[e]=f)},b,e,arguments.length,null)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=ya(k.pixelPosition,function(a,c){return c?(c=xa(a,b),va.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return J(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.size=function(){return this.length},n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var Kb=a.jQuery,Lb=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=Lb),b&&a.jQuery===n&&(a.jQuery=Kb),n},typeof b===U&&(a.jQuery=a.$=n),n});
7
8/* End */
9;
10; /* Start:"a:4:{s:4:"full";
vendor: 15,783 bytes, lines 10-18
10s:88:"/bitrix/templates/internetclient_pk_s1_new/vendor/modernizr-2.8.3.min.js?177747263915514";s:6:"source";s:72:"/bitrix/templates/internetclient_pk_s1_new/vendor/modernizr-2.8.3.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
11/* Modernizr 2.8.3 (Custom Build) | MIT & BSD
12 * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
13 */
14;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.8.3",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["&#173;",'<style id="s',h,'">',a,"</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b)&&c(b).matches||!1;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=function(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=function(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayType("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function l(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function m(){var a=s.elements;return typeof a=="string"?a.split(" "):a}function n(a){var b=j[a[h]];return b||(b={},i++,a[h]=i,j[i]=b),b}function o(a,c,d){c||(c=b);if(k)return c.createElement(a);d||(d=n(c));var g;return d.cache[a]?g=d.cache[a].cloneNode():f.test(a)?g=(d.cache[a]=d.createElem(a)).cloneNode():g=d.createElem(a),g.canHaveChildren&&!e.test(a)&&!g.tagUrn?d.frag.appendChild(g):g}function p(a,c){a||(a=b);if(k)return a.createDocumentFragment();c=c||n(a);var d=c.frag.cloneNode(),e=0,f=m(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function q(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return s.shivMethods?o(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(s,b.frag)}function r(a){a||(a=b);var c=n(a);return s.shivCSS&&!g&&!c.hasCSS&&(c.hasCSS=!!l(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),k||q(a,c),a}var c="3.7.0",d=a.html5||{},e=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,f=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,g,h="_html5shiv",i=0,j={},k;(function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",g="hidden"in a,k=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){g=!0,k=!0}})();var s={elements:d.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:c,shivCSS:d.shivCSS!==!1,supportsUnknownElements:k,shivMethods:d.shivMethods!==!1,type:"default",shivDocument:r,createElement:o,createDocumentFragment:p};a.html5=s,r(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){function d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.loader={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};
15
16/* End */
17;
18; /* Start:"a:4:{s:4:"full";
vendor: 155,566 bytes, lines 18-5536
18s:101:"/bitrix/templates/internetclient_pk_s1_new/vendor/fancybox/jquery.fancybox.rutube.js?1777472639157077";s:6:"source";s:84:"/bitrix/templates/internetclient_pk_s1_new/vendor/fancybox/jquery.fancybox.rutube.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
19// ==================================================
20// fancyBox v3.5.7
21//
22// Licensed GPLv3 for open source use
23// or fancyBox Commercial License for commercial use
24//
25// http://fancyapps.com/fancybox/
26// Copyright 2022 fancyApps
27//
28// ==================================================
29(function (window, document, $, undefined) {
30  "use strict";
31
32  window.console = window.console || {
33    info: function (stuff) {}
34  };
35
36  // If there's no jQuery, fancyBox can't work
37  // =========================================
38
39  if (!$) {
40    return;
41  }
42
43  // Check if fancyBox is already initialized
44  // ========================================
45
46  if ($.fn.fancybox) {
47    console.info("fancyBox already initialized");
48
49    return;
50  }
51
52  // Private default settings
53  // ========================
54
55  var defaults = {
56    // Close existing modals
57    // Set this to false if you do not need to stack multiple instances
58    closeExisting: false,
59
60    // Enable infinite gallery navigation
61    loop: false,
62
63    // Horizontal space between slides
64    gutter: 50,
65
66    // Enable keyboard navigation
67    keyboard: true,
68
69    // Should allow caption to overlap the content
70    preventCaptionOverlap: true,
71
72    // Should display navigation arrows at the screen edges
73    arrows: true,
74
75    // Should display counter at the top left corner
76    infobar: true,
77
78    // Should display close button (using `btnTpl.smallBtn` template) over the content
79    // Can be true, false, "auto"
80    // If "auto" - will be automatically enabled for "html", "inline" or "ajax" items
81    smallBtn: "auto",
82
83    // Should display toolbar (buttons at the top)
84    // Can be true, false, "auto"
85    // If "auto" - will be automatically hidden if "smallBtn" is enabled
86    toolbar: "auto",
87
88    // What buttons should appear in the top right corner.
89    // Buttons will be created using templates from `btnTpl` option
90    // and they will be placed into toolbar (class="fancybox-toolbar"` element)
91    buttons: [
92      "zoom",
93      //"share",
94      "slideShow",
95      //"fullScreen",
96      //"download",
97      "thumbs",
98      "close"
99    ],
100
101    // Detect "idle" time in seconds
102    idleTime: 3,
103
104    // Disable right-click and use simple image protection for images
105    protect: false,
106
107    // Shortcut to make content "modal" - disable keyboard navigtion, hide buttons, etc
108    modal: false,
109
110    image: {
111      // Wait for images to load before displaying
112      //   true  - wait for image to load and then display;
113      //   false - display thumbnail and load the full-sized image over top,
114      //           requires predefined image dimensions (`data-width` and `data-height` attributes)
115      preload: false
116    },
117
118    ajax: {
119      // Object containing settings for ajax request
120      settings: {
121        // This helps to indicate that request comes from the modal
122        // Feel free to change naming
123        data: {
124          fancybox: true
125        }
126      }
127    },
128
129    iframe: {
130      // Iframe template
131      tpl: '<iframe id="fancybox-frame{rnd}" name="fancybox-frame{rnd}" class="fancybox-iframe" allowfullscreen="allowfullscreen" allow="autoplay; fullscreen" src=""></iframe>',
132
133      // Preload iframe before displaying it
134      // This allows to calculate iframe content width and height
135      // (note: Due to "Same Origin Policy", you can't get cross domain data).
136      preload: true,
137
138      // Custom CSS styling for iframe wrapping element
139      // You can use this to set custom iframe dimensions
140      css: {},
141
142      // Iframe tag attributes
143      attr: {
144        scrolling: "auto"
145      }
146    },
147
148    // For HTML5 video only
149    video: {
150      tpl: '<video class="fancybox-video" controls controlsList="nodownload" poster="{{poster}}">' +
151        '<source src="{{src}}" type="{{format}}" />' +
152        'Sorry, your browser doesn\'t support embedded videos, <a href="{{src}}">download</a> and watch with your favorite video player!' +
153        "</video>",
154      format: "", // custom video format
155      autoStart: true
156    },
157
158    // Default content type if cannot be detected automatically
159    defaultType: "image",
160
161    // Open/close animation type
162    // Possible values:
163    //   false            - disable
164    //   "zoom"           - zoom images from/to thumbnail
165    //   "fade"
166    //   "zoom-in-out"
167    //
168    animationEffect: "zoom",
169
170    // Duration in ms for open/close animation
171    animationDuration: 366,
172
173    // Should image change opacity while zooming
174    // If opacity is "auto", then opacity will be changed if image and thumbnail have different aspect ratios
175    zoomOpacity: "auto",
176
177    // Transition effect between slides
178    //
179    // Possible values:
180    //   false            - disable
181    //   "fade'
182    //   "slide'
183    //   "circular'
184    //   "tube'
185    //   "zoom-in-out'
186    //   "rotate'
187    //
188    transitionEffect: "fade",
189
190    // Duration in ms for transition animation
191    transitionDuration: 366,
192
193    // Custom CSS class for slide element
194    slideClass: "",
195
196    // Custom CSS class for layout
197    baseClass: "",
198
199    // Base template for layout
200    baseTpl: '<div class="fancybox-container" role="dialog" tabindex="-1">' +
201      '<div class="fancybox-bg"></div>' +
202      '<div class="fancybox-inner">' +
203      '<div class="fancybox-infobar"><span data-fancybox-index></span>&nbsp;/&nbsp;<span data-fancybox-count></span></div>' +
204      '<div class="fancybox-toolbar">{{buttons}}</div>' +
205      '<div class="fancybox-navigation">{{arrows}}</div>' +
206      '<div class="fancybox-stage"></div>' +
207      '<div class="fancybox-caption"><div class="fancybox-caption__body"></div></div>' +
208      "</div>" +
209      "</div>",
210
211    // Loading indicator template
212    spinnerTpl: '<div class="fancybox-loading"></div>',
213
214    // Error message template
215    errorTpl: '<div class="fancybox-error"><p>{{ERROR}}</p></div>',
216
217    btnTpl: {
218      download: '<a download data-fancybox-download class="fancybox-button fancybox-button--download" title="{{DOWNLOAD}}" href="javascript:;">' +
219        '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.62 17.09V19H5.38v-1.91zm-2.97-6.96L17 11.45l-5 4.87-5-4.87 1.36-1.32 2.68 2.64V5h1.92v7.77z"/></svg>' +
220        "</a>",
221
222      zoom: '<button data-fancybox-zoom class="fancybox-button fancybox-button--zoom" title="{{ZOOM}}">' +
223        '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.7 17.3l-3-3a5.9 5.9 0 0 0-.6-7.6 5.9 5.9 0 0 0-8.4 0 5.9 5.9 0 0 0 0 8.4 5.9 5.9 0 0 0 7.7.7l3 3a1 1 0 0 0 1.3 0c.4-.5.4-1 0-1.5zM8.1 13.8a4 4 0 0 1 0-5.7 4 4 0 0 1 5.7 0 4 4 0 0 1 0 5.7 4 4 0 0 1-5.7 0z"/></svg>' +
224        "</button>",
225
226      close: '<button data-fancybox-close class="fancybox-button fancybox-button--close" title="{{CLOSE}}">' +
227        '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 10.6L6.6 5.2 5.2 6.6l5.4 5.4-5.4 5.4 1.4 1.4 5.4-5.4 5.4 5.4 1.4-1.4-5.4-5.4 5.4-5.4-1.4-1.4-5.4 5.4z"/></svg>' +
228        "</button>",
229
230      // Arrows
231      arrowLeft: '<button data-fancybox-prev class="fancybox-button fancybox-button--arrow_left" title="{{PREV}}">' +
232        '<div><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11.28 15.7l-1.34 1.37L5 12l4.94-5.07 1.34 1.38-2.68 2.72H19v1.94H8.6z"/></svg></div>' +
233        "</button>",
234
235      arrowRight: '<button data-fancybox-next class="fancybox-button fancybox-button--arrow_right" title="{{NEXT}}">' +
236        '<div><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.4 12.97l-2.68 2.72 1.34 1.38L19 12l-4.94-5.07-1.34 1.38 2.68 2.72H5v1.94z"/></svg></div>' +
237        "</button>",
238
239      // This small close button will be appended to your html/inline/ajax content by default,
240      // if "smallBtn" option is not set to false
241      smallBtn: '<button type="button" data-fancybox-close class="fancybox-button fancybox-close-small" title="{{CLOSE}}">' +
242        '<svg xmlns="http://www.w3.org/2000/svg" version="1" viewBox="0 0 24 24"><path d="M13 12l5-5-1-1-5 5-5-5-1 1 5 5-5 5 1 1 5-5 5 5 1-1z"/></svg>' +
243        "</button>"
244    },
245
246    // Container is injected into this element
247    parentEl: "body",
248
249    // Hide browser vertical scrollbars; use at your own risk
250    hideScrollbar: true,
251
252    // Focus handling
253    // ==============
254
255    // Try to focus on the first focusable element after opening
256    autoFocus: true,
257
258    // Put focus back to active element after closing
259    backFocus: true,
260
261    // Do not let user to focus on element outside modal content
262    trapFocus: true,
263
264    // Module specific options
265    // =======================
266
267    fullScreen: {
268      autoStart: false
269    },
270
271    // Set `touch: false` to disable panning/swiping
272    touch: {
273      vertical: true, // Allow to drag content vertically
274      momentum: true // Continue movement after releasing mouse/touch when panning
275    },
276
277    // Hash value when initializing manually,
278    // set `false` to disable hash change
279    hash: null,
280
281    // Customize or add new media types
282    // Example:
283    /*
284      media : {
285        youtube : {
286          params : {
287            autoplay : 0
288          }
289        }
290      }
291    */
292    media: {},
293
294    slideShow: {
295      autoStart: false,
296      speed: 3000
297    },
298
299    thumbs: {
300      autoStart: false, // Display thumbnails on opening
301      hideOnClose: true, // Hide thumbnail grid when closing animation starts
302      parentEl: ".fancybox-container", // Container is injected into this element
303      axis: "y" // Vertical (y) or horizontal (x) scrolling
304    },
305
306    // Use mousewheel to navigate gallery
307    // If 'auto' - enabled for images only
308    wheel: "auto",
309
310    // Callbacks
311    //==========
312
313    // See Documentation/API/Events for more information
314    // Example:
315    /*
316      afterShow: function( instance, current ) {
317        console.info( 'Clicked element:' );
318        console.info( current.opts.$orig );
319      }
320    */
321
322    onInit: $.noop, // When instance has been initialized
323
324    beforeLoad: $.noop, // Before the content of a slide is being loaded
325    afterLoad: $.noop, // When the content of a slide is done loading
326
327    beforeShow: $.noop, // Before open animation starts
328    afterShow: $.noop, // When content is done loading and animating
329
330    beforeClose: $.noop, // Before the instance attempts to close. Return false to cancel the close.
331    afterClose: $.noop, // After instance has been closed
332
333    onActivate: $.noop, // When instance is brought to front
334    onDeactivate: $.noop, // When other instance has been activated
335
336    // Interaction
337    // ===========
338
339    // Use options below to customize taken action when user clicks or double clicks on the fancyBox area,
340    // each option can be string or method that returns value.
341    //
342    // Possible values:
343    //   "close"           - close instance
344    //   "next"            - move to next gallery item
345    //   "nextOrClose"     - move to next gallery item or close if gallery has only one item
346    //   "toggleControls"  - show/hide controls
347    //   "zoom"            - zoom image (if loaded)
348    //   false             - do nothing
349
350    // Clicked on the content
351    clickContent: function (current, event) {
352      return current.type === "image" ? "zoom" : false;
353    },
354
355    // Clicked on the slide
356    clickSlide: "close",
357
358    // Clicked on the background (backdrop) element;
359    // if you have not changed the layout, then most likely you need to use `clickSlide` option
360    clickOutside: "close",
361
362    // Same as previous two, but for double click
363    dblclickContent: false,
364    dblclickSlide: false,
365    dblclickOutside: false,
366
367    // Custom options when mobile device is detected
368    // =============================================
369
370    mobile: {
371      preventCaptionOverlap: false,
372      idleTime: false,
373      clickContent: function (current, event) {
374        return current.type === "image" ? "toggleControls" : false;
375      },
376      clickSlide: function (current, event) {
377        return current.type === "image" ? "toggleControls" : "close";
378      },
379      dblclickContent: function (current, event) {
380        return current.type === "image" ? "zoom" : false;
381      },
382      dblclickSlide: function (current, event) {
383        return current.type === "image" ? "zoom" : false;
384      }
385    },
386
387    // Internationalization
388    // ====================
389
390    lang: "en",
391    i18n: {
392      en: {
393        CLOSE: "Close",
394        NEXT: "Next",
395        PREV: "Previous",
396        ERROR: "The requested content cannot be loaded. <br/> Please try again later.",
397        PLAY_START: "Start slideshow",
398        PLAY_STOP: "Pause slideshow",
399        FULL_SCREEN: "Full screen",
400        THUMBS: "Thumbnails",
401        DOWNLOAD: "Download",
402        SHARE: "Share",
403        ZOOM: "Zoom"
404      },
405      de: {
406        CLOSE: "Schlie&szlig;en",
407        NEXT: "Weiter",
408        PREV: "Zur&uuml;ck",
409        ERROR: "Die angeforderten Daten konnten nicht geladen werden. <br/> Bitte versuchen Sie es sp&auml;ter nochmal.",
410        PLAY_START: "Diaschau starten",
411        PLAY_STOP: "Diaschau beenden",
412        FULL_SCREEN: "Vollbild",
413        THUMBS: "Vorschaubilder",
414        DOWNLOAD: "Herunterladen",
415        SHARE: "Teilen",
416        ZOOM: "Vergr&ouml;&szlig;ern"
417      }
418    }
419  };
420
421  // Few useful variables and methods
422  // ================================
423
424  var $W = $(window);
425  var $D = $(document);
426
427  var called = 0;
428
429  // Check if an object is a jQuery object and not a native JavaScript object
430  // ========================================================================
431  var isQuery = function (obj) {
432    return obj && obj.hasOwnProperty && obj instanceof $;
433  };
434
435  // Handle multiple browsers for "requestAnimationFrame" and "cancelAnimationFrame"
436  // ===============================================================================
437  var requestAFrame = (function () {
438    return (
439      window.requestAnimationFrame ||
440      window.webkitRequestAnimationFrame ||
441      window.mozRequestAnimationFrame ||
442      window.oRequestAnimationFrame ||
443      // if all else fails, use setTimeout
444      function (callback) {
445        return window.setTimeout(callback, 1000 / 60);
446      }
447    );
448  })();
449
450  var cancelAFrame = (function () {
451    return (
452      window.cancelAnimationFrame ||
453      window.webkitCancelAnimationFrame ||
454      window.mozCancelAnimationFrame ||
455      window.oCancelAnimationFrame ||
456      function (id) {
457        window.clearTimeout(id);
458      }
459    );
460  })();
461
462  // Detect the supported transition-end event property name
463  // =======================================================
464  var transitionEnd = (function () {
465    var el = document.createElement("fakeelement"),
466      t;
467
468    var transitions = {
469      transition: "transitionend",
470      OTransition: "oTransitionEnd",
471      MozTransition: "transitionend",
472      WebkitTransition: "webkitTransitionEnd"
473    };
474
475    for (t in transitions) {
476      if (el.style[t] !== undefined) {
477        return transitions[t];
478      }
479    }
480
481    return "transitionend";
482  })();
483
484  // Force redraw on an element.
485  // This helps in cases where the browser doesn't redraw an updated element properly
486  // ================================================================================
487  var forceRedraw = function ($el) {
488    return $el && $el.length && $el[0].offsetHeight;
489  };
490
491  // Exclude array (`buttons`) options from deep merging
492  // ===================================================
493  var mergeOpts = function (opts1, opts2) {
494    var rez = $.extend(true, {}, opts1, opts2);
495
496    $.each(opts2, function (key, value) {
497      if ($.isArray(value)) {
498        rez[key] = value;
499      }
500    });
501
502    return rez;
503  };
504
505  // How much of an element is visible in viewport
506  // =============================================
507
508  var inViewport = function (elem) {
509    var elemCenter, rez;
510
511    if (!elem || elem.ownerDocument !== document) {
512      return false;
513    }
514
515    $(".fancybox-container").css("pointer-events", "none");
516
517    elemCenter = {
518      x: elem.getBoundingClientRect().left + elem.offsetWidth / 2,
519      y: elem.getBoundingClientRect().top + elem.offsetHeight / 2
520    };
521
522    rez = document.elementFromPoint(elemCenter.x, elemCenter.y) === elem;
523
524    $(".fancybox-container").css("pointer-events", "");
525
526    return rez;
527  };
528
529  // Class definition
530  // ================
531
532  var FancyBox = function (content, opts, index) {
533    var self = this;
534
535    self.opts = mergeOpts({
536      index: index
537    }, $.fancybox.defaults);
538
539    if ($.isPlainObject(opts)) {
540      self.opts = mergeOpts(self.opts, opts);
541    }
542
543    if ($.fancybox.isMobile) {
544      self.opts = mergeOpts(self.opts, self.opts.mobile);
545    }
546
547    self.id = self.opts.id || ++called;
548
549    self.currIndex = parseInt(self.opts.index, 10) || 0;
550    self.prevIndex = null;
551
552    self.prevPos = null;
553    self.currPos = 0;
554
555    self.firstRun = true;
556
557    // All group items
558    self.group = [];
559
560    // Existing slides (for current, next and previous gallery items)
561    self.slides = {};
562
563    // Create group elements
564    self.addContent(content);
565
566    if (!self.group.length) {
567      return;
568    }
569
570    self.init();
571  };
572
573  $.extend(FancyBox.prototype, {
574    // Create DOM structure
575    // ====================
576
577    init: function () {
578      var self = this,
579        firstItem = self.group[self.currIndex],
580        firstItemOpts = firstItem.opts,
581        $container,
582        buttonStr;
583
584      if (firstItemOpts.closeExisting) {
585        $.fancybox.close(true);
586      }
587
588      // Hide scrollbars
589      // ===============
590
591      $("body").addClass("fancybox-active");
592
593      if (
594        !$.fancybox.getInstance() &&
595        firstItemOpts.hideScrollbar !== false &&
596        !$.fancybox.isMobile &&
597        document.body.scrollHeight > window.innerHeight
598      ) {
599        $("head").append(
600          '<style id="fancybox-style-noscroll" type="text/css">.compensate-for-scrollbar{margin-right:' +
601          (window.innerWidth - document.documentElement.clientWidth) +
602          "px;}</style>"
603        );
604
605        $("body").addClass("compensate-for-scrollbar");
606      }
607
608      // Build html markup and set references
609      // ====================================
610
611      // Build html code for buttons and insert into main template
612      buttonStr = "";
613
614      $.each(firstItemOpts.buttons, function (index, value) {
615        buttonStr += firstItemOpts.btnTpl[value] || "";
616      });
617
618      // Create markup from base template, it will be initially hidden to
619      // avoid unnecessary work like painting while initializing is not complete
620      $container = $(
621          self.translate(
622            self,
623            firstItemOpts.baseTpl
624            .replace("{{buttons}}", buttonStr)
625            .replace("{{arrows}}", firstItemOpts.btnTpl.arrowLeft + firstItemOpts.btnTpl.arrowRight)
626          )
627        )
628        .attr("id", "fancybox-container-" + self.id)
629        .addClass(firstItemOpts.baseClass)
630        .data("FancyBox", self)
631        .appendTo(firstItemOpts.parentEl);
632
633      // Create object holding references to jQuery wrapped nodes
634      self.$refs = {
635        container: $container
636      };
637
638      ["bg", "inner", "infobar", "toolbar", "stage", "caption", "navigation"].forEach(function (item) {
639        self.$refs[item] = $container.find(".fancybox-" + item);
640      });
641
642      self.trigger("onInit");
643
644      // Enable events, deactive previous instances
645      self.activate();
646
647      // Build slides, load and reveal content
648      self.jumpTo(self.currIndex);
649    },
650
651    // Simple i18n support - replaces object keys found in template
652    // with corresponding values
653    // ============================================================
654
655    translate: function (obj, str) {
656      var arr = obj.opts.i18n[obj.opts.lang] || obj.opts.i18n.en;
657
658      return str.replace(/\{\{(\w+)\}\}/g, function (match, n) {
659        return arr[n] === undefined ? match : arr[n];
660      });
661    },
662
663    // Populate current group with fresh content
664    // Check if each object has valid type and content
665    // ===============================================
666
667    addContent: function (content) {
668      var self = this,
669        items = $.makeArray(content),
670        thumbs;
671
672      $.each(items, function (i, item) {
673        var obj = {},
674          opts = {},
675          $item,
676          type,
677          found,
678          src,
679          srcParts;
680
681        // Step 1 - Make sure we have an object
682        // ====================================
683
684        if ($.isPlainObject(item)) {
685          // We probably have manual usage here, something like
686          // $.fancybox.open( [ { src : "image.jpg", type : "image" } ] )
687
688          obj = item;
689          opts = item.opts || item;
690        } else if ($.type(item) === "object" && $(item).length) {
691          // Here we probably have jQuery collection returned by some selector
692          $item = $(item);
693
694          // Support attributes like `data-options='{"touch" : false}'` and `data-touch='false'`
695          opts = $item.data() || {};
696          opts = $.extend(true, {}, opts, opts.options);
697
698          // Here we store clicked element
699          opts.$orig = $item;
700
701          obj.src = self.opts.src || opts.src || $item.attr("href");
702
703          // Assume that simple syntax is used, for example:
704          //   `$.fancybox.open( $("#test"), {} );`
705          if (!obj.type && !obj.src) {
706            obj.type = "inline";
707            obj.src = item;
708          }
709        } else {
710          // Assume we have a simple html code, for example:
711          //   $.fancybox.open( '<div><h1>Hi!</h1></div>' );
712          obj = {
713            type: "html",
714            src: item + ""
715          };
716        }
717
718        // Each gallery object has full collection of options
719        obj.opts = $.extend(true, {}, self.opts, opts);
720
721        // Do not merge buttons array
722        if ($.isArray(opts.buttons)) {
723          obj.opts.buttons = opts.buttons;
724        }
725
726        if ($.fancybox.isMobile && obj.opts.mobile) {
727          obj.opts = mergeOpts(obj.opts, obj.opts.mobile);
728        }
729
730        // Step 2 - Make sure we have content type, if not - try to guess
731        // ==============================================================
732
733        type = obj.type || obj.opts.type;
734        src = obj.src || "";
735
736        if (!type && src) {
737          if ((found = src.match(/\.(mp4|mov|ogv|webm)((\?|#).*)?$/i))) {
738            type = "video";
739
740            if (!obj.opts.video.format) {
741              obj.opts.video.format = "video/" + (found[1] === "ogv" ? "ogg" : found[1]);
742            }
743          } else if (src.match(/(^data:image\/[a-z0-9+\/=]*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg|ico)((\?|#).*)?$)/i)) {
744            type = "image";
745          } else if (src.match(/\.(pdf)((\?|#).*)?$/i)) {
746            type = "iframe";
747            obj = $.extend(true, obj, {
748              contentType: "pdf",
749              opts: {
750                iframe: {
751                  preload: false
752                }
753              }
754            });
755          } else if (src.charAt(0) === "#") {
756            type = "inline";
757          }
758        }
759
760        if (type) {
761          obj.type = type;
762        } else {
763          self.trigger("objectNeedsType", obj);
764        }
765
766        if (!obj.contentType) {
767          obj.contentType = $.inArray(obj.type, ["html", "inline", "ajax"]) > -1 ? "html" : obj.type;
768        }
769
770        // Step 3 - Some adjustments
771        // =========================
772
773        obj.index = self.group.length;
774
775        if (obj.opts.smallBtn == "auto") {
776          obj.opts.smallBtn = $.inArray(obj.type, ["html", "inline", "ajax"]) > -1;
777        }
778
779        if (obj.opts.toolbar === "auto") {
780          obj.opts.toolbar = !obj.opts.smallBtn;
781        }
782
783        // Find thumbnail image, check if exists and if is in the viewport
784        obj.$thumb = obj.opts.$thumb || null;
785
786        if (obj.opts.$trigger && obj.index === self.opts.index) {
787          obj.$thumb = obj.opts.$trigger.find("img:first");
788
789          if (obj.$thumb.length) {
790            obj.opts.$orig = obj.opts.$trigger;
791          }
792        }
793
794        if (!(obj.$thumb && obj.$thumb.length) && obj.opts.$orig) {
795          obj.$thumb = obj.opts.$orig.find("img:first");
796        }
797
798        if (obj.$thumb && !obj.$thumb.length) {
799          obj.$thumb = null;
800        }
801
802        obj.thumb = obj.opts.thumb || (obj.$thumb ? obj.$thumb[0].src : null);
803
804        // "caption" is a "special" option, it can be used to customize caption per gallery item
805        if ($.type(obj.opts.caption) === "function") {
806          obj.opts.caption = obj.opts.caption.apply(item, [self, obj]);
807        }
808
809        if ($.type(self.opts.caption) === "function") {
810          obj.opts.caption = self.opts.caption.apply(item, [self, obj]);
811        }
812
813        // Make sure we have caption as a string or jQuery object
814        if (!(obj.opts.caption instanceof $)) {
815          obj.opts.caption = obj.opts.caption === undefined ? "" : obj.opts.caption + "";
816        }
817
818        // Check if url contains "filter" used to filter the content
819        // Example: "ajax.html #something"
820        if (obj.type === "ajax") {
821          srcParts = src.split(/\s+/, 2);
822
823          if (srcParts.length > 1) {
824            obj.src = srcParts.shift();
825
826            obj.opts.filter = srcParts.shift();
827          }
828        }
829
830        // Hide all buttons and disable interactivity for modal items
831        if (obj.opts.modal) {
832          obj.opts = $.extend(true, obj.opts, {
833            trapFocus: true,
834            // Remove buttons
835            infobar: 0,
836            toolbar: 0,
837
838            smallBtn: 0,
839
840            // Disable keyboard navigation
841            keyboard: 0,
842
843            // Disable some modules
844            slideShow: 0,
845            fullScreen: 0,
846            thumbs: 0,
847            touch: 0,
848
849            // Disable click event handlers
850            clickContent: false,
851            clickSlide: false,
852            clickOutside: false,
853            dblclickContent: false,
854            dblclickSlide: false,
855            dblclickOutside: false
856          });
857        }
858
859        // Step 4 - Add processed object to group
860        // ======================================
861
862        self.group.push(obj);
863      });
864
865      // Update controls if gallery is already opened
866      if (Object.keys(self.slides).length) {
867        self.updateControls();
868
869        // Update thumbnails, if needed
870        thumbs = self.Thumbs;
871
872        if (thumbs && thumbs.isActive) {
873          thumbs.create();
874
875          thumbs.focus();
876        }
877      }
878    },
879
880    // Attach an event handler functions for:
881    //   - navigation buttons
882    //   - browser scrolling, resizing;
883    //   - focusing
884    //   - keyboard
885    //   - detecting inactivity
886    // ======================================
887
888    addEvents: function () {
889      var self = this;
890
891      self.removeEvents();
892
893      // Make navigation elements clickable
894      // ==================================
895
896      self.$refs.container
897        .on("click.fb-close", "[data-fancybox-close]", function (e) {
898          e.stopPropagation();
899          e.preventDefault();
900
901          self.close(e);
902        })
903        .on("touchstart.fb-prev click.fb-prev", "[data-fancybox-prev]", function (e) {
904          e.stopPropagation();
905          e.preventDefault();
906
907          self.previous();
908        })
909        .on("touchstart.fb-next click.fb-next", "[data-fancybox-next]", function (e) {
910          e.stopPropagation();
911          e.preventDefault();
912
913          self.next();
914        })
915        .on("click.fb", "[data-fancybox-zoom]", function (e) {
916          // Click handler for zoom button
917          self[self.isScaledDown() ? "scaleToActual" : "scaleToFit"]();
918        });
919
920      // Handle page scrolling and browser resizing
921      // ==========================================
922
923      $W.on("orientationchange.fb resize.fb", function (e) {
924        if (e && e.originalEvent && e.originalEvent.type === "resize") {
925          if (self.requestId) {
926            cancelAFrame(self.requestId);
927          }
928
929          self.requestId = requestAFrame(function () {
930            self.update(e);
931          });
932        } else {
933          if (self.current && self.current.type === "iframe") {
934            self.$refs.stage.hide();
935          }
936
937          setTimeout(
938            function () {
939              self.$refs.stage.show();
940
941              self.update(e);
942            },
943            $.fancybox.isMobile ? 600 : 250
944          );
945        }
946      });
947
948      $D.on("keydown.fb", function (e) {
949        var instance = $.fancybox ? $.fancybox.getInstance() : null,
950          current = instance.current,
951          keycode = e.keyCode || e.which;
952
953        // Trap keyboard focus inside of the modal
954        // =======================================
955
956        if (keycode == 9) {
957          if (current.opts.trapFocus) {
958            self.focus(e);
959          }
960
961          return;
962        }
963
964        // Enable keyboard navigation
965        // ==========================
966
967        if (!current.opts.keyboard || e.ctrlKey || e.altKey || e.shiftKey || $(e.target).is("input,textarea,video,audio,select")) {
968          return;
969        }
970
971        // Backspace and Esc keys
972        if (keycode === 8 || keycode === 27) {
973          e.preventDefault();
974
975          self.close(e);
976
977          return;
978        }
979
980        // Left arrow and Up arrow
981        if (keycode === 37 || keycode === 38) {
982          e.preventDefault();
983
984          self.previous();
985
986          return;
987        }
988
989        // Righ arrow and Down arrow
990        if (keycode === 39 || keycode === 40) {
991          e.preventDefault();
992
993          self.next();
994
995          return;
996        }
997
998        self.trigger("afterKeydown", e, keycode);
999      });
1000
1001      // Hide controls after some inactivity period
1002      if (self.group[self.currIndex].opts.idleTime) {
1003        self.idleSecondsCounter = 0;
1004
1005        $D.on(
1006          "mousemove.fb-idle mouseleave.fb-idle mousedown.fb-idle touchstart.fb-idle touchmove.fb-idle scroll.fb-idle keydown.fb-idle",
1007          function (e) {
1008            self.idleSecondsCounter = 0;
1009
1010            if (self.isIdle) {
1011              self.showControls();
1012            }
1013
1014            self.isIdle = false;
1015          }
1016        );
1017
1018        self.idleInterval = window.setInterval(function () {
1019          self.idleSecondsCounter++;
1020
1021          if (self.idleSecondsCounter >= self.group[self.currIndex].opts.idleTime && !self.isDragging) {
1022            self.isIdle = true;
1023            self.idleSecondsCounter = 0;
1024
1025            self.hideControls();
1026          }
1027        }, 1000);
1028      }
1029    },
1030
1031    // Remove events added by the core
1032    // ===============================
1033
1034    removeEvents: function () {
1035      var self = this;
1036
1037      $W.off("orientationchange.fb resize.fb");
1038      $D.off("keydown.fb .fb-idle");
1039
1040      this.$refs.container.off(".fb-close .fb-prev .fb-next");
1041
1042      if (self.idleInterval) {
1043        window.clearInterval(self.idleInterval);
1044
1045        self.idleInterval = null;
1046      }
1047    },
1048
1049    // Change to previous gallery item
1050    // ===============================
1051
1052    previous: function (duration) {
1053      return this.jumpTo(this.currPos - 1, duration);
1054    },
1055
1056    // Change to next gallery item
1057    // ===========================
1058
1059    next: function (duration) {
1060      return this.jumpTo(this.currPos + 1, duration);
1061    },
1062
1063    // Switch to selected gallery item
1064    // ===============================
1065
1066    jumpTo: function (pos, duration) {
1067      var self = this,
1068        groupLen = self.group.length,
1069        firstRun,
1070        isMoved,
1071        loop,
1072        current,
1073        previous,
1074        slidePos,
1075        stagePos,
1076        prop,
1077        diff;
1078
1079      if (self.isDragging || self.isClosing || (self.isAnimating && self.firstRun)) {
1080        return;
1081      }
1082
1083      // Should loop?
1084      pos = parseInt(pos, 10);
1085      loop = self.current ? self.current.opts.loop : self.opts.loop;
1086
1087      if (!loop && (pos < 0 || pos >= groupLen)) {
1088        return false;
1089      }
1090
1091      // Check if opening for the first time; this helps to speed things up
1092      firstRun = self.firstRun = !Object.keys(self.slides).length;
1093
1094      // Create slides
1095      previous = self.current;
1096
1097      self.prevIndex = self.currIndex;
1098      self.prevPos = self.currPos;
1099
1100      current = self.createSlide(pos);
1101
1102      if (groupLen > 1) {
1103        if (loop || current.index < groupLen - 1) {
1104          self.createSlide(pos + 1);
1105        }
1106
1107        if (loop || current.index > 0) {
1108          self.createSlide(pos - 1);
1109        }
1110      }
1111
1112      self.current = current;
1113      self.currIndex = current.index;
1114      self.currPos = current.pos;
1115
1116      self.trigger("beforeShow", firstRun);
1117
1118      self.updateControls();
1119
1120      // Validate duration length
1121      current.forcedDuration = undefined;
1122
1123      if ($.isNumeric(duration)) {
1124        current.forcedDuration = duration;
1125      } else {
1126        duration = current.opts[firstRun ? "animationDuration" : "transitionDuration"];
1127      }
1128
1129      duration = parseInt(duration, 10);
1130
1131      // Check if user has swiped the slides or if still animating
1132      isMoved = self.isMoved(current);
1133
1134      // Make sure current slide is visible
1135      current.$slide.addClass("fancybox-slide--current");
1136
1137      // Fresh start - reveal container, current slide and start loading content
1138      if (firstRun) {
1139        if (current.opts.animationEffect && duration) {
1140          self.$refs.container.css("transition-duration", duration + "ms");
1141        }
1142
1143        self.$refs.container.addClass("fancybox-is-open").trigger("focus");
1144
1145        // Attempt to load content into slide
1146        // This will later call `afterLoad` -> `revealContent`
1147        self.loadSlide(current);
1148
1149        self.preload("image");
1150
1151        return;
1152      }
1153
1154      // Get actual slide/stage positions (before cleaning up)
1155      slidePos = $.fancybox.getTranslate(previous.$slide);
1156      stagePos = $.fancybox.getTranslate(self.$refs.stage);
1157
1158      // Clean up all slides
1159      $.each(self.slides, function (index, slide) {
1160        $.fancybox.stop(slide.$slide, true);
1161      });
1162
1163      if (previous.pos !== current.pos) {
1164        previous.isComplete = false;
1165      }
1166
1167      previous.$slide.removeClass("fancybox-slide--complete fancybox-slide--current");
1168
1169      // If slides are out of place, then animate them to correct position
1170      if (isMoved) {
1171        // Calculate horizontal swipe distance
1172        diff = slidePos.left - (previous.pos * slidePos.width + previous.pos * previous.opts.gutter);
1173
1174        $.each(self.slides, function (index, slide) {
1175          slide.$slide.removeClass("fancybox-animated").removeClass(function (index, className) {
1176            return (className.match(/(^|\s)fancybox-fx-\S+/g) || []).join(" ");
1177          });
1178
1179          // Make sure that each slide is in equal distance
1180          // This is mostly needed for freshly added slides, because they are not yet positioned
1181          var leftPos = slide.pos * slidePos.width + slide.pos * slide.opts.gutter;
1182
1183          $.fancybox.setTranslate(slide.$slide, {
1184            top: 0,
1185            left: leftPos - stagePos.left + diff
1186          });
1187
1188          if (slide.pos !== current.pos) {
1189            slide.$slide.addClass("fancybox-slide--" + (slide.pos > current.pos ? "next" : "previous"));
1190          }
1191
1192          // Redraw to make sure that transition will start
1193          forceRedraw(slide.$slide);
1194
1195          // Animate the slide
1196          $.fancybox.animate(
1197            slide.$slide, {
1198              top: 0,
1199              left: (slide.pos - current.pos) * slidePos.width + (slide.pos - current.pos) * slide.opts.gutter
1200            },
1201            duration,
1202            function () {
1203              slide.$slide
1204                .css({
1205                  transform: "",
1206                  opacity: ""
1207                })
1208                .removeClass("fancybox-slide--next fancybox-slide--previous");
1209
1210              if (slide.pos === self.currPos) {
1211                self.complete();
1212              }
1213            }
1214          );
1215        });
1216      } else if (duration && current.opts.transitionEffect) {
1217        // Set transition effect for previously active slide
1218        prop = "fancybox-animated fancybox-fx-" + current.opts.transitionEffect;
1219
1220        previous.$slide.addClass("fancybox-slide--" + (previous.pos > current.pos ? "next" : "previous"));
1221
1222        $.fancybox.animate(
1223          previous.$slide,
1224          prop,
1225          duration,
1226          function () {
1227            previous.$slide.removeClass(prop).removeClass("fancybox-slide--next fancybox-slide--previous");
1228          },
1229          false
1230        );
1231      }
1232
1233      if (current.isLoaded) {
1234        self.revealContent(current);
1235      } else {
1236        self.loadSlide(current);
1237      }
1238
1239      self.preload("image");
1240    },
1241
1242    // Create new "slide" element
1243    // These are gallery items  that are actually added to DOM
1244    // =======================================================
1245
1246    createSlide: function (pos) {
1247      var self = this,
1248        $slide,
1249        index;
1250
1251      index = pos % self.group.length;
1252      index = index < 0 ? self.group.length + index : index;
1253
1254      if (!self.slides[pos] && self.group[index]) {
1255        $slide = $('<div class="fancybox-slide"></div>').appendTo(self.$refs.stage);
1256
1257        self.slides[pos] = $.extend(true, {}, self.group[index], {
1258          pos: pos,
1259          $slide: $slide,
1260          isLoaded: false
1261        });
1262
1263        self.updateSlide(self.slides[pos]);
1264      }
1265
1266      return self.slides[pos];
1267    },
1268
1269    // Scale image to the actual size of the image;
1270    // x and y values should be relative to the slide
1271    // ==============================================
1272
1273    scaleToActual: function (x, y, duration) {
1274      var self = this,
1275        current = self.current,
1276        $content = current.$content,
1277        canvasWidth = $.fancybox.getTranslate(current.$slide).width,
1278        canvasHeight = $.fancybox.getTranslate(current.$slide).height,
1279        newImgWidth = current.width,
1280        newImgHeight = current.height,
1281        imgPos,
1282        posX,
1283        posY,
1284        scaleX,
1285        scaleY;
1286
1287      if (self.isAnimating || self.isMoved() || !$content || !(current.type == "image" && current.isLoaded && !current.hasError)) {
1288        return;
1289      }
1290
1291      self.isAnimating = true;
1292
1293      $.fancybox.stop($content);
1294
1295      x = x === undefined ? canvasWidth * 0.5 : x;
1296      y = y === undefined ? canvasHeight * 0.5 : y;
1297
1298      imgPos = $.fancybox.getTranslate($content);
1299
1300      imgPos.top -= $.fancybox.getTranslate(current.$slide).top;
1301      imgPos.left -= $.fancybox.getTranslate(current.$slide).left;
1302
1303      scaleX = newImgWidth / imgPos.width;
1304      scaleY = newImgHeight / imgPos.height;
1305
1306      // Get center position for original image
1307      posX = canvasWidth * 0.5 - newImgWidth * 0.5;
1308      posY = canvasHeight * 0.5 - newImgHeight * 0.5;
1309
1310      // Make sure image does not move away from edges
1311      if (newImgWidth > canvasWidth) {
1312        posX = imgPos.left * scaleX - (x * scaleX - x);
1313
1314        if (posX > 0) {
1315          posX = 0;
1316        }
1317
1318        if (posX < canvasWidth - newImgWidth) {
1319          posX = canvasWidth - newImgWidth;
1320        }
1321      }
1322
1323      if (newImgHeight > canvasHeight) {
1324        posY = imgPos.top * scaleY - (y * scaleY - y);
1325
1326        if (posY > 0) {
1327          posY = 0;
1328        }
1329
1330        if (posY < canvasHeight - newImgHeight) {
1331          posY = canvasHeight - newImgHeight;
1332        }
1333      }
1334
1335      self.updateCursor(newImgWidth, newImgHeight);
1336
1337      $.fancybox.animate(
1338        $content, {
1339          top: posY,
1340          left: posX,
1341          scaleX: scaleX,
1342          scaleY: scaleY
1343        },
1344        duration || 366,
1345        function () {
1346          self.isAnimating = false;
1347        }
1348      );
1349
1350      // Stop slideshow
1351      if (self.SlideShow && self.SlideShow.isActive) {
1352        self.SlideShow.stop();
1353      }
1354    },
1355
1356    // Scale image to fit inside parent element
1357    // ========================================
1358
1359    scaleToFit: function (duration) {
1360      var self = this,
1361        current = self.current,
1362        $content = current.$content,
1363        end;
1364
1365      if (self.isAnimating || self.isMoved() || !$content || !(current.type == "image" && current.isLoaded && !current.hasError)) {
1366        return;
1367      }
1368
1369      self.isAnimating = true;
1370
1371      $.fancybox.stop($content);
1372
1373      end = self.getFitPos(current);
1374
1375      self.updateCursor(end.width, end.height);
1376
1377      $.fancybox.animate(
1378        $content, {
1379          top: end.top,
1380          left: end.left,
1381          scaleX: end.width / $content.width(),
1382          scaleY: end.height / $content.height()
1383        },
1384        duration || 366,
1385        function () {
1386          self.isAnimating = false;
1387        }
1388      );
1389    },
1390
1391    // Calculate image size to fit inside viewport
1392    // ===========================================
1393
1394    getFitPos: function (slide) {
1395      var self = this,
1396        $content = slide.$content,
1397        $slide = slide.$slide,
1398        width = slide.width || slide.opts.width,
1399        height = slide.height || slide.opts.height,
1400        maxWidth,
1401        maxHeight,
1402        minRatio,
1403        aspectRatio,
1404        rez = {};
1405
1406      if (!slide.isLoaded || !$content || !$content.length) {
1407        return false;
1408      }
1409
1410      maxWidth = $.fancybox.getTranslate(self.$refs.stage).width;
1411      maxHeight = $.fancybox.getTranslate(self.$refs.stage).height;
1412
1413      maxWidth -=
1414        parseFloat($slide.css("paddingLeft")) +
1415        parseFloat($slide.css("paddingRight")) +
1416        parseFloat($content.css("marginLeft")) +
1417        parseFloat($content.css("marginRight"));
1418
1419      maxHeight -=
1420        parseFloat($slide.css("paddingTop")) +
1421        parseFloat($slide.css("paddingBottom")) +
1422        parseFloat($content.css("marginTop")) +
1423        parseFloat($content.css("marginBottom"));
1424
1425      if (!width || !height) {
1426        width = maxWidth;
1427        height = maxHeight;
1428      }
1429
1430      minRatio = Math.min(1, maxWidth / width, maxHeight / height);
1431
1432      width = minRatio * width;
1433      height = minRatio * height;
1434
1435      // Adjust width/height to precisely fit into container
1436      if (width > maxWidth - 0.5) {
1437        width = maxWidth;
1438      }
1439
1440      if (height > maxHeight - 0.5) {
1441        height = maxHeight;
1442      }
1443
1444      if (slide.type === "image") {
1445        rez.top = Math.floor((maxHeight - height) * 0.5) + parseFloat($slide.css("paddingTop"));
1446        rez.left = Math.floor((maxWidth - width) * 0.5) + parseFloat($slide.css("paddingLeft"));
1447      } else if (slide.contentType === "video") {
1448        // Force aspect ratio for the video
1449        // "I say the whole world must learn of our peaceful ways… by force!"
1450        aspectRatio = slide.opts.width && slide.opts.height ? width / height : slide.opts.ratio || 16 / 9;
1451
1452        if (height > width / aspectRatio) {
1453          height = width / aspectRatio;
1454        } else if (width > height * aspectRatio) {
1455          width = height * aspectRatio;
1456        }
1457      }
1458
1459      rez.width = width;
1460      rez.height = height;
1461
1462      return rez;
1463    },
1464
1465    // Update content size and position for all slides
1466    // ==============================================
1467
1468    update: function (e) {
1469      var self = this;
1470
1471      $.each(self.slides, function (key, slide) {
1472        self.updateSlide(slide, e);
1473      });
1474    },
1475
1476    // Update slide content position and size
1477    // ======================================
1478
1479    updateSlide: function (slide, e) {
1480      var self = this,
1481        $content = slide && slide.$content,
1482        width = slide.width || slide.opts.width,
1483        height = slide.height || slide.opts.height,
1484        $slide = slide.$slide;
1485
1486      // First, prevent caption overlap, if needed
1487      self.adjustCaption(slide);
1488
1489      // Then resize content to fit inside the slide
1490      if ($content && (width || height || slide.contentType === "video") && !slide.hasError) {
1491        $.fancybox.stop($content);
1492
1493        $.fancybox.setTranslate($content, self.getFitPos(slide));
1494
1495        if (slide.pos === self.currPos) {
1496          self.isAnimating = false;
1497
1498          self.updateCursor();
1499        }
1500      }
1501
1502      // Then some adjustments
1503      self.adjustLayout(slide);
1504
1505      if ($slide.length) {
1506        $slide.trigger("refresh");
1507
1508        if (slide.pos === self.currPos) {
1509          self.$refs.toolbar
1510            .add(self.$refs.navigation.find(".fancybox-button--arrow_right"))
1511            .toggleClass("compensate-for-scrollbar", $slide.get(0).scrollHeight > $slide.get(0).clientHeight);
1512        }
1513      }
1514
1515      self.trigger("onUpdate", slide, e);
1516    },
1517
1518    // Horizontally center slide
1519    // =========================
1520
1521    centerSlide: function (duration) {
1522      var self = this,
1523        current = self.current,
1524        $slide = current.$slide;
1525
1526      if (self.isClosing || !current) {
1527        return;
1528      }
1529
1530      $slide.siblings().css({
1531        transform: "",
1532        opacity: ""
1533      });
1534
1535      $slide
1536        .parent()
1537        .children()
1538        .removeClass("fancybox-slide--previous fancybox-slide--next");
1539
1540      $.fancybox.animate(
1541        $slide, {
1542          top: 0,
1543          left: 0,
1544          opacity: 1
1545        },
1546        duration === undefined ? 0 : duration,
1547        function () {
1548          // Clean up
1549          $slide.css({
1550            transform: "",
1551            opacity: ""
1552          });
1553
1554          if (!current.isComplete) {
1555            self.complete();
1556          }
1557        },
1558        false
1559      );
1560    },
1561
1562    // Check if current slide is moved (swiped)
1563    // ========================================
1564
1565    isMoved: function (slide) {
1566      var current = slide || this.current,
1567        slidePos,
1568        stagePos;
1569
1570      if (!current) {
1571        return false;
1572      }
1573
1574      stagePos = $.fancybox.getTranslate(this.$refs.stage);
1575      slidePos = $.fancybox.getTranslate(current.$slide);
1576
1577      return (
1578        !current.$slide.hasClass("fancybox-animated") &&
1579        (Math.abs(slidePos.top - stagePos.top) > 0.5 || Math.abs(slidePos.left - stagePos.left) > 0.5)
1580      );
1581    },
1582
1583    // Update cursor style depending if content can be zoomed
1584    // ======================================================
1585
1586    updateCursor: function (nextWidth, nextHeight) {
1587      var self = this,
1588        current = self.current,
1589        $container = self.$refs.container,
1590        canPan,
1591        isZoomable;
1592
1593      if (!current || self.isClosing || !self.Guestures) {
1594        return;
1595      }
1596
1597      $container.removeClass("fancybox-is-zoomable fancybox-can-zoomIn fancybox-can-zoomOut fancybox-can-swipe fancybox-can-pan");
1598
1599      canPan = self.canPan(nextWidth, nextHeight);
1600
1601      isZoomable = canPan ? true : self.isZoomable();
1602
1603      $container.toggleClass("fancybox-is-zoomable", isZoomable);
1604
1605      $("[data-fancybox-zoom]").prop("disabled", !isZoomable);
1606
1607      if (canPan) {
1608        $container.addClass("fancybox-can-pan");
1609      } else if (
1610        isZoomable &&
1611        (current.opts.clickContent === "zoom" || ($.isFunction(current.opts.clickContent) && current.opts.clickContent(current) == "zoom"))
1612      ) {
1613        $container.addClass("fancybox-can-zoomIn");
1614      } else if (current.opts.touch && (current.opts.touch.vertical || self.group.length > 1) && current.contentType !== "video") {
1615        $container.addClass("fancybox-can-swipe");
1616      }
1617    },
1618
1619    // Check if current slide is zoomable
1620    // ==================================
1621
1622    isZoomable: function () {
1623      var self = this,
1624        current = self.current,
1625        fitPos;
1626
1627      // Assume that slide is zoomable if:
1628      //   - image is still loading
1629      //   - actual size of the image is smaller than available area
1630      if (current && !self.isClosing && current.type === "image" && !current.hasError) {
1631        if (!current.isLoaded) {
1632          return true;
1633        }
1634
1635        fitPos = self.getFitPos(current);
1636
1637        if (fitPos && (current.width > fitPos.width || current.height > fitPos.height)) {
1638          return true;
1639        }
1640      }
1641
1642      return false;
1643    },
1644
1645    // Check if current image dimensions are smaller than actual
1646    // =========================================================
1647
1648    isScaledDown: function (nextWidth, nextHeight) {
1649      var self = this,
1650        rez = false,
1651        current = self.current,
1652        $content = current.$content;
1653
1654      if (nextWidth !== undefined && nextHeight !== undefined) {
1655        rez = nextWidth < current.width && nextHeight < current.height;
1656      } else if ($content) {
1657        rez = $.fancybox.getTranslate($content);
1658        rez = rez.width < current.width && rez.height < current.height;
1659      }
1660
1661      return rez;
1662    },
1663
1664    // Check if image dimensions exceed parent element
1665    // ===============================================
1666
1667    canPan: function (nextWidth, nextHeight) {
1668      var self = this,
1669        current = self.current,
1670        pos = null,
1671        rez = false;
1672
1673      if (current.type === "image" && (current.isComplete || (nextWidth && nextHeight)) && !current.hasError) {
1674        rez = self.getFitPos(current);
1675
1676        if (nextWidth !== undefined && nextHeight !== undefined) {
1677          pos = {
1678            width: nextWidth,
1679            height: nextHeight
1680          };
1681        } else if (current.isComplete) {
1682          pos = $.fancybox.getTranslate(current.$content);
1683        }
1684
1685        if (pos && rez) {
1686          rez = Math.abs(pos.width - rez.width) > 1.5 || Math.abs(pos.height - rez.height) > 1.5;
1687        }
1688      }
1689
1690      return rez;
1691    },
1692
1693    // Load content into the slide
1694    // ===========================
1695
1696    loadSlide: function (slide) {
1697      var self = this,
1698        type,
1699        $slide,
1700        ajaxLoad;
1701
1702      if (slide.isLoading || slide.isLoaded) {
1703        return;
1704      }
1705
1706      slide.isLoading = true;
1707
1708      if (self.trigger("beforeLoad", slide) === false) {
1709        slide.isLoading = false;
1710
1711        return false;
1712      }
1713
1714      type = slide.type;
1715      $slide = slide.$slide;
1716
1717      $slide
1718        .off("refresh")
1719        .trigger("onReset")
1720        .addClass(slide.opts.slideClass);
1721
1722      // Create content depending on the type
1723      switch (type) {
1724        case "image":
1725          self.setImage(slide);
1726
1727          break;
1728
1729        case "iframe":
1730          self.setIframe(slide);
1731
1732          break;
1733
1734        case "html":
1735          self.setContent(slide, slide.src || slide.content);
1736
1737          break;
1738
1739        case "video":
1740          self.setContent(
1741            slide,
1742            slide.opts.video.tpl
1743            .replace(/\{\{src\}\}/gi, slide.src)
1744            .replace("{{format}}", slide.opts.videoFormat || slide.opts.video.format || "")
1745            .replace("{{poster}}", slide.thumb || "")
1746          );
1747
1748          break;
1749
1750        case "inline":
1751          if ($(slide.src).length) {
1752            self.setContent(slide, $(slide.src));
1753          } else {
1754            self.setError(slide);
1755          }
1756
1757          break;
1758
1759        case "ajax":
1760          self.showLoading(slide);
1761
1762          ajaxLoad = $.ajax(
1763            $.extend({}, slide.opts.ajax.settings, {
1764              url: slide.src,
1765              success: function (data, textStatus) {
1766                if (textStatus === "success") {
1767                  self.setContent(slide, data);
1768                }
1769              },
1770              error: function (jqXHR, textStatus) {
1771                if (jqXHR && textStatus !== "abort") {
1772                  self.setError(slide);
1773                }
1774              }
1775            })
1776          );
1777
1778          $slide.one("onReset", function () {
1779            ajaxLoad.abort();
1780          });
1781
1782          break;
1783
1784        default:
1785          self.setError(slide);
1786
1787          break;
1788      }
1789
1790      return true;
1791    },
1792
1793    // Use thumbnail image, if possible
1794    // ================================
1795
1796    setImage: function (slide) {
1797      var self = this,
1798        ghost;
1799
1800      // Check if need to show loading icon
1801      setTimeout(function () {
1802        var $img = slide.$image;
1803
1804        if (!self.isClosing && slide.isLoading && (!$img || !$img.length || !$img[0].complete) && !slide.hasError) {
1805          self.showLoading(slide);
1806        }
1807      }, 50);
1808
1809      //Check if image has srcset
1810      self.checkSrcset(slide);
1811
1812      // This will be wrapper containing both ghost and actual image
1813      slide.$content = $('<div class="fancybox-content"></div>')
1814        .addClass("fancybox-is-hidden")
1815        .appendTo(slide.$slide.addClass("fancybox-slide--image"));
1816
1817      // If we have a thumbnail, we can display it while actual image is loading
1818      // Users will not stare at black screen and actual image will appear gradually
1819      if (slide.opts.preload !== false && slide.opts.width && slide.opts.height && slide.thumb) {
1820        slide.width = slide.opts.width;
1821        slide.height = slide.opts.height;
1822
1823        ghost = document.createElement("img");
1824
1825        ghost.onerror = function () {
1826          $(this).remove();
1827
1828          slide.$ghost = null;
1829        };
1830
1831        ghost.onload = function () {
1832          self.afterLoad(slide);
1833        };
1834
1835        slide.$ghost = $(ghost)
1836          .addClass("fancybox-image")
1837          .appendTo(slide.$content)
1838          .attr("src", slide.thumb);
1839      }
1840
1841      // Start loading actual image
1842      self.setBigImage(slide);
1843    },
1844
1845    // Check if image has srcset and get the source
1846    // ============================================
1847    checkSrcset: function (slide) {
1848      var srcset = slide.opts.srcset || slide.opts.image.srcset,
1849        found,
1850        temp,
1851        pxRatio,
1852        windowWidth;
1853
1854      // If we have "srcset", then we need to find first matching "src" value.
1855      // This is necessary, because when you set an src attribute, the browser will preload the image
1856      // before any javascript or even CSS is applied.
1857      if (srcset) {
1858        pxRatio = window.devicePixelRatio || 1;
1859        windowWidth = window.innerWidth * pxRatio;
1860
1861        temp = srcset.split(",").map(function (el) {
1862          var ret = {};
1863
1864          el.trim()
1865            .split(/\s+/)
1866            .forEach(function (el, i) {
1867              var value = parseInt(el.substring(0, el.length - 1), 10);
1868
1869              if (i === 0) {
1870                return (ret.url = el);
1871              }
1872
1873              if (value) {
1874                ret.value = value;
1875                ret.postfix = el[el.length - 1];
1876              }
1877            });
1878
1879          return ret;
1880        });
1881
1882        // Sort by value
1883        temp.sort(function (a, b) {
1884          return a.value - b.value;
1885        });
1886
1887        // Ok, now we have an array of all srcset values
1888        for (var j = 0; j < temp.length; j++) {
1889          var el = temp[j];
1890
1891          if ((el.postfix === "w" && el.value >= windowWidth) || (el.postfix === "x" && el.value >= pxRatio)) {
1892            found = el;
1893            break;
1894          }
1895        }
1896
1897        // If not found, take the last one
1898        if (!found && temp.length) {
1899          found = temp[temp.length - 1];
1900        }
1901
1902        if (found) {
1903          slide.src = found.url;
1904
1905          // If we have default width/height values, we can calculate height for matching source
1906          if (slide.width && slide.height && found.postfix == "w") {
1907            slide.height = (slide.width / slide.height) * found.value;
1908            slide.width = found.value;
1909          }
1910
1911          slide.opts.srcset = srcset;
1912        }
1913      }
1914    },
1915
1916    // Create full-size image
1917    // ======================
1918
1919    setBigImage: function (slide) {
1920      var self = this,
1921        img = document.createElement("img"),
1922        $img = $(img);
1923
1924      slide.$image = $img
1925        .one("error", function () {
1926          self.setError(slide);
1927        })
1928        .one("load", function () {
1929          var sizes;
1930
1931          if (!slide.$ghost) {
1932            self.resolveImageSlideSize(slide, this.naturalWidth, this.naturalHeight);
1933
1934            self.afterLoad(slide);
1935          }
1936
1937          if (self.isClosing) {
1938            return;
1939          }
1940
1941          if (slide.opts.srcset) {
1942            sizes = slide.opts.sizes;
1943
1944            if (!sizes || sizes === "auto") {
1945              sizes =
1946                (slide.width / slide.height > 1 && $W.width() / $W.height() > 1 ? "100" : Math.round((slide.width / slide.height) * 100)) +
1947                "vw";
1948            }
1949
1950            $img.attr("sizes", sizes).attr("srcset", slide.opts.srcset);
1951          }
1952
1953          // Hide temporary image after some delay
1954          if (slide.$ghost) {
1955            setTimeout(function () {
1956              if (slide.$ghost && !self.isClosing) {
1957                slide.$ghost.hide();
1958              }
1959            }, Math.min(300, Math.max(1000, slide.height / 1600)));
1960          }
1961
1962          self.hideLoading(slide);
1963        })
1964        .addClass("fancybox-image")
1965        .attr("src", slide.src)
1966        .appendTo(slide.$content);
1967
1968      if ((img.complete || img.readyState == "complete") && $img.naturalWidth && $img.naturalHeight) {
1969        $img.trigger("load");
1970      } else if (img.error) {
1971        $img.trigger("error");
1972      }
1973    },
1974
1975    // Computes the slide size from image size and maxWidth/maxHeight
1976    // ==============================================================
1977
1978    resolveImageSlideSize: function (slide, imgWidth, imgHeight) {
1979      var maxWidth = parseInt(slide.opts.width, 10),
1980        maxHeight = parseInt(slide.opts.height, 10);
1981
1982      // Sets the default values from the image
1983      slide.width = imgWidth;
1984      slide.height = imgHeight;
1985
1986      if (maxWidth > 0) {
1987        slide.width = maxWidth;
1988        slide.height = Math.floor((maxWidth * imgHeight) / imgWidth);
1989      }
1990
1991      if (maxHeight > 0) {
1992        slide.width = Math.floor((maxHeight * imgWidth) / imgHeight);
1993        slide.height = maxHeight;
1994      }
1995    },
1996
1997    // Create iframe wrapper, iframe and bindings
1998    // ==========================================
1999
2000    setIframe: function (slide) {
2001      var self = this,
2002        opts = slide.opts.iframe,
2003        $slide = slide.$slide,
2004        $iframe;
2005
2006      slide.$content = $('<div class="fancybox-content' + (opts.preload ? " fancybox-is-hidden" : "") + '"></div>')
2007        .css(opts.css)
2008        .appendTo($slide);
2009
2010      $slide.addClass("fancybox-slide--" + slide.contentType);
2011
2012      slide.$iframe = $iframe = $(opts.tpl.replace(/\{rnd\}/g, new Date().getTime()))
2013        .attr(opts.attr)
2014        .appendTo(slide.$content);
2015
2016      if (opts.preload) {
2017        self.showLoading(slide);
2018
2019        // Unfortunately, it is not always possible to determine if iframe is successfully loaded
2020        // (due to browser security policy)
2021
2022        $iframe.on("load.fb error.fb", function (e) {
2023          this.isReady = 1;
2024
2025          slide.$slide.trigger("refresh");
2026
2027          self.afterLoad(slide);
2028        });
2029
2030        // Recalculate iframe content size
2031        // ===============================
2032
2033        $slide.on("refresh.fb", function () {
2034          var $content = slide.$content,
2035            frameWidth = opts.css.width,
2036            frameHeight = opts.css.height,
2037            $contents,
2038            $body;
2039
2040          if ($iframe[0].isReady !== 1) {
2041            return;
2042          }
2043
2044          try {
2045            $contents = $iframe.contents();
2046            $body = $contents.find("body");
2047          } catch (ignore) {}
2048
2049          // Calculate content dimensions, if it is accessible
2050          if ($body && $body.length && $body.children().length) {
2051            // Avoid scrolling to top (if multiple instances)
2052            $slide.css("overflow", "visible");
2053
2054            $content.css({
2055              width: "100%",
2056              "max-width": "100%",
2057              height: "9999px"
2058            });
2059
2060            if (frameWidth === undefined) {
2061              frameWidth = Math.ceil(Math.max($body[0].clientWidth, $body.outerWidth(true)));
2062            }
2063
2064            $content.css("width", frameWidth ? frameWidth : "").css("max-width", "");
2065
2066            if (frameHeight === undefined) {
2067              frameHeight = Math.ceil(Math.max($body[0].clientHeight, $body.outerHeight(true)));
2068            }
2069
2070            $content.css("height", frameHeight ? frameHeight : "");
2071
2072            $slide.css("overflow", "auto");
2073          }
2074
2075          $content.removeClass("fancybox-is-hidden");
2076        });
2077      } else {
2078        self.afterLoad(slide);
2079      }
2080
2081      $iframe.attr("src", slide.src);
2082
2083      // Remove iframe if closing or changing gallery item
2084      $slide.one("onReset", function () {
2085        // This helps IE not to throw errors when closing
2086        try {
2087          $(this)
2088            .find("iframe")
2089            .hide()
2090            .unbind()
2091            .attr("src", "//about:blank");
2092        } catch (ignore) {}
2093
2094        $(this)
2095          .off("refresh.fb")
2096          .empty();
2097
2098        slide.isLoaded = false;
2099        slide.isRevealed = false;
2100      });
2101    },
2102
2103    // Wrap and append content to the slide
2104    // ======================================
2105
2106    setContent: function (slide, content) {
2107      var self = this;
2108
2109      if (self.isClosing) {
2110        return;
2111      }
2112
2113      self.hideLoading(slide);
2114
2115      if (slide.$content) {
2116        $.fancybox.stop(slide.$content);
2117      }
2118
2119      slide.$slide.empty();
2120
2121      // If content is a jQuery object, then it will be moved to the slide.
2122      // The placeholder is created so we will know where to put it back.
2123      if (isQuery(content) && content.parent().length) {
2124        // Make sure content is not already moved to fancyBox
2125        if (content.hasClass("fancybox-content") || content.parent().hasClass("fancybox-content")) {
2126          content.parents(".fancybox-slide").trigger("onReset");
2127        }
2128
2129        // Create temporary element marking original place of the content
2130        slide.$placeholder = $("<div>")
2131          .hide()
2132          .insertAfter(content);
2133
2134        // Make sure content is visible
2135        content.css("display", "inline-block");
2136      } else if (!slide.hasError) {
2137        // If content is just a plain text, try to convert it to html
2138        if ($.type(content) === "string") {
2139          content = $("<div>")
2140            .append($.trim(content))
2141            .contents();
2142        }
2143
2144        // If "filter" option is provided, then filter content
2145        if (slide.opts.filter) {
2146          content = $("<div>")
2147            .html(content)
2148            .find(slide.opts.filter);
2149        }
2150      }
2151
2152      slide.$slide.one("onReset", function () {
2153        // Pause all html5 video/audio
2154        $(this)
2155          .find("video,audio")
2156          .trigger("pause");
2157
2158        // Put content back
2159        if (slide.$placeholder) {
2160          slide.$placeholder.after(content.removeClass("fancybox-content").hide()).remove();
2161
2162          slide.$placeholder = null;
2163        }
2164
2165        // Remove custom close button
2166        if (slide.$smallBtn) {
2167          slide.$smallBtn.remove();
2168
2169          slide.$smallBtn = null;
2170        }
2171
2172        // Remove content and mark slide as not loaded
2173        if (!slide.hasError) {
2174          $(this).empty();
2175
2176          slide.isLoaded = false;
2177          slide.isRevealed = false;
2178        }
2179      });
2180
2181      $(content).appendTo(slide.$slide);
2182
2183      if ($(content).is("video,audio")) {
2184        $(content).addClass("fancybox-video");
2185
2186        $(content).wrap("<div></div>");
2187
2188        slide.contentType = "video";
2189
2190        slide.opts.width = slide.opts.width || $(content).attr("width");
2191        slide.opts.height = slide.opts.height || $(content).attr("height");
2192      }
2193
2194      slide.$content = slide.$slide
2195        .children()
2196        .filter("div,form,main,video,audio,article,.fancybox-content")
2197        .first();
2198
2199      slide.$content.siblings().hide();
2200
2201      // Re-check if there is a valid content
2202      // (in some cases, ajax response can contain various elements or plain text)
2203      if (!slide.$content.length) {
2204        slide.$content = slide.$slide
2205          .wrapInner("<div></div>")
2206          .children()
2207          .first();
2208      }
2209
2210      slide.$content.addClass("fancybox-content");
2211
2212      slide.$slide.addClass("fancybox-slide--" + slide.contentType);
2213
2214      self.afterLoad(slide);
2215    },
2216
2217    // Display error message
2218    // =====================
2219
2220    setError: function (slide) {
2221      slide.hasError = true;
2222
2223      slide.$slide
2224        .trigger("onReset")
2225        .removeClass("fancybox-slide--" + slide.contentType)
2226        .addClass("fancybox-slide--error");
2227
2228      slide.contentType = "html";
2229
2230      this.setContent(slide, this.translate(slide, slide.opts.errorTpl));
2231
2232      if (slide.pos === this.currPos) {
2233        this.isAnimating = false;
2234      }
2235    },
2236
2237    // Show loading icon inside the slide
2238    // ==================================
2239
2240    showLoading: function (slide) {
2241      var self = this;
2242
2243      slide = slide || self.current;
2244
2245      if (slide && !slide.$spinner) {
2246        slide.$spinner = $(self.translate(self, self.opts.spinnerTpl))
2247          .appendTo(slide.$slide)
2248          .hide()
2249          .fadeIn("fast");
2250      }
2251    },
2252
2253    // Remove loading icon from the slide
2254    // ==================================
2255
2256    hideLoading: function (slide) {
2257      var self = this;
2258
2259      slide = slide || self.current;
2260
2261      if (slide && slide.$spinner) {
2262        slide.$spinner.stop().remove();
2263
2264        delete slide.$spinner;
2265      }
2266    },
2267
2268    // Adjustments after slide content has been loaded
2269    // ===============================================
2270
2271    afterLoad: function (slide) {
2272      var self = this;
2273
2274      if (self.isClosing) {
2275        return;
2276      }
2277
2278      slide.isLoading = false;
2279      slide.isLoaded = true;
2280
2281      self.trigger("afterLoad", slide);
2282
2283      self.hideLoading(slide);
2284
2285      // Add small close button
2286      if (slide.opts.smallBtn && (!slide.$smallBtn || !slide.$smallBtn.length)) {
2287        slide.$smallBtn = $(self.translate(slide, slide.opts.btnTpl.smallBtn)).appendTo(slide.$content);
2288      }
2289
2290      // Disable right click
2291      if (slide.opts.protect && slide.$content && !slide.hasError) {
2292        slide.$content.on("contextmenu.fb", function (e) {
2293          if (e.button == 2) {
2294            e.preventDefault();
2295          }
2296
2297          return true;
2298        });
2299
2300        // Add fake element on top of the image
2301        // This makes a bit harder for user to select image
2302        if (slide.type === "image") {
2303          $('<div class="fancybox-spaceball"></div>').appendTo(slide.$content);
2304        }
2305      }
2306
2307      self.adjustCaption(slide);
2308
2309      self.adjustLayout(slide);
2310
2311      if (slide.pos === self.currPos) {
2312        self.updateCursor();
2313      }
2314
2315      self.revealContent(slide);
2316    },
2317
2318    // Prevent caption overlap,
2319    // fix css inconsistency across browsers
2320    // =====================================
2321
2322    adjustCaption: function (slide) {
2323      var self = this,
2324        current = slide || self.current,
2325        caption = current.opts.caption,
2326        preventOverlap = current.opts.preventCaptionOverlap,
2327        $caption = self.$refs.caption,
2328        $clone,
2329        captionH = false;
2330
2331      $caption.toggleClass("fancybox-caption--separate", preventOverlap);
2332
2333      if (preventOverlap && caption && caption.length) {
2334        if (current.pos !== self.currPos) {
2335          $clone = $caption.clone().appendTo($caption.parent());
2336
2337          $clone
2338            .children()
2339            .eq(0)
2340            .empty()
2341            .html(caption);
2342
2343          captionH = $clone.outerHeight(true);
2344
2345          $clone.empty().remove();
2346        } else if (self.$caption) {
2347          captionH = self.$caption.outerHeight(true);
2348        }
2349
2350        current.$slide.css("padding-bottom", captionH || "");
2351      }
2352    },
2353
2354    // Simple hack to fix inconsistency across browsers, described here (affects Edge, too):
2355    // https://bugzilla.mozilla.org/show_bug.cgi?id=748518
2356    // ====================================================================================
2357
2358    adjustLayout: function (slide) {
2359      var self = this,
2360        current = slide || self.current,
2361        scrollHeight,
2362        marginBottom,
2363        inlinePadding,
2364        actualPadding;
2365
2366      if (current.isLoaded && current.opts.disableLayoutFix !== true) {
2367        current.$content.css("margin-bottom", "");
2368
2369        // If we would always set margin-bottom for the content,
2370        // then it would potentially break vertical align
2371        if (current.$content.outerHeight() > current.$slide.height() + 0.5) {
2372          inlinePadding = current.$slide[0].style["padding-bottom"];
2373          actualPadding = current.$slide.css("padding-bottom");
2374
2375          if (parseFloat(actualPadding) > 0) {
2376            scrollHeight = current.$slide[0].scrollHeight;
2377
2378            current.$slide.css("padding-bottom", 0);
2379
2380            if (Math.abs(scrollHeight - current.$slide[0].scrollHeight) < 1) {
2381              marginBottom = actualPadding;
2382            }
2383
2384            current.$slide.css("padding-bottom", inlinePadding);
2385          }
2386        }
2387
2388        current.$content.css("margin-bottom", marginBottom);
2389      }
2390    },
2391
2392    // Make content visible
2393    // This method is called right after content has been loaded or
2394    // user navigates gallery and transition should start
2395    // ============================================================
2396
2397    revealContent: function (slide) {
2398      var self = this,
2399        $slide = slide.$slide,
2400        end = false,
2401        start = false,
2402        isMoved = self.isMoved(slide),
2403        isRevealed = slide.isRevealed,
2404        effect,
2405        effectClassName,
2406        duration,
2407        opacity;
2408
2409      slide.isRevealed = true;
2410
2411      effect = slide.opts[self.firstRun ? "animationEffect" : "transitionEffect"];
2412      duration = slide.opts[self.firstRun ? "animationDuration" : "transitionDuration"];
2413
2414      duration = parseInt(slide.forcedDuration === undefined ? duration : slide.forcedDuration, 10);
2415
2416      if (isMoved || slide.pos !== self.currPos || !duration) {
2417        effect = false;
2418      }
2419
2420      // Check if can zoom
2421      if (effect === "zoom") {
2422        if (slide.pos === self.currPos && duration && slide.type === "image" && !slide.hasError && (start = self.getThumbPos(slide))) {
2423          end = self.getFitPos(slide);
2424        } else {
2425          effect = "fade";
2426        }
2427      }
2428
2429      // Zoom animation
2430      // ==============
2431      if (effect === "zoom") {
2432        self.isAnimating = true;
2433
2434        end.scaleX = end.width / start.width;
2435        end.scaleY = end.height / start.height;
2436
2437        // Check if we need to animate opacity
2438        opacity = slide.opts.zoomOpacity;
2439
2440        if (opacity == "auto") {
2441          opacity = Math.abs(slide.width / slide.height - start.width / start.height) > 0.1;
2442        }
2443
2444        if (opacity) {
2445          start.opacity = 0.1;
2446          end.opacity = 1;
2447        }
2448
2449        // Draw image at start position
2450        $.fancybox.setTranslate(slide.$content.removeClass("fancybox-is-hidden"), start);
2451
2452        forceRedraw(slide.$content);
2453
2454        // Start animation
2455        $.fancybox.animate(slide.$content, end, duration, function () {
2456          self.isAnimating = false;
2457
2458          self.complete();
2459        });
2460
2461        return;
2462      }
2463
2464      self.updateSlide(slide);
2465
2466      // Simply show content if no effect
2467      // ================================
2468      if (!effect) {
2469        slide.$content.removeClass("fancybox-is-hidden");
2470
2471        if (!isRevealed && isMoved && slide.type === "image" && !slide.hasError) {
2472          slide.$content.hide().fadeIn("fast");
2473        }
2474
2475        if (slide.pos === self.currPos) {
2476          self.complete();
2477        }
2478
2479        return;
2480      }
2481
2482      // Prepare for CSS transiton
2483      // =========================
2484      $.fancybox.stop($slide);
2485
2486      //effectClassName = "fancybox-animated fancybox-slide--" + (slide.pos >= self.prevPos ? "next" : "previous") + " fancybox-fx-" + effect;
2487      effectClassName = "fancybox-slide--" + (slide.pos >= self.prevPos ? "next" : "previous") + " fancybox-animated fancybox-fx-" + effect;
2488
2489      $slide.addClass(effectClassName).removeClass("fancybox-slide--current"); //.addClass(effectClassName);
2490
2491      slide.$content.removeClass("fancybox-is-hidden");
2492
2493      // Force reflow
2494      forceRedraw($slide);
2495
2496      if (slide.type !== "image") {
2497        slide.$content.hide().show(0);
2498      }
2499
2500      $.fancybox.animate(
2501        $slide,
2502        "fancybox-slide--current",
2503        duration,
2504        function () {
2505          $slide.removeClass(effectClassName).css({
2506            transform: "",
2507            opacity: ""
2508          });
2509
2510          if (slide.pos === self.currPos) {
2511            self.complete();
2512          }
2513        },
2514        true
2515      );
2516    },
2517
2518    // Check if we can and have to zoom from thumbnail
2519    //================================================
2520
2521    getThumbPos: function (slide) {
2522      var rez = false,
2523        $thumb = slide.$thumb,
2524        thumbPos,
2525        btw,
2526        brw,
2527        bbw,
2528        blw;
2529
2530      if (!$thumb || !inViewport($thumb[0])) {
2531        return false;
2532      }
2533
2534      thumbPos = $.fancybox.getTranslate($thumb);
2535
2536      btw = parseFloat($thumb.css("border-top-width") || 0);
2537      brw = parseFloat($thumb.css("border-right-width") || 0);
2538      bbw = parseFloat($thumb.css("border-bottom-width") || 0);
2539      blw = parseFloat($thumb.css("border-left-width") || 0);
2540
2541      rez = {
2542        top: thumbPos.top + btw,
2543        left: thumbPos.left + blw,
2544        width: thumbPos.width - brw - blw,
2545        height: thumbPos.height - btw - bbw,
2546        scaleX: 1,
2547        scaleY: 1
2548      };
2549
2550      return thumbPos.width > 0 && thumbPos.height > 0 ? rez : false;
2551    },
2552
2553    // Final adjustments after current gallery item is moved to position
2554    // and it`s content is loaded
2555    // ==================================================================
2556
2557    complete: function () {
2558      var self = this,
2559        current = self.current,
2560        slides = {},
2561        $el;
2562
2563      if (self.isMoved() || !current.isLoaded) {
2564        return;
2565      }
2566
2567      if (!current.isComplete) {
2568        current.isComplete = true;
2569
2570        current.$slide.siblings().trigger("onReset");
2571
2572        self.preload("inline");
2573
2574        // Trigger any CSS transiton inside the slide
2575        forceRedraw(current.$slide);
2576
2577        current.$slide.addClass("fancybox-slide--complete");
2578
2579        // Remove unnecessary slides
2580        $.each(self.slides, function (key, slide) {
2581          if (slide.pos >= self.currPos - 1 && slide.pos <= self.currPos + 1) {
2582            slides[slide.pos] = slide;
2583          } else if (slide) {
2584            $.fancybox.stop(slide.$slide);
2585
2586            slide.$slide.off().remove();
2587          }
2588        });
2589
2590        self.slides = slides;
2591      }
2592
2593      self.isAnimating = false;
2594
2595      self.updateCursor();
2596
2597      self.trigger("afterShow");
2598
2599      // Autoplay first html5 video/audio
2600      if (!!current.opts.video.autoStart) {
2601        current.$slide
2602          .find("video,audio")
2603          .filter(":visible:first")
2604          .trigger("play")
2605          .one("ended", function () {
2606            if (Document.exitFullscreen) {
2607              Document.exitFullscreen();
2608            } else if (this.webkitExitFullscreen) {
2609              this.webkitExitFullscreen();
2610            }
2611
2612            self.next();
2613          });
2614      }
2615
2616      // Try to focus on the first focusable element
2617      if (current.opts.autoFocus && current.contentType === "html") {
2618        // Look for the first input with autofocus attribute
2619        $el = current.$content.find("input[autofocus]:enabled:visible:first");
2620
2621        if ($el.length) {
2622          $el.trigger("focus");
2623        } else {
2624          self.focus(null, true);
2625        }
2626      }
2627
2628      // Avoid jumping
2629      current.$slide.scrollTop(0).scrollLeft(0);
2630    },
2631
2632    // Preload next and previous slides
2633    // ================================
2634
2635    preload: function (type) {
2636      var self = this,
2637        prev,
2638        next;
2639
2640      if (self.group.length < 2) {
2641        return;
2642      }
2643
2644      next = self.slides[self.currPos + 1];
2645      prev = self.slides[self.currPos - 1];
2646
2647      if (prev && prev.type === type) {
2648        self.loadSlide(prev);
2649      }
2650
2651      if (next && next.type === type) {
2652        self.loadSlide(next);
2653      }
2654    },
2655
2656    // Try to find and focus on the first focusable element
2657    // ====================================================
2658
2659    focus: function (e, firstRun) {
2660      var self = this,
2661        focusableStr = [
2662          "a[href]",
2663          "area[href]",
2664          'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',
2665          "select:not([disabled]):not([aria-hidden])",
2666          "textarea:not([disabled]):not([aria-hidden])",
2667          "button:not([disabled]):not([aria-hidden])",
2668          "iframe",
2669          "object",
2670          "embed",
2671          "video",
2672          "audio",
2673          "[contenteditable]",
2674          '[tabindex]:not([tabindex^="-"])'
2675        ].join(","),
2676        focusableItems,
2677        focusedItemIndex;
2678
2679      if (self.isClosing) {
2680        return;
2681      }
2682
2683      if (e || !self.current || !self.current.isComplete) {
2684        // Focus on any element inside fancybox
2685        focusableItems = self.$refs.container.find("*:visible");
2686      } else {
2687        // Focus inside current slide
2688        focusableItems = self.current.$slide.find("*:visible" + (firstRun ? ":not(.fancybox-close-small)" : ""));
2689      }
2690
2691      focusableItems = focusableItems.filter(focusableStr).filter(function () {
2692        return $(this).css("visibility") !== "hidden" && !$(this).hasClass("disabled");
2693      });
2694
2695      if (focusableItems.length) {
2696        focusedItemIndex = focusableItems.index(document.activeElement);
2697
2698        if (e && e.shiftKey) {
2699          // Back tab
2700          if (focusedItemIndex < 0 || focusedItemIndex == 0) {
2701            e.preventDefault();
2702
2703            focusableItems.eq(focusableItems.length - 1).trigger("focus");
2704          }
2705        } else {
2706          // Outside or Forward tab
2707          if (focusedItemIndex < 0 || focusedItemIndex == focusableItems.length - 1) {
2708            if (e) {
2709              e.preventDefault();
2710            }
2711
2712            focusableItems.eq(0).trigger("focus");
2713          }
2714        }
2715      } else {
2716        self.$refs.container.trigger("focus");
2717      }
2718    },
2719
2720    // Activates current instance - brings container to the front and enables keyboard,
2721    // notifies other instances about deactivating
2722    // =================================================================================
2723
2724    activate: function () {
2725      var self = this;
2726
2727      // Deactivate all instances
2728      $(".fancybox-container").each(function () {
2729        var instance = $(this).data("FancyBox");
2730
2731        // Skip self and closing instances
2732        if (instance && instance.id !== self.id && !instance.isClosing) {
2733          instance.trigger("onDeactivate");
2734
2735          instance.removeEvents();
2736
2737          instance.isVisible = false;
2738        }
2739      });
2740
2741      self.isVisible = true;
2742
2743      if (self.current || self.isIdle) {
2744        self.update();
2745
2746        self.updateControls();
2747      }
2748
2749      self.trigger("onActivate");
2750
2751      self.addEvents();
2752    },
2753
2754    // Start closing procedure
2755    // This will start "zoom-out" animation if needed and clean everything up afterwards
2756    // =================================================================================
2757
2758    close: function (e, d) {
2759      var self = this,
2760        current = self.current,
2761        effect,
2762        duration,
2763        $content,
2764        domRect,
2765        opacity,
2766        start,
2767        end;
2768
2769      var done = function () {
2770        self.cleanUp(e);
2771      };
2772
2773      if (self.isClosing) {
2774        return false;
2775      }
2776
2777      self.isClosing = true;
2778
2779      // If beforeClose callback prevents closing, make sure content is centered
2780      if (self.trigger("beforeClose", e) === false) {
2781        self.isClosing = false;
2782
2783        requestAFrame(function () {
2784          self.update();
2785        });
2786
2787        return false;
2788      }
2789
2790      // Remove all events
2791      // If there are multiple instances, they will be set again by "activate" method
2792      self.removeEvents();
2793
2794      $content = current.$content;
2795      effect = current.opts.animationEffect;
2796      duration = $.isNumeric(d) ? d : effect ? current.opts.animationDuration : 0;
2797
2798      current.$slide.removeClass("fancybox-slide--complete fancybox-slide--next fancybox-slide--previous fancybox-animated");
2799
2800      if (e !== true) {
2801        $.fancybox.stop(current.$slide);
2802      } else {
2803        effect = false;
2804      }
2805
2806      // Remove other slides
2807      current.$slide
2808        .siblings()
2809        .trigger("onReset")
2810        .remove();
2811
2812      // Trigger animations
2813      if (duration) {
2814        self.$refs.container
2815          .removeClass("fancybox-is-open")
2816          .addClass("fancybox-is-closing")
2817          .css("transition-duration", duration + "ms");
2818      }
2819
2820      // Clean up
2821      self.hideLoading(current);
2822
2823      self.hideControls(true);
2824
2825      self.updateCursor();
2826
2827      // Check if possible to zoom-out
2828      if (
2829        effect === "zoom" &&
2830        !($content && duration && current.type === "image" && !self.isMoved() && !current.hasError && (end = self.getThumbPos(current)))
2831      ) {
2832        effect = "fade";
2833      }
2834
2835      if (effect === "zoom") {
2836        $.fancybox.stop($content);
2837
2838        domRect = $.fancybox.getTranslate($content);
2839
2840        start = {
2841          top: domRect.top,
2842          left: domRect.left,
2843          scaleX: domRect.width / end.width,
2844          scaleY: domRect.height / end.height,
2845          width: end.width,
2846          height: end.height
2847        };
2848
2849        // Check if we need to animate opacity
2850        opacity = current.opts.zoomOpacity;
2851
2852        if (opacity == "auto") {
2853          opacity = Math.abs(current.width / current.height - end.width / end.height) > 0.1;
2854        }
2855
2856        if (opacity) {
2857          end.opacity = 0;
2858        }
2859
2860        $.fancybox.setTranslate($content, start);
2861
2862        forceRedraw($content);
2863
2864        $.fancybox.animate($content, end, duration, done);
2865
2866        return true;
2867      }
2868
2869      if (effect && duration) {
2870        $.fancybox.animate(
2871          current.$slide.addClass("fancybox-slide--previous").removeClass("fancybox-slide--current"),
2872          "fancybox-animated fancybox-fx-" + effect,
2873          duration,
2874          done
2875        );
2876      } else {
2877        // If skip animation
2878        if (e === true) {
2879          setTimeout(done, duration);
2880        } else {
2881          done();
2882        }
2883      }
2884
2885      return true;
2886    },
2887
2888    // Final adjustments after removing the instance
2889    // =============================================
2890
2891    cleanUp: function (e) {
2892      var self = this,
2893        instance,
2894        $focus = self.current.opts.$orig,
2895        x,
2896        y;
2897
2898      self.current.$slide.trigger("onReset");
2899
2900      self.$refs.container.empty().remove();
2901
2902      self.trigger("afterClose", e);
2903
2904      // Place back focus
2905      if (!!self.current.opts.backFocus) {
2906        if (!$focus || !$focus.length || !$focus.is(":visible")) {
2907          $focus = self.$trigger;
2908        }
2909
2910        if ($focus && $focus.length) {
2911          x = window.scrollX;
2912          y = window.scrollY;
2913
2914          $focus.trigger("focus");
2915
2916          $("html, body")
2917            .scrollTop(y)
2918            .scrollLeft(x);
2919        }
2920      }
2921
2922      self.current = null;
2923
2924      // Check if there are other instances
2925      instance = $.fancybox.getInstance();
2926
2927      if (instance) {
2928        instance.activate();
2929      } else {
2930        $("body").removeClass("fancybox-active compensate-for-scrollbar");
2931
2932        $("#fancybox-style-noscroll").remove();
2933      }
2934    },
2935
2936    // Call callback and trigger an event
2937    // ==================================
2938
2939    trigger: function (name, slide) {
2940      var args = Array.prototype.slice.call(arguments, 1),
2941        self = this,
2942        obj = slide && slide.opts ? slide : self.current,
2943        rez;
2944
2945      if (obj) {
2946        args.unshift(obj);
2947      } else {
2948        obj = self;
2949      }
2950
2951      args.unshift(self);
2952
2953      if ($.isFunction(obj.opts[name])) {
2954        rez = obj.opts[name].apply(obj, args);
2955      }
2956
2957      if (rez === false) {
2958        return rez;
2959      }
2960
2961      if (name === "afterClose" || !self.$refs) {
2962        $D.trigger(name + ".fb", args);
2963      } else {
2964        self.$refs.container.trigger(name + ".fb", args);
2965      }
2966    },
2967
2968    // Update infobar values, navigation button states and reveal caption
2969    // ==================================================================
2970
2971    updateControls: function () {
2972      var self = this,
2973        current = self.current,
2974        index = current.index,
2975        $container = self.$refs.container,
2976        $caption = self.$refs.caption,
2977        caption = current.opts.caption;
2978
2979      // Recalculate content dimensions
2980      current.$slide.trigger("refresh");
2981
2982      // Set caption
2983      if (caption && caption.length) {
2984        self.$caption = $caption;
2985
2986        $caption
2987          .children()
2988          .eq(0)
2989          .html(caption);
2990      } else {
2991        self.$caption = null;
2992      }
2993
2994      if (!self.hasHiddenControls && !self.isIdle) {
2995        self.showControls();
2996      }
2997
2998      // Update info and navigation elements
2999      $container.find("[data-fancybox-count]").html(self.group.length);
3000      $container.find("[data-fancybox-index]").html(index + 1);
3001
3002      $container.find("[data-fancybox-prev]").prop("disabled", !current.opts.loop && index <= 0);
3003      $container.find("[data-fancybox-next]").prop("disabled", !current.opts.loop && index >= self.group.length - 1);
3004
3005      if (current.type === "image") {
3006        // Re-enable buttons; update download button source
3007        $container
3008          .find("[data-fancybox-zoom]")
3009          .show()
3010          .end()
3011          .find("[data-fancybox-download]")
3012          .attr("href", current.opts.image.src || current.src)
3013          .show();
3014      } else if (current.opts.toolbar) {
3015        $container.find("[data-fancybox-download],[data-fancybox-zoom]").hide();
3016      }
3017
3018      // Make sure focus is not on disabled button/element
3019      if ($(document.activeElement).is(":hidden,[disabled]")) {
3020        self.$refs.container.trigger("focus");
3021      }
3022    },
3023
3024    // Hide toolbar and caption
3025    // ========================
3026
3027    hideControls: function (andCaption) {
3028      var self = this,
3029        arr = ["infobar", "toolbar", "nav"];
3030
3031      if (andCaption || !self.current.opts.preventCaptionOverlap) {
3032        arr.push("caption");
3033      }
3034
3035      this.$refs.container.removeClass(
3036        arr
3037        .map(function (i) {
3038          return "fancybox-show-" + i;
3039        })
3040        .join(" ")
3041      );
3042
3043      this.hasHiddenControls = true;
3044    },
3045
3046    showControls: function () {
3047      var self = this,
3048        opts = self.current ? self.current.opts : self.opts,
3049        $container = self.$refs.container;
3050
3051      self.hasHiddenControls = false;
3052      self.idleSecondsCounter = 0;
3053
3054      $container
3055        .toggleClass("fancybox-show-toolbar", !!(opts.toolbar && opts.buttons))
3056        .toggleClass("fancybox-show-infobar", !!(opts.infobar && self.group.length > 1))
3057        .toggleClass("fancybox-show-caption", !!self.$caption)
3058        .toggleClass("fancybox-show-nav", !!(opts.arrows && self.group.length > 1))
3059        .toggleClass("fancybox-is-modal", !!opts.modal);
3060    },
3061
3062    // Toggle toolbar and caption
3063    // ==========================
3064
3065    toggleControls: function () {
3066      if (this.hasHiddenControls) {
3067        this.showControls();
3068      } else {
3069        this.hideControls();
3070      }
3071    }
3072  });
3073
3074  $.fancybox = {
3075    version: "3.5.7",
3076    defaults: defaults,
3077
3078    // Get current instance and execute a command.
3079    //
3080    // Examples of usage:
3081    //
3082    //   $instance = $.fancybox.getInstance();
3083    //   $.fancybox.getInstance().jumpTo( 1 );
3084    //   $.fancybox.getInstance( 'jumpTo', 1 );
3085    //   $.fancybox.getInstance( function() {
3086    //       console.info( this.currIndex );
3087    //   });
3088    // ======================================================
3089
3090    getInstance: function (command) {
3091      var instance = $('.fancybox-container:not(".fancybox-is-closing"):last').data("FancyBox"),
3092        args = Array.prototype.slice.call(arguments, 1);
3093
3094      if (instance instanceof FancyBox) {
3095        if ($.type(command) === "string") {
3096          instance[command].apply(instance, args);
3097        } else if ($.type(command) === "function") {
3098          command.apply(instance, args);
3099        }
3100
3101        return instance;
3102      }
3103
3104      return false;
3105    },
3106
3107    // Create new instance
3108    // ===================
3109
3110    open: function (items, opts, index) {
3111      return new FancyBox(items, opts, index);
3112    },
3113
3114    // Close current or all instances
3115    // ==============================
3116
3117    close: function (all) {
3118      var instance = this.getInstance();
3119
3120      if (instance) {
3121        instance.close();
3122
3123        // Try to find and close next instance
3124        if (all === true) {
3125          this.close(all);
3126        }
3127      }
3128    },
3129
3130    // Close all instances and unbind all events
3131    // =========================================
3132
3133    destroy: function () {
3134      this.close(true);
3135
3136      $D.add("body").off("click.fb-start", "**");
3137    },
3138
3139    // Try to detect mobile devices
3140    // ============================
3141
3142    isMobile: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),
3143
3144    // Detect if 'translate3d' support is available
3145    // ============================================
3146
3147    use3d: (function () {
3148      var div = document.createElement("div");
3149
3150      return (
3151        window.getComputedStyle &&
3152        window.getComputedStyle(div) &&
3153        window.getComputedStyle(div).getPropertyValue("transform") &&
3154        !(document.documentMode && document.documentMode < 11)
3155      );
3156    })(),
3157
3158    // Helper function to get current visual state of an element
3159    // returns array[ top, left, horizontal-scale, vertical-scale, opacity ]
3160    // =====================================================================
3161
3162    getTranslate: function ($el) {
3163      var domRect;
3164
3165      if (!$el || !$el.length) {
3166        return false;
3167      }
3168
3169      domRect = $el[0].getBoundingClientRect();
3170
3171      return {
3172        top: domRect.top || 0,
3173        left: domRect.left || 0,
3174        width: domRect.width,
3175        height: domRect.height,
3176        opacity: parseFloat($el.css("opacity"))
3177      };
3178    },
3179
3180    // Shortcut for setting "translate3d" properties for element
3181    // Can set be used to set opacity, too
3182    // ========================================================
3183
3184    setTranslate: function ($el, props) {
3185      var str = "",
3186        css = {};
3187
3188      if (!$el || !props) {
3189        return;
3190      }
3191
3192      if (props.left !== undefined || props.top !== undefined) {
3193        str =
3194          (props.left === undefined ? $el.position().left : props.left) +
3195          "px, " +
3196          (props.top === undefined ? $el.position().top : props.top) +
3197          "px";
3198
3199        if (this.use3d) {
3200          str = "translate3d(" + str + ", 0px)";
3201        } else {
3202          str = "translate(" + str + ")";
3203        }
3204      }
3205
3206      if (props.scaleX !== undefined && props.scaleY !== undefined) {
3207        str += " scale(" + props.scaleX + ", " + props.scaleY + ")";
3208      } else if (props.scaleX !== undefined) {
3209        str += " scaleX(" + props.scaleX + ")";
3210      }
3211
3212      if (str.length) {
3213        css.transform = str;
3214      }
3215
3216      if (props.opacity !== undefined) {
3217        css.opacity = props.opacity;
3218      }
3219
3220      if (props.width !== undefined) {
3221        css.width = props.width;
3222      }
3223
3224      if (props.height !== undefined) {
3225        css.height = props.height;
3226      }
3227
3228      return $el.css(css);
3229    },
3230
3231    // Simple CSS transition handler
3232    // =============================
3233
3234    animate: function ($el, to, duration, callback, leaveAnimationName) {
3235      var self = this,
3236        from;
3237
3238      if ($.isFunction(duration)) {
3239        callback = duration;
3240        duration = null;
3241      }
3242
3243      self.stop($el);
3244
3245      from = self.getTranslate($el);
3246
3247      $el.on(transitionEnd, function (e) {
3248        // Skip events from child elements and z-index change
3249        if (e && e.originalEvent && (!$el.is(e.originalEvent.target) || e.originalEvent.propertyName == "z-index")) {
3250          return;
3251        }
3252
3253        self.stop($el);
3254
3255        if ($.isNumeric(duration)) {
3256          $el.css("transition-duration", "");
3257        }
3258
3259        if ($.isPlainObject(to)) {
3260          if (to.scaleX !== undefined && to.scaleY !== undefined) {
3261            self.setTranslate($el, {
3262              top: to.top,
3263              left: to.left,
3264              width: from.width * to.scaleX,
3265              height: from.height * to.scaleY,
3266              scaleX: 1,
3267              scaleY: 1
3268            });
3269          }
3270        } else if (leaveAnimationName !== true) {
3271          $el.removeClass(to);
3272        }
3273
3274        if ($.isFunction(callback)) {
3275          callback(e);
3276        }
3277      });
3278
3279      if ($.isNumeric(duration)) {
3280        $el.css("transition-duration", duration + "ms");
3281      }
3282
3283      // Start animation by changing CSS properties or class name
3284      if ($.isPlainObject(to)) {
3285        if (to.scaleX !== undefined && to.scaleY !== undefined) {
3286          delete to.width;
3287          delete to.height;
3288
3289          if ($el.parent().hasClass("fancybox-slide--image")) {
3290            $el.parent().addClass("fancybox-is-scaling");
3291          }
3292        }
3293
3294        $.fancybox.setTranslate($el, to);
3295      } else {
3296        $el.addClass(to);
3297      }
3298
3299      // Make sure that `transitionend` callback gets fired
3300      $el.data(
3301        "timer",
3302        setTimeout(function () {
3303          $el.trigger(transitionEnd);
3304        }, duration + 33)
3305      );
3306    },
3307
3308    stop: function ($el, callCallback) {
3309      if ($el && $el.length) {
3310        clearTimeout($el.data("timer"));
3311
3312        if (callCallback) {
3313          $el.trigger(transitionEnd);
3314        }
3315
3316        $el.off(transitionEnd).css("transition-duration", "");
3317
3318        $el.parent().removeClass("fancybox-is-scaling");
3319      }
3320    }
3321  };
3322
3323  // Default click handler for "fancyboxed" links
3324  // ============================================
3325
3326  function _run(e, opts) {
3327    var items = [],
3328      index = 0,
3329      $target,
3330      value,
3331      instance;
3332
3333    // Avoid opening multiple times
3334    if (e && e.isDefaultPrevented()) {
3335      return;
3336    }
3337
3338    e.preventDefault();
3339
3340    opts = opts || {};
3341
3342    if (e && e.data) {
3343      opts = mergeOpts(e.data.options, opts);
3344    }
3345
3346    $target = opts.$target || $(e.currentTarget).trigger("blur");
3347    instance = $.fancybox.getInstance();
3348
3349    if (instance && instance.$trigger && instance.$trigger.is($target)) {
3350      return;
3351    }
3352
3353    if (opts.selector) {
3354      items = $(opts.selector);
3355    } else {
3356      // Get all related items and find index for clicked one
3357      value = $target.attr("data-fancybox") || "";
3358
3359      if (value) {
3360        items = e.data ? e.data.items : [];
3361        items = items.length ? items.filter('[data-fancybox="' + value + '"]') : $('[data-fancybox="' + value + '"]');
3362      } else {
3363        items = [$target];
3364      }
3365    }
3366
3367    index = $(items).index($target);
3368
3369    // Sometimes current item can not be found
3370    if (index < 0) {
3371      index = 0;
3372    }
3373
3374    instance = $.fancybox.open(items, opts, index);
3375
3376    // Save last active element
3377    instance.$trigger = $target;
3378  }
3379
3380  // Create a jQuery plugin
3381  // ======================
3382
3383  $.fn.fancybox = function (options) {
3384    var selector;
3385
3386    options = options || {};
3387    selector = options.selector || false;
3388
3389    if (selector) {
3390      // Use body element instead of document so it executes first
3391      $("body")
3392        .off("click.fb-start", selector)
3393        .on("click.fb-start", selector, {
3394          options: options
3395        }, _run);
3396    } else {
3397      this.off("click.fb-start").on(
3398        "click.fb-start", {
3399          items: this,
3400          options: options
3401        },
3402        _run
3403      );
3404    }
3405
3406    return this;
3407  };
3408
3409  // Self initializing plugin for all elements having `data-fancybox` attribute
3410  // ==========================================================================
3411
3412  $D.on("click.fb-start", "[data-fancybox]", _run);
3413
3414  // Enable "trigger elements"
3415  // =========================
3416
3417  $D.on("click.fb-start", "[data-fancybox-trigger]", function (e) {
3418    $('[data-fancybox="' + $(this).attr("data-fancybox-trigger") + '"]')
3419      .eq($(this).attr("data-fancybox-index") || 0)
3420      .trigger("click.fb-start", {
3421        $trigger: $(this)
3422      });
3423  });
3424
3425  // Track focus event for better accessibility styling
3426  // ==================================================
3427  (function () {
3428    var buttonStr = ".fancybox-button",
3429      focusStr = "fancybox-focus",
3430      $pressed = null;
3431
3432    $D.on("mousedown mouseup focus blur", buttonStr, function (e) {
3433      switch (e.type) {
3434        case "mousedown":
3435          $pressed = $(this);
3436          break;
3437        case "mouseup":
3438          $pressed = null;
3439          break;
3440        case "focusin":
3441          $(buttonStr).removeClass(focusStr);
3442
3443          if (!$(this).is($pressed) && !$(this).is("[disabled]")) {
3444            $(this).addClass(focusStr);
3445          }
3446          break;
3447        case "focusout":
3448          $(buttonStr).removeClass(focusStr);
3449          break;
3450      }
3451    });
3452  })();
3453})(window, document, jQuery);
3454// ==========================================================================
3455//
3456// Media
3457// Adds additional media type support
3458//
3459// ==========================================================================
3460(function ($) {
3461  'use strict';
3462
3463  // Object containing properties for each media type
3464  var defaults = {
3465    youtube: {
3466      matcher:
3467        /(youtube\.com|youtu\.be|youtube\-nocookie\.com)\/(watch\?(.*&)?v=|v\/|u\/|embed\/?)?(videoseries\?list=(.*)|[\w-]{11}|\?listType=(.*)&list=(.*))(.*)/i,
3468      params: {
3469        autoplay: 1,
3470        autohide: 1,
3471        fs: 1,
3472        rel: 0,
3473        hd: 1,
3474        wmode: 'transparent',
3475        enablejsapi: 1,
3476        html5: 1,
3477      },
3478      paramPlace: 8,
3479      type: 'iframe',
3480      url: 'https://www.youtube-nocookie.com/embed/$4',
3481      thumb: 'https://img.youtube.com/vi/$4/hqdefault.jpg',
3482    },
3483
3484    vimeo: {
3485      matcher: /^.+vimeo.com\/(.*\/)?([\d]+)(.*)?/,
3486      params: {
3487        autoplay: 1,
3488        hd: 1,
3489        show_title: 1,
3490        show_byline: 1,
3491        show_portrait: 0,
3492        fullscreen: 1,
3493      },
3494      paramPlace: 3,
3495      type: 'iframe',
3496      url: '//player.vimeo.com/video/$2',
3497    },
3498
3499    rutube: {
3500      matcher: /^.+rutube.ru\/video\/(.*\/)?([\w]+)(.*)\/?/,
3501      params: {
3502        frameBorder: 0,
3503      },
3504      paramPlace: 1,
3505      type: 'iframe',
3506      url: '//rutube.ru/play/embed/$2',
3507    },
3508
3509    instagram: {
3510      matcher: /(instagr\.am|instagram\.com)\/p\/([a-zA-Z0-9_\-]+)\/?/i,
3511      type: 'image',
3512      url: '//$1/p/$2/media/?size=l',
3513    },
3514
3515    // Examples:
3516    // http://maps.google.com/?ll=48.857995,2.294297&spn=0.007666,0.021136&t=m&z=16
3517    // https://www.google.com/maps/@37.7852006,-122.4146355,14.65z
3518    // https://www.google.com/maps/@52.2111123,2.9237542,6.61z?hl=en
3519    // https://www.google.com/maps/place/Googleplex/@37.4220041,-122.0833494,17z/data=!4m5!3m4!1s0x0:0x6c296c66619367e0!8m2!3d37.4219998!4d-122.0840572
3520    gmap_place: {
3521      matcher:
3522        /(maps\.)?google\.([a-z]{2,3}(\.[a-z]{2})?)\/(((maps\/(place\/(.*)\/)?\@(.*),(\d+.?\d+?)z))|(\?ll=))(.*)?/i,
3523      type: 'iframe',
3524      url: function (rez) {
3525        return (
3526          '//maps.google.' +
3527          rez[2] +
3528          '/?ll=' +
3529          (rez[9]
3530            ? rez[9] +
3531              '&z=' +
3532              Math.floor(rez[10]) +
3533              (rez[12] ? rez[12].replace(/^\//, '&') : '')
3534            : rez[12] + ''
3535          ).replace(/\?/, '&') +
3536          '&output=' +
3537          (rez[12] && rez[12].indexOf('layer=c') > 0 ? 'svembed' : 'embed')
3538        );
3539      },
3540    },
3541
3542    // Examples:
3543    // https://www.google.com/maps/search/Empire+State+Building/
3544    // https://www.google.com/maps/search/?api=1&query=centurylink+field
3545    // https://www.google.com/maps/search/?api=1&query=47.5951518,-122.3316393
3546    gmap_search: {
3547      matcher:
3548        /(maps\.)?google\.([a-z]{2,3}(\.[a-z]{2})?)\/(maps\/search\/)(.*)/i,
3549      type: 'iframe',
3550      url: function (rez) {
3551        return (
3552          '//maps.google.' +
3553          rez[2] +
3554          '/maps?q=' +
3555          rez[5].replace('query=', 'q=').replace('api=1', '') +
3556          '&output=embed'
3557        );
3558      },
3559    },
3560  };
3561
3562  // Formats matching url to final form
3563  var format = function (url, rez, params) {
3564    if (!url) {
3565      return;
3566    }
3567
3568    params = params || '';
3569
3570    if ($.type(params) === 'object') {
3571      params = $.param(params, true);
3572    }
3573
3574    $.each(rez, function (key, value) {
3575      url = url.replace('$' + key, value || '');
3576    });
3577
3578    if (params.length) {
3579      url += (url.indexOf('?') > 0 ? '&' : '?') + params;
3580    }
3581
3582    return url;
3583  };
3584
3585  $(document).on('objectNeedsType.fb', function (e, instance, item) {
3586    var url = item.src || '',
3587      type = false,
3588      media,
3589      thumb,
3590      rez,
3591      params,
3592      urlParams,
3593      paramObj,
3594      provider;
3595
3596    media = $.extend(true, {}, defaults, item.opts.media);
3597
3598    // Look for any matching media type
3599    $.each(media, function (providerName, providerOpts) {
3600      rez = url.match(providerOpts.matcher);
3601
3602      if (!rez) {
3603        return;
3604      }
3605
3606      type = providerOpts.type;
3607      provider = providerName;
3608      paramObj = {};
3609
3610      if (providerOpts.paramPlace && rez[providerOpts.paramPlace]) {
3611        urlParams = rez[providerOpts.paramPlace];
3612
3613        if (urlParams[0] == '?') {
3614          urlParams = urlParams.substring(1);
3615        }
3616
3617        urlParams = urlParams.split('&');
3618
3619        for (var m = 0; m < urlParams.length; ++m) {
3620          var p = urlParams[m].split('=', 2);
3621
3622          if (p.length == 2) {
3623            paramObj[p[0]] = decodeURIComponent(p[1].replace(/\+/g, ' '));
3624          }
3625        }
3626      }
3627
3628      params = $.extend(
3629        true,
3630        {},
3631        providerOpts.params,
3632        item.opts[providerName],
3633        paramObj
3634      );
3635
3636      url =
3637        $.type(providerOpts.url) === 'function'
3638          ? providerOpts.url.call(this, rez, params, item)
3639          : format(providerOpts.url, rez, params);
3640
3641      thumb =
3642        $.type(providerOpts.thumb) === 'function'
3643          ? providerOpts.thumb.call(this, rez, params, item)
3644          : format(providerOpts.thumb, rez);
3645
3646      if (providerName === 'youtube') {
3647        url = url.replace(/&t=((\d+)m)?(\d+)s/, function (match, p1, m, s) {
3648          return '&start=' + ((m ? parseInt(m, 10) * 60 : 0) + parseInt(s, 10));
3649        });
3650      } else if (providerName === 'vimeo') {
3651        url = url.replace('&%23', '#');
3652      } else if (providerName === 'rutube') {
3653        url = url.replace('&%23', '#');
3654      }
3655
3656      return false;
3657    });
3658
3659    // If it is found, then change content type and update the url
3660
3661    if (type) {
3662      if (!item.opts.thumb && !(item.opts.$thumb && item.opts.$thumb.length)) {
3663        item.opts.thumb = thumb;
3664      }
3665
3666      if (type === 'iframe') {
3667        item.opts = $.extend(true, item.opts, {
3668          iframe: {
3669            preload: false,
3670            attr: {
3671              scrolling: 'no',
3672            },
3673          },
3674        });
3675      }
3676
3677      $.extend(item, {
3678        type: type,
3679        src: url,
3680        origSrc: item.src,
3681        contentSource: provider,
3682        contentType:
3683          type === 'image'
3684            ? 'image'
3685            : provider == 'gmap_place' || provider == 'gmap_search'
3686            ? 'map'
3687            : 'video',
3688      });
3689    } else if (url) {
3690      item.type = item.opts.defaultType;
3691    }
3692  });
3693
3694  // Load YouTube/Video API on request to detect when video finished playing
3695  var VideoAPILoader = {
3696    youtube: {
3697      src: 'https://www.youtube.com/iframe_api',
3698      class: 'YT',
3699      loading: false,
3700      loaded: false,
3701    },
3702
3703    vimeo: {
3704      src: 'https://player.vimeo.com/api/player.js',
3705      class: 'Vimeo',
3706      loading: false,
3707      loaded: false,
3708    },
3709
3710    rutube: {
3711      src: 'https://static.rutube.ru/static/player_sdk/hls.min.js',
3712      class: 'Rutube',
3713      loading: false,
3714      loaded: false,
3715    },
3716
3717    load: function (vendor) {
3718      var _this = this,
3719        script;
3720
3721      if (this[vendor].loaded) {
3722        setTimeout(function () {
3723          _this.done(vendor);
3724        });
3725        return;
3726      }
3727
3728      if (this[vendor].loading) {
3729        return;
3730      }
3731
3732      this[vendor].loading = true;
3733
3734      script = document.createElement('script');
3735      script.type = 'text/javascript';
3736      script.src = this[vendor].src;
3737
3738      if (vendor === 'youtube') {
3739        window.onYouTubeIframeAPIReady = function () {
3740          _this[vendor].loaded = true;
3741          _this.done(vendor);
3742        };
3743      } else {
3744        script.onload = function () {
3745          _this[vendor].loaded = true;
3746          _this.done(vendor);
3747        };
3748      }
3749
3750      document.body.appendChild(script);
3751    },
3752    done: function (vendor) {
3753      var instance, $el, player;
3754
3755      if (vendor === 'youtube') {
3756        delete window.onYouTubeIframeAPIReady;
3757      }
3758
3759      instance = $.fancybox.getInstance();
3760
3761      if (instance) {
3762        $el = instance.current.$content.find('iframe');
3763
3764        if (vendor === 'youtube' && YT !== undefined && YT) {
3765          player = new YT.Player($el.attr('id'), {
3766            events: {
3767              onStateChange: function (e) {
3768                if (e.data == 0) {
3769                  instance.next();
3770                }
3771              },
3772            },
3773          });
3774        } else if (vendor === 'vimeo' && Vimeo !== undefined && Vimeo) {
3775          player = new Vimeo.Player($el);
3776
3777          player.on('ended', function () {
3778            instance.next();
3779          });
3780        }
3781      }
3782    },
3783  };
3784
3785  $(document).on({
3786    'afterShow.fb': function (e, instance, current) {
3787      if (
3788        instance.group.length > 1 &&
3789        (current.contentSource === 'youtube' ||
3790          current.contentSource === 'vimeo' ||
3791          current.contentSource === 'rutube')
3792      ) {
3793        VideoAPILoader.load(current.contentSource);
3794      }
3795    },
3796  });
3797})(jQuery);
3798
3799// ==========================================================================
3800//
3801// Guestures
3802// Adds touch guestures, handles click and tap events
3803//
3804// ==========================================================================
3805(function (window, document, $) {
3806  "use strict";
3807
3808  var requestAFrame = (function () {
3809    return (
3810      window.requestAnimationFrame ||
3811      window.webkitRequestAnimationFrame ||
3812      window.mozRequestAnimationFrame ||
3813      window.oRequestAnimationFrame ||
3814      // if all else fails, use setTimeout
3815      function (callback) {
3816        return window.setTimeout(callback, 1000 / 60);
3817      }
3818    );
3819  })();
3820
3821  var cancelAFrame = (function () {
3822    return (
3823      window.cancelAnimationFrame ||
3824      window.webkitCancelAnimationFrame ||
3825      window.mozCancelAnimationFrame ||
3826      window.oCancelAnimationFrame ||
3827      function (id) {
3828        window.clearTimeout(id);
3829      }
3830    );
3831  })();
3832
3833  var getPointerXY = function (e) {
3834    var result = [];
3835
3836    e = e.originalEvent || e || window.e;
3837    e = e.touches && e.touches.length ? e.touches : e.changedTouches && e.changedTouches.length ? e.changedTouches : [e];
3838
3839    for (var key in e) {
3840      if (e[key].pageX) {
3841        result.push({
3842          x: e[key].pageX,
3843          y: e[key].pageY
3844        });
3845      } else if (e[key].clientX) {
3846        result.push({
3847          x: e[key].clientX,
3848          y: e[key].clientY
3849        });
3850      }
3851    }
3852
3853    return result;
3854  };
3855
3856  var distance = function (point2, point1, what) {
3857    if (!point1 || !point2) {
3858      return 0;
3859    }
3860
3861    if (what === "x") {
3862      return point2.x - point1.x;
3863    } else if (what === "y") {
3864      return point2.y - point1.y;
3865    }
3866
3867    return Math.sqrt(Math.pow(point2.x - point1.x, 2) + Math.pow(point2.y - point1.y, 2));
3868  };
3869
3870  var isClickable = function ($el) {
3871    if (
3872      $el.is('a,area,button,[role="button"],input,label,select,summary,textarea,video,audio,iframe') ||
3873      $.isFunction($el.get(0).onclick) ||
3874      $el.data("selectable")
3875    ) {
3876      return true;
3877    }
3878
3879    // Check for attributes like data-fancybox-next or data-fancybox-close
3880    for (var i = 0, atts = $el[0].attributes, n = atts.length; i < n; i++) {
3881      if (atts[i].nodeName.substr(0, 14) === "data-fancybox-") {
3882        return true;
3883      }
3884    }
3885
3886    return false;
3887  };
3888
3889  var hasScrollbars = function (el) {
3890    var overflowY = window.getComputedStyle(el)["overflow-y"],
3891      overflowX = window.getComputedStyle(el)["overflow-x"],
3892      vertical = (overflowY === "scroll" || overflowY === "auto") && el.scrollHeight > el.clientHeight,
3893      horizontal = (overflowX === "scroll" || overflowX === "auto") && el.scrollWidth > el.clientWidth;
3894
3895    return vertical || horizontal;
3896  };
3897
3898  var isScrollable = function ($el) {
3899    var rez = false;
3900
3901    while (true) {
3902      rez = hasScrollbars($el.get(0));
3903
3904      if (rez) {
3905        break;
3906      }
3907
3908      $el = $el.parent();
3909
3910      if (!$el.length || $el.hasClass("fancybox-stage") || $el.is("body")) {
3911        break;
3912      }
3913    }
3914
3915    return rez;
3916  };
3917
3918  var Guestures = function (instance) {
3919    var self = this;
3920
3921    self.instance = instance;
3922
3923    self.$bg = instance.$refs.bg;
3924    self.$stage = instance.$refs.stage;
3925    self.$container = instance.$refs.container;
3926
3927    self.destroy();
3928
3929    self.$container.on("touchstart.fb.touch mousedown.fb.touch", $.proxy(self, "ontouchstart"));
3930  };
3931
3932  Guestures.prototype.destroy = function () {
3933    var self = this;
3934
3935    self.$container.off(".fb.touch");
3936
3937    $(document).off(".fb.touch");
3938
3939    if (self.requestId) {
3940      cancelAFrame(self.requestId);
3941      self.requestId = null;
3942    }
3943
3944    if (self.tapped) {
3945      clearTimeout(self.tapped);
3946      self.tapped = null;
3947    }
3948  };
3949
3950  Guestures.prototype.ontouchstart = function (e) {
3951    var self = this,
3952      $target = $(e.target),
3953      instance = self.instance,
3954      current = instance.current,
3955      $slide = current.$slide,
3956      $content = current.$content,
3957      isTouchDevice = e.type == "touchstart";
3958
3959    // Do not respond to both (touch and mouse) events
3960    if (isTouchDevice) {
3961      self.$container.off("mousedown.fb.touch");
3962    }
3963
3964    // Ignore right click
3965    if (e.originalEvent && e.originalEvent.button == 2) {
3966      return;
3967    }
3968
3969    // Ignore taping on links, buttons, input elements
3970    if (!$slide.length || !$target.length || isClickable($target) || isClickable($target.parent())) {
3971      return;
3972    }
3973    // Ignore clicks on the scrollbar
3974    if (!$target.is("img") && e.originalEvent.clientX > $target[0].clientWidth + $target.offset().left) {
3975      return;
3976    }
3977
3978    // Ignore clicks while zooming or closing
3979    if (!current || instance.isAnimating || current.$slide.hasClass("fancybox-animated")) {
3980      e.stopPropagation();
3981      e.preventDefault();
3982
3983      return;
3984    }
3985
3986    self.realPoints = self.startPoints = getPointerXY(e);
3987
3988    if (!self.startPoints.length) {
3989      return;
3990    }
3991
3992    // Allow other scripts to catch touch event if "touch" is set to false
3993    if (current.touch) {
3994      e.stopPropagation();
3995    }
3996
3997    self.startEvent = e;
3998
3999    self.canTap = true;
4000    self.$target = $target;
4001    self.$content = $content;
4002    self.opts = current.opts.touch;
4003
4004    self.isPanning = false;
4005    self.isSwiping = false;
4006    self.isZooming = false;
4007    self.isScrolling = false;
4008    self.canPan = instance.canPan();
4009
4010    self.startTime = new Date().getTime();
4011    self.distanceX = self.distanceY = self.distance = 0;
4012
4013    self.canvasWidth = Math.round($slide[0].clientWidth);
4014    self.canvasHeight = Math.round($slide[0].clientHeight);
4015
4016    self.contentLastPos = null;
4017    self.contentStartPos = $.fancybox.getTranslate(self.$content) || {
4018      top: 0,
4019      left: 0
4020    };
4021    self.sliderStartPos = $.fancybox.getTranslate($slide);
4022
4023    // Since position will be absolute, but we need to make it relative to the stage
4024    self.stagePos = $.fancybox.getTranslate(instance.$refs.stage);
4025
4026    self.sliderStartPos.top -= self.stagePos.top;
4027    self.sliderStartPos.left -= self.stagePos.left;
4028
4029    self.contentStartPos.top -= self.stagePos.top;
4030    self.contentStartPos.left -= self.stagePos.left;
4031
4032    $(document)
4033      .off(".fb.touch")
4034      .on(isTouchDevice ? "touchend.fb.touch touchcancel.fb.touch" : "mouseup.fb.touch mouseleave.fb.touch", $.proxy(self, "ontouchend"))
4035      .on(isTouchDevice ? "touchmove.fb.touch" : "mousemove.fb.touch", $.proxy(self, "ontouchmove"));
4036
4037    if ($.fancybox.isMobile) {
4038      document.addEventListener("scroll", self.onscroll, true);
4039    }
4040
4041    // Skip if clicked outside the sliding area
4042    if (!(self.opts || self.canPan) || !($target.is(self.$stage) || self.$stage.find($target).length)) {
4043      if ($target.is(".fancybox-image")) {
4044        e.preventDefault();
4045      }
4046
4047      if (!($.fancybox.isMobile && $target.parents(".fancybox-caption").length)) {
4048        return;
4049      }
4050    }
4051
4052    self.isScrollable = isScrollable($target) || isScrollable($target.parent());
4053
4054    // Check if element is scrollable and try to prevent default behavior (scrolling)
4055    if (!($.fancybox.isMobile && self.isScrollable)) {
4056      e.preventDefault();
4057    }
4058
4059    // One finger or mouse click - swipe or pan an image
4060    if (self.startPoints.length === 1 || current.hasError) {
4061      if (self.canPan) {
4062        $.fancybox.stop(self.$content);
4063
4064        self.isPanning = true;
4065      } else {
4066        self.isSwiping = true;
4067      }
4068
4069      self.$container.addClass("fancybox-is-grabbing");
4070    }
4071
4072    // Two fingers - zoom image
4073    if (self.startPoints.length === 2 && current.type === "image" && (current.isLoaded || current.$ghost)) {
4074      self.canTap = false;
4075      self.isSwiping = false;
4076      self.isPanning = false;
4077
4078      self.isZooming = true;
4079
4080      $.fancybox.stop(self.$content);
4081
4082      self.centerPointStartX = (self.startPoints[0].x + self.startPoints[1].x) * 0.5 - $(window).scrollLeft();
4083      self.centerPointStartY = (self.startPoints[0].y + self.startPoints[1].y) * 0.5 - $(window).scrollTop();
4084
4085      self.percentageOfImageAtPinchPointX = (self.centerPointStartX - self.contentStartPos.left) / self.contentStartPos.width;
4086      self.percentageOfImageAtPinchPointY = (self.centerPointStartY - self.contentStartPos.top) / self.contentStartPos.height;
4087
4088      self.startDistanceBetweenFingers = distance(self.startPoints[0], self.startPoints[1]);
4089    }
4090  };
4091
4092  Guestures.prototype.onscroll = function (e) {
4093    var self = this;
4094
4095    self.isScrolling = true;
4096
4097    document.removeEventListener("scroll", self.onscroll, true);
4098  };
4099
4100  Guestures.prototype.ontouchmove = function (e) {
4101    var self = this;
4102
4103    // Make sure user has not released over iframe or disabled element
4104    if (e.originalEvent.buttons !== undefined && e.originalEvent.buttons === 0) {
4105      self.ontouchend(e);
4106      return;
4107    }
4108
4109    if (self.isScrolling) {
4110      self.canTap = false;
4111      return;
4112    }
4113
4114    self.newPoints = getPointerXY(e);
4115
4116    if (!(self.opts || self.canPan) || !self.newPoints.length || !self.newPoints.length) {
4117      return;
4118    }
4119
4120    if (!(self.isSwiping && self.isSwiping === true)) {
4121      e.preventDefault();
4122    }
4123
4124    self.distanceX = distance(self.newPoints[0], self.startPoints[0], "x");
4125    self.distanceY = distance(self.newPoints[0], self.startPoints[0], "y");
4126
4127    self.distance = distance(self.newPoints[0], self.startPoints[0]);
4128
4129    // Skip false ontouchmove events (Chrome)
4130    if (self.distance > 0) {
4131      if (self.isSwiping) {
4132        self.onSwipe(e);
4133      } else if (self.isPanning) {
4134        self.onPan();
4135      } else if (self.isZooming) {
4136        self.onZoom();
4137      }
4138    }
4139  };
4140
4141  Guestures.prototype.onSwipe = function (e) {
4142    var self = this,
4143      instance = self.instance,
4144      swiping = self.isSwiping,
4145      left = self.sliderStartPos.left || 0,
4146      angle;
4147
4148    // If direction is not yet determined
4149    if (swiping === true) {
4150      // We need at least 10px distance to correctly calculate an angle
4151      if (Math.abs(self.distance) > 10) {
4152        self.canTap = false;
4153
4154        if (instance.group.length < 2 && self.opts.vertical) {
4155          self.isSwiping = "y";
4156        } else if (instance.isDragging || self.opts.vertical === false || (self.opts.vertical === "auto" && $(window).width() > 800)) {
4157          self.isSwiping = "x";
4158        } else {
4159          angle = Math.abs((Math.atan2(self.distanceY, self.distanceX) * 180) / Math.PI);
4160
4161          self.isSwiping = angle > 45 && angle < 135 ? "y" : "x";
4162        }
4163
4164        if (self.isSwiping === "y" && $.fancybox.isMobile && self.isScrollable) {
4165          self.isScrolling = true;
4166
4167          return;
4168        }
4169
4170        instance.isDragging = self.isSwiping;
4171
4172        // Reset points to avoid jumping, because we dropped first swipes to calculate the angle
4173        self.startPoints = self.newPoints;
4174
4175        $.each(instance.slides, function (index, slide) {
4176          var slidePos, stagePos;
4177
4178          $.fancybox.stop(slide.$slide);
4179
4180          slidePos = $.fancybox.getTranslate(slide.$slide);
4181          stagePos = $.fancybox.getTranslate(instance.$refs.stage);
4182
4183          slide.$slide
4184            .css({
4185              transform: "",
4186              opacity: "",
4187              "transition-duration": ""
4188            })
4189            .removeClass("fancybox-animated")
4190            .removeClass(function (index, className) {
4191              return (className.match(/(^|\s)fancybox-fx-\S+/g) || []).join(" ");
4192            });
4193
4194          if (slide.pos === instance.current.pos) {
4195            self.sliderStartPos.top = slidePos.top - stagePos.top;
4196            self.sliderStartPos.left = slidePos.left - stagePos.left;
4197          }
4198
4199          $.fancybox.setTranslate(slide.$slide, {
4200            top: slidePos.top - stagePos.top,
4201            left: slidePos.left - stagePos.left
4202          });
4203        });
4204
4205        // Stop slideshow
4206        if (instance.SlideShow && instance.SlideShow.isActive) {
4207          instance.SlideShow.stop();
4208        }
4209      }
4210
4211      return;
4212    }
4213
4214    // Sticky edges
4215    if (swiping == "x") {
4216      if (
4217        self.distanceX > 0 &&
4218        (self.instance.group.length < 2 || (self.instance.current.index === 0 && !self.instance.current.opts.loop))
4219      ) {
4220        left = left + Math.pow(self.distanceX, 0.8);
4221      } else if (
4222        self.distanceX < 0 &&
4223        (self.instance.group.length < 2 ||
4224          (self.instance.current.index === self.instance.group.length - 1 && !self.instance.current.opts.loop))
4225      ) {
4226        left = left - Math.pow(-self.distanceX, 0.8);
4227      } else {
4228        left = left + self.distanceX;
4229      }
4230    }
4231
4232    self.sliderLastPos = {
4233      top: swiping == "x" ? 0 : self.sliderStartPos.top + self.distanceY,
4234      left: left
4235    };
4236
4237    if (self.requestId) {
4238      cancelAFrame(self.requestId);
4239
4240      self.requestId = null;
4241    }
4242
4243    self.requestId = requestAFrame(function () {
4244      if (self.sliderLastPos) {
4245        $.each(self.instance.slides, function (index, slide) {
4246          var pos = slide.pos - self.instance.currPos;
4247
4248          $.fancybox.setTranslate(slide.$slide, {
4249            top: self.sliderLastPos.top,
4250            left: self.sliderLastPos.left + pos * self.canvasWidth + pos * slide.opts.gutter
4251          });
4252        });
4253
4254        self.$container.addClass("fancybox-is-sliding");
4255      }
4256    });
4257  };
4258
4259  Guestures.prototype.onPan = function () {
4260    var self = this;
4261
4262    // Prevent accidental movement (sometimes, when tapping casually, finger can move a bit)
4263    if (distance(self.newPoints[0], self.realPoints[0]) < ($.fancybox.isMobile ? 10 : 5)) {
4264      self.startPoints = self.newPoints;
4265      return;
4266    }
4267
4268    self.canTap = false;
4269
4270    self.contentLastPos = self.limitMovement();
4271
4272    if (self.requestId) {
4273      cancelAFrame(self.requestId);
4274    }
4275
4276    self.requestId = requestAFrame(function () {
4277      $.fancybox.setTranslate(self.$content, self.contentLastPos);
4278    });
4279  };
4280
4281  // Make panning sticky to the edges
4282  Guestures.prototype.limitMovement = function () {
4283    var self = this;
4284
4285    var canvasWidth = self.canvasWidth;
4286    var canvasHeight = self.canvasHeight;
4287
4288    var distanceX = self.distanceX;
4289    var distanceY = self.distanceY;
4290
4291    var contentStartPos = self.contentStartPos;
4292
4293    var currentOffsetX = contentStartPos.left;
4294    var currentOffsetY = contentStartPos.top;
4295
4296    var currentWidth = contentStartPos.width;
4297    var currentHeight = contentStartPos.height;
4298
4299    var minTranslateX, minTranslateY, maxTranslateX, maxTranslateY, newOffsetX, newOffsetY;
4300
4301    if (currentWidth > canvasWidth) {
4302      newOffsetX = currentOffsetX + distanceX;
4303    } else {
4304      newOffsetX = currentOffsetX;
4305    }
4306
4307    newOffsetY = currentOffsetY + distanceY;
4308
4309    // Slow down proportionally to traveled distance
4310    minTranslateX = Math.max(0, canvasWidth * 0.5 - currentWidth * 0.5);
4311    minTranslateY = Math.max(0, canvasHeight * 0.5 - currentHeight * 0.5);
4312
4313    maxTranslateX = Math.min(canvasWidth - currentWidth, canvasWidth * 0.5 - currentWidth * 0.5);
4314    maxTranslateY = Math.min(canvasHeight - currentHeight, canvasHeight * 0.5 - currentHeight * 0.5);
4315
4316    //   ->
4317    if (distanceX > 0 && newOffsetX > minTranslateX) {
4318      newOffsetX = minTranslateX - 1 + Math.pow(-minTranslateX + currentOffsetX + distanceX, 0.8) || 0;
4319    }
4320
4321    //    <-
4322    if (distanceX < 0 && newOffsetX < maxTranslateX) {
4323      newOffsetX = maxTranslateX + 1 - Math.pow(maxTranslateX - currentOffsetX - distanceX, 0.8) || 0;
4324    }
4325
4326    //   \/
4327    if (distanceY > 0 && newOffsetY > minTranslateY) {
4328      newOffsetY = minTranslateY - 1 + Math.pow(-minTranslateY + currentOffsetY + distanceY, 0.8) || 0;
4329    }
4330
4331    //   /\
4332    if (distanceY < 0 && newOffsetY < maxTranslateY) {
4333      newOffsetY = maxTranslateY + 1 - Math.pow(maxTranslateY - currentOffsetY - distanceY, 0.8) || 0;
4334    }
4335
4336    return {
4337      top: newOffsetY,
4338      left: newOffsetX
4339    };
4340  };
4341
4342  Guestures.prototype.limitPosition = function (newOffsetX, newOffsetY, newWidth, newHeight) {
4343    var self = this;
4344
4345    var canvasWidth = self.canvasWidth;
4346    var canvasHeight = self.canvasHeight;
4347
4348    if (newWidth > canvasWidth) {
4349      newOffsetX = newOffsetX > 0 ? 0 : newOffsetX;
4350      newOffsetX = newOffsetX < canvasWidth - newWidth ? canvasWidth - newWidth : newOffsetX;
4351    } else {
4352      // Center horizontally
4353      newOffsetX = Math.max(0, canvasWidth / 2 - newWidth / 2);
4354    }
4355
4356    if (newHeight > canvasHeight) {
4357      newOffsetY = newOffsetY > 0 ? 0 : newOffsetY;
4358      newOffsetY = newOffsetY < canvasHeight - newHeight ? canvasHeight - newHeight : newOffsetY;
4359    } else {
4360      // Center vertically
4361      newOffsetY = Math.max(0, canvasHeight / 2 - newHeight / 2);
4362    }
4363
4364    return {
4365      top: newOffsetY,
4366      left: newOffsetX
4367    };
4368  };
4369
4370  Guestures.prototype.onZoom = function () {
4371    var self = this;
4372
4373    // Calculate current distance between points to get pinch ratio and new width and height
4374    var contentStartPos = self.contentStartPos;
4375
4376    var currentWidth = contentStartPos.width;
4377    var currentHeight = contentStartPos.height;
4378
4379    var currentOffsetX = contentStartPos.left;
4380    var currentOffsetY = contentStartPos.top;
4381
4382    var endDistanceBetweenFingers = distance(self.newPoints[0], self.newPoints[1]);
4383
4384    var pinchRatio = endDistanceBetweenFingers / self.startDistanceBetweenFingers;
4385
4386    var newWidth = Math.floor(currentWidth * pinchRatio);
4387    var newHeight = Math.floor(currentHeight * pinchRatio);
4388
4389    // This is the translation due to pinch-zooming
4390    var translateFromZoomingX = (currentWidth - newWidth) * self.percentageOfImageAtPinchPointX;
4391    var translateFromZoomingY = (currentHeight - newHeight) * self.percentageOfImageAtPinchPointY;
4392
4393    // Point between the two touches
4394    var centerPointEndX = (self.newPoints[0].x + self.newPoints[1].x) / 2 - $(window).scrollLeft();
4395    var centerPointEndY = (self.newPoints[0].y + self.newPoints[1].y) / 2 - $(window).scrollTop();
4396
4397    // And this is the translation due to translation of the centerpoint
4398    // between the two fingers
4399    var translateFromTranslatingX = centerPointEndX - self.centerPointStartX;
4400    var translateFromTranslatingY = centerPointEndY - self.centerPointStartY;
4401
4402    // The new offset is the old/current one plus the total translation
4403    var newOffsetX = currentOffsetX + (translateFromZoomingX + translateFromTranslatingX);
4404    var newOffsetY = currentOffsetY + (translateFromZoomingY + translateFromTranslatingY);
4405
4406    var newPos = {
4407      top: newOffsetY,
4408      left: newOffsetX,
4409      scaleX: pinchRatio,
4410      scaleY: pinchRatio
4411    };
4412
4413    self.canTap = false;
4414
4415    self.newWidth = newWidth;
4416    self.newHeight = newHeight;
4417
4418    self.contentLastPos = newPos;
4419
4420    if (self.requestId) {
4421      cancelAFrame(self.requestId);
4422    }
4423
4424    self.requestId = requestAFrame(function () {
4425      $.fancybox.setTranslate(self.$content, self.contentLastPos);
4426    });
4427  };
4428
4429  Guestures.prototype.ontouchend = function (e) {
4430    var self = this;
4431
4432    var swiping = self.isSwiping;
4433    var panning = self.isPanning;
4434    var zooming = self.isZooming;
4435    var scrolling = self.isScrolling;
4436
4437    self.endPoints = getPointerXY(e);
4438    self.dMs = Math.max(new Date().getTime() - self.startTime, 1);
4439
4440    self.$container.removeClass("fancybox-is-grabbing");
4441
4442    $(document).off(".fb.touch");
4443
4444    document.removeEventListener("scroll", self.onscroll, true);
4445
4446    if (self.requestId) {
4447      cancelAFrame(self.requestId);
4448
4449      self.requestId = null;
4450    }
4451
4452    self.isSwiping = false;
4453    self.isPanning = false;
4454    self.isZooming = false;
4455    self.isScrolling = false;
4456
4457    self.instance.isDragging = false;
4458
4459    if (self.canTap) {
4460      return self.onTap(e);
4461    }
4462
4463    self.speed = 100;
4464
4465    // Speed in px/ms
4466    self.velocityX = (self.distanceX / self.dMs) * 0.5;
4467    self.velocityY = (self.distanceY / self.dMs) * 0.5;
4468
4469    if (panning) {
4470      self.endPanning();
4471    } else if (zooming) {
4472      self.endZooming();
4473    } else {
4474      self.endSwiping(swiping, scrolling);
4475    }
4476
4477    return;
4478  };
4479
4480  Guestures.prototype.endSwiping = function (swiping, scrolling) {
4481    var self = this,
4482      ret = false,
4483      len = self.instance.group.length,
4484      distanceX = Math.abs(self.distanceX),
4485      canAdvance = swiping == "x" && len > 1 && ((self.dMs > 130 && distanceX > 10) || distanceX > 50),
4486      speedX = 300;
4487
4488    self.sliderLastPos = null;
4489
4490    // Close if swiped vertically / navigate if horizontally
4491    if (swiping == "y" && !scrolling && Math.abs(self.distanceY) > 50) {
4492      // Continue vertical movement
4493      $.fancybox.animate(
4494        self.instance.current.$slide, {
4495          top: self.sliderStartPos.top + self.distanceY + self.velocityY * 150,
4496          opacity: 0
4497        },
4498        200
4499      );
4500      ret = self.instance.close(true, 250);
4501    } else if (canAdvance && self.distanceX > 0) {
4502      ret = self.instance.previous(speedX);
4503    } else if (canAdvance && self.distanceX < 0) {
4504      ret = self.instance.next(speedX);
4505    }
4506
4507    if (ret === false && (swiping == "x" || swiping == "y")) {
4508      self.instance.centerSlide(200);
4509    }
4510
4511    self.$container.removeClass("fancybox-is-sliding");
4512  };
4513
4514  // Limit panning from edges
4515  // ========================
4516  Guestures.prototype.endPanning = function () {
4517    var self = this,
4518      newOffsetX,
4519      newOffsetY,
4520      newPos;
4521
4522    if (!self.contentLastPos) {
4523      return;
4524    }
4525
4526    if (self.opts.momentum === false || self.dMs > 350) {
4527      newOffsetX = self.contentLastPos.left;
4528      newOffsetY = self.contentLastPos.top;
4529    } else {
4530      // Continue movement
4531      newOffsetX = self.contentLastPos.left + self.velocityX * 500;
4532      newOffsetY = self.contentLastPos.top + self.velocityY * 500;
4533    }
4534
4535    newPos = self.limitPosition(newOffsetX, newOffsetY, self.contentStartPos.width, self.contentStartPos.height);
4536
4537    newPos.width = self.contentStartPos.width;
4538    newPos.height = self.contentStartPos.height;
4539
4540    $.fancybox.animate(self.$content, newPos, 366);
4541  };
4542
4543  Guestures.prototype.endZooming = function () {
4544    var self = this;
4545
4546    var current = self.instance.current;
4547
4548    var newOffsetX, newOffsetY, newPos, reset;
4549
4550    var newWidth = self.newWidth;
4551    var newHeight = self.newHeight;
4552
4553    if (!self.contentLastPos) {
4554      return;
4555    }
4556
4557    newOffsetX = self.contentLastPos.left;
4558    newOffsetY = self.contentLastPos.top;
4559
4560    reset = {
4561      top: newOffsetY,
4562      left: newOffsetX,
4563      width: newWidth,
4564      height: newHeight,
4565      scaleX: 1,
4566      scaleY: 1
4567    };
4568
4569    // Reset scalex/scaleY values; this helps for perfomance and does not break animation
4570    $.fancybox.setTranslate(self.$content, reset);
4571
4572    if (newWidth < self.canvasWidth && newHeight < self.canvasHeight) {
4573      self.instance.scaleToFit(150);
4574    } else if (newWidth > current.width || newHeight > current.height) {
4575      self.instance.scaleToActual(self.centerPointStartX, self.centerPointStartY, 150);
4576    } else {
4577      newPos = self.limitPosition(newOffsetX, newOffsetY, newWidth, newHeight);
4578
4579      $.fancybox.animate(self.$content, newPos, 150);
4580    }
4581  };
4582
4583  Guestures.prototype.onTap = function (e) {
4584    var self = this;
4585    var $target = $(e.target);
4586
4587    var instance = self.instance;
4588    var current = instance.current;
4589
4590    var endPoints = (e && getPointerXY(e)) || self.startPoints;
4591
4592    var tapX = endPoints[0] ? endPoints[0].x - $(window).scrollLeft() - self.stagePos.left : 0;
4593    var tapY = endPoints[0] ? endPoints[0].y - $(window).scrollTop() - self.stagePos.top : 0;
4594
4595    var where;
4596
4597    var process = function (prefix) {
4598      var action = current.opts[prefix];
4599
4600      if ($.isFunction(action)) {
4601        action = action.apply(instance, [current, e]);
4602      }
4603
4604      if (!action) {
4605        return;
4606      }
4607
4608      switch (action) {
4609        case "close":
4610          instance.close(self.startEvent);
4611
4612          break;
4613
4614        case "toggleControls":
4615          instance.toggleControls();
4616
4617          break;
4618
4619        case "next":
4620          instance.next();
4621
4622          break;
4623
4624        case "nextOrClose":
4625          if (instance.group.length > 1) {
4626            instance.next();
4627          } else {
4628            instance.close(self.startEvent);
4629          }
4630
4631          break;
4632
4633        case "zoom":
4634          if (current.type == "image" && (current.isLoaded || current.$ghost)) {
4635            if (instance.canPan()) {
4636              instance.scaleToFit();
4637            } else if (instance.isScaledDown()) {
4638              instance.scaleToActual(tapX, tapY);
4639            } else if (instance.group.length < 2) {
4640              instance.close(self.startEvent);
4641            }
4642          }
4643
4644          break;
4645      }
4646    };
4647
4648    // Ignore right click
4649    if (e.originalEvent && e.originalEvent.button == 2) {
4650      return;
4651    }
4652
4653    // Skip if clicked on the scrollbar
4654    if (!$target.is("img") && tapX > $target[0].clientWidth + $target.offset().left) {
4655      return;
4656    }
4657
4658    // Check where is clicked
4659    if ($target.is(".fancybox-bg,.fancybox-inner,.fancybox-outer,.fancybox-container")) {
4660      where = "Outside";
4661    } else if ($target.is(".fancybox-slide")) {
4662      where = "Slide";
4663    } else if (
4664      instance.current.$content &&
4665      instance.current.$content
4666      .find($target)
4667      .addBack()
4668      .filter($target).length
4669    ) {
4670      where = "Content";
4671    } else {
4672      return;
4673    }
4674
4675    // Check if this is a double tap
4676    if (self.tapped) {
4677      // Stop previously created single tap
4678      clearTimeout(self.tapped);
4679      self.tapped = null;
4680
4681      // Skip if distance between taps is too big
4682      if (Math.abs(tapX - self.tapX) > 50 || Math.abs(tapY - self.tapY) > 50) {
4683        return this;
4684      }
4685
4686      // OK, now we assume that this is a double-tap
4687      process("dblclick" + where);
4688    } else {
4689      // Single tap will be processed if user has not clicked second time within 300ms
4690      // or there is no need to wait for double-tap
4691      self.tapX = tapX;
4692      self.tapY = tapY;
4693
4694      if (current.opts["dblclick" + where] && current.opts["dblclick" + where] !== current.opts["click" + where]) {
4695        self.tapped = setTimeout(function () {
4696          self.tapped = null;
4697
4698          if (!instance.isAnimating) {
4699            process("click" + where);
4700          }
4701        }, 500);
4702      } else {
4703        process("click" + where);
4704      }
4705    }
4706
4707    return this;
4708  };
4709
4710  $(document)
4711    .on("onActivate.fb", function (e, instance) {
4712      if (instance && !instance.Guestures) {
4713        instance.Guestures = new Guestures(instance);
4714      }
4715    })
4716    .on("beforeClose.fb", function (e, instance) {
4717      if (instance && instance.Guestures) {
4718        instance.Guestures.destroy();
4719      }
4720    });
4721})(window, document, jQuery);
4722// ==========================================================================
4723//
4724// SlideShow
4725// Enables slideshow functionality
4726//
4727// Example of usage:
4728// $.fancybox.getInstance().SlideShow.start()
4729//
4730// ==========================================================================
4731(function (document, $) {
4732  "use strict";
4733
4734  $.extend(true, $.fancybox.defaults, {
4735    btnTpl: {
4736      slideShow: '<button data-fancybox-play class="fancybox-button fancybox-button--play" title="{{PLAY_START}}">' +
4737        '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6.5 5.4v13.2l11-6.6z"/></svg>' +
4738        '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8.33 5.75h2.2v12.5h-2.2V5.75zm5.15 0h2.2v12.5h-2.2V5.75z"/></svg>' +
4739        "</button>"
4740    },
4741    slideShow: {
4742      autoStart: false,
4743      speed: 3000,
4744      progress: true
4745    }
4746  });
4747
4748  var SlideShow = function (instance) {
4749    this.instance = instance;
4750    this.init();
4751  };
4752
4753  $.extend(SlideShow.prototype, {
4754    timer: null,
4755    isActive: false,
4756    $button: null,
4757
4758    init: function () {
4759      var self = this,
4760        instance = self.instance,
4761        opts = instance.group[instance.currIndex].opts.slideShow;
4762
4763      self.$button = instance.$refs.toolbar.find("[data-fancybox-play]").on("click", function () {
4764        self.toggle();
4765      });
4766
4767      if (instance.group.length < 2 || !opts) {
4768        self.$button.hide();
4769      } else if (opts.progress) {
4770        self.$progress = $('<div class="fancybox-progress"></div>').appendTo(instance.$refs.inner);
4771      }
4772    },
4773
4774    set: function (force) {
4775      var self = this,
4776        instance = self.instance,
4777        current = instance.current;
4778
4779      // Check if reached last element
4780      if (current && (force === true || current.opts.loop || instance.currIndex < instance.group.length - 1)) {
4781        if (self.isActive && current.contentType !== "video") {
4782          if (self.$progress) {
4783            $.fancybox.animate(self.$progress.show(), {
4784              scaleX: 1
4785            }, current.opts.slideShow.speed);
4786          }
4787
4788          self.timer = setTimeout(function () {
4789            if (!instance.current.opts.loop && instance.current.index == instance.group.length - 1) {
4790              instance.jumpTo(0);
4791            } else {
4792              instance.next();
4793            }
4794          }, current.opts.slideShow.speed);
4795        }
4796      } else {
4797        self.stop();
4798        instance.idleSecondsCounter = 0;
4799        instance.showControls();
4800      }
4801    },
4802
4803    clear: function () {
4804      var self = this;
4805
4806      clearTimeout(self.timer);
4807
4808      self.timer = null;
4809
4810      if (self.$progress) {
4811        self.$progress.removeAttr("style").hide();
4812      }
4813    },
4814
4815    start: function () {
4816      var self = this,
4817        current = self.instance.current;
4818
4819      if (current) {
4820        self.$button
4821          .attr("title", (current.opts.i18n[current.opts.lang] || current.opts.i18n.en).PLAY_STOP)
4822          .removeClass("fancybox-button--play")
4823          .addClass("fancybox-button--pause");
4824
4825        self.isActive = true;
4826
4827        if (current.isComplete) {
4828          self.set(true);
4829        }
4830
4831        self.instance.trigger("onSlideShowChange", true);
4832      }
4833    },
4834
4835    stop: function () {
4836      var self = this,
4837        current = self.instance.current;
4838
4839      self.clear();
4840
4841      self.$button
4842        .attr("title", (current.opts.i18n[current.opts.lang] || current.opts.i18n.en).PLAY_START)
4843        .removeClass("fancybox-button--pause")
4844        .addClass("fancybox-button--play");
4845
4846      self.isActive = false;
4847
4848      self.instance.trigger("onSlideShowChange", false);
4849
4850      if (self.$progress) {
4851        self.$progress.removeAttr("style").hide();
4852      }
4853    },
4854
4855    toggle: function () {
4856      var self = this;
4857
4858      if (self.isActive) {
4859        self.stop();
4860      } else {
4861        self.start();
4862      }
4863    }
4864  });
4865
4866  $(document).on({
4867    "onInit.fb": function (e, instance) {
4868      if (instance && !instance.SlideShow) {
4869        instance.SlideShow = new SlideShow(instance);
4870      }
4871    },
4872
4873    "beforeShow.fb": function (e, instance, current, firstRun) {
4874      var SlideShow = instance && instance.SlideShow;
4875
4876      if (firstRun) {
4877        if (SlideShow && current.opts.slideShow.autoStart) {
4878          SlideShow.start();
4879        }
4880      } else if (SlideShow && SlideShow.isActive) {
4881        SlideShow.clear();
4882      }
4883    },
4884
4885    "afterShow.fb": function (e, instance, current) {
4886      var SlideShow = instance && instance.SlideShow;
4887
4888      if (SlideShow && SlideShow.isActive) {
4889        SlideShow.set();
4890      }
4891    },
4892
4893    "afterKeydown.fb": function (e, instance, current, keypress, keycode) {
4894      var SlideShow = instance && instance.SlideShow;
4895
4896      // "P" or Spacebar
4897      if (SlideShow && current.opts.slideShow && (keycode === 80 || keycode === 32) && !$(document.activeElement).is("button,a,input")) {
4898        keypress.preventDefault();
4899
4900        SlideShow.toggle();
4901      }
4902    },
4903
4904    "beforeClose.fb onDeactivate.fb": function (e, instance) {
4905      var SlideShow = instance && instance.SlideShow;
4906
4907      if (SlideShow) {
4908        SlideShow.stop();
4909      }
4910    }
4911  });
4912
4913  // Page Visibility API to pause slideshow when window is not active
4914  $(document).on("visibilitychange", function () {
4915    var instance = $.fancybox.getInstance(),
4916      SlideShow = instance && instance.SlideShow;
4917
4918    if (SlideShow && SlideShow.isActive) {
4919      if (document.hidden) {
4920        SlideShow.clear();
4921      } else {
4922        SlideShow.set();
4923      }
4924    }
4925  });
4926})(document, jQuery);
4927// ==========================================================================
4928//
4929// FullScreen
4930// Adds fullscreen functionality
4931//
4932// ==========================================================================
4933(function (document, $) {
4934  "use strict";
4935
4936  // Collection of methods supported by user browser
4937  var fn = (function () {
4938    var fnMap = [
4939      ["requestFullscreen", "exitFullscreen", "fullscreenElement", "fullscreenEnabled", "fullscreenchange", "fullscreenerror"],
4940      // new WebKit
4941      [
4942        "webkitRequestFullscreen",
4943        "webkitExitFullscreen",
4944        "webkitFullscreenElement",
4945        "webkitFullscreenEnabled",
4946        "webkitfullscreenchange",
4947        "webkitfullscreenerror"
4948      ],
4949      // old WebKit (Safari 5.1)
4950      [
4951        "webkitRequestFullScreen",
4952        "webkitCancelFullScreen",
4953        "webkitCurrentFullScreenElement",
4954        "webkitCancelFullScreen",
4955        "webkitfullscreenchange",
4956        "webkitfullscreenerror"
4957      ],
4958      [
4959        "mozRequestFullScreen",
4960        "mozCancelFullScreen",
4961        "mozFullScreenElement",
4962        "mozFullScreenEnabled",
4963        "mozfullscreenchange",
4964        "mozfullscreenerror"
4965      ],
4966      ["msRequestFullscreen", "msExitFullscreen", "msFullscreenElement", "msFullscreenEnabled", "MSFullscreenChange", "MSFullscreenError"]
4967    ];
4968
4969    var ret = {};
4970
4971    for (var i = 0; i < fnMap.length; i++) {
4972      var val = fnMap[i];
4973
4974      if (val && val[1] in document) {
4975        for (var j = 0; j < val.length; j++) {
4976          ret[fnMap[0][j]] = val[j];
4977        }
4978
4979        return ret;
4980      }
4981    }
4982
4983    return false;
4984  })();
4985
4986  if (fn) {
4987    var FullScreen = {
4988      request: function (elem) {
4989        elem = elem || document.documentElement;
4990
4991        elem[fn.requestFullscreen](elem.ALLOW_KEYBOARD_INPUT);
4992      },
4993      exit: function () {
4994        document[fn.exitFullscreen]();
4995      },
4996      toggle: function (elem) {
4997        elem = elem || document.documentElement;
4998
4999        if (this.isFullscreen()) {
5000          this.exit();
5001        } else {
5002          this.request(elem);
5003        }
5004      },
5005      isFullscreen: function () {
5006        return Boolean(document[fn.fullscreenElement]);
5007      },
5008      enabled: function () {
5009        return Boolean(document[fn.fullscreenEnabled]);
5010      }
5011    };
5012
5013    $.extend(true, $.fancybox.defaults, {
5014      btnTpl: {
5015        fullScreen: '<button data-fancybox-fullscreen class="fancybox-button fancybox-button--fsenter" title="{{FULL_SCREEN}}">' +
5016          '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 14H5v5h5v-2H7v-3zm-2-4h2V7h3V5H5v5zm12 7h-3v2h5v-5h-2v3zM14 5v2h3v3h2V5h-5z"/></svg>' +
5017          '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M5 16h3v3h2v-5H5zm3-8H5v2h5V5H8zm6 11h2v-3h3v-2h-5zm2-11V5h-2v5h5V8z"/></svg>' +
5018          "</button>"
5019      },
5020      fullScreen: {
5021        autoStart: false
5022      }
5023    });
5024
5025    $(document).on(fn.fullscreenchange, function () {
5026      var isFullscreen = FullScreen.isFullscreen(),
5027        instance = $.fancybox.getInstance();
5028
5029      if (instance) {
5030        // If image is zooming, then force to stop and reposition properly
5031        if (instance.current && instance.current.type === "image" && instance.isAnimating) {
5032          instance.isAnimating = false;
5033
5034          instance.update(true, true, 0);
5035
5036          if (!instance.isComplete) {
5037            instance.complete();
5038          }
5039        }
5040
5041        instance.trigger("onFullscreenChange", isFullscreen);
5042
5043        instance.$refs.container.toggleClass("fancybox-is-fullscreen", isFullscreen);
5044
5045        instance.$refs.toolbar
5046          .find("[data-fancybox-fullscreen]")
5047          .toggleClass("fancybox-button--fsenter", !isFullscreen)
5048          .toggleClass("fancybox-button--fsexit", isFullscreen);
5049      }
5050    });
5051  }
5052
5053  $(document).on({
5054    "onInit.fb": function (e, instance) {
5055      var $container;
5056
5057      if (!fn) {
5058        instance.$refs.toolbar.find("[data-fancybox-fullscreen]").remove();
5059
5060        return;
5061      }
5062
5063      if (instance && instance.group[instance.currIndex].opts.fullScreen) {
5064        $container = instance.$refs.container;
5065
5066        $container.on("click.fb-fullscreen", "[data-fancybox-fullscreen]", function (e) {
5067          e.stopPropagation();
5068          e.preventDefault();
5069
5070          FullScreen.toggle();
5071        });
5072
5073        if (instance.opts.fullScreen && instance.opts.fullScreen.autoStart === true) {
5074          FullScreen.request();
5075        }
5076
5077        // Expose API
5078        instance.FullScreen = FullScreen;
5079      } else if (instance) {
5080        instance.$refs.toolbar.find("[data-fancybox-fullscreen]").hide();
5081      }
5082    },
5083
5084    "afterKeydown.fb": function (e, instance, current, keypress, keycode) {
5085      // "F"
5086      if (instance && instance.FullScreen && keycode === 70) {
5087        keypress.preventDefault();
5088
5089        instance.FullScreen.toggle();
5090      }
5091    },
5092
5093    "beforeClose.fb": function (e, instance) {
5094      if (instance && instance.FullScreen && instance.$refs.container.hasClass("fancybox-is-fullscreen")) {
5095        FullScreen.exit();
5096      }
5097    }
5098  });
5099})(document, jQuery);
5100// ==========================================================================
5101//
5102// Thumbs
5103// Displays thumbnails in a grid
5104//
5105// ==========================================================================
5106(function (document, $) {
5107  "use strict";
5108
5109  var CLASS = "fancybox-thumbs",
5110    CLASS_ACTIVE = CLASS + "-active";
5111
5112  // Make sure there are default values
5113  $.fancybox.defaults = $.extend(
5114    true, {
5115      btnTpl: {
5116        thumbs: '<button data-fancybox-thumbs class="fancybox-button fancybox-button--thumbs" title="{{THUMBS}}">' +
5117          '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14.59 14.59h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76H5.65v-3.76zm8.94-4.47h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76h-3.76v-3.76zm-4.47 0h3.76v3.76H5.65v-3.76zm8.94-4.47h3.76v3.76h-3.76V5.65zm-4.47 0h3.76v3.76h-3.76V5.65zm-4.47 0h3.76v3.76H5.65V5.65z"/></svg>' +
5118          "</button>"
5119      },
5120      thumbs: {
5121        autoStart: false, // Display thumbnails on opening
5122        hideOnClose: true, // Hide thumbnail grid when closing animation starts
5123        parentEl: ".fancybox-container", // Container is injected into this element
5124        axis: "y" // Vertical (y) or horizontal (x) scrolling
5125      }
5126    },
5127    $.fancybox.defaults
5128  );
5129
5130  var FancyThumbs = function (instance) {
5131    this.init(instance);
5132  };
5133
5134  $.extend(FancyThumbs.prototype, {
5135    $button: null,
5136    $grid: null,
5137    $list: null,
5138    isVisible: false,
5139    isActive: false,
5140
5141    init: function (instance) {
5142      var self = this,
5143        group = instance.group,
5144        enabled = 0;
5145
5146      self.instance = instance;
5147      self.opts = group[instance.currIndex].opts.thumbs;
5148
5149      instance.Thumbs = self;
5150
5151      self.$button = instance.$refs.toolbar.find("[data-fancybox-thumbs]");
5152
5153      // Enable thumbs if at least two group items have thumbnails
5154      for (var i = 0, len = group.length; i < len; i++) {
5155        if (group[i].thumb) {
5156          enabled++;
5157        }
5158
5159        if (enabled > 1) {
5160          break;
5161        }
5162      }
5163
5164      if (enabled > 1 && !!self.opts) {
5165        self.$button.removeAttr("style").on("click", function () {
5166          self.toggle();
5167        });
5168
5169        self.isActive = true;
5170      } else {
5171        self.$button.hide();
5172      }
5173    },
5174
5175    create: function () {
5176      var self = this,
5177        instance = self.instance,
5178        parentEl = self.opts.parentEl,
5179        list = [],
5180        src;
5181
5182      if (!self.$grid) {
5183        // Create main element
5184        self.$grid = $('<div class="' + CLASS + " " + CLASS + "-" + self.opts.axis + '"></div>').appendTo(
5185          instance.$refs.container
5186          .find(parentEl)
5187          .addBack()
5188          .filter(parentEl)
5189        );
5190
5191        // Add "click" event that performs gallery navigation
5192        self.$grid.on("click", "a", function () {
5193          instance.jumpTo($(this).attr("data-index"));
5194        });
5195      }
5196
5197      // Build the list
5198      if (!self.$list) {
5199        self.$list = $('<div class="' + CLASS + '__list">').appendTo(self.$grid);
5200      }
5201
5202      $.each(instance.group, function (i, item) {
5203        src = item.thumb;
5204
5205        if (!src && item.type === "image") {
5206          src = item.src;
5207        }
5208
5209        list.push(
5210          '<a href="javascript:;" tabindex="0" data-index="' +
5211          i +
5212          '"' +
5213          (src && src.length ? ' style="background-image:url(' + src + ')"' : 'class="fancybox-thumbs-missing"') +
5214          "></a>"
5215        );
5216      });
5217
5218      self.$list[0].innerHTML = list.join("");
5219
5220      if (self.opts.axis === "x") {
5221        // Set fixed width for list element to enable horizontal scrolling
5222        self.$list.width(
5223          parseInt(self.$grid.css("padding-right"), 10) +
5224          instance.group.length *
5225          self.$list
5226          .children()
5227          .eq(0)
5228          .outerWidth(true)
5229        );
5230      }
5231    },
5232
5233    focus: function (duration) {
5234      var self = this,
5235        $list = self.$list,
5236        $grid = self.$grid,
5237        thumb,
5238        thumbPos;
5239
5240      if (!self.instance.current) {
5241        return;
5242      }
5243
5244      thumb = $list
5245        .children()
5246        .removeClass(CLASS_ACTIVE)
5247        .filter('[data-index="' + self.instance.current.index + '"]')
5248        .addClass(CLASS_ACTIVE);
5249
5250      thumbPos = thumb.position();
5251
5252      // Check if need to scroll to make current thumb visible
5253      if (self.opts.axis === "y" && (thumbPos.top < 0 || thumbPos.top > $list.height() - thumb.outerHeight())) {
5254        $list.stop().animate({
5255            scrollTop: $list.scrollTop() + thumbPos.top
5256          },
5257          duration
5258        );
5259      } else if (
5260        self.opts.axis === "x" &&
5261        (thumbPos.left < $grid.scrollLeft() || thumbPos.left > $grid.scrollLeft() + ($grid.width() - thumb.outerWidth()))
5262      ) {
5263        $list
5264          .parent()
5265          .stop()
5266          .animate({
5267              scrollLeft: thumbPos.left
5268            },
5269            duration
5270          );
5271      }
5272    },
5273
5274    update: function () {
5275      var that = this;
5276      that.instance.$refs.container.toggleClass("fancybox-show-thumbs", this.isVisible);
5277
5278      if (that.isVisible) {
5279        if (!that.$grid) {
5280          that.create();
5281        }
5282
5283        that.instance.trigger("onThumbsShow");
5284
5285        that.focus(0);
5286      } else if (that.$grid) {
5287        that.instance.trigger("onThumbsHide");
5288      }
5289
5290      // Update content position
5291      that.instance.update();
5292    },
5293
5294    hide: function () {
5295      this.isVisible = false;
5296      this.update();
5297    },
5298
5299    show: function () {
5300      this.isVisible = true;
5301      this.update();
5302    },
5303
5304    toggle: function () {
5305      this.isVisible = !this.isVisible;
5306      this.update();
5307    }
5308  });
5309
5310  $(document).on({
5311    "onInit.fb": function (e, instance) {
5312      var Thumbs;
5313
5314      if (instance && !instance.Thumbs) {
5315        Thumbs = new FancyThumbs(instance);
5316
5317        if (Thumbs.isActive && Thumbs.opts.autoStart === true) {
5318          Thumbs.show();
5319        }
5320      }
5321    },
5322
5323    "beforeShow.fb": function (e, instance, item, firstRun) {
5324      var Thumbs = instance && instance.Thumbs;
5325
5326      if (Thumbs && Thumbs.isVisible) {
5327        Thumbs.focus(firstRun ? 0 : 250);
5328      }
5329    },
5330
5331    "afterKeydown.fb": function (e, instance, current, keypress, keycode) {
5332      var Thumbs = instance && instance.Thumbs;
5333
5334      // "G"
5335      if (Thumbs && Thumbs.isActive && keycode === 71) {
5336        keypress.preventDefault();
5337
5338        Thumbs.toggle();
5339      }
5340    },
5341
5342    "beforeClose.fb": function (e, instance) {
5343      var Thumbs = instance && instance.Thumbs;
5344
5345      if (Thumbs && Thumbs.isVisible && Thumbs.opts.hideOnClose !== false) {
5346        Thumbs.$grid.hide();
5347      }
5348    }
5349  });
5350})(document, jQuery);
5351// ==========================================================================
5352//
5353// Hash
5354// Enables linking to each modal
5355//
5356// ==========================================================================
5357(function (window, document, $) {
5358  "use strict";
5359
5360  // Simple $.escapeSelector polyfill (for jQuery prior v3)
5361  if (!$.escapeSelector) {
5362    $.escapeSelector = function (sel) {
5363      var rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g;
5364      var fcssescape = function (ch, asCodePoint) {
5365        if (asCodePoint) {
5366          // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
5367          if (ch === "\0") {
5368            return "\uFFFD";
5369          }
5370
5371          // Control characters and (dependent upon position) numbers get escaped as code points
5372          return ch.slice(0, -1) + "\\" + ch.charCodeAt(ch.length - 1).toString(16) + " ";
5373        }
5374
5375        // Other potentially-special ASCII characters get backslash-escaped
5376        return "\\" + ch;
5377      };
5378
5379      return (sel + "").replace(rcssescape, fcssescape);
5380    };
5381  }
5382
5383  // Get info about gallery name and current index from url
5384  function parseUrl() {
5385    var hash = window.location.hash.substr(1),
5386      rez = hash.split("-"),
5387      index = rez.length > 1 && /^\+?\d+$/.test(rez[rez.length - 1]) ? parseInt(rez.pop(-1), 10) || 1 : 1,
5388      gallery = rez.join("-");
5389
5390    return {
5391      hash: hash,
5392      /* Index is starting from 1 */
5393      index: index < 1 ? 1 : index,
5394      gallery: gallery
5395    };
5396  }
5397
5398  // Trigger click evnt on links to open new fancyBox instance
5399  function triggerFromUrl(url) {
5400    if (url.gallery !== "") {
5401      // If we can find element matching 'data-fancybox' atribute,
5402      // then triggering click event should start fancyBox
5403      $("[data-fancybox='" + $.escapeSelector(url.gallery) + "']")
5404        .eq(url.index - 1)
5405        .focus()
5406        .trigger("click.fb-start");
5407    }
5408  }
5409
5410  // Get gallery name from current instance
5411  function getGalleryID(instance) {
5412    var opts, ret;
5413
5414    if (!instance) {
5415      return false;
5416    }
5417
5418    opts = instance.current ? instance.current.opts : instance.opts;
5419    ret = opts.hash || (opts.$orig ? opts.$orig.data("fancybox") || opts.$orig.data("fancybox-trigger") : "");
5420
5421    return ret === "" ? false : ret;
5422  }
5423
5424  // Start when DOM becomes ready
5425  $(function () {
5426    // Check if user has disabled this module
5427    if ($.fancybox.defaults.hash === false) {
5428      return;
5429    }
5430
5431    // Update hash when opening/closing fancyBox
5432    $(document).on({
5433      "onInit.fb": function (e, instance) {
5434        var url, gallery;
5435
5436        if (instance.group[instance.currIndex].opts.hash === false) {
5437          return;
5438        }
5439
5440        url = parseUrl();
5441        gallery = getGalleryID(instance);
5442
5443        // Make sure gallery start index matches index from hash
5444        if (gallery && url.gallery && gallery == url.gallery) {
5445          instance.currIndex = url.index - 1;
5446        }
5447      },
5448
5449      "beforeShow.fb": function (e, instance, current, firstRun) {
5450        var gallery;
5451
5452        if (!current || current.opts.hash === false) {
5453          return;
5454        }
5455
5456        // Check if need to update window hash
5457        gallery = getGalleryID(instance);
5458
5459        if (!gallery) {
5460          return;
5461        }
5462
5463        // Variable containing last hash value set by fancyBox
5464        // It will be used to determine if fancyBox needs to close after hash change is detected
5465        instance.currentHash = gallery + (instance.group.length > 1 ? "-" + (current.index + 1) : "");
5466
5467        // If current hash is the same (this instance most likely is opened by hashchange), then do nothing
5468        if (window.location.hash === "#" + instance.currentHash) {
5469          return;
5470        }
5471
5472        if (firstRun && !instance.origHash) {
5473          instance.origHash = window.location.hash;
5474        }
5475
5476        if (instance.hashTimer) {
5477          clearTimeout(instance.hashTimer);
5478        }
5479
5480        // Update hash
5481        instance.hashTimer = setTimeout(function () {
5482          if ("replaceState" in window.history) {
5483            window.history[firstRun ? "pushState" : "replaceState"]({},
5484              document.title,
5485              window.location.pathname + window.location.search + "#" + instance.currentHash
5486            );
5487
5488            if (firstRun) {
5489              instance.hasCreatedHistory = true;
5490            }
5491          } else {
5492            window.location.hash = instance.currentHash;
5493          }
5494
5495          instance.hashTimer = null;
5496        }, 300);
5497      },
5498
5499      "beforeClose.fb": function (e, instance, current) {
5500        if (!current || current.opts.hash === false) {
5501          return;
5502        }
5503
5504        clearTimeout(instance.hashTimer);
5505
5506        // Goto previous history entry
5507        if (instance.currentHash && instance.hasCreatedHistory) {
5508          window.history.back();
5509        } else if (instance.currentHash) {
5510          if ("replaceState" in window.history) {
5511            window.history.replaceState({}, document.title, window.location.pathname + window.location.search + (instance.origHash || ""));
5512          } else {
5513            window.location.hash = instance.origHash;
5514          }
5515        }
5516
5517        instance.currentHash = null;
5518      }
5519    });
5520
5521    // Check if need to start/close after url has changed
5522    $(window).on("hashchange.fb", function () {
5523      var url = parseUrl(),
5524        fb = null;
5525
5526      // Find last fancyBox instance that has "hash"
5527      $.each(
5528        $(".fancybox-container")
5529        .get()
5530        .reverse(),
5531        function (index, value) {
5532          var tmp = $(value).data("FancyBox");
5533
5534          if (tmp && tmp.currentHash) {
5535            fb = tmp;
5536            return false;
5537          }
5538        }
5539      );
5540
5541      if (fb) {
5542        // Now, compare hash values
5543        if (fb.currentHash !== url.gallery + "-" + url.index && !(url.index === 1 && fb.currentHash == url.gallery)) {
5544          fb.currentHash = null;
5545
5546          fb.close();
5547        }
5548      } else if (url.gallery !== "") {
5549        triggerFromUrl(url);
5550      }
5551    });
5552
5553    // Check current hash and trigger click event on matching element to start fancyBox, if needed
5554    setTimeout(function () {
5555      if (!$.fancybox.getInstance()) {
5556        triggerFromUrl(parseUrl());
5557      }
5558    }, 50);
5559  });
5560})(window, document, jQuery);
5561// ==========================================================================
5562//
5563// Wheel
5564// Basic mouse weheel support for gallery navigation
5565//
5566// ==========================================================================
5567(function (document, $) {
5568  "use strict";
5569
5570  var prevTime = new Date().getTime();
5571
5572  $(document).on({
5573    "onInit.fb": function (e, instance, current) {
5574      instance.$refs.stage.on("mousewheel DOMMouseScroll wheel MozMousePixelScroll", function (e) {
5575        var current = instance.current,
5576          currTime = new Date().getTime();
5577
5578        if (instance.group.length < 2 || current.opts.wheel === false || (current.opts.wheel === "auto" && current.type !== "image")) {
5579          return;
5580        }
5581
5582        e.preventDefault();
5583        e.stopPropagation();
5584
5585        if (current.$slide.hasClass("fancybox-animated")) {
5586          return;
5587        }
5588
5589        e = e.originalEvent || e;
5590
5591        if (currTime - prevTime < 250) {
5592          return;
5593        }
5594
5595        prevTime = currTime;
5596
5597        instance[(-e.deltaY || -e.deltaX || e.wheelDelta || -e.detail) < 0 ? "next" : "previous"]();
5598      });
5599    }
5600  });
5601})(document, jQuery);
5602/* End */
5603;
5604; /* Start:"a:4:{s:4:"full";s:97:"/bitrix/templates/internetclient_pk_s1_new/vendor/bxslider/jquery.bxslider.min.js?177747263919359";s:6:"source";s:81:"/bitrix/templates/internetclient_pk_s1_new/vendor/bxslider/jquery.bxslider.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
5605/**
5606 * BxSlider v4.1.2 - Fully loaded, responsive content slider
5607 * http://bxslider.com
5608 *
5609 * Copyright 2014, Steven Wanderski - http://stevenwanderski.com - http://bxcreative.com
5610 * Written while drinking Belgian ales and listening to jazz
5611 *
5612 * Released under the MIT license - http://opensource.org/licenses/MIT
5613 */
5614!function(t){var e={},s={mode:"horizontal",slideSelector:"",infiniteLoop:!0,hideControlOnEnd:!1,speed:500,easing:null,slideMargin:0,startSlide:0,randomStart:!1,captions:!1,ticker:!1,tickerHover:!1,adaptiveHeight:!1,adaptiveHeightSpeed:500,video:!1,useCSS:!0,preloadImages:"visible",responsive:!0,slideZIndex:50,touchEnabled:!0,swipeThreshold:50,oneToOneTouch:!0,preventDefaultSwipeX:!0,preventDefaultSwipeY:!1,pager:!0,pagerType:"full",pagerShortSeparator:" / ",pagerSelector:null,buildPager:null,pagerCustom:null,controls:!0,nextText:"Next",prevText:"Prev",nextSelector:null,prevSelector:null,autoControls:!1,startText:"Start",stopText:"Stop",autoControlsCombine:!1,autoControlsSelector:null,auto:!1,pause:4e3,autoStart:!0,autoDirection:"next",autoHover:!1,autoDelay:0,minSlides:1,maxSlides:1,moveSlides:0,slideWidth:0,onSliderLoad:function(){},onSlideBefore:function(){},onSlideAfter:function(){},onSlideNext:function(){},onSlidePrev:function(){},onSliderResize:function(){}};t.fn.bxSlider=function(n){if(0==this.length)return this;if(this.length>1)return this.each(function(){t(this).bxSlider(n)}),this;var o={},r=this;e.el=this;var a=t(window).width(),l=t(window).height(),d=function(){o.settings=t.extend({},s,n),o.settings.slideWidth=parseInt(o.settings.slideWidth),o.children=r.children(o.settings.slideSelector),o.children.length<o.settings.minSlides&&(o.settings.minSlides=o.children.length),o.children.length<o.settings.maxSlides&&(o.settings.maxSlides=o.children.length),o.settings.randomStart&&(o.settings.startSlide=Math.floor(Math.random()*o.children.length)),o.active={index:o.settings.startSlide},o.carousel=o.settings.minSlides>1||o.settings.maxSlides>1,o.carousel&&(o.settings.preloadImages="all"),o.minThreshold=o.settings.minSlides*o.settings.slideWidth+(o.settings.minSlides-1)*o.settings.slideMargin,o.maxThreshold=o.settings.maxSlides*o.settings.slideWidth+(o.settings.maxSlides-1)*o.settings.slideMargin,o.working=!1,o.controls={},o.interval=null,o.animProp="vertical"==o.settings.mode?"top":"left",o.usingCSS=o.settings.useCSS&&"fade"!=o.settings.mode&&function(){var t=document.createElement("div"),e=["WebkitPerspective","MozPerspective","OPerspective","msPerspective"];for(var i in e)if(void 0!==t.style[e[i]])return o.cssPrefix=e[i].replace("Perspective","").toLowerCase(),o.animProp="-"+o.cssPrefix+"-transform",!0;return!1}(),"vertical"==o.settings.mode&&(o.settings.maxSlides=o.settings.minSlides),r.data("origStyle",r.attr("style")),r.children(o.settings.slideSelector).each(function(){t(this).data("origStyle",t(this).attr("style"))}),c()},c=function(){r.wrap('<div class="bx-wrapper"><div class="bx-viewport"></div></div>'),o.viewport=r.parent(),o.loader=t('<div class="bx-loading" />'),o.viewport.prepend(o.loader),r.css({width:"horizontal"==o.settings.mode?100*o.children.length+215+"%":"auto",position:"relative"}),o.usingCSS&&o.settings.easing?r.css("-"+o.cssPrefix+"-transition-timing-function",o.settings.easing):o.settings.easing||(o.settings.easing="swing"),f(),o.viewport.css({width:"100%",overflow:"hidden",position:"relative"}),o.viewport.parent().css({maxWidth:p()}),o.settings.pager||o.viewport.parent().css({margin:"0 auto 0px"}
5614),o.children.css({"float":"horizontal"==o.settings.mode?"left":"none",listStyle:"none",position:"relative"}),o.children.css("width",u()),"horizontal"==o.settings.mode&&o.settings.slideMargin>0&&o.children.css("marginRight",o.settings.slideMargin),"vertical"==o.settings.mode&&o.settings.slideMargin>0&&o.children.css("marginBottom",o.settings.slideMargin),"fade"==o.settings.mode&&(o.children.css({position:"absolute",zIndex:0,display:"none"}),o.children.eq(o.settings.startSlide).css({zIndex:o.settings.slideZIndex,display:"block"})),o.controls.el=t('<div class="bx-controls" />'),o.settings.captions&&P(),o.active.last=o.settings.startSlide==x()-1,o.settings.video&&r.fitVids();var e=o.children.eq(o.settings.startSlide);"all"==o.settings.preloadImages&&(e=o.children),o.settings.ticker?o.settings.pager=!1:(o.settings.pager&&T(),o.settings.controls&&C(),o.settings.auto&&o.settings.autoControls&&E(),(o.settings.controls||o.settings.autoControls||o.settings.pager)&&o.viewport.after(o.controls.el)),g(e,h)},g=function(e,i){var s=e.find("img, iframe").length;if(0==s)return i(),void 0;var n=0;e.find("img, iframe").each(function(){t(this).one("load",function(){++n==s&&i()}).each(function(){this.complete&&t(this).load()})})},h=function(){if(o.settings.infiniteLoop&&"fade"!=o.settings.mode&&!o.settings.ticker){var e="vertical"==o.settings.mode?o.settings.minSlides:o.settings.maxSlides,i=o.children.slice(0,e).clone().addClass("bx-clone"),s=o.children.slice(-e).clone().addClass("bx-clone");r.append(i).prepend(s)}o.loader.remove(),S(),"vertical"==o.settings.mode&&(o.settings.adaptiveHeight=!0),o.viewport.height(v()),r.redrawSlider(),o.settings.onSliderLoad(o.active.index),o.initialized=!0,o.settings.responsive&&t(window).bind("resize",Z),o.settings.auto&&o.settings.autoStart&&H(),o.settings.ticker&&L(),o.settings.pager&&q(o.settings.startSlide),o.settings.controls&&W(),o.settings.touchEnabled&&!o.settings.ticker&&O()},v=function(){var e=0,s=t();if("vertical"==o.settings.mode||o.settings.adaptiveHeight)if(o.carousel){var n=1==o.settings.moveSlides?o.active.index:o.active.index*m();for(s=o.children.eq(n),i=1;i<=o.settings.maxSlides-1;i++)s=n+i>=o.children.length?s.add(o.children.eq(i-1)):s.add(o.children.eq(n+i))}else s=o.children.eq(o.active.index);else s=o.children;return"vertical"==o.settings.mode?(s.each(function(){e+=t(this).outerHeight()}),o.settings.slideMargin>0&&(e+=o.settings.slideMargin*(o.settings.minSlides-1))):e=Math.max.apply(Math,s.map(function(){return t(this).outerHeight(!1)}).get()),e},p=function(){var t="100%";return o.settings.slideWidth>0&&(t="horizontal"==o.settings.mode?o.settings.maxSlides*o.settings.slideWidth+(o.settings.maxSlides-1)*o.settings.slideMargin:o.settings.slideWidth),t},u=function(){var t=o.settings.slideWidth,e=o.viewport.width();return 0==o.settings.slideWidth||o.settings.slideWidth>e&&!o.carousel||"vertical"==o.settings.mode?t=e:o.settings.maxSlides>1&&"horizontal"==o.settings.mode&&(e>o.maxThreshold||e<o.minThreshold&&(t=(e-o.settings.slideMargin*(o.settings.minSlides-1))/o.settings.minSlides)),t},f=function(){var t=1;if("horizontal"==o.settings.mode&&o.settings.slideWidth>0)if(o.viewport.width()<o.minThreshold)t=o.settings.minSlides;else if(o.viewport.width()>o.maxThreshold)t=o.settings.maxSlides;else{var e=o.children.first().width();t=Math.floor(o.viewport.width()/e)}else"vertical"==o.settings.mode&&(t=o.settings.minSlides);return t},x=function(){var t=0;if(o.settings.moveSlides>0)if(o.settings.infiniteLoop)t=o.children.length/m();else for(var e=0,i=0;e<o.children.length;)++t,e=i+f(),i+=o.settings.moveSlides<=f()?o.settings.moveSlides:f();else t=Math.ceil(o.children.length/f());return t},m=function(){return o.settings.moveSlides>0&&o.settings.moveSlides<=f()?o.settings.moveSlides:f()},S=function(){if(o.children.length>o.settings.maxSlides&&o.active.last&&!o.settings.infiniteLoop){if("horizontal"==o.settings.mode){var t=o.children.last(),e=t.position();b(-(e.left-(o.viewport.width()-t.width())),"reset",0)}else if("vertical"==o.settings.mode){var i=o.children.length-o.settings.minSlides,e=o.children.eq(i).position();b(-e.top,"reset",0)}}else{var e=o.children.eq(o.active.index*m()).position();o.active.index==x()-1&&(o.active.last=!0),void 0!=e&&("horizontal"==o.settings.mode?b(-e.left,"reset",0):"vertical"==o.settings.mode&&b(-e.top,"reset",0))}}
5614,b=function(t,e,i,s){if(o.usingCSS){var n="vertical"==o.settings.mode?"translate3d(0, "+t+"px, 0)":"translate3d("+t+"px, 0, 0)";r.css("-"+o.cssPrefix+"-transition-duration",i/1e3+"s"),"slide"==e?(r.css(o.animProp,n),r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd",function(){r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"),D()})):"reset"==e?r.css(o.animProp,n):"ticker"==e&&(r.css("-"+o.cssPrefix+"-transition-timing-function","linear"),r.css(o.animProp,n),r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd",function(){r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"),b(s.resetValue,"reset",0),N()}))}else{var a={};a[o.animProp]=t,"slide"==e?r.animate(a,i,o.settings.easing,function(){D()}):"reset"==e?r.css(o.animProp,t):"ticker"==e&&r.animate(a,speed,"linear",function(){b(s.resetValue,"reset",0),N()})}},w=function(){for(var e="",i=x(),s=0;i>s;s++){var n="";o.settings.buildPager&&t.isFunction(o.settings.buildPager)?(n=o.settings.buildPager(s),o.pagerEl.addClass("bx-custom-pager")):(n=s+1,o.pagerEl.addClass("bx-default-pager")),e+='<div class="bx-pager-item"><a href="" data-slide-index="'+s+'" class="bx-pager-link">'+n+"</a></div>"}o.pagerEl.html(e)},T=function(){o.settings.pagerCustom?o.pagerEl=t(o.settings.pagerCustom):(o.pagerEl=t('<div class="bx-pager" />'),o.settings.pagerSelector?t(o.settings.pagerSelector).html(o.pagerEl):o.controls.el.addClass("bx-has-pager").append(o.pagerEl),w()),o.pagerEl.on("click","a",I)},C=function(){o.controls.next=t('<a class="bx-next" href="">'+o.settings.nextText+"</a>"),o.controls.prev=t('<a class="bx-prev" href="">'+o.settings.prevText+"</a>"),o.controls.next.bind("click",y),o.controls.prev.bind("click",z),o.settings.nextSelector&&t(o.settings.nextSelector).append(o.controls.next),o.settings.prevSelector&&t(o.settings.prevSelector).append(o.controls.prev),o.settings.nextSelector||o.settings.prevSelector||(o.controls.directionEl=t('<div class="bx-controls-direction" />'),o.controls.directionEl.append(o.controls.prev).append(o.controls.next),o.controls.el.addClass("bx-has-controls-direction").append(o.controls.directionEl))},E=function(){o.controls.start=t('<div class="bx-controls-auto-item"><a class="bx-start" href="">'+o.settings.startText+"</a></div>"),o.controls.stop=t('<div class="bx-controls-auto-item"><a class="bx-stop" href="">'+o.settings.stopText+"</a></div>"),o.controls.autoEl=t('<div class="bx-controls-auto" />'),o.controls.autoEl.on("click",".bx-start",k),o.controls.autoEl.on("click",".bx-stop",M),o.settings.autoControlsCombine?o.controls.autoEl.append(o.controls.start):o.controls.autoEl.append(o.controls.start).append(o.controls.stop),o.settings.autoControlsSelector?t(o.settings.autoControlsSelector).html(o.controls.autoEl):o.controls.el.addClass("bx-has-controls-auto").append(o.controls.autoEl),A(o.settings.autoStart?"stop":"start")},P=function(){o.children.each(function(){var e=t(this).find("img:first").attr("title");void 0!=e&&(""+e).length&&t(this).append('<div class="bx-caption"><span>'+e+"</span></div>")})},y=function(t){o.settings.auto&&r.stopAuto(),r.goToNextSlide(),t.preventDefault()},z=function(t){o.settings.auto&&r.stopAuto(),r.goToPrevSlide(),t.preventDefault()},k=function(t){r.startAuto(),t.preventDefault()},M=function(t){r.stopAuto(),t.preventDefault()},I=function(e){o.settings.auto&&r.stopAuto();var i=t(e.currentTarget),s=parseInt(i.attr("data-slide-index"));s!=o.active.index&&r.goToSlide(s),e.preventDefault()},q=function(e){var i=o.children.length;return"short"==o.settings.pagerType?(o.settings.maxSlides>1&&(i=Math.ceil(o.children.length/o.settings.maxSlides)),o.pagerEl.html(e+1+o.settings.pagerShortSeparator+i),void 0):(o.pagerEl.find("a").removeClass("active"),o.pagerEl.each(function(i,s){t(s).find("a").eq(e).addClass("active")}),void 0)},D=function(){if(o.settings.infiniteLoop){var t="";0==o.active.index?t=o.children.eq(0).position():o.active.index==x()-1&&o.carousel?t=o.children.eq((x()-1)*m()).position():o.active.index==o.children.length-1&&(t=o.children.eq(o.children.length-1).position()),t&&("horizontal"==o.settings.mode?b(-t.left,"reset",0):"vertical"==o.settings.mode&&b(-t.top,"reset",0))}o.working=!1,o.settings.onSlideAfter(o.children.eq(o.active.index),o.oldIndex,o.active.index)},A=function(t){o.settings.autoControlsCombine?o.controls.autoEl.html(o.controls[t]):(o.controls.autoEl.find("a").removeClass("active"),o.controls.autoEl.find("a:not(.bx-"+t+")").addClass("active"))},W=function(){1==x()?(o.controls.prev.addClass("disabled"),o.controls.next.addClass("disabled")):!o.settings.infiniteLoop&&o.settings.hideControlOnEnd&&(0==o.active.index?(o.controls.prev.addClass("disabled"),o.controls.next.removeClass("disabled")):o.active.index==x()-1?(o.controls.next.addClass("disabled"),o.controls.prev.removeClass("disabled")):(o.controls.prev.removeClass("disabled"),o.controls.next.removeClass("disabled")))},H=function(){o.settings.autoDelay>0?setTimeout(r.startAuto,o.settings.autoDelay):r.startAuto(),o.settings.autoHover&&r.hover(function(){o.interval&&(r.stopAuto(!0),o.autoPaused=!0)},function(){o.autoPaused&&(r.startAuto(!0),o.autoPaused=null)})},L=function(){var e=0;if("next"==o.settings.autoDirection)r.append(o.children.clone().addClass("bx-clone"));else{r.prepend(o.children.clone().addClass("bx-clone"));var i=o.children.first().position();e="horizontal"==o.settings.mode?-i.left:-i.top}b(e,"reset",0),o.settings.pager=!1,o.settings.controls=!1,o.settings.autoControls=!1,o.settings.tickerHover&&!o.usingCSS&&o.viewport.hover(function(){r.stop()},function(){var e=0;o.children.each(function(){e+="horizontal"==o.settings.mode?t(this).outerWidth(!0):t(this).outerHeight(!0)});
5614var i=o.settings.speed/e,s="horizontal"==o.settings.mode?"left":"top",n=i*(e-Math.abs(parseInt(r.css(s))));N(n)}),N()},N=function(t){speed=t?t:o.settings.speed;var e={left:0,top:0},i={left:0,top:0};"next"==o.settings.autoDirection?e=r.find(".bx-clone").first().position():i=o.children.first().position();var s="horizontal"==o.settings.mode?-e.left:-e.top,n="horizontal"==o.settings.mode?-i.left:-i.top,a={resetValue:n};b(s,"ticker",speed,a)},O=function(){o.touch={start:{x:0,y:0},end:{x:0,y:0}},o.viewport.bind("touchstart",X)},X=function(t){if(o.working)t.preventDefault();else{o.touch.originalPos=r.position();var e=t.originalEvent;o.touch.start.x=e.changedTouches[0].pageX,o.touch.start.y=e.changedTouches[0].pageY,o.viewport.bind("touchmove",Y),o.viewport.bind("touchend",V)}},Y=function(t){var e=t.originalEvent,i=Math.abs(e.changedTouches[0].pageX-o.touch.start.x),s=Math.abs(e.changedTouches[0].pageY-o.touch.start.y);if(3*i>s&&o.settings.preventDefaultSwipeX?t.preventDefault():3*s>i&&o.settings.preventDefaultSwipeY&&t.preventDefault(),"fade"!=o.settings.mode&&o.settings.oneToOneTouch){var n=0;if("horizontal"==o.settings.mode){var r=e.changedTouches[0].pageX-o.touch.start.x;n=o.touch.originalPos.left+r}else{var r=e.changedTouches[0].pageY-o.touch.start.y;n=o.touch.originalPos.top+r}b(n,"reset",0)}},V=function(t){o.viewport.unbind("touchmove",Y);var e=t.originalEvent,i=0;if(o.touch.end.x=e.changedTouches[0].pageX,o.touch.end.y=e.changedTouches[0].pageY,"fade"==o.settings.mode){var s=Math.abs(o.touch.start.x-o.touch.end.x);s>=o.settings.swipeThreshold&&(o.touch.start.x>o.touch.end.x?r.goToNextSlide():r.goToPrevSlide(),r.stopAuto())}else{var s=0;"horizontal"==o.settings.mode?(s=o.touch.end.x-o.touch.start.x,i=o.touch.originalPos.left):(s=o.touch.end.y-o.touch.start.y,i=o.touch.originalPos.top),!o.settings.infiniteLoop&&(0==o.active.index&&s>0||o.active.last&&0>s)?b(i,"reset",200):Math.abs(s)>=o.settings.swipeThreshold?(0>s?r.goToNextSlide():r.goToPrevSlide(),r.stopAuto()):b(i,"reset",200)}o.viewport.unbind("touchend",V)},Z=function(){var e=t(window).width(),i=t(window).height();(a!=e||l!=i)&&(a=e,l=i,r.redrawSlider(),o.settings.onSliderResize.call(r,o.active.index))};return r.goToSlide=function(e,i){if(!o.working&&o.active.index!=e)if(o.working=!0,o.oldIndex=o.active.index,o.active.index=0>e?x()-1:e>=x()?0:e,o.settings.onSlideBefore(o.children.eq(o.active.index),o.oldIndex,o.active.index),"next"==i?o.settings.onSlideNext(o.children.eq(o.active.index),o.oldIndex,o.active.index):"prev"==i&&o.settings.onSlidePrev(o.children.eq(o.active.index),o.oldIndex,o.active.index),o.active.last=o.active.index>=x()-1,o.settings.pager&&q(o.active.index),o.settings.controls&&W(),"fade"==o.settings.mode)o.settings.adaptiveHeight&&o.viewport.height()!=v()&&o.viewport.animate({height:v()},o.settings.adaptiveHeightSpeed),o.children.filter(":visible").fadeOut(o.settings.speed).css({zIndex:0}),o.children.eq(o.active.index).css("zIndex",o.settings.slideZIndex+1).fadeIn(o.settings.speed,function(){t(this).css("zIndex",o.settings.slideZIndex),D()});else{o.settings.adaptiveHeight&&o.viewport.height()!=v()&&o.viewport.animate({height:v()},o.settings.adaptiveHeightSpeed);var s=0,n={left:0,top:0};if(!o.settings.infiniteLoop&&o.carousel&&o.active.last)if("horizontal"==o.settings.mode){var a=o.children.eq(o.children.length-1);n=a.position(),s=o.viewport.width()-a.outerWidth()}else{var l=o.children.length-o.settings.minSlides;n=o.children.eq(l).position()}else if(o.carousel&&o.active.last&&"prev"==i){var d=1==o.settings.moveSlides?o.settings.maxSlides-m():(x()-1)*m()-(o.children.length-o.settings.maxSlides),a=r.children(".bx-clone").eq(d);n=a.position()}else if("next"==i&&0==o.active.index)n=r.find("> .bx-clone").eq(o.settings.maxSlides).position(),o.active.last=!1;else if(e>=0){var c=e*m();n=o.children.eq(c).position()}if("undefined"!=typeof n){var g="horizontal"==o.settings.mode?-(n.left-s):-n.top;b(g,"slide",o.settings.speed)}}},r.goToNextSlide=function(){if(o.settings.infiniteLoop||!o.active.last){var t=parseInt(o.active.index)+1;r.goToSlide(t,"next")}},r.goToPrevSlide=function(){if(o.settings.infiniteLoop||0!=o.active.index){var t=parseInt(o.active.index)-1;r.goToSlide(t,"prev")}},r.startAuto=function(t){o.interval||(o.interval=setInterval(function(){"next"==o.settings.autoDirection?r.goToNextSlide():r.goToPrevSlide()},o.settings.pause),o.settings.autoControls&&1!=t&&A("stop"))},r.stopAuto=function(t){o.interval&&(clearInterval(o.interval),o.interval=null,o.settings.autoControls&&1!=t&&A("start"))},r.getCurrentSlide=function(){return o.active.index},r.getCurrentSlideElement=function(){return o.children.eq(o.active.index)},r.getSlideCount=function(){return o.children.length},r.redrawSlider=function(){o.children.add(r.find(".bx-clone")).outerWidth(u()),o.viewport.css("height",v()),o.settings.ticker||S(),o.active.last&&(o.active.index=x()-1),o.active.index>=x()&&(o.active.last=!0),o.settings.pager&&!o.settings.pagerCustom&&(w(),q(o.active.index))},r.destroySlider=function(){o.initialized&&(o.initialized=!1,t(".bx-clone",this).remove(),o.children.each(function(){void 0!=t(this).data("origStyle")?t(this).attr("style",t(this).data("origStyle")):t(this).removeAttr("style")}),void 0!=t(this).data("origStyle")?this.attr("style",t(this).data("origStyle")):t(this).removeAttr("style"),t(this).unwrap().unwrap(),o.controls.el&&o.controls.el.remove(),o.controls.next&&o.controls.next.remove(),o.controls.prev&&o.controls.prev.remove(),o.pagerEl&&o.settings.controls&&o.pagerEl.remove(),t(".bx-caption",this).remove(),o.controls.autoEl&&o.controls.autoEl.remove(),clearInterval(o.interval),o.settings.responsive&&t(window).unbind("resize",Z))},r.reloadSlider=function(t){void 0!=t&&(n=t),r.destroySlider(),d()},d(),this}}(jQuery);
5615/* End */
5616;
5617; /* Start:"a:4:{s:4:"full";
5617s:89:"/bitrix/templates/internetclient_pk_s1_new/vendor/jquery.jcarousel.min.js?177747263918123";s:6:"source";s:73:"/bitrix/templates/internetclient_pk_s1_new/vendor/jquery.jcarousel.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
vendor: 18,123 bytes, lines 5618-5621
5618/*! jCarousel - v0.3.4 - 2015-09-23
5619* http://sorgalla.com/jcarousel/
5620* Copyright (c) 2006-2015 Jan Sorgalla; Licensed MIT */
5621!function(a){"use strict";var b=a.jCarousel={};b.version="0.3.4";var c=/^([+\-]=)?(.+)$/;b.parseTarget=function(a){var b=!1,d="object"!=typeof a?c.exec(a):null;return d?(a=parseInt(d[2],10)||0,d[1]&&(b=!0,"-="===d[1]&&(a*=-1))):"object"!=typeof a&&(a=parseInt(a,10)||0),{target:a,relative:b}},b.detectCarousel=function(a){for(var b;a.length>0;){if(b=a.filter("[data-jcarousel]"),b.length>0)return b;if(b=a.find("[data-jcarousel]"),b.length>0)return b;a=a.parent()}return null},b.base=function(c){return{version:b.version,_options:{},_element:null,_carousel:null,_init:a.noop,_create:a.noop,_destroy:a.noop,_reload:a.noop,create:function(){return this._element.attr("data-"+c.toLowerCase(),!0).data(c,this),!1===this._trigger("create")?this:(this._create(),this._trigger("createend"),this)},destroy:function(){return!1===this._trigger("destroy")?this:(this._destroy(),this._trigger("destroyend"),this._element.removeData(c).removeAttr("data-"+c.toLowerCase()),this)},reload:function(a){return!1===this._trigger("reload")?this:(a&&this.options(a),this._reload(),this._trigger("reloadend"),this)},element:function(){return this._element},options:function(b,c){if(0===arguments.length)return a.extend({},this._options);if("string"==typeof b){if("undefined"==typeof c)return"undefined"==typeof this._options[b]?null:this._options[b];this._options[b]=c}else this._options=a.extend({},this._options,b);return this},carousel:function(){return this._carousel||(this._carousel=b.detectCarousel(this.options("carousel")||this._element),this._carousel||a.error('Could not detect carousel for plugin "'+c+'"')),this._carousel},_trigger:function(b,d,e){var f,g=!1;return e=[this].concat(e||[]),(d||this._element).each(function(){f=a.Event((c+":"+b).toLowerCase()),a(this).trigger(f,e),f.isDefaultPrevented()&&(g=!0)}),!g}}},b.plugin=function(c,d){var e=a[c]=function(b,c){this._element=a(b),this.options(c),this._init(),this.create()};return e.fn=e.prototype=a.extend({},b.base(c),d),a.fn[c]=function(b){var d=Array.prototype.slice.call(arguments,1),f=this;return this.each("string"==typeof b?function(){var e=a(this).data(c);if(!e)return a.error("Cannot call methods on "+c+' prior to initialization; attempted to call method "'+b+'"');if(!a.isFunction(e[b])||"_"===b.charAt(0))return a.error('No such method "'+b+'" for '+c+" instance");var g=e[b].apply(e,d);return g!==e&&"undefined"!=typeof g?(f=g,!1):void 0}:function(){var d=a(this).data(c);d instanceof e?d.reload(b):new e(this,b)}),f},e}}(jQuery),function(a,b){"use strict";var c=function(a){return parseFloat(a)||0};a.jCarousel.plugin("jcarousel",{animating:!1,tail:0,inTail:!1,resizeTimer:null,lt:null,vertical:!1,rtl:!1,circular:!1,underflow:!1,relative:!1,_options:{list:function(){return this.element().children().eq(0)},items:function(){return this.list().children()},animation:400,transitions:!1,wrap:null,vertical:null,rtl:null,center:!1},_list:null,_items:null,_target:a(),_first:a(),_last:a(),_visible:a(),_fullyvisible:a(),_init:function(){var a=this;return this.onWindowResize=function(){a.resizeTimer&&clearTimeout(a.resizeTimer),a.resizeTimer=setTimeout(function(){a.reload()},100)},this},_create:function(){this._reload(),a(b).on("resize.jcarousel",this.onWindowResize)},_destroy:function(){a(b).off("resize.jcarousel",this.onWindowResize)},_reload:function(){this.vertical=this.options("vertical"),null==this.vertical&&(this.vertical=this.list().height()>this.list().width()),this.rtl=this.options("rtl"),null==this.rtl&&(this.rtl=function(b){if("rtl"===(""+b.attr("dir")).toLowerCase())return!0;var c=!1;return b.parents("[dir]").each(function(){return/rtl/i.test(a(this).attr("dir"))?(c=!0,!1):void 0}),c}(this._element)),this.lt=this.vertical?"top":"left",this.relative="relative"===this.list().css("position"),this._list=null,this._items=null;var b=this.index(this._target)>=0?this._target:this.closest();this.circular="circular"===this.options("wrap"),this.underflow=!1;var c={left:0,top:0};return b.length>0&&(this._prepare(b),this.list().find("[data-jcarousel-clone]").remove(),this._items=null,this.underflow=this._fullyvisible.length>=this.items().length,this.circular=this.circular&&!this.underflow,c[this.lt]=this._position(b)+"px"),this.move(c),this},list:function(){if(null===this._list){var b=this.options("list");this._list=a.isFunction(b)?b.call(this):this._element.find(b)}return this._list},items:function(){if(null===this._items){var b=this.options("items");this._items=(a.isFunction(b)?b.call(this):this.list().find(b)).not("[data-jcarousel-clone]")}return this._items},index:function(a){return this.items().index(a)},closest:function(){var b,d=this,e=this.list().position()[this.lt],f=a(),g=!1,h=this.vertical?"bottom":this.rtl&&!this.relative?"left":"right";return this.rtl&&this.relative&&!this.vertical&&(e+=this.list().width()-this.clipping()),this.items().each(function(){if(f=a(this),g)return!1;var i=d.dimension(f);if(e+=i,e>=0){if(b=i-c(f.css("margin-"+h)),!(Math.abs(e)-i+b/2<=0))return!1;g=!0}}),f},target:function(){return this._target},first:function(){return this._first},last:function(){return this._last},visible:function(){return this._visible},fullyvisible:function(){return this._fullyvisible},hasNext:function(){if(!1===this._trigger("hasnext"))return!0;var a=this.options("wrap"),b=this.items().length-1,c=this.options("center")?this._target:this._last;return b>=0&&!this.underflow&&(a&&"first"!==a||this.index(c)<b||this.tail&&!this.inTail)?!0:!1},hasPrev:function(){if(!1===this._trigger("hasprev"))return!0;var a=this.options("wrap");return this.items().length>0&&!this.underflow&&(a&&"last"!==a||this.index(this._first)>0||this.tail&&this.inTail)?!0:!1},clipping:function(){return this._element["inner"+(this.vertical?"Height":"Width")]()},dimension:function(a){return a["outer"+(this.vertical?"Height":"Width")](!0)},scroll:function(b,c,d){if(this.animating)return this;if(!1===this._trigger("scroll",null,[b,c]))return this;a.isFunction(c)&&(d=c,c=!0);var e=a.jCarousel.parseTarget(b);if(e.relative){var f,g,h,i,j,k,l,m,n=this.items().length-1,o=Math.abs(e.target),p=this.options("wrap");if(e.target>0){var q=this.index(this._last);if(q>=n&&this.tail)this.inTail?"both"===p||"last"===p?this._scroll(0,c,d):a.isFunction(d)&&d.call(this,!1):this._scrollTail(c,d);else if(f=this.index(this._target),this.underflow&&f===n&&("circular"===p||"both"===p||"last"===p)||!this.underflow&&q===n&&("both"===p||"last"===p))this._scroll(0,c,d);else if(h=f+o,this.circular&&h>n){for(m=n,j=this.items().get(-1);m++<h;)j=this.items().eq(0),k=this._visible.index(j)>=0,k&&j.after(j.clone(!0).attr("data-jcarousel-clone",!0)),this.list().append(j),k||(l={},l[this.lt]=this.dimension(j),this.moveBy(l)),this._items=null;this._scroll(j,c,d)}else this._scroll(Math.min(h,n),c,d)}else if(this.inTail)this._scroll(Math.max(this.index(this._first)-o+1,0),c,d);else if(g=this.index(this._first),f=this.index(this._target),i=this.underflow?f:g,h=i-o,0>=i&&(this.underflow&&"circular"===p||"both"===p||"first"===p))this._scroll(n,c,d);else if(this.circular&&0>h){for(m=h,j=this.items().get(0);m++<0;){j=this.items().eq(-1),k=this._visible.index(j)>=0,k&&j.after(j.clone(!0).attr("data-jcarousel-clone",!0)),this.list().prepend(j),this._items=null;var r=this.dimension(j);l={},l[this.lt]=-r,this.moveBy(l)}this._scroll(j,c,d)}else this._scroll(Math.max(h,0),c,d)}else this._scroll(e.target,c,d);return this._trigger("scrollend"),this},moveBy:function(a,b){var d=this.list().position(),e=1,f=0;return this.rtl&&!this.vertical&&(e=-1,this.relative&&(f=this.list().width()-this.clipping())),a.left&&(a.left=d.left+f+c(a.left)*e+"px"),a.top&&(a.top=d.top+f+c(a.top)*e+"px"),this.move(a,b)},move:function(b,c){c=c||{};var d=this.options("transitions"),e=!!d,f=!!d.transforms,g=!!d.transforms3d,h=c.duration||0,i=this.list();if(!e&&h>0)return void i.animate(b,c);var j=c.complete||a.noop,k={};if(e){var l={transitionDuration:i.css("transitionDuration"),transitionTimingFunction:i.css("transitionTimingFunction"),transitionProperty:i.css("transitionProperty")},m=j;j=function(){a(this).css(l),m.call(this)},k={transitionDuration:(h>0?h/1e3:0)+"s",transitionTimingFunction:d.easing||c.easing,transitionProperty:h>0?function(){return f||g?"all":b.left?"left":"top"}():"none",transform:"none"}}g?k.transform="translate3d("+(b.left||0)+","+(b.top||0)+",0)":f?k.transform="translate("+(b.left||0)+","+(b.top||0)+")":a.extend(k,b),e&&h>0&&i.one("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",j),i.css(k),0>=h&&i.each(function(){j.call(this)})},_scroll:function(b,c,d){if(this.animating)return a.isFunction(d)&&d.call(this,!1),this;if("object"!=typeof b?b=this.items().eq(b):"undefined"==typeof b.jquery&&(b=a(b)),0===b.length)return a.isFunction(d)&&d.call(this,!1),this;this.inTail=!1,this._prepare(b);var e=this._position(b),f=this.list().position()[this.lt];if(e===f)return a.isFunction(d)&&d.call(this,!1),this;var g={};return g[this.lt]=e+"px",this._animate(g,c,d),this},_scrollTail:function(b,c){if(this.animating||!this.tail)return a.isFunction(c)&&c.call(this,!1),this;var d=this.list().position()[this.lt];this.rtl&&this.relative&&!this.vertical&&(d+=this.list().width()-this.clipping()),this.rtl&&!this.vertical?d+=this.tail:d-=this.tail,this.inTail=!0;var e={};return e[this.lt]=d+"px",this._update({target:this._target.next(),fullyvisible:this._fullyvisible.slice(1).add(this._visible.last())}),this._animate(e,b,c),this},_animate:function(b,c,d){if(d=d||a.noop,!1===this._trigger("animate"))return d.call(this,!1),this;this.animating=!0;var e=this.options("animation"),f=a.proxy(function(){this.animating=!1;var a=this.list().find("[data-jcarousel-clone]");a.length>0&&(a.remove(),this._reload()),this._trigger("animateend"),d.call(this,!0)},this),g="object"==typeof e?a.extend({},e):{duration:e},h=g.complete||a.noop;return c===!1?g.duration=0:"undefined"!=typeof a.fx.speeds[g.duration]&&(g.duration=a.fx.speeds[g.duration]),g.complete=function(){f(),h.call(this)},this.move(b,g),this},_prepare:function(b){var d,e,f,g,h=this.index(b),i=h,j=this.dimension(b),k=this.clipping(),l=this.vertical?"bottom":this.rtl?"left":"right",m=this.options("center"),n={target:b,first:b,last:b,visible:b,fullyvisible:k>=j?b:a()};if(m&&(j/=2,k/=2),k>j)for(;;){if(d=this.items().eq(++i),0===d.length){if(!this.circular)break;if(d=this.items().eq(0),b.get(0)===d.get(0))break;if(e=this._visible.index(d)>=0,e&&d.after(d.clone(!0).attr("data-jcarousel-clone",!0)),this.list().append(d),!e){var o={};o[this.lt]=this.dimension(d),this.moveBy(o)}this._items=null}if(g=this.dimension(d),0===g)break;if(j+=g,n.last=d,n.visible=n.visible.add(d),f=c(d.css("margin-"+l)),k>=j-f&&(n.fullyvisible=n.fullyvisible.add(d)),j>=k)break}if(!this.circular&&!m&&k>j)for(i=h;;){if(--i<0)break;if(d=this.items().eq(i),0===d.length)break;if(g=this.dimension(d),0===g)break;if(j+=g,n.first=d,n.visible=n.visible.add(d),f=c(d.css("margin-"+l)),k>=j-f&&(n.fullyvisible=n.fullyvisible.add(d)),j>=k)break}return this._update(n),this.tail=0,m||"circular"===this.options("wrap")||"custom"===this.options("wrap")||this.index(n.last)!==this.items().length-1||(j-=c(n.last.css("margin-"+l)),j>k&&(this.tail=j-k)),this},_position:function(a){var b=this._first,c=b.position()[this.lt],d=this.options("center"),e=d?this.clipping()/2-this.dimension(b)/2:0;return this.rtl&&!this.vertical?(c-=this.relative?this.list().width()-this.dimension(b):this.clipping()-this.dimension(b),c+=e):c-=e,!d&&(this.index(a)>this.index(b)||this.inTail)&&this.tail?(c=this.rtl&&!this.vertical?c-this.tail:c+this.tail,this.inTail=!0):this.inTail=!1,-c},_update:function(b){var c,d=this,e={target:this._target,first:this._first,last:this._last,visible:this._visible,fullyvisible:this._fullyvisible},f=this.index(b.first||e.first)<this.index(e.first),g=function(c){var g=[],h=[];b[c].each(function(){e[c].index(this)<0&&g.push(this)}),e[c].each(function(){b[c].index(this)<0&&h.push(this)}),f?g=g.reverse():h=h.reverse(),d._trigger(c+"in",a(g)),d._trigger(c+"out",a(h)),d["_"+c]=b[c]};for(c in b)g(c);return this}})}(jQuery,window),function(a){"use strict";a.jcarousel.fn.scrollIntoView=function(b,c,d){var e,f=a.jCarousel.parseTarget(b),g=this.index(this._fullyvisible.first()),h=this.index(this._fullyvisible.last());if(e=f.relative?f.target<0?Math.max(0,g+f.target):h+f.target:"object"!=typeof f.target?f.target:this.index(f.target),g>e)return this.scroll(e,c,d);if(e>=g&&h>=e)return a.isFunction(d)&&d.call(this,!1),this;for(var i,j=this.items(),k=this.clipping(),l=this.vertical?"bottom":this.rtl?"left":"right",m=0;;){if(i=j.eq(e),0===i.length)break;if(m+=this.dimension(i),m>=k){var n=parseFloat(i.css("margin-"+l))||0;m-n!==k&&e++;break}if(0>=e)break;e--}return this.scroll(e,c,d)}}(jQuery),function(a){"use strict";a.jCarousel.plugin("jcarouselControl",{_options:{target:"+=1",event:"click",method:"scroll"},_active:null,_init:function(){this.onDestroy=a.proxy(function(){this._destroy(),this.carousel().one("jcarousel:createend",a.proxy(this._create,this))},this),this.onReload=a.proxy(this._reload,this),this.onEvent=a.proxy(function(b){b.preventDefault();var c=this.options("method");a.isFunction(c)?c.call(this):this.carousel().jcarousel(this.options("method"),this.options("target"))},this)},_create:function(){this.carousel().one("jcarousel:destroy",this.onDestroy).on("jcarousel:reloadend jcarousel:scrollend",this.onReload),this._element.on(this.options("event")+".jcarouselcontrol",this.onEvent),this._reload()},_destroy:function(){this._element.off(".jcarouselcontrol",this.onEvent),this.carousel().off("jcarousel:destroy",this.onDestroy).off("jcarousel:reloadend jcarousel:scrollend",this.onReload)},_reload:function(){var b,c=a.jCarousel.parseTarget(this.options("target")),d=this.carousel();if(c.relative)b=d.jcarousel(c.target>0?"hasNext":"hasPrev");else{var e="object"!=typeof c.target?d.jcarousel("items").eq(c.target):c.target;b=d.jcarousel("target").index(e)>=0}return this._active!==b&&(this._trigger(b?"active":"inactive"),this._active=b),this}})}(jQuery),function(a){"use strict";a.jCarousel.plugin("jcarouselPagination",{_options:{perPage:null,item:function(a){return'<a href="#'+a+'">'+a+"</a>"},event:"click",method:"scroll"},_carouselItems:null,_pages:{},_items:{},_currentPage:null,_init:function(){this.onDestroy=a.proxy(function(){this._destroy(),this.carousel().one("jcarousel:createend",a.proxy(this._create,this))},this),this.onReload=a.proxy(this._reload,this),this.onScroll=a.proxy(this._update,this)},_create:function(){this.carousel().one("jcarousel:destroy",this.onDestroy).on("jcarousel:reloadend",this.onReload).on("jcarousel:scrollend",this.onScroll),this._reload()},_destroy:function(){this._clear(),this.carousel().off("jcarousel:destroy",this.onDestroy).off("jcarousel:reloadend",this.onReload).off("jcarousel:scrollend",this.onScroll),this._carouselItems=null},_reload:function(){var b=this.options("perPage");if(this._pages={},this._items={},a.isFunction(b)&&(b=b.call(this)),null==b)this._pages=this._calculatePages();else for(var c,d=parseInt(b,10)||0,e=this._getCarouselItems(),f=1,g=0;;){if(c=e.eq(g++),0===c.length)break;this._pages[f]=this._pages[f]?this._pages[f].add(c):c,g%d===0&&f++}this._clear();var h=this,i=this.carousel().data("jcarousel"),j=this._element,k=this.options("item"),l=this._getCarouselItems().length;a.each(this._pages,function(b,c){var d=h._items[b]=a(k.call(h,b,c));d.on(h.options("event")+".jcarouselpagination",a.proxy(function(){var a=c.eq(0);if(i.circular){var d=i.index(i.target()),e=i.index(a);parseFloat(b)>parseFloat(h._currentPage)?d>e&&(a="+="+(l-d+e)):e>d&&(a="-="+(d+(l-e)))}i[this.options("method")](a)},h)),j.append(d)}),this._update()},_update:function(){var b,c=this.carousel().jcarousel("target");a.each(this._pages,function(a,d){return d.each(function(){return c.is(this)?(b=a,!1):void 0}),b?!1:void 0}),this._currentPage!==b&&(this._trigger("inactive",this._items[this._currentPage]),this._trigger("active",this._items[b])),this._currentPage=b},items:function(){return this._items},reloadCarouselItems:function(){return this._carouselItems=null,this},_clear:function(){this._element.empty(),this._currentPage=null},_calculatePages:function(){for(var a,b,c=this.carousel().data("jcarousel"),d=this._getCarouselItems(),e=c.clipping(),f=0,g=0,h=1,i={};;){if(a=d.eq(g++),0===a.length)break;b=c.dimension(a),f+b>e&&(h++,f=0),f+=b,i[h]=i[h]?i[h].add(a):a}return i},_getCarouselItems:function(){return this._carouselItems||(this._carouselItems=this.carousel().jcarousel("items")),this._carouselItems}})}(jQuery),function(a,b){"use strict";var c,d,e={hidden:"visibilitychange",mozHidden:"mozvisibilitychange",msHidden:"msvisibilitychange",webkitHidden:"webkitvisibilitychange"};a.each(e,function(a,e){return"undefined"!=typeof b[a]?(c=a,d=e,!1):void 0}),a.jCarousel.plugin("jcarouselAutoscroll",{_options:{target:"+=1",interval:3e3,autostart:!0},_timer:null,_started:!1,_init:function(){this.onDestroy=a.proxy(function(){this._destroy(),this.carousel().one("jcarousel:createend",a.proxy(this._create,this))},this),this.onAnimateEnd=a.proxy(this._start,this),this.onVisibilityChange=a.proxy(function(){b[c]?this._stop():this._start()},this)},_create:function(){this.carousel().one("jcarousel:destroy",this.onDestroy),a(b).on(d,this.onVisibilityChange),this.options("autostart")&&this.start()},_destroy:function(){this._stop(),this.carousel().off("jcarousel:destroy",this.onDestroy),a(b).off(d,this.onVisibilityChange)},_start:function(){return this._stop(),this._started?(this.carousel().one("jcarousel:animateend",this.onAnimateEnd),this._timer=setTimeout(a.proxy(function(){this.carousel().jcarousel("scroll",this.options("target"))},this),this.options("interval")),this):void 0},_stop:function(){return this._timer&&(this._timer=clearTimeout(this._timer)),this.carousel().off("jcarousel:animateend",this.onAnimateEnd),this},start:function(){return this._started=!0,this._start(),this},stop:function(){return this._started=!1,this._stop(),this}})}(jQuery,document);
5621
5622/* End */
5623;
5624; /* Start:"a:4:{s:4:"full";s:81:"/bitrix/templates/internetclient_pk_s1_new/js/owl.carousel.min.js?177747263942766";s:6:"source";s:65:"/bitrix/templates/internetclient_pk_s1_new/js/owl.carousel.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
5625/**
5626 * Owl Carousel v2.2.1
5627 * Copyright 2013-2017 David Deutsch
vendor: 42,703 bytes, lines 5627-5631
5627
5628 * Licensed under  ()
5629 */
5630!function(a,b,c,d){function e(b,c){this.settings=null,this.options=a.extend({},e.Defaults,c),this.$element=a(b),this._handlers={},this._plugins={},this._supress={},this._current=null,this._speed=null,this._coordinates=[],this._breakpoint=null,this._width=null,this._items=[],this._clones=[],this._mergers=[],this._widths=[],this._invalidated={},this._pipe=[],this._drag={time:null,target:null,pointer:null,stage:{start:null,current:null},direction:null},this._states={current:{},tags:{initializing:["busy"],animating:["busy"],dragging:["interacting"]}},a.each(["onResize","onThrottledResize"],a.proxy(function(b,c){this._handlers[c]=a.proxy(this[c],this)},this)),a.each(e.Plugins,a.proxy(function(a,b){this._plugins[a.charAt(0).toLowerCase()+a.slice(1)]=new b(this)},this)),a.each(e.Workers,a.proxy(function(b,c){this._pipe.push({filter:c.filter,run:a.proxy(c.run,this)})},this)),this.setup(),this.initialize()}e.Defaults={items:3,loop:!1,center:!1,rewind:!1,mouseDrag:!0,touchDrag:!0,pullDrag:!0,freeDrag:!1,margin:0,stagePadding:0,merge:!1,mergeFit:!0,autoWidth:!1,startPosition:0,rtl:!1,smartSpeed:250,fluidSpeed:!1,dragEndSpeed:!1,responsive:{},responsiveRefreshRate:200,responsiveBaseElement:b,fallbackEasing:"swing",info:!1,nestedItemSelector:!1,itemElement:"div",stageElement:"div",refreshClass:"owl-refresh",loadedClass:"owl-loaded",loadingClass:"owl-loading",rtlClass:"owl-rtl",responsiveClass:"owl-responsive",dragClass:"owl-drag",itemClass:"owl-item",stageClass:"owl-stage",stageOuterClass:"owl-stage-outer",grabClass:"owl-grab"},e.Width={Default:"default",Inner:"inner",Outer:"outer"},e.Type={Event:"event",State:"state"},e.Plugins={},e.Workers=[{filter:["width","settings"],run:function(){this._width=this.$element.width()}},{filter:["width","items","settings"],run:function(a){a.current=this._items&&this._items[this.relative(this._current)]}},{filter:["items","settings"],run:function(){this.$stage.children(".cloned").remove()}},{filter:["width","items","settings"],run:function(a){var b=this.settings.margin||"",c=!this.settings.autoWidth,d=this.settings.rtl,e={width:"auto","margin-left":d?b:"","margin-right":d?"":b};!c&&this.$stage.children().css(e),a.css=e}},{filter:["width","items","settings"],run:function(a){var b=(this.width()/this.settings.items).toFixed(3)-this.settings.margin,c=null,d=this._items.length,e=!this.settings.autoWidth,f=[];for(a.items={merge:!1,width:b};d--;)c=this._mergers[d],c=this.settings.mergeFit&&Math.min(c,this.settings.items)||c,a.items.merge=c>1||a.items.merge,f[d]=e?b*c:this._items[d].width();this._widths=f}},{filter:["items","settings"],run:function(){var b=[],c=this._items,d=this.settings,e=Math.max(2*d.items,4),f=2*Math.ceil(c.length/2),g=d.loop&&c.length?d.rewind?e:Math.max(e,f):0,h="",i="";for(g/=2;g--;)b.push(this.normalize(b.length/2,!0)),h+=c[b[b.length-1]][0].outerHTML,b.push(this.normalize(c.length-1-(b.length-1)/2,!0)),i=c[b[b.length-1]][0].outerHTML+i;this._clones=b,a(h).addClass("cloned").appendTo(this.$stage),a(i).addClass("cloned").prependTo(this.$stage)}},{filter:["width","items","settings"],run:function(){for(var a=this.settings.rtl?1:-1,b=this._clones.length+this._items.length,c=-1,d=0,e=0,f=[];++c<b;)d=f[c-1]||0,e=this._widths[this.relative(c)]+this.settings.margin,f.push(d+e*a);this._coordinates=f}},{filter:["width","items","settings"],run:function(){var a=this.settings.stagePadding,b=this._coordinates,c={width:Math.ceil(Math.abs(b[b.length-1]))+2*a,"padding-left":a||"","padding-right":a||""};this.$stage.css(c)}},{filter:["width","items","settings"],run:function(a){var b=this._coordinates.length,c=!this.settings.autoWidth,d=this.$stage.children();if(c&&a.items.merge)for(;b--;)a.css.width=this._widths[this.relative(b)],d.eq(b).css(a.css);else c&&(a.css.width=a.items.width,d.css(a.css))}},{filter:["items"],run:function(){this._coordinates.length<1&&this.$stage.removeAttr("style")}},{filter:["width","items","settings"],run:function(a){a.current=a.current?this.$stage.children().index(a.current):0,a.current=Math.max(this.minimum(),Math.min(this.maximum(),a.current)),this.reset(a.current)}},{filter:["position"],run:function(){this.animate(this.coordinates(this._current))}},{filter:["width","position","items","settings"],run:function(){var a,b,c,d,e=this.settings.rtl?1:-1,f=2*this.settings.stagePadding,g=this.coordinates(this.current())+f,h=g+this.width()*e,i=[];for(c=0,d=this._coordinates.length;c<d;c++)a=this._coordinates[c-1]||0,b=Math.abs(this._coordinates[c])+f*e,(this.op(a,"<=",g)&&this.op(a,">",h)||this.op(b,"<",g)&&this.op(b,">",h))&&i.push(c);this.$stage.children(".active").removeClass("active"),this.$stage.children(":eq("+i.join("), :eq(")+")").addClass("active"),this.settings.center&&(this.$stage.children(".center").removeClass("center"),this.$stage.children().eq(this.current()).addClass("center"))}}],e.prototype.initialize=function(){if(this.enter("initializing"),this.trigger("initialize"),this.$element.toggleClass(this.settings.rtlClass,this.settings.rtl),this.settings.autoWidth&&!this.is("pre-loading")){var b,c,e;b=this.$element.find("img"),c=this.settings.nestedItemSelector?"."+this.settings.nestedItemSelector:d,e=this.$element.children(c).width(),b.length&&e<=0&&this.preloadAutoWidthImages(b)}this.$element.addClass(this.options.loadingClass),this.$stage=a("<"+this.settings.stageElement+' class="'+this.settings.stageClass+'"/>').wrap('<div class="'+this.settings.stageOuterClass+'"/>'),this.$element.append(this.$stage.parent()),this.replace(this.$element.children().not(this.$stage.parent())),this.$element.is(":visible")?this.refresh():this.invalidate("width"),this.$element.removeClass(this.options.loadingClass).addClass(this.options.loadedClass),this.registerEventHandlers(),this.leave("initializing"),this.trigger("initialized")},e.prototype.setup=function(){var b=this.viewport(),c=this.options.responsive,d=-1,e=null;c?(a.each(c,function(a){a<=b&&a>d&&(d=Number(a))}),e=a.extend({},this.options,c[d]),"function"==typeof e.stagePadding&&(e.stagePadding=e.stagePadding()),delete e.responsive,e.responsiveClass&&this.$element.attr("class",this.$element.attr("class").replace(new RegExp("("+this.options.responsiveClass+"-)\\S+\\s","g"),"$1"+d))):e=a.extend({},this.options),this.trigger("change",{property:{name:"settings",value:e}}),this._breakpoint=d,this.settings=e,this.invalidate("settings"),this.trigger("changed",{property:{name:"settings",value:this.settings}})},e.prototype.optionsLogic=function(){this.settings.autoWidth&&(this.settings.stagePadding=!1,this.settings.merge=!1)},e.prototype.prepare=function(b){var c=this.trigger("prepare",{content:b});return c.data||(c.data=a("<"+this.settings.itemElement+"/>").addClass(this.options.itemClass).append(b)),this.trigger("prepared",{content:c.data}),c.data},e.prototype.update=function(){for(var b=0,c=this._pipe.length,d=a.proxy(function(a){return this[a]},this._invalidated),e={};b<c;)(this._invalidated.all||a.grep(this._pipe[b].filter,d).length>0)&&this._pipe[b].run(e),b++;this._invalidated={},!this.is("valid")&&this.enter("valid")},e.prototype.width=function(a){switch(a=a||e.Width.Default){case e.Width.Inner:case e.Width.Outer:return this._width;default:return this._width-2*this.settings.stagePadding+this.settings.margin}},e.prototype.refresh=function(){this.enter("refreshing"),this.trigger("refresh"),this.setup(),this.optionsLogic(),this.$element.addClass(this.options.refreshClass),this.update(),this.$element.removeClass(this.options.refreshClass),this.leave("refreshing"),this.trigger("refreshed")},e.prototype.onThrottledResize=function(){b.clearTimeout(this.resizeTimer),this.resizeTimer=b.setTimeout(this._handlers.onResize,this.settings.responsiveRefreshRate)},e.prototype.onResize=function(){return!!this._items.length&&(this._width!==this.$element.width()&&(!!this.$element.is(":visible")&&(this.enter("resizing"),this.trigger("resize").isDefaultPrevented()?(this.leave("resizing"),!1):(this.invalidate("width"),this.refresh(),this.leave("resizing"),void this.trigger("resized")))))},e.prototype.registerEventHandlers=function(){a.support.transition&&this.$stage.on(a.support.transition.end+".owl.core",a.proxy(this.onTransitionEnd,this)),this.settings.responsive!==!1&&this.on(b,"resize",this._handlers.onThrottledResize),this.settings.mouseDrag&&(this.$element.addClass(this.options.dragClass),this.$stage.on("mousedown.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("dragstart.owl.core selectstart.owl.core",function(){return!1})),this.settings.touchDrag&&(this.$stage.on("touchstart.owl.core",a.proxy(this.onDragStart,this)),this.$stage.on("touchcancel.owl.core",a.proxy(this.onDragEnd,this)))},e.prototype.onDragStart=function(b){var d=null;3!==b.which&&(a.support.transform?(d=this.$stage.css("transform").replace(/.*\(|\)| /g,"").split(","),d={x:d[16===d.length?12:4],y:d[16===d.length?13:5]}):(d=this.$stage.position(),d={x:this.settings.rtl?d.left+this.$stage.width()-this.width()+this.settings.margin:d.left,y:d.top}),this.is("animating")&&(a.support.transform?this.animate(d.x):this.$stage.stop(),this.invalidate("position")),this.$element.toggleClass(this.options.grabClass,"mousedown"===b.type),this.speed(0),this._drag.time=(new Date).getTime(),this._drag.target=a(b.target),this._drag.stage.start=d,this._drag.stage.current=d,this._drag.pointer=this.pointer(b),a(c).on("mouseup.owl.core touchend.owl.core",a.proxy(this.onDragEnd,this)),a(c).one("mousemove.owl.core touchmove.owl.core",a.proxy(function(b){var d=this.difference(this._drag.pointer,this.pointer(b));a(c).on("mousemove.owl.core touchmove.owl.core",a.proxy(this.onDragMove,this)),Math.abs(d.x)<Math.abs(d.y)&&this.is("valid")||(b.preventDefault(),this.enter("dragging"),this.trigger("drag"))},this)))},e.prototype.onDragMove=function(a){var b=null,c=null,d=null,e=this.difference(this._drag.pointer,this.pointer(a)),f=this.difference(this._drag.stage.start,e);this.is("dragging")&&(a.preventDefault(),this.settings.loop?(b=this.coordinates(this.minimum()),c=this.coordinates(this.maximum()+1)-b,f.x=((f.x-b)%c+c)%c+b):(b=this.settings.rtl?this.coordinates(this.maximum()):this.coordinates(this.minimum()),c=this.settings.rtl?this.coordinates(this.minimum()):this.coordinates(this.maximum()),d=this.settings.pullDrag?-1*e.x/5:0,f.x=Math.max(Math.min(f.x,b+d),c+d)),this._drag.stage.current=f,this.animate(f.x))},e.prototype.onDragEnd=function(b){var d=this.difference(this._drag.pointer,this.pointer(b)),e=this._drag.stage.current,f=d.x>0^this.settings.rtl?"left":"right";a(c).off(".owl.core"),this.$element.removeClass(this.options.grabClass),(0!==d.x&&this.is("dragging")||!this.is("valid"))&&(this.speed(this.settings.dragEndSpeed||this.settings.smartSpeed),this.current(this.closest(e.x,0!==d.x?f:this._drag.direction)),this.invalidate("position"),this.update(),this._drag.direction=f,(Math.abs(d.x)>3||(new Date).getTime()-this._drag.time>300)&&this._drag.target.one("click.owl.core",function(){return!1})),this.is("dragging")&&(this.leave("dragging"),this.trigger("dragged"))},e.prototype.closest=function(b,c){var d=-1,e=30,f=this.width(),g=this.coordinates();return this.settings.freeDrag||a.each(g,a.proxy(function(a,h){return"left"===c&&b>h-e&&b<h+e?d=a:"right"===c&&b>h-f-e&&b<h-f+e?d=a+1:this.op(b,"<",h)&&this.op(b,">",g[a+1]||h-f)&&(d="left"===c?a+1:a),d===-1},this)),this.settings.loop||(this.op(b,">",g[this.minimum()])?d=b=this.minimum():this.op(b,"<",g[this.maximum()])&&(d=b=this.maximum())),d},e.prototype.animate=function(b){var c=this.speed()>0;this.is("animating")&&this.onTransitionEnd(),c&&(this.enter("animating"),this.trigger("translate")),a.support.transform3d&&a.support.transition?this.$stage.css({transform:"translate3d("+b+"px,0px,0px)",transition:this.speed()/1e3+"s"}):c?this.$stage.animate({left:b+"px"},this.speed(),this.settings.fallbackEasing,a.proxy(this.onTransitionEnd,this)):this.$stage.css({left:b+"px"})},e.prototype.is=function(a){return this._states.current[a]&&this._states.current[a]>0},e.prototype.current=function(a){if(a===d)return this._current;if(0===this._items.length)return d;if(a=this.normalize(a),this._current!==a){var b=this.trigger("change",{property:{name:"position",value:a}});b.data!==d&&(a=this.normalize(b.data)),this._current=a,this.invalidate("position"),this.trigger("changed",{property:{name:"position",value:this._current}})}return this._current},e.prototype.invalidate=function(b){return"string"===a.type(b)&&(this._invalidated[b]=!0,this.is("valid")&&this.leave("valid")),a.map(this._invalidated,function(a,b){return b})},e.prototype.reset=function(a){a=this.normalize(a),a!==d&&(this._speed=0,this._current=a,this.suppress(["translate","translated"]),this.animate(this.coordinates(a)),this.release(["translate","translated"]))},e.prototype.normalize=function(a,b){var c=this._items.length,e=b?0:this._clones.length;return!this.isNumeric(a)||c<1?a=d:(a<0||a>=c+e)&&(a=((a-e/2)%c+c)%c+e/2),a},e.prototype.relative=function(a){return a-=this._clones.length/2,this.normalize(a,!0)},e.prototype.maximum=function(a){var b,c,d,e=this.settings,f=this._coordinates.length;if(e.loop)f=this._clones.length/2+this._items.length-1;else if(e.autoWidth||e.merge){for(b=this._items.length,c=this._items[--b].width(),d=this.$element.width();b--&&(c+=this._items[b].width()+this.settings.margin,!(c>d)););f=b+1}else f=e.center?this._items.length-1:this._items.length-e.items;return a&&(f-=this._clones.length/2),Math.max(f,0)},e.prototype.minimum=function(a){return a?0:this._clones.length/2},e.prototype.items=function(a){return a===d?this._items.slice():(a=this.normalize(a,!0),this._items[a])},e.prototype.mergers=function(a){return a===d?this._mergers.slice():(a=this.normalize(a,!0),this._mergers[a])},e.prototype.clones=function(b){var c=this._clones.length/2,e=c+this._items.length,f=function(a){return a%2===0?e+a/2:c-(a+1)/2};return b===d?a.map(this._clones,function(a,b){return f(b)}):a.map(this._clones,function(a,c){return a===b?f(c):null})},e.prototype.speed=function(a){return a!==d&&(this._speed=a),this._speed},e.prototype.coordinates=function(b){var c,e=1,f=b-1;return b===d?a.map(this._coordinates,a.proxy(function(a,b){return this.coordinates(b)},this)):(this.settings.center?(this.settings.rtl&&(e=-1,f=b+1),c=this._coordinates[b],c+=(this.width()-c+(this._coordinates[f]||0))/2*e):c=this._coordinates[f]||0,c=Math.ceil(c))},e.prototype.duration=function(a,b,c){return 0===c?0:Math.min(Math.max(Math.abs(b-a),1),6)*Math.abs(c||this.settings.smartSpeed)},e.prototype.to=function(a,b){var c=this.current(),d=null,e=a-this.relative(c),f=(e>0)-(e<0),g=this._items.length,h=this.minimum(),i=this.maximum();this.settings.loop?(!this.settings.rewind&&Math.abs(e)>g/2&&(e+=f*-1*g),a=c+e,d=((a-h)%g+g)%g+h,d!==a&&d-e<=i&&d-e>0&&(c=d-e,a=d,this.reset(c))):this.settings.rewind?(i+=1,a=(a%i+i)%i):a=Math.max(h,Math.min(i,a)),this.speed(this.duration(c,a,b)),this.current(a),this.$element.is(":visible")&&this.update()},e.prototype.next=function(a){a=a||!1,this.to(this.relative(this.current())+1,a)},e.prototype.prev=function(a){a=a||!1,this.to(this.relative(this.current())-1,a)},e.prototype.onTransitionEnd=function(a){if(a!==d&&(a.stopPropagation(),(a.target||a.srcElement||a.originalTarget)!==this.$stage.get(0)))return!1;this.leave("animating"),this.trigger("translated")},e.prototype.viewport=function(){var d;return this.options.responsiveBaseElement!==b?d=a(this.options.responsiveBaseElement).width():b.innerWidth?d=b.innerWidth:c.documentElement&&c.documentElement.clientWidth?d=c.documentElement.clientWidth:console.warn("Can not detect viewport width."),d},e.prototype.replace=function(b){this.$stage.empty(),this._items=[],b&&(b=b instanceof jQuery?b:a(b)),this.settings.nestedItemSelector&&(b=b.find("."+this.settings.nestedItemSelector)),b.filter(function(){return 1===this.nodeType}).each(a.proxy(function(a,b){b=this.prepare(b),this.$stage.append(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)},this)),this.reset(this.isNumeric(this.settings.startPosition)?this.settings.startPosition:0),this.invalidate("items")},e.prototype.add=function(b,c){var e=this.relative(this._current);c=c===d?this._items.length:this.normalize(c,!0),b=b instanceof jQuery?b:a(b),this.trigger("add",{content:b,position:c}),b=this.prepare(b),0===this._items.length||c===this._items.length?(0===this._items.length&&this.$stage.append(b),0!==this._items.length&&this._items[c-1].after(b),this._items.push(b),this._mergers.push(1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)):(this._items[c].before(b),this._items.splice(c,0,b),this._mergers.splice(c,0,1*b.find("[data-merge]").addBack("[data-merge]").attr("data-merge")||1)),this._items[e]&&this.reset(this._items[e].index()),this.invalidate("items"),this.trigger("added",{content:b,position:c})},e.prototype.remove=function(a){a=this.normalize(a,!0),a!==d&&(this.trigger("remove",{content:this._items[a],position:a}),this._items[a].remove(),this._items.splice(a,1),this._mergers.splice(a,1),this.invalidate("items"),this.trigger("removed",{content:null,position:a}))},e.prototype.preloadAutoWidthImages=function(b){b.each(a.proxy(function(b,c){this.enter("pre-loading"),c=a(c),a(new Image).one("load",a.proxy(function(a){c.attr("src",a.target.src),c.css("opacity",1),this.leave("pre-loading"),!this.is("pre-loading")&&!this.is("initializing")&&this.refresh()},this)).attr("src",c.attr("src")||c.attr("data-src")||c.attr("data-src-retina"))},this))},e.prototype.destroy=function(){this.$element.off(".owl.core"),this.$stage.off(".owl.core"),a(c).off(".owl.core"),this.settings.responsive!==!1&&(b.clearTimeout(this.resizeTimer),this.off(b,"resize",this._handlers.onThrottledResize));for(var d in this._plugins)this._plugins[d].destroy();this.$stage.children(".cloned").remove(),this.$stage.unwrap(),this.$stage.children().contents().unwrap(),this.$stage.children().unwrap(),this.$element.removeClass(this.options.refreshClass).removeClass(this.options.loadingClass).removeClass(this.options.loadedClass).removeClass(this.options.rtlClass).removeClass(this.options.dragClass).removeClass(this.options.grabClass).attr("class",this.$element.attr("class").replace(new RegExp(this.options.responsiveClass+"-\\S+\\s","g"),"")).removeData("owl.carousel")},e.prototype.op=function(a,b,c){var d=this.settings.rtl;switch(b){case"<":return d?a>c:a<c;case">":return d?a<c:a>c;case">=":return d?a<=c:a>=c;case"<=":return d?a>=c:a<=c}},e.prototype.on=function(a,b,c,d){a.addEventListener?a.addEventListener(b,c,d):a.attachEvent&&a.attachEvent("on"+b,c)},e.prototype.off=function(a,b,c,d){a.removeEventListener?a.removeEventListener(b,c,d):a.detachEvent&&a.detachEvent("on"+b,c)},e.prototype.trigger=function(b,c,d,f,g){var h={item:{count:this._items.length,index:this.current()}},i=a.camelCase(a.grep(["on",b,d],function(a){return a}).join("-").toLowerCase()),j=a.Event([b,"owl",d||"carousel"].join(".").toLowerCase(),a.extend({relatedTarget:this},h,c));return this._supress[b]||(a.each(this._plugins,function(a,b){b.onTrigger&&b.onTrigger(j)}),this.register({type:e.Type.Event,name:b}),this.$element.trigger(j),this.settings&&"function"==typeof this.settings[i]&&this.settings[i].call(this,j)),j},e.prototype.enter=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]===d&&(this._states.current[b]=0),this._states.current[b]++},this))},e.prototype.leave=function(b){a.each([b].concat(this._states.tags[b]||[]),a.proxy(function(a,b){this._states.current[b]--},this))},e.prototype.register=function(b){if(b.type===e.Type.Event){if(a.event.special[b.name]||(a.event.special[b.name]={}),!a.event.special[b.name].owl){var c=a.event.special[b.name]._default;a.event.special[b.name]._default=function(a){return!c||!c.apply||a.namespace&&a.namespace.indexOf("owl")!==-1?a.namespace&&a.namespace.indexOf("owl")>-1:c.apply(this,arguments)},a.event.special[b.name].owl=!0}}else b.type===e.Type.State&&(this._states.tags[b.name]?this._states.tags[b.name]=this._states.tags[b.name].concat(b.tags):this._states.tags[b.name]=b.tags,this._states.tags[b.name]=a.grep(this._states.tags[b.name],a.proxy(function(c,d){return a.inArray(c,this._states.tags[b.name])===d},this)))},e.prototype.suppress=function(b){a.each(b,a.proxy(function(a,b){this._supress[b]=!0},this))},e.prototype.release=function(b){a.each(b,a.proxy(function(a,b){delete this._supress[b]},this))},e.prototype.pointer=function(a){var c={x:null,y:null};return a=a.originalEvent||a||b.event,a=a.touches&&a.touches.length?a.touches[0]:a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:a,a.pageX?(c.x=a.pageX,c.y=a.pageY):(c.x=a.clientX,c.y=a.clientY),c},e.prototype.isNumeric=function(a){return!isNaN(parseFloat(a))},e.prototype.difference=function(a,b){return{x:a.x-b.x,y:a.y-b.y}},a.fn.owlCarousel=function(b){var c=Array.prototype.slice.call(arguments,1);return this.each(function(){var d=a(this),f=d.data("owl.carousel");f||(f=new e(this,"object"==typeof b&&b),d.data("owl.carousel",f),a.each(["next","prev","to","destroy","refresh","replace","add","remove"],function(b,c){f.register({type:e.Type.Event,name:c}),f.$element.on(c+".owl.carousel.core",a.proxy(function(a){a.namespace&&a.relatedTarget!==this&&(this.suppress([c]),f[c].apply(this,[].slice.call(arguments,1)),this.release([c]))},f))})),"string"==typeof b&&"_"!==b.charAt(0)&&f[b].apply(f,c)})},a.fn.owlCarousel.Constructor=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._interval=null,this._visible=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoRefresh&&this.watch()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoRefresh:!0,autoRefreshInterval:500},e.prototype.watch=function(){this._interval||(this._visible=this._core.$element.is(":visible"),this._interval=b.setInterval(a.proxy(this.refresh,this),this._core.settings.autoRefreshInterval))},e.prototype.refresh=function(){this._core.$element.is(":visible")!==this._visible&&(this._visible=!this._visible,this._core.$element.toggleClass("owl-hidden",!this._visible),this._visible&&this._core.invalidate("width")&&this._core.refresh())},e.prototype.destroy=function(){var a,c;b.clearInterval(this._interval);for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoRefresh=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._loaded=[],this._handlers={"initialized.owl.carousel change.owl.carousel resized.owl.carousel":a.proxy(function(b){if(b.namespace&&this._core.settings&&this._core.settings.lazyLoad&&(b.property&&"position"==b.property.name||"initialized"==b.type))for(var c=this._core.settings,e=c.center&&Math.ceil(c.items/2)||c.items,f=c.center&&e*-1||0,g=(b.property&&b.property.value!==d?b.property.value:this._core.current())+f,h=this._core.clones().length,i=a.proxy(function(a,b){this.load(b)},this);f++<e;)this.load(h/2+this._core.relative(g)),h&&a.each(this._core.clones(this._core.relative(g)),i),g++},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={lazyLoad:!1},e.prototype.load=function(c){var d=this._core.$stage.children().eq(c),e=d&&d.find(".owl-lazy");!e||a.inArray(d.get(0),this._loaded)>-1||(e.each(a.proxy(function(c,d){var e,f=a(d),g=b.devicePixelRatio>1&&f.attr("data-src-retina")||f.attr("data-src");this._core.trigger("load",{element:f,url:g},"lazy"),f.is("img")?f.one("load.owl.lazy",a.proxy(function(){f.css("opacity",1),this._core.trigger("loaded",{element:f,url:g},"lazy")},this)).attr("src",g):(e=new Image,e.onload=a.proxy(function(){f.css({"background-image":'url("'+g+'")',opacity:"1"}),this._core.trigger("loaded",{element:f,url:g},"lazy")},this),e.src=g)},this)),this._loaded.push(d.get(0)))},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this._core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Lazy=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._handlers={"initialized.owl.carousel refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&this.update()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&"position"==a.property.name&&this.update()},this),"loaded.owl.lazy":a.proxy(function(a){a.namespace&&this._core.settings.autoHeight&&a.element.closest("."+this._core.settings.itemClass).index()===this._core.current()&&this.update()},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers)};e.Defaults={autoHeight:!1,autoHeightClass:"owl-height"},e.prototype.update=function(){var b=this._core._current,c=b+this._core.settings.items,d=this._core.$stage.children().toArray().slice(b,c),e=[],f=0;a.each(d,function(b,c){e.push(a(c).height())}),f=Math.max.apply(null,e),this._core.$stage.parent().height(f).addClass(this._core.settings.autoHeightClass)},e.prototype.destroy=function(){var a,b;for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.AutoHeight=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._videos={},this._playing=null,this._handlers={"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.register({type:"state",name:"playing",tags:["interacting"]})},this),"resize.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.video&&this.isInFullScreen()&&a.preventDefault()},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._core.is("resizing")&&this._core.$stage.find(".cloned .owl-video-frame").remove()},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"===a.property.name&&this._playing&&this.stop()},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find(".owl-video");c.length&&(c.css("display","none"),this.fetch(c,a(b.content)))}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this._core.$element.on(this._handlers),this._core.$element.on("click.owl.video",".owl-video-play-icon",a.proxy(function(a){this.play(a)},this))};e.Defaults={video:!1,videoHeight:!1,videoWidth:!1},e.prototype.fetch=function(a,b){var c=function(){return a.attr("data-vimeo-id")?"vimeo":a.attr("data-vzaar-id")?"vzaar":"youtube"}(),d=a.attr("data-vimeo-id")||a.attr("data-youtube-id")||a.attr("data-vzaar-id"),e=a.attr("data-width")||this._core.settings.videoWidth,f=a.attr("data-height")||this._core.settings.videoHeight,g=a.attr("href");if(!g)throw new Error("Missing video URL.");if(d=g.match(/(http:|https:|)\/\/(player.|www.|app.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com)|vzaar\.com)\/(video\/|videos\/|embed\/|channels\/.+\/|groups\/.+\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/),d[3].indexOf("youtu")>-1)c="youtube";else if(d[3].indexOf("vimeo")>-1)c="vimeo";else{if(!(d[3].indexOf("vzaar")>-1))throw new Error("Video URL not supported.");c="vzaar"}d=d[6],this._videos[g]={type:c,id:d,width:e,height:f},b.attr("data-video",g),this.thumbnail(a,this._videos[g])},e.prototype.thumbnail=function(b,c){var d,e,f,g=c.width&&c.height?'style="width:'+c.width+"px;height:"+c.height+'px;"':"",h=b.find("img"),i="src",j="",k=this._core.settings,l=function(a){e='<div class="owl-video-play-icon"></div>',d=k.lazyLoad?'<div class="owl-video-tn '+j+'" '+i+'="'+a+'"></div>':'<div class="owl-video-tn" style="opacity:1;background-image:url('+a+')"></div>',b.after(d),b.after(e)};if(b.wrap('<div class="owl-video-wrapper"'+g+"></div>"),this._core.settings.lazyLoad&&(i="data-src",j="owl-lazy"),h.length)return l(h.attr(i)),h.remove(),!1;"youtube"===c.type?(f="//img.youtube.com/vi/"+c.id+"/hqdefault.jpg",l(f)):"vimeo"===c.type?a.ajax({type:"GET",url:"//vimeo.com/api/v2/video/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a[0].thumbnail_large,l(f)}}):"vzaar"===c.type&&a.ajax({type:"GET",url:"//vzaar.com/api/videos/"+c.id+".json",jsonp:"callback",dataType:"jsonp",success:function(a){f=a.framegrab_url,l(f)}})},e.prototype.stop=function(){this._core.trigger("stop",null,"video"),this._playing.find(".owl-video-frame").remove(),this._playing.removeClass("owl-video-playing"),this._playing=null,this._core.leave("playing"),this._core.trigger("stopped",null,"video")},e.prototype.play=function(b){var c,d=a(b.target),e=d.closest("."+this._core.settings.itemClass),f=this._videos[e.attr("data-video")],g=f.width||"100%",h=f.height||this._core.$stage.height();this._playing||(this._core.enter("playing"),this._core.trigger("play",null,"video"),e=this._core.items(this._core.relative(e.index())),this._core.reset(e.index()),"youtube"===f.type?c='<iframe width="'+g+'" height="'+h+'" src="//www.youtube.com/embed/'+f.id+"?autoplay=1&rel=0&v="+f.id+'" frameborder="0" allowfullscreen></iframe>':"vimeo"===f.type?c='<iframe src="//player.vimeo.com/video/'+f.id+'?autoplay=1" width="'+g+'" height="'+h+'" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>':"vzaar"===f.type&&(c='<iframe frameborder="0"height="'+h+'"width="'+g+'" allowfullscreen mozallowfullscreen webkitAllowFullScreen src="//view.vzaar.com/'+f.id+'/player?autoplay=true"></iframe>'),a('<div class="owl-video-frame">'+c+"</div>").insertAfter(e.find(".owl-video")),this._playing=e.addClass("owl-video-playing"))},e.prototype.isInFullScreen=function(){var b=c.fullscreenElement||c.mozFullScreenElement||c.webkitFullscreenElement;return b&&a(b).parent().hasClass("owl-video-frame")},e.prototype.destroy=function(){var a,b;this._core.$element.off("click.owl.video");for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.Video=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this.core=b,this.core.options=a.extend({},e.Defaults,this.core.options),this.swapping=!0,this.previous=d,this.next=d,this.handlers={"change.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&(this.previous=this.core.current(),this.next=a.property.value)},this),"drag.owl.carousel dragged.owl.carousel translated.owl.carousel":a.proxy(function(a){a.namespace&&(this.swapping="translated"==a.type)},this),"translate.owl.carousel":a.proxy(function(a){a.namespace&&this.swapping&&(this.core.options.animateOut||this.core.options.animateIn)&&this.swap()},this)},this.core.$element.on(this.handlers)};e.Defaults={animateOut:!1,animateIn:!1},e.prototype.swap=function(){if(1===this.core.settings.items&&a.support.animation&&a.support.transition){this.core.speed(0);var b,c=a.proxy(this.clear,this),d=this.core.$stage.children().eq(this.previous),e=this.core.$stage.children().eq(this.next),f=this.core.settings.animateIn,g=this.core.settings.animateOut;this.core.current()!==this.previous&&(g&&(b=this.core.coordinates(this.previous)-this.core.coordinates(this.next),d.one(a.support.animation.end,c).css({left:b+"px"}).addClass("animated owl-animated-out").addClass(g)),f&&e.one(a.support.animation.end,c).addClass("animated owl-animated-in").addClass(f))}},e.prototype.clear=function(b){a(b.target).css({left:""}).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut),this.core.onTransitionEnd()},e.prototype.destroy=function(){var a,b;for(a in this.handlers)this.core.$element.off(a,this.handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},
5631a.fn.owlCarousel.Constructor.Plugins.Animate=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){var e=function(b){this._core=b,this._timeout=null,this._paused=!1,this._handlers={"changed.owl.carousel":a.proxy(function(a){a.namespace&&"settings"===a.property.name?this._core.settings.autoplay?this.play():this.stop():a.namespace&&"position"===a.property.name&&this._core.settings.autoplay&&this._setAutoPlayInterval()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.autoplay&&this.play()},this),"play.owl.autoplay":a.proxy(function(a,b,c){a.namespace&&this.play(b,c)},this),"stop.owl.autoplay":a.proxy(function(a){a.namespace&&this.stop()},this),"mouseover.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"mouseleave.owl.autoplay":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.play()},this),"touchstart.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this._core.is("rotating")&&this.pause()},this),"touchend.owl.core":a.proxy(function(){this._core.settings.autoplayHoverPause&&this.play()},this)},this._core.$element.on(this._handlers),this._core.options=a.extend({},e.Defaults,this._core.options)};e.Defaults={autoplay:!1,autoplayTimeout:5e3,autoplayHoverPause:!1,autoplaySpeed:!1},e.prototype.play=function(a,b){this._paused=!1,this._core.is("rotating")||(this._core.enter("rotating"),this._setAutoPlayInterval())},e.prototype._getNextTimeout=function(d,e){return this._timeout&&b.clearTimeout(this._timeout),b.setTimeout(a.proxy(function(){this._paused||this._core.is("busy")||this._core.is("interacting")||c.hidden||this._core.next(e||this._core.settings.autoplaySpeed)},this),d||this._core.settings.autoplayTimeout)},e.prototype._setAutoPlayInterval=function(){this._timeout=this._getNextTimeout()},e.prototype.stop=function(){this._core.is("rotating")&&(b.clearTimeout(this._timeout),this._core.leave("rotating"))},e.prototype.pause=function(){this._core.is("rotating")&&(this._paused=!0)},e.prototype.destroy=function(){var a,b;this.stop();for(a in this._handlers)this._core.$element.off(a,this._handlers[a]);for(b in Object.getOwnPropertyNames(this))"function"!=typeof this[b]&&(this[b]=null)},a.fn.owlCarousel.Constructor.Plugins.autoplay=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(b){this._core=b,this._initialized=!1,this._pages=[],this._controls={},this._templates=[],this.$element=this._core.$element,this._overrides={next:this._core.next,prev:this._core.prev,to:this._core.to},this._handlers={"prepared.owl.carousel":a.proxy(function(b){b.namespace&&this._core.settings.dotsData&&this._templates.push('<div class="'+this._core.settings.dotClass+'">'+a(b.content).find("[data-dot]").addBack("[data-dot]").attr("data-dot")+"</div>")},this),"added.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,0,this._templates.pop())},this),"remove.owl.carousel":a.proxy(function(a){a.namespace&&this._core.settings.dotsData&&this._templates.splice(a.position,1)},this),"changed.owl.carousel":a.proxy(function(a){a.namespace&&"position"==a.property.name&&this.draw()},this),"initialized.owl.carousel":a.proxy(function(a){a.namespace&&!this._initialized&&(this._core.trigger("initialize",null,"navigation"),this.initialize(),this.update(),this.draw(),this._initialized=!0,this._core.trigger("initialized",null,"navigation"))},this),"refreshed.owl.carousel":a.proxy(function(a){a.namespace&&this._initialized&&(this._core.trigger("refresh",null,"navigation"),this.update(),this.draw(),this._core.trigger("refreshed",null,"navigation"))},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers)};e.Defaults={nav:!1,navText:["prev","next"],navSpeed:!1,navElement:"div",navContainer:!1,navContainerClass:"owl-nav",navClass:["owl-prev","owl-next"],slideBy:1,dotClass:"owl-dot",dotsClass:"owl-dots",dots:!0,dotsEach:!1,dotsData:!1,dotsSpeed:!1,dotsContainer:!1},e.prototype.initialize=function(){var b,c=this._core.settings;this._controls.$relative=(c.navContainer?a(c.navContainer):a("<div>").addClass(c.navContainerClass).appendTo(this.$element)).addClass("disabled"),this._controls.$previous=a("<"+c.navElement+">").addClass(c.navClass[0]).html(c.navText[0]).prependTo(this._controls.$relative).on("click",a.proxy(function(a){this.prev(c.navSpeed)},this)),this._controls.$next=a("<"+c.navElement+">").addClass(c.navClass[1]).html(c.navText[1]).appendTo(this._controls.$relative).on("click",a.proxy(function(a){this.next(c.navSpeed)},this)),c.dotsData||(this._templates=[a("<div>").addClass(c.dotClass).append(a("<span>")).prop("outerHTML")]),this._controls.$absolute=(c.dotsContainer?a(c.dotsContainer):a("<div>").addClass(c.dotsClass).appendTo(this.$element)).addClass("disabled"),this._controls.$absolute.on("click","div",a.proxy(function(b){var d=a(b.target).parent().is(this._controls.$absolute)?a(b.target).index():a(b.target).parent().index();b.preventDefault(),this.to(d,c.dotsSpeed)},this));for(b in this._overrides)this._core[b]=a.proxy(this[b],this)},e.prototype.destroy=function(){var a,b,c,d;for(a in this._handlers)this.$element.off(a,this._handlers[a]);for(b in this._controls)this._controls[b].remove();for(d in this.overides)this._core[d]=this._overrides[d];for(c in Object.getOwnPropertyNames(this))"function"!=typeof this[c]&&(this[c]=null)},e.prototype.update=function(){var a,b,c,d=this._core.clones().length/2,e=d+this._core.items().length,f=this._core.maximum(!0),g=this._core.settings,h=g.center||g.autoWidth||g.dotsData?1:g.dotsEach||g.items;if("page"!==g.slideBy&&(g.slideBy=Math.min(g.slideBy,g.items)),g.dots||"page"==g.slideBy)for(this._pages=[],a=d,b=0,c=0;a<e;a++){if(b>=h||0===b){if(this._pages.push({start:Math.min(f,a-d),end:a-d+h-1}),Math.min(f,a-d)===f)break;b=0,++c}b+=this._core.mergers(this._core.relative(a))}},e.prototype.draw=function(){var b,c=this._core.settings,d=this._core.items().length<=c.items,e=this._core.relative(this._core.current()),f=c.loop||c.rewind;this._controls.$relative.toggleClass("disabled",!c.nav||d),c.nav&&(this._controls.$previous.toggleClass("disabled",!f&&e<=this._core.minimum(!0)),this._controls.$next.toggleClass("disabled",!f&&e>=this._core.maximum(!0))),this._controls.$absolute.toggleClass("disabled",!c.dots||d),c.dots&&(b=this._pages.length-this._controls.$absolute.children().length,c.dotsData&&0!==b?this._controls.$absolute.html(this._templates.join("")):b>0?this._controls.$absolute.append(new Array(b+1).join(this._templates[0])):b<0&&this._controls.$absolute.children().slice(b).remove(),this._controls.$absolute.find(".active").removeClass("active"),this._controls.$absolute.children().eq(a.inArray(this.current(),this._pages)).addClass("active"))},e.prototype.onTrigger=function(b){var c=this._core.settings;b.page={index:a.inArray(this.current(),this._pages),count:this._pages.length,size:c&&(c.center||c.autoWidth||c.dotsData?1:c.dotsEach||c.items)}},e.prototype.current=function(){var b=this._core.relative(this._core.current());return a.grep(this._pages,a.proxy(function(a,c){return a.start<=b&&a.end>=b},this)).pop()},e.prototype.getPosition=function(b){var c,d,e=this._core.settings;return"page"==e.slideBy?(c=a.inArray(this.current(),this._pages),d=this._pages.length,b?++c:--c,c=this._pages[(c%d+d)%d].start):(c=this._core.relative(this._core.current()),d=this._core.items().length,b?c+=e.slideBy:c-=e.slideBy),c},e.prototype.next=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!0),b)},e.prototype.prev=function(b){a.proxy(this._overrides.to,this._core)(this.getPosition(!1),b)},e.prototype.to=function(b,c,d){var e;!d&&this._pages.length?(e=this._pages.length,a.proxy(this._overrides.to,this._core)(this._pages[(b%e+e)%e].start,c)):a.proxy(this._overrides.to,this._core)(b,c)},a.fn.owlCarousel.Constructor.Plugins.Navigation=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){"use strict";var e=function(c){this._core=c,this._hashes={},this.$element=this._core.$element,this._handlers={"initialized.owl.carousel":a.proxy(function(c){c.namespace&&"URLHash"===this._core.settings.startPosition&&a(b).trigger("hashchange.owl.navigation")},this),"prepared.owl.carousel":a.proxy(function(b){if(b.namespace){var c=a(b.content).find("[data-hash]").addBack("[data-hash]").attr("data-hash");if(!c)return;this._hashes[c]=b.content}},this),"changed.owl.carousel":a.proxy(function(c){if(c.namespace&&"position"===c.property.name){var d=this._core.items(this._core.relative(this._core.current())),e=a.map(this._hashes,function(a,b){return a===d?b:null}).join();if(!e||b.location.hash.slice(1)===e)return;b.location.hash=e}},this)},this._core.options=a.extend({},e.Defaults,this._core.options),this.$element.on(this._handlers),a(b).on("hashchange.owl.navigation",a.proxy(function(a){var c=b.location.hash.substring(1),e=this._core.$stage.children(),f=this._hashes[c]&&e.index(this._hashes[c]);f!==d&&f!==this._core.current()&&this._core.to(this._core.relative(f),!1,!0)},this))};e.Defaults={URLhashListener:!1},e.prototype.destroy=function(){var c,d;a(b).off("hashchange.owl.navigation");for(c in this._handlers)this._core.$element.off(c,this._handlers[c]);for(d in Object.getOwnPropertyNames(this))"function"!=typeof this[d]&&(this[d]=null)},a.fn.owlCarousel.Constructor.Plugins.Hash=e}(window.Zepto||window.jQuery,window,document),function(a,b,c,d){function e(b,c){var e=!1,f=b.charAt(0).toUpperCase()+b.slice(1);return a.each((b+" "+h.join(f+" ")+f).split(" "),function(a,b){if(g[b]!==d)return e=!c||b,!1}),e}function f(a){return e(a,!0)}var g=a("<support>").get(0).style,h="Webkit Moz O ms".split(" "),i={transition:{end:{WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}},animation:{end:{WebkitAnimation:"webkitAnimationEnd",MozAnimation:"animationend",OAnimation:"oAnimationEnd",animation:"animationend"}}},j={csstransforms:function(){return!!e("transform")},csstransforms3d:function(){return!!e("perspective")},csstransitions:function(){return!!e("transition")},cssanimations:function(){return!!e("animation")}};j.csstransitions()&&(a.support.transition=new String(f("transition")),a.support.transition.end=i.transition.end[a.support.transition]),j.cssanimations()&&(a.support.animation=new String(f("animation")),a.support.animation.end=i.animation.end[a.support.animation]),j.csstransforms()&&(a.support.transform=new String(f("transform")),a.support.transform3d=j.csstransforms3d())}(window.Zepto||window.jQuery,window,document);
5631
5632/* End */
5633;
5634; /* Start:"a:4:{s:4:"full";s:86:"/bitrix/templates/internetclient_pk_s1_new/js/jquery.maskedinput.min.js?17774726393568";s:6:"source";s:71:"/bitrix/templates/internetclient_pk_s1_new/js/jquery.maskedinput.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
5635/*
5636	Masked Input plugin for jQuery
5637	Copyright (c) 2007-2013 Josh Bush (digitalbush.com)
5638	Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
5639	Version: 1.3.1
5640*/
5641(function(e){function t(){var e=document.createElement("input"),t="onpaste";return e.setAttribute(t,""),"function"==typeof e[t]?"paste":"input"}var n,a=t()+".mask",r=navigator.userAgent,i=/iphone/i.test(r),o=/android/i.test(r);e.mask={definitions:{9:"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"},dataName:"rawMaskFn",placeholder:"_"},e.fn.extend({caret:function(e,t){var n;if(0!==this.length&&!this.is(":hidden"))return"number"==typeof e?(t="number"==typeof t?t:e,this.each(function(){this.setSelectionRange?this.setSelectionRange(e,t):this.createTextRange&&(n=this.createTextRange(),n.collapse(!0),n.moveEnd("character",t),n.moveStart("character",e),n.select())})):(this[0].setSelectionRange?(e=this[0].selectionStart,t=this[0].selectionEnd):document.selection&&document.selection.createRange&&(n=document.selection.createRange(),e=0-n.duplicate().moveStart("character",-1e5),t=e+n.text.length),{begin:e,end:t})},unmask:function(){return this.trigger("unmask")},mask:function(t,r){var c,l,s,u,f,h;return!t&&this.length>0?(c=e(this[0]),c.data(e.mask.dataName)()):(r=e.extend({placeholder:e.mask.placeholder,completed:null},r),l=e.mask.definitions,s=[],u=h=t.length,f=null,e.each(t.split(""),function(e,t){"?"==t?(h--,u=e):l[t]?(s.push(RegExp(l[t])),null===f&&(f=s.length-1)):s.push(null)}),this.trigger("unmask").each(function(){function c(e){for(;h>++e&&!s[e];);return e}function d(e){for(;--e>=0&&!s[e];);return e}function m(e,t){var n,a;if(!(0>e)){for(n=e,a=c(t);h>n;n++)if(s[n]){if(!(h>a&&s[n].test(R[a])))break;R[n]=R[a],R[a]=r.placeholder,a=c(a)}b(),x.caret(Math.max(f,e))}}function p(e){var t,n,a,i;for(t=e,n=r.placeholder;h>t;t++)if(s[t]){if(a=c(t),i=R[t],R[t]=n,!(h>a&&s[a].test(i)))break;n=i}}function g(e){var t,n,a,r=e.which;8===r||46===r||i&&127===r?(t=x.caret(),n=t.begin,a=t.end,0===a-n&&(n=46!==r?d(n):a=c(n-1),a=46===r?c(a):a),k(n,a),m(n,a-1),e.preventDefault()):27==r&&(x.val(S),x.caret(0,y()),e.preventDefault())}function v(t){var n,a,i,l=t.which,u=x.caret();t.ctrlKey||t.altKey||t.metaKey||32>l||l&&(0!==u.end-u.begin&&(k(u.begin,u.end),m(u.begin,u.end-1)),n=c(u.begin-1),h>n&&(a=String.fromCharCode(l),s[n].test(a)&&(p(n),R[n]=a,b(),i=c(n),o?setTimeout(e.proxy(e.fn.caret,x,i),0):x.caret(i),r.completed&&i>=h&&r.completed.call(x))),t.preventDefault())}function k(e,t){var n;for(n=e;t>n&&h>n;n++)s[n]&&(R[n]=r.placeholder)}function b(){x.val(R.join(""))}function y(e){var t,n,a=x.val(),i=-1;for(t=0,pos=0;h>t;t++)if(s[t]){for(R[t]=r.placeholder;pos++<a.length;)if(n=a.charAt(pos-1),s[t].test(n)){R[t]=n,i=t;break}if(pos>a.length)break}else R[t]===a.charAt(pos)&&t!==u&&(pos++,i=t);return e?b():u>i+1?(x.val(""),k(0,h)):(b(),x.val(x.val().substring(0,i+1))),u?t:f}var x=e(this),R=e.map(t.split(""),function(e){return"?"!=e?l[e]?r.placeholder:e:void 0}),S=x.val();x.data(e.mask.dataName,function(){return e.map(R,function(e,t){return s[t]&&e!=r.placeholder?e:null}).join("")}),x.attr("readonly")||x.one("unmask",function(){x.unbind(".mask").removeData(e.mask.dataName)}).bind("focus.mask",function(){clearTimeout(n);var e;S=x.val(),e=y(),n=setTimeout(function(){b(),e==t.length?x.caret(0,e):x.caret(e)},10)}).bind("blur.mask",function(){y(),x.val()!=S&&x.change()}).bind("keydown.mask",g).bind("keypress.mask",v).bind(a,function(){setTimeout(function(){var e=y(!0);x.caret(e),r.completed&&e==x.val().length&&r.completed.call(x)},0)}),y()}))}})})(jQuery);
5642/* End */
5643;
5644; /* Start:"a:4:{s:4:"full";s:78:"/bitrix/templates/internetclient_pk_s1_new/js/webfontloader.js?177747263912522";s:6:"source";s:62:"/bitrix/templates/internetclient_pk_s1_new/js/webfontloader.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
5645/* Web Font Loader v1.6.28 - (c) Adobe Systems, Google. License: Apache 2.0 */(function(){function aa(a,b,c){return a.call.apply(a.bind,arguments)}function ba(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var c=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(c,d);return a.apply(b,c)}}return function(){return a.apply(b,arguments)}}function p(a,b,c){p=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?aa:ba;return p.apply(null,arguments)}var q=Date.now||function(){return+new Date};function ca(a,b){this.a=a;this.o=b||a;this.c=this.o.document}var da=!!window.FontFace;function t(a,b,c,d){b=a.c.createElement(b);if(c)for(var e in c)c.hasOwnProperty(e)&&("style"==e?b.style.cssText=c[e]:b.setAttribute(e,c[e]));
vendor: 8,749 bytes, lines 5645-5657
5645d&&b.appendChild(a.c.createTextNode(d));return b}function u(a,b,c){a=a.c.getElementsByTagName(b)[0];a||(a=document.documentElement);a.insertBefore(c,a.lastChild)}function v(a){a.parentNode&&a.parentNode.removeChild(a)}
5646function w(a,b,c){b=b||[];c=c||[];for(var d=a.className.split(/\s+/),e=0;e<b.length;e+=1){for(var f=!1,g=0;g<d.length;g+=1)if(b[e]===d[g]){f=!0;break}f||d.push(b[e])}b=[];for(e=0;e<d.length;e+=1){f=!1;for(g=0;g<c.length;g+=1)if(d[e]===c[g]){f=!0;break}f||b.push(d[e])}a.className=b.join(" ").replace(/\s+/g," ").replace(/^\s+|\s+$/,"")}function y(a,b){for(var c=a.className.split(/\s+/),d=0,e=c.length;d<e;d++)if(c[d]==b)return!0;return!1}
5647function ea(a){return a.o.location.hostname||a.a.location.hostname}function z(a,b,c){function d(){m&&e&&f&&(m(g),m=null)}b=t(a,"link",{rel:"stylesheet",href:b,media:"all"});var e=!1,f=!0,g=null,m=c||null;da?(b.onload=function(){e=!0;d()},b.onerror=function(){e=!0;g=Error("Stylesheet failed to load");d()}):setTimeout(function(){e=!0;d()},0);u(a,"head",b)}
5648function A(a,b,c,d){var e=a.c.getElementsByTagName("head")[0];if(e){var f=t(a,"script",{src:b}),g=!1;f.onload=f.onreadystatechange=function(){g||this.readyState&&"loaded"!=this.readyState&&"complete"!=this.readyState||(g=!0,c&&c(null),f.onload=f.onreadystatechange=null,"HEAD"==f.parentNode.tagName&&e.removeChild(f))};e.appendChild(f);setTimeout(function(){g||(g=!0,c&&c(Error("Script load timeout")))},d||5E3);return f}return null};function B(){this.a=0;this.c=null}function C(a){a.a++;return function(){a.a--;D(a)}}function E(a,b){a.c=b;D(a)}function D(a){0==a.a&&a.c&&(a.c(),a.c=null)};function F(a){this.a=a||"-"}F.prototype.c=function(a){for(var b=[],c=0;c<arguments.length;c++)b.push(arguments[c].replace(/[\W_]+/g,"").toLowerCase());return b.join(this.a)};function G(a,b){this.c=a;this.f=4;this.a="n";var c=(b||"n4").match(/^([nio])([1-9])$/i);c&&(this.a=c[1],this.f=parseInt(c[2],10))}function fa(a){return H(a)+" "+(a.f+"00")+" 300px "+I(a.c)}function I(a){var b=[];a=a.split(/,\s*/);for(var c=0;c<a.length;c++){var d=a[c].replace(/['"]/g,"");-1!=d.indexOf(" ")||/^\d/.test(d)?b.push("'"+d+"'"):b.push(d)}return b.join(",")}function J(a){return a.a+a.f}function H(a){var b="normal";"o"===a.a?b="oblique":"i"===a.a&&(b="italic");return b}
5649function ga(a){var b=4,c="n",d=null;a&&((d=a.match(/(normal|oblique|italic)/i))&&d[1]&&(c=d[1].substr(0,1).toLowerCase()),(d=a.match(/([1-9]00|normal|bold)/i))&&d[1]&&(/bold/i.test(d[1])?b=7:/[1-9]00/.test(d[1])&&(b=parseInt(d[1].substr(0,1),10))));return c+b};function ha(a,b){this.c=a;this.f=a.o.document.documentElement;this.h=b;this.a=new F("-");this.j=!1!==b.events;this.g=!1!==b.classes}function ia(a){a.g&&w(a.f,[a.a.c("wf","loading")]);K(a,"loading")}function L(a){if(a.g){var b=y(a.f,a.a.c("wf","active")),c=[],d=[a.a.c("wf","loading")];b||c.push(a.a.c("wf","inactive"));w(a.f,c,d)}K(a,"inactive")}function K(a,b,c){if(a.j&&a.h[b])if(c)a.h[b](c.c,J(c));else a.h[b]()};function ja(){this.c={}}function ka(a,b,c){var d=[],e;for(e in b)if(b.hasOwnProperty(e)){var f=a.c[e];f&&d.push(f(b[e],c))}return d};function M(a,b){this.c=a;this.f=b;this.a=t(this.c,"span",{"aria-hidden":"true"},this.f)}function N(a){u(a.c,"body",a.a)}function O(a){return"display:block;position:absolute;top:-9999px;left:-9999px;font-size:300px;width:auto;height:auto;line-height:normal;margin:0;padding:0;font-variant:normal;white-space:nowrap;font-family:"+I(a.c)+";"+("font-style:"+H(a)+";font-weight:"+(a.f+"00")+";")};function P(a,b,c,d,e,f){this.g=a;this.j=b;this.a=d;this.c=c;this.f=e||3E3;this.h=f||void 0}P.prototype.start=function(){var a=this.c.o.document,b=this,c=q(),d=new Promise(function(d,e){function f(){q()-c>=b.f?e():a.fonts.load(fa(b.a),b.h).then(function(a){1<=a.length?d():setTimeout(f,25)},function(){e()})}f()}),e=null,f=new Promise(function(a,d){e=setTimeout(d,b.f)});Promise.race([f,d]).then(function(){e&&(clearTimeout(e),e=null);b.g(b.a)},function(){b.j(b.a)})};function Q(a,b,c,d,e,f,g){this.v=a;this.B=b;this.c=c;this.a=d;this.s=g||"BESbswy";this.f={};this.w=e||3E3;this.u=f||null;this.m=this.j=this.h=this.g=null;this.g=new M(this.c,this.s);this.h=new M(this.c,this.s);this.j=new M(this.c,this.s);this.m=new M(this.c,this.s);a=new G(this.a.c+",serif",J(this.a));a=O(a);this.g.a.style.cssText=a;a=new G(this.a.c+",sans-serif",J(this.a));a=O(a);this.h.a.style.cssText=a;a=new G("serif",J(this.a));a=O(a);this.j.a.style.cssText=a;a=new G("sans-serif",J(this.a));a=
5650O(a);this.m.a.style.cssText=a;N(this.g);N(this.h);N(this.j);N(this.m)}var R={D:"serif",C:"sans-serif"},S=null;function T(){if(null===S){var a=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent);S=!!a&&(536>parseInt(a[1],10)||536===parseInt(a[1],10)&&11>=parseInt(a[2],10))}return S}Q.prototype.start=function(){this.f.serif=this.j.a.offsetWidth;this.f["sans-serif"]=this.m.a.offsetWidth;this.A=q();U(this)};
5651function la(a,b,c){for(var d in R)if(R.hasOwnProperty(d)&&b===a.f[R[d]]&&c===a.f[R[d]])return!0;return!1}function U(a){var b=a.g.a.offsetWidth,c=a.h.a.offsetWidth,d;(d=b===a.f.serif&&c===a.f["sans-serif"])||(d=T()&&la(a,b,c));d?q()-a.A>=a.w?T()&&la(a,b,c)&&(null===a.u||a.u.hasOwnProperty(a.a.c))?V(a,a.v):V(a,a.B):ma(a):V(a,a.v)}function ma(a){setTimeout(p(function(){U(this)},a),50)}function V(a,b){setTimeout(p(function(){v(this.g.a);v(this.h.a);v(this.j.a);v(this.m.a);b(this.a)},a),0)};function W(a,b,c){this.c=a;this.a=b;this.f=0;this.m=this.j=!1;this.s=c}var X=null;W.prototype.g=function(a){var b=this.a;b.g&&w(b.f,[b.a.c("wf",a.c,J(a).toString(),"active")],[b.a.c("wf",a.c,J(a).toString(),"loading"),b.a.c("wf",a.c,J(a).toString(),"inactive")]);K(b,"fontactive",a);this.m=!0;na(this)};
5652W.prototype.h=function(a){var b=this.a;if(b.g){var c=y(b.f,b.a.c("wf",a.c,J(a).toString(),"active")),d=[],e=[b.a.c("wf",a.c,J(a).toString(),"loading")];c||d.push(b.a.c("wf",a.c,J(a).toString(),"inactive"));w(b.f,d,e)}K(b,"fontinactive",a);na(this)};function na(a){0==--a.f&&a.j&&(a.m?(a=a.a,a.g&&w(a.f,[a.a.c("wf","active")],[a.a.c("wf","loading"),a.a.c("wf","inactive")]),K(a,"active")):L(a.a))};function oa(a){this.j=a;this.a=new ja;this.h=0;this.f=this.g=!0}oa.prototype.load=function(a){this.c=new ca(this.j,a.context||this.j);this.g=!1!==a.events;this.f=!1!==a.classes;pa(this,new ha(this.c,a),a)};
5653function qa(a,b,c,d,e){var f=0==--a.h;(a.f||a.g)&&setTimeout(function(){var a=e||null,m=d||null||{};if(0===c.length&&f)L(b.a);else{b.f+=c.length;f&&(b.j=f);var h,l=[];for(h=0;h<c.length;h++){var k=c[h],n=m[k.c],r=b.a,x=k;r.g&&w(r.f,[r.a.c("wf",x.c,J(x).toString(),"loading")]);K(r,"fontloading",x);r=null;if(null===X)if(window.FontFace){var x=/Gecko.*Firefox\/(\d+)/.exec(window.navigator.userAgent),xa=/OS X.*Version\/10\..*Safari/.exec(window.navigator.userAgent)&&/Apple/.exec(window.navigator.vendor);
5654X=x?42<parseInt(x[1],10):xa?!1:!0}else X=!1;X?r=new P(p(b.g,b),p(b.h,b),b.c,k,b.s,n):r=new Q(p(b.g,b),p(b.h,b),b.c,k,b.s,a,n);l.push(r)}for(h=0;h<l.length;h++)l[h].start()}},0)}function pa(a,b,c){var d=[],e=c.timeout;ia(b);var d=ka(a.a,c,a.c),f=new W(a.c,b,e);a.h=d.length;b=0;for(c=d.length;b<c;b++)d[b].load(function(b,d,c){qa(a,f,b,d,c)})};function ra(a,b){this.c=a;this.a=b}
5655ra.prototype.load=function(a){function b(){if(f["__mti_fntLst"+d]){var c=f["__mti_fntLst"+d](),e=[],h;if(c)for(var l=0;l<c.length;l++){var k=c[l].fontfamily;void 0!=c[l].fontStyle&&void 0!=c[l].fontWeight?(h=c[l].fontStyle+c[l].fontWeight,e.push(new G(k,h))):e.push(new G(k))}a(e)}else setTimeout(function(){b()},50)}var c=this,d=c.a.projectId,e=c.a.version;if(d){var f=c.c.o;A(this.c,(c.a.api||"https://fast.fonts.net/jsapi")+"/"+d+".js"+(e?"?v="+e:""),function(e){e?a([]):(f["__MonotypeConfiguration__"+
5656d]=function(){return c.a},b())}).id="__MonotypeAPIScript__"+d}else a([])};function sa(a,b){this.c=a;this.a=b}sa.prototype.load=function(a){var b,c,d=this.a.urls||[],e=this.a.families||[],f=this.a.testStrings||{},g=new B;b=0;for(c=d.length;b<c;b++)z(this.c,d[b],C(g));var m=[];b=0;for(c=e.length;b<c;b++)if(d=e[b].split(":"),d[1])for(var h=d[1].split(","),l=0;l<h.length;l+=1)m.push(new G(d[0],h[l]));else m.push(new G(d[0]));E(g,function(){a(m,f)})};function ta(a,b){a?this.c=a:this.c=ua;this.a=[];this.f=[];this.g=b||""}var ua="https://fonts.googleapis.com/css";function va(a,b){for(var c=b.length,d=0;d<c;d++){var e=b[d].split(":");3==e.length&&a.f.push(e.pop());var f="";2==e.length&&""!=e[1]&&(f=":");a.a.push(e.join(f))}}
5657function wa(a){if(0==a.a.length)throw Error("No fonts to load!");if(-1!=a.c.indexOf("kit="))return a.c;for(var b=a.a.length,c=[],d=0;d<b;d++)c.push(a.a[d].replace(/ /g,"+"));b=a.c+"?family="+c.join("%7C");0<a.f.length&&(b+="&subset="+a.f.join(","));0<a.g.length&&(b+="&text="+encodeURIComponent(a.g));return b};function ya(a){this.f=a;this.a=[];this.c={}}
5658var za={latin:"BESbswy","latin-ext":"\u00e7\u00f6\u00fc\u011f\u015f",cyrillic:"\u0439\u044f\u0416",greek:"\u03b1\u03b2\u03a3",khmer:"\u1780\u1781\u1782",Hanuman:"\u1780\u1781\u1782"},Aa={thin:"1",extralight:"2","extra-light":"2",ultralight:"2","ultra-light":"2",light:"3",regular:"4",book:"4",medium:"5","semi-bold":"6",semibold:"6","demi-bold":"6",demibold:"6",bold:"7","extra-bold":"8",extrabold:"8","ultra-bold":"8",ultrabold:"8",black:"9",heavy:"9",l:"3",r:"4",b:"7"},Ba={i:"i",italic:"i",n:"n",normal:"n"},
5659Ca=/^(thin|(?:(?:extra|ultra)-?)?light|regular|book|medium|(?:(?:semi|demi|extra|ultra)-?)?bold|black|heavy|l|r|b|[1-9]00)?(n|i|normal|italic)?$/;
5660function Da(a){for(var b=a.f.length,c=0;c<b;c++){var d=a.f[c].split(":"),e=d[0].replace(/\+/g," "),f=["n4"];if(2<=d.length){var g;var m=d[1];g=[];if(m)for(var m=m.split(","),h=m.length,l=0;l<h;l++){var k;k=m[l];if(k.match(/^[\w-]+$/)){var n=Ca.exec(k.toLowerCase());if(null==n)k="";else{k=n[2];k=null==k||""==k?"n":Ba[k];n=n[1];if(null==n||""==n)n="4";else var r=Aa[n],n=r?r:isNaN(n)?"4":n.substr(0,1);k=[k,n].join("")}}else k="";k&&g.push(k)}0<g.length&&(f=g);3==d.length&&(d=d[2],g=[],d=d?d.split(","):
5661g,0<d.length&&(d=za[d[0]])&&(a.c[e]=d))}a.c[e]||(d=za[e])&&(a.c[e]=d);for(d=0;d<f.length;d+=1)a.a.push(new G(e,f[d]))}};function Ea(a,b){this.c=a;this.a=b}var Fa={Arimo:!0,Cousine:!0,Tinos:!0};Ea.prototype.load=function(a){var b=new B,c=this.c,d=new ta(this.a.api,this.a.text),e=this.a.families;va(d,e);var f=new ya(e);Da(f);z(c,wa(d),C(b));E(b,function(){a(f.a,f.c,Fa)})};function Ga(a,b){this.c=a;this.a=b}Ga.prototype.load=function(a){var b=this.a.id,c=this.c.o;b?A(this.c,(this.a.api||"https://use.typekit.net")+"/"+b+".js",function(b){if(b)a([]);else if(c.Typekit&&c.Typekit.config&&c.Typekit.config.fn){b=c.Typekit.config.fn;for(var e=[],f=0;f<b.length;f+=2)for(var g=b[f],m=b[f+1],h=0;h<m.length;h++)e.push(new G(g,m[h]));try{c.Typekit.load({events:!1,classes:!1,async:!0})}catch(l){}a(e)}},2E3):a([])};function Ha(a,b){this.c=a;this.f=b;this.a=[]}Ha.prototype.load=function(a){var b=this.f.id,c=this.c.o,d=this;b?(c.__webfontfontdeckmodule__||(c.__webfontfontdeckmodule__={}),c.__webfontfontdeckmodule__[b]=function(b,c){for(var g=0,m=c.fonts.length;g<m;++g){var h=c.fonts[g];d.a.push(new G(h.name,ga("font-weight:"+h.weight+";font-style:"+h.style)))}a(d.a)},A(this.c,(this.f.api||"https://f.fontdeck.com/s/css/js/")+ea(this.c)+"/"+b+".js",function(b){b&&a([])})):a([])};var Y=new oa(window);Y.a.c.custom=function(a,b){return new sa(b,a)};Y.a.c.fontdeck=function(a,b){return new Ha(b,a)};Y.a.c.monotype=function(a,b){return new ra(b,a)};Y.a.c.typekit=function(a,b){return new Ga(b,a)};Y.a.c.google=function(a,b){return new Ea(b,a)};var Z={load:p(Y.load,Y)};"function"===typeof define&&define.amd?define(function(){return Z}):"undefined"!==typeof module&&module.exports?module.exports=Z:(window.WebFont=Z,window.WebFontConfig&&Y.load(window.WebFontConfig));}());
5662
5663/* End */
5664;
5665; /* Start:"a:4:{s:4:"full";s:69:"/bitrix/templates/internetclient_pk_s1_new/js/main.js?177747263921863";s:6:"source";s:53:"/bitrix/templates/internetclient_pk_s1_new/js/main.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
5666function mobilemenuclick()
5667{
5668	$(".header__menu-list>.header__menu-item>a").off("click");
5669	$(".header__menu-list>.header__menu-item>a").click(function(){
5670		if ($(window).width()<1035)
5671		{
5672
5673			if ($(this).parent().find(".header__menu-sub-list").length)
5674			{
5675				if (!$(this).parent().find(".header__menu-sub-list").hasClass("showsub"))
5676				{
5677					$(this).parent().find(".header__menu-sub-list").addClass("showsub")
5678					return false;
5679				}
5680
5681			}
5682
5683		}
5684
5685
5686	})
5687}
5688
5689function tipalert(msg, params)
5690    {
5691        var element = $("<div/>",
5692            {
5693                "class": "tip_alert",
5694                text: msg,
5695                click: function ()
5696                {
5697                    $(this)
5698                        .fadeOut(600, function ()
5699                        {
5700                            $(this)
5701                                .remove();
5702                        })
5703                }
5704            })
5705            .prepend(
5706                $("<div/>",
5707                {
5708                    "class": "tip_close",
5709                    click: function ()
5710                    {
5711                        $(this)
5712                            .parent()
5713                            .fadeOut(600, function ()
5714                            {
5715                                $(this)
5716                                    .remove();
5717                            })
5718                    }
5719                })
5720            )
5721        if (params)
5722        {
5723            if (params['css'])
5724            {
5725                element.css(params['css']);
5726            }
5727            if (params['class'])
5728            {
5729                element.addClass(params['class']);
5730            }
5731            if (params['id'])
5732            {
5733                element.attr("id", params['id']);
5734            }
5735            if (params['func'])
5736            {
5737                eval(params['func'])()
5738            }
5739        }
5740        element.appendTo("body");
5741        element.css(
5742        {
5743            position: 'fixed',
5744            left: (($(window)
5745                .width() / 2) - 120),
5746            top: ($(window)
5747                .height() - $('.tip_alert')
5748                .outerHeight()) / 2
5749        })
5750        element.fadeIn(600);
5751        setTimeout(function ()
5752        {
5753            element.fadeOut(600, function ()
5754            {
5755                $(this)
5756                    .remove();
5757            })
5758        }, 3000)
5759    }
5760
5761
5762
5763
5764
5765(function($) {
5766
5767	// Search
5768	$(".cs-search form").click(function(){
5769		$(this).addClass("toggler");
5770		if(!$(this).hasClass("toggler")) {
5771			return false;
5772		}
5773	})
5774
5775	// Sale popup
5776	$(".sale-popup__close").click(function(){
5777		$(".sale-popup__inner").hide();
5778		$(".sale-popup__percent").show();
5779	});
5780
5781	$(".sale-popup__percent").click(function(){
5782		$(this).hide();
5783		$(".sale-popup__inner").slideDown(200);
5784		$(".sale-popup").removeClass(".sale-popup_animate");
5785	});
5786
5787	$(document).ready(function() {
5788
5789		// Smooth scroll
5790		$("#price-menu a").click(function() {
5791			var id  = $(this).attr('href'),
5792			top = $(id).offset().top;
5793			console.log(top);
5794			$('body,html').animate({scrollTop: top - 110}, 1500);
5795			return false;
5796		});
5797
5798		$(".sertificat-list__a").fancybox({
5799			  helpers: {
5800				overlay: {
5801				  locked: false
5802				}
5803			  }
5804		});
5805
5806		$(".courses-list-photo a").fancybox({
5807			  helpers: {
5808				overlay: {
5809				  locked: false
5810				}
5811			  }
5812		});
5813
5814		$(".video-frame a").fancybox({
5815			  helpers: {
5816				overlay: {
5817				  locked: false
5818				},
5819				media: true
5820			  },
5821			type:"iframe",
5822		})
5823
5824//$(".field_phone").mask("9 (999) 999-99-99");
5825$(".sendform-order").submit(function(){
5826			formobj = $(this);
5827            formdata = formobj.serialize();
5828            $.ajax(
5829            {
5830                url: '/local/order.php',
5831                type: 'POST',
5832                dataType: 'json',
5833                data: formdata,
5834                success: function (data)
5835                {
5836                    if (data["code"] == 1)
5837                    {
5838
5839                        tipalert(data['text'],
5840                        {
5841                            css:
5842                            {
5843                                "background": "green"
5844                            }
5845                        });
5846                        formobj[0].reset();
5847                        setTimeout(function(){$.fancybox.close();},4000);
5848
5849                    }
5850                    else
5851                    {
5852                        tipalert(data['text'], {css:{"background": "red"}});
5853						//console.log('!!!!');
5854						if(grecaptcha){
5855							//console.log('1111');
5856							grecaptcha.reset();
5857						}
5858                    }
5859                }
5860            })
5861                .done(function( msg ) {
5862                    // ga('send', 'event', 'request', 'sent');
5863                    // ga('send', 'event', 'request', 'cost-sent');
5864                    ym(19946407,'reachGoal','course-order-short-sent');
5865                    ym(19946407,'reachGoal','request-sent');
5866                    ym(19946407,'reachGoal','cost-sent');
5867                });
5868            return false;
5869});
5870
5871
5872        $("#jr_order_form_form").submit(function(){
5873            formobj = $(this);
5874            formdata = formobj.serialize();
5875            $.ajax(
5876                {
5877                    url: '/local/order.php',
5878                    type: 'POST',
5879                    dataType: 'json',
5880                    data: formdata,
5881                    success: function (data)
5882                    {
5883                        if (data["code"] == 1)
5884                        {
5885
5886                            tipalert(data['text'],
5887                                {
5888                                    css:
5889                                        {
5890                                            "background": "green"
5891                                        }
5892                                });
5893                            formobj[0].reset();
5894                            setTimeout(function(){$.fancybox.close();},4000);
5895
5896                        }
5897                        else
5898                        {
5899                            tipalert(data['text'], {css:{"background": "red"}});
5900                            //console.log('!!!!');
5901                            if(grecaptcha){
5902                                //console.log('1111');
5903                                grecaptcha.reset();
5904                            }
5905                        }
5906                    }
5907                })
5908                .done(function( msg ) {
5909                    // ga('send', 'event', 'request', 'course-sent');
5910                    ym(19946407,'reachGoal','course-sent');
5911                    ym(19946407,'reachGoal','course-order-form-sent');
5912                });
5913            return false;
5914        });
5915
5916        $(".jr_laws_form").submit(function(){
5917            formobj = $(this);
5918            formdata = formobj.serialize();
5919            $.ajax(
5920                {
5921                    url: '/local/form_law.php',
5922                    type: 'POST',
5923                    dataType: 'json',
5924                    data: formdata,
5925                    success: function (data)
5926                    {
5927                        if (data["code"] == 1)
5928                        {
5929
5930                            tipalert(data['text'],
5931                                {
5932                                    css:
5933                                        {
5934                                            "background": "green"
5935                                        }
5936                                });
5937                            formobj[0].reset();
5938                            setTimeout(function(){$.fancybox.close();},4000);
5939
5940                        }
5941                        else
5942                        {
5943                            tipalert(data['text'], {css:{"background": "red"}});
5944                            //console.log('!');
5945                            if(grecaptcha){
5946                                //console.log('1111');
5947                                grecaptcha.reset();
5948                            }
5949                        }
5950                    }
5951                })
5952                .done(function( msg ) {
5953                    // ga('send', 'event', 'request', 'fcall-sent');
5954                    ym(19946407,'reachGoal','fcall-sent');
5955                });
5956            return false;
5957        });
5958
5959
5960$(".sendform-call").submit(function(){
5961			formobj = $(this);
5962            formdata = formobj.serialize();
5963            $.ajax(
5964            {
5965                url: '/local/callc.php',
5966                type: 'POST',
5967                dataType: 'json',
5968                data: formdata,
5969                success: function (data)
5970                {
5971                    if (data["code"] == 1)
5972                    {
5973
5974                        tipalert(data['text'],
5975                        {
5976                            css:
5977                            {
5978                                "background": "green"
5979                            }
5980                        });
5981                        formobj[0].reset();
5982                        setTimeout(function(){$.fancybox.close();},4000);
5983
5984                    }
5985                    else
5986                    {
5987                        tipalert(data['text'], {css:{"background": "red"}});
5988						//console.log('!');
5989						if(grecaptcha){
5990							//console.log('1111');
5991							grecaptcha.reset();
5992						}
5993                    }
5994                }
5995            })
5996                .done(function( msg ) {
5997                    // ga('send', 'event', 'request', 'fcall-sent');
5998                    ym(19946407,'reachGoal','fcall-sent');
5999                    ym(19946407,'reachGoal','form-callback-sent');
6000                });
6001            return false;
6002});
6003        $("#jr_order_form_form_motivator").submit(function(){
6004            formobj = $(this);
6005            formdata = formobj.serialize();
6006            $.ajax(
6007                {
6008                    url: '/local/order.php',
6009                    type: 'POST',
6010                    dataType: 'json',
6011                    data: formdata,
6012                    success: function (data)
6013                    {
6014                        if (data["code"] == 1)
6015                        {
6016
6017                            tipalert(data['text'],
6018                                {
6019                                    css:
6020                                        {
6021                                            "background": "green"
6022                                        }
6023                                });
6024                            formobj[0].reset();
6025                            setTimeout(function(){$.fancybox.close();},4000);
6026
6027                        }
6028                        else
6029                        {
6030                            tipalert(data['text'], {css:{"background": "red"}});
6031                            //console.log('!');
6032                            if(grecaptcha){
6033                                //console.log('1111');
6034                                grecaptcha.reset();
6035                            }
6036                        }
6037                    }
6038                })
6039                .done(function( msg ) {
6040                    // ga('send', 'event', 'request', 'frequest-sent');
6041                    ym(19946407,'reachGoal','frequest-sent');
6042                });
6043            return false;
6044        });
6045
6046        $("#jr_form_sign_up_form").submit(function(){
6047            formobj = $(this);
6048            formdata = formobj.serialize();
6049            $.ajax(
6050                {
6051                    url: '/local/callc.php',
6052                    type: 'POST',
6053                    dataType: 'json',
6054                    data: formdata,
6055                    success: function (data)
6056                    {
6057                        if (data["code"] == 1)
6058                        {
6059
6060                            tipalert(data['text'],
6061                                {
6062                                    css:
6063                                        {
6064                                            "background": "green"
6065                                        }
6066                                });
6067                            formobj[0].reset();
6068                            setTimeout(function(){$.fancybox.close();},4000);
6069
6070                        }
6071                        else
6072                        {
6073                            tipalert(data['text'], {css:{"background": "red"}});
6074                            //console.log('!');
6075                            if(grecaptcha){
6076                                //console.log('1111');
6077                                grecaptcha.reset();
6078                            }
6079                        }
6080                    }
6081                })
6082                .done(function( msg ) {
6083                    // ga('send', 'event', 'request', 'scost-sent');
6084                    ym(19946407,'reachGoal','scost-sent');
6085                });
6086            return false;
6087        });
6088
6089
6090
6091$('.owl-carousel1').owlCarousel({
6092    loop:true,
6093    margin:10,
6094    nav:true,
6095	dots:false,
6096	navText:["",""],
6097    responsive:{
6098        0:{
6099            items:1
6100        },
6101
6102        600:{
6103            items:2
6104        },
6105        1250:{
6106            items:3
6107        }
6108    }
6109})
6110$('.owl-carousel2').owlCarousel({
6111    loop:false,
6112    margin:10,
6113    nav:true,
6114	dots:false,
6115    navText:["<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6116    "<path d=\"M20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 1 20 1C9.50659 1 1 9.50659 1 20C1 30.4934 9.50659 39 20 39Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6117    "<path d=\"M22.85 12.3999L15.25 19.9999L22.85 27.5999\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6118    "</svg>\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6119    "<path d=\"M20 0.999998C9.50659 0.999997 1 9.50659 1 20C1 30.4934 9.50659 39 20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 0.999999 20 0.999998Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6120    "<path d=\"M17.15 27.6001L24.75 20.0001L17.15 12.4001\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6121    "</svg>\n"],
6122    responsive:{
6123        0:{
6124            items:1
6125        },
6126500:{
6127            items:2
6128        },
6129        920:{
6130            items:3
6131        },
6132        1250:{
6133            items:4
6134        }
6135    }
6136})
6137        $('.owl-carousel4').owlCarousel({
6138            loop:true,
6139            margin:10,
6140            nav:true,
6141            dots:false,
6142            navText:["<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6143            "<path d=\"M20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 1 20 1C9.50659 1 1 9.50659 1 20C1 30.4934 9.50659 39 20 39Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6144            "<path d=\"M22.85 12.3999L15.25 19.9999L22.85 27.5999\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6145            "</svg>\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6146            "<path d=\"M20 0.999998C9.50659 0.999997 1 9.50659 1 20C1 30.4934 9.50659 39 20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 0.999999 20 0.999998Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6147            "<path d=\"M17.15 27.6001L24.75 20.0001L17.15 12.4001\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6148            "</svg>\n"],
6149            responsive:{
6150                0:{
6151                    items:2
6152                },
6153
6154                500:{
6155                    items:3
6156                },
6157                1250:{
6158                    items:5
6159                }
6160            }
6161        })
6162
6163        $('.owl-carousel3').owlCarousel({
6164            loop:false,
6165            margin:10,
6166            nav:true,
6167            dots:false,
6168            navText:["<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6169            "<path d=\"M20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 1 20 1C9.50659 1 1 9.50659 1 20C1 30.4934 9.50659 39 20 39Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6170            "<path d=\"M22.85 12.3999L15.25 19.9999L22.85 27.5999\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6171            "</svg>\n","<svg width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n" +
6172            "<path d=\"M20 0.999998C9.50659 0.999997 1 9.50659 1 20C1 30.4934 9.50659 39 20 39C30.4934 39 39 30.4934 39 20C39 9.50659 30.4934 0.999999 20 0.999998Z\" stroke=\"#174788\" stroke-width=\"2\"/>\n" +
6173            "<path d=\"M17.15 27.6001L24.75 20.0001L17.15 12.4001\" stroke=\"#174788\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\n" +
6174            "</svg>\n"],
6175            responsive:{
6176                0:{
6177                    items:2
6178                },
6179
6180                500:{
6181                    items:3
6182                },
6183                1250:{
6184                    items:4
6185                }
6186            }
6187        })
6188
6189
6190		$(".togglemenu").click(function(){
6191			$(".header__menu-list").toggleClass("showmenu");
6192		})
6193		mobilemenuclick();
6194		$(".content__right table").each(function(){
6195			if (!$(this).parent().hasClass("course_table")){$(this).wrap('<div class="tablewrapper"></div');}
6196})
6197
6198		$(".fancybox").fancybox({
6199			helpers: {
6200				overlay: {
6201					locked: false
6202				}
6203			}
6204		});
6205		$(".fancybox-link").click(function(){
6206			$("#course_name").val($(this).attr("data"));
6207		});
6208
6209		$(".fancybox-link").fancybox({
6210			helpers: {
6211				overlay: {
6212					locked: false
6213				}
6214			},
6215			beforeShow: function () {
6216				$('.fancybox-wrap').addClass('fancybox-wrap--custom');
6217			}
6218		});
6219
6220
6221		$(".course_table table tr td:nth-child(3) a").click(function(){
6222			$("#course_name").val($(this).parents("tr").find("td:nth-child(1)").text());
6223		});
6224		$(".course_table table tr td:nth-child(3) a").fancybox({
6225			helpers: {
6226				overlay: {
6227					locked: false
6228				}
6229			},
6230			beforeShow: function () {
6231				$('.fancybox-wrap').addClass('fancybox-wrap--custom');
6232			}
6233		});
6234
6235		initCarousel();
6236
6237		if ($(window).width() >= 992) {
6238
6239			var call_icon = $('.call-icon');
6240
6241			var animate_active_class = 'animate';
6242			setInterval(function() {
6243				call_icon.addClass(animate_active_class);
6244				setTimeout(function() {
6245					call_icon.removeClass(animate_active_class);
6246				}, 750);
6247			}, 1500);
6248
6249		}
6250
6251  $('.scroll-top').click(function(e){
6252    e.preventDefault();
6253    $('body, html').animate({scrollTop : 0}, 500);
6254    return false;
6255  });
6256
6257	});
6258	$(window).scroll(function(){
6259		var scrollPos = window.pageYOffset || document.documentElement.scrollTop;
6260		if (scrollPos > 130+$("#bx-panel").height()) {
6261			//$('#header').addClass('header--fixed');
6262			$(".header__menu").addClass('menu--fixed');
6263		} else {
6264			//$('#header').removeClass('header--fixed');
6265			$(".header__menu").removeClass('menu--fixed');
6266		}
6267	});
6268})(jQuery);
6269
6270
6271$(".tabhead").click(function(){
6272	$(".tabhead").removeClass("active");
6273	$(".tab").removeClass("active");
6274	$(this).addClass('active');
6275	$(".tab[data-tab="+$(this).attr("href")+"]").addClass('active');
6276	return false;
6277})
6278
6279function initCarousel () {
6280	jcarousel = $('.jcarousel').jcarousel({
6281        wrap: 'circular',
6282        scroll: 3,
6283//        visible: 4,
6284        animation: "slow",
6285        easing: 'swing'
6286    });
6287
6288
6289
6290
6291    $('.jcarousel-prev').on('click', function() {
6292	    $(this).closest('.jcarousel-wrap').find('.jcarousel').jcarousel('scroll', '-=1');
6293	    return false;
6294	});
6295
6296	$('.jcarousel-next').on('click', function() {
6297	    $(this).closest('.jcarousel-wrap').find('.jcarousel').jcarousel('scroll', '+=1');
6298	    return false;
6299	});
6300}
6301
6302$(window).scroll(function(){
6303      if($(window).scrollTop() > 150){
6304        $('.scroll-top').stop(true, true).addClass('visible');
6305      }
6306      else{
6307        $('.scroll-top').stop(true, true).removeClass('visible');
6308      }
6309});
6310
6311//This is the preferred method used in libraries such as jQuery
6312//http://stackoverflow.com/questions/641857/javascript-window-resize-event
6313
6314var addEvent = function(elem, type, eventHandle) {
6315    if (elem == null || typeof(elem) == 'undefined') return;
6316    if ( elem.addEventListener ) {
6317        elem.addEventListener( type, eventHandle, false );
6318    } else if ( elem.attachEvent ) {
6319        elem.attachEvent( "on" + type, eventHandle );
6320    } else {
6321        elem["on"+type]=eventHandle;
6322    }
6323};
6324
6325addEvent(window, "load", function(){
6326	$(".sale-popup").addClass("sale-popup_animate");
6327	setTimeout(function() {
6328		$(".sale-popup__percent").hide();
6329		$(".sale-popup__inner").slideDown(200);
6330	}, 60000);
6331});
6332
6333(function($) {
6334$(function() {
6335
6336  $('ul.cs-tabs__caption').on('click', 'li:not(.active)', function() {
6337    $(this)
6338      .addClass('active').siblings().removeClass('active')
6339      .closest('div.cs-tabs').find('div.cs-tabs__content').removeClass('active').eq($(this).index()).addClass('active');
6340  });
6341
6342});
6343})(jQuery);
6344
6345$(window).scroll(function(){
6346      // Hide show scroll top
6347      if($(window).scrollTop() > 250){
6348		  $('.cs-menu').stop(true, true).addClass('visible');
6349      }
6350      else{
6351		$('.cs-menu').stop(true, true).removeClass('visible');
6352      }
6353});
6354
6355function showMyPopup(){
6356	BX.setCookie('annoying_popup', 'Y', {expires: "",path:"/"});
6357	console.log('fire');
6358	$('#hidden_form_btn').trigger('click');
6359};
6360
6361$(document).ready(function() {
6362
6363	if(BX.getCookie('annoying_popup')=="Y"){
6364
6365	}else{
6366		console.log('init popup');
6367		setTimeout(showMyPopup, 30000);
6368	}
6369
6370});
6371
6372/* MKS */
6373
6374$(document).ready(function (){
6375
6376  // Аккордеон
6377
6378  $('.new_acco .arrow').click( function(){
6379	  $(this).parent('.item').toggleClass('active');
6380	  $(this).prev().slideToggle();
6381  });
6382
6383  $('.new_acco .title').click( function(){
6384	  $(this).parent('.item').toggleClass('active');
6385	  $(this).next().slideToggle();
6386  });
6387
6388});
6389
6390/* End */
6391;
6392; /* Start:"a:4:{s:4:"full";
6392s:78:"/bitrix/templates/internetclient_pk_s1_new/js/uhpv-full.min.js?177747263944198";s:6:"source";s:62:"/bitrix/templates/internetclient_pk_s1_new/js/uhpv-full.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
6393var $ua=window.navigator.userAgent;var $msie=$ua.indexOf("MSIE ");var $special;jQuery("html").hide();(function($){$.fn.removeClassWild=function(mask){return this.removeClass(function(index,cls){var re=mask.replace(/\*/g,"\\S+");return(cls.match(new RegExp("\\b"+re+"","g"))||[]).join(" ")})};special={Reset:function(){$special={active:1,color:1,font_family:1,font_size:1,line_height:1,letter_spacing:1,images:1};$.cookie("special",$special,{path:"/"})},Set:function(){$("html").removeClassWild("special-*").addClass("special-color-"+$special.color).addClass("special-font-size-"+$special.font_size).addClass("special-font-family-"+$special.font_family).addClass("special-line-height-"+$special.line_height).addClass("special-letter-spacing-"+$special.letter_spacing).addClass("special-images-"+$special.images);$("#special button").removeClass("active");$(".special-color button[value="+$special.color+"]").addClass("active");$(".special-font-size button[value="+$special.font_size+"]").addClass("active");$(".special-font-family button[value="+$special.font_family+"]").addClass("active");$(".special-line-height button[value="+$special.line_height+"]").addClass("active");$(".special-letter-spacing button[value="+$special.letter_spacing+"]").addClass("active");$(".special-images button").val($special.images);special.ToggleImages()},ToggleImages:function(){$("img").each(function(){if($special.images){if($(this).data("src"))$(this).attr("src",$(this).data("src"));if($(this).data("srcset"))$(this).attr("srcset",$(this).data("srcset"))}else{$(this).data("src",$(this).attr("src"));if($(this).attr("srcset"))$(this).data("srcset",$(this).attr("srcset"));$(this).removeAttr("src");if($(this).attr("srcset"))$(this).removeAttr("srcset")}})},Off:function(){if($("#specialButton").length){$("html").removeClass("special").removeClassWild("special-*");$("i.special-audio").remove();if(responsiveVoice.isPlaying())responsiveVoice.cancel();$("audio").remove();$("#special").remove();$.removeCookie("special",{path:"/"});$("#specialButton").show()}else{if($msie>0){var url=window.location+"";if(url.indexOf("template=")>=0){window.location=url.replace(/template=\d+/g,"template=0")}else{window.location=url+"?template=0"}}else{$.post(window.location.origin+window.location.pathname,{template:0},function(){window.location=window.location.origin+window.location.pathname})}}},On:function(){$("head").append($('<link rel="stylesheet" type="text/css" />').attr("href","//lidrekon.ru/slep/css/special.min.css"));if(!$special)special.Reset();if($("#specialButton").length){$special.active=1;$.cookie("special",$special,{path:"/"});$("#specialButton").hide()}$("html").addClass("special");$("body").prepend($($tpl));special.Set();$("#special button").on("click",function(){var parent=$(this).parent().attr("class").replace("special-","");if(parent){$("#special .special-"+parent+" button").removeClass("active");switch(parent){case"color":$special.color=parseInt($(this).val());$(this).addClass("active");$("html").removeClassWild("special-"+parent+"-*").addClass("special-"+parent+"-"+$(this).val());$.cookie("special",$special,{path:"/"});break;case"font-size":$special.font_size=parseInt($(this).val());$(this).addClass("active");$("html").removeClassWild("special-"+parent+"-*").addClass("special-"+parent+"-"+$(this).val());$.cookie("special",$special,{path:"/"});break;case"font-family":$special.font_family=parseInt($(this).val());$(this).addClass("active");$("html").removeClassWild("special-"+parent+"-*").addClass("special-"+parent+"-"+$(this).val());$.cookie("special",$special,{path:"/"});break;case"line-height":$special.line_height=parseInt($(this).val());$(this).addClass("active");$("html").removeClassWild("special-"+parent+"-*").addClass("special-"+parent+"-"+$(this).val());$.cookie("special",$special,{path:"/"});break;case"letter-spacing":$special.letter_spacing=parseInt($(this).val());$(this).addClass("active");$("html").removeClassWild("special-"+parent+"-*").addClass("special-"+parent+"-"+$(this).val());$.cookie("special",$special,{path:"/"});break;case"images":$special.images=$special.images?0:1;$(this).val($special.images);special.ToggleImages();$.cookie("special",$special,{path:"/"});break;case"audio":if($(this).val()==1){$("i.special-audio").remove();if(responsiveVoice.isPlaying())responsiveVoice.cancel();$("p,h1,h2,h3,h4,h5,h6,li,dt,dd,.audiotext").off();$(this).val(0)}else{responsiveVoice.speak("Включено озвучивание текста.","Russian Female");$(this).addClass("active");$(this).val(1);$("p,h1,h2,h3,h4,h5,h6,li,dt,dd,.audiotext,a,b").on("mouseover",function(){if(responsiveVoice.isPlaying())responsiveVoice.cancel();responsiveVoice.speak($(this).text().trim(),"Russian Female")})}break;case"settings":$("#special-settings-body").slideToggle();break;
6393case"settings-close":$("#special-settings-body").slideUp();break;case"reset":special.Reset();special.Set();$("#special-settings-body").slideUp();break;case"quit":special.Off();break}}})}}})(jQuery);jQuery(function($){$version="1.3";$.cookie.json=true;$special=$.cookie("special");if($("#specialButton").length){$subversion="lite";if($special&&$special.active)special.On();$("#specialButton").on("click",special.On)}else{$subversion="pro";special.On()}console.info("Special version %s (%s).\nUser agent: %s",$version,$subversion,$ua);$("html").fadeIn(1e3)});(function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof exports==="object"){factory(require("jquery"))}else{factory(jQuery)}})(function($){var pluses=/\+/g;function encode(s){return config.raw?s:encodeURIComponent(s)}function decode(s){return config.raw?s:decodeURIComponent(s)}function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value))}function parseCookieValue(s){if(s.indexOf('"')===0){s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")}try{s=decodeURIComponent(s.replace(pluses," "));return config.json?JSON.parse(s):s}catch(e){}}function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value}var config=$.cookie=function(key,value,options){if(value!==undefined&&!$.isFunction(value)){options=$.extend({},config.defaults,options);if(typeof options.expires==="number"){var days=options.expires,t=options.expires=new Date;t.setTime(+t+days*864e5)}return document.cookie=[encode(key),"=",stringifyCookieValue(value),options.expires?"; expires="+options.expires.toUTCString():"",options.path?"; path="+options.path:"",options.domain?"; domain="+options.domain:"",options.secure?"; secure":""].join("")}var result=key?undefined:{};var cookies=document.cookie?document.cookie.split("; "):[];for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split("=");var name=decode(parts.shift());var cookie=parts.join("=");if(key&&key===name){result=read(cookie,value);break}if(!key&&(cookie=read(cookie))!==undefined){result[name]=cookie}}return result};config.defaults={};$.removeCookie=function(key,options){if($.cookie(key)===undefined){return false}$.cookie(key,"",$.extend({},options,{expires:-1}));return!$.cookie(key)}});if("undefined"!=typeof responsiveVoice)console.log("ResponsiveVoice already loaded"),console.log(responsiveVoice);else var ResponsiveVoice=function(){var a=this;a.version="1.5.0";console.log("ResponsiveVoice r"+a.version);a.responsivevoices=[{name:"UK English Female",flag:"gb",gender:"f",voiceIDs:[3,5,1,6,7,171,201,8]},{name:"UK English Male",flag:"gb",gender:"m",voiceIDs:[0,4,2,75,202,159,6,7]},{name:"US English Female",flag:"us",gender:"f",voiceIDs:[39,40,41,42,43,173,205,204,235,44]},{name:"Arabic Male",flag:"ar",gender:"m",voiceIDs:[96,95,97,196,98],deprecated:!0},{name:"Arabic Female",flag:"ar",gender:"f",voiceIDs:[96,95,97,196,98]},{name:"Armenian Male",flag:"hy",gender:"f",voiceIDs:[99]},{name:"Australian Female",flag:"au",gender:"f",voiceIDs:[87,86,5,201,88]},{name:"Brazilian Portuguese Female",flag:"br",gender:"f",voiceIDs:[245,124,123,125,186,223,126]},{name:"Chinese Female",flag:"cn",gender:"f",voiceIDs:[249,58,59,60,155,191,231,61]},{name:"Chinese (Hong Kong) Female",flag:"hk",gender:"f",voiceIDs:[192,193,232,250,251,252]},{name:"Chinese Taiwan Female",flag:"tw",gender:"f",voiceIDs:[252,194,233,253,254,255]},{name:"Czech Female",flag:"cz",gender:"f",voiceIDs:[101,100,102,197,103]},{name:"Danish Female",flag:"dk",gender:"f",voiceIDs:[105,104,106,198,107]},{name:"Deutsch Female",flag:"de",gender:"f",voiceIDs:[27,28,29,30,31,78,170,199,32]},{name:"Dutch Female",flag:"nl",gender:"f",voiceIDs:[243,219,84,157,158,184,45]},{name:"Finnish Female",flag:"fi",gender:"f",voiceIDs:[90,89,91,209,92]},{name:"French Female",flag:"fr",gender:"f",voiceIDs:[240,21,22,23,77,178,210,26]},{name:"Greek Female",flag:"gr",gender:"f",voiceIDs:[62,63,80,200,64]},{name:"Hatian Creole Female",flag:"ht",gender:"f",voiceIDs:[109]},{name:"Hindi Female",flag:"hi",gender:"f",voiceIDs:[247,66,154,179,213,67]},{name:"Hungarian Female",flag:"hu",gender:"f",voiceIDs:[9,10,81,214,11]},{name:"Indonesian Female",flag:"id",gender:"f",voiceIDs:[241,111,112,180,215,113]},{name:"Italian Female",flag:"it",gender:"f",voiceIDs:[242,33,34,35,36,37,79,181,216,38]},{name:"Japanese Female",flag:"jp",gender:"f",voiceIDs:[248,50,51,52,153,182,217,53]},{name:"Korean Female",flag:"kr",gender:"f",voiceIDs:[54,55,56,156,183,218,57]},{name:"Latin Female",flag:"va",gender:"f",voiceIDs:[114]},{name:"Norwegian Female",flag:"no",gender:"f",voiceIDs:[72,73,221,74]},{name:"Polish Female",flag:"pl",gender:"f",voiceIDs:[244,120,119,121,185,222,122]},{name:"Portuguese Female",flag:"br",gender:"f",voiceIDs:[128,127,129,187,224,130]},{name:"Romanian Male",flag:"ro",gender:"m",voiceIDs:[151,150,152,225,46]},{name:"Russian Female",flag:"ru",gender:"f",voiceIDs:[246,47,48,83,188,226,49]},{name:"Slovak Female",flag:"sk",gender:"f",voiceIDs:[133,132,134,227,135]},{name:"Spanish Female",flag:"es",gender:"f",voiceIDs:[19,238,16,17,18,20,76,174,207,15]},{name:"Spanish Latin American Female",flag:"es",gender:"f",voiceIDs:[239,137,136,138,175,208,139]},{name:"Swedish Female",flag:"sv",gender:"f",voiceIDs:[85,148,149,228,65]},{name:"Tamil Male",flag:"hi",gender:"m",voiceIDs:[141]},{name:"Thai Female",flag:"th",gender:"f",voiceIDs:[143,142,144,189,229,145]},{name:"Turkish Female",flag:"tr",gender:"f",voiceIDs:[69,70,82,190,230,71]},{name:"Afrikaans Male",flag:"af",gender:"m",voiceIDs:[93]},{name:"Albanian Male",flag:"sq",gender:"m",voiceIDs:[94]},{name:"Bosnian Male",flag:"bs",gender:"m",voiceIDs:[14]},{name:"Catalan Male",flag:"catalonia",gender:"m",voiceIDs:[68]},{name:"Croatian Male",flag:"hr",gender:"m",voiceIDs:[13]},{name:"Czech Male",flag:"cz",gender:"m",voiceIDs:[161]},{name:"Danish Male",flag:"da",gender:"m",voiceIDs:[162],deprecated:!0},{name:"Esperanto Male",flag:"eo",gender:"m",voiceIDs:[108]},{name:"Finnish Male",flag:"fi",gender:"m",voiceIDs:[160],deprecated:!0},{name:"Greek Male",flag:"gr",gender:"m",voiceIDs:[163],deprecated:!0},{name:"Hungarian Male",flag:"hu",gender:"m",voiceIDs:[164]},{name:"Icelandic Male",flag:"is",gender:"m",voiceIDs:[110]},{name:"Latin Male",flag:"va",gender:"m",voiceIDs:[165],deprecated:!0},{name:"Latvian Male",flag:"lv",gender:"m",voiceIDs:[115]},{name:"Macedonian Male",flag:"mk",gender:"m",voiceIDs:[116]},{name:"Moldavian Male",flag:"md",gender:"m",voiceIDs:[117]},{name:"Montenegrin Male",flag:"me",gender:"m",voiceIDs:[118]},{name:"Norwegian Male",flag:"no",gender:"m",voiceIDs:[166]},{name:"Serbian Male",flag:"sr",gender:"m",voiceIDs:[12]},{name:"Serbo-Croatian Male",flag:"hr",gender:"m",voiceIDs:[131]},{name:"Slovak Male",flag:"sk",gender:"m",voiceIDs:[167],deprecated:!0},{name:"Swahili Male",flag:"sw",gender:"m",voiceIDs:[140]},{name:"Swedish Male",flag:"sv",gender:"m",voiceIDs:[168],deprecated:!0},{name:"Vietnamese Male",flag:"vi",gender:"m",voiceIDs:[146],deprecated:!0},{name:"Welsh Male",flag:"cy",gender:"m",voiceIDs:[147]},{name:"US English Male",flag:"us",gender:"m",voiceIDs:[0,4,2,6,7,75,159,234,236,237]},{name:"Fallback UK Female",flag:"gb",gender:"f",voiceIDs:[8]}];a.voicecollection=[{name:"Google UK English Male"},{name:"Agnes"},{name:"Daniel Compact"},{name:"Google UK English Female"},{name:"en-GB",rate:.25,pitch:1},{name:"en-AU",rate:.25,pitch:1},{name:"inglés Reino Unido"},{name:"English United Kingdom"},{name:"Fallback en-GB Female",lang:"en-GB",fallbackvoice:!0},{name:"Eszter Compact"},{name:"hu-HU",rate:.4},{name:"Fallback Hungarian",lang:"hu",fallbackvoice:!0,service:"g2"},{name:"Fallback Serbian",lang:"sr",fallbackvoice:!0},{name:"Fallback Croatian",lang:"hr",fallbackvoice:!0},{name:"Fallback Bosnian",lang:"bs",fallbackvoice:!0},{name:"Fallback Spanish",lang:"es",fallbackvoice:!0},{name:"Spanish Spain"},{name:"español España"},{name:"Diego Compact",rate:.3},{name:"Google Español"},{name:"es-ES",rate:.2},{name:"Google Français"},{name:"French France"},{name:"francés Francia"},{name:"Virginie Compact",rate:.5},{name:"fr-FR",rate:.25},{name:"Fallback French",lang:"fr",fallbackvoice:!0},{name:"Google Deutsch"},{name:"German Germany"},{name:"alemán Alemania"},{name:"Yannick Compact",rate:.5},{name:"de-DE",rate:.25},{name:"Fallback Deutsch",lang:"de",fallbackvoice:!0},{name:"Google Italiano"},{name:"Italian Italy"},{name:"italiano Italia"},{name:"Paolo Compact",rate:.5},{name:"it-IT",rate:.25},{name:"Fallback Italian",lang:"it",fallbackvoice:!0}
6393,{name:"Google US English",timerSpeed:1},{name:"English United States"},{name:"inglés Estados Unidos"},{name:"Vicki"},{name:"en-US",rate:.2,pitch:1,timerSpeed:1.3},{name:"Fallback English",lang:"en-US",fallbackvoice:!0,timerSpeed:0},{name:"Fallback Dutch",lang:"nl",fallbackvoice:!0,timerSpeed:0},{name:"Fallback Romanian",lang:"ro",fallbackvoice:!0},{name:"Milena Compact"},{name:"ru-RU",rate:.25},{name:"Fallback Russian",lang:"ru_RU",fallbackvoice:!0},{name:"Google 日本人",timerSpeed:1},{name:"Kyoko Compact"},{name:"ja-JP",rate:.25},{name:"Fallback Japanese",lang:"ja",fallbackvoice:!0},{name:"Google 한국의",timerSpeed:1},{name:"Narae Compact"},{name:"ko-KR",rate:.25},{name:"Fallback Korean",lang:"ko",fallbackvoice:!0},{name:"Google 中国的",timerSpeed:1},{name:"Ting-Ting Compact"},{name:"zh-CN",rate:.25},{name:"Fallback Chinese",lang:"zh-CN",fallbackvoice:!0},{name:"Alexandros Compact"},{name:"el-GR",rate:.25},{name:"Fallback Greek",lang:"el",fallbackvoice:!0,service:"g2"},{name:"Fallback Swedish",lang:"sv",fallbackvoice:!0,service:"g2"},{name:"hi-IN",rate:.25},{name:"Fallback Hindi",lang:"hi",fallbackvoice:!0},{name:"Fallback Catalan",lang:"ca",fallbackvoice:!0},{name:"Aylin Compact"},{name:"tr-TR",rate:.25},{name:"Fallback Turkish",lang:"tr",fallbackvoice:!0},{name:"Stine Compact"},{name:"no-NO",rate:.25},{name:"Fallback Norwegian",lang:"no",fallbackvoice:!0,service:"g2"},{name:"Daniel"},{name:"Monica"},{name:"Amelie"},{name:"Anna"},{name:"Alice"},{name:"Melina"},{name:"Mariska"},{name:"Yelda"},{name:"Milena"},{name:"Xander"},{name:"Alva"},{name:"Lee Compact"},{name:"Karen"},{name:"Fallback Australian",lang:"en-AU",fallbackvoice:!0},{name:"Mikko Compact"},{name:"Satu"},{name:"fi-FI",rate:.25},{name:"Fallback Finnish",lang:"fi",fallbackvoice:!0,service:"g2"},{name:"Fallback Afrikans",lang:"af",fallbackvoice:!0},{name:"Fallback Albanian",lang:"sq",fallbackvoice:!0},{name:"Maged Compact"},{name:"Tarik"},{name:"ar-SA",rate:.25},{name:"Fallback Arabic",lang:"ar",fallbackvoice:!0,service:"g2"},{name:"Fallback Armenian",lang:"hy",fallbackvoice:!0,service:"g2"},{name:"Zuzana Compact"},{name:"Zuzana"},{name:"cs-CZ",rate:.25},{name:"Fallback Czech",lang:"cs",fallbackvoice:!0,service:"g2"},{name:"Ida Compact"},{name:"Sara"},{name:"da-DK",rate:.25},{name:"Fallback Danish",lang:"da",fallbackvoice:!0,service:"g2"},{name:"Fallback Esperanto",lang:"eo",fallbackvoice:!0},{name:"Fallback Hatian Creole",lang:"ht",fallbackvoice:!0},{name:"Fallback Icelandic",lang:"is",fallbackvoice:!0},{name:"Damayanti"},{name:"id-ID",rate:.25},{name:"Fallback Indonesian",lang:"id",fallbackvoice:!0},{name:"Fallback Latin",lang:"la",fallbackvoice:!0,service:"g2"},{name:"Fallback Latvian",lang:"lv",fallbackvoice:!0},{name:"Fallback Macedonian",lang:"mk",fallbackvoice:!0},{name:"Fallback Moldavian",lang:"mo",fallbackvoice:!0,service:"g2"},{name:"Fallback Montenegrin",lang:"sr-ME",fallbackvoice:!0},{name:"Agata Compact"},{name:"Zosia"},{name:"pl-PL",rate:.25},{name:"Fallback Polish",lang:"pl",fallbackvoice:!0},{name:"Raquel Compact"},{name:"Luciana"},{name:"pt-BR",rate:.25},{name:"Fallback Brazilian Portugese",lang:"pt-BR",fallbackvoice:!0,service:"g2"},{name:"Joana Compact"},{name:"Joana"},{name:"pt-PT",rate:.25},{name:"Fallback Portuguese",lang:"pt-PT",fallbackvoice:!0},{name:"Fallback Serbo-Croation",lang:"sh",fallbackvoice:!0,service:"g2"},{name:"Laura Compact"},{name:"Laura"},{name:"sk-SK",rate:.25},{name:"Fallback Slovak",lang:"sk",fallbackvoice:!0,service:"g2"},{name:"Javier Compact"},{name:"Paulina"},{name:"es-MX",rate:.25},{name:"Fallback Spanish (Latin American)",lang:"es-419",fallbackvoice:!0,service:"g2"},{name:"Fallback Swahili",lang:"sw",fallbackvoice:!0},{name:"Fallback Tamil",lang:"ta",fallbackvoice:!0},{name:"Narisa Compact"},{name:"Kanya"},{name:"th-TH",rate:.25},{name:"Fallback Thai",lang:"th",fallbackvoice:!0},{name:"Fallback Vietnamese",lang:"vi",fallbackvoice:!0},{name:"Fallback Welsh",lang:"cy",fallbackvoice:!0},{name:"Oskar Compact"},{name:"sv-SE",rate:.25},{name:"Simona Compact"},{name:"Ioana"},{name:"ro-RO",rate:.25},{name:"Kyoko"},{name:"Lekha"},{name:"Ting-Ting"},{name:"Yuna"},{name:"Xander Compact"},{name:"nl-NL",rate:.25},{name:"Fallback UK English Male",lang:"en-GB",fallbackvoice:!0,service:"g1",voicename:"rjs"},{name:"Finnish Male",lang:"fi",fallbackvoice:!0,service:"g1",voicename:""},{name:"Czech Male",lang:"cs",fallbackvoice:!0,service:"g1",voicename:""},{name:"Danish Male",lang:"da",fallbackvoice:!0,service:"g1",voicename:""},{name:"Greek Male",lang:"el",fallbackvoice:!0,service:"g1",voicename:"",rate:.25},{name:"Hungarian Male",lang:"hu",fallbackvoice:!0,service:"g1",voicename:""},{name:"Latin Male",lang:"la",fallbackvoice:!0,service:"g1",voicename:""},{name:"Norwegian Male",lang:"no",fallbackvoice:!0,service:"g1",voicename:""},{name:"Slovak Male",lang:"sk",fallbackvoice:!0,service:"g1",voicename:""},{name:"Swedish Male",lang:"sv",fallbackvoice:!0,service:"g1",voicename:""},{name:"Fallback US English Male",lang:"en",fallbackvoice:!0,service:"tts-api",voicename:""},{name:"German Germany",lang:"de_DE"},{name:"English United Kingdom",lang:"en_GB"},{name:"English India",lang:"en_IN"},{name:"English United States",lang:"en_US"},{name:"Spanish Spain",lang:"es_ES"},{name:"Spanish Mexico",lang:"es_MX"},{name:"Spanish United States",lang:"es_US"},{name:"French Belgium",lang:"fr_BE"},{name:"French France",lang:"fr_FR"},{name:"Hindi India",lang:"hi_IN"},{name:"Indonesian Indonesia",lang:"in_ID"},{name:"Italian Italy",lang:"it_IT"},{name:"Japanese Japan",lang:"ja_JP"},{name:"Korean South Korea",lang:"ko_KR"},{name:"Dutch Netherlands",lang:"nl_NL"},{name:"Polish Poland",lang:"pl_PL"},{name:"Portuguese Brazil",lang:"pt_BR"},{name:"Portuguese Portugal",lang:"pt_PT"},{name:"Russian Russia",lang:"ru_RU"},{name:"Thai Thailand",lang:"th_TH"},{name:"Turkish Turkey",lang:"tr_TR"},{name:"Chinese China",lang:"zh_CN_#Hans"},{name:"Chinese Hong Kong",lang:"zh_HK_#Hans"},{name:"Chinese Hong Kong",lang:"zh_HK_#Hant"},{name:"Chinese Taiwan",lang:"zh_TW_#Hant"},{name:"Alex"},{name:"Maged",lang:"ar-SA"},{name:"Zuzana",lang:"cs-CZ"},{name:"Sara",lang:"da-DK"},{name:"Anna",lang:"de-DE"},{name:"Melina",lang:"el-GR"},{name:"Karen",lang:"en-AU"},{name:"Daniel",lang:"en-GB"},{name:"Moira",lang:"en-IE"},{name:"Samantha (Enhanced)",lang:"en-US"},{name:"Samantha",lang:"en-US"},{name:"Tessa",lang:"en-ZA"},{name:"Monica",lang:"es-ES"},{name:"Paulina",lang:"es-MX"},{name:"Satu",lang:"fi-FI"},{name:"Amelie",lang:"fr-CA"},{name:"Thomas",lang:"fr-FR"},{name:"Carmit",lang:"he-IL"},{name:"Lekha",lang:"hi-IN"},{name:"Mariska",lang:"hu-HU"},{name:"Damayanti",lang:"id-ID"},{name:"Alice",lang:"it-IT"},{name:"Kyoko",lang:"ja-JP"},{name:"Yuna",lang:"ko-KR"},{name:"Ellen",lang:"nl-BE"},{name:"Xander",lang:"nl-NL"},{name:"Nora",lang:"no-NO"},{name:"Zosia",lang:"pl-PL"},{name:"Luciana",lang:"pt-BR"},{name:"Joana",lang:"pt-PT"},{name:"Ioana",lang:"ro-RO"},{name:"Milena",lang:"ru-RU"},{name:"Laura",lang:"sk-SK"},{name:"Alva",lang:"sv-SE"},{name:"Kanya",lang:"th-TH"},{name:"Yelda",lang:"tr-TR"},{name:"Ting-Ting",lang:"zh-CN"},{name:"Sin-Ji",lang:"zh-HK"},{name:"Mei-Jia",lang:"zh-TW"},{name:"Microsoft David Mobile - English (United States)",lang:"en-US"},{name:"Microsoft Zira Mobile - English (United States)",lang:"en-US"},{name:"Microsoft Mark Mobile - English (United States)",lang:"en-US"},{name:"native",lang:""},{name:"Google español"},{name:"Google español de Estados Unidos"},{name:"Google français"},{name:"Google Bahasa Indonesia"},{name:"Google italiano"},{name:"Google Nederlands"},{name:"Google polski"},{name:"Google português do Brasil"},{name:"Google русский"},{name:"Google हिन्दी"},{name:"Google 日本語"},{name:"Google 普通话(中国大陆)"},{name:"Google 粤語(香港)"},{name:"zh-HK",rate:.25},{name:"Fallback Chinese (Hong Kong) Female",lang:"zh-HK",fallbackvoice:!0,service:"g1"},{name:"Google 粤語(香港)"},{name:"zh-TW",rate:.25},{name:"Fallback Chinese (Taiwan) Female",lang:"zh-TW",fallbackvoice:!0,service:"g1"}];a.iOS=/(iPad|iPhone|iPod)/g.test(navigator.userAgent);a.iOS9=/(iphone|ipod|ipad).* os 9_/.test(navigator.userAgent.toLowerCase())||/(iphone|ipod|ipad).* os 10_/.test(navigator.userAgent.toLowerCase());a.is_chrome=-1<navigator.userAgent.indexOf("Chrome");a.is_safari=-1<navigator.userAgent.indexOf("Safari");a.is_chrome&&a.is_safari&&(a.is_safari=!1);a.is_opera=!!window.opera||0<=navigator.userAgent.indexOf(" OPR/");a.is_android=-1<navigator.userAgent.toLowerCase().indexOf("android");a.iOS_initialized=!1;a.iOS9_initialized=!1;a.cache_ios_voices=[{name:"he-IL",voiceURI:"he-IL",lang:"he-IL"},{name:"th-TH",voiceURI:"th-TH",lang:"th-TH"},{name:"pt-BR",voiceURI:"pt-BR",lang:"pt-BR"},{name:"sk-SK",voiceURI:"sk-SK",lang:"sk-SK"},{name:"fr-CA",voiceURI:"fr-CA",lang:"fr-CA"},{name:"ro-RO",voiceURI:"ro-RO",lang:"ro-RO"},{name:"no-NO",voiceURI:"no-NO",lang:"no-NO"},{name:"fi-FI",voiceURI:"fi-FI",lang:"fi-FI"},{name:"pl-PL",voiceURI:"pl-PL",lang:"pl-PL"},{name:"de-DE",voiceURI:"de-DE",lang:"de-DE"},{name:"nl-NL",voiceURI:"nl-NL",lang:"nl-NL"},{name:"id-ID",voiceURI:"id-ID",lang:"id-ID"},{name:"tr-TR",voiceURI:"tr-TR",lang:"tr-TR"},{name:"it-IT",voiceURI:"it-IT",lang:"it-IT"},{name:"pt-PT",voiceURI:"pt-PT",lang:"pt-PT"},{name:"fr-FR",voiceURI:"fr-FR",lang:"fr-FR"},{name:"ru-RU",voiceURI:"ru-RU",lang:"ru-RU"},{name:"es-MX",voiceURI:"es-MX",lang:"es-MX"},{name:"zh-HK",voiceURI:"zh-HK",lang:"zh-HK"},{name:"sv-SE",voiceURI:"sv-SE",lang:"sv-SE"},{name:"hu-HU",voiceURI:"hu-HU",lang:"hu-HU"},{name:"zh-TW",voiceURI:"zh-TW",lang:"zh-TW"},{name:"es-ES",voiceURI:"es-ES",lang:"es-ES"},{name:"zh-CN",voiceURI:"zh-CN",lang:"zh-CN"},{name:"nl-BE",voiceURI:"nl-BE",lang:"nl-BE"},{name:"en-GB",voiceURI:"en-GB",lang:"en-GB"},{name:"ar-SA",voiceURI:"ar-SA",lang:"ar-SA"}
6393,{name:"ko-KR",voiceURI:"ko-KR",lang:"ko-KR"},{name:"cs-CZ",voiceURI:"cs-CZ",lang:"cs-CZ"},{name:"en-ZA",voiceURI:"en-ZA",lang:"en-ZA"},{name:"en-AU",voiceURI:"en-AU",lang:"en-AU"},{name:"da-DK",voiceURI:"da-DK",lang:"da-DK"},{name:"en-US",voiceURI:"en-US",lang:"en-US"},{name:"en-IE",voiceURI:"en-IE",lang:"en-IE"},{name:"hi-IN",voiceURI:"hi-IN",lang:"hi-IN"},{name:"el-GR",voiceURI:"el-GR",lang:"el-GR"},{name:"ja-JP",voiceURI:"ja-JP",lang:"ja-JP"}];a.cache_ios9_voices=[{name:"Maged",voiceURI:"com.apple.ttsbundle.Maged-compact",lang:"ar-SA",localService:!0,"default":!0},{name:"Zuzana",voiceURI:"com.apple.ttsbundle.Zuzana-compact",lang:"cs-CZ",localService:!0,"default":!0},{name:"Sara",voiceURI:"com.apple.ttsbundle.Sara-compact",lang:"da-DK",localService:!0,"default":!0},{name:"Anna",voiceURI:"com.apple.ttsbundle.Anna-compact",lang:"de-DE",localService:!0,"default":!0},{name:"Melina",voiceURI:"com.apple.ttsbundle.Melina-compact",lang:"el-GR",localService:!0,"default":!0},{name:"Karen",voiceURI:"com.apple.ttsbundle.Karen-compact",lang:"en-AU",localService:!0,"default":!0},{name:"Daniel",voiceURI:"com.apple.ttsbundle.Daniel-compact",lang:"en-GB",localService:!0,"default":!0},{name:"Moira",voiceURI:"com.apple.ttsbundle.Moira-compact",lang:"en-IE",localService:!0,"default":!0},{name:"Samantha (Enhanced)",voiceURI:"com.apple.ttsbundle.Samantha-premium",lang:"en-US",localService:!0,"default":!0},{name:"Samantha",voiceURI:"com.apple.ttsbundle.Samantha-compact",lang:"en-US",localService:!0,"default":!0},{name:"Tessa",voiceURI:"com.apple.ttsbundle.Tessa-compact",lang:"en-ZA",localService:!0,"default":!0},{name:"Monica",voiceURI:"com.apple.ttsbundle.Monica-compact",lang:"es-ES",localService:!0,"default":!0},{name:"Paulina",voiceURI:"com.apple.ttsbundle.Paulina-compact",lang:"es-MX",localService:!0,"default":!0},{name:"Satu",voiceURI:"com.apple.ttsbundle.Satu-compact",lang:"fi-FI",localService:!0,"default":!0},{name:"Amelie",voiceURI:"com.apple.ttsbundle.Amelie-compact",lang:"fr-CA",localService:!0,"default":!0},{name:"Thomas",voiceURI:"com.apple.ttsbundle.Thomas-compact",lang:"fr-FR",localService:!0,"default":!0},{name:"Carmit",voiceURI:"com.apple.ttsbundle.Carmit-compact",lang:"he-IL",localService:!0,"default":!0},{name:"Lekha",voiceURI:"com.apple.ttsbundle.Lekha-compact",lang:"hi-IN",localService:!0,"default":!0},{name:"Mariska",voiceURI:"com.apple.ttsbundle.Mariska-compact",lang:"hu-HU",localService:!0,"default":!0},{name:"Damayanti",voiceURI:"com.apple.ttsbundle.Damayanti-compact",lang:"id-ID",localService:!0,"default":!0},{name:"Alice",voiceURI:"com.apple.ttsbundle.Alice-compact",lang:"it-IT",localService:!0,"default":!0},{name:"Kyoko",voiceURI:"com.apple.ttsbundle.Kyoko-compact",lang:"ja-JP",localService:!0,"default":!0},{name:"Yuna",voiceURI:"com.apple.ttsbundle.Yuna-compact",lang:"ko-KR",localService:!0,"default":!0},{name:"Ellen",voiceURI:"com.apple.ttsbundle.Ellen-compact",lang:"nl-BE",localService:!0,"default":!0},{name:"Xander",voiceURI:"com.apple.ttsbundle.Xander-compact",lang:"nl-NL",localService:!0,"default":!0},{name:"Nora",voiceURI:"com.apple.ttsbundle.Nora-compact",lang:"no-NO",localService:!0,"default":!0},{name:"Zosia",voiceURI:"com.apple.ttsbundle.Zosia-compact",lang:"pl-PL",localService:!0,"default":!0},{name:"Luciana",voiceURI:"com.apple.ttsbundle.Luciana-compact",lang:"pt-BR",localService:!0,"default":!0},{name:"Joana",voiceURI:"com.apple.ttsbundle.Joana-compact",lang:"pt-PT",localService:!0,"default":!0},{name:"Ioana",voiceURI:"com.apple.ttsbundle.Ioana-compact",lang:"ro-RO",localService:!0,"default":!0},{name:"Milena",voiceURI:"com.apple.ttsbundle.Milena-compact",lang:"ru-RU",localService:!0,"default":!0},{name:"Laura",voiceURI:"com.apple.ttsbundle.Laura-compact",lang:"sk-SK",localService:!0,"default":!0},{name:"Alva",voiceURI:"com.apple.ttsbundle.Alva-compact",lang:"sv-SE",localService:!0,"default":!0},{name:"Kanya",voiceURI:"com.apple.ttsbundle.Kanya-compact",lang:"th-TH",localService:!0,"default":!0},{name:"Yelda",voiceURI:"com.apple.ttsbundle.Yelda-compact",lang:"tr-TR",localService:!0,"default":!0},{name:"Ting-Ting",voiceURI:"com.apple.ttsbundle.Ting-Ting-compact",lang:"zh-CN",localService:!0,"default":!0},{name:"Sin-Ji",voiceURI:"com.apple.ttsbundle.Sin-Ji-compact",lang:"zh-HK",localService:!0,"default":!0},{name:"Mei-Jia",voiceURI:"com.apple.ttsbundle.Mei-Jia-compact",lang:"zh-TW",localService:!0,"default":!0}];a.systemvoices=null;a.CHARACTER_LIMIT=100;a.VOICESUPPORT_ATTEMPTLIMIT=5;a.voicesupport_attempts=0;a.fallbackMode=!1;a.WORDS_PER_MINUTE=130;a.fallback_parts=null;a.fallback_part_index=0;a.fallback_audio=null;a.fallback_playbackrate=1;a.def_fallback_playbackrate=a.fallback_playbackrate;a.fallback_audiopool=[];a.msgparameters=null;a.timeoutId=null;a.OnLoad_callbacks=[];a.useTimer=!1;a.utterances=[];a.tstCompiled=function(a){return eval("typeof xy === 'undefined'")};a.fallbackServicePath="http://tts.voicetech.yandex.net/"+(a.tstCompiled()?"":"develop/")+"tts";a.default_rv=a.responsivevoices[0];a.debug=!1;a.log=function(b){a.debug&&console.log(b)};a.init=function(){a.is_android&&(a.useTimer=!0);a.is_opera||"undefined"===typeof speechSynthesis?(console.log("RV: Voice synthesis not supported"),a.enableFallbackMode()):setTimeout(function(){var b=setInterval(function(){var c=window.speechSynthesis.getVoices();0!=c.length||null!=a.systemvoices&&0!=a.systemvoices.length?(console.log("RV: Voice support ready"),a.systemVoicesReady(c),clearInterval(b)):(console.log("Voice support NOT ready"),a.voicesupport_attempts++,a.voicesupport_attempts>a.VOICESUPPORT_ATTEMPTLIMIT&&(clearInterval(b),null!=window.speechSynthesis?a.iOS?(a.iOS9?a.systemVoicesReady(a.cache_ios9_voices):a.systemVoicesReady(a.cache_ios_voices),console.log("RV: Voice support ready (cached)")):(console.log("RV: speechSynthesis present but no system voices found"),a.enableFallbackMode()):a.enableFallbackMode()))},100)},100);a.Dispatch("OnLoad")};a.systemVoicesReady=function(b){a.systemvoices=b;a.mapRVs();null!=a.OnVoiceReady&&a.OnVoiceReady.call();a.Dispatch("OnReady");window.hasOwnProperty("dispatchEvent")&&window.dispatchEvent(new Event("ResponsiveVoice_OnReady"))};a.enableFallbackMode=function(){a.fallbackMode=!0;console.log("RV: Enabling fallback mode");a.mapRVs();null!=a.OnVoiceReady&&a.OnVoiceReady.call();a.Dispatch("OnReady");window.hasOwnProperty("dispatchEvent")&&window.dispatchEvent(new Event("ResponsiveVoice_OnReady"))};a.getVoices=function(){for(var b=[],c=0;c<a.responsivevoices.length;c++)b.push({name:a.responsivevoices[c].name});return b};a.speak=function(b,c,e){if(a.iOS9&&!a.iOS9_initialized)a.log("Initializing ios9"),setTimeout(function(){a.speak(b,c,e)},100),a.clickEvent(),a.iOS9_initialized=!0;else{a.isPlaying()&&(a.log("Cancelling previous speech"),a.cancel());a.fallbackMode&&0<a.fallback_audiopool.length&&a.clearFallbackPool();b=b.replace(/[\"\`]/gm,"'");a.msgparameters=e||{};a.msgtext=b;a.msgvoicename=c;a.onstartFired=!1;var h=[];if(b.length>a.CHARACTER_LIMIT){for(var f=b;f.length>a.CHARACTER_LIMIT;){var g=f.search(/[:!?.;]+/),d="";if(-1==g||g>=a.CHARACTER_LIMIT)g=f.search(/[,]+/);-1==g&&-1==f.search(" ")&&(g=99);if(-1==g||g>=a.CHARACTER_LIMIT)for(var k=f.split(" "),g=0;g<k.length&&!(d.length+k[g].length+1>a.CHARACTER_LIMIT);g++)d+=(0!=g?" ":"")+k[g];else d=f.substr(0,g+1);f=f.substr(d.length,f.length-d.length);h.push(d)}0<f.length&&h.push(f)}else h.push(b);a.multipartText=h;g=null==c?a.default_rv:a.getResponsiveVoice(c);
6393!0===g.deprecated&&console.warn("ResponsiveVoice: Voice "+g.name+" is deprecated and will be removed in future releases");f={};if(null!=g.mappedProfile)f=g.mappedProfile;else if(f.systemvoice=a.getMatchedVoice(g),f.collectionvoice={},null==f.systemvoice){console.log("RV: ERROR: No voice found for: "+c);return}a.msgprofile=f;a.utterances=[];for(g=0;g<h.length;g++)if(a.fallbackMode){a.fallback_playbackrate=a.def_fallback_playbackrate;var d=a.selectBest([f.collectionvoice.pitch,f.systemvoice.pitch,1]),k=a.selectBest([a.iOS9?1:null,f.collectionvoice.rate,f.systemvoice.rate,1]),l=a.selectBest([f.collectionvoice.volume,f.systemvoice.volume,1]),m;null!=e&&(d*=null!=e.pitch?e.pitch:1,k*=null!=e.rate?e.rate:1,l*=null!=e.volume?e.volume:1,m=e.extraParams||null);d/=2;k/=2;l*=2;d=Math.min(Math.max(d,0),1);k=Math.min(Math.max(k,0),1);l=Math.min(Math.max(l,0),1);d=a.fallbackServicePath+"?format=mp3&quality=hi&text="+encodeURIComponent(h[g])+"&lang="+(f.collectionvoice.lang||f.systemvoice.lang||"en-US");m&&(d+="&extraParams="+JSON.stringify(m));k=document.createElement("AUDIO");k.src=d;k.playbackRate=a.fallback_playbackrate;k.preload="auto";k.load();a.fallback_parts.push(k)}else a.log("Using SpeechSynthesis"),d=new SpeechSynthesisUtterance,d.voiceURI=f.systemvoice.voiceURI,
6394d.volume=a.selectBest([f.collectionvoice.volume,f.systemvoice.volume,1]),d.rate=a.selectBest([a.iOS9?1:null,f.collectionvoice.rate,f.systemvoice.rate,1]),d.pitch=a.selectBest([f.collectionvoice.pitch,f.systemvoice.pitch,1]),d.text=h[g],d.lang=a.selectBest([f.collectionvoice.lang,f.systemvoice.lang]),d.rvIndex=g,d.rvTotal=h.length,0==g&&(d.onstart=a.speech_onstart),a.msgparameters.onendcalled=!1,null!=e?(d.voice="undefined"!==typeof e.voice?e.voice:f.systemvoice,g<h.length-1&&1<h.length?(d.onend=a.onPartEnd,d.hasOwnProperty("addEventListener")&&d.addEventListener("end",a.onPartEnd)):(d.onend=a.speech_onend,d.hasOwnProperty("addEventListener")&&d.addEventListener("end",a.speech_onend)),d.onerror=e.onerror||function(b){a.log("RV: Unknow Error");a.log(b)},d.onpause=e.onpause,d.onresume=e.onresume,d.onmark=e.onmark,d.onboundary=e.onboundary||a.onboundary,d.pitch=null!=e.pitch?e.pitch:d.pitch,d.rate=a.iOS?(null!=e.rate?e.rate*e.rate:1)*d.rate:(null!=e.rate?e.rate:1)*d.rate,d.volume=null!=e.volume?e.volume:d.volume):(a.log("No Params received for current Utterance"),d.voice=f.systemvoice,d.onend=a.speech_onend,d.onboundary=a.onboundary,d.onerror=function(b){a.log("RV: Unknow Error");a.log(b)}),a.utterances.push(d),0==g&&(a.currentMsg=d),console.log(d),a.tts_speak(d);a.fallbackMode&&(a.fallback_part_index=0,a.fallback_startPart())}};a.startTimeout=function(b,c){var e=a.msgprofile.collectionvoice.timerSpeed;null==a.msgprofile.collectionvoice.timerSpeed&&(e=1);0>=e||(a.timeoutId=setTimeout(c,a.getEstimatedTimeLength(b,e)),a.log("Timeout ID: "+a.timeoutId))};a.checkAndCancelTimeout=function(){null!=a.timeoutId&&(clearTimeout(a.timeoutId),a.timeoutId=null)};a.speech_timedout=function(){a.cancel();a.cancelled=!1;a.speech_onend()};a.speech_onend=function(){a.checkAndCancelTimeout();!0===a.cancelled?a.cancelled=!1:(a.log("on end fired"),null!=a.msgparameters&&null!=a.msgparameters.onend&&1!=a.msgparameters.onendcalled&&(a.log("Speech on end called  -"+a.msgtext),a.msgparameters.onendcalled=!0,a.msgparameters.onend()))};a.speech_onstart=function(){if(!a.onstartFired){a.onstartFired=!0;a.log("Speech start");if(a.iOS||a.is_safari||a.useTimer)a.fallbackMode||a.startTimeout(a.msgtext,a.speech_timedout);a.msgparameters.onendcalled=!1;if(null!=a.msgparameters&&null!=a.msgparameters.onstart)a.msgparameters.onstart()}};a.fallback_startPart=function(){0==a.fallback_part_index&&a.speech_onstart();a.fallback_audio=a.fallback_parts[a.fallback_part_index];if(null==a.fallback_audio)a.log("RV: Fallback Audio is not available");else{var b=a.fallback_audio;a.fallback_audiopool.push(b);setTimeout(function(){b.playbackRate=a.fallback_playbackrate},50);b.onloadedmetadata=function(){b.play();b.playbackRate=a.fallback_playbackrate};a.fallback_errors&&(a.log("RV: Speech cancelled due to errors"),a.speech_onend());a.fallback_audio.play();a.fallback_audio.addEventListener("ended",a.fallback_finishPart);a.useTimer&&a.startTimeout(a.multipartText[a.fallback_part_index],a.fallback_finishPart)}};a.isFallbackAudioPlaying=function(){var b;for(b=0;b<a.fallback_audiopool.length;b++)if(!a.fallback_audiopool[b].paused)return!0;return!1};a.fallback_finishPart=function(b){a.isFallbackAudioPlaying()?(a.checkAndCancelTimeout(),a.timeoutId=setTimeout(a.fallback_finishPart,1e3*(a.fallback_audio.duration-a.fallback_audio.currentTime))):(a.checkAndCancelTimeout(),a.fallback_part_index<a.fallback_parts.length-1?(a.fallback_part_index++,a.fallback_startPart()):a.speech_onend())};a.cancel=function(){a.checkAndCancelTimeout();a.fallbackMode?(null!=a.fallback_audio&&a.fallback_audio.pause(),a.clearFallbackPool()):(a.cancelled=!0,speechSynthesis.cancel())};a.voiceSupport=function(){return"speechSynthesis"in window};a.OnFinishedPlaying=function(b){if(null!=a.msgparameters&&null!=a.msgparameters.onend)a.msgparameters.onend()};a.setDefaultVoice=function(b){b=a.getResponsiveVoice(b);null!=b&&(a.default_rv=b)};a.mapRVs=function(){for(var b=0;b<a.responsivevoices.length;b++)for(var c=a.responsivevoices[b],e=0;e<c.voiceIDs.length;e++){var h=a.voicecollection[c.voiceIDs[e]];if(1!=h.fallbackvoice){var f=a.getSystemVoice(h.name);if(null!=f){c.mappedProfile={systemvoice:f,collectionvoice:h};break}}else{c.mappedProfile={systemvoice:{},collectionvoice:h};break}}};a.getMatchedVoice=function(b){for(var c=0;c<b.voiceIDs.length;c++){var e=a.getSystemVoice(a.voicecollection[b.voiceIDs[c]].name);if(null!=e)return e}return null};
6394a.getSystemVoice=function(b){var c=String.fromCharCode(160);b=b.replace(new RegExp("\\s+|"+c,"g"),"");if("undefined"===typeof a.systemvoices||null===a.systemvoices)return null;for(var e=0;e<a.systemvoices.length;e++)if(0===a.systemvoices[e].name.replace(new RegExp("\\s+|"+c,"g"),"").localeCompare(b))return a.systemvoices[e];return null};a.getResponsiveVoice=function(b){for(var c=0;c<a.responsivevoices.length;c++)if(a.responsivevoices[c].name==b)return!0===a.responsivevoices[c].mappedProfile.collectionvoice.fallbackvoice||!0===a.fallbackMode?(a.fallbackMode=!0,a.fallback_parts=[]):a.fallbackMode=!1,a.responsivevoices[c];return null};a.Dispatch=function(b){if(a.hasOwnProperty(b+"_callbacks")&&null!=a[b+"_callbacks"]&&0<a[b+"_callbacks"].length){for(var c=a[b+"_callbacks"],e=0;e<c.length;e++)c[e]();return!0}var h=b+"_callbacks_timeout",f=b+"_callbacks_timeoutCount";a.hasOwnProperty(h)||(a[f]=10,a[h]=setInterval(function(){--a[f];(a.Dispatch(b)||0>a[f])&&clearTimeout(a[h])},50));return!1};a.AddEventListener=function(b,c){a.hasOwnProperty(b+"_callbacks")||(a[b+"_callbacks"]=[]);a[b+"_callbacks"].push(c)};a.addEventListener=a.AddEventListener;a.clickEvent=function(){if(a.iOS&&!a.iOS_initialized){a.log("Initializing iOS click event");var b=new SpeechSynthesisUtterance(" ");speechSynthesis.speak(b);a.iOS_initialized=!0}};a.isPlaying=function(){return a.fallbackMode?null!=a.fallback_audio&&!a.fallback_audio.ended&&!a.fallback_audio.paused:speechSynthesis.speaking};a.clearFallbackPool=function(){for(var b=0;b<a.fallback_audiopool.length;b++)null!=a.fallback_audiopool[b]&&(a.fallback_audiopool[b].pause(),a.fallback_audiopool[b].src="");a.fallback_audiopool=[]};"complete"===document.readyState?a.init():document.addEventListener("DOMContentLoaded",function(){a.init()});a.selectBest=function(a){for(var b=0;b<a.length;b++)if(null!=a[b])return a[b];return null};a.pause=function(){a.fallbackMode?null!=a.fallback_audio&&a.fallback_audio.pause():speechSynthesis.pause()};a.resume=function(){a.fallbackMode?null!=a.fallback_audio&&a.fallback_audio.play():speechSynthesis.resume()};a.tts_speak=function(b){setTimeout(function(){a.cancelled=!1;speechSynthesis.speak(b)},.01)};a.setVolume=function(b){if(a.isPlaying())if(a.fallbackMode){for(var c=0;c<a.fallback_parts.length;c++)a.fallback_parts[c].volume=b;for(c=0;c<a.fallback_audiopool.length;c++)a.fallback_audiopool[c].volume=b;a.fallback_audio.volume=b}else for(c=0;c<a.utterances.length;c++)a.utterances[c].volume=b};a.onPartEnd=function(b){if(null!=a.msgparameters&&null!=a.msgparameters.onchuckend)a.msgparameters.onchuckend();a.Dispatch("OnPartEnd");b=a.utterances.indexOf(b.utterance);a.currentMsg=a.utterances[b+1]};a.onboundary=function(b){a.log("On Boundary");a.iOS&&!a.onstartFired&&a.speech_onstart()};a.numToWords=function(b){function c(a){if(Array.isArray(a)){for(var b=0,c=Array(a.length);b<a.length;b++)c[b]=a[b];return c}return Array.from(a)}var e=function(){return function(a,b){if(Array.isArray(a))return a;if(Symbol.iterator in Object(a)){var c=[],d=!0,e=!1,f=void 0;try{for(var g=a[Symbol.iterator](),h;!(d=(h=g.next()).done)&&(c.push(h.value),!b||c.length!==b);d=!0);}catch(r){e=!0,f=r}finally{try{if(!d&&g["return"])g["return"]()}finally{if(e)throw f}}return c}throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),h=function(a){return 0===a.length},f=function(a){return function(b){return b.slice(0,a)}},g=function(a){return function(b){return b.slice(a)}},d=function(a){return a.slice(0).reverse()},k=function(a){return function(b){return function(c){return a(b(c))}}},l=function(a){return!a},m=function q(a){return function(b){return h(b)?[]:[f(a)(b)].concat(c(q(a)(g(a)(b))))}},n=" one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen".split(" "),p="  twenty thirty forty fifty sixty seventy eighty ninety".split(" "),t=" thousand million billion trillion quadrillion quintillion sextillion septillion octillion nonillion".split(" "),u=function(a){var b=e(a,3);a=b[0];var c=b[1],b=b[2];return[0===(Number(b)||0)?"":n[b]+" hundred ",0===(Number(a)||0)?p[c]:p[c]&&p[c]+"-"||"",n[c+a]||n[a]].join("")},v=function(a,b){return""===a?a:a+" "+t[b]};return"number"===typeof b?a.numToWords(String(b)):"0"===b?"zero":k(m(3))(d)(Array.from(b)).map(u).map(v).filter(k(l)(h)).reverse().join(" ").trim()};a.getWords=function(b){for(var c=b.split(/\s+/),e=0;e<c.length;e++)null!=(b=c[e].toString().match(/\d+/))&&(c.splice(e,1),a.numToWords(+b[0]).split(/\s+/).map(function(a){c.push(a)}));return c};a.getEstimatedTimeLength=function(b,c){var e=a.getWords(b),h=0,f=a.fallbackMode?1300:700;c=c||1;e.map(function(a,b){h+=(a.toString().match(/[^ ]/gim)||a).length});var g=e.length,d=60/a.WORDS_PER_MINUTE*c*1e3*g;5>g&&(d=c*(f+50*h));a.log("Estimated time length: "+d+" ms, words: ["+e+"], charsCount: "+h);return d}},responsiveVoice=new ResponsiveVoice;var $tpl='<div id="special"><div class="special-panel"><div class="special-font-size"><span>Шрифт:</span> <button title="Маленький шрифт" value="1"><i>A</i></button> <button title="Средний шрифт" value="2"><i>A</i></button> <button title="Большой шрифт" value="3"><i>A</i></button></div><div class="special-color"><span>Цвет:</span> <button title="Цвет черным по белому" value="1"><i>Ц</i></button> <button title="Цвет белым по черному" value="2"><i>Ц</i></button> <button title="Цвет синим по голубому" value="3" i=""><i>Ц</i></button></div><div class="special-images"><span>Изображения:</span> <button title="Выключить/включить изображения"><i></i></button></div><div class="special-audio"><span>Звук:</span> <button title="Включить/выключить воспроизведение текста" value="
vendor: 10,238 bytes, lines 6394-6398
63940"><i></i></button></div><div class="special-settings"><span>Настройки:</span> <button title="Дополнительные настройки"><i></i></button></div><div class="special-quit"><span>Обычная версия:</span> <button title="Обычная версия сайта"><i></i></button></div></div><div id="special-settings-body"><hr/><h2>Настройки шрифта:</h2><div class="special-font-family"><span>Выберите шрифт:</span> <button value="1"><i>Arial</i></button> <button value="2"><i>Times</i></button></div><div class="special-letter-spacing"><span>Интервал между буквами (<em>Кернинг</em>):</span> <button value="1"><i>Стандартный</i></button> <button value="2"><i>Средний</i></button> <button value="3"><i>Большой</i></button></div><div class="special-line-height"><span>Интервал между строками:</span> <button value="1"><i>Стандартный<br/>интервал</i></button> <button value="2"><i>Полуторный<br/>интервал</i></button> <button value="3"><i>Двойной<br/>интервал</i></button></div><h2>Выбор цветовой схемы:</h2><div class="special-color"><button value="1"><i>Черным<br/>по белому</i></button> <button value="2"><i>Белым<br/>по черному</i></button> <button value="3"><i>Темно-синим<br/>по голубому</i></button> <button value="4"><i>Коричневым<br/>по бежевому</i></button> <button value="5"><i>Зеленым<br/>по темно-коричневому</i></button></div><hr/><div class="special-reset"><button><i>Параметры по умолчанию</i></button></div><div class="special-settings-close"><button><i>Закрыть</i></button></div><div class="avtor"><a href="//lidrekon.ru" target="_blank">lidrekon.ru</a></div></div></div>';
6395/* End */
6396;
6397; /* Start:"a:4:{s:4:"full";s:74:"/bitrix/templates/internetclient_pk_s1_new/js/slick.min.js?177747263942863";s:6:"source";s:58:"/bitrix/templates/internetclient_pk_s1_new/js/slick.min.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
6398!function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&&!1===s.options.vertical&&(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots){for(o.$slider.addClass("slick-dotted"),t=i("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&&e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.o
vendor: 3,442 bytes, line 6398
6398ptions.rows>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&&e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&(i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),!0===e.options.accessibility&&e.$dots.off("keydown.slick",e.keyHandler)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide),!0===e.options.accessibility&&(e.$prevArrow&&e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&&e.$nextArrow.off("keydown.slick",e.keyHandler))),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.
6398slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)if(i.slideCount<=i.options.slidesToShow)++o;else for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),!0===n.options.infinite?(n.slideCount>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&&!0===n.options.centerMode&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),!0===n.options.centerMode&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&&!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&&(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=!1===n.options.vertical?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,!0===n.options.variableWidth&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===n.options.centerMode&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow+1),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(n.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2>-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:
6398parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.initADA(),t.options.autoplay&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i>=0&&i<e.slideCount});e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==e.$dots&&(e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){var s=o.indexOf(t);i(this).attr({role:"tabpanel",id:"slick-slide"+e.instanceUid+t,tabindex:-1}),-1!==s&&i(this).attr({"aria-describedby":"slick-slide-control"+e.instanceUid+s})}),e.$dots.attr("role","tablist").find("li").each(function(s){var n=o[s];i(this).attr({role:"presentation"}),i(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+e.instanceUid+s,"aria-controls":"slick-slide"+e.instanceUid+n,"aria-label":s+1+" of "+t,"aria-selected":null,tabindex:"-1"})}).eq(e.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s<n;s++)e.$slides.eq(s).attr("tabindex",0);e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide),!0===i.options.accessibility&&(i.$prevArrow.on("keydown.slick",i.keyHandler),i.$nextArrow.on("keydown.slick",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&&e.$dots.on("keydown.slick",e.keyHandler)),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"}
6398,e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=i(this).attr("data-srcset"),s=i(this).attr("data-sizes")||n.$slider.attr("data-sizes"),r=document.createElement("img");r.onload=function(){e.animate({opacity:0}
vendor: 5,619 bytes, line 6398
6398,100,function(){o&&(e.attr("srcset",o),s&&e.attr("sizes",s)),e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),n.$slider.trigger("lazyLoaded",[n,e,t])})},r.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,e,t])},r.src=t})}var t,o,s,n=this;if(!0===n.options.centerMode?!0===n.options.infinite?s=(o=n.currentSlide+(n.options.slidesToShow/2+1))+n.options.slidesToShow+2:(o=Math.max(0,n.currentSlide-(n.options.slidesToShow/2+1)),s=n.options.slidesToShow/2+1+2+n.currentSlide):(o=n.options.infinite?n.options.slidesToShow+n.currentSlide:n.currentSlide,s=Math.ceil(o+n.options.slidesToShow),!0===n.options.fade&&(o>0&&o--,s<=n.slideCount&&s++)),t=n.$slider.find(".slick-slide").slice(o,s),"anticipated"===n.options.lazyLoad)for(var r=o-1,l=s,d=n.$slider.find(".slick-slide"),a=0;a<n.options.slidesToScroll;a++)r<0&&(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount<=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide>=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&&e(n.$slider.find(".slick-cloned").slice(-1*n.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(e){var t=this;t.unslicked||(t.$slider.trigger("afterChange",[t,e]),t.animating=!1,t.slideCount>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),!0===t.options.accessibility&&(t.initADA(),t.options.focusOnChange&&i(t.$slides.get(t.currentSlide)).attr("tabindex",0).focus()))},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n,r,l=this,d=i("img[data-lazy]",l.$slider);d.length?(t=d.first(),o=t.attr("data-lazy"),s=t.attr("data-srcset"),n=t.attr("data-sizes")||l.$slider.attr("data-sizes"),(r=document.createElement("img")).onload=function(){s&&(t.attr("srcset",s),n&&t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&&l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),l.$slider.trigger("lazyLoadError",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger("allImagesLoaded",[l])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,s.destroy(!0),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,n.hasOwnProperty(e)){for(t=n[e].breakpoint;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount<1||i<0||i>o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};
6398!0===o.options.rtl&&(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&&i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}
6398):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i])},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;if(t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode){var r=n.options.slidesToShow%2==0?1:0;e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")}else i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));"ondemand"!==n.options.lazyLoad&&"anticipated"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e<o+s.slideCount;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));s||(s=0),t.slideCount<=t.options.slidesToShow?t.slideHandler(s,!1,!0):t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,!(!0===a.animating&&!0===a.options.waitForAnimate||!0===a.options.fade&&a.currentSlide===i))if(!1===e&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+
6398o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&&1!==n.length)&&(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&&!l.swiping&&r>4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&&(0===l.currentSlide&&"right"===t||l.currentSlide>=l.getDotCount()&&"left"===t)&&(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),!1===l.options.vertical?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,!0===l.options.verticalSwiping&&(l.swipeLeft=e+o*s),!0!==l.options.fade&&!1!==l.options.touchMove&&(!0===l.animating?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")}
6398,e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find("li").removeClass("slick-active").end(),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});
6399
6400/* End */
6401;
6402; /* Start:"a:4:{s:4:"full";s:65:"/bitrix/templates/internetclient_pk_s1_new/js/f.js?17774726395670";s:6:"source";s:50:"/bitrix/templates/internetclient_pk_s1_new/js/f.js";s:3:"min";s:0:"";s:3:"map";s:0:"";}"*/
6403$("input[type='tel']").mask("+7 (999) 999-99-99");
6404
6405$('.arrow').click(function(e){
6406  $(this).parent('.item').toggleClass('active');
6407  $(this).parent('.item').find('.text').slideToggle();
6408})
6409
6410$(function () {
6411  function checkScroll() {    
6412    if ($(window).width() >= 992) {
6413      if ($(window).scrollTop() > 262) {
6414        $('.extra-header').addClass('scrolled');
6415      } else {
6416        $('.extra-header').removeClass('scrolled');
6417      }
6418    } else {      
6419      $('.extra-header').removeClass('scrolled');
6420    }
6421  }
6422
6423  checkScroll();              
6424  $(window).on('scroll', checkScroll);    
6425  $(window).on('resize', checkScroll);
6426});
6427
6428$('.nav-ico').click(function(e){
6429  e.stopPropagation();
6430  $('body').toggleClass('js-open');
6431})
6432
6433$('.programm-card-btn').click(function(e){
6434  e.stopPropagation();
6435  $(this).parent('.programm-card').toggleClass('js-active');
6436})
6437
6438$('#open-programm').on('click', function (e) {
6439  e.preventDefault();
6440  $('.programm-wrapper').toggleClass('js-opened');
6441  $(this).text( $(this).text() === 'Показать все курсы' ? 'Скрыть все курсы' : 'Показать все курсы' );
6442});
6443
6444$('.footer_title').click(function(e){
6445  e.stopPropagation();
6446  $(this).toggleClass('js-active');
6447})
6448
6449$(function () {
6450  function bindClick() {
6451    if ($(window).width() <= 991) {
6452      $('ul li.has-menu > a').off('click').on('click', function (e) {
6453        e.preventDefault();  
6454       
6455        $('ul li.has-menu > a').not(this).parent('.has-menu').removeClass('active');
6456       
6457        $(this).parent('.has-menu').toggleClass('active');
6458      });
6459    } else {     
6460      $('ul li.has-menu > a').off('click').parent('.has-menu').removeClass('active');
6461    }
6462  }
6463
6464  bindClick();                    
6465  $(window).on('resize', bindClick);
6466});
6467
6468// modal code
6469$(function(){
6470  $('#openModal').on('click', function(){
6471    
6472    var $overlay = $('<div class="modal-overlay"></div>');
6473    $('body').append($overlay);
6474
6475    var $modal = $('.modal-box');
6476    $modal.show(); 
6477    
6478    setTimeout(function(){
6479      $overlay.addClass('active');
6480      $modal.addClass('active');
6481    }, 10);
6482
6483    
6484    $overlay.add($modal.find('.modal-close')).on('click', function(e){
6485      $overlay.removeClass('active');
6486      $modal.removeClass('active');
6487      setTimeout(function(){
6488        $overlay.remove();
6489        $modal.hide();
6490      }, 300);
6491    });
6492  });
6493});
6494
6495// input code here
6496
6497$(function(){
6498  function toggleClass($input){
6499    var $group = $input.closest('.form-group');
6500    if ($input.is(':focus') || $input.val().trim() !== ''){
6501      $group.addClass('filled');
6502    } else {
6503      $group.removeClass('filled');
6504    }
6505  }
6506
6507  $('.form-control').each(function(){
6508    toggleClass($(this)); 
6509  });
6510
6511  $('.form-control').on('focus blur input', function(){
6512    toggleClass($(this));
6513  });
6514});
6515
6516
6517function initWayRowSlider() {
6518  if (window.innerWidth <= 578) {
6519    if (!$('.way-row').hasClass('slick-initialized')) {
6520      $('.way-row').slick({
6521        slidesToShow: 1,
6522        centerMode: false,
6523        infinite: false,
6524        arrows: false,
6525        dots: true,
6526      });
6527    }
6528  } else {
6529    if ($('.way-row').hasClass('slick-initialized')) {
6530      $('.way-row').slick('unslick');
6531    }
6532  }
6533}
6534initWayRowSlider();
6535$(window).on('resize', initWayRowSlider);
6536
6537function initPartnersRowSlider() {
6538  if (window.innerWidth <= 992) {
6539    if (!$('.partners-row').hasClass('slick-initialized')) {
6540      $('.partners-row').slick({
6541        slidesToShow: 2,
6542        centerMode: false,
6543        infinite: false,
6544        arrows: false,
6545        dots: true,
6546        responsive: [
6547          {
6548            breakpoint: 576,
6549            settings: {
6550              slidesToShow: 1,
6551              slidesToScroll: 1
6552            }
6553          }
6554        ]
6555      });
6556    }
6557  } else {
6558    if ($('.partners-row').hasClass('slick-initialized')) {
6559      $('.partners-row').slick('unslick');
6560    }
6561  }
6562}
6563initPartnersRowSlider();
6564$(window).on('resize', initPartnersRowSlider);
6565
6566
6567
6568var btn = $('#button');
6569
6570btn.on('click', function(e) {
6571  e.preventDefault();
6572  $('html, body').animate({scrollTop:0}, '300');
6573});
6574
6575
6576// anchor list
6577
6578document.addEventListener("DOMContentLoaded", () => {
6579  const links = document.querySelectorAll(".content-list a");
6580  const sections = [...links].map(link => document.querySelector(link.getAttribute("href")));
6581
6582  const observer = new IntersectionObserver((entries) => {
6583    entries.forEach(entry => {
6584      const id = entry.target.getAttribute("id");
6585
6586      if (entry.isIntersecting) {
6587        links.forEach(link => link.classList.remove("active"));
6588        const activeLink = document.querySelector(`.content-list a[href="#${id}"]`);
6589        activeLink?.classList.add("active");
6590      }
6591    });
6592  }, {
6593    threshold: 0.3  
6594  });
6595
6596  sections.forEach(sec => observer.observe(sec));
6597});
6598
6599$('.client-slider').slick({
6600  dots: false,
6601  arrows: true,
6602  infinite: true,
6603  speed: 300,
6604  slidesToShow: 4,
6605  slidesToScroll: 1,
6606  responsive: [
6607    {
6608      breakpoint: 1024,
6609      settings: {
6610        slidesToShow: 3,
6611        arrows: false,
6612        dots: true
6613      }
6614    },
6615    // {
6616    //   breakpoint: 600,
6617    //   settings: {
6618    //     slidesToShow: 2,
6619    //     slidesToScroll: 2
6620    //   }
6621    // },
6622    {
6623      breakpoint: 480,
6624      settings: {
6625        slidesToShow: 2,
6626        arrows: false,
6627        dots: true
6628      }
6629    }
6630  ]
6631});
6632
6633
6634
6635$('.licenses-slider').slick({
6636  slidesToShow: 3,
6637  slidesToScroll: 1,
6638  responsive: [
6639    {
6640      breakpoint: 1024,
6641      settings: {
6642        slidesToShow: 2,
6643        slidesToScroll: 1				
6644      }
6645    },		
6646    {
6647      breakpoint: 575,
6648      settings: {
6649        slidesToShow: 1,
6650        slidesToScroll: 1				
6651      }
6652    },
6653  ]
6654})
6655/* End */
6656;
6657; /* Start:"a:4:{s:4:"full";s:114:"/bitrix/templates/internetclient_pk_s1_new/components/bitrix/search.suggest.input/new/script.min.js?17774726387997";s:6:"source";s:95:"/bitrix/templates/internetclient_pk_s1_new/components/bitrix/search.suggest.input/new/script.js";s:3:"min";
6657s:99:"/bitrix/templates/internetclient_pk_s1_new/components/bitrix/search.suggest.input/new/script.min.js";s:3:"map";s:99:"/bitrix/templates/internetclient_pk_s1_new/components/bitrix/search.suggest.input/new/script.map.js";}"*/
6658function JsSuggest(oHandler,sParams,sParser){var t=this;t.oObj=oHandler;t.sParams=sParams;if(sParser){t.sExp=new RegExp("["+sParser+"]+","i")}else{t.sExp=new RegExp(",")}t.oLast={str:false,arr:false};t.oThis={str:false,arr:false};t.oEl={start:false,end:false};t.oUnfinedWords={};t.bReady=true;t.eFocus=true;t.aDiv=null;t.oDiv=null;t.oActive=null;t.oPointer=[];t.oPointer_default=[];t.oPointer_this="input_field";t.oObj.onblur=function(){t.eFocus=false};t.oObj.onfocus=function(){if(!t.eFocus){t.eFocus=true;setTimeout((function(){t.CheckModif("focus")}),500)}};t.oLast["arr"]=t.oObj.value.split(t.sExp);t.oLast["str"]=t.oLast["arr"].join(":");setTimeout((function(){t.CheckModif("this")}),500);this.CheckModif=function(e){var o=false;var r=0;var n=false;var i="";var s={};if(!t.eFocus){return}if(t.bReady&&t.oObj.value.length>0){t.oThis["arr"]=t.oObj.value.split(t.sExp);t.oThis["str"]=t.oThis["arr"].join(":");if(t.oThis["str"]&&t.oThis["str"]!=t.oLast["str"]){s["position"]=TCJsUtils.getCursorPosition(t.oObj);if(s["position"]["end"]>0&&!t.sExp.test(t.oObj.value.substr(s["position"]["end"]-1,1))){s["arr"]=t.oObj.value.substr(0,s["position"]["end"]).split(t.sExp);o=t.oThis["arr"][s["arr"].length-1];t.oEl["start"]=s["position"]["end"]-s["arr"][s["arr"].length-1].length;t.oEl["end"]=t.oEl["start"]+o.length;t.oEl["content"]=o;t.oLast["arr"]=t.oThis["arr"];t.oLast["str"]=t.oThis["str"]}}if(o){for(r=2;r<=o.length;r++){i=o.substr(0,r);if(t.oUnfinedWords[i]=="!fined"){n=true;break}}if(!n){t.Send(o)}}}setTimeout((function(){t.CheckModif("this")}),500)};t.Send=function(sSearch){if(!sSearch){return}var oError=[];t.bReady=false;if(BX("wait_container")){BX("wait_container").innerHTML=BX.message("JS_CORE_LOADING");BX.show(BX("wait_container"))}BX.ajax.post("/bitrix/components/bitrix/search.suggest.input/search.php",{search:sSearch,params:t.sParams},(function(data){var result={};t.bReady=true;try{eval("result = "+data+";")}catch(t){oError["result_unval"]=t}if(TCJsUtils.empty(result)){oError["result_empty"]="Empty result"}try{if(TCJsUtils.empty(oError)&&typeof result=="object"){if(!(result.length==1&&result[0]["NAME"]==t.oEl["content"])){t.Show(result);return}}else{t.oUnfinedWords[t.oEl["content"]]="!fined"}}catch(t){oError["unknown_error"]=t}if(BX("wait_container")){BX.hide(BX("wait_container"))}}))};t.Show=function(e){t.Destroy();t.oDiv=document.body.appendChild(document.createElement("DIV"));t.oDiv.id=t.oObj.id+"_div";t.oDiv.className="search-popup";t.oDiv.style.position="absolute";t.aDiv=t.Print(e);var o=TCJsUtils.GetRealPos(t.oObj);t.oDiv.style.width=parseInt(o["width"],10)+"px";TCJsUtils.show(t.oDiv,o["left"],o["bottom"]);TCJsUtils.addEvent(document,"click",t.CheckMouse);TCJsUtils.addEvent(document,"keydown",t.CheckKeyword)};t.Print=function(e){var o=null;var r={};var n=0;var i=null;var s=null;var a=t.oDiv.id;for(var l in e){if(e.hasOwnProperty(l)){o=e[l];var c={};c["ID"]=o["ID"]&&o["ID"].length>0?o["ID"]:n++;c["GID"]=a+"_"+c["ID"];c["NAME"]=TCJsUtils.htmlspecialcharsEx(o["NAME"]);c["CNT"]=o["CNT"];r[c["GID"]]=c;t.oPointer.push(c["GID"]);i=t.oDiv.appendChild(document.createElement("DIV"));i.id=c["GID"];i.name=a+"_div";i.className="search-popup-row";i.onmouseover=function(){t.Init();this.className="search-popup-row-active"};i.onmouseout=function(){t.Init();this.className="search-popup-row"};i.onclick=function(){t.oActive=this.id};s=i.appendChild(document.createElement("DIV"));s.id=i.id+"_NAME";s.className="search-popup-el search-popup-el-cnt";s.innerHTML=c["CNT"];s=i.appendChild(document.createElement("DIV"));s.id=i.id+"_NAME";s.className="search-popup-el search-popup-el-name";s.innerHTML=c["NAME"]}}t.oPointer.push("input_field");t.oPointer_default=t.oPointer;return r};t.Destroy=function(){try{TCJsUtils.hide(t.oDiv);t.oDiv.parentNode.removeChild(t.oDiv)}catch(t){}t.aDiv=[];t.oPointer=[];t.oPointer_default=[];t.oPointer_this="input_field";t.bReady=true;t.eFocus=true;t.oActive=null;TCJsUtils.removeEvent(document,"click",t.CheckMouse);TCJsUtils.removeEvent(document,"keydown",t.CheckKeyword)};t.Replace=function(){if(typeof t.oActive=="string"){var e=t.aDiv[t.oActive];var o="";if(typeof e=="object"){var r=document.createElement("span");r.innerHTML=e["NAME"].replaceAll("&quot;",'"').replaceAll("&amp;","&");o=r.innerHTML}var n=t.oEl["start"];while(n<t.oObj.value.length&&t.oObj.value.substring(n,n+1)==" "){n++}t.oObj.value=t.oObj.value.substring(0,n)+o.replaceAll("&lt;","<").replaceAll("&gt;",">")+t.oObj.value.substr(t.oEl["end"]);TCJsUtils.setCursorPosition(t.oObj,n+o.length)}};t.Init=function(){t.oActive=false;t.oPointer=t.oPointer_default;t.Clear();t.oPointer_this="input_pointer"};t.Clear=function(){var e=t.oDiv.getElementsByTagName("div");if(e.length>0&&typeof e=="object"){for(var o in e){if(e.hasOwnProperty(o)){var r=e[o];if(r&&typeof r=="object"&&r.name==t.oDiv.id+"_div"){r.className="search-popup-row"}}}}};t.CheckMouse=function(){t.Replace();t.Destroy()};t.CheckKeyword=function(e){var o=e||window.event;var r=null;var n=null;if(o.keyCode>37&&o.keyCode<41||o.keyCode==13){t.Clear();switch(o.keyCode){case 38:r=t.oPointer.pop();if(t.oPointer_this==r){t.oPointer.unshift(r);r=t.oPointer.pop()}if(r!="input_field"){t.oActive=r;n=document.getElementById(r);if(typeof n=="object"){n.className="search-popup-row-active"}}t.oPointer.unshift(r);break;case 40:r=t.oPointer.shift();if(t.oPointer_this==r){t.oPointer.push(r);r=t.oPointer.shift()}if(r!="input_field"){t.oActive=r;n=document.getElementById(r);if(typeof n=="object"){n.className="search-popup-row-active"}}t.oPointer.push(r);break;case 39:case 13:t.Replace();t.Destroy();break;default:break}t.oPointer_this=r}else{t.Destroy()}}}
6658var TCJsUtils={arEvents:[],addEvent:function(t,e,o){if(t.attachEvent){t.attachEvent("on"+e,o)}else if(t.addEventListener){t.addEventListener(e,o,false)}else{t["on"+e]=o}this.arEvents[this.arEvents.length]={element:t,event:e,fn:o}},removeEvent:function(t,e,o){if(t.detachEvent){t.detachEvent("on"+e,o)}else if(t.removeEventListener){t.removeEventListener(e,o,false)}else{t["on"+e]=null}},getCursorPosition:function(t){var e={start:0,end:0};if(!t||typeof t!="object"){return e}try{if(document.selection!=null&&t.selectionStart==null){t.focus();var o=document.selection.createRange();var r=o.parentElement();var n=o.getBookmark();var i=t.value;var s=t.value;var a="__"+Math.random()+"__";while(i.indexOf(a)!=-1){a="__"+Math.random()+"__"}if(!r||r==null||r.type!="textarea"&&r.type!="text"){return e}o.text=a+o.text+a;i=t.value;e["start"]=i.indexOf(a);i=i.replace(a,"");e["end"]=i.indexOf(a);t.value=s;o.moveToBookmark(n);o.select();return e}return{start:t.selectionStart,end:t.selectionEnd}}catch{return e}},setCursorPosition:function(t,e){if(typeof t!="object"){return false}t.focus();try{if(document.selection!=null&&t.selectionStart==null){var o=document.selection.createRange();o.select()}else{t.selectionStart=e;t.selectionEnd=e}return true}catch{return false}},empty:function(t){var e=true;if(t){for(var o in t){if(t.hasOwnProperty(o)){e=false;break}}}return e},show:function(t,e,o){if(typeof t!="object"){return}var r=parseInt(t.style.zIndex,10);if(r<=0||isNaN(r)){r=100}t.style.zIndex=r;t.style.left=e+"px";t.style.top=o+"px"},hide:function(t){if(t){t.style.display="none"}},GetRealPos:function(t){if(!t||!t.offsetParent){return false}var e={};var o=t.offsetParent;e["left"]=t.offsetLeft;e["top"]=t.offsetTop;while(o&&o.tagName!="BODY"){e["left"]+=o.offsetLeft;e["top"]+=o.offsetTop;o=o.offsetParent}e["right"]=e["left"]+t.offsetWidth;e["bottom"]=e["top"]+t.offsetHeight;e["width"]=t.offsetWidth;e["height"]=t.offsetHeight;return e},htmlspecialcharsEx:function(t){return t.replaceAll("&amp;","&amp;amp;").replaceAll("&lt;","&amp;lt;").replaceAll("&gt;","&amp;gt;").replaceAll("&quot;","&amp;quot;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;")},htmlspecialcharsback:function(t){return t.replaceAll("&lt;","<").replaceAll("&gt;",">").replaceAll("&quot;",'"').replaceAll("&amp;","&")}};
6659/* End */
6660;
6661; /* Start:"a:4:{s:4:"full";s:94:"/bitrix/components/bitrix/search.suggest.input/templates/.default/script.min.js?17774726357997";s:6:"source";s:75:"/bitrix/components/bitrix/search.suggest.input/templates/.default/script.js";s:3:"min";s:79:"/bitrix/components/bitrix/search.suggest.input/templates/.default/script.min.js";s:3:"map";s:79:"/bitrix/components/bitrix/search.suggest.input/templates/.default/script.map.js";}"*/
6662function JsSuggest(oHandler,sParams,sParser){var t=this;t.oObj=oHandler;t.sParams=sParams;if(sParser){t.sExp=new RegExp("["+sParser+"]+","i")}else{t.sExp=new RegExp(",")}t.oLast={str:false,arr:false};t.oThis={str:false,arr:false};t.oEl={start:false,end:false};t.oUnfinedWords={};t.bReady=true;t.eFocus=true;t.aDiv=null;t.oDiv=null;t.oActive=null;t.oPointer=[];t.oPointer_default=[];t.oPointer_this="input_field";t.oObj.onblur=function(){t.eFocus=false};t.oObj.onfocus=function(){if(!t.eFocus){t.eFocus=true;setTimeout((function(){t.CheckModif("focus")}),500)}};t.oLast["arr"]=t.oObj.value.split(t.sExp);t.oLast["str"]=t.oLast["arr"].join(":");setTimeout((function(){t.CheckModif("this")}),500);this.CheckModif=function(e){var o=false;var r=0;var n=false;var i="";var s={};if(!t.eFocus){return}if(t.bReady&&t.oObj.value.length>0){t.oThis["arr"]=t.oObj.value.split(t.sExp);t.oThis["str"]=t.oThis["arr"].join(":");if(t.oThis["str"]&&t.oThis["str"]!=t.oLast["str"]){s["position"]=TCJsUtils.getCursorPosition(t.oObj);if(s["position"]["end"]>0&&!t.sExp.test(t.oObj.value.substr(s["position"]["end"]-1,1))){s["arr"]=t.oObj.value.substr(0,s["position"]["end"]).split(t.sExp);o=t.oThis["arr"][s["arr"].length-1];t.oEl["start"]=s["position"]["end"]-s["arr"][s["arr"].length-1].length;t.oEl["end"]=t.oEl["start"]+o.length;t.oEl["content"]=o;t.oLast["arr"]=t.oThis["arr"];t.oLast["str"]=t.oThis["str"]}}if(o){for(r=2;r<=o.length;r++){i=o.substr(0,r);if(t.oUnfinedWords[i]=="!fined"){n=true;break}}if(!n){t.Send(o)}}}setTimeout((function(){t.CheckModif("this")}),500)};t.Send=function(sSearch){if(!sSearch){return}var oError=[];t.bReady=false;if(BX("wait_container")){BX("wait_container").innerHTML=BX.message("JS_CORE_LOADING");BX.show(BX("wait_container"))}BX.ajax.post("/bitrix/components/bitrix/search.suggest.input/search.php",{search:sSearch,params:t.sParams},(function(data){var result={};t.bReady=true;try{eval("result = "+data+";")}catch(t){oError["result_unval"]=t}if(TCJsUtils.empty(result)){oError["result_empty"]="Empty result"}try{if(TCJsUtils.empty(oError)&&typeof result=="object"){if(!(result.length==1&&result[0]["NAME"]==t.oEl["content"])){t.Show(result);return}}else{t.oUnfinedWords[t.oEl["content"]]="!fined"}}catch(t){oError["unknown_error"]=t}if(BX("wait_container")){BX.hide(BX("wait_container"))}}))};t.Show=function(e){t.Destroy();t.oDiv=document.body.appendChild(document.createElement("DIV"));t.oDiv.id=t.oObj.id+"_div";t.oDiv.className="search-popup";t.oDiv.style.position="absolute";t.aDiv=t.Print(e);var o=TCJsUtils.GetRealPos(t.oObj);t.oDiv.style.width=parseInt(o["width"],10)+"px";TCJsUtils.show(t.oDiv,o["left"],o["bottom"]);TCJsUtils.addEvent(document,"click",t.CheckMouse);TCJsUtils.addEvent(document,"keydown",t.CheckKeyword)};t.Print=function(e){var o=null;var r={};var n=0;var i=null;var s=null;var a=t.oDiv.id;for(var l in e){if(e.hasOwnProperty(l)){o=e[l];var c={};c["ID"]=o["ID"]&&o["ID"].length>0?o["ID"]:n++;c["GID"]=a+"_"+c["ID"];c["NAME"]=TCJsUtils.htmlspecialcharsEx(o["NAME"]);c["CNT"]=o["CNT"];r[c["GID"]]=c;t.oPointer.push(c["GID"]);i=t.oDiv.appendChild(document.createElement("DIV"));i.id=c["GID"];i.name=a+"_div";i.className="search-popup-row";i.onmouseover=function(){t.Init();this.className="search-popup-row-active"};i.onmouseout=function(){t.Init();this.className="search-popup-row"};i.onclick=function(){t.oActive=this.id};s=i.appendChild(document.createElement("DIV"));s.id=i.id+"_NAME";s.className="search-popup-el search-popup-el-cnt";s.innerHTML=c["CNT"];s=i.appendChild(document.createElement("DIV"));s.id=i.id+"_NAME";s.className="search-popup-el search-popup-el-name";s.innerHTML=c["NAME"]}}t.oPointer.push("input_field");t.oPointer_default=t.oPointer;return r};t.Destroy=function(){try{TCJsUtils.hide(t.oDiv);t.oDiv.parentNode.removeChild(t.oDiv)}catch(t){}t.aDiv=[];t.oPointer=[];t.oPointer_default=[];t.oPointer_this="input_field";t.bReady=true;t.eFocus=true;t.oActive=null;TCJsUtils.removeEvent(document,"click",t.CheckMouse);TCJsUtils.removeEvent(document,"keydown",t.CheckKeyword)};t.Replace=function(){if(typeof t.oActive=="string"){var e=t.aDiv[t.oActive];var o="";if(typeof e=="object"){var r=document.createElement("span");r.innerHTML=e["NAME"].replaceAll("&quot;",'"').replaceAll("&amp;","&");o=r.innerHTML}var n=t.oEl["start"];while(n<t.oObj.value.length&&t.oObj.value.substring(n,n+1)==" "){n++}t.oObj.value=t.oObj.value.substring(0,n)+o.replaceAll("&lt;","<").replaceAll("&gt;",">")+t.oObj.value.substr(t.oEl["end"]);TCJsUtils.setCursorPosition(t.oObj,n+o.length)}};t.Init=function(){t.oActive=false;t.oPointer=t.oPointer_default;t.Clear();t.oPointer_this="input_pointer"};t.Clear=function(){var e=t.oDiv.getElementsByTagName("div");if(e.length>0&&typeof e=="object"){for(var o in e){if(e.hasOwnProperty(o)){var r=e[o];if(r&&typeof r=="object"&&r.name==t.oDiv.id+"_div"){r.className="search-popup-row"}}}}};t.CheckMouse=function(){t.Replace();t.Destroy()};t.CheckKeyword=function(e){var o=e||window.event;var r=null;var n=null;if(o.keyCode>37&&o.keyCode<41||o.keyCode==13){t.Clear();switch(o.keyCode){case 38:r=t.oPointer.pop();if(t.oPointer_this==r){t.oPointer.unshift(r);r=t.oPointer.pop()}if(r!="input_field"){t.oActive=r;n=document.getElementById(r);if(typeof n=="object"){n.className="search-popup-row-active"}}t.oPointer.unshift(r);break;case 40:r=t.oPointer.shift();if(t.oPointer_this==r){t.oPointer.push(r);r=t.oPointer.shift()}if(r!="input_field"){t.oActive=r;n=document.getElementById(r);if(typeof n=="object"){n.className="search-popup-row-active"}}t.oPointer.push(r);break;case 39:case 13:t.Replace();t.Destroy();break;default:break}t.oPointer_this=r}else{t.Destroy()}}}
6662var TCJsUtils={arEvents:[],addEvent:function(t,e,o){if(t.attachEvent){t.attachEvent("on"+e,o)}else if(t.addEventListener){t.addEventListener(e,o,false)}else{t["on"+e]=o}this.arEvents[this.arEvents.length]={element:t,event:e,fn:o}},removeEvent:function(t,e,o){if(t.detachEvent){t.detachEvent("on"+e,o)}else if(t.removeEventListener){t.removeEventListener(e,o,false)}else{t["on"+e]=null}},getCursorPosition:function(t){var e={start:0,end:0};if(!t||typeof t!="object"){return e}try{if(document.selection!=null&&t.selectionStart==null){t.focus();var o=document.selection.createRange();var r=o.parentElement();var n=o.getBookmark();var i=t.value;var s=t.value;var a="__"+Math.random()+"__";while(i.indexOf(a)!=-1){a="__"+Math.random()+"__"}if(!r||r==null||r.type!="textarea"&&r.type!="text"){return e}o.text=a+o.text+a;i=t.value;e["start"]=i.indexOf(a);i=i.replace(a,"");e["end"]=i.indexOf(a);t.value=s;o.moveToBookmark(n);o.select();return e}return{start:t.selectionStart,end:t.selectionEnd}}catch{return e}},setCursorPosition:function(t,e){if(typeof t!="object"){return false}t.focus();try{if(document.selection!=null&&t.selectionStart==null){var o=document.selection.createRange();o.select()}else{t.selectionStart=e;t.selectionEnd=e}return true}catch{return false}},empty:function(t){var e=true;if(t){for(var o in t){if(t.hasOwnProperty(o)){e=false;break}}}return e},show:function(t,e,o){if(typeof t!="object"){return}var r=parseInt(t.style.zIndex,10);if(r<=0||isNaN(r)){r=100}t.style.zIndex=r;t.style.left=e+"px";t.style.top=o+"px"},hide:function(t){if(t){t.style.display="none"}},GetRealPos:function(t){if(!t||!t.offsetParent){return false}var e={};var o=t.offsetParent;e["left"]=t.offsetLeft;e["top"]=t.offsetTop;while(o&&o.tagName!="BODY"){e["left"]+=o.offsetLeft;e["top"]+=o.offsetTop;o=o.offsetParent}e["right"]=e["left"]+t.offsetWidth;e["bottom"]=e["top"]+t.offsetHeight;e["width"]=t.offsetWidth;e["height"]=t.offsetHeight;return e},htmlspecialcharsEx:function(t){return t.replaceAll("&amp;","&amp;amp;").replaceAll("&lt;","&amp;lt;").replaceAll("&gt;","&amp;gt;").replaceAll("&quot;","&amp;quot;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;")},htmlspecialcharsback:function(t){return t.replaceAll("&lt;","<").replaceAll("&gt;",">").replaceAll("&quot;",'"').replaceAll("&amp;","&")}};
6663/* End */
6664;; /* /bitrix/templates/internetclient_pk_s1_new/vendor/jquery-2.1.4.min.js?177747263984345*/
6665; /* /bitrix/templates/internetclient_pk_s1_new/vendor/modernizr-2.8.3.min.js?177747263915514*/
6666; /* /bitrix/templates/internetclient_pk_s1_new/vendor/fancybox/jquery.fancybox.rutube.js?1777472639157077*/
6667; /* /bitrix/templates/internetclient_pk_s1_new/vendor/bxslider/jquery.bxslider.min.js?177747263919359*/
6668; /* /bitrix/templates/internetclient_pk_s1_new/vendor/jquery.jcarousel.min.js?177747263918123*/
6669; /* /bitrix/templates/internetclient_pk_s1_new/js/owl.carousel.min.js?177747263942766*/
6670; /* /bitrix/templates/internetclient_pk_s1_new/js/jquery.maskedinput.min.js?17774726393568*/
6671; /* /bitrix/templates/internetclient_pk_s1_new/js/webfontloader.js?177747263912522*/
6672; /* /bitrix/templates/internetclient_pk_s1_new/js/main.js?177747263921863*/
6673; /* /bitrix/templates/internetclient_pk_s1_new/js/uhpv-full.min.js?177747263944198*/
6674; /* /bitrix/templates/internetclient_pk_s1_new/js/slick.min.js?177747263942863*/
6675; /* /bitrix/templates/internetclient_pk_s1_new/js/f.js?17774726395670*/
6676; /* /bitrix/templates/internetclient_pk_s1_new/components/bitrix/search.suggest.input/new/script.min.js?17774726387997*/
6677; /* /bitrix/components/bitrix/search.suggest.input/templates/.default/script.min.js?17774726357997*/
6678
6679//# sourceMappingURL=template_138b8e62b853e5fb996587bf8af7d80c.map.js

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.