{"version":3,"sources":["../bower_components/lazysizes/plugins/bgset/ls.bgset.js","../bower_components/lazysizes/lazysizes.js"],"names":["window","factory","globalInstall","lazySizes","removeEventListener","bind","document","module","exports","require","addEventListener","lazySizesCfg","cfg","regWhite","regSplitSet","regSource","regType","regBgUrlEscape","allowedBackgroundSize","contain","cover","proxyWidth","elem","width","gW","parentNode","_lazysizesWidth","getBgSize","bgSize","getComputedStyle","getPropertyValue","style","backgroundSize","setTypeOrMedia","source","match","typeMatch","setAttribute","customMedia","createPicture","sets","img","picture","createElement","sizes","getAttribute","sizesAttr","ratio","optimumx","_lazybgset","removeChild","Object","defineProperty","value","writable","replace","split","display","className","lazyClass","length","forEach","set","srcsetAttr","appendChild","removeAttribute","proxyLoad","e","target","image","bg","currentSrc","src","event","fire","useSrc","test","JSON","stringify","defaultPrevented","backgroundImage","detail","_lazybgsetLoading","alt","firesLoad","setTimeout","loader","unveil","rAF","complete","instance","dataAttr","_lazysizesParentFit","documentElement","lazysizes","prop","lazySizesDefaults","loadedClass","loadingClass","preloadClass","errorClass","autosizesClass","srcAttr","minSize","init","expFactor","hFac","loadMode","loadHidden","ricTimeout","throttleDelay","lazySizesConfig","lazysizesConfig","getElementsByClassName","noSupport","docElem","Date","supportPicture","HTMLPictureElement","_addEventListener","_getAttribute","requestAnimationFrame","requestIdleCallback","regPicture","loadEvents","regClassCache","Array","prototype","hasClass","ele","cls","RegExp","addClass","trim","removeClass","reg","addRemoveLoadEvents","dom","fn","add","action","evt","triggerEvent","name","noBubbles","noCancelable","createEvent","initEvent","dispatchEvent","updatePolyfill","el","full","polyfill","picturefill","pf","reevaluate","elements","getCSS","getWidth","parent","offsetWidth","running","waiting","firstFns","secondFns","fns","run","runFns","shift","rafBatch","queue","apply","this","arguments","push","hidden","_lsFlush","rAFIt","simple","that","args","throttle","lastTime","gDelay","rICTimeout","now","idleCallback","timeout","isPriority","delay","debounce","func","timestamp","wait","later","last","preloadElems","isCompleted","resetPreloadingTimer","started","eLvW","elvH","eLtop","eLleft","eLright","eLbottom","isBodyHidden","regImg","regIframe","supportScroll","navigator","userAgent","shrinkExpand","currentExpand","isLoading","lowRuns","resetPreloading","isVisible","body","isNestedVisible","elemExpand","outerRect","visible","offsetParent","getBoundingClientRect","left","right","top","bottom","checkElements","eLlen","i","rect","autoLoadElem","loadedSomething","elemNegativeExpand","elemExpandVal","beforeExpandVal","defaultExpand","preloadExpand","lazyloadElems","_lazyRace","prematureUnveil","unveilElement","expand","clientHeight","clientWidth","_defEx","innerWidth","innerHeight","preloadAfterLoad","throttledCheckElements","switchLoadingClass","_lazyCache","rafSwitchLoadingClass","rafedSwitchLoadingClass","changeIframeSrc","contentWindow","location","handleSources","sourceSrcset","lazyUnveil","isAuto","isImg","srcset","isPicture","nodeName","clearTimeout","call","getElementsByTagName","isLoaded","naturalWidth","loading","autoSizer","updateElem","afterScroll","altLoadmodeScrollListner","onload","_","MutationObserver","observe","childList","subtree","attributes","setInterval","readyState","checkElems","_aLSL","autosizesElems","sizeElement","sources","len","getSizeElement","updateElementsSizes","debouncedUpdateElementsSizes","uP","aC","rC","hC"],"mappings":"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","file":"lazysizes.js","sourcesContent":["(function(window, factory) {\n\tvar globalInstall = function(){\n\t\tfactory(window.lazySizes);\n\t\twindow.removeEventListener('lazyunveilread', globalInstall, true);\n\t};\n\n\tfactory = factory.bind(null, window, window.document);\n\n\tif(typeof module == 'object' && module.exports){\n\t\tfactory(require('lazysizes'));\n\t} else if(window.lazySizes) {\n\t\tglobalInstall();\n\t} else {\n\t\twindow.addEventListener('lazyunveilread', globalInstall, true);\n\t}\n}(window, function(window, document, lazySizes) {\n\t'use strict';\n\tif(!window.addEventListener){return;}\n\n\tvar lazySizesCfg = lazySizes.cfg;\n\tvar regWhite = /\\s+/g;\n\tvar regSplitSet = /\\s*\\|\\s+|\\s+\\|\\s*/g;\n\tvar regSource = /^(.+?)(?:\\s+\\[\\s*(.+?)\\s*\\])(?:\\s+\\[\\s*(.+?)\\s*\\])?$/;\n\tvar regType = /^\\s*\\(*\\s*type\\s*:\\s*(.+?)\\s*\\)*\\s*$/;\n\tvar regBgUrlEscape = /\\(|\\)|'/;\n\tvar allowedBackgroundSize = {contain: 1, cover: 1};\n\tvar proxyWidth = function(elem){\n\t\tvar width = lazySizes.gW(elem, elem.parentNode);\n\n\t\tif(!elem._lazysizesWidth || width > elem._lazysizesWidth){\n\t\t\telem._lazysizesWidth = width;\n\t\t}\n\t\treturn elem._lazysizesWidth;\n\t};\n\tvar getBgSize = function(elem){\n\t\tvar bgSize;\n\n\t\tbgSize = (getComputedStyle(elem) || {getPropertyValue: function(){}}).getPropertyValue('background-size');\n\n\t\tif(!allowedBackgroundSize[bgSize] && allowedBackgroundSize[elem.style.backgroundSize]){\n\t\t\tbgSize = elem.style.backgroundSize;\n\t\t}\n\n\t\treturn bgSize;\n\t};\n\tvar setTypeOrMedia = function(source, match){\n\t\tif(match){\n\t\t\tvar typeMatch = match.match(regType);\n\t\t\tif(typeMatch && typeMatch[1]){\n\t\t\t\tsource.setAttribute('type', typeMatch[1]);\n\t\t\t} else {\n\t\t\t\tsource.setAttribute('media', lazySizesCfg.customMedia[match] || match);\n\t\t\t}\n\t\t}\n\t};\n\tvar createPicture = function(sets, elem, img){\n\t\tvar picture = document.createElement('picture');\n\t\tvar sizes = elem.getAttribute(lazySizesCfg.sizesAttr);\n\t\tvar ratio = elem.getAttribute('data-ratio');\n\t\tvar optimumx = elem.getAttribute('data-optimumx');\n\n\t\tif(elem._lazybgset && elem._lazybgset.parentNode == elem){\n\t\t\telem.removeChild(elem._lazybgset);\n\t\t}\n\n\t\tObject.defineProperty(img, '_lazybgset', {\n\t\t\tvalue: elem,\n\t\t\twritable: true\n\t\t});\n\t\tObject.defineProperty(elem, '_lazybgset', {\n\t\t\tvalue: picture,\n\t\t\twritable: true\n\t\t});\n\n\t\tsets = sets.replace(regWhite, ' ').split(regSplitSet);\n\n\t\tpicture.style.display = 'none';\n\t\timg.className = lazySizesCfg.lazyClass;\n\n\t\tif(sets.length == 1 && !sizes){\n\t\t\tsizes = 'auto';\n\t\t}\n\n\t\tsets.forEach(function(set){\n\t\t\tvar match;\n\t\t\tvar source = document.createElement('source');\n\n\t\t\tif(sizes && sizes != 'auto'){\n\t\t\t\tsource.setAttribute('sizes', sizes);\n\t\t\t}\n\n\t\t\tif((match = set.match(regSource))){\n\t\t\t\tsource.setAttribute(lazySizesCfg.srcsetAttr, match[1]);\n\n\t\t\t\tsetTypeOrMedia(source, match[2]);\n\t\t\t\tsetTypeOrMedia(source, match[3]);\n\t\t\t} else {\n\t\t\t\tsource.setAttribute(lazySizesCfg.srcsetAttr, set);\n\t\t\t}\n\n\t\t\tpicture.appendChild(source);\n\t\t});\n\n\t\tif(sizes){\n\t\t\timg.setAttribute(lazySizesCfg.sizesAttr, sizes);\n\t\t\telem.removeAttribute(lazySizesCfg.sizesAttr);\n\t\t\telem.removeAttribute('sizes');\n\t\t}\n\t\tif(optimumx){\n\t\t\timg.setAttribute('data-optimumx', optimumx);\n\t\t}\n\t\tif(ratio) {\n\t\t\timg.setAttribute('data-ratio', ratio);\n\t\t}\n\n\t\tpicture.appendChild(img);\n\n\t\telem.appendChild(picture);\n\t};\n\n\tvar proxyLoad = function(e){\n\t\tif(!e.target._lazybgset){return;}\n\n\t\tvar image = e.target;\n\t\tvar elem = image._lazybgset;\n\t\tvar bg = image.currentSrc || image.src;\n\n\n\t\tif(bg){\n\t\t\tvar event = lazySizes.fire(elem, 'bgsetproxy', {\n\t\t\t\tsrc: bg,\n\t\t\t\tuseSrc: regBgUrlEscape.test(bg) ? JSON.stringify(bg) : bg,\n\t\t\t});\n\n\t\t\tif(!event.defaultPrevented){\n\t\t\t\telem.style.backgroundImage = 'url(' + event.detail.useSrc + ')';\n\t\t\t}\n\t\t}\n\n\t\tif(image._lazybgsetLoading){\n\t\t\tlazySizes.fire(elem, '_lazyloaded', {}, false, true);\n\t\t\tdelete image._lazybgsetLoading;\n\t\t}\n\t};\n\n\taddEventListener('lazybeforeunveil', function(e){\n\t\tvar set, image, elem;\n\n\t\tif(e.defaultPrevented || !(set = e.target.getAttribute('data-bgset'))){return;}\n\n\t\telem = e.target;\n\t\timage = document.createElement('img');\n\n\t\timage.alt = '';\n\n\t\timage._lazybgsetLoading = true;\n\t\te.detail.firesLoad = true;\n\n\t\tcreatePicture(set, elem, image);\n\n\t\tsetTimeout(function(){\n\t\t\tlazySizes.loader.unveil(image);\n\n\t\t\tlazySizes.rAF(function(){\n\t\t\t\tlazySizes.fire(image, '_lazyloaded', {}, true, true);\n\t\t\t\tif(image.complete) {\n\t\t\t\t\tproxyLoad({target: image});\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t});\n\n\tdocument.addEventListener('load', proxyLoad, true);\n\n\twindow.addEventListener('lazybeforesizes', function(e){\n\t\tif(e.detail.instance != lazySizes){return;}\n\t\tif(e.target._lazybgset && e.detail.dataAttr){\n\t\t\tvar elem = e.target._lazybgset;\n\t\t\tvar bgSize = getBgSize(elem);\n\n\t\t\tif(allowedBackgroundSize[bgSize]){\n\t\t\t\te.target._lazysizesParentFit = bgSize;\n\n\t\t\t\tlazySizes.rAF(function(){\n\t\t\t\t\te.target.setAttribute('data-parent-fit', bgSize);\n\t\t\t\t\tif(e.target._lazysizesParentFit){\n\t\t\t\t\t\tdelete e.target._lazysizesParentFit;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}, true);\n\n\tdocument.documentElement.addEventListener('lazybeforesizes', function(e){\n\t\tif(e.defaultPrevented || !e.target._lazybgset || e.detail.instance != lazySizes){return;}\n\t\te.detail.width = proxyWidth(e.target._lazybgset);\n\t});\n}));\n","(function(window, factory) {\n\tvar lazySizes = factory(window, window.document);\n\twindow.lazySizes = lazySizes;\n\tif(typeof module == 'object' && module.exports){\n\t\tmodule.exports = lazySizes;\n\t}\n}(typeof window != 'undefined' ?\n window : {}, function l(window, document) {\n\t'use strict';\n\t/*jshint eqnull:true */\n\n\tvar lazysizes, lazySizesCfg;\n\n\t(function(){\n\t\tvar prop;\n\n\t\tvar lazySizesDefaults = {\n\t\t\tlazyClass: 'lazyload',\n\t\t\tloadedClass: 'lazyloaded',\n\t\t\tloadingClass: 'lazyloading',\n\t\t\tpreloadClass: 'lazypreload',\n\t\t\terrorClass: 'lazyerror',\n\t\t\t//strictClass: 'lazystrict',\n\t\t\tautosizesClass: 'lazyautosizes',\n\t\t\tsrcAttr: 'data-src',\n\t\t\tsrcsetAttr: 'data-srcset',\n\t\t\tsizesAttr: 'data-sizes',\n\t\t\t//preloadAfterLoad: false,\n\t\t\tminSize: 40,\n\t\t\tcustomMedia: {},\n\t\t\tinit: true,\n\t\t\texpFactor: 1.5,\n\t\t\thFac: 0.8,\n\t\t\tloadMode: 2,\n\t\t\tloadHidden: true,\n\t\t\tricTimeout: 0,\n\t\t\tthrottleDelay: 125,\n\t\t};\n\n\t\tlazySizesCfg = window.lazySizesConfig || window.lazysizesConfig || {};\n\n\t\tfor(prop in lazySizesDefaults){\n\t\t\tif(!(prop in lazySizesCfg)){\n\t\t\t\tlazySizesCfg[prop] = lazySizesDefaults[prop];\n\t\t\t}\n\t\t}\n\t})();\n\n\tif (!document || !document.getElementsByClassName) {\n\t\treturn {\n\t\t\tinit: function () {},\n\t\t\tcfg: lazySizesCfg,\n\t\t\tnoSupport: true,\n\t\t};\n\t}\n\n\tvar docElem = document.documentElement;\n\n\tvar Date = window.Date;\n\n\tvar supportPicture = window.HTMLPictureElement;\n\n\tvar _addEventListener = 'addEventListener';\n\n\tvar _getAttribute = 'getAttribute';\n\n\tvar addEventListener = window[_addEventListener];\n\n\tvar setTimeout = window.setTimeout;\n\n\tvar requestAnimationFrame = window.requestAnimationFrame || setTimeout;\n\n\tvar requestIdleCallback = window.requestIdleCallback;\n\n\tvar regPicture = /^picture$/i;\n\n\tvar loadEvents = ['load', 'error', 'lazyincluded', '_lazyloaded'];\n\n\tvar regClassCache = {};\n\n\tvar forEach = Array.prototype.forEach;\n\n\tvar hasClass = function(ele, cls) {\n\t\tif(!regClassCache[cls]){\n\t\t\tregClassCache[cls] = new RegExp('(\\\\s|^)'+cls+'(\\\\s|$)');\n\t\t}\n\t\treturn regClassCache[cls].test(ele[_getAttribute]('class') || '') && regClassCache[cls];\n\t};\n\n\tvar addClass = function(ele, cls) {\n\t\tif (!hasClass(ele, cls)){\n\t\t\tele.setAttribute('class', (ele[_getAttribute]('class') || '').trim() + ' ' + cls);\n\t\t}\n\t};\n\n\tvar removeClass = function(ele, cls) {\n\t\tvar reg;\n\t\tif ((reg = hasClass(ele,cls))) {\n\t\t\tele.setAttribute('class', (ele[_getAttribute]('class') || '').replace(reg, ' '));\n\t\t}\n\t};\n\n\tvar addRemoveLoadEvents = function(dom, fn, add){\n\t\tvar action = add ? _addEventListener : 'removeEventListener';\n\t\tif(add){\n\t\t\taddRemoveLoadEvents(dom, fn);\n\t\t}\n\t\tloadEvents.forEach(function(evt){\n\t\t\tdom[action](evt, fn);\n\t\t});\n\t};\n\n\tvar triggerEvent = function(elem, name, detail, noBubbles, noCancelable){\n\t\tvar event = document.createEvent('Event');\n\n\t\tif(!detail){\n\t\t\tdetail = {};\n\t\t}\n\n\t\tdetail.instance = lazysizes;\n\n\t\tevent.initEvent(name, !noBubbles, !noCancelable);\n\n\t\tevent.detail = detail;\n\n\t\telem.dispatchEvent(event);\n\t\treturn event;\n\t};\n\n\tvar updatePolyfill = function (el, full){\n\t\tvar polyfill;\n\t\tif( !supportPicture && ( polyfill = (window.picturefill || lazySizesCfg.pf) ) ){\n\t\t\tif(full && full.src && !el[_getAttribute]('srcset')){\n\t\t\t\tel.setAttribute('srcset', full.src);\n\t\t\t}\n\t\t\tpolyfill({reevaluate: true, elements: [el]});\n\t\t} else if(full && full.src){\n\t\t\tel.src = full.src;\n\t\t}\n\t};\n\n\tvar getCSS = function (elem, style){\n\t\treturn (getComputedStyle(elem, null) || {})[style];\n\t};\n\n\tvar getWidth = function(elem, parent, width){\n\t\twidth = width || elem.offsetWidth;\n\n\t\twhile(width < lazySizesCfg.minSize && parent && !elem._lazysizesWidth){\n\t\t\twidth = parent.offsetWidth;\n\t\t\tparent = parent.parentNode;\n\t\t}\n\n\t\treturn width;\n\t};\n\n\tvar rAF = (function(){\n\t\tvar running, waiting;\n\t\tvar firstFns = [];\n\t\tvar secondFns = [];\n\t\tvar fns = firstFns;\n\n\t\tvar run = function(){\n\t\t\tvar runFns = fns;\n\n\t\t\tfns = firstFns.length ? secondFns : firstFns;\n\n\t\t\trunning = true;\n\t\t\twaiting = false;\n\n\t\t\twhile(runFns.length){\n\t\t\t\trunFns.shift()();\n\t\t\t}\n\n\t\t\trunning = false;\n\t\t};\n\n\t\tvar rafBatch = function(fn, queue){\n\t\t\tif(running && !queue){\n\t\t\t\tfn.apply(this, arguments);\n\t\t\t} else {\n\t\t\t\tfns.push(fn);\n\n\t\t\t\tif(!waiting){\n\t\t\t\t\twaiting = true;\n\t\t\t\t\t(document.hidden ? setTimeout : requestAnimationFrame)(run);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\trafBatch._lsFlush = run;\n\n\t\treturn rafBatch;\n\t})();\n\n\tvar rAFIt = function(fn, simple){\n\t\treturn simple ?\n\t\t\tfunction() {\n\t\t\t\trAF(fn);\n\t\t\t} :\n\t\t\tfunction(){\n\t\t\t\tvar that = this;\n\t\t\t\tvar args = arguments;\n\t\t\t\trAF(function(){\n\t\t\t\t\tfn.apply(that, args);\n\t\t\t\t});\n\t\t\t}\n\t\t;\n\t};\n\n\tvar throttle = function(fn){\n\t\tvar running;\n\t\tvar lastTime = 0;\n\t\tvar gDelay = lazySizesCfg.throttleDelay;\n\t\tvar rICTimeout = lazySizesCfg.ricTimeout;\n\t\tvar run = function(){\n\t\t\trunning = false;\n\t\t\tlastTime = Date.now();\n\t\t\tfn();\n\t\t};\n\t\tvar idleCallback = requestIdleCallback && rICTimeout > 49 ?\n\t\t\tfunction(){\n\t\t\t\trequestIdleCallback(run, {timeout: rICTimeout});\n\n\t\t\t\tif(rICTimeout !== lazySizesCfg.ricTimeout){\n\t\t\t\t\trICTimeout = lazySizesCfg.ricTimeout;\n\t\t\t\t}\n\t\t\t} :\n\t\t\trAFIt(function(){\n\t\t\t\tsetTimeout(run);\n\t\t\t}, true)\n\t\t;\n\n\t\treturn function(isPriority){\n\t\t\tvar delay;\n\n\t\t\tif((isPriority = isPriority === true)){\n\t\t\t\trICTimeout = 33;\n\t\t\t}\n\n\t\t\tif(running){\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\trunning = true;\n\n\t\t\tdelay = gDelay - (Date.now() - lastTime);\n\n\t\t\tif(delay < 0){\n\t\t\t\tdelay = 0;\n\t\t\t}\n\n\t\t\tif(isPriority || delay < 9){\n\t\t\t\tidleCallback();\n\t\t\t} else {\n\t\t\t\tsetTimeout(idleCallback, delay);\n\t\t\t}\n\t\t};\n\t};\n\n\t//based on http://modernjavascript.blogspot.de/2013/08/building-better-debounce.html\n\tvar debounce = function(func) {\n\t\tvar timeout, timestamp;\n\t\tvar wait = 99;\n\t\tvar run = function(){\n\t\t\ttimeout = null;\n\t\t\tfunc();\n\t\t};\n\t\tvar later = function() {\n\t\t\tvar last = Date.now() - timestamp;\n\n\t\t\tif (last < wait) {\n\t\t\t\tsetTimeout(later, wait - last);\n\t\t\t} else {\n\t\t\t\t(requestIdleCallback || run)(run);\n\t\t\t}\n\t\t};\n\n\t\treturn function() {\n\t\t\ttimestamp = Date.now();\n\n\t\t\tif (!timeout) {\n\t\t\t\ttimeout = setTimeout(later, wait);\n\t\t\t}\n\t\t};\n\t};\n\n\tvar loader = (function(){\n\t\tvar preloadElems, isCompleted, resetPreloadingTimer, loadMode, started;\n\n\t\tvar eLvW, elvH, eLtop, eLleft, eLright, eLbottom, isBodyHidden;\n\n\t\tvar regImg = /^img$/i;\n\t\tvar regIframe = /^iframe$/i;\n\n\t\tvar supportScroll = ('onscroll' in window) && !(/(gle|ing)bot/.test(navigator.userAgent));\n\n\t\tvar shrinkExpand = 0;\n\t\tvar currentExpand = 0;\n\n\t\tvar isLoading = 0;\n\t\tvar lowRuns = -1;\n\n\t\tvar resetPreloading = function(e){\n\t\t\tisLoading--;\n\t\t\tif(!e || isLoading < 0 || !e.target){\n\t\t\t\tisLoading = 0;\n\t\t\t}\n\t\t};\n\n\t\tvar isVisible = function (elem) {\n\t\t\tif (isBodyHidden == null) {\n\t\t\t\tisBodyHidden = getCSS(document.body, 'visibility') == 'hidden';\n\t\t\t}\n\n\t\t\treturn isBodyHidden || !(getCSS(elem.parentNode, 'visibility') == 'hidden' && getCSS(elem, 'visibility') == 'hidden');\n\t\t};\n\n\t\tvar isNestedVisible = function(elem, elemExpand){\n\t\t\tvar outerRect;\n\t\t\tvar parent = elem;\n\t\t\tvar visible = isVisible(elem);\n\n\t\t\teLtop -= elemExpand;\n\t\t\teLbottom += elemExpand;\n\t\t\teLleft -= elemExpand;\n\t\t\teLright += elemExpand;\n\n\t\t\twhile(visible && (parent = parent.offsetParent) && parent != document.body && parent != docElem){\n\t\t\t\tvisible = ((getCSS(parent, 'opacity') || 1) > 0);\n\n\t\t\t\tif(visible && getCSS(parent, 'overflow') != 'visible'){\n\t\t\t\t\touterRect = parent.getBoundingClientRect();\n\t\t\t\t\tvisible = eLright > outerRect.left &&\n\t\t\t\t\t\teLleft < outerRect.right &&\n\t\t\t\t\t\teLbottom > outerRect.top - 1 &&\n\t\t\t\t\t\teLtop < outerRect.bottom + 1\n\t\t\t\t\t;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn visible;\n\t\t};\n\n\t\tvar checkElements = function() {\n\t\t\tvar eLlen, i, rect, autoLoadElem, loadedSomething, elemExpand, elemNegativeExpand, elemExpandVal,\n\t\t\t\tbeforeExpandVal, defaultExpand, preloadExpand, hFac;\n\t\t\tvar lazyloadElems = lazysizes.elements;\n\n\t\t\tif((loadMode = lazySizesCfg.loadMode) && isLoading < 8 && (eLlen = lazyloadElems.length)){\n\n\t\t\t\ti = 0;\n\n\t\t\t\tlowRuns++;\n\n\t\t\t\tfor(; i < eLlen; i++){\n\n\t\t\t\t\tif(!lazyloadElems[i] || lazyloadElems[i]._lazyRace){continue;}\n\n\t\t\t\t\tif(!supportScroll || (lazysizes.prematureUnveil && lazysizes.prematureUnveil(lazyloadElems[i]))){unveilElement(lazyloadElems[i]);continue;}\n\n\t\t\t\t\tif(!(elemExpandVal = lazyloadElems[i][_getAttribute]('data-expand')) || !(elemExpand = elemExpandVal * 1)){\n\t\t\t\t\t\telemExpand = currentExpand;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!defaultExpand) {\n\t\t\t\t\t\tdefaultExpand = (!lazySizesCfg.expand || lazySizesCfg.expand < 1) ?\n\t\t\t\t\t\t\tdocElem.clientHeight > 500 && docElem.clientWidth > 500 ? 500 : 370 :\n\t\t\t\t\t\t\tlazySizesCfg.expand;\n\n\t\t\t\t\t\tlazysizes._defEx = defaultExpand;\n\n\t\t\t\t\t\tpreloadExpand = defaultExpand * lazySizesCfg.expFactor;\n\t\t\t\t\t\thFac = lazySizesCfg.hFac;\n\t\t\t\t\t\tisBodyHidden = null;\n\n\t\t\t\t\t\tif(currentExpand < preloadExpand && isLoading < 1 && lowRuns > 2 && loadMode > 2 && !document.hidden){\n\t\t\t\t\t\t\tcurrentExpand = preloadExpand;\n\t\t\t\t\t\t\tlowRuns = 0;\n\t\t\t\t\t\t} else if(loadMode > 1 && lowRuns > 1 && isLoading < 6){\n\t\t\t\t\t\t\tcurrentExpand = defaultExpand;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcurrentExpand = shrinkExpand;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif(beforeExpandVal !== elemExpand){\n\t\t\t\t\t\teLvW = innerWidth + (elemExpand * hFac);\n\t\t\t\t\t\telvH = innerHeight + elemExpand;\n\t\t\t\t\t\telemNegativeExpand = elemExpand * -1;\n\t\t\t\t\t\tbeforeExpandVal = elemExpand;\n\t\t\t\t\t}\n\n\t\t\t\t\trect = lazyloadElems[i].getBoundingClientRect();\n\n\t\t\t\t\tif ((eLbottom = rect.bottom) >= elemNegativeExpand &&\n\t\t\t\t\t\t(eLtop = rect.top) <= elvH &&\n\t\t\t\t\t\t(eLright = rect.right) >= elemNegativeExpand * hFac &&\n\t\t\t\t\t\t(eLleft = rect.left) <= eLvW &&\n\t\t\t\t\t\t(eLbottom || eLright || eLleft || eLtop) &&\n\t\t\t\t\t\t(lazySizesCfg.loadHidden || isVisible(lazyloadElems[i])) &&\n\t\t\t\t\t\t((isCompleted && isLoading < 3 && !elemExpandVal && (loadMode < 3 || lowRuns < 4)) || isNestedVisible(lazyloadElems[i], elemExpand))){\n\t\t\t\t\t\tunveilElement(lazyloadElems[i]);\n\t\t\t\t\t\tloadedSomething = true;\n\t\t\t\t\t\tif(isLoading > 9){break;}\n\t\t\t\t\t} else if(!loadedSomething && isCompleted && !autoLoadElem &&\n\t\t\t\t\t\tisLoading < 4 && lowRuns < 4 && loadMode > 2 &&\n\t\t\t\t\t\t(preloadElems[0] || lazySizesCfg.preloadAfterLoad) &&\n\t\t\t\t\t\t(preloadElems[0] || (!elemExpandVal && ((eLbottom || eLright || eLleft || eLtop) || lazyloadElems[i][_getAttribute](lazySizesCfg.sizesAttr) != 'auto')))){\n\t\t\t\t\t\tautoLoadElem = preloadElems[0] || lazyloadElems[i];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif(autoLoadElem && !loadedSomething){\n\t\t\t\t\tunveilElement(autoLoadElem);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tvar throttledCheckElements = throttle(checkElements);\n\n\t\tvar switchLoadingClass = function(e){\n\t\t\tvar elem = e.target;\n\n\t\t\tif (elem._lazyCache) {\n\t\t\t\tdelete elem._lazyCache;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tresetPreloading(e);\n\t\t\taddClass(elem, lazySizesCfg.loadedClass);\n\t\t\tremoveClass(elem, lazySizesCfg.loadingClass);\n\t\t\taddRemoveLoadEvents(elem, rafSwitchLoadingClass);\n\t\t\ttriggerEvent(elem, 'lazyloaded');\n\t\t};\n\t\tvar rafedSwitchLoadingClass = rAFIt(switchLoadingClass);\n\t\tvar rafSwitchLoadingClass = function(e){\n\t\t\trafedSwitchLoadingClass({target: e.target});\n\t\t};\n\n\t\tvar changeIframeSrc = function(elem, src){\n\t\t\ttry {\n\t\t\t\telem.contentWindow.location.replace(src);\n\t\t\t} catch(e){\n\t\t\t\telem.src = src;\n\t\t\t}\n\t\t};\n\n\t\tvar handleSources = function(source){\n\t\t\tvar customMedia;\n\n\t\t\tvar sourceSrcset = source[_getAttribute](lazySizesCfg.srcsetAttr);\n\n\t\t\tif( (customMedia = lazySizesCfg.customMedia[source[_getAttribute]('data-media') || source[_getAttribute]('media')]) ){\n\t\t\t\tsource.setAttribute('media', customMedia);\n\t\t\t}\n\n\t\t\tif(sourceSrcset){\n\t\t\t\tsource.setAttribute('srcset', sourceSrcset);\n\t\t\t}\n\t\t};\n\n\t\tvar lazyUnveil = rAFIt(function (elem, detail, isAuto, sizes, isImg){\n\t\t\tvar src, srcset, parent, isPicture, event, firesLoad;\n\n\t\t\tif(!(event = triggerEvent(elem, 'lazybeforeunveil', detail)).defaultPrevented){\n\n\t\t\t\tif(sizes){\n\t\t\t\t\tif(isAuto){\n\t\t\t\t\t\taddClass(elem, lazySizesCfg.autosizesClass);\n\t\t\t\t\t} else {\n\t\t\t\t\t\telem.setAttribute('sizes', sizes);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tsrcset = elem[_getAttribute](lazySizesCfg.srcsetAttr);\n\t\t\t\tsrc = elem[_getAttribute](lazySizesCfg.srcAttr);\n\n\t\t\t\tif(isImg) {\n\t\t\t\t\tparent = elem.parentNode;\n\t\t\t\t\tisPicture = parent && regPicture.test(parent.nodeName || '');\n\t\t\t\t}\n\n\t\t\t\tfiresLoad = detail.firesLoad || (('src' in elem) && (srcset || src || isPicture));\n\n\t\t\t\tevent = {target: elem};\n\n\t\t\t\taddClass(elem, lazySizesCfg.loadingClass);\n\n\t\t\t\tif(firesLoad){\n\t\t\t\t\tclearTimeout(resetPreloadingTimer);\n\t\t\t\t\tresetPreloadingTimer = setTimeout(resetPreloading, 2500);\n\t\t\t\t\taddRemoveLoadEvents(elem, rafSwitchLoadingClass, true);\n\t\t\t\t}\n\n\t\t\t\tif(isPicture){\n\t\t\t\t\tforEach.call(parent.getElementsByTagName('source'), handleSources);\n\t\t\t\t}\n\n\t\t\t\tif(srcset){\n\t\t\t\t\telem.setAttribute('srcset', srcset);\n\t\t\t\t} else if(src && !isPicture){\n\t\t\t\t\tif(regIframe.test(elem.nodeName)){\n\t\t\t\t\t\tchangeIframeSrc(elem, src);\n\t\t\t\t\t} else {\n\t\t\t\t\t\telem.src = src;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif(isImg && (srcset || isPicture)){\n\t\t\t\t\tupdatePolyfill(elem, {src: src});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif(elem._lazyRace){\n\t\t\t\tdelete elem._lazyRace;\n\t\t\t}\n\t\t\tremoveClass(elem, lazySizesCfg.lazyClass);\n\n\t\t\trAF(function(){\n\t\t\t\t// Part of this can be removed as soon as this fix is older: https://bugs.chromium.org/p/chromium/issues/detail?id=7731 (2015)\n\t\t\t\tvar isLoaded = elem.complete && elem.naturalWidth > 1;\n\n\t\t\t\tif( !firesLoad || isLoaded){\n\t\t\t\t\tif (isLoaded) {\n\t\t\t\t\t\taddClass(elem, 'ls-is-cached');\n\t\t\t\t\t}\n\t\t\t\t\tswitchLoadingClass(event);\n\t\t\t\t\telem._lazyCache = true;\n\t\t\t\t\tsetTimeout(function(){\n\t\t\t\t\t\tif ('_lazyCache' in elem) {\n\t\t\t\t\t\t\tdelete elem._lazyCache;\n\t\t\t\t\t\t}\n\t\t\t\t\t}, 9);\n\t\t\t\t}\n\t\t\t\tif (elem.loading == 'lazy') {\n\t\t\t\t\tisLoading--;\n\t\t\t\t}\n\t\t\t}, true);\n\t\t});\n\n\t\tvar unveilElement = function (elem){\n\t\t\tif (elem._lazyRace) {return;}\n\t\t\tvar detail;\n\n\t\t\tvar isImg = regImg.test(elem.nodeName);\n\n\t\t\t//allow using sizes=\"auto\", but don't use. it's invalid. Use data-sizes=\"auto\" or a valid value for sizes instead (i.e.: sizes=\"80vw\")\n\t\t\tvar sizes = isImg && (elem[_getAttribute](lazySizesCfg.sizesAttr) || elem[_getAttribute]('sizes'));\n\t\t\tvar isAuto = sizes == 'auto';\n\n\t\t\tif( (isAuto || !isCompleted) && isImg && (elem[_getAttribute]('src') || elem.srcset) && !elem.complete && !hasClass(elem, lazySizesCfg.errorClass) && hasClass(elem, lazySizesCfg.lazyClass)){return;}\n\n\t\t\tdetail = triggerEvent(elem, 'lazyunveilread').detail;\n\n\t\t\tif(isAuto){\n\t\t\t\t autoSizer.updateElem(elem, true, elem.offsetWidth);\n\t\t\t}\n\n\t\t\telem._lazyRace = true;\n\t\t\tisLoading++;\n\n\t\t\tlazyUnveil(elem, detail, isAuto, sizes, isImg);\n\t\t};\n\n\t\tvar afterScroll = debounce(function(){\n\t\t\tlazySizesCfg.loadMode = 3;\n\t\t\tthrottledCheckElements();\n\t\t});\n\n\t\tvar altLoadmodeScrollListner = function(){\n\t\t\tif(lazySizesCfg.loadMode == 3){\n\t\t\t\tlazySizesCfg.loadMode = 2;\n\t\t\t}\n\t\t\tafterScroll();\n\t\t};\n\n\t\tvar onload = function(){\n\t\t\tif(isCompleted){return;}\n\t\t\tif(Date.now() - started < 999){\n\t\t\t\tsetTimeout(onload, 999);\n\t\t\t\treturn;\n\t\t\t}\n\n\n\t\t\tisCompleted = true;\n\n\t\t\tlazySizesCfg.loadMode = 3;\n\n\t\t\tthrottledCheckElements();\n\n\t\t\taddEventListener('scroll', altLoadmodeScrollListner, true);\n\t\t};\n\n\t\treturn {\n\t\t\t_: function(){\n\t\t\t\tstarted = Date.now();\n\n\t\t\t\tlazysizes.elements = document.getElementsByClassName(lazySizesCfg.lazyClass);\n\t\t\t\tpreloadElems = document.getElementsByClassName(lazySizesCfg.lazyClass + ' ' + lazySizesCfg.preloadClass);\n\n\t\t\t\taddEventListener('scroll', throttledCheckElements, true);\n\n\t\t\t\taddEventListener('resize', throttledCheckElements, true);\n\n\t\t\t\tif(window.MutationObserver){\n\t\t\t\t\tnew MutationObserver( throttledCheckElements ).observe( docElem, {childList: true, subtree: true, attributes: true} );\n\t\t\t\t} else {\n\t\t\t\t\tdocElem[_addEventListener]('DOMNodeInserted', throttledCheckElements, true);\n\t\t\t\t\tdocElem[_addEventListener]('DOMAttrModified', throttledCheckElements, true);\n\t\t\t\t\tsetInterval(throttledCheckElements, 999);\n\t\t\t\t}\n\n\t\t\t\taddEventListener('hashchange', throttledCheckElements, true);\n\n\t\t\t\t//, 'fullscreenchange'\n\t\t\t\t['focus', 'mouseover', 'click', 'load', 'transitionend', 'animationend'].forEach(function(name){\n\t\t\t\t\tdocument[_addEventListener](name, throttledCheckElements, true);\n\t\t\t\t});\n\n\t\t\t\tif((/d$|^c/.test(document.readyState))){\n\t\t\t\t\tonload();\n\t\t\t\t} else {\n\t\t\t\t\taddEventListener('load', onload);\n\t\t\t\t\tdocument[_addEventListener]('DOMContentLoaded', throttledCheckElements);\n\t\t\t\t\tsetTimeout(onload, 20000);\n\t\t\t\t}\n\n\t\t\t\tif(lazysizes.elements.length){\n\t\t\t\t\tcheckElements();\n\t\t\t\t\trAF._lsFlush();\n\t\t\t\t} else {\n\t\t\t\t\tthrottledCheckElements();\n\t\t\t\t}\n\t\t\t},\n\t\t\tcheckElems: throttledCheckElements,\n\t\t\tunveil: unveilElement,\n\t\t\t_aLSL: altLoadmodeScrollListner,\n\t\t};\n\t})();\n\n\n\tvar autoSizer = (function(){\n\t\tvar autosizesElems;\n\n\t\tvar sizeElement = rAFIt(function(elem, parent, event, width){\n\t\t\tvar sources, i, len;\n\t\t\telem._lazysizesWidth = width;\n\t\t\twidth += 'px';\n\n\t\t\telem.setAttribute('sizes', width);\n\n\t\t\tif(regPicture.test(parent.nodeName || '')){\n\t\t\t\tsources = parent.getElementsByTagName('source');\n\t\t\t\tfor(i = 0, len = sources.length; i < len; i++){\n\t\t\t\t\tsources[i].setAttribute('sizes', width);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif(!event.detail.dataAttr){\n\t\t\t\tupdatePolyfill(elem, event.detail);\n\t\t\t}\n\t\t});\n\t\tvar getSizeElement = function (elem, dataAttr, width){\n\t\t\tvar event;\n\t\t\tvar parent = elem.parentNode;\n\n\t\t\tif(parent){\n\t\t\t\twidth = getWidth(elem, parent, width);\n\t\t\t\tevent = triggerEvent(elem, 'lazybeforesizes', {width: width, dataAttr: !!dataAttr});\n\n\t\t\t\tif(!event.defaultPrevented){\n\t\t\t\t\twidth = event.detail.width;\n\n\t\t\t\t\tif(width && width !== elem._lazysizesWidth){\n\t\t\t\t\t\tsizeElement(elem, parent, event, width);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tvar updateElementsSizes = function(){\n\t\t\tvar i;\n\t\t\tvar len = autosizesElems.length;\n\t\t\tif(len){\n\t\t\t\ti = 0;\n\n\t\t\t\tfor(; i < len; i++){\n\t\t\t\t\tgetSizeElement(autosizesElems[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tvar debouncedUpdateElementsSizes = debounce(updateElementsSizes);\n\n\t\treturn {\n\t\t\t_: function(){\n\t\t\t\tautosizesElems = document.getElementsByClassName(lazySizesCfg.autosizesClass);\n\t\t\t\taddEventListener('resize', debouncedUpdateElementsSizes);\n\t\t\t},\n\t\t\tcheckElems: debouncedUpdateElementsSizes,\n\t\t\tupdateElem: getSizeElement\n\t\t};\n\t})();\n\n\tvar init = function(){\n\t\tif(!init.i && document.getElementsByClassName){\n\t\t\tinit.i = true;\n\t\t\tautoSizer._();\n\t\t\tloader._();\n\t\t}\n\t};\n\n\tsetTimeout(function(){\n\t\tif(lazySizesCfg.init){\n\t\t\tinit();\n\t\t}\n\t});\n\n\tlazysizes = {\n\t\tcfg: lazySizesCfg,\n\t\tautoSizer: autoSizer,\n\t\tloader: loader,\n\t\tinit: init,\n\t\tuP: updatePolyfill,\n\t\taC: addClass,\n\t\trC: removeClass,\n\t\thC: hasClass,\n\t\tfire: triggerEvent,\n\t\tgW: getWidth,\n\t\trAF: rAF,\n\t};\n\n\treturn lazysizes;\n}\n));\n"],"sourceRoot":"assets/scripts/"}