2017-02-28 16:06:18 +01:00
/ * !
2018-11-26 14:17:49 +01:00
* Minimal Mistakes Jekyll Theme 4.14 . 1 by Michael Rose
2018-01-05 04:52:11 +01:00
* Copyright 2013 - 2018 Michael Rose - mademistakes . com | @ mmistakes
2017-02-28 16:06:18 +01:00
* Licensed under MIT
* /
2018-11-26 14:17:49 +01:00
! function ( e , t ) { "use strict" ; "object" == typeof module && "object" == typeof module . exports ? module . exports = e . document ? t ( e , ! 0 ) : function ( e ) { if ( ! e . document ) throw new Error ( "jQuery requires a window with a document" ) ; return t ( e ) } : t ( e ) } ( "undefined" != typeof window ? window : this , function ( e , t ) { "use strict" ; function n ( e , t , n ) { var r , i = ( t = t || ae ) . createElement ( "script" ) ; if ( i . text = e , n ) for ( r in be ) n [ r ] && ( i [ r ] = n [ r ] ) ; t . head . appendChild ( i ) . parentNode . removeChild ( i ) } function r ( e ) { return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? de [ pe . call ( e ) ] || "object" : typeof e } function i ( e ) { var t = ! ! e && "length" in e && e . length , n = r ( e ) ; return ! ye ( e ) && ! xe ( e ) && ( "array" === n || 0 === t || "number" == typeof t && t > 0 && t - 1 in e ) } function o ( e , t ) { return e . nodeName && e . nodeName . toLowerCase ( ) === t . toLowerCase ( ) } function a ( e , t , n ) { return ye ( t ) ? we . grep ( e , function ( e , r ) { return ! ! t . call ( e , r , e ) !== n } ) : t . nodeType ? we . grep ( e , function ( e ) { return e === t !== n } ) : "string" != typeof t ? we . grep ( e , function ( e ) { return fe . call ( t , e ) > - 1 !== n } ) : we . filter ( t , e , n ) } function s ( e , t ) { for ( ; ( e = e [ t ] ) && 1 !== e . nodeType ; ) ; return e } function l ( e ) { var t = { } ; return we . each ( e . match ( Le ) || [ ] , function ( e , n ) { t [ n ] = ! 0 } ) , t } function u ( e ) { return e } function c ( e ) { throw e } function f ( e , t , n , r ) { var i ; try { e && ye ( i = e . promise ) ? i . call ( e ) . done ( t ) . fail ( n ) : e && ye ( i = e . then ) ? i . call ( e , t , n ) : t . apply ( void 0 , [ e ] . slice ( r ) ) } catch ( e ) { n . apply ( void 0 , [ e ] ) } } function d ( ) { ae . removeEventListener ( "DOMContentLoaded" , d ) , e . removeEventListener ( "load" , d ) , we . ready ( ) } function p ( e , t ) { return t . toUpperCase ( ) } function h ( e ) { return e . replace ( He , "ms-" ) . replace ( Me , p ) } function m ( ) { this . expando = we . expando + m . uid ++ } function g ( e ) { return "true" === e || "false" !== e && ( "null" === e ? null : e === + e + "" ? + e : Fe . test ( e ) ? JSON . parse ( e ) : e ) } function v ( e , t , n ) { var r ; if ( void 0 === n && 1 === e . nodeType ) if ( r = "data-" + t . replace ( ze , "-$&" ) . toLowerCase ( ) , "string" == typeof ( n = e . getAttribute ( r ) ) ) { try { n = g ( n ) } catch ( e ) { } $e . set ( e , t , n ) } else n = void 0 ; return n } function y ( e , t , n , r ) { var i , o , a = 20 , s = r ? function ( ) { return r . cur ( ) } : function ( ) { return we . css ( e , t , "" ) } , l = s ( ) , u = n && n [ 3 ] || ( we . cssNumber [ t ] ? "" : "px" ) , c = ( we . cssNumber [ t ] || "px" !== u && + l ) && We . exec ( we . css ( e , t ) ) ; if ( c && c [ 3 ] !== u ) { for ( l /= 2 , u = u || c [ 3 ] , c = + l || 1 ; a -- ; ) we . style ( e , t , c + u ) , ( 1 - o ) * ( 1 - ( o = s ( ) / l || . 5 ) ) <= 0 && ( a = 0 ) , c /= o ; c *= 2 , we . style ( e , t , c + u ) , n = n || [ ] } return n && ( c = + c || + l || 0 , i = n [ 1 ] ? c + ( n [ 1 ] + 1 ) * n [ 2 ] : + n [ 2 ] , r && ( r . unit = u , r . start = c , r . end = i ) ) , i } function x ( e ) { var t , n = e . ownerDocument , r = e . nodeName , i = Ye [ r ] ; return i || ( t = n . body . appendChild ( n . createElement ( r ) ) , i = we . css ( t , "display" ) , t . parentNode . removeChild ( t ) , "none" === i && ( i = "block" ) , Ye [ r ] = i , i ) } function b ( e , t ) { for ( var n , r , i = [ ] , o = 0 , a = e . length ; o < a ; o ++ ) ( r = e [ o ] ) . style && ( n = r . style . display , t ? ( "none" === n && ( i [ o ] = Be . get ( r , "display" ) || null , i [ o ] || ( r . style . display = "" ) ) , "" === r . style . display && Xe ( r ) && ( i [ o ] = x ( r ) ) ) : "none" !== n && ( i [ o ] = "none" , Be . set ( r , "display" , n ) ) ) ; for ( o = 0 ; o < a ; o ++ ) null != i [ o ] && ( e [ o ] . style . display = i [ o ] ) ; return e } function w ( e , t ) { var n ; return n = void 0 !== e . getElementsByTagName ? e . getElementsByTagName ( t || "*" ) : void 0 !== e . querySelectorAll ? e . querySelectorAll ( t || "*" ) : [ ] , void 0 === t || t && o ( e , t ) ? we . merge ( [ e ] , n ) : n } function C ( e , t ) { for ( var n = 0 , r = e . length ; n < r ; n ++ ) Be . set ( e [ n ] , "globalEval" , ! t || Be . get ( t [ n ] , "globalEval" ) ) } function T ( e , t , n , i , o ) { for ( var a , s , l , u , c , f , d = t . createDocumentFragment ( ) , p = [ ] , h = 0 , m = e . length ; h < m ; h ++ ) if ( ( a = e [ h ] ) || 0 === a ) if ( "object" === r ( a ) ) we . merge ( p , a . nodeType ? [ a ] : a ) ; else if ( Je . test ( a ) ) { for ( s = s || d . appendChild ( t . createElement ( "div" ) ) , l = ( Ze . exec ( a ) || [ "" , "" ] ) [ 1 ] . toLowerCase ( ) , u = Qe [ l ] || Qe . _default , s . innerHTML = u [ 1 ] + we . htmlPrefilter ( a ) + u [ 2 ] , f = u [ 0 ] ; f -- ; ) s = s . lastChild ; we . merge ( p , s . childNodes ) , ( s = d . firstChild ) . textContent = "" } else p . push ( t . createTextNode ( a ) ) ; for ( d . textContent = "" , h = 0 ; a = p [ h ++ ] ; ) if ( i && we . inArray ( a , i ) > - 1 ) o && o . push ( a ) ; else if ( c = we . contains ( a . ownerDocument , a ) , s = w ( d . appendChild ( a ) , "script" ) , c && C ( s ) , n ) for ( f = 0 ; a = s [ f ++ ] ; ) Ke . test ( a . type || "" ) && n . push ( a ) ; return d } function k ( ) { return ! 0 } function S ( ) { return ! 1 } function E ( ) { try { return ae . activeElement } catch ( e ) { } } function j ( e , t , n , r , i , o ) { var a , s ; if ( "object" == typeof t ) { "string" != typeof n && ( r = r || n , n = void 0 ) ; for ( s in t ) j ( e , s , n , r , t [ s ] , o ) ; return e } if ( null == r && null == i ? ( i = n , r = n = void 0 ) : null == i && ( "string" == typeof n ? ( i = r , r = void 0 ) : ( i = r , r = n , n = void 0 )
for ( e = e . firstChild ; e ; e = e . nextSibling ) if ( e . nodeType < 6 ) return ! 1 ; return ! 0 } , parent : function ( e ) { return ! w . pseudos . empty ( e ) } , header : function ( e ) { return pe . test ( e . nodeName ) } , input : function ( e ) { return de . test ( e . nodeName ) } , button : function ( e ) { var t = e . nodeName . toLowerCase ( ) ; return "input" === t && "button" === e . type || "button" === t } , text : function ( e ) { var t ; return "input" === e . nodeName . toLowerCase ( ) && "text" === e . type && ( null == ( t = e . getAttribute ( "type" ) ) || "text" === t . toLowerCase ( ) ) } , first : l ( function ( ) { return [ 0 ] } ) , last : l ( function ( e , t ) { return [ t - 1 ] } ) , eq : l ( function ( e , t , n ) { return [ n < 0 ? n + t : n ] } ) , even : l ( function ( e , t ) { for ( var n = 0 ; n < t ; n += 2 ) e . push ( n ) ; return e } ) , odd : l ( function ( e , t ) { for ( var n = 1 ; n < t ; n += 2 ) e . push ( n ) ; return e } ) , lt : l ( function ( e , t , n ) { for ( var r = n < 0 ? n + t : n ; -- r >= 0 ; ) e . push ( r ) ; return e } ) , gt : l ( function ( e , t , n ) { for ( var r = n < 0 ? n + t : n ; ++ r < t ; ) e . push ( r ) ; return e } ) } } ) . pseudos . nth = w . pseudos . eq ; for ( x in { radio : ! 0 , checkbox : ! 0 , file : ! 0 , password : ! 0 , image : ! 0 } ) w . pseudos [ x ] = function ( e ) { return function ( t ) { return "input" === t . nodeName . toLowerCase ( ) && t . type === e } } ( x ) ; for ( x in { submit : ! 0 , reset : ! 0 } ) w . pseudos [ x ] = function ( e ) { return function ( t ) { var n = t . nodeName . toLowerCase ( ) ; return ( "input" === n || "button" === n ) && t . type === e } } ( x ) ; return c . prototype = w . filters = w . pseudos , w . setFilters = new c , k = t . tokenize = function ( e , n ) { var r , i , o , a , s , l , u , c = R [ e + " " ] ; if ( c ) return n ? 0 : c . slice ( 0 ) ; for ( s = e , l = [ ] , u = w . preFilter ; s ; ) { r && ! ( i = ae . exec ( s ) ) || ( i && ( s = s . slice ( i [ 0 ] . length ) || s ) , l . push ( o = [ ] ) ) , r = ! 1 , ( i = se . exec ( s ) ) && ( r = i . shift ( ) , o . push ( { value : r , type : i [ 0 ] . replace ( oe , " " ) } ) , s = s . slice ( r . length ) ) ; for ( a in w . filter ) ! ( i = fe [ a ] . exec ( s ) ) || u [ a ] && ! ( i = u [ a ] ( i ) ) || ( r = i . shift ( ) , o . push ( { value : r , type : a , matches : i } ) , s = s . slice ( r . length ) ) ; if ( ! r ) break } return n ? s . length : s ? t . error ( e ) : R ( e , l ) . slice ( 0 ) } , S = t . compile = function ( e , t ) { var n , r = [ ] , i = [ ] , o = W [ e + " " ] ; if ( ! o ) { for ( t || ( t = k ( e ) ) , n = t . length ; n -- ; ) ( o = v ( t [ n ] ) ) [ _ ] ? r . push ( o ) : i . push ( o ) ; ( o = W ( e , y ( i , r ) ) ) . selector = e } return o } , E = t . select = function ( e , t , n , r ) { var i , o , a , s , l , c = "function" == typeof e && e , d = ! r && k ( e = c . selector || e ) ; if ( n = n || [ ] , 1 === d . length ) { if ( ( o = d [ 0 ] = d [ 0 ] . slice ( 0 ) ) . length > 2 && "ID" === ( a = o [ 0 ] ) . type && 9 === t . nodeType && O && w . relative [ o [ 1 ] . type ] ) { if ( ! ( t = ( w . find . ID ( a . matches [ 0 ] . replace ( ve , ye ) , t ) || [ ] ) [ 0 ] ) ) return n ; c && ( t = t . parentNode ) , e = e . slice ( o . shift ( ) . value . length ) } for ( i = fe . needsContext . test ( e ) ? 0 : o . length ; i -- && ( a = o [ i ] , ! w . relative [ s = a . type ] ) ; ) if ( ( l = w . find [ s ] ) && ( r = l ( a . matches [ 0 ] . replace ( ve , ye ) , ge . test ( o [ 0 ] . type ) && u ( t . parentNode ) || t ) ) ) { if ( o . splice ( i , 1 ) , ! ( e = r . length && f ( o ) ) ) return Z . apply ( n , r ) , n ; break } } return ( c || S ( e , d ) ) ( r , t , ! O , n , ! t || ge . test ( e ) && u ( t . parentNode ) || t ) , n } , b . sortStable = _ . split ( "" ) . sort ( U ) . join ( "" ) === _ , b . detectDuplicates = ! ! A , D ( ) , b . sortDetached = i ( function ( e ) { return 1 & e . compareDocumentPosition ( I . createElement ( "fieldset" ) ) } ) , i ( function ( e ) { return e . innerHTML = "<a href='#'></a>" , "#" === e . firstChild . getAttribute ( "href" ) } ) || o ( "type|href|height|width" , function ( e , t , n ) { if ( ! n ) return e . getAttribute ( t , "type" === t . toLowerCase ( ) ? 1 : 2 ) } ) , b . attributes && i ( function ( e ) { return e . innerHTML = "<input/>" , e . firstChild . setAttribute ( "value" , "" ) , "" === e . firstChild . getAttribute ( "value" ) } ) || o ( "value" , function ( e , t , n ) { if ( ! n && "input" === e . nodeName . toLowerCase ( ) ) return e . defaultValue } ) , i ( function ( e ) { return null == e . getAttribute ( "disabled" ) } ) || o ( J , function ( e , t , n ) { var r ; if ( ! n ) return ! 0 === e [ t ] ? t . toLowerCase ( ) : ( r = e . getAttributeNode ( t ) ) && r . specified ? r . value : null } ) , t } ( e ) ; we . find = Te , we . expr = Te . selectors , we . expr [ ":" ] = we . expr . pseudos , we . uniqueSort = we . unique = Te . uniqueSort , we . text = Te . getText , we . isXMLDoc = Te . isXML , we . contains = Te . contains , we . escapeSelector = Te . escape ; var ke = function ( e , t , n ) { for ( var r = [ ] , i = void 0 !== n ; ( e = e [ t ] ) && 9 !== e . nodeType ; ) if ( 1 === e . nodeType ) { if ( i && we ( e ) . is ( n ) ) break ; r . push ( e ) } return r } , Se = function ( e , t ) { for ( var n = [ ] ; e ; e = e . nextSibling ) 1 === e . nodeType && e !== t && n . push ( e ) ; return n } , Ee = we . expr . match . needsContext , je = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ; we . filter = function ( e , t , n ) { var r = t [ 0 ] ; return n && ( e = ":not(" + e + ")" ) , 1 === t . length && 1 === r . nodeType ? we . find . matchesSelector ( r , e ) ? [ r ] : [ ] : we . find . matches ( e , we . grep ( t , function ( e ) { return 1 === e . nodeType } ) ) } , we . fn . extend ( { find : function ( e ) { var t , n , r = this . length , i = this ; if ( "string" != typeof e ) return this . pu
var t , n = Be . get ( this ) , r = n [ e + "queue" ] , i = n [ e + "queueHooks" ] , o = we . timers , a = r ? r . length : 0 ; for ( n . finish = ! 0 , we . queue ( this , e , [ ] ) , i && i . stop && i . stop . call ( this , ! 0 ) , t = o . length ; t -- ; ) o [ t ] . elem === this && o [ t ] . queue === e && ( o [ t ] . anim . stop ( ! 0 ) , o . splice ( t , 1 ) ) ; for ( t = 0 ; t < a ; t ++ ) r [ t ] && r [ t ] . finish && r [ t ] . finish . call ( this ) ; delete n . finish } ) } } ) , we . each ( [ "toggle" , "show" , "hide" ] , function ( e , t ) { var n = we . fn [ t ] ; we . fn [ t ] = function ( e , r , i ) { return null == e || "boolean" == typeof e ? n . apply ( this , arguments ) : this . animate ( U ( t , ! 0 ) , e , r , i ) } } ) , we . each ( { slideDown : U ( "show" ) , slideUp : U ( "hide" ) , slideToggle : U ( "toggle" ) , fadeIn : { opacity : "show" } , fadeOut : { opacity : "hide" } , fadeToggle : { opacity : "toggle" } } , function ( e , t ) { we . fn [ e ] = function ( e , n , r ) { return this . animate ( t , e , n , r ) } } ) , we . timers = [ ] , we . fx . tick = function ( ) { var e , t = 0 , n = we . timers ; for ( vt = Date . now ( ) ; t < n . length ; t ++ ) ( e = n [ t ] ) ( ) || n [ t ] !== e || n . splice ( t -- , 1 ) ; n . length || we . fx . stop ( ) , vt = void 0 } , we . fx . timer = function ( e ) { we . timers . push ( e ) , we . fx . start ( ) } , we . fx . interval = 13 , we . fx . start = function ( ) { yt || ( yt = ! 0 , R ( ) ) } , we . fx . stop = function ( ) { yt = null } , we . fx . speeds = { slow : 600 , fast : 200 , _default : 400 } , we . fn . delay = function ( t , n ) { return t = we . fx ? we . fx . speeds [ t ] || t : t , n = n || "fx" , this . queue ( n , function ( n , r ) { var i = e . setTimeout ( n , t ) ; r . stop = function ( ) { e . clearTimeout ( i ) } } ) } , function ( ) { var e = ae . createElement ( "input" ) , t = ae . createElement ( "select" ) . appendChild ( ae . createElement ( "option" ) ) ; e . type = "checkbox" , ve . checkOn = "" !== e . value , ve . optSelected = t . selected , ( e = ae . createElement ( "input" ) ) . value = "t" , e . type = "radio" , ve . radioValue = "t" === e . value } ( ) ; var wt , Ct = we . expr . attrHandle ; we . fn . extend ( { attr : function ( e , t ) { return qe ( this , we . attr , e , t , arguments . length > 1 ) } , removeAttr : function ( e ) { return this . each ( function ( ) { we . removeAttr ( this , e ) } ) } } ) , we . extend ( { attr : function ( e , t , n ) { var r , i , o = e . nodeType ; if ( 3 !== o && 8 !== o && 2 !== o ) return void 0 === e . getAttribute ? we . prop ( e , t , n ) : ( 1 === o && we . isXMLDoc ( e ) || ( i = we . attrHooks [ t . toLowerCase ( ) ] || ( we . expr . match . bool . test ( t ) ? wt : void 0 ) ) , void 0 !== n ? null === n ? void we . removeAttr ( e , t ) : i && "set" in i && void 0 !== ( r = i . set ( e , n , t ) ) ? r : ( e . setAttribute ( t , n + "" ) , n ) : i && "get" in i && null !== ( r = i . get ( e , t ) ) ? r : null == ( r = we . find . attr ( e , t ) ) ? void 0 : r ) } , attrHooks : { type : { set : function ( e , t ) { if ( ! ve . radioValue && "radio" === t && o ( e , "input" ) ) { var n = e . value ; return e . setAttribute ( "type" , t ) , n && ( e . value = n ) , t } } } } , removeAttr : function ( e , t ) { var n , r = 0 , i = t && t . match ( Le ) ; if ( i && 1 === e . nodeType ) for ( ; n = i [ r ++ ] ; ) e . removeAttribute ( n ) } } ) , wt = { set : function ( e , t , n ) { return ! 1 === t ? we . removeAttr ( e , n ) : e . setAttribute ( n , n ) , n } } , we . each ( we . expr . match . bool . source . match ( /\w+/g ) , function ( e , t ) { var n = Ct [ t ] || we . find . attr ; Ct [ t ] = function ( e , t , r ) { var i , o , a = t . toLowerCase ( ) ; return r || ( o = Ct [ a ] , Ct [ a ] = i , i = null != n ( e , t , r ) ? a : null , Ct [ a ] = o ) , i } } ) ; var Tt = /^(?:input|select|textarea|button)$/i , kt = /^(?:a|area)$/i ; we . fn . extend ( { prop : function ( e , t ) { return qe ( this , we . prop , e , t , arguments . length > 1 ) } , removeProp : function ( e ) { return this . each ( function ( ) { delete this [ we . propFix [ e ] || e ] } ) } } ) , we . extend ( { prop : function ( e , t , n ) { var r , i , o = e . nodeType ; if ( 3 !== o && 8 !== o && 2 !== o ) return 1 === o && we . isXMLDoc ( e ) || ( t = we . propFix [ t ] || t , i = we . propHooks [ t ] ) , void 0 !== n ? i && "set" in i && void 0 !== ( r = i . set ( e , n , t ) ) ? r : e [ t ] = n : i && "get" in i && null !== ( r = i . get ( e , t ) ) ? r : e [ t ] } , propHooks : { tabIndex : { get : function ( e ) { var t = we . find . attr ( e , "tabindex" ) ; return t ? parseInt ( t , 10 ) : Tt . test ( e . nodeName ) || kt . test ( e . nodeName ) && e . href ? 0 : - 1 } } } , propFix : { for : "htmlFor" , class : "className" } } ) , ve . optSelected || ( we . propHooks . selected = { get : function ( e ) { var t = e . parentNode ; return t && t . parentNode && t . parentNode . selectedIndex , null } , set : function ( e ) { var t = e . parentNode ; t && ( t . selectedIndex , t . parentNode && t . parentNode . selectedIndex ) } } ) , we . each ( [ "tabIndex" , "readOnly" , "maxLength" , "cellSpacing" , "cellPadding" , "rowSpan" , "colSpan" , "useMap" , "frameBorder" , "contentEditable" ] , function ( ) { we . propFix [ this . toLowerCase ( ) ] = this } ) , we . fn . extend ( { addClass : function ( e ) { var t , n , r , i , o , a , s , l = 0 ; if ( ye ( e ) ) return this . each ( function ( t ) { we ( this ) . addClass ( e . call ( this , t , K ( this ) ) ) } ) ; if ( ( t = Q ( e ) ) . length ) for ( ; n = this [ l ++ ] ; ) if ( i = K ( n ) , r = 1 === n . nodeType && " " + Z ( i ) + " " ) { for ( a = 0 ; o = t [ a ++ ] ; ) r . indexOf ( " " + o + " " ) < 0 && ( r += o + " " ) ; i !== ( s = Z ( r ) ) && n . setAttribute ( "class" , s ) } return this } , removeClass : function ( e ) { var t , n , r , i , o , a , s , l = 0
addGroup : function ( e , n ) { var r = function ( r ) { r . mfpEl = this , t . _openClick ( r , e , n ) } ; n || ( n = { } ) ; var i = "click.magnificPopup" ; n . mainEl = e , n . items ? ( n . isObj = ! 0 , e . off ( i ) . on ( i , r ) ) : ( n . isObj = ! 1 , n . delegate ? e . off ( i ) . on ( i , n . delegate , r ) : ( n . items = e , e . off ( i ) . on ( i , r ) ) ) } , _openClick : function ( n , r , i ) { if ( ( void 0 !== i . midClick ? i . midClick : e . magnificPopup . defaults . midClick ) || ! ( 2 === n . which || n . ctrlKey || n . metaKey || n . altKey || n . shiftKey ) ) { var o = void 0 !== i . disableOn ? i . disableOn : e . magnificPopup . defaults . disableOn ; if ( o ) if ( e . isFunction ( o ) ) { if ( ! o . call ( t ) ) return ! 0 } else if ( u . width ( ) < o ) return ! 0 ; n . type && ( n . preventDefault ( ) , t . isOpen && n . stopPropagation ( ) ) , i . el = e ( n . mfpEl ) , i . delegate && ( i . items = r . find ( i . delegate ) ) , t . open ( i ) } } , updateStatus : function ( e , r ) { if ( t . preloader ) { n !== e && t . container . removeClass ( "mfp-s-" + n ) , r || "loading" !== e || ( r = t . st . tLoading ) ; var i = { status : e , text : r } ; d ( "UpdateStatus" , i ) , e = i . status , r = i . text , t . preloader . html ( r ) , t . preloader . find ( "a" ) . on ( "click" , function ( e ) { e . stopImmediatePropagation ( ) } ) , t . container . addClass ( "mfp-s-" + e ) , n = e } } , _checkIfClose : function ( n ) { if ( ! e ( n ) . hasClass ( "mfp-prevent-close" ) ) { var r = t . st . closeOnContentClick , i = t . st . closeOnBgClick ; if ( r && i ) return ! 0 ; if ( ! t . content || e ( n ) . hasClass ( "mfp-close" ) || t . preloader && n === t . preloader [ 0 ] ) return ! 0 ; if ( n === t . content [ 0 ] || e . contains ( t . content [ 0 ] , n ) ) { if ( r ) return ! 0 } else if ( i && e . contains ( document , n ) ) return ! 0 ; return ! 1 } } , _addClassToMFP : function ( e ) { t . bgOverlay . addClass ( e ) , t . wrap . addClass ( e ) } , _removeClassFromMFP : function ( e ) { this . bgOverlay . removeClass ( e ) , t . wrap . removeClass ( e ) } , _hasScrollBar : function ( e ) { return ( t . isIE7 ? r . height ( ) : document . body . scrollHeight ) > ( e || u . height ( ) ) } , _setFocus : function ( ) { ( t . st . focus ? t . content . find ( t . st . focus ) . eq ( 0 ) : t . wrap ) . focus ( ) } , _onFocusIn : function ( n ) { if ( n . target !== t . wrap [ 0 ] && ! e . contains ( t . wrap [ 0 ] , n . target ) ) return t . _setFocus ( ) , ! 1 } , _parseMarkup : function ( t , n , r ) { var i ; r . data && ( n = e . extend ( r . data , n ) ) , d ( "MarkupParse" , [ t , n , r ] ) , e . each ( n , function ( n , r ) { if ( void 0 === r || ! 1 === r ) return ! 0 ; if ( i = n . split ( "_" ) , i . length > 1 ) { var o = t . find ( ".mfp-" + i [ 0 ] ) ; if ( o . length > 0 ) { var a = i [ 1 ] ; "replaceWith" === a ? o [ 0 ] !== r [ 0 ] && o . replaceWith ( r ) : "img" === a ? o . is ( "img" ) ? o . attr ( "src" , r ) : o . replaceWith ( e ( "<img>" ) . attr ( "src" , r ) . attr ( "class" , o . attr ( "class" ) ) ) : o . attr ( i [ 1 ] , r ) } } else t . find ( ".mfp-" + n ) . html ( r ) } ) } , _getScrollbarSize : function ( ) { if ( void 0 === t . scrollbarSize ) { var e = document . createElement ( "div" ) ; e . style . cssText = "width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;" , document . body . appendChild ( e ) , t . scrollbarSize = e . offsetWidth - e . clientWidth , document . body . removeChild ( e ) } return t . scrollbarSize } } , e . magnificPopup = { instance : null , proto : s . prototype , modules : [ ] , open : function ( t , n ) { return h ( ) , t = t ? e . extend ( ! 0 , { } , t ) : { } , t . isObj = ! 0 , t . index = n || 0 , this . instance . open ( t ) } , close : function ( ) { return e . magnificPopup . instance && e . magnificPopup . instance . close ( ) } , registerModule : function ( t , n ) { n . options && ( e . magnificPopup . defaults [ t ] = n . options ) , e . extend ( this . proto , n . proto ) , this . modules . push ( t ) } , defaults : { disableOn : 0 , key : null , midClick : ! 1 , mainClass : "" , preloader : ! 0 , focus : "" , closeOnContentClick : ! 1 , closeOnBgClick : ! 0 , closeBtnInside : ! 0 , showCloseBtn : ! 0 , enableEscapeKey : ! 0 , modal : ! 1 , alignTop : ! 1 , removalDelay : 0 , prependTo : null , fixedContentPos : "auto" , fixedBgPos : "auto" , overflowY : "auto" , closeMarkup : '<button title="%title%" type="button" class="mfp-close">×</button>' , tClose : "Close (Esc)" , tLoading : "Loading..." , autoFocusLast : ! 0 } } , e . fn . magnificPopup = function ( n ) { h ( ) ; var r = e ( this ) ; if ( "string" == typeof n ) if ( "open" === n ) { var i , o = l ? r . data ( "magnificPopup" ) : r [ 0 ] . magnificPopup , a = parseInt ( arguments [ 1 ] , 10 ) || 0 ; o . items ? i = o . items [ a ] : ( i = r , o . delegate && ( i = i . find ( o . delegate ) ) , i = i . eq ( a ) ) , t . _openClick ( { mfpEl : i } , r , o ) } else t . isOpen && t [ n ] . apply ( t , Array . prototype . slice . call ( arguments , 1 ) ) ; else n = e . extend ( ! 0 , { } , n ) , l ? r . data ( "magnificPopup" , n ) : r [ 0 ] . magnificPopup = n , t . addGroup ( r , n ) ; return r } ; var g , v , y , x = function ( ) { y && ( v . after ( y . addClass ( g ) ) . detach ( ) , y = null ) } ; e . magnificPopup . registerModule ( "inline" , { options : { hiddenClass : "hide" , markup : "" , tNotFound : "Content not found" } , proto : { initInline : function ( ) { t . types . push ( "inline" ) , c ( "Close.inline" , function ( ) { x ( ) } ) } , getInline : function ( n , r ) { if ( x ( ) , n . src ) { var i = t . st . inli