Overview

URLtodapharma.fr/
IP 83.166.138.66 (Switzerland)
ASN#29222 Infomaniak Network SA
UserAgentMozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Referer
Report completed2022-11-26 08:47:28 UTC
StatusLoading report..
IDS alerts0
Blocklist alert2
urlquery alerts No alerts detected
Tags None

Domain Summary (23)

Fully Qualifying Domain Name Rank First Seen Last Seen IP Comment
content-signature-2.cdn.mozilla.net (1) 1152 No data No data 34.160.144.191
cdnjs.cloudflare.com (1) 235 No data No data 104.17.25.14
maps.gstatic.com (1) 0 No data No data 142.250.74.163 Domain (gstatic.com) ranked at: 540
translate.google.com (1) 1156 No data No data 142.250.74.46
www.todapharma.com (191) 0 No data No data 83.166.138.66 Unknown ranking
ocsp.pki.goog (10) 175 No data No data 142.250.74.35
www.googletagmanager.com (2) 75 No data No data 142.250.74.168
ocsp.sectigo.com (2) 487 No data No data 172.64.155.188
brmzajgei.preview.infomaniak.website (4) 0 No data No data 83.166.138.66 Domain (infomaniak.website) ranked at: 324351
translate.googleapis.com (1) 1005 No data No data 142.250.74.42
use.fontawesome.com (2) 942 No data No data 172.64.133.15
r3.o.lencr.org (8) 344 No data No data 23.36.76.226
ocsp.digicert.com (5) 86 No data No data 93.184.220.29
firefox.settings.services.mozilla.com (2) 867 No data No data 34.102.187.140
fonts.gstatic.com (4) 0 No data No data 216.58.207.195 Domain (gstatic.com) ranked at: 540
fonts.googleapis.com (2) 8877 No data No data 142.250.74.10
contile.services.mozilla.com (1) 1114 No data No data 34.117.237.239
todapharma.fr (2) 0 No data No data 83.166.138.66 Unknown ranking
push.services.mozilla.com (1) 2140 No data No data 34.212.166.60
img-getpocket.cdn.mozilla.net (5) 1631 No data No data 34.120.237.76
www.google.com (1) 7 No data No data 142.250.74.164
region1.google-analytics.com (1) 0 No data No data 216.239.34.36 Domain (google-analytics.com) ranked at: 8401
www.google-analytics.com (1) 40 No data No data 142.250.74.174

Network Intrusion Detection Systemsinfo

Suricata /w Emerging Threats Pro
 No alerts detected

Blocklists

OpenPhish
 No alerts detected

PhishTank
 No alerts detected

Fortinet's Web Filter
Scan Date Severity Indicator Comment
2022-11-26 2 todapharma.fr/ Phishing
2022-11-26 2 todapharma.fr/ Phishing

mnemonic secure dns
 No alerts detected

Quad9 DNS
 No alerts detected


Files

No files detected

Recent reports on same IP/ASN/Domain/Screenshot

Last 5 reports on IP: 83.166.138.66
Date UQ / IDS / BL URL IP
2023-01-28 08:47:40 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-12-22 09:56:14 +0000 0 - 1 - 0 asbldebruxelles.be/ 83.166.138.66
2022-11-26 08:47:28 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-09-15 07:45:18 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-09-14 07:44:36 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66


Last 5 reports on ASN: Infomaniak Network SA
Date UQ / IDS / BL URL IP
2023-01-29 20:45:52 +0000 0 - 0 - 15 soblaco.fr/ 195.15.227.59
2023-01-29 16:28:45 +0000 0 - 1 - 0 www.agilsport.fr/download/install_skiFFS_64bi (...) 83.166.138.2
2023-01-29 11:40:44 +0000 0 - 1 - 0 www.git.ch/saas/CitrixWorkspaceApp.exe 93.88.245.115
2023-01-29 11:40:11 +0000 0 - 1 - 0 www.git.ch/saas/XenAppWeb.exe 93.88.245.115
2023-01-29 03:43:01 +0000 0 - 0 - 26 www.esthetrip.ch/wp-content/plugins/elementor (...) 128.65.192.211


Last 5 reports on domain: todapharma.fr
Date UQ / IDS / BL URL IP
2023-01-28 08:47:40 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-11-26 08:47:28 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-09-15 07:45:18 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-09-14 07:44:36 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66
2022-09-06 09:42:36 +0000 0 - 0 - 2 todapharma.fr/ 83.166.138.66


No other reports with similar screenshot

JavaScript

Executed Scripts (123)

Executed Evals (2)
#1 JavaScript::Eval (size: 214460) - SHA256: 4aa3da196f8485ad547f5bc1b8a5ca1cf7207e0fc361fa345ce7775d98fa5368
! function(se) {
    "use strict";
    window._layerSliders = {}, se.fn.layerSlider = function(i, a, s, r) {
        i = i || {};
        var t, e = "1.8.0",
            o = se.fn.jquery;
        if (window._layerSlider.checkVersions(e, o, e)) return (typeof i).match("object|undefined") ? this.each(function(e) {
            t = "LS" + Math.random().toString(36).substr(2, 9), se(this).data("lsSliderUID") || (window._layerSliders[t] = new n(this, se(this), i, t))
        }) : "data" === i ? window._layerSliders[this.data("lsSliderUID")] : "eventData" === i ? window._layerSliders[this.data("lsSliderUID")].api.eventData() : "defaultInitOptions" === i ? window._layerSliders[this.data("lsSliderUID")].defaults.init.options || !1 : "userInitOptions" === i ? window._layerSliders[this.data("lsSliderUID")].userInitOptions || !1 : "sliderInitOptions" === i ? window._layerSliders[this.data("lsSliderUID")].o || !1 : "originalMarkup" === i ? window._layerSliders[this.data("lsSliderUID")].originalMarkup || !1 : this.each(function(e) {
            var t = window._layerSliders[se(this).data("lsSliderUID")];
            t && t.api.methods(i, a, s, r), t = null
        });
        window._layerSlider.showNotice(this, "oldjquery", o, e)
    };
    var n = function(W, _, a, z) {
        _.data("lsSliderUID", z).attr("data-layerslider-uid", z);
        var ie = this,
            ae = ie.gsap = window._layerSlider.GSAP ? window._layerSlider.GSAP : window;
        ie.defaults = {
            init: {
                lsDataArraySplitChar: "|",
                dataKey: "_LS",
                controls: ["#playmedia", "#pausemedia", "#unmute", "#unmutemedia", "#start", "#stop", "#prev", "#next", "#replay", "#reverse", "#reverse-replay", "#reversereplay"],
                options: {
                    type: "responsive",
                    fullSizeMode: "normal",
                    fitScreenWidth: !0,
                    preventSliderClip: !0,
                    allowFullscreen: !0,
                    responsiveUnder: -1,
                    layersContainerWidth: -1,
                    layersContainerHeight: -1,
                    maxRatio: -1,
                    insertMethod: "prependTo",
                    insertSelector: null,
                    clipSlideTransition: !1,
                    slideBGSize: "cover",
                    slideBGPosition: "50% 50%",
                    preferBlendMode: !1,
                    autoStart: !0,
                    startInViewport: !0,
                    playByScroll: !1,
                    playByScrollSpeed: 1,
                    playByScrollStart: !1,
                    playByScrollSkipSlideBreaks: !1,
                    pauseOnHover: "slideshowOnly",
                    pauseLayers: !1,
                    firstSlide: 1,
                    sliderFadeInDuration: 350,
                    cycles: -1,
                    forceCycles: !0,
                    twoWaySlideshow: !1,
                    shuffleSlideshow: !1,
                    forceLayersOutDuration: 750,
                    skin: "v6",
                    skinsPath: "/layerslider/skins/",
                    globalBGColor: "transparent",
                    globalBGImage: !1,
                    globalBGRepeat: "no-repeat",
                    globalBGAttachment: "scroll",
                    globalBGSize: "auto",
                    globalBGPosition: "50% 50%",
                    navPrevNext: !0,
                    navStartStop: !0,
                    navButtons: !0,
                    keybNav: !0,
                    touchNav: !0,
                    hoverPrevNext: !0,
                    hoverBottomNav: !1,
                    showBarTimer: !1,
                    showCircleTimer: !0,
                    showSlideBarTimer: !1,
                    thumbnailNavigation: "hover",
                    tnContainerWidth: "60%",
                    tnWidth: 100,
                    tnHeight: 60,
                    tnActiveOpacity: 35,
                    tnInactiveOpacity: 100,
                    scrollModifier: 0,
                    autoPlayVideos: !0,
                    autoPauseSlideshow: "auto",
                    youtubePreview: "maxresdefault.jpg",
                    rememberUnmuteState: !0,
                    parallaxCenterDegree: 40,
                    parallaxSensitivity: 10,
                    parallaxCenterLayers: "center",
                    parallaxScrollReverse: !1,
                    yourLogo: !1,
                    yourLogoStyle: "left: -10px; top: -10px;",
                    yourLogoLink: !1,
                    yourLogoTarget: "_self",
                    optimizeForMobile: !0,
                    hideOnMobile: !1,
                    hideUnder: -1,
                    hideOver: -1,
                    slideOnSwipe: !0,
                    allowRestartOnResize: !1,
                    useSrcset: !0,
                    hashChange: !1,
                    staticImage: ""
                }
            },
            slider: {
                errorText: "LayerSlider (UID: " + z + ") error:"
            },
            slide: {
                keys: {
                    slidedelay: ["data", "duration"],
                    duration: ["data", "duration"],
                    timeshift: ["data", "timeShift"],
                    transition2d: ["data", "transition2d"],
                    transition3d: ["data", "transition3d"],
                    transitionorigami: ["data", "transitionorigami"],
                    customtransition2d: ["data", "customtransition2d"],
                    customtransition3d: ["data", "customtransition3d"],
                    transitionduration: ["data", "transitionDuration"],
                    backgroundsize: ["data", "backgroundSize"],
                    bgsize: ["data", "backgroundSize"],
                    backgroundposition: ["data", "backgroundPosition"],
                    bgposition: ["data", "backgroundPosition"],
                    backgroundcolor: ["data", "backgroundColor"],
                    bgcolor: ["data", "backgroundColor"],
                    thumbnail: ["data", "thumbnail"],
                    deeplink: ["data", "deeplink"],
                    overflow: ["data", "overflow"],
                    kenburnspan: ["kenBurns", "pan"],
                    kenburnszoom: ["kenBurns", "zoom"],
                    kenburnsrotation: ["kenBurns", "rotation"],
                    kenburnsrotate: ["kenBurns", "rotation"],
                    kenburnsscale: ["kenBurns", "scale"],
                    filterfrom: ["filter", "from"],
                    filterto: ["filter", "to"],
                    parallaxtype: ["parallax", "type"],
                    parallaxevent: ["parallax", "event"],
                    parallaxpath: ["parallax", "path"],
                    parallaxdirection: ["parallax", "direction"],
                    parallaxduration: ["parallax", "duration"],
                    parallaxcount: ["parallax", "count"],
                    parallaxdelay: ["parallax", "startAt"],
                    parallaxstartat: ["parallax", "startAt"],
                    parallaxaxis: ["parallax", "axis"],
                    parallaxtransformorigin: ["parallax", "transformOrigin"],
                    parallaxdurationmove: ["parallax", "durationMove"],
                    parallaxdurationleave: ["parallax", "durationLeave"],
                    parallaxrotate: ["parallax", "rotation"],
                    parallaxrotation: ["parallax", "rotation"],
                    parallaxdistance: ["parallax", "distance"],
                    parallaxtransformperspective: ["parallax", "transformPerspective"],
                    globalhover: ["data", "globalhover"]
                },
                options: {
                    $link: !1,
                    index: -1,
                    data: {
                        duration: -1,
                        timeShift: 0,
                        calculatedTimeShift: 0
                    },
                    parallax: {},
                    kenBurns: {
                        scale: 1.2
                    },
                    filter: {}
                },
                registerPluginDefaults: function(e, t, i) {
                    ie.defaults.slide.options.plugins || (ie.defaults.slide.options.plugins = {}), ie.defaults.slide.options.plugins[e] = t
                }
            },
            layer: {
                keys: {
                    keyframe: ["is"],
                    responsive: ["is"],
                    position: ["settings"],
                    static: ["settings"],
                    mirrortransitions: ["settings"],
                    minfontsize: ["styleSettings"],
                    minmobilefontsize: ["styleSettings"],
                    overlay: ["styleSettings"],
                    pointerevents: ["styleSettings"],
                    autoplay: ["mediaSettings"],
                    controls: ["mediaSettings"],
                    showinfo: ["mediaSettings"],
                    fillmode: ["mediaSettings"],
                    thumbnail: ["poster", "mediaSettings"],
                    poster: ["mediaSettings"],
                    volume: ["mediaSettings"],
                    muted: ["mediaSettings"],
                    loopmedia: ["loop", "mediaSettings"],
                    backgroundvideo: ["backgroundVideo", "mediaSettings"],
                    fadein: ["opacity", "inLayerFromCSS"],
                    opacityin: ["opacity", "inLayerFromCSS"],
                    rotatein: ["rotation", "inLayerFromCSS"],
                    rotatexin: ["rotationX", "inLayerFromCSS"],
                    rotateyin: ["rotationY", "inLayerFromCSS"],
                    rotationin: ["rotation", "inLayerFromCSS"],
                    rotationxin: ["rotationX", "inLayerFromCSS"],
                    rotationyin: ["rotationY", "inLayerFromCSS"],
                    scalein: ["scale", "inLayerFromCSS"],
                    scalexin: ["scaleX", "inLayerFromCSS"],
                    scaleyin: ["scaleY", "inLayerFromCSS"],
                    skewxin: ["skewX", "inLayerFromCSS"],
                    skewyin: ["skewY", "inLayerFromCSS"],
                    bgcolorin: ["backgroundColor", "inLayerStyleFromCSS"],
                    colorin: ["color", "inLayerStyleFromCSS"],
                    radiusin: ["borderRadius", "inLayerStyleShouldBeConvertedFrom"],
                    widthin: ["width", "inLayerStyleShouldBeConvertedFrom"],
                    heightin: ["height", "inLayerStyleShouldBeConvertedFrom"],
                    filterin: ["filter", "inLayerStyleShouldBeConvertedFrom"],
                    rotate: ["rotation", "inLayerToCSS"],
                    rotatex: ["rotationX", "inLayerToCSS"],
                    rotatey: ["rotationY", "inLayerToCSS"],
                    rotation: ["rotation", "inLayerToCSS"],
                    rotationx: ["rotationX", "inLayerToCSS"],
                    rotationy: ["rotationY", "inLayerToCSS"],
                    scale: ["scale", "inLayerToCSS"],
                    scalex: ["scaleX", "inLayerToCSS"],
                    scaley: ["scaleY", "inLayerToCSS"],
                    skewx: ["skewX", "inLayerToCSS"],
                    skewy: ["skewY", "inLayerToCSS"],
                    transformoriginin: ["transformOrigin", "inLayerShouldBeConverted"],
                    offsetxin: ["x", "inLayerShouldBeConverted"],
                    offsetyin: ["y", "inLayerShouldBeConverted"],
                    clipin: ["clip", "inClipShouldBeConverted"],
                    delayin: ["startAt", "in"],
                    startatin: ["startAt", "in"],
                    instartat: ["startAt", "in"],
                    durationin: ["duration", "in"],
                    easein: ["ease", "in"],
                    easingin: ["ease", "in"],
                    transitionin: ["enabled", "in"],
                    textfadein: ["opacity", "textInNodesFrom"],
                    textopacityin: ["opacity", "textInNodesFrom"],
                    textrotatein: ["rotation", "textInNodesFrom"],
                    textrotatexin: ["rotationX", "textInNodesFrom"],
                    textrotateyin: ["rotationY", "textInNodesFrom"],
                    textrotationin: ["rotation", "textInNodesFrom"],
                    textrotationxin: ["rotationX", "textInNodesFrom"],
                    textrotationyin: ["rotationY", "textInNodesFrom"],
                    textscalein: ["scale", "textInNodesFrom"],
                    textscalexin: ["scaleX", "textInNodesFrom"],
                    textscaleyin: ["scaleY", "textInNodesFrom"],
                    textskewxin: ["skewX", "textInNodesFrom"],
                    textskewyin: ["skewY", "textInNodesFrom"],
                    texteasein: ["ease", "textInNodesTo"],
                    texteasingin: ["ease", "textInNodesTo"],
                    texttransformoriginin: ["transformOrigin", "textInShouldBeConverted"],
                    textoffsetxin: ["x", "textInShouldBeConverted"],
                    textoffsetyin: ["y", "textInShouldBeConverted"],
                    texttypein: ["type", "textIn"],
                    textshiftin: ["shiftNodes", "textIn"],
                    textdelayin: ["startAt", "textIn"],
                    textstartatin: ["startAt", "textIn"],
                    textinstartat: ["startAt", "textIn"],
                    textdurationin: ["duration", "textIn"],
                    texttransitionin: ["enabled", "textIn"],
                    fadeout: ["opacity", "outLayerToCSS"],
                    opacityout: ["opacity", "outLayerToCSS"],
                    rotateout: ["rotation", "outLayerToCSS"],
                    rotatexout: ["rotationX", "outLayerToCSS"],
                    rotateyout: ["rotationY", "outLayerToCSS"],
                    rotationout: ["rotation", "outLayerToCSS"],
                    rotationxout: ["rotationX", "outLayerToCSS"],
                    rotationyout: ["rotationY", "outLayerToCSS"],
                    scaleout: ["scale", "outLayerToCSS"],
                    scalexout: ["scaleX", "outLayerToCSS"],
                    scaleyout: ["scaleY", "outLayerToCSS"],
                    skewxout: ["skewX", "outLayerToCSS"],
                    skewyout: ["skewY", "outLayerToCSS"],
                    bgcolorout: ["backgroundColor", "outLayerStyleToCSS"],
                    colorout: ["color", "outLayerStyleToCSS"],
                    radiusout: ["borderRadius", "outLayerStyleShouldBeConvertedTo"],
                    widthout: ["width", "outLayerStyleShouldBeConvertedTo"],
                    heightout: ["height", "outLayerStyleShouldBeConvertedTo"],
                    filterout: ["filter", "outLayerStyleShouldBeConvertedTo"],
                    transformoriginout: ["transformOrigin", "outLayerShouldBeConverted"],
                    offsetxout: ["x", "outLayerShouldBeConverted"],
                    offsetyout: ["y", "outLayerShouldBeConverted"],
                    clipout: ["clip", "outClipShouldBeConverted"],
                    showuntil: ["showUntil", "out"],
                    startatout: ["startAt", "out"],
                    outstartat: ["startAt", "out"],
                    durationout: ["duration", "out"],
                    easeout: ["ease", "out"],
                    easingout: ["ease", "out"],
                    transitionout: ["enabled", "out"],
                    textfadeout: ["opacity", "textOutNodesTo"],
                    textopacityout: ["opacity", "textOutNodesTo"],
                    textrotateout: ["rotation", "textOutNodesTo"],
                    textrotatexout: ["rotationX", "textOutNodesTo"],
                    textrotateyout: ["rotationY", "textOutNodesTo"],
                    textrotationout: ["rotation", "textOutNodesTo"],
                    textrotationxout: ["rotationX", "textOutNodesTo"],
                    textrotationyout: ["rotationY", "textOutNodesTo"],
                    textscaleout: ["scale", "textOutNodesTo"],
                    textscalexout: ["scaleX", "textOutNodesTo"],
                    textscaleyout: ["scaleY", "textOutNodesTo"],
                    textskewxout: ["skewX", "textOutNodesTo"],
                    textskewyout: ["skewY", "textOutNodesTo"],
                    texteaseout: ["ease", "textOutNodesTo"],
                    texteasingout: ["ease", "textOutNodesTo"],
                    texttransformoriginout: ["transformOrigin", "textOutShouldBeConverted"],
                    textoffsetxout: ["x", "textOutShouldBeConverted"],
                    textoffsetyout: ["y", "textOutShouldBeConverted"],
                    texttypeout: ["type", "textOut"],
                    textshiftout: ["shiftNodes", "textOut"],
                    textdelayout: ["startAt", "textOut"],
                    textstartatout: ["startAt", "textOut"],
                    textoutstartat: ["startAt", "textOut"],
                    textdurationout: ["duration", "textOut"],
                    texttransitionout: ["enabled", "textOut"],
                    loopopacity: ["opacity", "loopToCSS"],
                    looprotate: ["rotation", "loopToCSS"],
                    looprotatex: ["rotationX", "loopToCSS"],
                    looprotatey: ["rotationY", "loopToCSS"],
                    looprotation: ["rotation", "loopToCSS"],
                    looprotationx: ["rotationX", "loopToCSS"],
                    looprotationy: ["rotationY", "loopToCSS"],
                    loopscale: ["scale", "loopToCSS"],
                    loopscalex: ["scaleX", "loopToCSS"],
                    loopscaley: ["scaleY", "loopToCSS"],
                    loopskewx: ["skewX", "loopToCSS"],
                    loopskewy: ["skewY", "loopToCSS"],
                    looptransformorigin: ["transformOrigin", "loopLayerShouldBeConverted"],
                    loopoffsetx: ["x", "loopLayerShouldBeConverted"],
                    loopoffsety: ["y", "loopLayerShouldBeConverted"],
                    loopfilter: ["filter", "loopLayerShouldBeConverted"],
                    loopclip: ["clip", "loopClipShouldBeConverted"],
                    loopdelay: ["startAt", "loop"],
                    loopstartat: ["startAt", "loop"],
                    loopduration: ["duration", "loop"],
                    loopcount: ["count", "loop"],
                    looprepeatdelay: ["repeatDelay", "loop"],
                    loopyoyo: ["yoyo", "loop"],
                    loopease: ["ease", "loop"],
                    loopeasing: ["ease", "loop"],
                    loop: ["enabled", "loop"],
                    hoveropacity: ["opacity", "hoverToCSS"],
                    hoverrotate: ["rotation", "hoverToCSS"],
                    hoverrotatex: ["rotationX", "hoverToCSS"],
                    hoverrotatey: ["rotationY", "hoverToCSS"],
                    hoverrotation: ["rotation", "hoverToCSS"],
                    hoverrotationx: ["rotationX", "hoverToCSS"],
                    hoverrotationy: ["rotationY", "hoverToCSS"],
                    hoverscale: ["scale", "hoverToCSS"],
                    hoverscalex: ["scaleX", "hoverToCSS"],
                    hoverscaley: ["scaleY", "hoverToCSS"],
                    hoverskewx: ["skewX", "hoverToCSS"],
                    hoverskewy: ["skewY", "hoverToCSS"],
                    hoverbgcolor: ["backgroundColor", "hoverToCSS"],
                    hovercolor: ["color", "hoverToCSS"],
                    hoverease: ["easeIn", "hover"],
                    hovereasing: ["easeIn", "hover"],
                    hovereasein: ["easeIn", "hover"],
                    hovereasingin: ["easeIn", "hover"],
                    hovereaseout: ["easeOut", "hover"],
                    hovereasingout: ["easeOut", "hover"],
                    hoverduration: ["durationIn", "hover"],
                    hoverdurationin: ["durationIn", "hover"],
                    hoverdurationout: ["durationOut", "hover"],
                    hoveralwaysontop: ["alwaysOnTop", "hover"],
                    hoveroffsetx: ["x", "hoverShouldBeConverted"],
                    hoveroffsety: ["y", "hoverShouldBeConverted"],
                    hoverfilter: ["filter", "hoverShouldBeConverted"],
                    hoverborderradius: ["borderRadius", "hoverShouldBeConverted"],
                    hoverradius: ["borderRadius", "hoverShouldBeConverted"],
                    hovertransformorigin: ["transformOrigin", "hoverShouldBeConverted"],
                    hover: ["enabled", "hover"],
                    kenburnspan: ["pan", "kenBurns"],
                    kenburnszoom: ["zoom", "kenBurns"],
                    kenburnsrotation: ["rotation", "kenBurns"],
                    kenburnsrotate: ["rotation", "kenBurns"],
                    kenburnsscale: ["scale", "kenBurns"],
                    parallaxlevel: ["level", "parallax"],
                    parallaxtype: ["type", "parallax"],
                    parallaxevent: ["event", "parallax"],
                    parallaxpath: ["path", "parallax"],
                    parallaxdirection: ["direction", "parallax"],
                    parallaxduration: ["duration", "parallax"],
                    parallaxcount: ["count", "parallax"],
                    parallaxdelay: ["startAt", "parallax"],
                    parallaxstartat: ["startAt", "parallax"],
                    parallaxaxis: ["axis", "parallax"],
                    parallaxtransformorigin: ["transformOrigin", "parallax"],
                    parallaxdurationmove: ["durationMove", "parallax"],
                    parallaxdurationleave: ["durationLeave", "parallax"],
                    parallaxrotate: ["rotation", "parallax"],
                    parallaxrotation: ["rotation", "parallax"],
                    parallaxdistance: ["distance", "parallax"],
                    parallax: ["enabled", "parallax"],
                    transformperspective: ["layer", "transformPerspective"],
                    transformperspectivein: ["layer", "transformPerspective"],
                    transformperspectiveout: ["layer", "transformPerspective"],
                    texttransformperspective: ["text", "transformPerspective"],
                    texttransformperspectivein: ["text", "transformPerspective"],
                    texttransformperspectiveout: ["text", "transformPerspective"],
                    looptransformperspective: ["loop", "transformPerspective"],
                    hovertransformperspective: ["hover", "transformPerspective"],
                    parallaxtransformperspective: ["parallax", "transformPerspective"]
                },
                splitTypeKeys: ["chars_asc", "chars_desc", "chars_rand", "chars_center", "chars_edge", "words_asc", "words_desc", "words_rand", "words_center", "words_edge", "lines_asc", "lines_desc", "lines_rand", "lines_center", "lines_edge"],
                timelineHierarchy: {
                    slidestart: [0],
                    transitioninstart: [1],
                    transitioninend: [2],
                    textinstart: [3, [1, 2, 6, 7, 8]],
                    textinend: [4],
                    allinend: [5],
                    loopstart: [6, [1, 2, 3, 4, 5]],
                    loopend: [7],
                    autoparallaxstart: [6.5, [0, 1, 2, 3, 4, 5, 6, 7]],
                    autoparallaxend: [7.5],
                    transitioninandloopend: [8],
                    textinandloopend: [9],
                    allinandloopend: [10],
                    textoutstart: [11, [2, 3, 4, 5, 6, 7, 8, 9, 10]],
                    textoutend: [12],
                    textoutandloopend: [13],
                    transitionoutstart: [14, [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]],
                    transitionoutend: [15],
                    alloutend: [16],
                    alloutandloopend: [17]
                },
                properties: {
                    filter: function() {
                        return {
                            blur: 0,
                            brightness: 100,
                            contrast: 100,
                            grayscale: 0,
                            "hue-rotate": 0,
                            invert: 0,
                            saturate: 100,
                            sepia: 0
                        }
                    }
                },
                options: function(e, t) {
                    var i = {
                        is: {
                            slideBackground: !!e.is("img.ls-bg"),
                            backgroundVideo: !!e.is(".ls-bg-video"),
                            imageLayer: !!e.is("img.ls-layer"),
                            mediaLayer: !1,
                            textLayer: !1,
                            responsive: !0,
                            onSlide: t
                        },
                        should: {},
                        elements: {},
                        settings: {
                            position: "relative",
                            slideIn: t,
                            slideOut: t
                        },
                        styleSettings: {
                            minfontsize: 0,
                            minmobilefontsize: 0
                        },
                        mediaSettings: {
                            fillmode: "cover",
                            backgroundVideo: !1
                        },
                        timeline: {
                            slidestart: 0,
                            transitioninstart: 0,
                            transitioninend: 0,
                            textinstart: 0,
                            textinend: 0,
                            allinend: function(e) {
                                return Math.max(this.transitioninend, this.textinend)
                            },
                            loopstart: 0,
                            loopend: 0,
                            transitioninandloopend: function(e) {
                                return 0 === this.loopend && e.loop.enabled && ("number" == typeof e.loop.startAt || -1 !== e.loop.startAt.indexOf("textinstart") && -1 !== e.loop.startAt.indexOf("textinend") && -1 !== e.loop.startAt.indexOf("allinend")) ? (this.loopstart = ie.transitions.layers.timeline.getTiming(e, e.loop.startAt, "loopstart"), this.loopend = -1 !== e.loop.count && e.timeline.loopstart + (e.loop.repeat + 1) * e.loop.duration + e.loop.repeat * e.loop.repeatDelay) : ie.debugMode && ie.debug.add("warn", "layerTransition.infinite", e.self[0].tagName + "." + e.self.attr("class") + " [ " + e.self.html().substr(0, 30) + "... ]"), Math.max(this.transitioninend, this.loopend)
                            },
                            textinandloopend: function(e) {
                                return Math.max(this.textinend, this.loopend)
                            },
                            allinandloopend: function(e) {
                                return Math.max(this.allinend(), this.loopend)
                            },
                            textoutstart: 0,
                            textoutend: 0,
                            textoutandloopend: function(e) {
                                return Math.max(this.textoutend, this.loopend)
                            },
                            transitionoutstart: function(e) {
                                return Math.max(this.allinandloopend(), this.textoutend)
                            },
                            transitionoutend: 0,
                            alloutend: function(e) {
                                return Math.max(this.transitionoutend, this.textoutend, this.allinend())
                            },
                            alloutandloopend: function(e) {
                                return Math.max(this.transitionoutend, this.textoutandloopend(), this.allinend())
                            },
                            staticfrom: !1,
                            staticto: !1
                        },
                        transitionProperties: { in : {
                                enabled: !0,
                                layerFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {
                                        opacity: 0
                                    }
                                },
                                layerTo: {
                                    autoCSS: !1,
                                    onStart: function() {
                                        ie.transitions.layers.in.onStart(e)
                                    },
                                    onComplete: function() {
                                        ie.transitions.layers.in.onComplete(e)
                                    },
                                    css: {
                                        display: "block",
                                        opacity: 1,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scaleX: 1,
                                        scaleY: 1,
                                        skewX: 0,
                                        skewY: 0,
                                        x: 0,
                                        y: 0
                                    }
                                },
                                layerStyleFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                layerStyleTo: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                clipFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                clipTo: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                layerShouldBeConverted: {
                                    transformOrigin: "50% 50% 0",
                                    x: 0,
                                    y: 0
                                },
                                layerStyleShouldBeConvertedFrom: {},
                                layerStyleShouldBeConvertedTo: {},
                                clipShouldBeConverted: {},
                                startAt: 0,
                                duration: 1,
                                ease: "easeInOutQuint"
                            }, textIn: {
                                enabled: null,
                                nodesFrom: {
                                    cycle: {},
                                    random: {},
                                    opacity: 0
                                },
                                nodesTo: {
                                    ease: "easeInOutQuint",
                                    css: {
                                        opacity: 1,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scaleX: 1,
                                        scaleY: 1,
                                        skewX: 0,
                                        skewY: 0,
                                        x: 0,
                                        y: 0
                                    }
                                },
                                shouldBeConverted: {
                                    cycle: {},
                                    random: {},
                                    transformOrigin: "50% 50% 0",
                                    x: 0,
                                    y: 0
                                },
                                split: "",
                                shiftNodes: .05,
                                startAt: "transitioninend",
                                duration: 1
                            }, out: {
                                enabled: !0,
                                layerFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                layerTo: {
                                    autoCSS: !1,
                                    onStart: function() {
                                        ie.transitions.layers.out.onStart(e)
                                    },
                                    onComplete: function() {
                                        ie.transitions.layers.out.onComplete(e)
                                    },
                                    css: {
                                        opacity: 0,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scaleX: 1,
                                        scaleY: 1,
                                        skewX: 0,
                                        skewY: 0
                                    }
                                },
                                layerStyleFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                layerStyleTo: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                clipFrom: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                clipTo: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                layerShouldBeConverted: {
                                    x: 0,
                                    y: 0
                                },
                                layerStyleShouldBeConvertedFrom: {},
                                layerStyleShouldBeConvertedTo: {},
                                clipShouldBeConverted: {},
                                startAt: "slidechangeonly",
                                duration: 1,
                                ease: "easeInOutQuint"
                            }, textOut: {
                                enabled: null,
                                nodesFrom: {
                                    immediateRender: !1,
                                    cycle: {},
                                    opacity: 1
                                },
                                nodesTo: {
                                    ease: "easeInOutQuint",
                                    immediateRender: !1,
                                    cycle: {},
                                    random: {},
                                    opacity: 0
                                },
                                shouldBeConverted: {
                                    cycle: {},
                                    random: {},
                                    x: 0,
                                    y: 0
                                },
                                split: "",
                                startAt: "allinandloopend",
                                shiftNodes: .05,
                                duration: 1
                            }, loop: {
                                enabled: null,
                                from: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                to: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                clipTo: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                layerShouldBeConverted: {
                                    transformOrigin: "50% 50% 0",
                                    x: 0,
                                    y: 0
                                },
                                clipShouldBeConverted: {},
                                ease: "linear",
                                startAt: "allinend",
                                repeatDelay: 0,
                                duration: 1,
                                count: 0,
                                yoyo: !1
                            }, hover: {
                                enabled: null,
                                from: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {}
                                },
                                to: {
                                    autoCSS: !1,
                                    css: {}
                                },
                                shouldBeConverted: {
                                    transformOrigin: "50% 50% 0"
                                },
                                alwaysOnTop: !0,
                                easeIn: "easeInOutQuint",
                                durationIn: .5
                            }, parallax: {
                                enabled: null
                            }, kenBurns: {
                                scale: 1.2
                            }, clip: {
                                enabled: !1,
                                min: "0 0 0 0",
                                max: "-9999 9999 9999 -9999"
                            }, filter: {
                                values: {
                                    style: {},
                                    in : {},
                                    out: {},
                                    loop: {},
                                    hover: {},
                                    afterIn: {},
                                    afterLoop: {},
                                    bgFrom: {},
                                    bgTo: {}
                                },
                                transitions: {
                                    bg: null,
                                    in : null,
                                    out: null,
                                    loop: null,
                                    hover: null
                                }
                            }, init: {
                                wrapper: {
                                    autoCSS: !1,
                                    immediateRender: !1,
                                    css: {
                                        display: "block"
                                    }
                                }
                            }, transformPerspective: {
                                layer: 500,
                                text: 500,
                                loop: 500,
                                hover: 500
                            }, reset: {
                                wrapperOnTimelineEnd: {
                                    autoCSS: !1,
                                    css: {
                                        opacity: 1,
                                        display: "none"
                                    }
                                },
                                wrapperOnSlideChange: {
                                    autoCSS: !1,
                                    css: {
                                        x: 0,
                                        y: 0,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scaleX: 1,
                                        scaleY: 1,
                                        skewX: 0,
                                        skewY: 0,
                                        opacity: 1,
                                        display: "none"
                                    }
                                },
                                loopWrapperOnSlideChange: {
                                    autoCSS: !1,
                                    css: {
                                        x: 0,
                                        y: 0,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scaleX: 1,
                                        scaleY: 1,
                                        skewX: 0,
                                        skewY: 0,
                                        opacity: 1
                                    }
                                }
                            }
                        }
                    };
                    return {
                        is: i.is,
                        should: i.should,
                        elements: i.elements,
                        settings: i.settings,
                        styleSettings: i.styleSettings,
                        mediaSettings: i.mediaSettings,
                        mediaProperties: i.mediaProperties,
                        timeline: i.timeline,
                        in : i.transitionProperties.in,
                        inLayerFrom: i.transitionProperties.in.layerFrom,
                        inLayerFromCSS: i.transitionProperties.in.layerFrom.css,
                        inLayerStyleFrom: i.transitionProperties.in.layerStyleFrom,
                        inLayerStyleFromCSS: i.transitionProperties.in.layerStyleFrom.css,
                        inClipFrom: i.transitionProperties.in.clipFrom,
                        inClipFromCSS: i.transitionProperties.in.clipFrom.css,
                        inLayerTo: i.transitionProperties.in.layerTo,
                        inLayerToCSS: i.transitionProperties.in.layerTo.css,
                        inLayerStyleTo: i.transitionProperties.in.layerStyleTo,
                        inLayerStyleToCSS: i.transitionProperties.in.layerStyleTo.css,
                        inClipTo: i.transitionProperties.in.clipTo,
                        inClipToCSS: i.transitionProperties.in.clipTo.css,
                        inClipShouldBeConverted: i.transitionProperties.in.clipShouldBeConverted,
                        inLayerShouldBeConverted: i.transitionProperties.in.layerShouldBeConverted,
                        inLayerStyleShouldBeConvertedFrom: i.transitionProperties.in.layerStyleShouldBeConvertedFrom,
                        inLayerStyleShouldBeConvertedTo: i.transitionProperties.in.layerStyleShouldBeConvertedTo,
                        textIn: i.transitionProperties.textIn,
                        textInNodesFrom: i.transitionProperties.textIn.nodesFrom,
                        textInNodesTo: i.transitionProperties.textIn.nodesTo,
                        textInNodesToCSS: i.transitionProperties.textIn.nodesTo.css,
                        textInShouldBeConverted: i.transitionProperties.textIn.shouldBeConverted,
                        out: i.transitionProperties.out,
                        outLayerFrom: i.transitionProperties.out.layerFrom,
                        outLayerFromCSS: i.transitionProperties.out.layerFrom.css,
                        outLayerStyleFrom: i.transitionProperties.out.layerStyleFrom,
                        outLayerStyleFromCSS: i.transitionProperties.out.layerStyleFrom.css,
                        outLayerTo: i.transitionProperties.out.layerTo,
                        outLayerToCSS: i.transitionProperties.out.layerTo.css,
                        outLayerStyleTo: i.transitionProperties.out.layerStyleTo,
                        outLayerStyleToCSS: i.transitionProperties.out.layerStyleTo.css,
                        outClipTo: i.transitionProperties.out.clipTo,
                        outClipToCSS: i.transitionProperties.out.clipTo.css,
                        outClipShouldBeConverted: i.transitionProperties.out.clipShouldBeConverted,
                        outLayerShouldBeConverted: i.transitionProperties.out.layerShouldBeConverted,
                        outLayerStyleShouldBeConvertedFrom: i.transitionProperties.out.layerStyleShouldBeConvertedFrom,
                        outLayerStyleShouldBeConvertedTo: i.transitionProperties.out.layerStyleShouldBeConvertedTo,
                        textOut: i.transitionProperties.textOut,
                        textOutNodesFrom: i.transitionProperties.textOut.nodesFrom,
                        textOutNodesTo: i.transitionProperties.textOut.nodesTo,
                        textOutShouldBeConverted: i.transitionProperties.textOut.shouldBeConverted,
                        loop: i.transitionProperties.loop,
                        loopFrom: i.transitionProperties.loop.from,
                        loopFromCSS: i.transitionProperties.loop.from.css,
                        loopTo: i.transitionProperties.loop.to,
                        loopToCSS: i.transitionProperties.loop.to.css,
                        loopClipTo: i.transitionProperties.loop.clipTo,
                        loopClipToCSS: i.transitionProperties.loop.clipTo.css,
                        loopClipShouldBeConverted: i.transitionProperties.loop.clipShouldBeConverted,
                        loopLayerShouldBeConverted: i.transitionProperties.loop.layerShouldBeConverted,
                        hover: i.transitionProperties.hover,
                        hoverFrom: i.transitionProperties.hover.from,
                        hoverFromCSS: i.transitionProperties.hover.from.css,
                        hoverTo: i.transitionProperties.hover.to,
                        hoverToCSS: i.transitionProperties.hover.to.css,
                        hoverShouldBeConverted: i.transitionProperties.hover.shouldBeConverted,
                        parallax: i.transitionProperties.parallax,
                        kenBurns: i.transitionProperties.kenBurns,
                        clip: i.transitionProperties.clip,
                        filter: i.transitionProperties.filter,
                        transformPerspective: i.transitionProperties.transformPerspective,
                        init: i.transitionProperties.init,
                        reset: i.transitionProperties.reset
                    }
                }
            }
        }, ie.slides = {
            count: 0,
            first: {},
            prev: {},
            current: {},
            next: {},
            init: function() {
                if (!document.body.contains(W)) return !1;
                for (var e = _.find("> .ls-layer, > .ls-slide"), t = 0, i = ie.defaults.slide.keys, a = 0, s = e.length; a < s; a++) {
                    var r = se(e[a]),
                        o = r[0].style,
                        n = se.extend(!0, {}, ie.defaults.slide.options);
                    if (ie.slides.count++, r.removeClass("ls-layer").addClass("ls-slide").css({
                            width: ie.slider.initial.originalWidth,
                            height: ie.slider.initial.originalHeight
                        }).appendTo(ie.slider.$hiddenWrapper), r.data("ls"))
                        for (var l = r.data("ls").toLowerCase().split(";"), d = 0; d < l.length; d++) {
                            var u, p, c = l[d].split(":");
                            c[0] = se.trim(c[0]), c[1] = se.trim(c[1]), "" !== c[0] && (void 0 !== i[c[0]] ? (u = void 0 === i[c[0]][1] ? c[0] : i[c[0]][1], p = ie.functions.convert.properties(c[1]), -1 === u.toLowerCase().indexOf("duration") && -1 === u.toLowerCase().indexOf("delay") && "timeShift" != u || (p /= 1e3), n[i[c[0]][0]] || (n[i[c[0]][0]] = {}), n[i[c[0]][0]][u] = p) : n.data[c[0]] = c[1])
                        }
                    if (n.plugins && !se.isEmptyObject(n.plugins))
                        for (var h in n.plugins)
                            if (r.data("ls-plugin-" + h)) {
                                var m = r.data("ls-plugin-" + h).toLowerCase().split(";"),
                                    f = {};
                                for (var g in n.plugins[h]) f[g.toLowerCase()] = g;
                                for (var v = 0; v < m.length; v++) {
                                    var y, b = m[v].split(":");
                                    b[0] = se.trim(b[0]), "" !== b[0] && (y = ie.functions.convert.properties(se.trim(b[1])), -1 === b[0].indexOf("duration") && -1 === b[0].indexOf("delay") || (y /= 1e3), f[b[0]] ? n.plugins[h][f[b[0]]] = y : n.plugins[h][b[0]] = y)
                                }
                            } else delete n.plugins[h];
                    r.children("a.ls-link").length && (n.data.$link = r.children("a.ls-link").first().css({
                        zIndex: 5
                    }).attr("data-ls-slide-link", t + 1).appendTo(ie.slider.$layersWrapper), ie.layers.set.smartLinks(n.data.$link)), n.data.$backgroundVideo = r.children('[data-ls*="backgroundvideo"]').first(), n.data.$backgroundVideo.length && (null !== n.data.$backgroundVideo.attr("data-ls").split("backgroundvideo")[1].split(";")[0].match(/(true|enabled|on|1)/i) ? (n.data.$backgroundVideo.addClass("ls-bg-video").css({
                        width: "auto",
                        height: "auto"
                    }).children("video, audio, iframe").css({
                        width: "100%",
                        height: "100%"
                    }), n.data.$backgroundVideo.append(se('<div class="ls-bg-video-overlay"></div>'))) : n.data.$backgroundVideo = !1);
                    for (var S, w = r.find("picture"), v = 0, x = w.length; v < x; v++) ie.layers.set.pictureElement(se(w[v]));
                    r.find("> .ls-bg").length && (n.data.$background = r.find("> .ls-bg").first()), n.data.thumbnail || (r.find("> .ls-tn").length ? S = r.find("> .ls-tn").first() : r.find("> .ls-bg").length && (S = r.find("> .ls-bg").first()), S ? (n.data.thumbnail = ie.functions.getURL(S), n.data.tnAlt = ie.functions.getALT(S)) : n.data.thumbnail = ie.o.skinsPath + ie.o.skin + "/nothumb.png"), (n.data.customtransition2d || n.data.customtransition3d) && "undefined" == typeof layerSliderCustomTransitions && (delete n.data.customtransition2d, delete n.data.customtransition3d, ie.debugMode && ie.debug.add("warn", "sliderInit.customTransitions", t + 1)), "visible" === o.overflow && (n.data.overflow = "visible"), n.data.backgroundColor || (n.data.backgroundColor = "" === r[0].style.backgroundColor ? "transparent" : r[0].style.backgroundColor), ie.slides[++t] = {}, ie.slides[t].data = se.extend(!0, {}, ie.defaults.slide.options.data, n.data), ie.slides[t].parallax = n.parallax, ie.slides[t].kenBurns = n.kenBurns, ie.slides[t].filter = n.filter, ie.slides[t].index = t, ie.slides[t].$layers = se(), ie.slides[t].plugins = n.plugins, ie.slider.thumbnails.push(n.data.thumbnail), ie.layers.init(r, t)
                }
                ie.debugMode && ie.debug.groupEnd("sliderInit.style")
            },
            set: {
                slideIndexes: function() {
                    var e = ie.slides;
                    e.prev.index = e.current.index, e.current.index = e.next.index, e.next.index = ie.slideshow.get.slideInSequence(ie.slideshow.direction), e.set.slidesData(), ie.slider.set.attributes()
                },
                nextSlideIndex: function(e) {
                    var t = ie.slides;
                    t.next.index = e, t.set.slidesData()
                },
                slidesData: function() {
                    var e = ie.slides;
                    e.prev = -1 !== e.prev.index ? se.extend(!0, {}, e[e.prev.index]) : {}, e.current = -1 !== e.current.index ? se.extend(!0, {}, e[e.current.index]) : {}, e.next = -1 !== e.next.index ? se.extend(!0, {}, e[e.next.index]) : {}
                },
                firstSlide: function() {
                    var e, t = ie.slides;
                    t.first.index = "random" === ie.o.firstSlide ? ie.o.firstSlide : Math.max(ie.functions.convert.properties(ie.o.firstSlide, !0), 1), ie.o.shuffleSlideshow && 2 < ie.slides.count ? ie.o.twoWaySlideshow = !1 : ie.o.shuffleSlideshow = !1, t.first.index = "random" == t.first.index ? Math.floor(Math.random() * ie.slides.count + 1) : t.first.index, !document.location.hash || (e = ie.slides.deeplink(document.location.hash, !0)) && (ie.slides.first.index = e), t.first.index = t.first.index < 1 || t.first.index > ie.slides.count ? 1 : t.first.index, ie.o.shuffleSlideshow && "random" != ie.o.firstSlide && (t.first.index = ie.o.firstSlide), t[t.first.index] && t[t.first.index].data && (t.first.data = se.extend(!0, {}, t[t.first.index].data)), ie.o.playByScroll && ie.slideshow.set.normalizedSequence(), ie.debugMode && ie.debug.options.firstSlide && (t.first.index = ie.debug.options.firstSlide)
                }
            },
            get: {
                deeplink: function(e) {
                    return e && ie.slides[e] && ie.slides[e].data && ie.slides[e].data.deeplink ? ie.slides[e].data.deeplink : null
                }
            },
            deeplink: function(e, t) {
                for (var i = !1, a = 1; a < ie.slides.count + 1; a++)
                    if (ie.slides[a].data.deeplink == e.substring(1)) {
                        if (i = a, t) return i;
                        ie.slideshow.changeTo(i, !0, !0)
                    }
                if (!i && t) return !1
            },
            slide: []
        }, ie.layers = {
            $all: se(),
            getStyle: function(e, t) {
                return -1 != e.indexOf("%") ? parseFloat(e) * t : parseFloat(e)
            },
            init: function(e, t) {
                if (!document.body.contains(W)) return !1;
                for (var i, a = e.find('.ls-bg, .ls-l, .ls-layer, *[class^="ls-s"]'), s = 0, r = a.length; s < r; s++) {
                    var o = se(a[s]),
                        n = o[0],
                        l = o.children();
                    if (o.data("slideIndex", t), -1 != o.attr("class").indexOf("ls-s")) {
                        var d = o.attr("class").split("ls-s")[1].split(" ")[0];
                        o.removeClass("ls-s" + d).addClass("ls-layer")
                    } else if (o.hasClass("ls-l")) o.removeClass("ls-l").addClass("ls-layer");
                    else if (!o.is(".ls-bg, .ls-layer")) {
                        o.remove();
                        continue
                    }
                    o.is("a") && 1 === l.length && ((n = (o = o.children().first())[0]).setAttribute("data-ls", n.parentNode.getAttribute("data-ls")), n.parentNode.removeAttribute("data-ls"), o.parent().removeClass("ls-layer"), o.addClass("ls-layer")), o.data(ie.defaults.init.dataKey, new ie.defaults.layer.options(o, t)), -1 !== o.attr("class").indexOf("ls-linkto-") && this.set.linkTo(o), o.parent().is("a") ? (i = o.parent(), this.set.smartLinks(i)) : i = o, ie.slides[t].$layers = ie.slides[t].$layers.add(i)
                }
            },
            set: {
                pictureElement: function(e) {
                    for (var t, i, a, s, r = e.find("source").last().attr("srcset").split(" ")[0] || "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg==", o = e.find("img"), n = o.length ? o : se("<img>").attr("src", r).appendTo(e), l = n[0], d = (e.attr("ls-data") || n.attr("ls-data"), l.currentSrc || l.src), u = d.split(".").pop(), p = (d.indexOf("webp"), n.attr("data-src") ? "data-" : ""), c = e.hasClass("ls-bg") ? "ls-bg" : e.hasClass("ls-tn") ? "ls-tn" : "ls-layer", h = e.find("source"), m = 0; m < h.length && (i = h[m], a = (t = se(i)).attr("srcset"), s = t.attr("sizes"), a.split(" ")[0].split(".").pop() != u); m++);
                    n.removeAttr("width height sizes src srcset data-src data-srcset"), n.addClass(c).attr(p + "src", d).attr(p + "srcset", a).attr("sizes", s), n.appendTo(n.closest(".ls-slide")), e.remove()
                },
                smartLinks: function(e) {
                    var a = e.attr("href"),
                        t = e.attr("target"),
                        i = "";
                    if (t && -1 !== t.indexOf("ls-scroll")) {
                        switch (a) {
                            case "pagetop":
                                i = "Scroll to page top";
                                break;
                            case "pagebottom":
                                i = "Scroll to page bottom";
                                break;
                            case "slidertop":
                                i = "Scroll to the top of the slider";
                                break;
                            case "":
                            case "sliderbottom":
                                i = "Scroll to the bottom of the slider";
                                break;
                            default:
                                i = "Scroll to a specified location on the page"
                        }
                        ie.layers.set.ariaLabel(e, i), e.on("click." + z, function(e) {
                            e.preventDefault();
                            var t, i = document.body.scrollHeight - ie.device.viewportHeight;
                            if (a) switch (a) {
                                case "pagetop":
                                    t = 0;
                                    break;
                                case "pagebottom":
                                    t = ie.device.docHeight - ie.device.viewportHeight;
                                    break;
                                case "slidertop":
                                    t = ie.slider.offsetTop;
                                    break;
                                case "":
                                case "sliderbottom":
                                    t = ie.slider.offsetTop + ie.slider.height;
                                    break;
                                default:
                                    t = se(a).filter(":visible").last().length ? se(a).filter(":visible").last().offset().top : ie.slider.offsetTop + ie.slider.height
                            }
                            t += ie.o.scrollModifier, t = Math.min(t, i), t = Math.max(0, t), ae.TweenMax.to("html, body", 1, {
                                scrollTop: t,
                                ease: ae.Quint.easeInOut
                            })
                        })
                    }
                    if (-1 !== ie.defaults.init.controls.indexOf(a.toLowerCase()) || a.match(/^\#[0-9]/)) {
                        var s = se.trim(a.toLowerCase().split("#")[1]),
                            r = parseInt(s);
                        switch (s) {
                            case "playmedia":
                                i = "play active media elements on current slide";
                                break;
                            case "pausemedia":
                                i = "pause active media elements on current slide";
                                break;
                            case "prev":
                                i = "jump to the previous slide";
                                break;
                            case "next":
                                i = "jump to the next slide";
                                break;
                            case "start":
                                i = "start slideshow";
                                break;
                            case "stop":
                                i = "stop slideshow";
                                break;
                            case "replay":
                                i = "replay slide";
                                break;
                            case "reverse":
                                i = "reverse slide";
                                break;
                            case "reverse-replay":
                            case "reversereplay":
                                i = "reverse, than replay slide";
                                break;
                            default:
                                "number" == typeof r && r == r && (i = "jump to slide " + r)
                        }
                        ie.layers.set.ariaLabel(e, i), e.on("click." + z, function(e) {
                            if (e.preventDefault(), -1 !== ["prev", "next", "start", "stop"].indexOf(s)) ie.navigation[s]("clicked");
                            else if ("number" == typeof r && r == r) ie.slideshow.changeTo(r, !0, !0);
                            else if (!ie.slider.state.changingSlides) switch (s) {
                                case "replay":
                                    ie.api.methods("replay");
                                    break;
                                case "reverse":
                                    ie.api.methods("reverse");
                                    break;
                                case "reverse-replay":
                                case "reversereplay":
                                    ie.api.methods("reverse", !0);
                                    break;
                                case "playmedia":
                                    ie.media.functions.playActiveMedia();
                                    break;
                                case "pausemedia":
                                    ie.media.functions.pauseActiveMedia();
                                    break;
                                case "unmute":
                                case "unmutemedia":
                                    ie.media.unmute.multipleMediaElements()
                            }
                        })
                    }
                },
                ariaLabel: function(e, t) {
                    e.attr("aria-label") || e.attr("aria-label", t)
                },
                linkTo: function(e) {
                    for (var t = e.attr("class").split(" "), i = 1, a = 0; a < t.length; a++) - 1 != t[a].indexOf("ls-linkto-") && (i = parseInt(t[a].split("ls-linkto-")[1]));
                    e.data(ie.defaults.init.dataKey).settings.linkedToSlide = i, e.css({
                        cursor: "pointer"
                    }).on("click." + z, function(e) {
                        e.preventDefault(), _.layerSlider(se(this).data(ie.defaults.init.dataKey).settings.linkedToSlide)
                    })
                },
                wrappers: function(e, t, i) {
                    t.is.slideBackground || t.is.backgroundVideo ? (t.elements.$bgWrapper = e.closest(".ls-bg-wrap"), t.elements.$bgOuterWrapper = e.closest(".ls-bg-outer")) : (t.elements.$wrapper = e.closest(".ls-in-out"), t.elements.$wrapper.data(ie.defaults.init.dataKey, {}), t.settings.wrapperData = t.elements.$wrapper.data(ie.defaults.init.dataKey), t.elements.$clipWrapper = e.closest(".ls-clip"), t.elements.$clipWrapper.data(ie.defaults.init.dataKey, {}), t.settings.clipWrapperData = t.elements.$clipWrapper.data(ie.defaults.init.dataKey), t.elements.$loopWrapper = e.closest(".ls-loop"), t.elements.$loopWrapper.data(ie.defaults.init.dataKey, {}), t.settings.loopWrapperData = t.elements.$loopWrapper.data(ie.defaults.init.dataKey)), t.parallax.enabled && (t.elements.$parallaxWrapper = e.closest(".ls-parallax"), t.elements.$parallaxWrapper.data(ie.defaults.init.dataKey, {
                        parallax: {}
                    }), t.settings.parallaxWrapperData = t.elements.$parallaxWrapper.data(ie.defaults.init.dataKey), ie.transitions.layers.parallax.addLayer(t.elements.$parallaxWrapper, t.settings.parallaxWrapperData.parallax, t, i)), t.hover.enabled && !ie.slides[i].data.globalhover && ie.transitions.layers.hover.set(e, t), ie.browser.isSafari ? t.elements.$outerWrapper = e.closest(".ls-z") : t.elements.$outerWrapper = t.parallax.enabled ? t.elements.$parallaxWrapper : t.elements.$bgWrapper ? t.elements.$bgOuterWrapper : t.elements.$wrapper, t.elements.$outerWrapper.attr("data-slide-index", i)
                },
                singleLayer: function(e, t) {
                    ie.layers.set.style(e), ie.layers.set.properties(e, t), ie.layers.set.dataAttribute(e, "hidden"), e.data("hasBeenSet", !0)
                },
                style: function(e) {
                    var t, i, a, s, r, o, n, l, d, u, p, c, h, m, f, g, v, y, b, S = e[0],
                        w = e.data(ie.defaults.init.dataKey),
                        x = S.style,
                        T = ie.layers,
                        C = 0,
                        k = 0,
                        I = !1,
                        O = S.getBoundingClientRect(),
                        L = "" !== x.paddingLeft ? T.getStyle(x.paddingLeft, ie.slider.initial.percW) : parseFloat(e.css("padding-left")),
                        P = "" !== x.paddingRight ? T.getStyle(x.paddingRight, ie.slider.initial.percW) : parseFloat(e.css("padding-right")),
                        $ = "" !== x.paddingTop ? T.getStyle(x.paddingTop, ie.slider.initial.percH) : parseFloat(e.css("padding-top")),
                        B = "" !== x.paddingBottom ? T.getStyle(x.paddingBottom, ie.slider.initial.percH) : parseFloat(e.css("padding-bottom")),
                        M = "" !== x.marginLeft ? T.getStyle(x.marginLeft, ie.slider.initial.percW) : parseFloat(e.css("margin-left")),
                        W = "" !== x.marginTop ? T.getStyle(x.marginTop, ie.slider.initial.percH) : parseFloat(e.css("margin-top"));
                    S.style.margin = "0", d = "" !== x.borderLeftWidth ? parseFloat(x.borderLeftWidth) : parseFloat(e.css("border-left-width")), p = "" !== x.borderRightWidth ? parseFloat(x.borderRightWidth) : parseFloat(e.css("border-right-width")), u = "" !== x.borderTopWidth ? parseFloat(x.borderTopWidth) : parseFloat(e.css("border-top-width")), c = "" !== x.borderBottomWidth ? parseFloat(x.borderBottomWidth) : parseFloat(e.css("border-bottom-width")), 1 !== ie.media.properties.$allMediaLayers.filter(e).length && !e.children("iframe").length || (y = (v = e.children()).attr("width") ? v.attr("width") : v.width(), b = v.attr("height") ? v.attr("height") : v.height(), 300 === parseInt(y) && 150 === parseInt(b) && (y = 640, b = 360), "" !== S.style.width && "auto" !== S.style.width || e.css("width", y), "" !== S.style.height && "auto" !== S.style.height || e.css("height", b), "100%" === x.width && "100%" === x.height && (x.left = "50%", x.top = "50%", w.mediaSettings.fullsize = !0), I = y / b, v.css({
                        width: "100%",
                        height: "100%"
                    }));
                    var _ = w.attributes;
                    e.is("img") && (h = (s = e.data("preloadedWidth")) / (r = e.data("preloadedHeight")), (!x.width && !x.height || "auto" === x.width && "auto" === x.height) && _ && (_.width && _.height ? (i = -1 === _.width.indexOf("%") ? parseInt(_.width) : (C = parseInt(_.width), T.getStyle(_.width, ie.slider.initial.percW)), a = -1 === _.height.indexOf("%") ? parseInt(_.height) : (k = parseInt(_.height), T.getStyle(_.height, ie.slider.initial.percH))) : _.maxWidth && (e[0].style.width = _.maxWidth + "px", i = _.maxWidth, a = e.height()))), f = O.width ? O.width : O.right - O.left, g = O.height ? O.height : O.bottom - O.top, i || (i = x.width, -1 !== x.width.indexOf("%") && (C = parseInt(x.width)), i = (i = "" !== i && "auto" !== i ? T.getStyle(i, ie.slider.initial.percW) : f - L - P - d - p) || "auto"), a || (a = x.height, -1 !== x.height.indexOf("%") && (k = parseInt(x.height)), a = (a = "" !== a && "auto" !== a ? T.getStyle(a, ie.slider.initial.percH) : g - $ - B - u - c) || "auto"), m = I || i / a, !e.is("img") || x.width || x.height || _ && (!_ || _.width || _.height) || s === i && r === a || (s !== i ? a = (i = 5 < s ? s : i) / (m = 5 < s ? h : m) : r !== a && (i = (a = 5 < r ? r : a) * (m = 5 < r ? h : m))), parseFloat(e.css("opacity")), o = d + L + i + P + p, n = u + $ + a + B + c, t = "" !== x.clip && x.clip, x.clip = "", l = x.webkitFilter || x.filter;

                    function z(e) {
                        var t = e;
                        return e && -1 !== e.indexOf("px ") && (e = e.replace("px", "").split(" "), t = Math.round(parseInt(e[0]) / i * 100) + "%"), t
                    }
                    w.original = {
                        clip: t,
                        clipShouldBeConverted: !1,
                        left: x.left ? x.left : "0",
                        top: x.top ? x.top : "0",
                        width: Math.ceil(i),
                        height: Math.ceil(a),
                        percentWidth: C,
                        percentHeight: k,
                        outerWidth: o,
                        outerHeight: n,
                        styleWidth: x.width,
                        styleHeight: x.height,
                        ratio: m,
                        paddingLeft: L,
                        paddingTop: $,
                        paddingRight: P,
                        paddingBottom: B,
                        marginLeft: M,
                        marginTop: W,
                        borderLeftWidth: d,
                        borderTopWidth: u,
                        borderRightWidth: p,
                        borderBottomWidth: c,
                        borderRadius: z(e.css("borderTopLeftRadius")) + " " + z(e.css("borderTopRightRadius")) + " " + z(e.css("borderBottomRightRadius")) + " " + z(e.css("borderBottomLeftRadius")),
                        fontSize: parseFloat(e.css("font-size")),
                        lineHeight: e.css("line-height"),
                        letterSpacing: e.css("letter-spacing"),
                        color: e.css("color"),
                        zIndex: parseInt(e.css("z-index")) || "auto",
                        filter: l,
                        backgroundColor: e.css("background-color"),
                        dataLS: e.attr("data-ls") || "",
                        styles: e.attr("style") || ""
                    }, x.zIndex = "auto", w.responsive = {
                        left: x.left ? x.left : "0",
                        top: x.top ? x.top : "0",
                        width: i,
                        height: a
                    }
                },
                properties: function(e, t, i) {
                    t = t || e.data("slideIndex");
                    var a, s = e.data(ie.defaults.init.dataKey);
                    e.data("ls");
                    if (s.is.textLayer = !e.is("img") && !s.is.mediaLayer, (s.self = e).data("ls"))
                        for (var r = ie.defaults.layer.keys, o = e.data("ls").split(";"), n = e.data("ls").toLowerCase().split(";"), l = 0; l < n.length; l++)
                            if (se.trim(n[l])) {
                                var d = n[l].indexOf(":"),
                                    u = [n[l].substring(0, d), n[l].substring(d + 1)],
                                    p = null,
                                    c = null,
                                    h = null,
                                    m = null,
                                    f = null;
                                if ("" !== (p = se.trim(u[0])))
                                    if (void 0 !== r[p = p.replace("split", "text")]) {
                                        if (c = r[p][0], f = "overlay" === p ? se.trim(o[l].substring(d + 1)) : ie.functions.convert.properties(se.trim(u[1])), u[1] && -1 !== u[1].indexOf("random") && (p.match(/(text)/) || (f = ie.functions.convert.randomProperties(f, c)), s.should.update || (s.should.update = !0)), "number" == typeof f && c.match(/(duration|startat|shift|delay)/i) && (f /= 1e3), p.match(/(fade)(.+)/)) switch (f) {
                                            case !0:
                                                f = 0;
                                                break;
                                            case !1:
                                                f = 1
                                        }
                                        void 0 !== (m = r[p][1]) ? "" !== f ? "object" == typeof f ? p.match(/(text)/) ? m.match(/(converted)/i) ? s[m][c] = f : s[m].cycle[c] = f : (h = ie.functions.convert.properties(se.trim(f[0])), ie.debugMode && ie.debug.add("warn", "layerInit.prop1", [p, f, h]), "number" == typeof h && c.match(/(duration|startat|shift|delay)/i) && (h /= 1e3), s[m][c] = h) : p.match(/(text)/) && -1 !== f.toString().indexOf("random") ? s[m].random[c] = f : s[m][c] = f : ie.debugMode && ie.debug.add("warn", "layerInit.prop2", p) : s[c][p] = f
                                    } else "clip" === p ? (s.original.clip = u[1], s.original.clipShouldBeConverted = !0) : ie.debugMode && ie.debug.add("warn", "layerInit.prop4", p)
                            }
                    if (ie.browser.isOld && (s.in.enabled = !0, s.textIn.enabled = !1, s.textOut.enabled = !1, s.textIn.type = null, s.textOut.type = null), s.in.enabled && (s.inLayerTo.ease = s.inLayerStyleTo.ease = s.inClipTo.ease = ie.functions.convert.easing(s.in.ease)), void 0 !== s.inLayerStyleShouldBeConvertedFrom.borderRadius && (s.inLayerStyleShouldBeConvertedTo.borderRadius = s.original.borderRadius), void 0 !== s.outLayerStyleShouldBeConvertedTo.borderRadius && (s.outLayerStyleShouldBeConvertedFrom.borderRadius = s.original.borderRadius), s.inLayerStyleFromCSS.backgroundColor && (s.inLayerStyleToCSS.backgroundColor = s.original.backgroundColor), s.outLayerStyleToCSS.backgroundColor && (s.outLayerStyleFromCSS.backgroundColor = s.original.backgroundColor), s.inLayerStyleFromCSS.color && (s.inLayerStyleToCSS.color = s.original.color), s.outLayerStyleToCSS.color && (s.outLayerStyleFromCSS.color = s.original.color), void 0 !== s.inLayerStyleShouldBeConvertedFrom.width && (s.inLayerStyleShouldBeConvertedTo.width = s.original.width), void 0 !== s.outLayerStyleShouldBeConvertedTo.width && (s.outLayerStyleShouldBeConvertedFrom.width = s.original.width), void 0 !== s.inLayerStyleShouldBeConvertedFrom.height && (s.inLayerStyleShouldBeConvertedTo.height = s.original.height), void 0 !== s.outLayerStyleShouldBeConvertedTo.height && (s.outLayerStyleShouldBeConvertedFrom.height = s.original.height), void 0 !== s.out.showUntil && 0 !== s.out.showUntil && (s.out.startAt = "transitioninend + " + s.out.showUntil), -1 !== s.out.startAt.indexOf("slidechangeonly") && "slidechangeonly" !== s.out.startAt && (s.out.startAt = "slidechangeonly"), s.out.enabled && (s.outLayerTo.ease = s.outLayerStyleTo.ease = s.outClipTo.ease = ie.functions.convert.easing(s.out.ease)), se.isNumeric(s.loop.count) && (0 < s.loop.count || -1 === s.loop.count) && !1 !== s.loop.enabled ? (s.loop.enabled = !0, s.loopTo.ease = s.loopClipTo.ease = ie.functions.convert.easing(s.loop.ease), -1 !== s.loop.count ? s.loop.yoyo ? s.loop.repeat = 2 * s.loop.count - 1 : s.loop.repeat = s.loop.count - 1 : s.loop.repeat = -1) : s.loop.enabled = !1, (!se.isEmptyObject(s.hoverToCSS) || s.hoverShouldBeConverted.x || s.hoverShouldBeConverted.y || s.hoverShouldBeConverted.borderRadius || s.hoverShouldBeConverted.filter) && !1 !== s.hover.enabled ? (s.hover.enabled = !0, s.hover.easeOut || (s.hover.easeOut = s.hover.easeIn), s.hover.easeIn = ie.functions.convert.easing(s.hover.easeIn), s.hover.easeOut = ie.functions.convert.easing(s.hover.easeOut, !0), s.hover.durationOut || (s.hover.durationOut = s.hover.durationIn), ae.TweenMax.set(e[0], {
                            autoCSS: !1,
                            css: {
                                transformPerspective: s.hoverShouldBeConverted.transformPerspective
                            }
                        })) : s.hover.enabled = !1, s.parallax.level && se.isNumeric(s.parallax.level) && 0 !== s.parallax.level && !1 !== s.parallax.enabled ? s.parallax.enabled = !0 : s.parallax.enabled = !1, s.is.slideBackground) {
                        var g = {
                            scale: 1,
                            rotation: 0
                        };
                        if (ie.slides[t].kenBurns.zoom && (s.kenBurns = ie.slides[t].kenBurns), s.kenBurns.zoom) {
                            switch (s.kenBurns.from = {}, s.kenBurns.to = {}, s.kenBurns.zoom) {
                                case "out":
                                    s.kenBurns.from.scale = s.kenBurns.scale || 1, s.kenBurns.from.rotation = s.kenBurns.rotation || 0, s.kenBurns.to = g;
                                    break;
                                case "in":
                                    s.kenBurns.from = g, s.kenBurns.to.scale = s.kenBurns.scale || 1, s.kenBurns.to.rotation = s.kenBurns.rotation || 0
                            }
                            delete s.kenBurns.scale, delete s.kenBurns.rotation
                        } else s.kenBurns.from = g, s.kenBurns.to = g;
                        se.isEmptyObject(ie.slides[t].filter) || (ie.slides[t].filter.from && (s.filter.values.bgFrom = ie.transitions.layers.filters.convert(ie.slides[t].filter.from)), ie.slides[t].filter.to && (s.filter.values.bgTo = ie.transitions.layers.filters.convert(ie.slides[t].filter.to)))
                    }
                    if (s.textIn.type && -1 === ie.defaults.layer.splitTypeKeys.indexOf(s.textIn.type) && (ie.debugMode && ie.debug.add("warn", "layerInit.splitType3a", [e[0].tagName, s.textIn.type]), delete s.textIn.type, delete s.textIn.ns, s.textIn.enabled = !1), s.textOut.type && -1 === ie.defaults.layer.splitTypeKeys.indexOf(s.textOut.type) && (ie.debugMode && ie.debug.add("warn", "layerInit.splitType3b", [e[0].tagName, s.textOut.type]), delete s.textOut.type, delete s.textOut.ns, s.textOut.enabled = !1), s.textIn.type || s.textOut.type) {
                        var v = 0;
                        if (s.is.textLayer ? (s.textIn.type && (s.textIn.enabled = !0, s.textInNodesTo.ease = ie.functions.convert.easing(s.textInNodesTo.ease), s.textIn.split = s.textIn.type.split("_")[0], e.children().length && ie.debugMode && (v = 1)), s.textOut.type && (s.textOut.enabled = !0, s.textOutNodesTo.ease = ie.functions.convert.easing(s.textOutNodesTo.ease)), s.textOut.enabled && s.textOut.type.split("_")[0] !== s.textIn.split && (s.textIn.split += ", " + s.textOut.type.split("_")[0], e.children().length && ie.debugMode && (v = 1)), -1 !== s.textIn.split.indexOf("chars") && -1 === s.textIn.split.indexOf("words") && (s.textIn.split += ", words"), -1 !== s.textIn.split.indexOf("words") && -1 === s.textIn.split.indexOf("lines") && (s.textIn.split += ", lines")) : (delete s.textIn.type, delete s.textOut.type, delete s.textIn.ns, delete s.textOut.ns, ie.debugMode && (v = 2)), ie.debugMode && 0 !== v && t && !i) switch (v) {
                            case 1:
                                ie.debug.add("warn", "layerInit.splitType1", [e.prop("nodeName"), t]);
                                break;
                            case 2:
                                ie.debug.add("warn", "layerInit.splitType2", [t, e.prop("nodeName")])
                        }
                    }(s.original.clip || s.inClipShouldBeConverted.clip || s.outClipShouldBeConverted.clip || s.loopClipShouldBeConverted.clip) && (s.clip.enabled = !0), s.in.enabled && s.inLayerToCSS.scale && (delete s.inLayerToCSS.scaleX, delete s.inLayerToCSS.scaleY), s.out.enabled && s.outLayerToCSS.scale && (delete s.outLayerToCSS.scaleX, delete s.outLayerToCSS.scaleY), s.inLayerStyleShouldBeConvertedFrom.filter && (s.filter.values.in = ie.transitions.layers.filters.convert(s.inLayerStyleShouldBeConvertedFrom.filter)), s.filter.values.style = ie.transitions.layers.filters.convert(s.original.filter), s.outLayerStyleShouldBeConvertedTo.filter && (s.filter.values.out = ie.transitions.layers.filters.convert(s.outLayerStyleShouldBeConvertedTo.filter)), s.loopLayerShouldBeConverted.filter && (s.filter.values.loop = ie.transitions.layers.filters.convert(s.loopLayerShouldBeConverted.filter)), s.hoverShouldBeConverted.filter && (s.filter.values.hover = ie.transitions.layers.filters.convert(s.hoverShouldBeConverted.filter)), s.in.enabled || (s.in.duration = 0), s.textIn.enabled || (s.textIn.duration = 0), s.loop.enabled || (s.loop.duration = 0), s.textOut.enabled || (s.textOut.duration = 0), s.out.enabled || (s.out.duration = 0), e.attr("data-ls-slidein", t), void 0 !== s.settings.static && "none" !== s.settings.static ? (0 !== (a = parseInt(s.settings.static)) && "forever" !== s.settings.static ? (e.attr("data-ls-slideout", a), s.settings.slideOut = a) : s.settings.slideOut = 0, s.is.static = !0, e.attr("data-ls-static", "1")) : e.attr("data-ls-slideout", t), s.is.mediaLayer && e.children("video, audio").length && ie.media.html5.singleInit(e.children("video, audio").eq(0)), s.is.backgroundVideo && s.styleSettings.overlay && e.find(".ls-bg-video-overlay").css({
                        backgroundImage: "url(" + s.styleSettings.overlay + ")"
                    }), s.styleSettings.minfontsize && (s.styleSettings.minfontsize = parseFloat(s.styleSettings.minfontsize)), s.styleSettings.minmobilefontsize && (s.styleSettings.minmobilefontsize = parseFloat(s.styleSettings.minmobilefontsize))
                },
                dataAttribute: function(e, t) {
                    e.removeAttr("data-ls-animating-in data-ls-active data-ls-animating-out data-ls-hidden"), e.attr("data-ls-" + t, "")
                }
            },
            get: function(e) {
                var t, i, a, s, r, o = this.$all;
                return e && (t = "in", a = i = "", s = ':not(".ls-bg")', r = ':not(".ls-bg-video")', -1 == (e = e.toLowerCase()).indexOf("bgvideo") && -1 == e.indexOf("backgroundvideo") || (r = "", e = e.replace("bgvideo", "").replace("backgroundvideo", "")), -1 != e.indexOf("video") && (a += ", > video", e = e.replace("video", "")), -1 != e.indexOf("audio") && (a += ", > audio", e = e.replace("audio", "")), -1 != e.indexOf("html5") && (a += ", > video, > audio", e = e.replace("html5", "")), -1 != e.indexOf("youtube") && (a += ', > iframe[src*="youtube-nocookie.com"], > iframe[src*="youtube.com"], > iframe[src*="youtu.be"], > iframe[data-src*="youtube-nocookie.com"], > iframe[data-src*="youtube.com"], > iframe[data-src*="youtu.be"]', e = e.replace("youtube", "")), -1 != e.indexOf("vimeo") && (a += ', > iframe[src*="player.vimeo"], > iframe[data-src*="player.vimeo"]', e = e.replace("vimeo", "")), "," == a.charAt(0) && (a = a.substring(2, a.length)), -1 != e.indexOf("out") && (t = "out"), -1 == e.indexOf("img") && -1 == e.indexOf("image") || (i = "img"), -1 == e.indexOf("bg") && -1 == e.indexOf("background") && -1 == e.indexOf("bgonly") || (s = ""), o = -1 != e.indexOf("current") ? o.filter(i + "[data-ls-slide" + t + '="' + ie.slides.current.index + '"]' + s + r) : -1 != e.indexOf("next") ? o.filter(i + "[data-ls-slide" + t + '="' + ie.slides.next.index + '"]' + s + r) : o.filter(i + s + r), -1 != e.indexOf("notactive") && (o = o.filter(".ls-bg, .ls-bg-video, :hidden"), e = e.replace("notactive", "")), -1 != e.indexOf("active") && (o = o.filter(":visible:not(.ls-bg, .ls-bg-video)"), e = e.replace("active", "")), -1 != e.indexOf("notstatic") && (o = o.filter(':not([data-ls-static="1"])'), e = e.replace("notstatic", "")), -1 != e.indexOf("static") && (o = o.filter('[data-ls-static="1"]'), e = e.replace("static", "")), -1 != e.indexOf("bgonly") && (o = o.filter(".ls-bg"), e = e.replace("bgonly", "")), "" !== a && (o = o.find(a))), o
            },
            update: {
                data: function(e, t, i) {
                    var a, s, r;
                    switch (e instanceof jQuery || (e = se(e)), i && e.attr("data-ls", i).data("ls", i), a = (s = e.data(ie.defaults.init.dataKey)).is.onSlide, r = s.original, t) {
                        default:
                            case "transitions":
                            s.settings.timelineIsCalculated = !1,
                        ie.layers.set.properties(e, a, !0);
                        break;
                        case "all":
                                e.data(ie.defaults.init.dataKey, new ie.defaults.layer.options(e, a)),
                            (s = e.data(ie.defaults.init.dataKey)).original = r,
                            ie.layers.set.properties(e, a, !0),
                            ie.layers.set.wrappers(e, s, a)
                    }
                }
            },
            wrap: function(h, e) {
                var t, i, m;
                ie.slides[h].wrapped || "wrapping" === ie.slides[h].wrapped || (ie.slides[h].wrapped = "wrapping", t = e ? 25 : 0, i = ie.slides[h].$layers, m = i.length, i.each(function(p, c) {
                    ie.timeouts["slide-" + h + "-layer-" + p] = setTimeout(function() {
                        delete ie.timeouts["slide-" + h + "-layer-" + p];
                        var e, t = se(c),
                            i = t,
                            a = "",
                            s = !1,
                            r = "";
                        t.hasClass("ls-hide-phone") && (r += " ls-hide-on-phone"), t.hasClass("ls-hide-tablet") && (r += " ls-hide-on-tablet"), t.hasClass("ls-hide-desktop") && (r += " ls-hide-on-desktop"), t.removeClass("ls-hide-phone ls-hide-tablet ls-hide-desktop"), i.is("a") && 1 === i.children().length && (s = !0, t = i.find(".ls-layer"));
                        var o, n = t.data(ie.defaults.init.dataKey);
                        if (!n) return !0;
                        e = ie.slider.$layersWrapper, n.is.backgroundVideo ? e = ie.slider.$bgVideosWrapper : n.is.slideBackground && (e = ie.slider.$slideBGWrapper), t.data("hasBeenSet") || ie.layers.set.singleLayer(t, h), n.textIn.split && (o = new ae.SplitType(t[0], {
                            split: n.textIn.split
                        }), n.textIn.type && (n.textIn.ns = o[n.textIn.type.split("_")[0]]), n.textOut.type && (n.textOut.ns = o[n.textOut.type.split("_")[0]])), a = n.is.slideBackground || n.is.backgroundVideo ? '<div class="ls-wrapper ls-bg-outer"><div class="ls-wrapper ls-bg-wrap"></div></div>' : (n.clip.enabled && (a = '<div class="ls-wrapper ls-clip"></div>'), n.loop.enabled && (a = '<div class="ls-wrapper ls-loop">' + a + "</div>"), '<div class="ls-wrapper ls-in-out">' + a + "</div>"), n.parallax.enabled && (a = '<div class="ls-wrapper ls-parallax">' + a + "</div>"), ie.browser.isSafari && (a = '<div class="ls-wrapper ls-z">' + a + "</div>"), "" !== a ? t.appendTo(e).wrap(a) : t.appendTo(e), !0 === s && i.addClass("ls-layer-link").appendTo(t.parent());
                        var l = {},
                            d = t.css("mix-blend-mode");
                        d && "normal" !== d && (l["mix-blend-mode"] = d, t.css("mix-blend-mode", "normal")), n.original.customZIndex = 1;
                        var u = parseInt(n.original.zIndex);
                        n.is.backgroundVideo || n.is.slideBackground ? l = {
                            zIndex: n.original.customZIndex
                        } : (u = u || p + 101, l.zIndex = u, n.original.customZIndex = u), n.styleSettings.pointerevents && (l.pointerEvents = "none"), ie.browser.isSafari && (l.transform = "translateZ(" + 3e3 * u + "px )"), ie.layers.set.wrappers(t, n, h), n.elements.$outerWrapper.css(l).addClass(r), n.is.slideBackground && n.elements.$bgWrapper.css({
                            backgroundColor: ie.slides[h].data.backgroundColor
                        }), ie.layers.$all = ie.layers.$all.add(t), ie.slides[h].$layers = ie.slides[h].$layers.not(i), p === m - 1 && (_.children(".ls-slide").eq(h - 1).empty(), ie.slides[h].wrapped = !0)
                    }, t * (p + 1))
                }))
            }
        }, ie.slideshow = {
            direction: "next",
            nextLoop: 0,
            firstStart: !0,
            forceFastChange: !1,
            sequence: {
                normal: [],
                randomized: []
            },
            state: {
                running: !0,
                paused: !1,
                pausedByVideo: !1,
                pausedByHover: !1,
                pausedByLastCycle: !1
            },
            should: {
                change: !1,
                start: !1,
                stop: !1
            },
            isPaused: function() {
                return this.state.paused || this.state.pausedByVideo || this.state.pausedByHover
            },
            init: function() {
                1 == ie.slides.count && (ie.o.autoStart = !1, ie.o.navPrevNext = !1, ie.o.navStartStop = !1, ie.o.navButtons = !1, ie.o.cycles = -1, ie.o.forceLoopNum = !1, ie.o.autoPauseSlideshow = !0, ie.o.firstSlide = 1, ie.o.thumbnailNavigation = "disabled"), ie.o.autoStart && 1 != ie.slides.count || ie.functions.setStates(this, {
                    running: !1,
                    paused: !0
                }), this.set.pauseOnHover(), this.set.sequences()
            },
            set: {
                pauseOnHover: function() {
                    ie.o.pauseOnHover = !0 === ie.o.pauseOnHover ? ie.defaults.init.options.pauseOnHover : ie.o.pauseOnHover, !1 !== ie.o.pauseOnHover && _.on("mouseenter." + z, function() {
                        ie.slider.state.inFullscreen || (ie.functions.setStates(ie.slideshow, {
                            pausedByHover: !0
                        }), "slideshowOnly" !== ie.o.pauseOnHover && ie.transitions.layers.timeline.pause())
                    }).on("mouseleave." + z, function() {
                        var e = 1;
                        ie.transitions._slideTimeline && ie.transitions._slideTimeline.duration() > ie.transitions.layers.timeline.totalDuration && (e = ie.transitions.layers.timeline.totalDuration / ie.transitions._slideTimeline.duration()), ie.functions.setStates(ie.slideshow, {
                            pausedByHover: !1
                        }), se("body").hasClass("ls-unselectable") || "slideshowOnly" === ie.o.pauseOnHover || ie.o.pauseLayers && ie.slideshow.isPaused() || ie.transitions.layers.timeline.resume(), ie.transitions._slideTimeline && ie.transitions.layers.timeline.state.finished && ie.transitions._slideTimeline.progress() < e && ie.functions.setStates(ie.transitions.layers.timeline, {
                            finished: !1
                        }), ie.slideshow.start()
                    })
                },
                sequences: function() {
                    for (var e = 0; e < ie.slides.count; e++) ie.slideshow.sequence.normal[e] = e + 1;
                    ie.slideshow.sequence.randomized = ie.functions.shuffleArray(se.merge([], ie.slideshow.sequence.normal))
                },
                normalizedSequence: function() {
                    var e = ie.o.shuffleSlideshow ? "randomized" : "normal",
                        t = ie.slideshow.sequence[e],
                        i = ie.slideshow.sequence[e].length,
                        a = t.indexOf(ie.slides.first.index);
                    ie.slideshow.sequence.normalized = [];
                    for (var s = a; s < i; s++) ie.slideshow.sequence.normalized.push(t[s]);
                    for (var r = 0; r < a; r++) ie.slideshow.sequence.normalized.push(t[r])
                },
                prevNext: function(e) {
                    switch (e) {
                        case "prev":
                            ie.o.twoWaySlideshow && (ie.slideshow.direction = "prev"), ie.slideshow.changeTo(ie.slideshow.get.slideInSequence("prev"), !0);
                            break;
                        case "next":
                            ie.slideshow.direction = "next", ie.slideshow.changeTo(ie.slideshow.get.slideInSequence("next"), !0)
                    }
                }
            },
            get: {
                sequence: function() {
                    var e = "normal";
                    return ie.o.playByScroll ? e = "normalized" : ie.o.shuffleSlideshow && (e = "randomized"), e
                },
                slideInSequence: function(e) {
                    var t = ie.slideshow.sequence[this.sequence()],
                        i = t.indexOf(ie.slides.current.index);
                    switch (e) {
                        case "prev":
                            return 0 === i ? t[t.length - 1] : t[i - 1];
                        case "next":
                            return i === t.length - 1 ? t[0] : t[i + 1];
                        default:
                            return t[e]
                    }
                },
                indexOfSlideInSequence: function(e) {
                    return ie.slideshow.sequence[this.sequence()].indexOf(e)
                }
            },
            cycles: {set: function() {
                    0 < ie.o.cycles && (ie.slideshow.curCycle = 1, ie.slideshow.cycleSlideIndex = ie.slideshow.get.indexOfSlideInSequence(ie.slides.first.index))
                },
                check: function(e) {
                    if (ie.slideshow.get.indexOfSlideInSequence(e) === ie.slideshow.cycleSlideIndex) return ++ie.slideshow.curCycle === ie.o.cycles + 1
                }
            },
            start: function(e) {
                !this.isPaused() && ie.transitions._slideTimeline && ie.transitions.layers.timeline.state.finished && this.changeTo(ie.slides.next.index)
            },
            stop: function() {
                ie.functions.setStates(this, {
                    running: !1,
                    paused: !0
                })
            },
            changeTo: function(e, t, i) {
                if (!document.body.contains(W)) return !1;
                if (ie.slides.current.index === e) return !1;
                if (!this.firstStart && ie.api.hasEvent("slideChangeWillStart")) {
                    var a = _.triggerHandler("slideChangeWillStart", ie.api.eventData());
                    if (!1 === a) return;
                    se.isNumeric(a) && (e = parseInt(a))
                }
                e > ie.slides.count || e < 1 ? ie.debugMode && (ie.debug.add("group", "slideshow"), ie.debug.add("warn", "slideshow.invalidSlideIndex", [e, ie.slides.count]), ie.debug.groupEnd()) : ie.slider.isBusy() || ie.slideshow.state.pausedByVideo && !t ? !ie.slider.state.preloadingImages && ie.slider.state.animatingSlides && ie.transitions._slideTransition && (ie.slideshow.should.change = !0, ie.transitions._slideTransition.progress(1), ie.transitions._forceLayersOut && ie.transitions._forceLayersOut.progress(1)) : (ie.functions.setStates(ie.transitions.layers.timeline, {
                    finished: !1
                }), ie.slideshow.should.change = !1, ie.debugMode && ie.debug.add("group", "slideshow"), t ? ("prev" === ie.navigation.direction && ie.o.twoWaySlideshow && (ie.slideshow.direction = "prev"), ie.debugMode && (ie.debug.add("log", "slideshow.changedByUser", !1), ie.o.twoWaySlideshow && ie.debug.add("log", "slideshow.setdir", ie.slideshow.direction))) : ie.navigation.direction = ie.slideshow.direction, ie.transitions.timers.reverse(), ie.gui.media.hideUnmute(), ie.slides.set.nextSlideIndex(e), ie.debugMode && (ie.debug.add("log", "slideshow.change", [ie.slides.current.index, ie.slides.next.index, ie.slideshow.direction, ie.navigation.direction]), ie.debug.groupEnd()), ie.functions.setStates(this, {
                    pausedByVideo: !1
                }), ie.functions.setStates(ie.slider, {
                    changingSlides: !0
                }), ie.preload.imagesOfSlide(ie.slides.next.index, function() {
                    ie.transitions.start()
                }))
            },
            forceStop: function() {
                ie.navigation.stop(), se.each(ie.timeouts, function(e, t) {
                    clearTimeout(ie.timeouts[e])
                }), ie.transitions.timers.stop(), ie.transitions._slideTimeline.stop(), ie.functions.setStates(ie.transitions.layers.timeline, {
                    stopped: !0,
                    running: !1
                }), _.find("*").stop(!0, !1).dequeue()
            },
            restart: function() {
                _.find("*").stop(), ie.navigation.change(ie.slides.current.index, ie.slideshow.direction)
            }
        }, ie.media = {
            properties: {
                $allMediaLayers: se(),
                playingInCurSlide: 0,
                endedInCurSlide: 0,
                userDidUnmute: !1
            },
            init: function() {
                ie.functions.setStates(ie.slider, {
                    waitingForYouTube: !1,
                    waitingForVimeo: !1
                }), ie.media.properties.allowToUnmute = !0, ie.media.youtube.init(), ie.media.vimeo.init(), ie.media.html5.init()
            },
            get: function(e) {
                var t, i = ie.media.properties.$allMediaLayers;
                return e && (-1 !== (e = e.toLowerCase()).indexOf("notbg") && (i = i.not(".ls-bg-video")), -1 !== e.indexOf("active") && (i = i.filter("[data-ls-active], [data-ls-animating-in]")), -1 !== e.indexOf("notstatic") && (i = i.not("[data-ls-static]")), t = i.find("video, audio, iframe"), -1 !== e.indexOf("notplaying") ? t = t.filter("[data-ls-not-playing]") : -1 !== e.indexOf("playing") && (t = t.filter("[data-ls-playing]")), -1 !== e.indexOf("allowtounmute") && (t = t.filter("[data-ls-allow-to-unmute]")), -1 !== e.indexOf("mutedbybrowser") && (t = t.filter("[data-ls-muted-by-browser]"))), t
            },
            set: {
                backgroundVideo: function(e, t) {
                    var i;
                    0 === e.children(".ls-vpcontainer").length && (i = se("<div>").addClass("ls-vpcontainer").appendTo(e), t.mediaSettings.poster && se("<div>").appendTo(i).addClass("ls-videopreview").attr({
                        style: "background-image: url(" + t.mediaSettings.poster + ")"
                    }))
                },
                customPoster: function(e, t) {
                    return t.mediaSettings.poster || !1
                },
                dataAttribute: function(e, t) {
                    e.removeAttr("data-ls-playing data-ls-not-playing"), e.attr("data-ls-" + t, ""), ie.media.functions.checkSlideshowWaiting()
                },
                mediaElements: function(e, t, i) {
                    var a = se("<div>").addClass("ls-vpcontainer").appendTo(e);
                    !("autoplay" in i.mediaSettings) && ie.o.autoPlayVideos || i.mediaSettings.autoplay ? e.addClass("ls-autoplay") : se("<div>").appendTo(a).addClass("ls-playvideo"), t.is("iframe") && i.mediaProperties.poster && se("<div>").appendTo(a).addClass("ls-videopreview").attr({
                        style: "background-image: url(" + i.mediaProperties.poster + ")"
                    }), t.is("video, audio") && i.mediaProperties.poster && se("<div>").appendTo(a).addClass("ls-videopreview").attr({
                        style: "background-image: url(" + i.mediaProperties.poster + ")"
                    })
                },
                properties: function(e, t, i) {
                    switch (i.is.mediaLayer = !0, i.mediaProperties.type) {
                        case "youtube":
                            i.is.backgroundVideo ? (i.mediaProperties.options = se.extend(!0, {
                                loop: 1,
                                playlist: i.mediaProperties.embedID,
                                controls: 0,
                                autoplay: 0,
                                showinfo: !1,
                                modestbranding: 1,
                                thumbnail: !1
                            }, ie.media[i.mediaProperties.type].defaults, i.mediaProperties.embedOptions), ie.media.set.backgroundVideo(e, i)) : (i.mediaProperties.options = se.extend(!0, {}, ie.media[i.mediaProperties.type].defaults, i.mediaProperties.embedOptions, {
                                autoplay: 0
                            }), ie.media.set.mediaElements(e, t, i));
                            break;
                        case "vimeo":
                            i.is.backgroundVideo ? (i.mediaProperties.options = se.extend(!0, {
                                loop: 1,
                                byline: 0,
                                portrait: 0,
                                title: 0,
                                fun: 0
                            }, ie.media[i.mediaProperties.type].defaults, i.mediaProperties.embedOptions), ie.media.set.backgroundVideo(e, i)) : (i.mediaProperties.options = se.extend(!0, {}, ie.media[i.mediaProperties.type].defaults, i.mediaProperties.embedOptions, {
                                autoplay: 0
                            }), ie.media.set.mediaElements(e, t, i));
                            break;
                        case "html5":
                            t.attr("autoplay") && (t.removeAttr("autoplay"), e.attr("data-ls", e.attr("data-ls") + " autoplay: true;")), i.is.backgroundVideo && (t.removeAttr("controls"), t[0].muted = !0, t.attr("loop", "")), "controls" in i.mediaSettings && (i.mediaSettings.controls ? (t.attr("controls", ""), t.removeAttr("nocontrols")) : t.removeAttr("controls")), "volume" in i.mediaSettings && (i.mediaSettings.volume < 0 ? i.mediaSettings.volume = 0 : 100 < i.mediaSettings.volume && (i.mediaSettings.volume = 100), t[0].volume = i.mediaSettings.volume / 100), "muted" in i.mediaSettings && (i.mediaSettings.muted ? t[0].muted = !0 : t[0].muted = !1), "loop" in i.mediaSettings && (i.mediaSettings.loop ? t.attr("loop", "") : t.removeAttr("loop")), i.is.backgroundVideo ? ie.media.set.backgroundVideo(e, i) : ie.media.set.mediaElements(e, t, i)
                    }
                },
                thumbnail: function(e, t) {
                    switch (t) {
                        case "show":
                            e.fadeIn(ie.transitions.media.defaults.fadeIn);
                            break;
                        case "hide":
                            e.delay(ie.transitions.media.defaults.delay).fadeOut(ie.transitions.media.defaults.fadeOut)
                    }
                }
            },
            events: {
                start: function(e, t, i) {
                    var a;
                    ie.api.hasEvent("mediaDidStart") && !i.mediaProperties.alreadyStarted && ie.media.functions.allowedToPlay(e, i) && ((a = ie.api.eventData()).event.target = e[0], _.triggerHandler("mediaDidStart", a), i.mediaProperties.alreadyStarted = !0)
                },
                stop: function(e, t, i) {
                    var a;
                    ie.api.hasEvent("mediaDidStop") && i.mediaProperties.alreadyStarted && ((a = ie.api.eventData()).event.target = e[0], _.triggerHandler("mediaDidStop", a), i.mediaProperties.alreadyStarted = !1)
                }
            },
            unmute: {set: function(e, t, i) {
                    ("youtube" !== t && "vimeo" !== t || ie.media.properties.allowToUnmute) && ie.gui.media.showUnmute(), e.attr("data-ls-allow-to-unmute", ""), i && e.attr("data-ls-muted-by-browser", "")
                },
                multipleMediaElements: function() {
                    var e = _.find("[data-ls-allow-to-unmute]");
                    (ie.o.rememberUnmuteState ? e : e.filter("[data-ls-playing], [data-ls-muted-by-browser]")).each(function() {
                        ie.media.unmute.singleMediaElement(se(this))
                    }), ie.gui.media.hideUnmute(), ie.media.properties.userDidUnmute = !0
                },
                singleMediaElement: function(e) {
                    var t, i = e.closest(".ls-layer").data(ie.defaults.init.dataKey),
                        a = !1;
                    switch (i.mediaProperties.type) {
                        case "youtube":
                            ie.media.properties.allowToUnmute && (a = !0, i.mediaProperties.player.unMute());
                            break;
                        case "vimeo":
                            ie.media.properties.allowToUnmute && (a = !0, t = i.mediaSettings.volume ? i.mediaSettings.volume / 100 : 1, i.mediaProperties.player.setVolume(t));
                            break;
                        case "html5":
                            a = !0, e[0].muted = !1
                    }
                    a && e.removeAttr("data-ls-muted-by-browser data-ls-allow-to-unmute")
                }
            },
            functions: {
                allowedToPlay: function(e, t) {
                    var i = e.closest(".ls-layer");
                    return !!(ie.slides.current.index === parseInt(i.attr("data-ls-slidein")) || t.is.backgroundVideo && ie.slides.next.index === parseInt(i.attr("data-ls-slidein")) || i.attr("data-ls-static") && void 0 !== i.attr("data-ls-active"))
                },
                playActiveMedia: function() {
                    var e;
                    ie.media.get("notbg,active").each(function() {
                        if ((e = se(this).closest(".ls-layer").data(ie.defaults.init.dataKey)).mediaProperties.alreadyStarted) switch (e.mediaProperties.type) {
                            case "youtube":
                                e.mediaProperties.player.playVideo();
                                break;
                            case "vimeo":
                                e.mediaProperties.player.play();
                                break;
                            case "html5":
                                e.mediaProperties.$media[0].play()
                        } else se(this).parent().find(".ls-vpcontainer").trigger("playMedia")
                    })
                },
                pauseActiveMedia: function() {
                    var e;
                    ie.media.get("notbg,active,playing").each(function() {
                        switch ((e = se(this).closest(".ls-layer").data(ie.defaults.init.dataKey)).mediaProperties.type) {
                            case "youtube":
                                e.mediaProperties.player.pauseVideo();
                                break;
                            case "vimeo":
                                e.mediaProperties.player.pause();
                                break;
                            case "html5":
                                this.pause()
                        }
                    })
                },
                urlToObject: function(e) {
                    var a = {},
                        t = e.split("?")[1];
                    return t && t.split("#")[0].replace(/([^=&]+)=([^&]*)/g, function(e, t, i) {
                        a[decodeURIComponent(t)] = se.isNumeric(decodeURIComponent(i)) ? parseInt(decodeURIComponent(i)) : decodeURIComponent(i)
                    }), a
                },
                checkSlideshowState: function(e, t) {
                    !t.is.static && ie.o.autoPauseSlideshow && (ie.functions.setStates(ie.slideshow, {
                        pausedByVideo: !0
                    }), "auto" == ie.o.autoPauseSlideshow && ie.media.properties.playingInCurSlide++)
                },
                checkSlideshowWaiting: function() {
                    var e = ie.media.properties.playingInCurSlide,
                        t = ie.media.get("notbg,active,notstatic,notplaying"),
                        i = ie.media.get("notbg,active,notstatic,notplaying").length;
                    i === e && 0 < i && ie.slideshow.state.pausedByVideo && ie.o.autoPauseSlideshow && !ie.timeouts.pausedVideos && ie.slideshow.state.running ? ie.timeouts.pausedVideos = setTimeout(function() {
                        ie.slideshow.state.running ? t.each(function() {
                            ie.media.functions.mediaEnded(se(this), se(this).closest(".ls-layer"), se(this).closest(".ls-layer").data(ie.defaults.init.dataKey))
                        }) : ie.slideshow.state.pausedByVideo = !1
                    }, 5e3) : ie.timeouts.pausedVideos && (clearTimeout(ie.timeouts.pausedVideos), delete ie.timeouts.pausedVideos)
                },
                playIfAllowed: function(e) {
                    var t = e.data(ie.defaults.init.dataKey);
                    t.is.mediaLayer && (ie.device.isMobile && (_.hasClass("ls-device-is-phone") && t.elements.$outerWrapper.hasClass("ls-hide-on-phone") || _.hasClass("ls-device-is-tablet") && t.elements.$outerWrapper.hasClass("ls-hide-on-tablet")) || ("autoplay" in t.mediaSettings || !ie.o.autoPlayVideos) && !t.mediaSettings.autoplay || e.find(".ls-vpcontainer").trigger("playMedia"))
                },
                stop: function(a) {
                    a = void 0 === a || a;
                    ie.layers.get("current,out,youtube").each(function() {
                        var e = se(this),
                            t = e.closest(".ls-layer"),
                            i = t.data(ie.defaults.init.dataKey);
                        ie.media.youtube.stop(t, e, i, a)
                    }), ie.layers.get("current,out,vimeo").each(function() {
                        var e = se(this),
                            t = e.closest(".ls-layer"),
                            i = t.data(ie.defaults.init.dataKey);
                        ie.media.vimeo.stop(t, e, i, a)
                    }), ie.layers.get("current,out,html5").each(function() {
                        var e = se(this),
                            t = e.closest(".ls-layer"),
                            i = t.data(ie.defaults.init.dataKey);
                        ie.media.html5.stop(t, e, i, a)
                    }), ie.media.properties.playingInCurSlide = 0, ie.media.properties.endedInCurSlide = 0
                },
                mediaEnded: function(e, t, i) {
                    "auto" != ie.o.autoPauseSlideshow || i.is.backgroundVideo || (i.is.static || ie.media.properties.endedInCurSlide++, ie.media.properties.endedInCurSlide == ie.media.properties.playingInCurSlide && 0 !== ie.media.properties.playingInCurSlide && (ie.functions.setStates(ie.slideshow, {
                        pausedByVideo: !1
                    }), ie.slideshow.remainingSlideDuration = 1, ie.slideshow.start())), ie.media.set.dataAttribute(e, "not-playing"), ie.media.events.stop(e, t, i)
                },
                removeFromTimeline: function(e) {
                    ie.transitions._slideTimeline.kill(null, e.closest(".ls-in-out")[0])
                }
            },
            youtube: {
                defaults: {
                    autoplay: 0,
                    playsinline: 1,
                    wmode: "opaque",
                    html5: 1,
                    enablejsapi: 1,
                    version: 3,
                    rel: 0
                },
                init: function() {
                    var g = 0;
                    this.$medias = ie.slider.$hiddenWrapper.find('iframe[src*="youtube-nocookie.com"], iframe[src*="youtube.com"], iframe[src*="youtu.be"], iframe[data-src*="youtube-nocookie.com"], iframe[data-src*="youtube.com"], iframe[data-src*="youtu.be"]').each(function() {
                        var e = se(this).attr({
                                id: "ls-youtube-" + ++g,
                                allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture; fullscreen",
                                allowfullscreen: ""
                            }),
                            t = e.closest(".ls-layer");
                        t.data("hasBeenSet") || ie.layers.set.singleLayer(t);
                        var i, a, s, r, o, n, l, d, u = t.data(ie.defaults.init.dataKey),
                            p = e.attr("src") || e.attr("data-src"),
                            c = ie.media.functions.urlToObject(p),
                            h = (p = p.split("?")[0].split("//")[1]).split("/"),
                            m = h[h.length - 1],
                            f = ie.media.set.customPoster(t, u);
                        u.mediaProperties = {
                            type: "youtube",
                            $media: e,
                            embedURL: p,
                            embedID: m,
                            embedOptions: c
                        }, f ? (u.mediaProperties.poster = f, ie.media.set.properties(t, e, u)) : (i = ["default.jpg", "mqdefault.jpg", "hqdefault.jpg", "sddefault.jpg", "maxresdefault.jpg"], a = "https://img.youtube.com/vi/" + p.split("embed/")[1].split("?")[0] + "/", s = a + ie.o.youtubePreview, o = r = 0, n = function() {
                            this.width > r && (r = this.width, s = this.src), d()
                        }, l = function() {
                            d()
                        }, d = function() {
                            (o += 1) === i.length && (u.mediaProperties.poster = s, ie.media.set.properties(t, e, u))
                        }, i.forEach(function(e) {
                            var t = new Image;
                            t.addEventListener("error", l, !1), t.addEventListener("load", n, !1), t.src = a + e
                        }))
                    }), this.$medias.length && (ie.media.properties.$allMediaLayers = ie.media.properties.$allMediaLayers.add(this.$medias.closest(".ls-layer")), ie.timeouts.loadYouTube = Math.floor(Date.now() / 1e3), window.YT || se("<script>").attr({
                        src: "https://www.youtube.com/iframe_api",
                        type: "text/javascript"
                    }).appendTo("head"), window.onYouTubeIframeAPIReady = function() {
                        window._layerSlider.globals.youTubeIsReady = !0
                    }, ie.intervals.isYouTubeReady = setInterval(function() {
                        window.YT && 1 === window.YT.loaded || window._layerSlider.globals.youTubeIsReady || 3 < Math.floor(Date.now() / 1e3) - ie.timeouts.loadYouTube ? (clearInterval(ie.intervals.isYouTubeReady), delete ie.intervals.isYouTubeReady, delete ie.timeouts.loadYouTube, ie.media.youtube.$medias.closest(".ls-layer").each(function() {
                            var e = se(this),
                                t = e.data(ie.defaults.init.dataKey);
                            e.on("playMedia." + z + " click." + z, ".ls-vpcontainer", function() {
                                ie.media.set.thumbnail(se(this), "hide"), ie.media.functions.checkSlideshowState(e, t), ie.media.functions.removeFromTimeline(e), ie.media.youtube.play(e, t.mediaProperties.$media, t, t.mediaProperties.embedURL)
                            }).on("playBackgroundVideo." + z, function() {
                                ie.media.youtube.play(e, t.mediaProperties.$media, t, t.mediaProperties.embedURL), ie.layers.set.dataAttribute(e, "active")
                            }).on("stopBackgroundVideo." + z, function() {
                                ie.media.youtube.stop(e, t.mediaProperties.$media, t, !0), ie.layers.set.dataAttribute(e, "hidden")
                            }).on("preloadBackgroundVideo." + z, function() {
                                ie.media.youtube.createPlayer(e, t.mediaProperties.$media, t, t.mediaProperties.embedURL, !0)
                            })
                        }), ie.functions.setStates(ie.slider, {
                            waitingForYouTube: !1
                        })) : ie.functions.setStates(ie.slider, {
                            waitingForYouTube: !0
                        })
                    }, 25))
                },
                createPlayer: function(t, i, a, s, r) {
                    a.mediaProperties.playerState = "initializing", "controls" in a.mediaSettings && (a.mediaProperties.options.controls = a.mediaSettings.controls ? 1 : 0), "loop" in a.mediaSettings && (a.mediaProperties.options.loop = a.mediaSettings.loop ? 1 : 0), "showinfo" in a.mediaSettings && (a.mediaProperties.options.showinfo = a.mediaSettings.showinfo ? 1 : 0), a.mediaProperties.options.loop ? a.mediaProperties.options.playlist = a.mediaProperties.embedID : delete a.mediaProperties.options.playlist, 0 === a.mediaProperties.options.showinfo && (a.mediaProperties.options.modestbranding = 1), i.attr("src", "https://" + s + "?" + jQuery.param(a.mediaProperties.options)).load(function() {
                        a.mediaProperties.player = new YT.Player(i[0], {
                            events: {
                                onReady: function(e) {
                                    a.mediaProperties.playerState = "ready", a.mediaSettings.volume && a.mediaProperties.player.setVolume(a.mediaSettings.volume), r && !a.mediaProperties.shouldPlay || (ie.media.youtube.play(t, i, a, s), a.mediaProperties.shouldPlay = !1)
                                },
                                onStateChange: function(e) {
                                    switch (e.data) {
                                        case 0:
                                            a.mediaProperties.options.loop && 1 === a.mediaProperties.options.loop || ie.media.functions.mediaEnded(i, t, a);
                                            break;
                                        case 1:
                                            ie.media.events.start(i, t, a), a.mediaProperties.lastStarted = Date.now();
                                            break;
                                        case 2:
                                        case -1:
                                            a.mediaProperties.firstState && 0 !== a.mediaProperties.lastState && 1 !== a.mediaProperties.lastState || a.mediaProperties.lastStarted && (Date.now(), a.mediaProperties.lastStarted)
                                    }
                                    switch (e.data) {
                                        case 1:
                                            ie.media.set.dataAttribute(i, "playing");
                                            break;
                                        default:
                                            ie.media.set.dataAttribute(i, "not-playing")
                                    }
                                    ie.media.youtube.savePlayerState(a, e.data)
                                }
                            }
                        })
                    })
                },
                savePlayerState: function(e, t) {
                    e.mediaProperties.firstState || (e.mediaProperties.firstState = t), e.mediaProperties.lastState = t
                },
                play: function(e, t, i, a, s) {
                    void 0 !== t.attr("data-ls-muted-by-browser") && ie.media.unmute.singleMediaElement(t), i.mediaProperties.player ? i.mediaProperties.player.playVideo ? (!i.is.backgroundVideo || "muted" in i.mediaSettings || i.mediaProperties.player.mute(), i.mediaSettings.muted ? ie.o.rememberUnmuteState && ie.media.properties.userDidUnmute || (i.mediaProperties.player.mute(), "offertounmute" == i.mediaSettings.muted && ie.media.unmute.set(t, i.mediaProperties.type)) : s && (i.mediaProperties.player.mute(), ie.media.unmute.set(t, i.mediaProperties.type, !0)), ie.media.functions.allowedToPlay(t, i) ? i.mediaProperties.player.playVideo() : ie.media.youtube.stop(e, t, i, !0)) : i.mediaProperties.shouldPlay = !0 : i.mediaProperties.playerState ? i.mediaProperties.shouldPlay = !0 : this.createPlayer(e, t, i, a)
                },
                stop: function(e, t, i, a) {
                    i.mediaProperties.player && (i.mediaProperties.player.pauseVideo(), a && i.mediaProperties.player.seekTo(0), i.is.backgroundVideo || ie.media.set.thumbnail(e.find(".ls-vpcontainer"), "show"), ie.media.events.stop(t, e, i))
                }
            },
            vimeo: {
                defaults: {
                    autoplay: 0,
                    autopause: 0,
                    wmode: "opaque",
                    playsinline: 1
                },
                init: function() {
                    var d, e, t = this.$medias = ie.slider.$hiddenWrapper.find('iframe[src*="player.vimeo"], iframe[data-src*="player.vimeo"]'),
                        u = ie.slider.$hiddenWrapper.find('.ls-slide:eq(0) iframe[src*="player.vimeo"], .ls-slide:eq(0) iframe[data-src*="player.vimeo"]').length;
                    t.length && (ie.timeouts.loadVimeo = Math.floor(Date.now() / 1e3), ie.media.properties.$allMediaLayers = ie.media.properties.$allMediaLayers.add(t.closest(".ls-layer")), d = 0, se("<script>").attr({
                        src: "https://player.vimeo.com/api/player.js",
                        type: "text/javascript"
                    }).appendTo("head"), ie.intervals.isVimeoReady = setInterval(function() {
                        ie.functions.setStates(ie.slider, {
                            waitingForVimeo: !0
                        }), (window.Vimeo || 3 < Math.floor(Date.now() / 1e3) - ie.timeouts.loadVimeo) && (clearInterval(ie.intervals.isVimeoReady), delete ie.intervals.isVimeoReady, delete ie.timeouts.loadVimeo, e())
                    }, 25), e = function() {
                        var l = 0;
                        ie.media.vimeo.$medias.each(function() {
                            var t = se(this).attr({
                                    id: "ls-vimeo-" + ++d,
                                    allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture; fullscreen",
                                    allowfullscreen: ""
                                }),
                                i = t.closest(".ls-layer");
                            i.data("hasBeenSet") || ie.layers.set.singleLayer(i);
                            var a = i.data(ie.defaults.init.dataKey),
                                e = t.attr("src") || t.attr("data-src"),
                                s = ie.media.functions.urlToObject(e),
                                r = "https://vimeo.com/api/oembed.json?url=http://vimeo.com/" + e.split("video/")[1].split("?")[0],
                                e = e.split("?")[0].split("//")[1];
                            ie.media.vimeo.defaults.player_id = "ls-vimeo-" + d;
                            var o = ie.media.set.customPoster(i, a);
                            a.mediaProperties = {
                                type: "vimeo",
                                $media: t,
                                embedURL: e,
                                embedOptions: s
                            };

                            function n(e) {
                                a.mediaProperties.poster = e, (0 === u || 0 < u && ++l == u) && (window._layerSlider.globals.vimeoIsReady = !0), ie.media.set.properties(i, t, a)
                            }
                            o ? n(o) : se.getJSON(r, function(e) {
                                n(e.thumbnail_url)
                            }), i.on("playMedia." + z + " click." + z, ".ls-vpcontainer", function() {
                                ie.media.set.thumbnail(se(this), "hide"), ie.media.functions.checkSlideshowState(i, a), ie.media.functions.removeFromTimeline(i), ie.media.vimeo.play(i, t, a, e)
                            }).on("playBackgroundVideo." + z, function() {
                                ie.media.vimeo.play(i, t, a, e), ie.layers.set.dataAttribute(i, "active")
                            }).on("stopBackgroundVideo." + z, function() {
                                ie.media.vimeo.stop(i, t, a, !0), ie.layers.set.dataAttribute(i, "hidden")
                            }).on("preloadBackgroundVideo." + z, function() {
                                ie.media.vimeo.createPlayer(i, t, a, e, !0)
                            })
                        }), ie.functions.setStates(ie.slider, {
                            waitingForVimeo: !1
                        })
                    })
                },
                createPlayer: function(e, t, i, a, s) {
                    i.mediaProperties.playerState = "initializing";
                    "controls" in i.mediaSettings && delete i.mediaSettings.controls, "loop" in i.mediaSettings && (i.mediaProperties.options.loop = i.mediaSettings.loop ? 1 : 0), "showinfo" in i.mediaSettings && (i.mediaSettings.showinfo ? (i.mediaProperties.options.byline = 1, i.mediaProperties.options.portrait = 1, i.mediaProperties.options.title = 1) : (i.mediaProperties.options.byline = 0, i.mediaProperties.options.portrait = 0, i.mediaProperties.options.title = 0), delete i.mediaProperties.options.showinfo), "volume" in i.mediaSettings && (0 === i.mediaSettings.volume ? (i.mediaSettings.volume = 100, i.mediaSettings.muted = 1) : (i.mediaSettings.volume < 0 || 100 < i.mediaSettings.volume) && (i.mediaSettings.volume = 100)), t.attr("src", "https://" + a + "?" + jQuery.param(i.mediaProperties.options)), i.mediaProperties.player = new Vimeo.Player(t[0]), i.mediaProperties.player.on("play", function() {
                        ie.media.set.dataAttribute(t, "playing"), ie.media.events.start(t, e, i)
                    }), i.mediaProperties.player.on("pause", function() {
                        ie.media.set.dataAttribute(t, "not-playing")
                    }), i.mediaProperties.player.on("ended", function() {
                        ie.media.functions.mediaEnded(t, e, i)
                    }), i.mediaProperties.player.ready().then(function() {
                        i.mediaProperties.playerState = "ready", i.mediaSettings.volume && !i.mediaSettings.muted && se.isNumeric(i.mediaSettings.volume) && 0 <= i.mediaSettings.volume && i.mediaSettings.volume <= 100 && i.mediaProperties.player.setVolume(i.mediaSettings.volume / 100), s || ie.media.vimeo.play(e, t, i, a)
                    })
                },
                play: function(t, i, a, s, e) {
                    void 0 !== i.attr("data-ls-muted-by-browser") && ie.media.unmute.singleMediaElement(i), a.mediaProperties.player ? (!a.is.backgroundVideo || "muted" in a.mediaSettings || a.mediaProperties.player.setVolume(0), a.mediaSettings.muted && (ie.o.rememberUnmuteState && ie.media.properties.userDidUnmute ? ie.o.rememberUnmuteState && ie.media.properties.userDidUnmute && (a.mediaProperties.player.setVolume(a.mediaSettings.volume / 100 || 1), delete a.mediaSettings.muted) : (a.mediaProperties.player.setVolume(0), "offertounmute" == a.mediaSettings.muted && ie.media.unmute.set(i, a.mediaProperties.type))), e ? (a.mediaProperties.player.setVolume(0), ie.media.unmute.set(i, a.mediaProperties.type, !0)) : a.mediaProperties.player.getVolume().then(function(e) {
                        0 == e && "offertounmute" == a.mediaSettings.muted && ie.media.unmute.set(i, a.mediaProperties.type)
                    }), ie.media.functions.allowedToPlay(i, a) ? a.mediaProperties.player.play().then(function() {}).catch(function(e) {
                        switch (e.name) {
                            case "PasswordError":
                                window.console && (console.error(ie.defaults.slider.errorText), console.error("Vimeo video is password protected and may cause playback issues."));
                                break;
                            case "PrivacyError":
                                window.console && (console.error(ie.defaults.slider.errorText), console.error("Vimeo video is private and may cause playback issues."));
                                break;
                            default:
                                ie.media.vimeo.play(t, i, a, s, !0)
                        }
                    }) : ie.media.vimeo.stop(t, i, a, !0)) : this.createPlayer(t, i, a, s)
                },
                stop: function(e, t, i, a) {
                    i.mediaProperties.player && (i.mediaProperties.player.pause(), a && i.mediaProperties.player.setCurrentTime(0), i.is.backgroundVideo || ie.media.set.thumbnail(e.find(".ls-vpcontainer"), "show"), ie.media.events.stop(t, e, i))
                }
            },
            html5: {
                singleInit: function(t) {
                    var e, i, a, s, r = t.closest(".ls-layer"),
                        o = r.data(ie.defaults.init.dataKey),
                        n = t.find("source"),
                        l = ie.media.set.customPoster(r, o);
                    o.mediaProperties = {
                        type: "html5",
                        $media: t,
                        poster: l || t.attr("poster")
                    }, t.removeAttr("poster"), 0 < n.length ? n.each(function() {
                        void 0 !== (e = se(this).attr("type")) && !1 !== e || (i = se(this).attr("src"), a = i.split("."), s = a[a.length - 1].toLowerCase(), se(this).attr("type", se(this).parent()[0].tagName.toLowerCase() + "/" + s)), "" !== t[0].canPlayType(se(this).attr("type")) && (o.mediaProperties.canBePlayed = !0)
                    }) : void 0 !== t.attr("src") && !1 !== t.attr("src") && (i = t.attr("src"), a = i.split("."), s = a[a.length - 1].toLowerCase(), "" !== t[0].canPlayType(t[0].tagName.toLowerCase() + "/" + s) && (o.mediaProperties.canBePlayed = !0)), o.mediaProperties.canBePlayed && (ie.media.set.properties(r, t, o), t.on("ended." + z, function() {
                        ie.media.functions.mediaEnded(t, r, o)
                    }).on("play." + z, function() {}).on("playing." + z, function() {
                        ie.media.events.start(t, r, o), ie.media.set.dataAttribute(t, "playing")
                    }).on("pause." + z, function() {
                        ie.media.set.dataAttribute(t, "not-playing")
                    }), r.on("playMedia." + z + " click." + z, ".ls-vpcontainer", function(e) {
                        ie.media.set.thumbnail(se(this), "hide"), ie.media.functions.checkSlideshowState(r, o), ie.media.functions.removeFromTimeline(r), ie.media.html5.play(r, t, o)
                    }).on("playBackgroundVideo." + z, function() {
                        ie.media.html5.play(r, t, o), ie.layers.set.dataAttribute(r, "active")
                    }).on("stopBackgroundVideo." + z, function() {
                        ie.media.html5.stop(r, t, o, !0), ie.layers.set.dataAttribute(r, "hidden")
                    }))
                },
                init: function() {
                    var e, t = ie.slider.$hiddenWrapper.find("video, audio");
                    ie.media.properties.$allMediaLayers = ie.media.properties.$allMediaLayers.add(t.closest(".ls-layer")), t.length && (e = 0, t.each(function() {
                        se(this).closest(".ls-layer").data(ie.defaults.init.dataKey).is.mediaLayer = !0, se(this).attr("id", "ls-html5-" + ++e).attr("playsinline", ""), se(this)[0].pause()
                    }))
                },
                play: function(e, t, i) {
                    var a;
                    i.mediaProperties.canBePlayed && (void 0 !== t.attr("data-ls-muted-by-browser") && ie.media.unmute.singleMediaElement(t), i.mediaSettings.muted && (ie.o.rememberUnmuteState && ie.media.properties.userDidUnmute ? ie.o.rememberUnmuteState && ie.media.properties.userDidUnmute && (t[0].muted = !1) : (t[0].muted = !0, "offertounmute" == i.mediaSettings.muted && ie.media.unmute.set(t, i.mediaProperties.type))), void 0 !== (a = t[0].play()) && a.then(function(e) {}).catch(function(e) {
                        t[0].muted = !0, t[0].play(), t[0].paused && ie.functions.setStates(ie.slideshow, {
                            pausedByVideo: !1
                        }), ie.media.unmute.set(t, i.mediaProperties.type, !0)
                    }))
                },
                stop: function(e, t, i, a) {
                    i.mediaProperties.canBePlayed && (t[0].pause(), a && (t[0].currentTime = 0), i.is.backgroundVideo || ie.media.set.thumbnail(se(this), "show"), ie.media.events.stop(t, e, i))
                }
            }
        }, ie.yourLogo = {
            init: function() {
                ie.o.yourLogo && (this.$element = se("<img>").addClass("ls-yourlogo").appendTo(_).attr("style", ie.o.yourLogoStyle).css({
                    visibility: "hidden",
                    display: "bock"
                }).on("load." + z, function() {
                    var e = ie.yourLogo.$element ? 500 : 0;
                    ie.timeouts.yourLogo = setTimeout(function() {
                        delete ie.timeouts.yourLogo, ie.yourLogo.$element.data("originalWidth", ie.yourLogo.$element.width()), ie.yourLogo.$element.data("originalHeight", ie.yourLogo.$element.height()), "auto" != ie.yourLogo.$element.css("left") && ie.yourLogo.$element.data("originalLeft", ie.yourLogo.$element[0].style.left), "auto" != ie.yourLogo.$element.css("right") && ie.yourLogo.$element.data("originalRight", ie.yourLogo.$element[0].style.right), "auto" != ie.yourLogo.$element.css("top") && ie.yourLogo.$element.data("originalTop", ie.yourLogo.$element[0].style.top), "auto" != ie.yourLogo.$element.css("bottom") && ie.yourLogo.$element.data("originalBottom", ie.yourLogo.$element[0].style.bottom), !1 !== ie.o.yourLogoLink && se("<a>").appendTo(_).attr("href", ie.o.yourLogoLink).attr("target", ie.o.yourLogoTarget).css({
                            textDecoration: "none",
                            outline: "none"
                        }).append(ie.yourLogo.$element), ie.yourLogo.$element.css({
                            display: "none",
                            visibility: "visible"
                        }), ie.yourLogo.resize()
                    }, e)
                }).attr("src", ie.o.yourLogo))
            },
            resize: function() {
                this.$element.css({
                    width: this.$element.data("originalWidth") * ie.resize.ratio,
                    height: this.$element.data("originalHeight") * ie.resize.ratio
                }), this.$element.fadeIn(300);
                var e = "auto",
                    t = "auto",
                    i = "auto",
                    a = "auto",
                    e = this.$element.data("originalLeft") && -1 != this.$element.data("originalLeft").indexOf("%") ? _.width() / 100 * parseFloat(this.$element.data("originalLeft")) - this.$element.width() / 2 + parseInt(_.css("padding-left")) : parseInt(this.$element.data("originalLeft")) * ie.resize.ratio,
                    t = this.$element.data("originalRight") && -1 != this.$element.data("originalRight").indexOf("%") ? _.width() / 100 * parseFloat(this.$element.data("originalRight")) - this.$element.width() / 2 + parseInt(_.css("padding-right")) : parseInt(this.$element.data("originalRight")) * ie.resize.ratio,
                    i = this.$element.data("originalTop") && -1 != this.$element.data("originalTop").indexOf("%") ? _.height() / 100 * parseFloat(this.$element.data("originalTop")) - this.$element.height() / 2 + parseInt(_.css("padding-top")) : parseInt(this.$element.data("originalTop")) * ie.resize.ratio,
                    a = this.$element.data("originalBottom") && -1 != this.$element.data("originalBottom").indexOf("%") ? _.height() / 100 * parseFloat(this.$element.data("originalBottom")) - this.$element.height() / 2 + parseInt(_.css("padding-bottom")) : parseInt(this.$element.data("originalBottom")) * ie.resize.ratio;
                this.$element.css({
                    left: e,
                    right: t,
                    top: i,
                    bottom: a
                })
            }
        }, ie.gui = {
            navigation: {
                init: function() {
                    ie.o.navPrevNext && this.prevNext.init(), (ie.o.navStartStop || ie.o.navButtons) && this.bottom.init()
                },
                prevNext: {
                    init: function() {
                        se('<a class="ls-gui-element ls-nav-prev" aria-label="jump to the previous slide" href="#" />').on("click." + z, function(e) {
                            e.preventDefault(), _.layerSlider("prev")
                        }).appendTo(_), se('<a class="ls-gui-element ls-nav-next" aria-label="jump to the next slide" href="#" />').on("click." + z, function(e) {
                            e.preventDefault(), _.layerSlider("next")
                        }).appendTo(_), ie.o.hoverPrevNext && this.setHover()
                    },
                    setHover: function() {
                        _.find(".ls-nav-prev, .ls-nav-next").css({
                            display: "none"
                        }), _.on("mouseenter." + z, function() {
                            ie.gui.navigation.forceHide || _.find(".ls-nav-prev, .ls-nav-next").stop(!0, !0).fadeIn(300)
                        }).on("mouseleave." + z, function() {
                            _.find(".ls-nav-prev, .ls-nav-next").stop(!0, !0).fadeOut(300)
                        })
                    }
                },
                bottom: {
                    init: function() {
                        this.wrapper = se('<div class="ls-gui-element ls-bottom-nav-wrapper" />').appendTo(_), ie.o.navButtons && "always" != ie.o.thumbnailNavigation && this.bullets.init(), ie.o.navStartStop ? this.createStartStop() : "always" != ie.o.thumbnailNavigation && this.createSides(), ie.o.hoverBottomNav && "always" != ie.o.thumbnailNavigation && this.setHover(), "always" == ie.o.thumbnailNavigation && (this.wrapper.addClass("ls-above-thumbnails"), this.thumbnails.init())
                    },
                    bullets: {
                        init: function() {
                            var t = this;
                            se('<span class="ls-bottom-slidebuttons" />').appendTo(_.find(".ls-bottom-nav-wrapper"));
                            for (var e = 0; e < ie.slides.count; e++) {
                                var i = se('<a href="#" aria-label="jump to slide ' + (e + 1) + '" />').appendTo(_.find(".ls-bottom-slidebuttons")).data("index", e + 1).on("click." + z, function(e) {
                                    e.preventDefault(), _.layerSlider(se(this).data("index"))
                                });
                                "hover" == ie.o.thumbnailNavigation && i.on("mouseenter." + z, function() {
                                    var e = se(this);
                                    _.find(".ls-thumbnail-hover-img").css({
                                        left: parseInt(t.hoverWrapper.css("padding-left")),
                                        top: parseInt(t.hoverWrapper.css("padding-top"))
                                    }), t.hoverImage.on("load." + z, function() {
                                        0 === se(this).width() ? t.hoverImage.css({
                                            position: "relative",
                                            margin: "0 auto",
                                            left: "auto"
                                        }) : t.hoverImage.css({
                                            position: "absolute",
                                            marginLeft: -se(this).width() / 2,
                                            left: "50%"
                                        }), t.hoverImage.css("display", "none").stop(!0, !0).fadeIn(250)
                                    }).attr("src", ie.slides[e.data("index")].data.thumbnail), t.hoverWrapper.css({
                                        display: "block"
                                    }).stop().animate({
                                        left: se(this).position().left + (se(this).width() - t.hoverWrapper.outerWidth()) / 2
                                    }, 250), t.hoverWrapperInner.css({
                                        display: "none",
                                        visibility: "visible"
                                    }).stop().fadeIn(250)
                                }).on("mouseleave." + z, function() {
                                    t.hoverWrapperInner.stop().fadeOut(250, function() {
                                        t.hoverWrapper.css({
                                            visibility: "hidden",
                                            display: "block"
                                        })
                                    })
                                })
                            }
                            t.set.active(ie.slides.first.index), "hover" == ie.o.thumbnailNavigation && t.set.hover()
                        },
                        set: {
                            active: function(e) {
                                void 0 === e && (e = ie.slides.current.index), e--, _.find(".ls-bottom-slidebuttons a").removeClass("ls-nav-active"), _.find(".ls-bottom-slidebuttons a:eq( " + e + " )").addClass("ls-nav-active")
                            },
                            hover: function() {
                                var e = ie.gui.navigation.bottom.bullets,
                                    t = se('<div class="ls-thumbnail-hover"><div class="ls-thumbnail-hover-inner"><div class="ls-thumbnail-hover-bg"></div><div class="ls-thumbnail-hover-img"><img></div><span></span></div></div>').appendTo(_.find(".ls-bottom-slidebuttons"));
                                _.find(".ls-thumbnail-hover, .ls-thumbnail-hover-img").css({
                                    width: ie.o.tnWidth,
                                    height: ie.o.tnHeight
                                }), e.hoverWrapper = _.find(".ls-thumbnail-hover"), e.hoverImage = e.hoverWrapper.find("img").css({
                                    height: ie.o.tnHeight
                                }), e.hoverWrapperInner = _.find(".ls-thumbnail-hover-inner").css({
                                    visibility: "hidden",
                                    display: "block"
                                }), t.appendTo(_.find(".ls-bottom-slidebuttons"))
                            }
                        }
                    },
                    createStartStop: function() {
                        this.buttonStart = se('<a class="ls-nav-start" aria-label="start slideshow" href="#" />').on("click." + z, function(e) {
                            e.preventDefault(), _.layerSlider("start")
                        }).prependTo(_.find(".ls-bottom-nav-wrapper")), this.buttonStop = se('<a class="ls-nav-stop" aria-label="stop slideshow" href="#" />').on("click." + z, function(e) {
                            e.preventDefault(), _.layerSlider("stop")
                        }).appendTo(_.find(".ls-bottom-nav-wrapper")), ie.o.autoStart ? this.setStartStop("start") : this.setStartStop("stop")
                    },
                    setStartStop: function(e) {
                        if (ie.o.navStartStop) switch (e) {
                            case "start":
                                this.buttonStart.addClass("ls-nav-start-active"), this.buttonStop.removeClass("ls-nav-stop-active");
                                break;
                            case "stop":
                                this.buttonStart.removeClass("ls-nav-start-active"), this.buttonStop.addClass("ls-nav-stop-active")
                        }
                    },
                    createSides: function() {
                        se('<span class="ls-nav-sides ls-nav-sideleft" />').prependTo(_.find(".ls-bottom-nav-wrapper")), se('<span class="ls-nav-sides ls-nav-sideright" />').appendTo(_.find(".ls-bottom-nav-wrapper"))
                    },
                    setHover: function() {
                        var e = this;
                        e.wrapper.css({
                            display: "none"
                        }), _.on("mouseenter." + z, function() {
                            ie.gui.navigation.forceHide || e.wrapper.stop(!0, !0).fadeIn(300)
                        }).on("mouseleave." + z, function() {
                            e.wrapper.stop(!0, !0).fadeOut(300)
                        })
                    },
                    switchHelper: function(e) {
                        if (ie.o.hoverBottomNav && !_.hasClass("ls-hover")) switch (e) {
                            case "on":
                                ie.gui.navigation.bottom.thumbnails.wrapper.css({
                                    visibility: "hidden",
                                    display: "block"
                                });
                                break;
                            case "off":
                                ie.gui.navigation.bottom.thumbnails.wrapper.css({
                                    visibility: "visible",
                                    display: "none"
                                })
                        }
                    },
                    thumbnails: {
                        init: function() {
                            this.wrapper = se('<div class="ls-gui-element ls-thumbnail-wrapper"></div>').appendTo(_), se('<div class="ls-thumbnail"><div class="ls-thumbnail-inner"><div class="ls-thumbnail-slide-container"><div class="ls-thumbnail-slide"></div></div></div></div>').appendTo(this.wrapper), this.$element = _.find(".ls-thumbnail-slide-container"), "ontouchstart" in window ? this.$element.addClass("ls-touchscroll") : this.$element.on("mouseenter." + z, function() {
                                se(this).addClass("ls-thumbnail-slide-hover")
                            }).on("mouseleave." + z, function() {
                                se(this).removeClass("ls-thumbnail-slide-hover"), ie.gui.navigation.bottom.thumbnails.scroll()
                            }).on("mousemove." + z, function(e) {
                                var t = parseInt(e.pageX - se(this).offset().left) / se(this).width() * (se(this).width() - se(this).find(".ls-thumbnail-slide").width());
                                se(this).find(".ls-thumbnail-slide").stop().css({
                                    marginLeft: t
                                })
                            });
                            for (var e = 0; e < ie.slides.count; e++) {
                                var t = e + 1,
                                    i = se('<a href="#" class="ls-thumb-' + (e + 1) + '"  aria-label="jump to slide ' + (e + 1) + '"><img src="' + ie.slides[t].data.thumbnail + '"></a>');
                                ie.slides[t].data.tnAlt && i.find("img").attr("alt", ie.slides[t].data.tnAlt), i.data("index", t).on("click." + z, function(e) {
                                    e.preventDefault(), _.layerSlider(se(this).data("index"))
                                }).appendTo(_.find(".ls-thumbnail-slide")), "ontouchstart" in window || i.on("mouseenter." + z, function() {
                                    se(this).children().stop().fadeTo(300, ie.o.tnActiveOpacity / 100)
                                }).on("mouseleave." + z, function() {
                                    se(this).children().hasClass("ls-thumb-active") || se(this).children().stop().fadeTo(300, ie.o.tnInactiveOpacity / 100)
                                })
                            }
                            ie.gui.navigation.bottom.buttonStart && ie.gui.navigation.bottom.buttonStop && (ie.gui.navigation.bottom.wrapper = se('<div class="ls-bottom-nav-wrapper ls-below-thumbnails"></div>').appendTo(_), ie.gui.navigation.bottom.buttonStart.clone().on("click." + z, function(e) {
                                e.preventDefault(), _.layerSlider("start")
                            }).appendTo(ie.gui.navigation.bottom.wrapper), ie.gui.navigation.bottom.buttonStop.clone().on("click." + z, function(e) {
                                e.preventDefault(), _.layerSlider("stop")
                            }).appendTo(ie.gui.navigation.bottom.wrapper)), ie.o.hoverBottomNav && this.setHover()
                        },
                        setHover: function() {
                            var e = this;
                            e.wrapper.css("display", "none"), ie.gui.navigation.bottom.wrapper && (ie.gui.navigation.bottom.wrapper = "block" == ie.gui.navigation.bottom.wrapper.css("display") ? ie.gui.navigation.bottom.wrapper : _.find(".ls-above-thumbnails"), ie.gui.navigation.bottom.wrapper.css("display", "none")), _.on("mouseenter." + z, function() {
                                _.addClass("ls-hover"), ie.gui.navigation.forceHide || (e.wrapper.stop(!0, !0).fadeIn(300), ie.gui.navigation.bottom.wrapper && ie.gui.navigation.bottom.wrapper.stop(!0, !0).fadeIn(300))
                            }).on("mouseleave." + z, function() {
                                _.removeClass("ls-hover"), e.wrapper.stop(!0, !0).fadeOut(300), ie.gui.navigation.bottom.wrapper && ie.gui.navigation.bottom.wrapper.stop(!0, !0).fadeOut(300)
                            })
                        },
                        change: function(e) {
                            var t = e || ie.slides.next.index;
                            _.find(".ls-thumbnail-slide a:not(.ls-thumb-" + t + " )").children().each(function() {
                                se(this).removeClass("ls-thumb-active").stop().fadeTo(750, ie.o.tnInactiveOpacity / 100)
                            }), _.find(".ls-thumbnail-slide a.ls-thumb-" + t).children().addClass("ls-thumb-active").stop().fadeTo(750, ie.o.tnActiveOpacity / 100)
                        },
                        scroll: function() {
                            var e, t, i;
                            _.find(".ls-thumbnail-slide-container").hasClass("ls-thumbnail-slide-hover") || (e = !!_.find(".ls-thumb-active").length && _.find(".ls-thumb-active").parent()) && (t = e.position().left + e.width() / 2, i = 0 < (i = (i = _.find(".ls-thumbnail-slide-container").width() / 2 - t) < _.find(".ls-thumbnail-slide-container").width() - _.find(".ls-thumbnail-slide").width() ? _.find(".ls-thumbnail-slide-container").width() - _.find(".ls-thumbnail-slide").width() : i) ? 0 : i, _.find(".ls-thumbnail-slide").animate({
                                marginLeft: i
                            }, 600))
                        },
                        resize: function() {
                            ie.gui.navigation.bottom.switchHelper("on");
                            var e = -1 == ie.slider.initial.width.indexOf("%") ? parseInt(ie.slider.initial.originalWidth) : _.width(),
                                t = _.find(".ls-thumbnail"),
                                i = -1 == ie.o.tnContainerWidth.indexOf("%") ? parseInt(ie.o.tnContainerWidth) : parseInt(e / 100 * parseInt(ie.o.tnContainerWidth));
                            _.find(".ls-thumbnail-slide a").css({
                                width: parseInt(ie.o.tnWidth * ie.resize.ratio),
                                height: parseInt(ie.o.tnHeight * ie.resize.ratio)
                            }), _.find(".ls-thumbnail-slide a:last").css({
                                margin: 0
                            }), _.find(".ls-thumbnail-slide").css({
                                height: parseInt(ie.o.tnHeight * ie.resize.ratio)
                            }), t.css({
                                width: i * Math.floor(100 * ie.resize.ratio) / 100
                            }), t.width() > _.find(".ls-thumbnail-slide").width() && t.css({
                                width: _.find(".ls-thumbnail-slide").width()
                            }), ie.gui.navigation.bottom.switchHelper("off")
                        }
                    }
                }
            },
            media: {
                init: function() {
                    0 < ie.media.properties.$allMediaLayers.length && se('<div class="ls-gui-element ls-media-unmute" aria-label="Unmute"><div class="ls-media-unmute-bg"></div><div class="ls-icon-muted"></div><div class="ls-icon-unmuted"></div></div>').on("click." + z, function(e) {
                        e.preventDefault(), _.layerSlider("unmute")
                    }).appendTo(_)
                },
                showUnmute: function() {
                    _.find(".ls-media-unmute").addClass("ls-media-unmute-active")
                },
                hideUnmute: function() {
                    _.find(".ls-media-unmute").removeClass("ls-media-unmute-active")
                }
            },
            skin: {
                load: function() {
                    _.addClass("ls-" + ie.o.skin);
                    var e, t = ie.o.skinsPath + ie.o.skin + "/skin.css",
                        i = se("head").length ? se("head") : se("body");
                    se('link[href="' + t + '"]').length ? (e = se('link[href="' + t + '"]'), ie.gui.skin.isLoaded || (ie.gui.skin.isLoaded = !0, ie.timeouts.skinLoad1 = setTimeout(function() {
                        delete ie.timeouts.skinLoad1, ie.slider.init()
                    }, 150))) : e = document.createStyleSheet ? (document.createStyleSheet(t), se('link[href="' + t + '"]')) : se('<link rel="stylesheet" href="' + t + '" type="text/css" />').appendTo(i), e.on("load." + z, function() {
                        ie.gui.skin.isLoaded || (ie.gui.skin.isLoaded = !0, ie.timeouts.skinLoad2 = setTimeout(function() {
                            delete ie.timeouts.skinLoad2, ie.slider.init()
                        }, 150))
                    }), se(window).on("load." + z, function() {
                        ie.gui.skin.isLoaded || (ie.gui.skin.isLoaded = !0, ie.timeouts.skinLoad3 = setTimeout(function() {
                            delete ie.timeouts.skinLoad3, ie.slider.init()
                        }, 150))
                    }), ie.timeouts.skinLoad4 = setTimeout(function() {
                        ie.gui.skin.isLoaded || (ie.gui.skin.isLoaded = !0, delete ie.timeouts.skinLoad4, ie.slider.init())
                    }, 1e3)
                }
            },
            shadow: {
                init: function() {
                    this.set(), this.resize()
                },
                set: function() {
                    this.$element = se('<div class="ls-gui-element ls-shadow"></div>').appendTo(_), "block" != this.$element.css("display") || this.$element.find("img").length || (this.show = function() {
                        ie.gui.shadow.$element.css({
                            display: "none",
                            visibility: "visible"
                        }).fadeIn(500, function() {
                            ie.gui.shadow.show = !1
                        })
                    }, this.image = se("<img>").attr("src", ie.o.skinsPath + ie.o.skin + "/shadow.png").appendTo(this.$element), this.btmMod = "number" == typeof parseInt(_.css("padding-bottom")) ? parseInt(_.css("padding-bottom")) : 0)
                },
                resize: function() {
                    this.image && (0 < this.image.height() ? 0 < this.btmMod ? this.$element.css({
                        height: this.image.height() / 2
                    }) : this.$element.css({
                        height: this.image.height(),
                        marginTop: -this.image.height() / 2
                    }) : ie.timeouts.resizeShadow = setTimeout(function() {
                        delete ie.timeouts.resizeShadow, ie.gui.shadow.resize()
                    }, 50))
                }
            },
            timers: {
                init: function() {
                    ie.o.showBarTimer && this.bar.create(), ie.o.showCircleTimer && this.circle.create();
                    var e = !1;
                    (e = ie.o.showSlideBarTimer ? se("<div>").insertAfter(_) : se('[data-slidebar-for="' + _.attr("id") + '"], [data-slidebar-for="' + z + '"]')).length && (e.addClass("ls-gui-element"), this.slidebar.create(e))
                },
                bar: {
                    create: function() {
                        this.$element = se("<div>").addClass("ls-gui-element ls-bar-timer").appendTo(_)
                    }
                },
                circle: {
                    create: function() {
                        this.$element = se("<div>").addClass("ls-gui-element ls-circle-timer").appendTo(_), this.$element.append(se('<div class="ls-ct-center"></div><div class="ls-ct-left"><div class="ls-ct-rotate"><div class="ls-ct-hider"><div class="ls-ct-half"></div></div></div></div><div class="ls-ct-right"><div class="ls-ct-rotate"><div class="ls-ct-hider"><div class="ls-ct-half"></div></div></div></div>')), this.$element.data("original", {
                            opacity: this.$element.css("opacity")
                        })
                    }
                },
                slidebar: {
                    $containerElement: [],
                    $element: [],
                    $progressBarElement: [],
                    $sliderContainerElement: [],
                    $sliderElement: [],
                    elementWidth: [],
                    containerElementWidth: [],
                    sliderContainerElementWidth: [],
                    state: {},
                    create: function(e) {
                        function i(e, t) {
                            (s = (e.pageX ? e.pageX : ie.device.touchX || 0) - o.$element[t].offset().left - o.sliderContainerElementWidth[t] / 2) < 0 && (s = 0), s > o.containerElementWidth[t] - o.sliderContainerElementWidth[t] && (s = "calc( 100% - " + ie.gui.timers.slidebar.sliderContainerElementWidth[t] + "px )"), o.$sliderContainerElement[t].css({
                                left: s
                            }), ie.transitions._slideTimeline && ie.transitions._slideTimeline.progress("string" == typeof s ? ie.transitions.layers.timeline.progress : s / (o.containerElementWidth[t] - o.sliderContainerElementWidth[t]) * ie.transitions.layers.timeline.progress)
                        }

                        function a(e) {
                            "dragging" == ie.gui.timers.slidebar.state && (ie.transitions._slideTimeline && ie.transitions.layers.timeline.state.finished && ie.transitions._slideTimeline.progress() !== ie.transitions.layers.timeline.progress && ie.functions.setStates(ie.transitions.layers.timeline, {
                                finished: !1
                            }), se(document).off("mousemove." + z), se("body").prop("unselectable", !1).removeClass("ls-unselectable"), ie.o.pauseLayers && !ie.slideshow.state.running || ie.slider.isPaused || !ie.transitions._slideTimeline || ie.o.playByScroll || (!0 === ie.transitions.layers.timeline.state.started ? ie.transitions.layers.timeline.resume() : ie.transitions.layers.timeline.play()), ie.gui.timers.slidebar.state = !1)
                        }
                        var s, r = se(document),
                            o = this;
                        se.each(e, function(t, e) {
                            o.$containerElement[t] = se(e).addClass("ls-slidebar-container " + z), o.$element[t] = se("<div>").addClass("ls-slidebar").appendTo(o.$containerElement[t]), o.$progressBarElement[t] = se("<div>").addClass("ls-progressbar").appendTo(o.$element[t]), o.$sliderContainerElement[t] = se("<div>").addClass("ls-slidebar-slider-container").appendTo(o.$containerElement[t]), o.$sliderElement[t] = se("<div>").addClass("ls-slidebar-slider").appendTo(o.$sliderContainerElement[t]), o.sliderContainerElementWidth[t] = o.$sliderContainerElement[t].width(), o.$sliderContainerElement[t].css({
                                marginTop: -o.$sliderElement[t].outerHeight() / 2
                            }), o.$containerElement[t].on("touchmove." + z, function(e) {
                                i(e, t)
                            }), o.$containerElement[t].on("touchend." + z, function(e) {
                                a()
                            }), o.$containerElement[t].on("mousedown." + z + " touchstart." + z, function(e) {
                                ie.transitions.layers.timeline.pause(0), se("body").prop("unselectable", !0).addClass("ls-unselectable"), se(document).on("mousemove." + z, function(e) {
                                    i(e, t)
                                }), i(e, t), ie.gui.timers.slidebar.state = "dragging"
                            }), r = r.add(o.$sliderElement[t])
                        }), se("body").on("mouseup." + z, function(e) {
                            a()
                        })
                    }
                }
            },
            loadingIndicator: {
                init: function() {
                    this.$element = se("<div>").css({
                        display: "none"
                    }).addClass("ls-gui-element ls-loading-container").appendTo(_), se("<div>").addClass("ls-loading-indicator").appendTo(this.$element)
                },
                show: function() {
                    this.$element.delay(400).fadeIn(300)
                },
                hide: function() {
                    this.$element.stop(!0, !0).fadeOut(300)
                }
            }
        }, ie.navigation = {
            direction: "next",
            init: function() {
                1 < ie.slides.count && (this.set.keyboard(), this.set.touch())
            },
            set: {
                keyboard: function() {
                    ie.o.keybNav && se("body").on("keydown." + z, function(e) {
                        ie.slider.isAnimating || ie.slider.isPreloading || (37 == e.which ? ie.navigation.prev() : 39 == e.which && ie.navigation.next())
                    })
                },
                touch: function() {
                    "ontouchstart" in window && ie.o.touchNav && (ie.slider.$innerWrapper.on("touchstart." + z, function(e) {
                        var t = e.touches ? e.touches : e.originalEvent.touches;
                        1 == t.length && (ie.device.touchStartX = ie.device.touchEndX = t[0].clientX)
                    }), ie.slider.$innerWrapper.on("touchmove." + z, function(e) {
                        var t = e.touches ? e.touches : e.originalEvent.touches;
                        1 == t.length && (ie.device.touchEndX = t[0].clientX), 45 < Math.abs(ie.device.touchStartX - ie.device.touchEndX) && e.preventDefault()
                    }), ie.slider.$innerWrapper.on("touchend." + z, function(e) {
                        45 < Math.abs(ie.device.touchStartX - ie.device.touchEndX) && (0 < ie.device.touchStartX - ie.device.touchEndX ? _.layerSlider("touchNext") : _.layerSlider("touchPrev"))
                    }))
                }
            },
            prev: function() {
                (!ie.slider.isPopup || ie.slider.isPopup && ie.slider.state.popupIsVisible) && (this.direction = "prev", this.forceDirection = "prev", ie.slideshow.set.prevNext("prev"))
            },
            next: function() {
                (!ie.slider.isPopup || ie.slider.isPopup && ie.slider.state.popupIsVisible) && (this.direction = "next", this.forceDirection = "next", ie.slideshow.set.prevNext("next"))
            },
            start: function() {
                ie.functions.setStates(ie.slideshow, {
                    running: !0,
                    paused: !1
                }), !0 === ie.slideshow.state.pausedByLastCycle && ie.functions.setStates(ie.slideshow, {
                    pausedByLastCycle: !1
                }), ie.gui.navigation.bottom.setStartStop("start"), ie.slideshow.state.pausedByHover || 1 !== ie.transitions._slideTimeline.timeScale() && ie.transitions.layers.timeline.resume(), ie.slideshow.start()
            },
            stop: function() {
                ie.gui.navigation.bottom.setStartStop("stop"), ie.o.pauseLayers && ie.transitions.layers.timeline.pause(), ie.slideshow.stop()
            }
        }, ie.preload = {
            init: function() {
                ie.slider.$hiddenWrapper.find(".ls-slide img").each(function() {
                    var e, t = se(this),
                        i = t[0],
                        a = {};
                    t.is(".ls-layer, .ls-bg") && (i.getAttribute("width") && (a.width = i.getAttribute("width")), i.getAttribute("height") && (a.height = i.getAttribute("height")), i.sizes && (a.sizes = i.sizes), ie.o.useSrcset && (t.data("srcset") || i.srcset) && (a.srcSet = t.data("srcset") || i.srcset, a.curSrc = i.currentSrc, e = a.srcSet.split(",").map(function(e) {
                        return parseInt(se.trim(e).split(" ")[1])
                    }), a.maxWidth = Math.max.apply(null, e)), t.removeAttr("width height sizes srcset"), se.isEmptyObject(a) || (t.data(ie.defaults.init.dataKey).attributes = a)), t.data("lazy-src") ? t.data("src", t.data("lazy-src")) : t.attr("data-lazy-src") ? t.data("src", t.attr("data-lazy-src")) : t.data("src") ? a.curSrc && t.data("src", a.curSrc) : t.data("src", a.curSrc ? a.curSrc : i.src), t.attr("src", "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
                })
            },
            imagesOfSlide: function(e, t) {
                var a, s, r;
                !0 !== ie.slides[e].wrapped ? (this.slideIndex = e, t ? (this.onCompleteCallback = t, ie.functions.setStates(ie.slider, {
                    preloadingImages: !0
                }), ie.gui.loadingIndicator.show()) : this.onCompleteCallback = !1, ie.slider.canShow && _.css({
                    visibility: "visible"
                }), this.preImages = [], a = this, ie.slider.$hiddenWrapper.find(".ls-slide:eq(" + (a.slideIndex - 1) + ") *").each(function() {
                    s = se(this), r = this;
                    var e, t, i = s.data(ie.defaults.init.dataKey);
                    s.is("img") ? (s.data("src") && s.attr("src", s.data("src")), i && i.attributes && i.attributes.srcSet && ie.o.useSrcset && (r.srcset = i.attributes.srcSet), e = r.src, (t = !!(i && i.attributes && i.attributes.curSrc) && i.attributes.curSrc) && e !== t && s.is(".ls-bg") && (e = t, ie.slides[a.slideIndex].data.$background.attr("src", e)), ie.preload.preImages.push([e, s])) : "none" !== s.css("background-image") && -1 !== s.css("background-image").indexOf("url") && ie.preload.preImages.push([s.css("background-image").match(/url\((.*)\)/)[1].replace(/"/gi, ""), s])
                }), ie.transitions.firstSlide && ie.o.globalBGImage && ie.preload.preImages.push([ie.o.globalBGImage, se()]), this.thumbnailsAreLoaded || this.thumbnails(), 0 === this.preImages.length ? this.onComplete() : this.start()) : ie.slider.shouldResize && t && (ie.resize.setLayers(ie.layers.get("next, bg")), ie.resize.layers(t))
            },
            thumbnails: function() {
                for (var e = ie.slider.thumbnails.filter(function(e, t, i) {
                        return i.indexOf(e) == t
                    }), t = e.length, i = 0; i < t; i++) {
                    (new Image).src = e[i]
                }
                this.thumbnailsAreLoaded = !0
            },
            start: function() {
                ie.debugMode && (ie.debug.add("group", "preload"), ie.debug.add("log", "preload.info", this.slideIndex)), this.preloadedImagesCount = 0;
                for (var e, t = this, i = function() {
                        ++t.preloadedImagesCount == t.preImages.length && (ie.debugMode && ie.debug.groupEnd(), t.onComplete())
                    }, a = function() {
                        ie.debugMode && (e = this.src.substring(this.src.lastIndexOf("/") + 1, this.src.length), ie.debug.add("log", "preload.success", e)), this.originalLayer.data("preloadedWidth", this.width), this.originalLayer.data("preloadedHeight", this.height), i()
                    }, s = function() {
                        ie.debugMode && (e = this.src.substring(this.src.lastIndexOf("/") + 1, this.src.length), ie.debug.add("warn", "preload.fail", e)), i()
                    }, r = 0; r < this.preImages.length; r++) {
                    var o = new Image;
                    o.addEventListener("error", s, !1), o.addEventListener("load", a, !1), o.src = this.preImages[r][0], o.originalLayer = this.preImages[r][1]
                }
            },
            onComplete: function() {
                var s = this;
                this.onCompleteCallback ? (ie.layers.wrap(this.slideIndex), function e() {
                    var t, i, a;
                    0 !== ie.slides[s.slideIndex].$layers.length ? ie.timeouts.waitForWrap = setTimeout(e, 100) : (delete ie.timeouts.waitForWrap, ie.functions.setStates(ie.transitions.layers.parallax, {
                        ready: !0
                    }), se(".ls-thumbnail-wrapper, .ls-nav-next, .ls-nav-prev, .ls-bottom-nav-wrapper").css({
                        visibility: "visible"
                    }), ie.slides[s.slideIndex].wrapped = !0, t = !(!window._layerSlider.globals.youTubeIsReady && ie.layers.get("next,in,youtube,bgvideo").length), i = !(!window._layerSlider.globals.vimeoIsReady && ie.layers.get("next,in,vimeo,bgvideo").length), a = function() {
                        ie.gui.loadingIndicator.hide(), ie.slider.shouldResize ? (ie.resize.setLayers(ie.layers.get("next, bg")), ie.resize.layers(s.onCompleteCallback)) : s.onCompleteCallback()
                    }, t && i ? a() : ie.intervals.waitForJSApisLoaded = setInterval(function() {
                        (t || window._layerSlider.globals.youTubeIsReady) && (i || window._layerSlider.globals.vimeoIsReady) && (clearInterval(ie.intervals.waitForJSApisLoaded), delete ie.intervals.waitForJSApisLoaded, a())
                    }, 50))
                }()) : ie.layers.wrap(this.slideIndex, !0), ie.functions.setStates(ie.slider, {
                    preloadingImages: !1
                })
            }
        }, ie.resize = {
            setLayers: function(e) {
                this.$responsiveLayers = e.add(ie.layers.get("active")), ie.slides.next.data.$backgroundVideo.length && (this.$responsiveLayers = this.$responsiveLayers.add(ie.slides.next.data.$backgroundVideo))
            },
            all: function() {
                if (!document.body.contains(W)) return !1;
                ie.api.hasEvent("sliderWillResize") && _.triggerHandler("sliderWillResize", ie.api.eventData()), this.slider(), this.navigation(), this.layers(), this.yourLogo(), this.shadow(), this.timers(), ie.transitions.layers.timeline.shouldRestart && ie.o.allowRestartOnResize && (ie.functions.resetSlideTimelines(), ie.transitions.layers.timeline.create(!0)), ie.api.hasEvent("sliderDidResize") && _.triggerHandler("sliderDidResize", ie.api.eventData())
            },
            viewport: function() {
                se(window).scrollTop(Math.round(ie.slider.offsetTop) - (ie.device.viewportHeight - ie.slider.height) / 2)
            },
            slider: function() {
                if (!document.body.contains(W)) return !1;
                var e, t, i, a, s = ie.slider.$parentWithNumericWidthValue && 0 < ie.slider.$parentWithNumericWidthValue.width() ? ie.slider.$parentWithNumericWidthValue : ie.functions.getSliderClosestParentElementWidthNumericValueOfProperty("width"),
                    r = ie.slider.initial,
                    o = ie.slider.$parentWithNumericWidthValuePercent ? s.width() / 100 * ie.slider.$parentWithNumericWidthValuePercent : s.width(),
                    n = r.type,
                    l = 0 !== r.maxWidth ? r.maxWidth : o,
                    d = "auto" === r.marginLeft ? 0 : r.marginLeft,
                    u = "auto" === r.marginRight ? 0 : r.marginRight;
                switch (ie.slider.state.inFullscreen ? _[0].style.maxWidth = "" : 0 !== r.maxWidth && (_[0].style.maxWidth = r.maxWidth + "px"), -1 !== l.indexOf("%") && (l = o / 100 * parseInt(l)), l < (o -= d + u) && 0 <= l && (o = l), ie.o.fitScreenWidth && ("fullwidth" === n || "fullsize" === n && "fitheight" !== ie.o.fullSizeMode && "fitwidth" !== ie.o.fullSizeMode) && (t = s.offset().left, i = parseInt(s.css("padding-left")) || 0, a = parseInt(s.css("border-left-width")) || 0, _[0].style.maxWidth = "none", _[0].style.marginLeft = -(t + i + a) + "px", o = ie.device.viewportWidth || se(window).width()), o -= r.skinWidth, ie.slider.state.inFullscreen && (o = ie.device.width), n) {
                    case "responsive":
                        e = (ie.slider.state.inFullscreen ? (ie.device.ratio > r.ratio ? this.ratio = ie.device.height / r.height : this.ratio = ie.device.width / r.width, o = Math.round(r.width * this.ratio)) : this.ratio = o / r.width, Math.round(r.height * this.ratio));
                        break;
                    case "fullwidth":
                        e = o < ie.o.responsiveUnder ? (this.ratio = o / ie.o.responsiveUnder, Math.round(r.height * this.ratio)) : ie.slider.state.inFullscreen ? ie.device.ratio > r.layersWidth / r.height ? (this.ratio = ie.device.height / r.height, ie.device.height) : (this.ratio = ie.device.width / r.layersWidth, r.height * this.ratio) : (this.ratio = 1, r.height);
                        break;
                    case "fullsize":
                        switch (ie.o.fullSizeMode.toLowerCase()) {
                            case "normal":
                                e = ie.device.viewportHeight - r.skinHeight;
                                break;
                            case "hero":
                                e = ie.device.viewportHeight - r.skinHeight, ie.slider.state.inFullscreen || (e -= ie.slider.heroTop ? ie.slider.heroTop : ie.slider.offsetTop);
                                break;
                            case "fitheight":
                                o = s.width() - r.skinWidth, e = s.height() - r.skinHeight;
                                break;
                            case "fitwidth":
                                o = s.width() - r.skinWidth, e = ie.device.viewportHeight - r.skinHeight
                        }
                        o / e < r.ratio ? this.ratio = o / r.layersWidth : this.ratio = e / r.layersHeight;
                        break;
                    case "fixed":
                    case "fixedsize":
                        this.ratio = 1, o = r.width, e = r.height, ie.o.maxRatio = 1, W.style.maxWidth = "none"
                }
                this.ratio = ie.o.maxRatio && 0 < ie.o.maxRatio && this.ratio > ie.o.maxRatio ? ie.o.maxRatio : this.ratio, W.style.width = o + "px", W.style.height = e + "px", ie.slider.width = o, ie.slider.height = e;
                var p = _.offset();
                ie.slider.offsetX = p.left, ie.slider.offsetY = p.top, ie.device.isMobile ? ie.device.viewportWidth < 1025 && 767 < ie.device.viewportWidth ? _.removeClass("ls-device-is-phone").addClass("ls-device-is-tablet") : ie.device.viewportWidth < 768 && _.removeClass("ls-device-is-tablet").addClass("ls-device-is-phone") : _.removeClass("ls-device-is-phone ls-device-is-tablet").addClass("ls-device-is-desktop")
            },
            borderRadius: function(e) {
                for (var t = ("" + e).split(" "), i = "", a = ie.o.maxRatio && 0 < ie.o.maxRatio && this.ratio > ie.o.maxRatio ? ie.o.maxRatio : this.ratio, s = 0, r = t.length; s < r; s++) - 1 === t[s].indexOf("%") ? i += Math.ceil(parseInt(t[s]) * a) + "px " : i += t[s] + " ";
                return se.trim(i)
            },
            layers: function(e) {
                if (this.$responsiveLayers) {
                    ie.debugMode && ie.debug.add("group", "resize");
                    for (var t = this.ratio, i = this.$responsiveLayers, a = ie.slider.initial, s = ie.slider.width, r = ie.slider.height, o = s / r, n = [], l = [], d = [], u = [], p = 0, c = 0, h = "responsive" === a.type && -1 !== ie.o.maxRatio ? a.width : a.layersWidth, m = "responsive" === a.type && -1 !== ie.o.maxRatio ? a.height : a.layersHeight, c = "fullsize" === a.type || "fullwidth" === a.type || "responsive" === a.type ? (p = 0 < h ? (s - h * t) / 2 : 0, 0 < m ? (r - m * t) / 2 : 0) : (p = p < 0 ? 0 : p, c < 0 ? 0 : c), f = 0, g = i.length; f < g; f++) {
                        var v, y = se(i[f]),
                            b = (i[f], y.data(ie.defaults.init.dataKey)),
                            S = b.original,
                            w = "fixed" === b.settings.position,
                            x = w ? 0 : p,
                            T = w ? 0 : c,
                            C = {
                                width: w && 0 !== S.percentWidth ? s / 100 * S.percentWidth : S.width * t,
                                height: w && 0 !== S.percentHeight ? r / 100 * S.percentHeight : S.height * t,
                                paddingLeft: S.paddingLeft * t,
                                paddingTop: S.paddingTop * t,
                                paddingRight: S.paddingRight * t,
                                paddingBottom: S.paddingBottom * t,
                                borderLeftWidth: Math.ceil(S.borderLeftWidth * t),
                                borderTopWidth: Math.ceil(S.borderTopWidth * t),
                                borderRightWidth: Math.ceil(S.borderRightWidth * t),
                                borderBottomWidth: Math.ceil(S.borderBottomWidth * t),
                                borderRadius: this.borderRadius(S.borderRadius)
                            },
                            k = {
                                marginLeft: S.marginLeft * t,
                                marginTop: S.marginTop * t
                            },
                            I = {},
                            O = {
                                borderRadius: C.borderRadius
                            };
                        if (w && (S.percentHeight || S.percentWidth) && b.is.imageLayer && (S.percentHeight && !S.percentWidth && (C.width = S.width * (C.height / S.height)), S.percentWidth && !S.percentHeight && (C.height = S.height * (C.width / S.width))), ("number" == typeof S.width && S.width < 0 || "auto" == S.width) && ie.debugMode && ie.debug.add("warn", "resize.width", [f + 1, S.width]), ("number" == typeof S.height && S.height < 0 || "auto" == S.height) && ie.debugMode && ie.debug.add("warn", "resize.height", [f + 1, S.height]), b.is.textLayer && (C.fontSize = S.fontSize * t, ie.device.isMobile && C.fontSize < b.styleSettings.minmobilefontsize ? C.fontSize = b.styleSettings.minmobilefontsize : C.fontSize < b.styleSettings.minfontsize && (C.fontSize = b.styleSettings.minfontsize), v = C.fontSize / S.fontSize, C.fontSize += "px", "normal" !== S.lineHeight && (C.lineHeight = parseFloat(S.lineHeight) * v + "px"), "normal" !== S.letterSpacing && (C.letterSpacing = parseFloat(S.letterSpacing) * v + "px")), b.is.slideBackground || b.is.backgroundVideo)
                            if (b.is.slideBackground) {
                                var L = ie.slides[b.is.onSlide].data.backgroundSize;
                                switch ((void 0 !== L && "inherit" !== L ? L : ie.o.slideBGSize).replace("100% 100%", "stretch")) {
                                    case "auto":
                                        break;
                                    case "cover":
                                        S.ratio < o ? (C.width = s, C.height = C.width / S.ratio) : (C.height = r, C.width = C.height * S.ratio);
                                        break;
                                    case "contain":
                                        S.ratio < o ? (C.height = r, C.width = C.height * S.ratio) : (C.width = s, C.height = C.width / S.ratio);
                                        break;
                                    case "stretch":
                                        C.width = s, C.height = r
                                }
                                C.width = Math.round(C.width), C.height = Math.round(C.height);
                                var P, $ = ie.slides[b.is.onSlide].data.backgroundPosition;
                                switch ((P = void 0 !== $ ? $.split(" ") : ie.o.slideBGPosition.split(" "))[0]) {
                                    case "left":
                                        C.x = 0;
                                        break;
                                    case "center":
                                        C.x = (ie.slider.width - C.width) / 2;
                                        break;
                                    case "right":
                                        C.x = ie.slider.width - C.width;
                                        break;
                                    default:
                                        -1 !== P[0].indexOf("%") ? C.x = (ie.slider.width - C.width) / 100 * parseInt(P[0]) : C.x = parseInt(P[0])
                                }
                                if (void 0 !== P[1]) switch (P[1]) {
                                    case "top":
                                        C.y = 0;
                                        break;
                                    case "center":
                                        C.y = (ie.slider.height - C.height) / 2;
                                        break;
                                    case "bottom":
                                        C.y = ie.slider.height - C.height;
                                        break;
                                    default:
                                        -1 !== P[1].indexOf("%") ? C.y = (ie.slider.height - C.height) / 100 * parseInt(P[1]) : C.y = parseInt(P[1])
                                }
                                C.transform = "translateX(" + C.x + "px) translateY(" + C.y + "px)", C["-ms-transform"] = "translateX(" + C.x + "px) translateY(" + C.y + "px)", C["-webkit-transform"] = "translateX(" + C.x + "px) translateY(" + C.y + "px)"
                            } else b.is.backgroundVideo && (S.ratio < o ? (C.width = s, C.height = C.width / S.ratio) : (C.height = r, C.width = C.height * S.ratio), C.x = (ie.slider.width - C.width) / 2, C.y = (ie.slider.height - C.height) / 2, C.width = Math.round(C.width), C.height = Math.round(C.height), C.transform = "translateX(" + C.x + "px) translateY(" + C.y + "px)", C["-ms-transform"] = "translateX(" + C.x + "px) translateY(" + C.y + "px)", C["-webkit-transform"] = "translateX(" + C.x + "px) translateY(" + C.y + "px)");
                        else {
                            if (b.mediaSettings.fullsize) switch (b.mediaSettings.fillmode) {
                                default:
                                    case "cover":
                                    S.ratio < o ? (C.width = s, C.height = C.width / S.ratio) : (C.height = r, C.width = C.height * S.ratio);
                                break;
                                case "contain":
                                        S.ratio > o ? (C.width = s, C.height = C.width / S.ratio) : (C.height = r, C.width = C.height * S.ratio)
                            }
                            C.outerWidth = C.width + C.paddingLeft + C.paddingRight + C.borderLeftWidth + C.borderRightWidth, C.outerHeight = C.height + C.paddingTop + C.paddingBottom + C.borderTopWidth + C.borderBottomWidth, k.width = I.width = C.outerWidth, k.height = I.height = C.outerHeight, -1 != S.left.indexOf("%") ? "100%" === S.left ? C.left = 0 === x ? ie.slider.width / 100 * parseFloat(S.left) - C.outerWidth : x + h * t / 100 * parseFloat(S.left) - C.outerWidth : "0%" === S.left ? C.left = 0 === x ? 0 : x : C.left = 0 === x ? ie.slider.width / 100 * parseFloat(S.left) - C.outerWidth / 2 : x + h * t / 100 * parseFloat(S.left) - C.outerWidth / 2 : C.left = x + parseFloat(S.left) * t, k.left = C.left, -1 != S.top.indexOf("%") ? "100%" === S.top ? C.top = 0 === T ? ie.slider.height / 100 * parseFloat(S.top) - C.outerHeight : T + m * t / 100 * parseFloat(S.top) - C.outerHeight : "0%" === S.top ? C.top = 0 === T ? 0 : T + 0 : C.top = 0 === T ? ie.slider.height / 100 * parseFloat(S.top) - C.outerHeight / 2 : T + m * t / 100 * parseFloat(S.top) - C.outerHeight / 2 : C.top = T + parseFloat(S.top) * t, k.top = C.top
                        }
                        b.responsive = C, n[f] = C, b.is.slideBackground || b.is.backgroundVideo || (b.settings.wrapperData.responsive = k, l[f] = k, d[f] = I, u[f] = O)
                    }
                    for (var B = 0, M = n.length; B < M; B++) {
                        var W = se(i[B]),
                            _ = W.data(ie.defaults.init.dataKey);
                        W.css(n[B]), _.is.slideBackground || _.is.backgroundVideo ? (_.is.slideBackground || _.is.backgroundVideo) && (_.elements.$bgOuterWrapper.css({
                            width: ie.slider.width,
                            height: ie.slider.height
                        }), _.elements.$outerWrapper.css({
                            width: ie.slider.width,
                            height: ie.slider.height
                        })) : (W.find(".split-item").css(u[B]), this.wrappers(W, _, l[B], d[B]))
                    }
                    void 0 !== e && e(), ie.debugMode && ie.debug.groupEnd("resize")
                }
            },
            wrappers: function(e, t, i, a) {
                i && t.elements.$wrapper.css(i), a && t.loop.enabled && t.elements.$loopWrapper.css(a), ae.TweenMax.set(t.elements.$wrapper[0], {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.layer * ie.resize.ratio
                    }
                }), t.loop.enabled && ae.TweenMax.set(t.elements.$loopWrapper[0], {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.loop * ie.resize.ratio
                    }
                }), t.hover.enabled && ae.TweenMax.set(e[0], {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.hover * ie.resize.ratio
                    }
                }), t.textIn.nodes && ae.TweenMax.set(t.textIn.nodes, {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.text * ie.resize.ratio
                    }
                }), t.textOut.nodes && ae.TweenMax.set(t.textOut.nodes, {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.text * ie.resize.ratio
                    }
                }), t.parallax.enabled && ae.TweenMax.set(t.elements.$parallaxWrapper[0], {
                    autoCSS: !1,
                    css: {
                        transformPerspective: t.transformPerspective.parallax * ie.resize.ratio
                    }
                })
            },
            transformProperties: function(e, t, i, a) {
                if ("object" == typeof i.x) {
                    for (var s = [], r = 0; r < i.x.length; r++) "string" == typeof i.x[r] ? s[r] = this.getXY(e, i.x[r], "Width") : s[r] = i.x[r] * ie.resize.ratio;
                    t.cycle.x = s
                } else "string" == typeof i.x ? t.x = this.getXY(e, i.x, "Width") : void 0 !== i.x && (t.x = i.x * ie.resize.ratio);
                if ("object" == typeof i.y) {
                    for (var o = [], n = 0; n < i.y.length; n++) "string" == typeof i.y[n] ? o[n] = this.getXY(e, i.y[n], "Height") : o[n] = i.y[n] * ie.resize.ratio;
                    t.cycle.y = o
                } else "string" == typeof i.y ? t.y = this.getXY(e, i.y, "Height") : void 0 !== i.y && (t.y = i.y * ie.resize.ratio);
                if (a && (t = a), "object" == typeof i.transformOrigin) {
                    for (var l = [], d = 0; d < i.transformOrigin.length; d++) l[d] = ie.functions.convert.transformOrigin(i.transformOrigin[d], e);
                    t.cycle.transformOrigin = l
                } else "string" == typeof i.transformOrigin && (t.transformOrigin = ie.functions.convert.transformOrigin(i.transformOrigin, e))
            },
            styleProperties: function(e, t) {
                void 0 !== t.width && (se.isNumeric(t.width) ? e.width = parseInt(t.width) * ie.resize.ratio : "string" == typeof t.width && -1 !== t.width.indexOf("%") && (e.width = ie.slider.width / 100 * parseInt(t.width))), void 0 !== t.height && (se.isNumeric(t.height) ? e.height = parseInt(t.height) * ie.resize.ratio : "string" == typeof t.height && -1 !== t.height.indexOf("%") && (e.height = ie.slider.height / 100 * parseInt(t.height))), t.borderRadius && (e.borderRadius = ie.resize.borderRadius(t.borderRadius))
            },
            clip: function(e, t, i) {
                t = se.trim(t.replace("rect(", "").replace(")", ""));
                for (var a, s = e.data(ie.defaults.init.dataKey).responsive, r = Math.ceil(s.outerWidth), o = Math.ceil(s.outerHeight), n = -1 === t.indexOf(",") ? t.split(" ") : t.split(","), l = "", d = 0; d < n.length; d++)
                    if (-1 !== n[d].indexOf("%")) switch (d) {
                        case 0:
                            l += parseInt(o / 100 * parseInt(n[d]) * 100) / 100 + "px ";
                            break;
                        case 1:
                            l += i ? parseInt(100 * (r - r / 100 * parseInt(n[d]))) / 100 + "px " : parseInt(r / 100 * parseInt(n[d]) * 100) / 100 + "px ";
                            break;
                        case 2:
                            l += i ? parseInt(100 * (o - o / 100 * parseInt(n[d]))) / 100 + "px " : parseInt(o / 100 * parseInt(n[d]) * 100) / 100 + "px ";
                            break;
                        case 3:
                            l += parseInt(r / 100 * parseInt(n[d]) * 100) / 100 + "px"
                    } else switch (a = parseInt(n[d]) * ie.resize.ratio, d) {
                        case 0:
                            l += a + "px ";
                            break;
                        case 1:
                            l += i ? r - a + "px " : a + "px ";
                            break;
                        case 2:
                            l += i ? o - a + "px " : a + "px ";
                            break;
                        case 3:
                            l += a + "px"
                    }
                    return "rect(" + l + ")"
            },
            getXY: function(e, t, i) {
                var a = 0,
                    s = e.data(ie.defaults.init.dataKey),
                    r = s.original,
                    o = s.responsive,
                    n = s.settings.wrapperData.responsive;
                if (r && o && n) switch (t) {
                    case "left":
                        a = -1 == r.left.indexOf("%") || "100%" === r.left ? -o.left - o.outerWidth - n.marginLeft : -parseInt(r.left) / 100 * ie.slider.width - o.outerWidth / 2 - n.marginLeft;
                        break;
                    case "right":
                        a = -1 == r.left.indexOf("%") || "100%" === r.left ? ie.slider.width - o.left - n.marginLeft : (1 - parseInt(r.left) / 100) * ie.slider.width + o.outerWidth / 2 - n.marginLeft;
                        break;
                    case "top":
                        a = -1 == r.top.indexOf("%") || "100%" === r.top ? -o.top - o.outerHeight - n.marginTop : -parseInt(r.top) / 100 * ie.slider.height - o.outerHeight / 2 - n.marginTop;
                        break;
                    case "bottom":
                        a = -1 == r.top.indexOf("%") || "100%" === r.top ? ie.slider.height - o.top - n.marginTop : (1 - parseInt(r.top) / 100) * ie.slider.height + o.outerHeight / 2 - n.marginTop;
                        break;
                    case "width":
                        a = o.outerWidth;
                        break;
                    case "-width":
                        a = -o.outerWidth;
                        break;
                    case "height":
                        a = o.outerHeight;
                        break;
                    case "-height":
                        a = -o.outerHeight;
                        break;
                    default:
                        a = -1 !== t.indexOf("%") ? o["outer" + i] / 100 * parseInt(t) : -1 !== t.indexOf("sw") ? parseInt(t.split("sw")[0]) / 100 * ie.slider.width : -1 !== t.indexOf("sh") ? parseInt(t.split("sh")[0]) / 100 * ie.slider.height : -1 !== t.indexOf("lw") ? o.outerWidth / 100 * parseInt(t.split("lw")[0]) : -1 !== t.indexOf("lh") ? o.outerHeight / 100 * parseInt(t.split("lh")[0]) : parseInt(t) * ie.resize.ratio
                }
                return a
            },
            navigation: function() {
                "always" == ie.o.thumbnailNavigation && ie.gui.navigation.bottom.thumbnails.resize()
            },
            shadow: function() {
                ie.gui.shadow.show && ie.gui.shadow.show(), ie.gui.shadow.$element && ie.gui.shadow.resize()
            },
            yourLogo: function() {
                ie.yourLogo.$element && ie.yourLogo.resize()
            },
            timers: function() {
                if (0 < ie.gui.timers.slidebar.$containerElement.length)
                    for (var e = 0, t = ie.gui.timers.slidebar.$containerElement.length; e < t; e++) ie.gui.timers.slidebar.containerElementWidth[e] = ie.gui.timers.slidebar.$containerElement[e].width(), ie.gui.timers.slidebar.elementWidth[e] = ie.gui.timers.slidebar.$element[e].width()
            }
        }, ie.transitions = {
            firstSlide: !0,
            start: function() {
                return !!document.body.contains(W) && (ie.slider.isPopup && ie.slider.state.popupIsWaitingForDelay ? !(ie.slider.state.waitingForPopupTimer = !0) : (ie.device.scroll.directionAtSlideTransitionStart = ie.device.scroll.direction, "always" == ie.o.thumbnailNavigation && (ie.gui.navigation.bottom.thumbnails.change(), "ontouchstart" in window || ie.gui.navigation.bottom.thumbnails.scroll()), this.layers.out.forced(), void this.slide.init()))
            },
            slide: {
                $wrapper: se(),
                init: function() {
                    var e, t, i, a, s, r;
                    ie.functions.setStates(ie.slider, {
                        animatingSlides: !0
                    }), ie.transitions.layers.parallax.reset(), ie.slider.$layersWrapper.children('.ls-parallax[data-ls-parallax="active"]').each(function() {
                        se(this).find(".ls-layer").data(ie.defaults.init.dataKey).settings.slideOut === ie.slides.current.index && se(this).attr("data-ls-parallax", "disbaled")
                    }), ie.transitions.curSlide = ie.slides.current, ie.transitions.nextSlide = ie.slides.next, ie.transitions._slideTransition = new ae.TimelineMax({
                        paused: !0,
                        onComplete: function() {
                            ie.transitions.slide.onComplete()
                        }
                    }), ie.transitions.firstSlide ? (void 0 !== ie.transitions.nextSlide.data.$background && (a = (i = ie.transitions.nextSlide.data.$background.data(ie.defaults.init.dataKey)).kenBurns.zoom ? i.kenBurns.from.scale : 1, s = i.kenBurns.zoom ? i.kenBurns.from.rotation : 0, r = ie.transitions.nextSlide.filter.from || "none", ie.transitions._slideTransition.set(ie.transitions.nextSlide.data.$background[0], {
                        "-webkit-filter": r,
                        filter: r
                    }, 0), ie.transitions._slideTransition.fromTo(ie.transitions.nextSlide.data.$background.closest(".ls-bg-wrap")[0], ie.o.sliderFadeInDuration, {
                        autoCSS: !1,
                        css: {
                            scale: a,
                            rotation: s,
                            opacity: 0,
                            display: "block"
                        }
                    }, {
                        autoCSS: !1,
                        css: {
                            opacity: 1
                        }
                    }, 0)), this.start(!0)) : "undefined" == typeof layerSliderTransitions && "undefined" == typeof layerSliderCustomTransitions ? (this.start(!0), ie.debugMode && ie.debug.add("warn", "slideTransition.noSlideTransition", ie.transitions.nextSlide.index)) : void 0 === ie.transitions.curSlide.data.$background && void 0 === ie.transitions.nextSlide.data.$background && "transparent" == ie.transitions.curSlide.data.backgroundColor && "transparent" == ie.transitions.nextSlide.data.backgroundColor ? this.start(!0) : ("x" === ie.o.clipSlideTransition ? ie.device.$overflowWrapper.addClass("ls-overflowx-hidden") : "y" === ie.o.clipSlideTransition ? ie.device.$overflowWrapper.addClass("ls-overflowy-hidden") : !0 === ie.o.clipSlideTransition && ie.device.$overflowWrapper.addClass("ls-overflow-hidden"), void 0 !== ie.transitions.curSlide.data.$background && (e = ie.transitions.curSlide.data.$background.closest(".ls-bg-wrap")[0]._gsTransform, (t = ie.transitions.curSlide.data.$background.data(ie.defaults.init.dataKey)).responsive.filter = ie.transitions.curSlide.data.$background[0].style.filter, t.responsive.kbRotation = void 0 !== e ? " rotate(" + e.rotation + "deg)" : " rotate(0deg)", t.responsive.kbScale = void 0 !== e ? " scale(" + e.scaleX + ")" : " scale(1)"), ie.transitions.slide.$wrapper = se("<div>").addClass("ls-slide-transition-wrapper").css({
                        width: ie.slider.width,
                        height: ie.slider.height
                    }), this.select.slideTransitionType())
                },
                select: {
                    slideTransitionType: function() {
                        ie.transitions.slide.normal.select.transitionType()
                    }
                },
                start: function(e) {
                    var t, i, a = !(!ie.slides.current.index || !ie.slides.current.data.$backgroundVideo.length),
                        s = !(!ie.slides.next.index || !ie.slides.next.data.$backgroundVideo.length);
                    !ie.slideshow.firstStart && ie.api.hasEvent("slideChangeDidStart") && _.triggerHandler("slideChangeDidStart", ie.api.eventData()), e || (void 0 !== ie.transitions.nextSlide.data.transitionDuration && ie.transitions._slideTransition.duration(ie.transitions.nextSlide.data.transitionDuration), ie.debugMode && ie.debug.options.transitionDuration && ie.transitions._slideTransition.duration(ie.debug.options.transitionDuration), .25 < ie.transitions.layers.timeline.timeScaleModifier && (i = (i = ie.transitions._slideTransition.duration() / (.75 + ie.transitions.layers.timeline.timeScaleModifier)) < .5 ? .5 : i, ie.transitions._slideTransition.duration(i)));
                    var r, o = ie.transitions._slideTransition.duration() / ie.transitions._slideTransition.timeScale(),
                        n = o,
                        l = ie.transitions.nextSlide.data.timeShift;
                    0 < l ? l = 0 : l < 0 && Math.abs(l) > o && (l = -o), ie.transitions.nextSlide.data.calculatedTimeShift = l, r = ie.transitions.firstSlide ? ie.o.sliderFadeInDuration + .01 : (n + l) * ie.transitions._slideTransition.timeScale(), (a || s) && ie.transitions.media.changeBackgroundVideo(ie.transitions.firstSlide, a && s), ie.transitions._slideTransition.call(function() {
                        !ie.slideshow.firstStart && ie.api.hasEvent("slideChangeWillComplete") && _.triggerHandler("slideChangeWillComplete", ie.api.eventData()), ie.slideshow.should.change || ie.transitions.layers.timeline.prepare(), ie.media.functions.stop(!0), ie.slides.set.slideIndexes(), ie.o.hashChange && (document.location.hash = ie.slides[ie.slides.current.index].data.deeplink || "_no-deeplink-found_"), ie.slideshow.start(), !ie.transitions.firstSlide && ie.slides.prev.index && ie.slides.prev.data.$backgroundVideo.length && !ie.slides.prev.data.$backgroundVideo.data(ie.defaults.init.dataKey).mediaProperties.willBePaused && (ie.slides.prev.data.$backgroundVideo.trigger("stopBackgroundVideo"), ie.slides.prev.data.$backgroundVideo.data(ie.defaults.init.dataKey).elements.$bgWrapper.css({
                            display: "none"
                        })), ie.slideshow.should.change || ie.slides.next.data.$backgroundVideo.length && ie.slides.next.data.$backgroundVideo.data(ie.defaults.init.dataKey).mediaProperties && !ie.slides.next.data.$backgroundVideo.data(ie.defaults.init.dataKey).mediaProperties.isPreloaded && (ie.slides.next.data.$backgroundVideo.trigger("preloadBackgroundVideo"), ie.slides.next.data.$backgroundVideo.data(ie.defaults.init.dataKey).mediaProperties.isPreloaded = !0), ie.transitions.firstSlide = !1
                    }, [], this, r), ie.transitions._slideTransition.play(), ie.slideshow.forceFastChange && ie.transitions._slideTransition.progress(1), void 0 !== ie.transitions.curSlide.data && void 0 !== ie.transitions.curSlide.data.$background && (t = ie.transitions.curSlide.data.$background.data(ie.defaults.init.dataKey), ie.timeouts.applyBG = setTimeout(function() {
                        delete ie.timeouts.applyBG, ie.transitions.curSlide.data.$background.closest(".ls-bg-wrap").hide(), t.kenBurns.zoom && ae.TweenMax.set(ie.transitions.curSlide.data.$background[0], {
                            autoCSS: !1,
                            css: t.kenBurns.from
                        })
                    }, 5))
                },
                onComplete: function() {
                    var e;
                    void 0 !== ie.transitions.nextSlide.data.$background && ie.transitions.nextSlide.data.$background.closest(".ls-bg-wrap").show(), "transparent" !== ie.transitions.nextSlide.data.backgroundColor ? ie.slider.$innerWrapper.css("background-color", ie.transitions.nextSlide.data.backgroundColor) : ie.slider.$innerWrapper.css("background-color", ie.o.globalBGColor), ie.o.leaveOverflow || ie.device.$overflowWrapper.removeClass("ls-overflowx-hidden ls-overflowy-hidden ls-overflow-hidden"), this.$wrapper && (this.$wrapper.html("").remove(), this.$wrapper = !1), ie.gui.navigation.bottom.bullets.set.active(), 0 < ie.o.cycles && (ie.slideshow.hasOwnProperty("cycleSlideIndex") ? ie.slideshow.cycles.check(ie.transitions.nextSlide.index) && (ie.navigation.stop(), ie.functions.setStates(ie.slideshow, {
                        pausedByLastCycle: !0
                    }), ie.o.forceCycles && (ie.slideshow.curCycle = 1)) : ie.slideshow.cycles.set()), ie.functions.setStates(ie.slider, {
                        animatingSlides: !1,
                        changingSlides: !1
                    }), !ie.slideshow.firstStart && ie.api.hasEvent("slideChangeDidComplete") && _.triggerHandler("slideChangeDidComplete", ie.api.eventData()), ie.slideshow.firstStart = !1, ie.slideshow.forceFastChange = !1, ie.slideshow.forceFastChangeCallback && (ie.slideshow.forceFastChangeCallback(), ie.slideshow.forceFastChangeCallback = !1), !1 !== ie.slideshow.should.change && ie.navigation.forceDirection ? (void 0 !== ie.transitions.curSlide.data && void 0 !== ie.transitions.curSlide.data.$background && (e = ie.transitions.curSlide.data.$background.data(ie.defaults.init.dataKey), ie.transitions.curSlide.data.$background.closest(".ls-bg-wrap").hide(), e.kenBurns.zoom && ae.TweenMax.set(ie.transitions.curSlide.data.$background[0], {
                        autoCSS: !1,
                        css: e.kenBurns.from
                    })), ie.slideshow.changeTo(ie.slideshow.get.slideInSequence(ie.navigation.forceDirection), !0)) : ie.preload.imagesOfSlide(ie.slides.next.index)
                },
                normal: {
                    select: {
                        transitionType: function() {
                            var e, t, i;
                            ie.o.slideTransition ? ie.transitions.slide.normal.setTransition(ie.o.slideTransition.type, ie.o.slideTransition.obj) : (i = !!ie.transitions.nextSlide.data.transition2d && ie.transitions.nextSlide.data.transition2d.toString().split(","), ie.device.touchPrev && ie.o.slideOnSwipe ? (ie.device.touchPrev = !1, this.transition("2d", "1")) : ie.device.touchNext && ie.o.slideOnSwipe ? (ie.device.touchNext = !1, this.transition("2d", "1")) : ie.slides.next.data.$background || i && (!i || -1 != i.indexOf("1") || -1 != i.indexOf("2") || -1 != i.indexOf("3") || -1 != i.indexOf("4")) ? ie.browser.supports3D() && (ie.transitions.nextSlide.data.transition3d || ie.transitions.nextSlide.data.customtransition3d) ? ie.transitions.nextSlide.data.transition3d && ie.transitions.nextSlide.data.customtransition3d ? (e = Math.floor(2 * Math.random()), t = [
                                ["3d", ie.transitions.nextSlide.data.transition3d],
                                ["custom3d", ie.transitions.nextSlide.data.customtransition3d]
                            ], this.transition(t[e][0], t[e][1])) : ie.transitions.nextSlide.data.transition3d ? this.transition("3d", ie.transitions.nextSlide.data.transition3d) : this.transition("custom3d", ie.transitions.nextSlide.data.customtransition3d) : ie.transitions.nextSlide.data.transition2d && ie.transitions.nextSlide.data.customtransition2d ? (e = Math.floor(2 * Math.random()), t = [
                                ["2d", ie.transitions.nextSlide.data.transition2d],
                                ["custom2d", ie.transitions.nextSlide.data.customtransition2d]
                            ], this.transition(t[e][0], t[e][1])) : ie.transitions.nextSlide.data.transition2d ? this.transition("2d", ie.transitions.nextSlide.data.transition2d) : ie.transitions.nextSlide.data.customtransition2d ? this.transition("custom2d", ie.transitions.nextSlide.data.customtransition2d) : this.transition("2d", "1") : this.transition("2d", "5"))
                        },
                        transition: function(e, t) {
                            ie.debugMode && ie.debug.add("group", "slideTransition.info"), t += "";
                            var i, a, s, r = -1 == e.indexOf("custom") ? ie.t : ie.ct,
                                o = "3d"; - 1 != e.indexOf("2d") && (o = "2d"), s = -1 != t.indexOf("last") ? r["t" + o].length - 1 : -1 != t.indexOf("all") ? Math.floor(Math.random() * ie.functions.countProp(r["t" + o])) : (a = (i = t.split(",")).length, parseInt(i[Math.floor(Math.random() * a)]) - 1), void 0 === r["t" + o][s] && (ie.debugMode && ie.debug.add("warn", "slideTransition.customTransition", [o.toUpperCase() + (-1 === e.indexOf("custom") ? "" : " (CUSTOM)"), s + 1]), r = ie.t, e = o = "2d", s = 0), ie.debugMode && ie.debug.add("log", "slideTransition.info", [o.toUpperCase() + (-1 === e.indexOf("custom") ? "" : " (CUSTOM)"), s + 1, r["t" + o][s].name]), ie.transitions.slide.normal.setTransition(o, r["t" + o][s])
                        }
                    },
                    setTransition: function(e, t) {
                        var i, a, s, r, o = se.extend(!0, {
                                cols: 1,
                                rows: 1
                            }, t),
                            n = typeof o.cols,
                            l = typeof o.rows,
                            d = [],
                            u = ie.navigation.direction,
                            p = 0,
                            c = 0,
                            h = !!ie.transitions.curSlide.data.$background && ie.functions.getURL(ie.transitions.curSlide.data.$background),
                            m = !!ie.transitions.nextSlide.data.$background && ie.functions.getURL(ie.transitions.nextSlide.data.$background),
                            f = ie.o.playByScroll && "up" === ie.device.scroll.direction ? "to" : "from";
                        switch (n) {
                            case "number":
                                n = o.cols;
                                break;
                            case "string":
                                n = Math.floor(Math.random() * (parseInt(o.cols.split(",")[1]) - parseInt(o.cols.split(",")[0]) + 1)) + parseInt(o.cols.split(",")[0]);
                                break;
                            default:
                                n = Math.floor(Math.random() * (o.cols[1] - o.cols[0] + 1)) + o.cols[0]
                        }
                        switch (l) {
                            case "number":
                                l = o.rows;
                                break;
                            case "string":
                                l = Math.floor(Math.random() * (parseInt(o.rows.split(",")[1]) - parseInt(o.rows.split(",")[0]) + 1)) + parseInt(o.rows.split(",")[0]);
                                break;
                            default:
                                l = Math.floor(Math.random() * (o.rows[1] - o.rows[0] + 1)) + o.rows[0]
                        }
                        ie.device.isMobile && ie.o.optimizeForMobile ? (15 <= n ? n = 7 : 5 <= n ? n = 4 : 4 <= n ? n = 3 : 2 < n && (n = 2), 15 <= l ? l = 7 : 5 <= l ? l = 4 : 4 <= l ? l = 3 : 2 < l && (l = 2), 2 < l && 2 < n && (l = 2, 4 < n && (n = 4))) : (n = 35 < n ? 35 : n, l = 35 < l ? 35 : l), ie.debugMode && !ie.o.slideTransition && (ie.debug.add("log", "slideTransition.properties", [
                            [n, l], n * l
                        ]), ie.debug.groupEnd()), i = Math.floor(ie.slider.width / n), a = Math.floor(ie.slider.height / l), s = ie.slider.width - i * n, r = ie.slider.height - a * l, "prev" == u && (o.tile && o.tile.sequence && (o.tile.sequence = {
                            random: "random",
                            forward: "reverse",
                            reverse: "forward",
                            "col-forward": "col-reverse",
                            "col-reverse": "col-forward"
                        }[o.tile.sequence]), se.each(["animation", "before", "after"], function(e, t) {
                            var i;
                            o[t] && o[t].transition && ((i = o[t].transition).rotateX && 44 < Math.abs(i.rotateX) && (i.rotateX *= -1), i.rotateY && 44 < Math.abs(i.rotateY) && (i.rotateY *= -1), i.rotate && (i.rotate *= -1))
                        }));
                        for (var g, v, y = 0; y < n * l; y++) d.push(y);
                        switch (o.tile.sequence) {
                            case "reverse":
                                d.reverse();
                                break;
                            case "col-forward":
                                d = ie.functions.sortArray(l, n, "forward");
                                break;
                            case "col-reverse":
                                d = ie.functions.sortArray(l, n, "reverse");
                                break;
                            case "random":
                                d = ie.functions.shuffleArray(d)
                        }
                        "transparent" === ie.transitions.curSlide.data.backgroundColor && (ie.transitions.curSlide.data.backgroundColor = ie.o.globalBGColor), "transparent" === ie.transitions.nextSlide.data.backgroundColor && (ie.transitions.nextSlide.data.backgroundColor = ie.o.globalBGColor), "2d" == e && (g = -1 != o.name.toLowerCase().indexOf("carousel"), v = -1 != o.name.toLowerCase().indexOf("crossfad"), this.$curTiles = se("<div>").addClass("ls-curtiles").appendTo(ie.transitions.slide.$wrapper), this.$nextTiles = se("<div>").addClass("ls-nexttiles").appendTo(ie.transitions.slide.$wrapper));
                        for (var b = 0; b < n * l; b++) {
                            var S, w, x, T, C, k, I, O = (b + 1) % n == 0 ? s : 0,
                                L = (l - 1) * n - 1 < b ? r : 0,
                                P = se("<div>").addClass("ls-slide-transition-tile").css({
                                    width: i + O,
                                    height: a + L
                                }).data("style", {
                                    width: i + O,
                                    height: a + L
                                }).appendTo(ie.transitions.slide.$wrapper),
                                p = (d[b], b % n == 0 ? p + 1 : p),
                                c = b % n == 0 ? 1 : c + 1;
                            if ("3d" == e) {
                                P.addClass("ls-3d-container");
                                var $, B, M, W, _, z, F = i + O,
                                    D = a + L,
                                    A = new ae.TimelineMax,
                                    R = Math.abs(Math.abs(c - n / 2 - .5) - n / 2 - .5) * Math.abs(Math.abs(p - l / 2 - .5) - l / 2 - .5);
                                P.css({
                                    zIndex: R
                                }), B = F / 2, M = D / 2, W = ($ = "horizontal" == o.animation.direction ? 90 < Math.abs(o.animation.transition.rotateY) && "large" != o.tile.depth ? Math.floor(F / 7) + O : F : 90 < Math.abs(o.animation.transition.rotateX) && "large" != o.tile.depth ? Math.floor(D / 7) + L : D) / 2, this.createCuboids("ls-3d-box", P, 0, 0, 0, 0, -W, 0, 0, B + "px " + M + "px 0px"), this.createCuboids("ls-3d-front", P.find(".ls-3d-box"), F, D, 0, 0, W, 0, 0), "vertical" == o.animation.direction && 90 < Math.abs(o.animation.transition.rotateX) ? this.createCuboids("ls-3d-back", P.find(".ls-3d-box"), F, D, 0, 0, -W, 180, 0) : this.createCuboids("ls-3d-back", P.find(".ls-3d-box"), F, D, 0, 0, -W, 0, 180), this.createCuboids("ls-3d-left", P.find(".ls-3d-box"), $, D, -W, 0, 0, 0, -90), this.createCuboids("ls-3d-right", P.find(".ls-3d-box"), $, D, F - W, 0, 0, 0, 90), this.createCuboids("ls-3d-top", P.find(".ls-3d-box"), F, $, 0, -W, 0, 90, 0), this.createCuboids("ls-3d-bottom", P.find(".ls-3d-box"), F, $, 0, D - W, 0, -90, 0), S = P.find(".ls-3d-front"), w = "horizontal" == o.animation.direction ? 90 < Math.abs(o.animation.transition.rotateY) ? P.find(".ls-3d-back") : 0 < o.animation.transition.rotateY ? P.find(".ls-3d-left") : P.find(".ls-3d-right") : 90 < Math.abs(o.animation.transition.rotateX) ? P.find(".ls-3d-back") : 0 < o.animation.transition.rotateX ? P.find(".ls-3d-bottom") : P.find(".ls-3d-top"), _ = d[b] * o.tile.delay, z = ie.transitions.slide.$wrapper.find(".ls-3d-container:eq( " + b + " ) .ls-3d-box"), o.before && o.before.transition ? (o.before.transition.delay = o.before.transition.delay ? (o.before.transition.delay + _) / 1e3 : _ / 1e3, A.to(z[0], o.before.duration / 1e3, ie.functions.convert.transition(o.before.transition, o.before.easing))) : o.animation.transition.delay = o.animation.transition.delay ? (o.animation.transition.delay + _) / 1e3 : _ / 1e3, A.to(z[0], o.animation.duration / 1e3, ie.functions.convert.transition(o.animation.transition, o.animation.easing)), o.after && (o.after.transition || (o.after.transition = {}), A.to(z[0], o.after.duration / 1e3, ie.functions.convert.transition(o.after.transition, o.after.easing, "after"))), ie.transitions._slideTransition.add(A, 0)
                            } else {
                                var E, V, N, H, X, Y, U, K, j = "auto",
                                    q = "auto",
                                    G = "auto",
                                    Q = "auto",
                                    J = 1,
                                    Z = 1,
                                    ee = {},
                                    te = "random" == o.transition.direction ? (E = ["top", "bottom", "right", "left"])[Math.floor(Math.random() * E.length)] : o.transition.direction;
                                switch (-1 != o.name.toLowerCase().indexOf("mirror") && b % 2 == 0 && (u = "prev" == u ? "next" : "prev"), "prev" == u && (te = {
                                    top: "bottom",
                                    bottom: "top",
                                    left: "right",
                                    right: "left",
                                    topleft: "bottomright",
                                    topright: "bottomleft",
                                    bottomleft: "topright",
                                    bottomright: "topleft"
                                }[te]), te) {
                                    case "top":
                                        j = G = -P.data("style").height, q = Q = 0;
                                        break;
                                    case "bottom":
                                        j = G = P.data("style").height, q = Q = 0;
                                        break;
                                    case "left":
                                        j = G = 0, q = Q = -P.data("style").width;
                                        break;
                                    case "right":
                                        j = G = 0, q = Q = P.data("style").width;
                                        break;
                                    case "topleft":
                                        j = P.data("style").height, G = 0, q = P.data("style").width, Q = 0;
                                        break;
                                    case "topright":
                                        j = P.data("style").height, G = 0, q = -P.data("style").width, Q = 0;
                                        break;
                                    case "bottomleft":
                                        j = -P.data("style").height, G = 0, q = P.data("style").width, Q = 0;
                                        break;
                                    case "bottomright":
                                        j = -P.data("style").height, G = 0, q = -P.data("style").width, Q = 0
                                }
                                switch (this.scale2D = o.transition.scale ? o.transition.scale : 1, 1 == g && 1 != this.scale2D && (j /= 2, G /= 2, q /= 2, Q /= 2), o.transition.type) {
                                    case "fade":
                                        J = j = G = q = Q = 0, Z = 1;
                                        break;
                                    case "mixed":
                                        J = 0, (Z = 1) == this.scale2D && (G = Q = 0)
                                }(o.transition.rotate || o.transition.rotateX || o.transition.rotateY || 1 != this.scale2D) && "slide" != o.transition.type ? P.css({
                                    overflow: "visible"
                                }) : P.css({
                                    overflow: "hidden"
                                }), 1 == g ? this.$curTiles.css({
                                    overflow: "visible"
                                }) : this.$curTiles.css({
                                    overflow: "hidden"
                                }), !0 === v || "slide" == o.transition.type || !0 === g ? (V = P.appendTo(this.$curTiles), N = P.clone().appendTo(this.$nextTiles), S = se("<div>").addClass("ls-curtile").appendTo(V)) : N = P.appendTo(this.$nextTiles), w = se("<div>").addClass("ls-nexttile").appendTo(N), H = d[b] * o.tile.delay / 1e3, X = o.transition.rotate ? o.transition.rotate : 0, Y = o.transition.rotateX ? o.transition.rotateX : 0, U = o.transition.rotateY ? o.transition.rotateY : 0, "prev" == u && (X = -X, Y = -Y, U = -U), ie.transitions._slideTransition.fromTo(w[0], o.transition.duration / 1e3, {
                                    immediateRender: !1,
                                    autoCSS: !1,
                                    css: {
                                        x: -q,
                                        y: -j,
                                        display: "block",
                                        opacity: J,
                                        rotation: X,
                                        rotationX: Y,
                                        rotationY: U,
                                        scale: this.scale2D
                                    }
                                }, {
                                    autoCSS: !1,
                                    css: {
                                        x: 0,
                                        y: 0,
                                        opacity: Z,
                                        rotation: 0,
                                        rotationX: 0,
                                        rotationY: 0,
                                        scale: 1
                                    },
                                    ease: ie.functions.convert.easing(o.transition.easing)
                                }, H), 1 == v && (void 0 === ie.transitions.nextSlide.data.$background || void 0 !== ie.transitions.nextSlide.data.$background && (-1 != ie.transitions.nextSlide.data.$background.attr("src").toLowerCase().indexOf("png") || ie.transitions.nextSlide.data.$background.width() < ie.slider.width || ie.transitions.nextSlide.data.$background.height() < ie.slider.height)) && (ee.opacity = 0), "slide" != o.transition.type && 1 != g || -1 != o.name.toLowerCase().indexOf("mirror") || (K = 0 !== X ? -X : 0, ee.x = Q, ee.y = G, ee.rotation = K, ee.scale = this.scale2D, ee.opacity = J), void 0 !== S && ie.transitions._slideTransition.to(S[0], o.transition.duration / 1e3, {
                                    autoCSS: !1,
                                    css: ee,
                                    ease: ie.functions.convert.easing(o.transition.easing)
                                }, H)
                            }
                            x = b % n * i, T = Math.floor(b / n) * a, void 0 !== ie.transitions.curSlide.data.$background && (C = ie.transitions.curSlide.data.$background.data(ie.defaults.init.dataKey), "3d" === e || "2d" === e && (!0 === v || "slide" === o.transition.type || !0 === g) ? S.append(se("<img>").attr("src", h).css({
                                width: C.responsive.width,
                                height: C.responsive.height,
                                "-webkit-filter": C.responsive.filter,
                                filter: C.responsive.filter,
                                "-ms-transform": "translateX(" + (C.responsive.x - x) + "px) translateY(" + (C.responsive.y - T) + "px)" + C.responsive.kbRotation + C.responsive.kbScale,
                                "-webkit-transform": "translateX(" + (C.responsive.x - x) + "px) translateY(" + (C.responsive.y - T) + "px)" + C.responsive.kbRotation + C.responsive.kbScale,
                                transform: "translateX(" + (C.responsive.x - x) + "px) translateY(" + (C.responsive.y - T) + "px)" + C.responsive.kbRotation + C.responsive.kbScale
                            })) : 0 === this.$curTiles.children().length && this.$curTiles.css("background-color", ie.transitions.curSlide.data.backgroundColor).append(se("<img>").attr("src", h).css({
                                width: C.responsive.width,
                                height: C.responsive.height,
                                "-webkit-filter": C.responsive.filter,
                                filter: C.responsive.filter,
                                "-ms-transform": "translateX(" + C.responsive.x + "px) translateY(" + C.responsive.y + "px)" + C.responsive.kbRotation + C.responsive.kbScale,
                                "-webkit-transform": "translateX(" + C.responsive.x + "px) translateY(" + C.responsive.y + "px)" + C.responsive.kbRotation + C.responsive.kbScale,
                                transform: "translateX(" + C.responsive.x + "px) translateY(" + C.responsive.y + "px)" + C.responsive.kbRotation + C.responsive.kbScale
                            }))), "transparent" === ie.transitions.curSlide.data.backgroundColor || ie.transitions.curSlide.data.$backgroundVideo.length || ("3d" === e || "2d" === e && (!0 === v || "slide" === o.transition.type || !0 === g) ? S.css("background-color", ie.transitions.curSlide.data.backgroundColor) : 0 === this.$curTiles.children().length && this.$curTiles.css("background-color", ie.transitions.curSlide.data.backgroundColor)), void 0 !== ie.transitions.nextSlide.data.$background && (I = (k = ie.transitions.nextSlide.data.$background.data(ie.defaults.init.dataKey)).kenBurns[f], w.append(se("<img>").attr("src", m).css({
                                width: k.responsive.width,
                                height: k.responsive.height,
                                "-webkit-filter": ie.transitions.nextSlide.filter.from || "none",
                                filter: ie.transitions.nextSlide.filter.from || "none",
                                "-ms-transform": "translateX(" + (k.responsive.x - x) + "px) translateY(" + (k.responsive.y - T) + "px) rotate(" + I.rotation + "deg) scale(" + I.scale + ")",
                                "-webkit-transform": "translateX(" + (k.responsive.x - x) + "px) translateY(" + (k.responsive.y - T) + "px) rotate(" + I.rotation + "deg) scale(" + I.scale + ")",
                                transform: "translateX(" + (k.responsive.x - x) + "px) translateY(" + (k.responsive.y - T) + "px) rotate(" + I.rotation + "deg) scale(" + I.scale + ")"
                            }))), "transparent" === ie.transitions.nextSlide.data.backgroundColor || ie.transitions.nextSlide.data.$backgroundVideo.length || w.css("background-color", ie.transitions.nextSlide.data.backgroundColor)
                        }
                        ie.transitions.slide.$wrapper.prependTo(ie.o.preferBlendMode ? ie.slider.$layersWrapper : ie.slider.$innerWrapper), ie.transitions.slide.start()
                    },
                    createCuboids: function(e, t, i, a, s, r, o, n, l, d) {
                        var u = "translate3d( " + s + "px, " + r + "px, " + o + "px)";
                        0 !== n && (u += "rotateX( " + n + "deg)"), 0 !== l && (u += "rotateY( " + l + "deg)");
                        var p = {
                            width: i,
                            height: a,
                            transform: u,
                            "-ms-transform": u,
                            "-webkit-transform": u
                        };
                        d && (p["transform-origin"] = d, p["-ms-transform-origin"] = d, p["-webkit-transform-origin"] = d), se("<div>").addClass(e).css(p).appendTo(t)
                    }
                }
            },
            layers: { in : {
                    onStart: function(e) {
                        e.data(ie.defaults.init.dataKey).hover.enabled && ie.transitions.layers.hover.enable(e), ie.layers.set.dataAttribute(e, "animating-in")
                    },
                    onComplete: function(e) {
                        ie.media.functions.playIfAllowed(e), ie.layers.set.dataAttribute(e, "active")
                    }
                }, out: {
                    forced: function() {
                        var s, r, o, n, e, t, i, a;
                        ie.transitions._forceLayersOut && (ie.transitions._slideTimeline && (s = new ae.TimelineMax({
                            paused: !0,
                            autoRemoveChildren: !0
                        }), n = [], e = ie.layers.get("current, in, static, active").add(ie.layers.get("current, out, static, active")), t = ie.layers.get("current, out, notstatic, active"), i = ie.layers.get("current, out, active"), a = se().add(e).add(t), a.each(function() {
                            var e, t = se(this).data(ie.defaults.init.dataKey);
                            if (t.loop._timeline && (ie.transitions._slideTimeline.remove(t.loop._timeline), t.loop._timeline.play()), t.is.static) {
                                r = [t.elements.$wrapper[0]], t.elements.$clipWrapper && (r = r.concat(t.elements.$clipWrapper[0])), t.textIn.nodes && (r = r.concat(t.textIn.nodes));
                                for (var i = 0; i < r.length; i++) n = n.concat(ie.transitions._slideTimeline.getTweensOf(r[i], !0));
                                for (var a = 0; a < n.length; a++) n[a].duration && 0 !== n[a].duration() && (o = n[a], e = o, s.add(e, 100 - e.duration() * e.progress()))
                            }
                        }), i.each(function() {
                            se(this).data(ie.defaults.init.dataKey).should.reset = !0
                        }), s.play().seek(100), ie.transitions._slideTimeline.eventCallback("onStart", null), ie.transitions._slideTimeline.eventCallback("onComplete", null), ie.transitions._slideTimeline.eventCallback("onReverseComplete", null), ie.transitions._slideTimeline.eventCallback("onUpdate", null), ie.transitions._slideTimeline.stop().clear()), ie.transitions._forceLayersOut.play(), ie.slideshow.forceFastChange && ie.transitions._forceLayersOut.progress(1)), ie.slider.$layersWrapper.find(".ls-link").css({
                            display: "none"
                        })
                    },
                    onStart: function(e) {
                        ie.layers.set.dataAttribute(e, "animating-out")
                    },
                    onComplete: function(e) {
                        var t = e.data(ie.defaults.init.dataKey);
                        !ie.slider.state.changingSlides && t.settings.slideOut === ie.slides.current.index || ie.transitions.layers.reset(e, t), t.hover.enabled && ie.transitions.layers.hover.disable(e), ie.layers.set.dataAttribute(e, "hidden")
                    }
                }, reset: function(e, t) {
                    t.loop._timeline && (t.loop._timeline.stop().clear(), delete t.loop._timeline, ae.TweenMax.set(t.elements.$loopWrapper[0], t.reset.loopWrapperOnSlideChange)), ae.TweenMax.set(t.elements.$wrapper[0], t.reset.wrapperOnSlideChange), ae.TweenMax.set(e[0], {
                        "-webkit-filter": "none",
                        filter: "none"
                    }), t.should.update && (t.textInNodesFrom.random = {}, t.textOutNodesTo.random = {}, ie.layers.update.data(e)), t.should.reset = !1
                }, timeline: {
                    shouldRestart: !1,
                    create: function(e) {
                        var t, i, a, s, r = e ? "current" : "next";
                        ie.transitions.curNext = r, ie.transitions.layers.timeline.shouldRestart = !1, ie.transitions.layers.timeline.resetStates(), ie.transitions._slideTimeline && (ie.transitions._slideTimeline.pause().progress(0).kill().clear(!0), ie.transitions._slideTimeline = null), ie.transitions._slideTimeline = new ae.TimelineMax({
                            paused: !0,
                            onStart: function() {
                                ie.api.hasEvent("slideTimelineDidStart") && _.triggerHandler("slideTimelineDidStart", ie.api.eventData())
                            },
                            onComplete: function() {
                                ie.o.playByScroll && ie.o.playByScrollSkipSlideBreaks && ("next" === ie.slideshow.direction ? ie.transitions.layers.timeline.scrollForward(!0) : ie.transitions.layers.timeline.scrollBackwards(!0, !0))
                            },
                            onReverseComplete: function() {
                                ie.api.hasEvent("slideTimelineDidReverseComplete") && _.triggerHandler("slideTimelineDidReverseComplete", ie.api.eventData()), ie.transitions.layers.timeline.shouldReplay && (ie.transitions.layers.timeline.shouldRestart = !1, ie.transitions._slideTimeline.play()), ie.o.playByScroll && ie.o.playByScrollSkipSlideBreaks && ie.transitions.layers.timeline.scrollBackwards(!0, !1)
                            },
                            onUpdate: function(e) {
                                ie.api.hasEvent("slideTimelineDidUpdate") && _.triggerHandler("slideTimelineDidUpdate", e)
                            },
                            onUpdateParams: ["{self}"]
                        }), this.totalDuration = 0, this.progress = 1, ie.transitions._forceLayersOut = new ae.TimelineMax({
                            paused: !0,
                            autoRemoveChildren: !0
                        }), t = ie.layers.get(r + ", in, notactive"), i = ie.layers.get(r + ", out, notstatic").add(ie.layers.get(r + ", out, active, static")), a = ie.layers.get(r + ", in, bgonly, notactive"), s = se().add(t).add(i).add(a), this.addLayers(t, "in", ie.transitions._slideTimeline, ie.transitions._forceLayersOut), this.addLayers(i, "out", ie.transitions._slideTimeline, ie.transitions._forceLayersOut), ie.slides[r].data && -1 !== ie.slides[r].data.duration && ie.slides[r].data.duration < this.totalDuration ? (this.progress = ie.slides[r].data.duration / this.totalDuration, ie.debugMode && ie.debug.add("warn", "slideTimeline.duration", [ie.slides[r].data.duration, this.totalDuration])) : ie.transitions._slideTimeline.duration() > this.totalDuration && (this.progress = this.totalDuration / ie.transitions._slideTimeline.duration()), -1 === ie.slides[r].data.duration ? (ie.slides[r].data.duration = this.totalDuration, ie.slides[ie.slides[r].index].data.duration = this.totalDuration) : this.totalDuration = ie.slides[r].data.duration, this.addLayers(a, "in", ie.transitions._slideTimeline, ie.transitions._forceLayersOut), !0 === ie.transitions.layers.timeline.shouldRestart && ie.debugMode && ie.debug.add("warn", "slideTimeline.restart", ie.o.allowRestartOnResize ? "enabled" : "disabled");
                        for (var o, n = 0; n < s.length; n++) se(s[n]).data(ie.defaults.init.dataKey).parallax.enabled && se(s[n]).data(ie.defaults.init.dataKey).elements.$parallaxWrapper.attr("data-ls-parallax", "active");
                        ie.transitions.layers.parallax.trigger(), ie.api.hasEvent("slideTimelineDidCreate") && _.triggerHandler("slideTimelineDidCreate", {
                            slideTimeline: ie.transitions._slideTimeline,
                            layersOnSlideTimeline: s,
                            slideTimelineDuration: this.totalDuration
                        }), ie.transitions.timers.create(), ie.transitions.timers.bar._transition && ie.transitions._slideTimeline.add(ie.transitions.timers.bar._transition.play(), 0), ie.transitions.timers.circle._transition && ie.transitions._slideTimeline.add(ie.transitions.timers.circle._transition.play(), 0), ie.transitions.timers.slidebar._transition && ie.transitions._slideTimeline.add(ie.transitions.timers.slidebar._transition.play(), 0), ie.transitions._slideTimeline.call(function() {
                            if (!ie.transitions._slideTimeline.reversed()) {
                                if (ie.api.hasEvent("slideTimelineDidComplete") && !1 === _.triggerHandler("slideTimelineDidComplete", ie.api.eventData())) return;
                                ie.functions.setStates(ie.transitions.layers.timeline, {
                                    finished: !0
                                }), !ie.slideshow.isPaused() && ie.slideshow.state.running ? ie.slideshow.changeTo(ie.slides.next.index) : ie.slideshow.state.pausedByLastCycle && ie.transitions.timers.reverse()
                            }
                        }, [], this, ie.slides[r].data.duration), ie.slides.next.data.$link && ie.slides.next.data.$link.css({
                            display: "block"
                        }), (!ie.o.startInViewport || "inside" !== ie.slider.positionToViewport && !ie.o.playByScrollStart) && ie.o.startInViewport || !(ie.slider.isPopup && ie.slider.state.popupIsVisible && ie.slider.state.popupShouldStart) && ie.slider.isPopup || (ie.o.pauseLayers && ie.slideshow.isPaused() && ie.transitions._slideTimeline.timeScale(0), ie.transitions.layers.timeline.play(), ie.o.playByScroll && "up" === ie.device.scroll.directionAtSlideTransitionStart && ie.transitions._slideTimeline.progress(1)), _.trigger("mouseleave.globalhover" + z), _.off("mouseenter.globalhover" + z + " mouseleave.globalhover" + z + " mousemove.globalhover" + z), ie.slides[r].data.globalhover && (o = ie.layers.get(r + ",in,notactive").add(ie.layers.get("static,active")), _.on("mouseenter.globalhover" + z, function() {
                            o.each(function() {
                                ie.transitions.layers.hover.mouseEnter(se(this), se(this).data(ie.defaults.init.dataKey))
                            })
                        }), _.on("mouseleave.globalhover" + z, function() {
                            o.each(function() {
                                ie.transitions.layers.hover.mouseLeave(se(this), se(this).data(ie.defaults.init.dataKey))
                            })
                        }), _.on("mousemove.globalhover" + z, function() {
                            o.each(function() {
                                ie.transitions.layers.hover.mouseMove(se(this), se(this).data(ie.defaults.init.dataKey))
                            })
                        }))
                    },
                    prepare: function() {
                        ie.slides.next.data.overflow && "hidden" !== ie.slides.next.data.overflow ? (ie.slider.$layersWrapper.addClass("ls-visible"), ie.slider.$slideBGWrapper.addClass("ls-visible")) : (ie.slider.$layersWrapper.removeClass("ls-visible"), ie.slider.$slideBGWrapper.removeClass("ls-visible")), this.create()
                    },
                    getTiming: function(e, t, i, a) {
                        if ("number" == typeof t) return t;
                        t = t.toLowerCase();
                        var s, r, o, n, l, d = ie.defaults.layer.timelineHierarchy,
                            u = 0;
                        if (-1 !== t.indexOf("*") && (l = "*"), -1 !== t.indexOf("/") && (l = "/"), -1 !== t.indexOf("+") && (l = "+"), -1 !== t.indexOf("-") && (l = "-"), l)
                            if (n = t.split(l), s = se.trim(n[0]), o = parseInt(se.trim(n[1])), d[s] && -1 !== d[i][1].indexOf(d[s][0]))
                                if (r = "number" == typeof e.timeline[s] ? e.timeline[s] : e.timeline[s](e), a) u = o / 1e3;
                                else switch (l) {
                                    case "*":
                                        u = r * o;
                                        break;
                                    case "/":
                                        u = r / o;
                                        break;
                                    case "+":
                                        u = r + o / 1e3;
                                        break;
                                    case "-":
                                        u = r - o / 1e3
                                } else ie.debugMode && (d[s] || ie.debug.add("warn", "layerTransition.timing1", s), -1 === d[i][1].indexOf(d[s][0]) && ie.debug.add("warn", "layerTransition.timing3", [s, d[s], i, d[i]])), "+" !== l && !a || (u = o / 1e3);
                        else d[s = se.trim(t)] && -1 !== d[i][1].indexOf(d[s][0]) ? u = a ? 0 : "number" == typeof e.timeline[s] ? e.timeline[s] : e.timeline[s](e) : ie.debugMode && (d[s] ? -1 === d[i][1].indexOf(d[s][0]) && ie.debug.add("warn", "layerTransition.timing3", [s, d[s], i, d[i]]) : ie.debug.add("warn", "layerTransition.timing1", s));
                        return (u != u || u < 0) && (ie.debugMode && ie.debug.add("warn", "layerTransition.timing2", [i, s, u]), u = 0), u
                    },
                    addLayers: function(e, t, i, a) {
                        for (var s = 0, r = e.length; s < r; s++) {
                            var o, n, l = se(e[s]),
                                d = l.data(ie.defaults.init.dataKey),
                                u = d.elements.$wrapper,
                                p = d.elements.$clipWrapper,
                                c = d.elements.$loopWrapper,
                                h = d.elements.$parallaxWrapper;
                            if (d.should.reset && ie.transitions.layers.reset(l, d), l.hasClass("ls-bg")) d.kenBurns.zoom && i.fromTo(l.closest(".ls-bg-wrap"), ie.transitions.nextSlide.data.duration + ie.transitions.nextSlide.data.calculatedTimeShift, {
                                autoCSS: !1,
                                css: d.kenBurns.from
                            }, {
                                autoCSS: !1,
                                css: d.kenBurns.to,
                                ease: ae.Quad.easeInOut
                            }, -ie.transitions.nextSlide.data.calculatedTimeShift), se.isEmptyObject(d.filter.values.bgFrom) && se.isEmptyObject(d.filter.values.bgTo) || (d.filter.transitions.bg || (d.filter.transitions.bg = ie.transitions.layers.filters.createTransition(d, "bg", d.filter.values.bgFrom, d.filter.values.bgTo)), i.to([{
                                p: 0
                            }, l[0]], ie.transitions.nextSlide.data.duration, {
                                p: 1,
                                autoCSS: !1,
                                ease: ae.Sine.easeInOut,
                                onUpdate: ie.transitions.layers.filters.animate,
                                onUpdateParams: ["{self}", d.filter.transitions.bg]
                            }, 0));
                            else switch (t) {
                                case "in":
                                    if (d.in.enabled && (d.settings.timelineIsCalculated || ("number" != typeof d.in.startAt && (d.in.startAt = 0), d.timeline.transitioninstart = d.in.startAt, d.timeline.transitioninend = d.timeline.transitioninstart + d.in.duration), ie.resize.transformProperties(l, d.inLayerFromCSS, d.inLayerShouldBeConverted), ie.resize.styleProperties(d.inLayerStyleFromCSS, d.inLayerStyleShouldBeConvertedFrom), ie.resize.styleProperties(d.inLayerStyleToCSS, d.inLayerStyleShouldBeConvertedTo), d.inLayerFromCSS.transformPerspective = d.transformPerspective.layer * ie.resize.ratio, d.clip.enabled && (d.original.clip || (d.original.clip = d.clip.min, d.original.clipShouldBeConverted = !0), d.inClipShouldBeConverted.clip ? (d.inClipFromCSS.clip = ie.resize.clip(l, d.inClipShouldBeConverted.clip, !0), d.inClipToCSS.clip = ie.resize.clip(l, d.original.clip, d.original.clipShouldBeConverted), i.fromTo(p[0], d.in.duration, d.inClipFrom, d.inClipTo, d.timeline.transitioninstart)) : ae.TweenMax.set(p[0], {
                                            clip: ie.resize.clip(l, d.original.clip, d.original.clipShouldBeConverted)
                                        }), ie.transitions.layers.timeline.shouldRestart = !0), se.isEmptyObject(d.filter.values.in) ? se.isEmptyObject(d.filter.values.out) || l.css("filter", d.original.filter) : (d.filter.transitions.in || (d.filter.transitions.in = ie.transitions.layers.filters.createTransition(d, "in", d.filter.values.in, d.filter.values.style)), i.to([{
                                            p: 0
                                        }, l[0]], d.in.duration, {
                                            p: 1,
                                            autoCSS: !1,
                                            ease: d.inLayerTo.ease,
                                            onUpdate: ie.transitions.layers.filters.animate,
                                            onUpdateParams: ["{self}", d.filter.transitions.in]
                                        }, d.timeline.transitioninstart)), i.fromTo(u[0], d.in.duration, d.inLayerFrom, d.inLayerTo, d.timeline.transitioninstart), i.fromTo(l[0], d.in.duration, d.inLayerStyleFrom, d.inLayerStyleTo, d.timeline.transitioninstart)), d.is.textLayer && ((d.textIn.type || d.textOut.type) && ie.transitions.layers.splitType.resetNodes(l, d), d.textIn.enabled && (d.in.enabled || i.to(u[0], 0, se.extend(!0, {}, d.inLayerTo, d.init.wrapper), d.timeline.textinstart), d.textIn.nodes = ie.transitions.layers.splitType.setNodesSequence(d.textIn.type.split("_"), d.textIn.ns), ie.resize.transformProperties(l, d.textInNodesFrom, d.textInShouldBeConverted), d.textInNodesFrom.transformPerspective = d.transformPerspective.text * ie.resize.ratio, se.isEmptyObject(d.textInShouldBeConverted.random) || ie.transitions.layers.splitType.setRandomProperties(d, d.textInShouldBeConverted.random, d.textInNodesFrom), se.isEmptyObject(d.textInNodesFrom.random) || ie.transitions.layers.splitType.setRandomProperties(d, d.textInNodesFrom.random, d.textInNodesFrom), delete d.textInNodesFrom.random, d.settings.timelineIsCalculated || (d.timeline.textinstart = this.getTiming(d, d.textIn.startAt, "textinstart"), d.timeline.textinend = d.timeline.textinstart + (d.textIn.nodes.length - 1) * d.textIn.shiftNodes + d.textIn.duration), i.staggerFromTo(d.textIn.nodes, d.textIn.duration, d.textInNodesFrom, d.textInNodesTo, d.textIn.shiftNodes, d.timeline.textinstart, function(e) {
                                            ie.transitions.layers.in.onComplete(e)
                                        }, [l]))), d.is.keyframe && ie.o.playByScroll && i.addPause(d.timeline.allinend(), function() {
                                            setTimeout(function() {
                                                delete ie.timeouts.scroll, ie.transitions.layers.timeline.timeScaleModifier = 0, ie.device.scroll.timeout = 250
                                            }, 500)
                                        }), d.parallax.enabled && "auto" == d.parallax.event) {
                                        ie.transitions.layers.parallax.auto();
                                        var m = new ae.TimelineMax({
                                                paused: !0
                                            }),
                                            f = {
                                                repeat: -1 == d.parallax.count ? -1 : d.parallax.count - 1,
                                                ease: Linear.easeNone
                                            };
                                        switch (d.settings.timelineIsCalculated && !d.is.static || (d.timeline.autoparallaxstart = this.getTiming(d, d.parallax.startAt, "autoparallaxstart"), d.timeline.autoparallaxend = -1 !== d.parallax.count && d.timeline.autoparallaxstart + d.parallax.duration * d.parallax.count), d.parallax._timeline = m, d.parallax.dummy = {
                                            x: 0,
                                            y: -10
                                        }, d.parallax.path) {
                                            default:
                                                case "circle":
                                                f.bezier = {
                                                curviness: 1.5,
                                                values: [{
                                                    x: 10,
                                                    y: 0
                                                }, {
                                                    x: 0,
                                                    y: 10
                                                }, {
                                                    x: -10,
                                                    y: 0
                                                }, {
                                                    x: 0,
                                                    y: -10
                                                }]
                                            };
                                            break;
                                            case "oval-h":
                                                    f.bezier = {
                                                    type: "thru",
                                                    curviness: 1,
                                                    values: [{
                                                        x: 20,
                                                        y: 0
                                                    }, {
                                                        x: 0,
                                                        y: 10
                                                    }, {
                                                        x: -20,
                                                        y: 0
                                                    }, {
                                                        x: 0,
                                                        y: -10
                                                    }]
                                                };
                                                break;
                                            case "oval-v":
                                                    d.parallax.dummy = {
                                                    x: 0,
                                                    y: -20
                                                },
                                                f.bezier = {
                                                    type: "thru",
                                                    curviness: 1,
                                                    values: [{
                                                        x: 10,
                                                        y: 0
                                                    }, {
                                                        x: 0,
                                                        y: 20
                                                    }, {
                                                        x: -10,
                                                        y: 0
                                                    }, {
                                                        x: 0,
                                                        y: -20
                                                    }]
                                                };
                                                break;
                                            case "infinity":
                                                    d.parallax.dummy = {
                                                    x: 0,
                                                    y: 0
                                                },
                                                f.bezier = {
                                                    type: "thru",
                                                    curviness: 1,
                                                    values: [{
                                                        x: 20,
                                                        y: -10
                                                    }, {
                                                        x: 40,
                                                        y: 0
                                                    }, {
                                                        x: 20,
                                                        y: 10
                                                    }, {
                                                        x: 0,
                                                        y: 0
                                                    }, {
                                                        x: -20,
                                                        y: -10
                                                    }, {
                                                        x: -40,
                                                        y: 0
                                                    }, {
                                                        x: -20,
                                                        y: 10
                                                    }, {
                                                        x: 0,
                                                        y: 0
                                                    }]
                                                };
                                                break;
                                            case "linear-h":
                                                    d.parallax.dummy = {
                                                    x: -10,
                                                    y: 0
                                                },
                                                f.x = 10,
                                                f.ease = Quad.easeInOut,
                                                f.yoyo = !0,
                                                f.repeat = -1 == d.parallax.count ? -1 : 2 * d.parallax.count - 1;
                                                break;
                                            case "linear-v":
                                                    d.parallax.dummy = {
                                                    x: 0,
                                                    y: -10
                                                },
                                                f.y = 10,
                                                f.ease = Quad.easeInOut,
                                                f.yoyo = !0,
                                                f.repeat = -1 == d.parallax.count ? -1 : 2 * d.parallax.count - 1
                                        }
                                        f.onUpdate = function(e, t, i, a, s, r, o) {
                                            ae.TweenMax.set(i, {
                                                x: -t.x * (a / 50) * parseInt(s),
                                                y: -t.y * (a / 50) * parseInt(s),
                                                rotationX: "3d" == r ? t.y / (100 / o) : 0,
                                                rotationY: "3d" == r ? -t.x / (100 / o) : 0
                                            })
                                        }, f.onUpdateParams = ["{self}", d.parallax.dummy, h[0], d.parallax.distance, d.parallax.level, d.parallax.type, d.parallax.rotation], m.to(d.parallax.dummy, -1 == d.parallax.path.indexOf("linear") ? d.parallax.duration : d.parallax.duration / 2, f), i.add(m, d.timeline.autoparallaxstart), m.play()
                                    }
                                    d.loop.enabled && (n = new ae.TimelineMax({
                                        repeat: d.loop.repeat,
                                        repeatDelay: d.loop.repeatDelay,
                                        yoyo: d.loop.yoyo,
                                        paused: !0
                                    }), d.settings.timelineIsCalculated && !d.is.static || (d.timeline.loopstart = this.getTiming(d, d.loop.startAt, "loopstart"), d.timeline.loopend = -1 !== d.loop.count && d.timeline.loopstart + (d.loop.repeat + 1) * d.loop.duration + d.loop.repeat * d.loop.repeatDelay), d.loop._timeline = n, ie.resize.transformProperties(l, d.loopToCSS, {
                                        x: d.loopLayerShouldBeConverted.x,
                                        y: d.loopLayerShouldBeConverted.y
                                    }), (d.loopToCSS.x && 0 !== d.loopToCSS.x || d.loopToCSS.y && 0 !== d.loopToCSS.y) && (ie.transitions.layers.timeline.shouldRestart = !0), d.loopFromCSS.transformOrigin = ie.functions.convert.transformOrigin(d.loopLayerShouldBeConverted.transformOrigin, l), d.loopFromCSS.transformPerspective = d.transformPerspective.loop * ie.resize.ratio, se.isEmptyObject(d.filter.values.loop) || (d.filter.transitions.loop || (d.filter.transitions.loop = ie.transitions.layers.filters.createTransition(d, "loop", se.isEmptyObject(d.filter.values.afterIn) ? d.filter.values.style : d.filter.values.afterIn, d.filter.values.loop)), n.to([{
                                        p: 0
                                    }, l[0]], d.loop.duration, {
                                        p: 1,
                                        autoCSS: !1,
                                        ease: d.loopTo.ease,
                                        onUpdate: ie.transitions.layers.filters.animate,
                                        onUpdateParams: ["{self}", d.filter.transitions.loop]
                                    }, 0)), n.fromTo(c[0], d.loop.duration, d.loopFrom, d.loopTo, 0), d.loopClipShouldBeConverted.clip && (d.loopClipToCSS.clip = ie.resize.clip(l, d.loopClipShouldBeConverted.clip, !0), n.to(p[0], d.loop.duration, d.loopClipTo, 0), ie.transitions.layers.timeline.shouldRestart = !0), -1 !== d.loop.repeat && ("looplayers" === ie.o.pauseOnHover || ie.gui.timers.slidebar.$element || ie.o.playByScroll) ? (i.add(n, d.timeline.loopstart), n.play()) : i.addCallback(function(e) {
                                        e.play()
                                    }, d.timeline.loopstart, [n])), d.is.static && (d.timeline.staticfrom = d.timeline.transitioninend, d.timeline.staticto = "100%", d.settings.timelineIsCalculated || (o = Math.max(d.timeline.allinandloopend(), 0), this.totalDuration = Math.max(this.totalDuration, o)));
                                    break;
                                case "out":
                                    d.is.textLayer && d.textOut.enabled && (d.textOut.nodes = ie.transitions.layers.splitType.setNodesSequence(d.textOut.type.split("_"), d.textOut.ns), ie.resize.transformProperties(l, d.textOutNodesTo, d.textOutShouldBeConverted, d.textOutNodesFrom), d.textOutNodesFrom.transformPerspective = d.transformPerspective.text * ie.resize.ratio, se.isEmptyObject(d.textOutShouldBeConverted.random) || ie.transitions.layers.splitType.setRandomProperties(d, d.textOutShouldBeConverted.random, d.textOutNodesTo), se.isEmptyObject(d.textOutNodesTo.random) || ie.transitions.layers.splitType.setRandomProperties(d, d.textOutNodesTo.random, d.textOutNodesTo), delete d.textOutNodesTo.random, d.settings.timelineIsCalculated || (d.timeline.textoutstart = this.getTiming(d, d.textOut.startAt, "textoutstart"), d.timeline.textoutend = d.timeline.textoutstart + (d.textOut.nodes.length - 1) * d.textOut.shiftNodes + d.textOut.duration), d.clip.enabled && (void 0 === d.outClipShouldBeConverted.clip && i.to(p[0], 0, {
                                        immediateRender: !1,
                                        css: {
                                            clip: ie.resize.clip(l, d.clip.max)
                                        }
                                    }, d.timeline.textoutstart), ie.transitions.layers.timeline.shouldRestart = !0), i.staggerFromTo(d.textOut.nodes, d.textOut.duration, d.textOutNodesFrom, d.textOutNodesTo, d.textOut.shiftNodes, d.timeline.textoutstart)), ie.resize.transformProperties(l, d.outLayerToCSS, d.outLayerShouldBeConverted, d.outLayerFromCSS), ie.resize.styleProperties(d.outLayerStyleFromCSS, d.outLayerStyleShouldBeConvertedFrom), ie.resize.styleProperties(d.outLayerStyleToCSS, d.outLayerStyleShouldBeConvertedTo), d.outLayerFromCSS.transformPerspective = d.transformPerspective.layer * ie.resize.ratio, "slidechangeonly" !== d.out.startAt ? (d.settings.timelineIsCalculated && !d.is.static || (d.is.static ? (d.timeline.staticfrom = 0, d.timeline.transitionoutstart = this.getTiming(d, d.out.startAt, "transitionoutstart", !0), d.timeline.staticto = d.timeline.transitionoutstart) : d.timeline.transitionoutstart = Math.max(this.getTiming(d, d.out.startAt, "transitionoutstart"), d.timeline.transitioninend), d.timeline.transitionoutend = d.timeline.transitionoutstart + d.out.duration), d.clip.enabled && (void 0 === d.outClipShouldBeConverted.clip ? i.to(p[0], 0, {
                                        immediateRender: !1,
                                        css: {
                                            clip: ie.resize.clip(l, d.clip.max)
                                        }
                                    }, d.timeline.transitionoutstart) : (d.outClipToCSS.clip = ie.resize.clip(l, d.outClipShouldBeConverted.clip, !0), i.to(p[0], d.out.duration, d.outClipTo, d.timeline.transitionoutstart)), ie.transitions.layers.timeline.shouldRestart = !0), se.isEmptyObject(d.filter.values.out) || (d.filter.transitions.out || (d.filter.transitions.out = ie.transitions.layers.filters.createTransition(d, "out", se.isEmptyObject(d.filter.values.afterLoop) ? se.isEmptyObject(d.filter.values.afterIn) ? d.filter.values.style : d.filter.values.afterIn : d.filter.values.afterLoop, d.filter.values.out)), i.to([{
                                        p: 0
                                    }, l[0]], d.out.duration, {
                                        p: 1,
                                        autoCSS: !1,
                                        ease: d.outLayerTo.ease,
                                        onUpdate: ie.transitions.layers.filters.animate,
                                        onUpdateParams: ["{self}", d.filter.transitions.out]
                                    }, d.timeline.transitionoutstart)), i.fromTo(u[0], d.out.duration, d.outLayerFrom, d.outLayerTo, d.timeline.transitionoutstart), i.fromTo(l[0], d.out.duration, d.outLayerStyleFrom, d.outLayerStyleTo, d.timeline.transitionoutstart), i.fromTo(u[0], 0, d.init.wrapper, d.reset.wrapperOnTimelineEnd, d.timeline.transitionoutend)) : (d.timeline.staticfrom = 0, d.timeline.staticto = "100%"), (!d.is.static || d.is.static && d.settings.slideOut === ie.slides.next.index) && (a.fromTo(u[0], ie.o.forceLayersOutDuration, d.outLayerFrom, d.outLayerTo, 0), a.fromTo(l[0], ie.o.forceLayersOutDuration, d.outLayerStyleFrom, d.outLayerStyleTo, 0), d.clip.enabled && void 0 !== d.outClipShouldBeConverted.clip && (d.outClipToCSS.clip = ie.resize.clip(l, d.outClipShouldBeConverted.clip, !0), a.to(p[0], ie.o.forceLayersOutDuration, d.outClipTo, 0))), o = Math.max(d.timeline.alloutandloopend(), 0), this.totalDuration = Math.max(this.totalDuration, o), d.settings.timelineIsCalculated = !0
                            }
                        }
                    },
                    play: function() {
                        ie.transitions._slideTimeline && (ie.transitions._slideTimeline.play(), ie.functions.setStates(this, {
                            started: !0,
                            running: !0,
                            stopped: !1,
                            paused: !1
                        }))
                    },
                    pause: function(e) {
                        e = se.isNumeric(e) ? e : .75;
                        ie.transitions._slideTimeline && (ae.TweenMax.to(ie.transitions._slideTimeline, e, {
                            timeScale: 0
                        }), ie.functions.setStates(this, {
                            paused: !0,
                            stopped: !1
                        }))
                    },
                    resume: function() {
                        ie.transitions._slideTimeline && (ae.TweenMax.to(ie.transitions._slideTimeline, .75, {
                            timeScale: 1
                        }), ie.functions.setStates(this, {
                            paused: !1,
                            stopped: !1
                        }))
                    },
                    reverse: function() {
                        ie.transitions._slideTimeline && ie.transitions._slideTimeline.reverse()
                    },
                    scrollForward: function(e) {
                        var t;
                        e || (this.play(), this.modifyTimeScale()), ie.transitions._slideTimeline && (ie.slider.isBusy() || 0 !== ie.transitions._slideTimeline.totalDuration() && 1 !== ie.transitions._slideTimeline.progress() || "down" !== ie.device.scroll.direction || (ie.slideshow.direction = "next", (t = ie.slideshow.sequence.normalized).indexOf(ie.slides.current.index) === t.length - 1 ? (ie.slider.positionToViewport = "under", ie.device.scroll.enable(), ie.slideshow.direction = "prev") : ie.navigation.next()))
                    },
                    scrollBackwards: function(e, t) {
                        e && !t || (this.reverse(), this.modifyTimeScale()), ie.transitions._slideTimeline && (ie.slider.isBusy() || 0 !== ie.transitions._slideTimeline.totalDuration() && 0 !== ie.transitions._slideTimeline.progress() || "up" !== ie.device.scroll.direction || (ie.slideshow.direction = "prev", 0 === ie.slideshow.sequence.normalized.indexOf(ie.slides.current.index) ? (ie.slider.positionToViewport = "over", ie.device.scroll.enable(), ie.slideshow.direction = "next") : ie.navigation.prev()))
                    },
                    modifyTimeScale: function() {
                        ie.transitions._slideTimeline && ae.TweenMax.to(ie.transitions._slideTimeline, .25, {
                            timeScale: 1 + this.timeScaleModifier
                        })
                    },
                    resetStates: function() {
                        this.state = {
                            started: !1,
                            running: !1,
                            paused: !1,
                            stopped: !1,
                            finished: !1
                        }
                    }
                }, hover: {
                    enable: function(e) {
                        e.attr("data-ls-canhover", "1")
                    },
                    disable: function(e) {
                        e.attr("data-ls-canhover", "0")
                    },
                    set: function(e, t) {
                        t.elements.$wrapper.on("mouseenter." + z, function() {
                            ie.transitions.layers.hover.mouseEnter(e, t)
                        }), t.elements.$wrapper.on("mouseleave." + z, function() {
                            ie.transitions.layers.hover.mouseLeave(e, t)
                        }), t.elements.$wrapper.on("mousemove." + z, function() {
                            ie.transitions.layers.hover.mouseMove(e, t)
                        })
                    },
                    createTimeline: function(e, t) {
                        var i, a, s, r;
                        t.hover._timeline = new ae.TimelineMax({
                            paused: !0,
                            onReverseComplete: function(e, t) {
                                t.hover._timeline._reversed && (t.hover._timeline.stop().clear(), delete t.hover._timeline)
                            },
                            onReverseCompleteParams: [e, t]
                        }), ie.resize.transformProperties(e, t.hoverToCSS, t.hoverShouldBeConverted, t.hoverFromCSS), ie.resize.styleProperties(t.hoverToCSS, t.hoverShouldBeConverted), t.hoverFromCSS.transformPerspective = t.transformPerspective.hover * ie.resize.ratio, t.hover._tween = ae.TweenMax.fromTo(e[0], t.hover.durationIn, t.hoverFrom, t.hoverTo), t.hover._timeline.add(t.hover._tween, 0), e.next().is(".ls-layer-link") ? (i = e.next(), a = se.extend(!0, {}, t.hoverFrom, {
                            css: {
                                opacity: 1,
                                color: "transparent",
                                background: "transparent",
                                z: 0
                            }
                        }), s = se.extend(!0, {}, t.hoverTo, {
                            css: {
                                opacity: 1,
                                color: "transparent",
                                background: "transparent",
                                z: 0
                            }
                        }), t.hover._linkTween = ae.TweenMax.fromTo(i[0], t.hover.durationIn, a, s), t.hover._timeline.add(t.hover._linkTween, 0)) : t.hover._linkTween = null, t.hover.alwaysOnTop && (r = {
                            zIndex: 9999
                        }, ie.browser.isSafari && (r.transform = "translateZ(999999px)"), t.hover._timeline.to(t.elements.$outerWrapper[0], t.hover.durationIn, {
                            autoCSS: !1,
                            css: r
                        }, 0)), t.hover.reverseTimeScale = t.hover.durationIn / t.hover.durationOut == 1 ? 1 : t.hover.durationIn / t.hover.durationOut, this.hoverIn(e, t)
                    },
                    mouseEnter: function(e, t) {
                        "1" === e.attr("data-ls-canhover") && (e.attr("data-ls-hovered", 1), t.elements.$wrapper.off("mousemove." + z), t.hover._timeline ? (t.hover._timeline.play().stop().progress(0), this.hoverIn(e, t)) : this.createTimeline(e, t))
                    },
                    mouseLeave: function(e, t) {
                        t.hover._timeline && (t.hover._timeline.stop().progress(1), this.hoverOut(e, t)), e.removeAttr("data-ls-hovered")
                    },
                    mouseMove: function(e, t) {
                        e.attr("data-ls-hovered") || this.mouseEnter(e, t)
                    },
                    hoverIn: function(e, t) {
                        t.hover._tween.updateTo({
                            ease: t.hover.easeIn
                        }), t.hover._linkTween && t.hover._linkTween.updateTo({
                            ease: t.hover.easeIn
                        }), t.hover._timeline.play().timeScale(1)
                    },
                    hoverOut: function(e, t) {
                        t.hover._tween.updateTo({
                            ease: t.hover.easeOut
                        }), t.hover._linkTween && t.hover._linkTween.updateTo({
                            ease: t.hover.easeOut
                        }), t.hover._timeline.reverse().timeScale(t.hover.reverseTimeScale)
                    }
                }, parallax: {
                    defaultProperties: {
                        type: "2d",
                        event: "cursor",
                        path: "circle",
                        direction: "clockwise",
                        duration: 5,
                        count: -1,
                        startAt: "slidestart",
                        x: !0,
                        y: !0,
                        rotation: 10,
                        distance: 10,
                        durationMove: 1.5,
                        durationLeave: 1.2,
                        transformOrigin: "50% 50% 0",
                        transformPerspective: 500
                    },
                    defaults: {
                        scrollModifier: 5,
                        centerLayers: "center",
                        centerDegree: 40,
                        sensitive: 10
                    },
                    state: {
                        enabled: !1,
                        ready: !1
                    },
                    wrappers: {
                        cursor: {
                            $2d: se(),
                            $3d: se()
                        },
                        scroll: {
                            $2d: se(),
                            $3d: se()
                        },
                        auto: {
                            $2d: se(),
                            $3d: se()
                        }
                    },
                    init: function() {
                        var t = this;
                        _.on("mouseenter." + z, function() {
                            (t.wrappers.cursor.$2d.length || t.wrappers.cursor.$3d.length) && t.calculateTransformProperties()
                        }), _.on("mousemove." + z, function(e) {
                            (t.wrappers.cursor.$2d.length || t.wrappers.cursor.$3d.length) && t.mouseMove(e)
                        }), _.on("mouseleave." + z, function() {
                            (t.wrappers.cursor.$2d.length || t.wrappers.cursor.$3d.length) && t.reset()
                        }), ie.device.isMobile && ie.device.supportOrientation && (se(window).on("deviceorientation." + z, function() {
                            t.state.ready && t.deviceTurn(event)
                        }), se(window).on("orientationchange." + z, function() {
                            t.calculateTransformProperties()
                        })), se(window).on("scroll.parallax" + z + " touchmove.parallax" + z, function() {
                            (t.wrappers.scroll.$2d.length || t.wrappers.scroll.$3d.length) && t.scroll()
                        }), t.defaults.scrollModifier *= ie.o.parallaxScrollReverse ? -1 : 1
                    },
                    addLayer: function(e, t, i, a) {
                        switch (this.state.enabled || (ie.functions.setStates(this, {
                            enabled: !0
                        }), this.init()), se.extend(!0, t, this.defaultProperties, ie.slides[a].parallax, i.parallax), i.transformPerspective.parallax ? t.transformPerspective = i.transformPerspective.parallax : i.transformPerspective.parallax = t.transformPerspective, t.event.match(/(cursor|scroll|auto)/) || (t.event = "cursor"), t.path.match(/(circle|oval-h|oval-v|infinity|linear-h|linear-v)/) || (t.path = "circle"), t.direction.match(/(clockwise|counterclockwise)/) || (t.direction = "clockwise"), t.type.match(/(2d,3d)/) && (t.type = "2d"), (i.parallax = t).axis) {
                            case "none":
                                t.x = !1, t.y = !1;
                                break;
                            case "x":
                                t.y = !1;
                                break;
                            case "y":
                                t.x = !1
                        }
                        this.wrappers[t.event]["$" + t.type] = this.wrappers[t.event]["$" + t.type].add(e)
                    },
                    addShadow: function() {
                        var e, t, i, a = ie.gui.shadow.$element,
                            s = ie.slides.current && ie.slides.current.parallax ? ie.slides.current.index : ie.slides.next.index;
                        ie.slides[s].data.$background && ie.slides[s].data.$background.data(ie.defaults.init.dataKey).parallax.enabled && ie.slides[s].data.overflow && "hidden" !== ie.slides[s].data.overflow && (e = "50% -" + .25 * ie.slider.height + "px 0", i = void 0 !== (t = ie.slides[s].data.$background.data(ie.defaults.init.dataKey).parallax).rotation ? 2 * t.rotation : void 0 !== ie.slides[s].parallax.rotation ? 2 * ie.slides[s].parallax.rotation : 2 * this.defaultProperties.rotation, a.data(ie.defaults.init.dataKey, {
                            parallax: se.extend(!0, {}, this.defaultProperties, ie.slides[s].parallax, {
                                level: t.level,
                                transformOrigin: e,
                                rotation: i
                            })
                        }), a.attr("data-ls-parallax", "active"), ae.TweenMax.set(a[0], {
                            transformOrigin: e,
                            transformPerspective: a.data(ie.defaults.init.dataKey).parallax.transformPerspective * ie.resize.ratio
                        }), "3d" === ie.slides[s].parallax.type || "3d" === t.type ? this.wrappers.cursor.$3d = this.wrappers.cursor.$3d.add(a) : this.wrappers.cursor.$2d = this.wrappers.cursor.$2d.add(a)), this.shadowIsChecked = !0
                    },
                    removeShadow: function() {
                        var e = ie.gui.shadow.$element;
                        this.wrappers.cursor.$2d = this.wrappers.cursor.$2d.not(e), this.wrappers.cursor.$3d = this.wrappers.cursor.$3d.not(e), e.attr("data-ls-parallax", "disabled"), this.shadowIsChecked = !1
                    },
                    calculateTransformProperties: function() {
                        se().add(this.wrappers.cursor.$2d).add(this.wrappers.cursor.$3d).add(this.wrappers.scroll.$2d).add(this.wrappers.scroll.$3d).add(this.wrappers.auto.$2d).add(this.wrappers.auto.$3d).each(function() {
                            var e = se(this).data(ie.defaults.init.dataKey).parallax;
                            ae.TweenMax.set(se(this)[0], {
                                transformOrigin: ie.functions.convert.transformOrigin(e.transformOrigin, se(this), ie.slider.$layersWrapper),
                                transformPerspective: e.transformPerspective * ie.resize.ratio
                            })
                        }), this.transformPropertiesCalculated = !0
                    },
                    deviceTurn: function(e) {
                        var t, i, a;
                        this.transformPropertiesCalculated ? (a = 0 === (t = window.orientation) ? (i = 5 * -parseInt(e.gamma) * this.defaults.sensitive * ie.resize.ratio, 5 * (this.defaults.centerDegree - parseInt(e.beta)) * this.defaults.sensitive * ie.resize.ratio) : 90 === t ? (i = 5 * -parseInt(e.beta) * this.defaults.sensitive * ie.resize.ratio, 5 * (parseInt(e.gamma) + this.defaults.centerDegree) * this.defaults.sensitive * ie.resize.ratio) : (i = 5 * parseInt(e.beta) * this.defaults.sensitive * ie.resize.ratio, 5 * (this.defaults.centerDegree - parseInt(e.gamma)) * this.defaults.sensitive * ie.resize.ratio), this.animate2D(i, a, "cursor"), this.animate3D(i, a, "cursor")) : this.calculateTransformProperties(), ie.slider.state.animatingSlides || this.shadowIsChecked || !ie.gui.shadow.$element || this.addShadow()
                    },
                    trigger: function() {
                        se(window).trigger("scroll.parallax" + z), se(window).trigger("touchmove.parallax" + z)
                    },
                    auto: function() {
                        this.transformPropertiesCalculated || this.calculateTransformProperties()
                    },
                    scroll: function() {
                        var e = (("top" === this.defaults.centerLayers ? ie.device.winScrollTop : ie.device.winScrollTop + (ie.device.viewportHeight - ie.slider.height) / 2) - ie.slider.offsetTop) * ie.resize.ratio * this.defaults.scrollModifier;
                        ie.slider.state.inFullscreen && (e = 0), this.transformPropertiesCalculated || this.calculateTransformProperties(), this.animate2D(0, e, "scroll"), this.animate3D(0, e, "scroll")
                    },
                    mouseMove: function(e) {
                        var t, i, a, s;
                        this.transformPropertiesCalculated ? (ie.slider.state.animatingSlides || this.shadowIsChecked || !ie.gui.shadow.$element || this.addShadow(), t = ie.slider.offsetLeft + ie.slider.width / 2, i = ie.slider.offsetTop + ie.slider.height / 2, a = e.pageX - t, s = e.pageY - i, this.animate2D(a, s, "cursor"), this.animate3D(a, s, "cursor")) : this.calculateTransformProperties()
                    },
                    animate2D: function(s, r, e) {
                        this.wrappers[e].$2d.each(function() {
                            var e, t, i, a = se(this);
                            "active" === a.attr("data-ls-parallax") && (t = (e = a.data(ie.defaults.init.dataKey).parallax).x ? -s * (e.distance / 2e3) * parseInt(e.level) : 0, i = e.y ? -r * (e.distance / 2e3) * parseInt(e.level) : 0, ae.TweenMax.to(a[0], e.durationMove, {
                                x: t,
                                y: i
                            }))
                        })
                    },
                    animate3D: function(o, n, e) {
                        this.wrappers[e].$3d.each(function() {
                            var e, t, i, a, s, r = se(this);
                            "active" === r.attr("data-ls-parallax") && (a = (e = r.data(ie.defaults.init.dataKey).parallax).x ? (i = -o / (4e3 / e.rotation), -o * (e.distance / 2e3) * parseInt(e.level)) : i = 0, s = e.y ? (t = n / (4e3 / e.rotation), -n * (e.distance / 2e3) * parseInt(e.level)) : t = 0, ae.TweenMax.to(r[0], e.durationMove, {
                                rotationX: t,
                                rotationY: i,
                                x: a,
                                y: s
                            }))
                        })
                    },
                    reset: function() {
                        se().add(this.wrappers.cursor.$2d).add(this.wrappers.cursor.$3d).each(function() {
                            var e = se(this);
                            "active" === e.attr("data-ls-parallax") ? ae.TweenMax.to(e[0], se(this).data(ie.defaults.init.dataKey).parallax.durationLeave, {
                                x: 0,
                                y: 0,
                                rotationX: 0,
                                rotationY: 0
                            }) : ae.TweenMax.set(e[0], {
                                x: 0,
                                y: 0,
                                rotationX: 0,
                                rotationY: 0
                            })
                        }), ie.gui.shadow.$element && this.removeShadow(), this.transformPropertiesCalculated = !1
                    }
                }, filters: {
                    createTransition: function(e, t, i, a) {
                        var s, r = new ie.defaults.layer.properties.filter,
                            o = {};
                        for (s in r) switch (t) {
                            case "in":
                                o[s] = [r[s], r[s]], o[s][0] = i.hasOwnProperty(s) ? i[s] : a.hasOwnProperty(s) ? a[s] : r[s], o[s][1] = a.hasOwnProperty(s) ? a[s] : r[s], e.filter.values.afterIn[s] = o[s][1];
                                break;
                            case "hover":
                            case "loop":
                            case "out":
                                o[s] = [], o[s][0] = i.hasOwnProperty(s) ? i[s] : r[s], o[s][1] = a.hasOwnProperty(s) ? a[s] : i.hasOwnProperty(s) && i[s] !== r[s] ? i[s] : r[s], "loop" === t && !0 !== e.loop.yoyo && -1 !== e.loop.count && (e.filter.values.afterLoop[s] = o[s][1]);
                                break;
                            case "bg":
                                o[s] = [r[s], r[s]], i.hasOwnProperty(s) && (o[s][0] = i[s]), a.hasOwnProperty(s) && (o[s][1] = a[s])
                        }
                        return o
                    },
                    convert: function(e) {
                        for (var t, i, a, s = {}, r = /(blur|brightness|contrast|grayscale|hue-rotate|invert|saturate|sepia)/i, o = 0, n = (e = e.split(" ")).length; o < n; o++)(t = (a = e[o].split("("))[0]).match(r) && (i = parseInt(a[1]), s[t] = i);
                        return s
                    },
                    animate: function(e, t) {
                        var i = 100 * e.target[0].p;
                        if ("object" == typeof t) {
                            var a = "";
                            for (var s in t)
                                if ("object" == typeof t[s] && 2 === t[s].length) switch (s) {
                                    case "blur":
                                        a += " blur( " + (t[s][0] < t[s][1] ? t[s][0] + Math.abs(t[s][0] - t[s][1]) / 100 * i : t[s][0] - Math.abs(t[s][0] - t[s][1]) / 100 * i) + "px )";
                                        break;
                                    case "hue-rotate":
                                        a += " hue-rotate( " + (t[s][0] < t[s][1] ? t[s][0] + Math.abs(t[s][0] - t[s][1]) / 100 * i : t[s][0] - Math.abs(t[s][0] - t[s][1]) / 100 * i) + "deg )";
                                        break;
                                    default:
                                        a += " " + s + "( " + (t[s][0] < t[s][1] ? t[s][0] + Math.abs(t[s][0] - t[s][1]) / 100 * i : t[s][0] - Math.abs(t[s][0] - t[s][1]) / 100 * i) + "% )"
                                }
                                ae.TweenMax.set(e.target, {
                                "-webkit-filter": a,
                                filter: a
                            })
                        }
                    }
                }, splitType: {
                    setNodesSequence: function(e, t) {
                        var i = t;
                        if ("desc" == e[1]) i = t.slice(0).reverse();
                        else if ("rand" == e[1]) i = t.slice(0).sort(function() {
                            return .5 - Math.random()
                        });
                        else if ("center" == e[1]) {
                            for (var a = Math.floor(t.length / 2), i = [t[a]], s = 1; s <= a; s++) i.push(t[a - s], t[a + s]);
                            i.length = t.length
                        } else if ("edge" == e[1]) {
                            var r, o = Math.floor(t.length / 2);
                            for (i = [t[0]], r = 1; r <= o; r++) i.push(t[t.length - r], t[r]);
                            i.length = t.length
                        }
                        return i
                    },
                    resetNodes: function(e, t) {
                        se(".char, .word, .line", e).add(t.elements.$wrapper).css({
                            transform: "none",
                            opacity: 1
                        }).each(function() {
                            delete this._gsTransform
                        })
                    },
                    setRandomProperties: function(e, t, i) {
                        for (var a in t) {
                            for (var s = [], r = 0, o = e.textIn.nodes.length; r < o; r++) s[r] = ie.functions.convert.randomProperties(t[a], a);
                            delete i[a], i.cycle[a] = s
                        }
                        t = null
                    }
                }
            },
            media: {
                defaults: {
                    delay: 500,
                    fadeIn: 500,
                    fadeOut: 750
                },
                changeBackgroundVideo: function(e, t) {
                    var i, a, s, r, o;
                    ie.slides.current.index && ie.slides.current.data.$backgroundVideo.length && (a = (i = ie.slides.current.data.$backgroundVideo).data(ie.defaults.init.dataKey).elements.$bgWrapper, t && (i.data(ie.defaults.init.dataKey).mediaProperties.willBePaused = !0, a.fadeOut(ie.transitions.media.defaults.fadeOut, function() {
                        i.trigger("stopBackgroundVideo"), i.data(ie.defaults.init.dataKey).mediaProperties.willBePaused = !1
                    }))), ie.slides.next.data.$backgroundVideo.length && (r = (s = ie.slides.next.data.$backgroundVideo).data(ie.defaults.init.dataKey).elements.$bgWrapper, o = s.data(ie.defaults.init.dataKey).elements.$bgOuterWrapper, ie.device.isMobile && (_.hasClass("ls-device-is-phone") && o.hasClass("ls-hide-on-phone") || _.hasClass("ls-device-is-tablet") && o.hasClass("ls-hide-on-tablet")) || setTimeout(function() {
                        s.trigger("playBackgroundVideo")
                    }, e ? 50 : 0), e || t ? r.fadeIn(ie.transitions.media.defaults.fadeOut) : r.css({
                        display: "block"
                    }), s.data(ie.defaults.init.dataKey).mediaProperties.isPreloaded = !0)
                }
            },
            timers: {
                defaults: {
                    fadeInDuration: .35,
                    reverseDuration: .3
                },
                create: function(e) {
                    this.curNext = e || "next", this.reset(), ie.gui.timers.bar.$element && this.bar.createTransition(), ie.gui.timers.circle.$element && this.circle.createTransition(), ie.gui.timers.slidebar.$element && this.slidebar.createTransition()
                },
                reverse: function() {
                    var e, t;
                    ie.slides.current && ie.slides.current.data && ie.transitions._slideTimeline && (e = ie.transitions._slideTimeline.progress(), t = ie.slides.current.data.duration * e / this.defaults.reverseDuration, ie.gui.timers.bar.$element && this.bar._transition && (ie.transitions._slideTimeline.remove(ie.transitions.timers.bar._transition), this.bar._transition.reverse().timeScale(t)), ie.gui.timers.circle.$element && this.circle._transition && (ie.transitions._slideTimeline.remove(ie.transitions.timers.circle._transition), this.circle._transition.reverse().timeScale(t)), ie.gui.timers.slidebar.$element && this.slidebar._transition && (ie.transitions._slideTimeline.remove(ie.transitions.timers.slidebar._transition), this.slidebar._transition.reverse().timeScale(t)))
                },
                reset: function() {
                    ie.gui.timers.bar.$element && this.bar._transition && this.bar.reset(), ie.gui.timers.circle.$element && this.circle._transition && this.circle.reset(), ie.gui.timers.slidebar.$element && this.slidebar._transition && this.slidebar.reset()
                },
                bar: {
                    reset: function() {
                        this._transition && (this._transition.kill(), this._transition = !1)
                    },
                    createTransition: function() {
                        this._transition = ae.TweenMax.fromTo(ie.gui.timers.bar.$element[0], ie.slides[ie.transitions.curNext].data.duration, {
                            autoCSS: !1,
                            paused: !0,
                            css: {
                                width: 0
                            }
                        }, {
                            autoCSS: !1,
                            css: {},
                            ease: ae.Linear.easeNone,
                            onReverseComplete: function() {
                                ie.transitions.timers.bar._transition = !1
                            },
                            onComplete: function(e) {
                                e.target.style.width = "100%", e.target.style.width = "calc( 100% - " + ie.slider.initial.skinWidth + "px )"
                            },
                            onCompleteParams: ["{self}"],
                            onUpdate: function(e) {
                                e.target.style.width = Math.min(ie.slider.width, ie.slider.width * e.progress()) + "px"
                            },
                            onUpdateParams: ["{self}"]
                        })
                    }
                },
                circle: {
                    reset: function() {
                        this._transition && (ie.gui.timers.circle.$element.stop(!0, !0), this._transition.kill(), this._transition = !1)
                    },
                    createTransition: function() {
                        var e = ie.gui.timers.circle.$element.find(".ls-ct-right .ls-ct-rotate")[0],
                            t = ie.gui.timers.circle.$element.find(".ls-ct-left .ls-ct-rotate")[0],
                            i = ie.slides[ie.transitions.curNext].data.duration;
                        this._transition = new ae.TimelineMax({
                            paused: !0
                        }).fromTo(ie.gui.timers.circle.$element[0], ie.transitions.timers.defaults.fadeInDuration, {
                            autoCSS: !1,
                            immediateRender: !0,
                            css: {
                                opacity: 0,
                                display: "block"
                            }
                        }, {
                            autoCSS: !1,
                            css: {
                                opacity: ie.gui.timers.circle.$element.data("original").opacity
                            }
                        }).fromTo(e, i / 2, {
                            autoCSS: !1,
                            css: {
                                rotation: 0
                            }
                        }, {
                            autoCSS: !1,
                            css: {
                                rotation: 180
                            },
                            ease: ae.Linear.easeNone
                        }, 0).fromTo(t, i / 2, {
                            autoCSS: !1,
                            css: {
                                rotation: 0
                            }
                        }, {
                            autoCSS: !1,
                            css: {
                                rotation: 180
                            },
                            ease: ae.Linear.easeNone
                        }, i / 2)
                    }
                },
                slidebar: {
                    reset: function() {
                        this._transition && (this._transition.kill(), this._transition = !1)
                    },
                    createTransition: function() {
                        var i = this;
                        i._transition = new ae.TimelineMax({
                            paused: !0,
                            onReverseComplete: function() {
                                ie.transitions.timers.slidebar._transition = !1
                            }
                        }), se.each(ie.gui.timers.slidebar.$sliderContainerElement, function(t, e) {
                            i._transition.add(ae.TweenMax.fromTo(ie.gui.timers.slidebar.$sliderContainerElement[t][0], ie.slides[ie.transitions.curNext].data.duration, {
                                autoCSS: !1,
                                css: {
                                    left: 0
                                }
                            }, {
                                autoCSS: !1,
                                css: {},
                                ease: ae.Linear.easeNone,
                                onComplete: function(e) {
                                    e.target.style.left = "calc( 100% - " + ie.gui.timers.slidebar.sliderContainerElementWidth[t] + "px )"
                                },
                                onCompleteParams: ["{self}"],
                                onUpdate: function(e) {
                                    e.target.style.left = (ie.gui.timers.slidebar.containerElementWidth[t] - ie.gui.timers.slidebar.sliderContainerElementWidth[t]) * e.progress() + "px"
                                },
                                onUpdateParams: ["{self}"]
                            }), 0), i._transition.add(ae.TweenMax.fromTo(ie.gui.timers.slidebar.$progressBarElement[t][0], ie.slides[ie.transitions.curNext].data.duration, {
                                autoCSS: !1,
                                css: {
                                    width: 0
                                }
                            }, {
                                autoCSS: !1,
                                css: {},
                                ease: ae.Linear.easeNone,
                                onComplete: function(e) {
                                    e.target.style.width = "100%"
                                },
                                onCompleteParams: ["{self}"],
                                onUpdate: function(e) {
                                    e.target.style.width = ie.gui.timers.slidebar.elementWidth[t] * e.progress() + "px"
                                },
                                onUpdateParams: ["{self}"]
                            }), 0)
                        })
                    }
                }
            }
        }, ie.plugins = {
            load: function() {
                if (ie.o.plugins && 0 !== ie.o.plugins.length) {
                    var e = ie.o.plugins[0],
                        a = "object" == typeof e ? e.namespace : e;
                    if (window._layerSlider.plugins[a]) ie.plugins.init(a, e, !0), ie.plugins.load();
                    else if (ie.browser.usesFileProtocol || "object" != typeof e) ie.browser.usesFileProtocol ? window.console && (console.error(ie.defaults.slider.errorText, "Cannot load plugins on file:// protocol."), console.info("Please include the plugin files manually.")) : window.console && (console.error(ie.defaults.slider.errorText, "Plugin files are missing!"), console.info('Plugin "' + a + '" has been added in slider init options, but the source files are not found on page.')), ie.o.plugins.splice(0, 1), ie.plugins.load();
                    else {
                        if (-1 !== window._layerSlider.pluginsBeingLoaded.indexOf(a)) return void ie.plugins.checkLoaded(a); - 1 === window._layerSlider.pluginsLoaded.indexOf(a) && -1 === window._layerSlider.pluginsNotLoaded.indexOf(a) ? (window._layerSlider.pluginsBeingLoaded.push(a), se.ajax({
                            url: -1 === e.js.indexOf("http://") && -1 === e.js.indexOf("https://") ? (window._layerSlider.pluginsPath ? window._layerSlider.pluginsPath : window._layerSlider.scriptPath + "/../plugins/") + e.js : e.js,
                            dataType: "script",
                            success: function() {
                                ie.plugins.init(e.namespace, e, !0), window._layerSlider.pluginsLoaded.push(a)
                            },
                            error: function(e, t, i) {
                                window.console && (console.error(ie.defaults.slider.errorText, a, "plugin has not been loaded!"), console.error("Additional error info:", i)), window._layerSlider.pluginsNotLoaded.push(a)
                            },
                            complete: function() {
                                window._layerSlider.pluginsBeingLoaded.splice(window._layerSlider.pluginsBeingLoaded.indexOf(a), 1), ie.plugins.load()
                            }
                        })) : (ie[a] || -1 !== window._layerSlider.pluginsNotLoaded.indexOf(a) ? ie.o.plugins.splice(0, 1) : ie.plugins.init(a, e), ie.plugins.load())
                    }
                } else ie.slider.check.initialized()
            },
            init: function(e, t, i) {
                ie.initializedPlugins[e] = new window._layerSlider.plugins[e](ie, _, z, t.settings), window._layerSlider.checkVersions(ie.initializedPlugins[e].pluginData.requiredLSVersion, ie.plugin.version) ? (t.css && i && se('<link rel="stylesheet" href="' + (-1 === t.css.indexOf("http://") && -1 === t.css.indexOf("https://") ? (window._layerSlider.pluginsPath ? window._layerSlider.pluginsPath : window._layerSlider.scriptPath + "/../plugins/") + t.css : t.css) + '">').appendTo("head"), ie.initializedPlugins[e].init && ie.initializedPlugins[e].init()) : window.console && console.error(ie.defaults.slider.errorText, e, "plugin has not been loaded! Required LayerSlider version:", ie.initializedPlugins[e].pluginData.requiredLSVersion, "(you have:", ie.plugin.version + ")"), ie.o.plugins.splice(0, 1)
            },
            checkLoaded: function(e) {
                ie.intervals.pluginLoaded = setInterval(function() {
                    -1 === window._layerSlider.pluginsLoaded.indexOf(e) && -1 === window._layerSlider.pluginsNotLoaded.indexOf(e) || -1 !== window._layerSlider.pluginsBeingLoaded.indexOf(e) || (clearInterval(ie.intervals.pluginLoaded), delete ie.intervals.pluginLoaded, ie.plugins.load())
                }, 100)
            }
        }, ie.slider = {
            shouldResize: !0,
            thumbnails: [],
            state: {
                preloadingImages: !1,
                changingSlides: !1,
                animatingSlides: !1
            },
            isPaused: !1,
            isBusy: function() {
                return this.state.preloadingImages || this.state.changingSlides || this.state.animatingSlides
            },
            load: function() {
                if (!document.body.contains(W)) return !1;
                ie.api.hasEvent("sliderWillLoad") && _.triggerHandler("sliderWillLoad"), ie.slider.set.global()
            },
            set: {
                global: function() {
                    var e, t;
                    ie.originalMarkup = _[0].outerHTML, ie.userInitOptions = ie.functions.convert.properties(ie.functions.convert.oldProperties(a)), ie.meta = {}, ie.o = se.extend(!0, {}, ie.defaults.init.options, ie.userInitOptions), ie.o.forceLayersOutDuration /= 1e3, ie.o.forceLayersOutDuration = 0 < ie.o.forceLayersOutDuration ? ie.o.forceLayersOutDuration : .75, ie.o.sliderFadeInDuration /= 1e3, window.console && !0 !== ie.o.hideWelcomeMessage && !0 !== window._layerSlider.hideWelcomeMessage && (window._layerSlider.hideWelcomeMessage = !0, e = window.console.info ? "info" : "log", t = window.LS_Meta && window.LS_Meta.v ? " | WP Plugin: " + window.LS_Meta.v : "", console[e]("LayerSlider initialized | core: " + ie.plugin.version + "-" + ie.plugin.release + t), console[e]("Find updates and docs @ https://layerslider.kreaturamedia.com/"));
                    var i = {
                        namespace: "debug",
                        js: "debug/layerslider.debug.js",
                        css: "debug/layerslider.debug.css"
                    }; - 1 !== document.location.hash.indexOf("debug") && window.console && (-1 !== document.location.hash.indexOf("url=") && (window._layerSlider.pluginsPath = document.location.hash.split("url=")[1].split("&")[0], i.js = window._layerSlider.pluginsPath + "debug/layerslider.debug.js", i.css = window._layerSlider.pluginsPath + "debug/layerslider.debug.css"), "object" == typeof ie.o.plugins ? ie.o.plugins.push(i) : ie.o.plugins = [i]), (window._layerSlider.currentScript || window._layerSlider.lsScript) && (window._layerSlider.scriptPath = (window._layerSlider.currentScript || window._layerSlider.lsScript).src.replace(/\\/g, "/").replace(/\/[^\/]*$/, "")), "object" == typeof ie.o.plugins ? ie.plugins.load() : ie.slider.check.initialized()
                },
                styles: function() {
                    var e, t, i, a, s, r, o, n, l, d, u, p, c, h, m, f, g, v, y, b, S, w, x = ie.slider,
                        T = _.parent(),
                        C = W.style,
                        k = window.getComputedStyle(W, null),
                        I = parseInt(W.clientWidth),
                        O = parseInt(W.clientHeight),
                        L = parseInt(T.width()),
                        P = parseInt(T.height()),
                        $ = ie.o.layersContainerWidth,
                        B = ie.o.layersContainerHeight,
                        M = ie.o.type.toLowerCase();
                    switch (ie.debugMode && ie.debug.add("group", "sliderInit.style"), ie.o.width ? e = -1 == ie.o.width.indexOf("%") ? parseInt(ie.o.width) : ie.o.width : C.width ? e = -1 == C.width.indexOf("%") ? parseInt(C.width) : C.width : 0 < $ ? (e = $, ie.debugMode && ie.debug.add("warn", "sliderInit.noWidth", $)) : (e = I, ie.debugMode && ie.debug.add("warn", "sliderInit.noWidth2", I)), i = e, ie.o.height ? t = -1 == ie.o.height.indexOf("%") ? parseInt(ie.o.height) : ie.o.height : C.height ? t = -1 == C.height.indexOf("%") ? parseInt(C.height) : C.height : 0 < B ? (t = B, ie.debugMode && ie.debug.add("warn", "sliderInit.noHeight", B)) : (t = O, ie.debugMode && ie.debug.add("warn", "sliderInit.noHeight2", P)), a = t, s = "" !== C.maxWidth ? -1 === C.maxWidth.indexOf("%") ? parseInt(C.maxWidth) : C.maxWidth : 0, void 0 === ie.userInitOptions.type && (0 < $ && 0 < B || "100%" === e && "100%" === t ? M = "fullsize" : $ <= 0 && B <= 0 && (ie.o.responsiveUnder <= 0 || 0 < ie.o.responsiveUnder && ie.o.sliderVersion) ? M = void 0 !== ie.o.responsive && !1 === ie.o.responsive ? "fixedsize" : "responsive" : 0 < ie.o.responsiveUnder && (M = "fullwidth")), M) {
                        case "fullwidth":
                            -1 !== e.indexOf("%") && (ie.debugMode && ie.debug.add("warn", "sliderInit.percWidth", [M, e, I]), e = I), $ <= 0 && ($ = e, ie.debugMode && ie.debug.add("warn", "sliderInit.conWidth", [M, e])), ie.o.responsiveUnder <= 0 && (ie.o.responsiveUnder = $, ie.debugMode && ie.debug.add("warn", "sliderInit.fullwidth", $)), -1 !== t.indexOf("%") && (o = P / (100 / parseInt(t)), ie.debugMode && ie.debug.add("warn", "sliderInit.fullwidth2", [M, t, o]), t = o), B <= 0 && (B = t);
                            break;
                        case "fullsize":
                            -1 !== e.indexOf("%") && (r = 0 < $ ? $ : L, ie.debugMode && ie.debug.add("warn", "sliderInit.fullsize", [M, e, r, L, $]), e = r), $ <= 0 && ($ = e, ie.debugMode && ie.debug.add("warn", "sliderInit.conWidth", [M, e])), -1 !== t.indexOf("%") && (o = 0 < B ? B : se(window).height() / (100 / parseInt(t)), ie.debugMode && ie.debug.add("warn", "sliderInit.fullsize2", [M, t, o, se(window).height(), B]), t = o), B <= 0 && (B = t, ie.debugMode && ie.debug.add("warn", "sliderInit.conHeight", [M, t]));
                            break;
                        case "fixedsize":
                            break;
                        default:
                            ie.userInitOptions.type = ie.o.type = M = "responsive", (ie.o.responsiveUnder = -1) !== e.indexOf("%") && (e = I, ie.debugMode && ie.debug.add("warn", "sliderInit.percWidth", [M, e, I])), -1 !== t.indexOf("%") && (e = O, ie.debugMode && ie.debug.add("warn", "sliderInit.responsive", [M, t, O])), ie.debugMode && 0 < $ && ie.debug.add("warn", "sliderInit.conWidth2", [M, $]), ie.debugMode && 0 < B && ie.debug.add("warn", "sliderInit.conHeight2", [M, B])
                    }
                    _.addClass("ls-container ls-" + M), _.parent().addClass("ls-direction-fix"), ie.o.preventSliderClip && ie.o.fitScreenWidth && ("fullwidth" === M || "fullsize" === M && "fitheight" !== ie.o.fullSizeMode) && _.parents(":not(body, html)").each(function() {
                        se(this).addClass("ls-overflow-visible")
                    }), ie.userInitOptions.slideBGSize || "responsive" !== M || !ie.userInitOptions.hasOwnProperty("sliderVersion") || ie.userInitOptions.sliderVersion || (ie.o.slideBGSize = "auto", ie.debugMode && ie.debug.add("warn", "sliderInit.bgCover", M)), ie.o.slideBGSize = ie.o.slideBGSize.replace("100% 100%", "stretch"), n = 0 < $ ? $ : e, l = 0 < B ? B : t, "auto" === (p = W.style.marginLeft) ? d = "auto" : "" === p ? d = parseInt(k.getPropertyValue("margin-left")) : d = parseInt(W.style.marginLeft), "auto" === (c = W.style.marginRight) ? u = "auto" : "" === c ? u = parseInt(k.getPropertyValue("margin-right")) : u = parseInt(W.style.marginRight), d === u && ("" === p && "" === c && (h = d, u = d = "auto"), _.css({
                        marginLeft: "auto",
                        marginRight: "auto"
                    })), m = "" !== C.paddingLeft ? parseInt(C.paddingLeft) : parseInt(_.css("padding-left")), g = "" !== C.paddingRight ? parseInt(C.paddingRight) : parseInt(_.css("padding-right")), f = "" !== C.paddingTop ? parseInt(C.paddingTop) : parseInt(_.css("padding-top")), v = "" !== C.paddingBottom ? parseInt(C.paddingBottom) : parseInt(_.css("padding-bottom")), y = "" !== C.borderLeftWidth ? parseInt(C.borderLeftWidth) : parseInt(_.css("border-left-width")), S = "" !== C.borderRightWidth ? parseInt(C.borderRightWidth) : parseInt(_.css("border-right-width")), b = "" !== C.borderTopWidth ? parseInt(C.borderTopWidth) : parseInt(_.css("border-top-width")), w = "" !== C.borderBottomWidth ? parseInt(C.borderBottomWidth) : parseInt(_.css("border-bottom-width")), x.initial = {
                        type: M,
                        width: e,
                        height: t,
                        originalWidth: i,
                        originalHeight: a,
                        percW: e / 100,
                        percH: t / 100,
                        layersWidth: $,
                        layersHeight: B,
                        ratio: n / l,
                        maxWidth: s,
                        marginLeft: d,
                        marginRight: u,
                        paddingLeft: m,
                        paddingTop: f,
                        paddingRight: g,
                        paddingBottom: v,
                        borderLeftWidth: y,
                        borderTopWidth: b,
                        borderRightWidth: S,
                        borderBottomWidth: w,
                        skinWidth: m + g + y + S,
                        skinHeight: f + v + b + w
                    }, ie.debugMode && (ie.debug.add("log", "sliderInit.style", [e, t, i, a, $, B, parseInt(n / l * 100) / 100, 0 < s ? s : void 0, [d, u]]), h && ie.debug.add("warn", "sliderInit.margin", h)), se("html").attr("id") ? se("body").attr("id") || se("body").attr("id", "ls-global") : se("html").attr("id", "ls-global"), "static" !== k.getPropertyValue("position") && "absolute" !== k.getPropertyValue("position") && (W.style.position = "relative"), ie.o.insertSelector && _[ie.o.insertMethod](ie.o.insertSelector), ie.slider.$hiddenWrapper = se('<div class="ls-wp-container fitvidsignore ls-hidden" data-layerslider-uid="' + z + '"></div>').addClass(_.attr("class")).prependTo("body"), ie.slider.$innerWrapper = se('<div class="ls-inner"></div>'), ie.slider.$layersWrapper = se('<div class="ls-layers"></div>').appendTo(ie.slider.$innerWrapper), ie.slider.$bgVideosWrapper = se('<div class="ls-background-videos"></div>').appendTo(ie.slider.$layersWrapper), ie.slider.$slideBGWrapper = se('<div class="ls-slide-backgrounds"></div>').appendTo(ie.slider.$layersWrapper), ie.slider.$innerWrapper.appendTo(_), !0 === ie.o.hideOnMobile && ie.device.isMobile ? (_.addClass("ls-forcehide"), _.closest(".ls-wp-fullwidth-container").addClass("ls-forcehide"), ie.o.autoStart = !1) : ie.slider.check.showHide(), ie.o.globalBGImage && ie.slider.$innerWrapper.css({
                        backgroundImage: "url( " + ie.o.globalBGImage + " )",
                        backgroundRepeat: ie.o.globalBGRepeat,
                        backgroundAttachment: ie.o.globalBGAttachment,
                        backgroundSize: ie.o.globalBGSize,
                        backgroundPosition: ie.o.globalBGPosition
                    }), ie.slider.$innerWrapper.css({
                        backgroundColor: ie.o.globalBGColor
                    }), "transparent" == ie.o.globalBGColor && !1 === ie.o.globalBGImage && ie.slider.$innerWrapper.css({
                        background: "none transparent"
                    })
                },
                options: function() {
                    var t, i, a, s, r;
                    se("html").find('meta[content*="WordPress"]').length && (ie.meta.wpVersion = se("html").find('meta[content*="WordPress"]').attr("content").split("WordPress")[1]), window.LS_Meta && window.LS_Meta.v ? ie.meta.lswpVersion = window.LS_Meta.v : se("html").find('script[src*="layerslider"]').length && -1 != se("html").find('script[src*="layerslider"]').attr("src").indexOf("?") && (ie.meta.lswpVersion = se("html").find('script[src*="layerslider"]').attr("src").split("?")[1].split("=")[1]), "undefined" != typeof layerSliderTransitions && (ie.t = se.extend({}, layerSliderTransitions)), "undefined" != typeof layerSliderCustomTransitions && (ie.ct = se.extend({}, layerSliderCustomTransitions)), ie.debugMode && ("undefined" != typeof layerCustomSliderTransitions ? (ie.debug.add("log", "sliderInit.customTransitions", !1), "undefined" == typeof layerSliderTransitions && ie.debug.add("warn", "sliderInit.slideTransitions")) : "undefined" == typeof layerSliderTransitions && ie.debug.add("warn", "sliderInit.noSlideTransitions")), "number" == typeof ie.o.parallaxCenterDegree && (ie.transitions.layers.parallax.defaults.centerDegree = ie.o.parallaxCenterDegree), "number" == typeof ie.o.parallaxSensitivity && (ie.transitions.layers.parallax.defaults.sensitive = ie.o.parallaxSensitivity), ie.o.parallaxCenterLayers && (ie.transitions.layers.parallax.defaults.centerLayers = ie.o.parallaxCenterLayers), ie.o.playByScroll && (ie.o.cycles = -1, ie.o.startInViewport = !0, ie.o.pauseOnHover = !1, ie.o.autoStart = !1), ie.device.isMobile && (ie.o.pauseOnHover = !1), se(window).on("hashchange." + z, function() {
                        document.location.hash && ie.slides.deeplink(document.location.hash)
                    }), ie.o.startInViewport && (ie.slider.positionToViewport = ie.device.winScrollTop > ie.slider.offsetTop - (ie.device.viewportHeight - ie.slider.height) / 2 ? "under" : "over", ie.o.playByScroll ? (t = !0, i = 4 * ie.o.playByScrollSpeed, ie.device.scroll.timeout = 250, ie.transitions.layers.timeline.timeScaleModifier = 0, se(document).on("wheel." + z + " touchmove." + z, function(e) {
                        ie.device.isMobile ? (a = e.originalEvent.touches[0].clientY, s < a ? ie.device.scroll.direction = "up" : a < s && (ie.device.scroll.direction = "down"), r = s - a, s = a) : (0 < e.originalEvent.deltaY ? ie.device.scroll.direction = "down" : ie.device.scroll.direction = "up", r = e.originalEvent.deltaY), 0 !== Math.abs(r) && (ie.device.scroll.lastDirection ? ie.device.scroll.lastDirection !== ie.device.scroll.direction && (ie.device.scroll.lastDirection = ie.device.scroll.direction, ie.transitions.layers.timeline.timeScaleModifier = 0) : ie.device.scroll.lastDirection = ie.device.scroll.direction, "inside" === ie.slider.positionToViewport && (ie.resize.viewport(), 0 <= r ? ie.transitions.layers.timeline.scrollForward() : ie.transitions.layers.timeline.scrollBackwards(), t && (clearTimeout(ie.timeouts.scroll), t = !1, ie.transitions.layers.timeline.timeScaleModifier = ie.transitions.layers.timeline.timeScaleModifier < i ? ie.transitions.layers.timeline.timeScaleModifier + .25 : i, ie.timeouts.scroll2 = setTimeout(function() {
                            delete ie.timeouts.scroll2, t = !0, ie.device.scroll.timeout = 50 < ie.device.scroll.timeout ? ie.device.scroll.timeout - 50 : 50
                        }, ie.device.scroll.timeout))), ie.slider.check.positionToViewport())
                    })) : se(window).on("scroll." + z, function() {
                        ie.slider.check.positionToViewport()
                    }), ie.timeouts.checkPosition = setTimeout(function() {
                        ie.slider.check.positionToViewport()
                    }, 25)), ie.slider.canShow = !0
                },
                attributes: function() {
                    _.attr("data-current-slide", ie.slides.current.index)
                }
            },
            check: {
                initialized: function() {
                    ie.debugMode && ie.debug.add("log", "sliderInit.info", [ie.plugin.version, ie.plugin.releaseDate, ie.userInitOptions.sliderVersion || "n/a or slider version is pre 6.0.0", _.attr("id"), z, se.fn.jquery, ie.meta.lswpVersion, ie.meta.wpVersion], !0), ie.slider.initialized || (ie.slider.initialized = !0, this.skins())
                },
                skins: function() {
                    ie.o.skin && "" !== ie.o.skin && ie.o.skinsPath && "" !== ie.o.skinsPath ? ie.gui.skin.load() : ie.slider.init()
                },
                showHide: function() {
                    ie.device.isMobile && !1 !== ie.o.hideOnMobile || (ie.device.viewportWidth < ie.o.hideUnder || ie.device.viewportWidth > ie.o.hideOver && 0 < ie.o.hideOver ? ie.slider.hide() : ie.slider.show())
                },
                positionToViewport: function() {
                    var e, t, i;
                    delete ie.timeouts.checkPosition, ie.o.playByScroll ? ie.device.scroll.direction && (e = "down" === ie.device.scroll.direction ? ie.device.winScrollTop : ie.slider.offsetTop - (ie.device.viewportHeight - ie.slider.height) / 2, (("down" === ie.device.scroll.direction ? ie.slider.offsetTop - (ie.device.viewportHeight - ie.slider.height) / 2 : ie.device.winScrollTop) < e && ("up" === ie.device.scroll.direction && "under" === ie.slider.positionToViewport || "down" === ie.device.scroll.direction && "over" === ie.slider.positionToViewport) || ie.device.docHeight <= ie.device.viewportHeight || ie.slider.height < ie.device.viewportHeight && ("up" === ie.device.scroll.direction && ie.device.winScrollTop <= 0 && ie.slider.offsetTop + ie.slider.height / 2 < ie.device.viewportHeight / 2 || "down" === ie.device.scroll.direction && ie.device.winScrollTop >= ie.device.docHeight - ie.device.viewportHeight && ie.slider.offsetTop + ie.slider.height / 2 > ie.device.winScrollTop + ie.device.viewportHeight / 2)) && (ie.slider.positionToViewport = "inside", ie.resize.viewport(), ie.device.scroll.disable())) : (t = ie.device.winScrollTop + ie.device.viewportHeight / 2, i = ie.slider.offsetTop + ie.slider.height / 2, (Math.abs(t - i) < ie.device.viewportHeight / 2 || ie.device.winScrollTop < ie.slider.offsetTop && ie.device.winScrollTop + ie.device.viewportHeight > ie.slider.offsetTop + ie.slider.height) && (ie.slider.positionToViewport = "inside", se(window).off("scroll." + z), ie.debugMode && ie.debug.add("log", "slideshow.inviewport", !1), ie.transitions._slideTimeline && ie.transitions.layers.timeline.play()))
                }
            },
            init: function() {
                clearTimeout(ie.timeouts.skinLoad1), clearTimeout(ie.timeouts.skinLoad2), clearTimeout(ie.timeouts.skinLoad3), clearTimeout(ie.timeouts.skinLoad4), ie.device.setBasicEvents(), ie.slider.set.styles(), ie.slider.set.options(), ie.slides.init(), ie.device.fullscreen.set(), ie.media.init(), ie.gui.timers.init(), ie.gui.loadingIndicator.init(), ie.preload.init(), ie.gui.shadow.init(), ie.navigation.init(), ie.slideshow.init(), ie.slides.set.firstSlide(), ie.gui.navigation.init(), ie.gui.media.init(), ie.resize.slider(), ie.yourLogo.init(), se(window).on("resize." + z, function() {
                    ie.slider.check.showHide(), "inside" === ie.slider.positionToViewport && ie.o.playByScroll && ie.resize.viewport(), ie.slider.shouldResize && ie.resize.all()
                }), ie.debugMode && (se(window).off(".debug" + z), se(window).on("resize.debug" + z, function() {
                    ie.debug.add("log", "resize.window", ie.device.viewportWidth, !0)
                })), se(window).on("orientationchange." + z, function() {
                    ie.device.getDimensions(), ie.resize.all()
                }), ie.device.getDimensions(), se(window).trigger("resize." + z), se(window).trigger("orientationchange." + z), ie.api.hasEvent("sliderDidLoad") && _.triggerHandler("sliderDidLoad", ie.api.eventData()), ie.functions.setStates(ie.slider, {
                    isLoaded: !0
                }), ie.slider.state.shouldBeDestroyed ? ie.api.methods("destroy") : ((-1 < ie.o.hideOver || -1 < ie.o.hideUnder || "fullsize" == ie.slider.initial.type && "hero" == ie.o.fullSizeMode) && !ie.intervals.checkSliderOffset && (ie.intervals.checkSliderOffset = setInterval(function() {
                    ie.device.checkSliderOffset()
                }, 100)), ie.slideshow.changeTo(ie.slides.first.index))
            },
            hide: function() {
                _.addClass("ls-forcehide"), _.closest(".ls-wp-fullwidth-container").addClass("ls-forcehide"), _.closest(".ls-popup").addClass("ls-forcehide"), _.closest(".ls-popup").prev(".ls-popup-overlay").addClass("ls-forcehide")
            },
            show: function() {
                _.removeClass("ls-forcehide"), _.closest(".ls-wp-fullwidth-container").removeClass("ls-forcehide"), _.closest(".ls-popup").removeClass("ls-forcehide"), _.closest(".ls-popup").prev(".ls-popup-overlay").removeClass("ls-forcehide")
            }
        }, ie.functions = {
            convert: {
                transformOrigin: function(e, t, i) {
                    for (var a = (n = se.trim(e)).split(" "), s = "", r = ["Left", "Top"], o = [ie.slider.width, ie.slider.height], n = n.replace("sliderleft", "0").replace("sliderright", "100%").replace("slidercenter", "50%").replace("slidermiddle", "50%").replace("slidertop", "0").replace("sliderbottom", "100%").replace("left", "0").replace("right", "100%").replace("center", "50%").replace("middle", "50%").replace("top", "0").replace("bottom", "100%").split(" "), l = 0; l < n.length; l++)
                        if (-1 !== a[l].indexOf("slider")) {
                            ie.transitions.layers.timeline.shouldRestart = !0;
                            var d = t.data(ie.defaults.init.dataKey).elements.$wrapper[0].style;
                            s += l < 2 ? o[l] / (100 / parseInt(n[l])) - parseInt(d[r[l].toLowerCase()]) - parseInt(d["margin" + r[l]]) + "px " : "0px"
                        } else {
                            if (l < 2 && t && i) switch (l) {
                                case 0:
                                    o = i.width();
                                    break;
                                case 1:
                                    o = i.height()
                            } - 1 !== n[l].indexOf("%") ? s += l < 2 && t && i ? o / (100 / parseInt(n[l])) + "px " : n[l] + " " : s += parseInt(n[l]) * ie.resize.ratio + "px "
                        }
                    return se.trim(s)
                },
                easing: function(e, t) {
                    return "string" != typeof e ? e : (-1 !== (e = e.toLowerCase()).indexOf("swing") || -1 !== e.indexOf("linear") ? i = ae.Linear.easeNone : (a = e.match(/(easeinout|easein|easeout)(.+)/)[2], s = ae[a.charAt(0).toUpperCase() + a.slice(1)], -1 !== e.indexOf("easeinout") ? i = s.easeInOut : -1 !== e.indexOf("easeout") ? i = t ? s.easeIn : s.easeOut : -1 !== e.indexOf("easein") && (i = t ? s.easeOut : s.easeIn)), i);
                    var i, a, s
                },
                transition: function(e, t, i, a) {
                    var s = se.extend({}, e);
                    return se.each({
                        rotate: "rotation",
                        rotateX: "rotationX",
                        rotateY: "rotationY"
                    }, function(e, t) {
                        e in s && (s[t] = s[e], delete s[e])
                    }), "after" === i ? s.scaleX = s.scaleY = s.scaleZ = 1 : s.scale3d !== a && (s.scaleX = s.scaleY = s.scaleZ = s.scale3d, delete s.scale3d), s.delay && (s.delay = "after" === i ? s.delay / 1e3 : s.delay), void 0 === t && (t = "easeInOutQuart"), s.ease = ie.functions.convert.easing(t), s
                },
                randomProperties: function(e, t) {
                    if (e && -1 !== e.indexOf("(") && -1 !== e.indexOf(",") && -1 !== e.indexOf(")")) {
                        var i = e.split("(")[1].split(")")[0].split(","),
                            a = 1;
                        return i[0] = parseFloat(i[0]), i[1] = parseFloat(i[1]), -1 !== t.indexOf("scale") && (a = 100, i[0] *= a, i[1] *= a), Math.floor(Math.random() * (i[1] - i[0] + 1) + i[0]) / a
                    }
                    return e
                },
                properties: function(e, t) {
                    if ("string" == typeof e) return ie.functions.convert._properties(e, t);
                    if ("object" != typeof e) return e;
                    for (var i in e) e[i] = ie.functions.convert._properties(e[i], t);
                    return e
                },
                _properties: function(e, t) {
                    if ("enable" == e || "enabled" == e || "true" == e) return !0;
                    if ("disable" == e || "disabled" == e || "false" == e) return !1;
                    if ("string" != typeof e || -1 === e.indexOf(ie.defaults.init.lsDataArraySplitChar)) return t ? "" + parseInt(e) == "NaN" ? 0 : parseInt(e) : se.isNumeric(e) ? parseFloat(e) : e;
                    for (var i = e.split(ie.defaults.init.lsDataArraySplitChar), a = [], s = 0; s < i.length; s++) a[s] = se.isNumeric(i[s]) ? parseFloat(se.trim(i[s])) : se.trim(i[s]);
                    return a
                },
                oldProperties: function(i) {
                    return se.each({
                        firstLayer: "firstSlide",
                        loops: "cycles",
                        forceLoopNum: "forceCycles",
                        layersContainer: "layersContainerWidth",
                        sublayerContainer: "layersContainerWidth",
                        randomSlideshow: "shuffleSlideshow"
                    }, function(e, t) {
                        e in i && (i[t] = i[e], delete i[e])
                    }), i
                }
            },
            getSliderClosestParentElementWidthNumericValueOfProperty: function(e) {
                for (var t, i = _.parents().not(".ls-fullscreen-wrapper"), a = i.length, s = 100, r = 0; r < a; r++)
                    if ("auto" !== (t = window.getComputedStyle(i[r]).getPropertyValue(e))) {
                        if (-1 !== t.indexOf("px")) return ie.slider.$parentWithNumericWidthValue = se(i[r]), se(i[r]); - 1 !== t.indexOf("%") && (s = s / 100 * parseInt(t), ie.slider.$parentWithNumericWidthValuePercent = s)
                    }
            },
            sortArray: function(e, t, i) {
                var a = [];
                if ("forward" == i)
                    for (var s = 0; s < e; s++)
                        for (var r = 0; r < t; r++) a.push(s + r * e);
                else
                    for (var o = e - 1; - 1 < o; o--)
                        for (var n = t - 1; - 1 < n; n--) a.push(o + n * e);
                return a
            },
            shuffleArray: function(e) {
                for (var t, i, a = e.length; 0 !== a;) i = Math.floor(Math.random() * a), t = e[--a], e[a] = e[i], e[i] = t;
                return e
            },
            countProp: function(e) {
                var t = 0;
                for (var i in e) e.hasOwnProperty(i) && ++t;
                return t
            },
            getURL: function(e) {
                return e[0].currentSrc ? e[0].currentSrc : e.data("src") ? e.data("src") : e.attr("src")
            },
            getALT: function(e) {
                return !!e.attr("alt") && e.attr("alt")
            },
            setStates: function(e, t, i) {
                if (e && e.state) {
                    var a = ie.slideshow.isPaused();
                    if (i) e.state[t] = i;
                    else
                        for (var s in t) e.state[s] = t[s];
                    var r = ie.slideshow.isPaused();
                    e == ie.slideshow && (ie.api.hasEvent("slideshowStateDidChange") && _.triggerHandler("slideshowStateDidChange", ie.api.eventData()), r != a && (r ? ie.api.hasEvent("slideshowDidPause") && _.triggerHandler("slideshowDidPause", ie.api.eventData()) : ie.api.hasEvent("slideshowDidResume") && _.triggerHandler("slideshowDidResume", ie.api.eventData())))
                }
            },
            clearTimers: function() {
                for (var e in ie.timeouts) clearTimeout(ie.timeouts[e]), delete ie.timeouts[e];
                for (var t in ie.intervals) clearInterval(ie.intervals[t]), delete ie.intervals[t]
            },
            clearTimelines: function() {
                ie.transitions._slideTimeline && (ie.transitions._slideTimeline.pause().clear().kill(), delete ie.transitions._slideTimeline), ie.transitions._forceLayersOut && (ie.transitions._forceLayersOut.kill(), delete ie.transitions._forceLayersOut), ie.transitions._slideTransition && (ie.transitions._slideTransition.pause().clear().kill(), delete ie.transitions._slideTransition), ae.TweenMax.killTweensOf(_.find(".ls-bg, .ls-layer, .ls-wrapper, .ls-curtile, .ls-nexttile").get())
            },
            resetSlideTimelines: function() {
                ie.transitions._slideTimeline && (ie.transitions._slideTimeline.pause().progress(0).clear().kill(), delete ie.transitions._slideTimeline), ie.transitions._forceLayersOut && (ie.transitions._forceLayersOut.pause().progress(1).clear().kill(), delete ie.transitions._forceLayersOut), _.find(".ls-layer:not(.ls-bg-video)").each(function() {
                    var e = se(this).data(ie.defaults.init.dataKey);
                    e.loop._timeline && (e.loop._timeline.stop().clear(), delete e.loop._timeline, ae.TweenMax.set(e.elements.$loopWrapper[0], e.reset.loopWrapperOnSlideChange)), ae.TweenMax.set(e.elements.$wrapper[0], e.reset.wrapperOnSlideChange)
                })
            },
            clearEvents: function() {
                se(window).add("body").add(_).add(_.find("*")).add("." + z).off("." + z + " .debug" + z + " .parallax" + z + " .setter" + z), _.off()
            }
        }, ie.device = {
            $overflowWrapper: se("body").length ? se("body") : se("html"),
            isMobile: !!navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry|BB10|webOS|Windows Phone|mobi|opera mini|nexus 7)/i),
            supportOrientation: !!window.DeviceOrientationEvent,
            scroll: {
                keys: [32, 33, 34, 35, 36, 37, 38, 39, 40],
                disable: function() {
                    window.addEventListener("scroll", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.addEventListener("wheel", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.addEventListener("mousewheel", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.addEventListener("touchmove", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.addEventListener("keydown", this.preventDefaultForScrollKeys, {
                        capture: !0
                    })
                },
                enable: function() {
                    window.removeEventListener("scroll", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.removeEventListener("wheel", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.removeEventListener("mousewheel", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.removeEventListener("touchmove", this.preventDefault, {
                        passive: !1,
                        capture: !0
                    }), window.removeEventListener("keydown", this.preventDefaultForScrollKeys, {
                        capture: !0
                    })
                },
                preventDefault: function(e) {
                    (e = e || window.event).preventDefault && e.preventDefault(), e.returnValue = !1
                },
                preventDefaultForScrollKeys: function(e) {
                    if (-1 !== ie.device.scroll.keys.indexOf(e.keyCode)) return ie.device.scroll.preventDefault(e), !1
                }
            },
            removeSelection: function() {
                window.getSelection ? window.getSelection().empty ? window.getSelection().empty() : window.getSelection().removeAllRanges && window.getSelection().removeAllRanges() : document.selection && document.selection.empty()
            },
            fullscreen: {
                enter: function() {
                    "fullsize" == ie.slider.initial.type && "hero" == ie.o.fullSizeMode && (ie.slider.heroTop = ie.slider.offsetTop), ie.functions.setStates(ie.slider, {
                        inFullscreen: !0
                    }), se("body, html").addClass("ls-fullscreen"), ie.slider.fullscreenWrapper.requestFullscreen(), _.trigger("mouseleave"), ie.device.removeSelection()
                },
                exit: function() {
                    ie.functions.setStates(ie.slider, {
                        inFullscreen: !1
                    }), ie.resize.all(), se("body, html").removeClass("ls-fullscreen"), ie.device.removeSelection()
                },
                toggle: function() {
                    ie.device.fullscreen.element() ? (ie.device.fullscreen.exit(), document.exitFullscreen()) : ie.device.fullscreen.enter()
                },
                set: function() {
                    ie.o.allowFullscreen && (document.fullscreenEnabled || document.webkitFullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled) && (_.wrap('<div class="ls-fullscreen-wrapper"></div>'), ie.slider.$fullscreenWrapper = _.closest(".ls-fullscreen-wrapper"), ie.slider.fullscreenWrapper = ie.slider.$fullscreenWrapper[0], ie.slider.fullscreenWrapper.requestFullscreen = ie.slider.fullscreenWrapper.requestFullscreen || ie.slider.fullscreenWrapper.webkitRequestFullscreen || ie.slider.fullscreenWrapper.mozRequestFullScreen || ie.slider.fullscreenWrapper.msRequestFullscreen, document.exitFullscreen = document.exitFullscreen || document.webkitExitFullscreen || document.mozCancelFullScreen || document.msExitFullscreen, se(document).on("fullscreenchange." + z + " webkitfullscreenchange." + z + " mozfullscreenchange." + z + " msfullscreenchange." + z, function() {
                        ie.device.fullscreen.element() || ie.device.fullscreen.exit()
                    }), ie.slider.$fullscreenWrapper.on("dblclick." + z, function() {
                        ie.device.fullscreen.toggle()
                    }))
                },
                element: function() {
                    return document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement
                }
            },
            getDimensions: function() {
                this.width = screen.width, this.height = screen.height, this.viewportWidth = se(window).width(), this.viewportHeight = se(window).height(), this.docWidth = se(document).width(), this.docHeight = se(document).height(), this.winScrollTop = se(window).scrollTop(), this.winScrollLeft = se(window).scrollLeft(), this.ratio = this.width / this.height, this.checkSliderOffset()
            },
            checkSliderOffset: function() {
                "none" !== _.css("display") && (ie.slider.offsetTopOld = ie.slider.offsetTop ? ie.slider.offsetTop : Math.round(_.offset().top), ie.slider.offsetLeftOld = ie.slider.offsetLeft ? ie.slider.offsetLeft : Math.round(_.offset().left), ie.slider.offsetTop = Math.round(_.offset().top), ie.slider.offsetLeft = Math.round(_.offset().left), ie.slider.offsetTopOld === ie.slider.offsetTop && ie.slider.offsetLeftOld === ie.slider.offsetLeft || (ie.resize.all(), ie.slider.check.positionToViewport(), se(window).trigger("scroll")))
            },
            setBasicEvents: function() {
                var t, i = this;
                se(window).on("resize.setter" + z, function() {
                    i.viewportWidth = se(window).width(), i.viewportHeight = se(window).height(), i.ratio = i.width / i.height, i.checkSliderOffset()
                }), se(window).on("scroll.setter" + z, function() {
                    i.winScrollTop = se(window).scrollTop(), i.winScrollLeft = se(window).scrollLeft(), i.checkSliderOffset()
                }), se(window).on("touchmove", function(e) {
                    i.winScrollTop = window.pageYOffset, i.winScrollLeft = window.pageXOffset, 1 == (t = e.touches ? e.touches : e.originalEvent.touches).length && (i.touchX = t[0].clientX)
                })
            }
        }, ie.api = {
            hasEvent: function(e, t) {
                var i = se._data(t || W, "events");
                return !(!i || !i[e])
            },
            methods: function(e, t, i, a) {
                if (!ie.slider.isBusy())
                    if ("number" == typeof e) 0 < e && e < ie.slides.count + 1 && e != ie.slides.current.index && ie.slideshow.changeTo(e, !0, !0);
                    else switch (e) {
                        case "touchPrev":
                            ie.device.touchPrev = !0;
                        case "previousSlide":
                        case "prev":
                            ie.navigation.prev();
                            break;
                        case "touchNext":
                            ie.device.touchNext = !0;
                        case "nextSlide":
                        case "next":
                            ie.navigation.next();
                            break;
                        case "startSlideshow":
                        case "start":
                            ie.navigation.start()
                    }
                    switch (e) {
                        case "openPopup":
                            ie.initializedPlugins.popup && (t && se.isNumeric(t) ? _.layerSlider("fastChangeTo", t, function() {
                                ie.initializedPlugins.popup.events.show()
                            }) : ie.initializedPlugins.popup.events.show());
                            break;
                        case "fastChangeTo":
                            t && se.isNumeric(t) && (ie.slides.current.index !== t ? (ie.slideshow.forceFastChange = !0, i && "function" == typeof i && (ie.slideshow.forceFastChangeCallback = i), ie.slideshow.changeTo(t, !0, !0)) : i && i());
                            break;
                        case "closePopup":
                            ie.initializedPlugins.popup && ie.initializedPlugins.popup.events.hide();
                            break;
                        case "updateLayerData":
                            t && ie.layers.update.data(t, i, a);
                            break;
                        case "redrawSlider":
                        case "redraw":
                            ie.resize.all();
                            break;
                        case "replaySlide":
                        case "replay":
                            ie.transitions._slideTimeline && (ie.transitions._slideTimeline.progress(0), ie.transitions._slideTimeline.play());
                            break;
                        case "reverseSlide":
                        case "reverse":
                            ie.transitions._slideTimeline && (ie.transitions._slideTimeline.reversed() ? ie.transitions._slideTimeline.play() : ie.transitions._slideTimeline.reverse(), t && (ie.transitions.layers.timeline.shouldReplay = !0));
                            break;
                        case "unmute":
                        case "unmuteMedia":
                            ie.media.unmute.multipleMediaElements();
                            break;
                        case "stopSlideshow":
                        case "stop":
                            ie.navigation.stop();
                            break;
                        case "pauseSlider":
                        case "pause":
                            ie.transitions._slideTimeline && ie.transitions._slideTimeline.stop(), ie.transitions._slideTransition && ie.transitions._slideTransition.stop(), ie.media.functions.stop(!1);
                            break;
                        case "resumePopup":
                            ie.layers.get("active").each(function() {
                                ie.media.functions.playIfAllowed(se(this))
                            });
                        case "resumeSlider":
                        case "resume":
                            ie.transitions._slideTimeline && (ie.transitions._slideTimeline.timeScale() < .001 && ie.transitions.layers.timeline.resume(), ie.transitions._slideTimeline.play()), ie.transitions._slideTransition && ie.transitions._slideTransition.play();
                            break;
                        case "playMedia":
                            ie.media.functions.playActiveMedia();
                            break;
                        case "pauseMedia":
                            ie.media.functions.pauseActiveMedia();
                            break;
                        case "toggleSlider":
                        case "toggle":
                            ie.slider.isPaused ? (_.layerSlider("resume"), ie.slider.isPaused = !1) : (_.layerSlider("pause"), ie.slider.isPaused = !0);
                            break;
                        case "reset":
                        case "resetSlider":
                            break;
                        case "resetSlide":
                        case "resetCurrentSlide":
                            ie.transitions._slideTimeline && (ie.transitions._slideTimeline.progress(0), ie.transitions._slideTimeline.stop()), ie.media.functions.stop(!0);
                            break;
                        case "destroy":
                        case "kill":
                            if (ie.slider.state.isLoaded) {
                                if (ie.functions.clearTimers(), ie.functions.clearTimelines(), ie.layers.$all.removeData(), ie.api.hasEvent("sliderDidDestroy") && _.triggerHandler("sliderDidDestroy"), ie.slider.state.sholudBeRemoved || t) {
                                    if (ie.slider.$hiddenWrapper.remove(), ie.gui.timers.slidebar.$containerElement)
                                        for (var s = 0; s < ie.gui.timers.slidebar.$containerElement.length; s++) ie.gui.timers.slidebar.$containerElement[s] instanceof jQuery && ie.gui.timers.slidebar.$containerElement[s].remove();
                                    ie.api.hasEvent("sliderDidRemove") && _.triggerHandler("sliderDidRemove");
                                    var r = _;
                                    r.closest(".ls-fullscreen-wrapper").length ? r = r.closest(".ls-fullscreen-wrapper") : r.closest(".ls-popup").length && (r = r.closest(".ls-popup")).prev(".ls-popup-overlay").remove(), r.remove()
                                }
                                ie.functions.clearEvents(), window._layerSlider.removeSlider(z)
                            } else ie.functions.setStates(ie.slider, {
                                shouldBeDestroyed: !0,
                                sholudBeRemoved: t || !1
                            });
                            ie.slider.positionToViewport = "under", ie.device.scroll.enable()
                    }
            },
            eventData: function() {
                return {
                    data: ie,
                    userData: ie.o,
                    uid: z,
                    target: W,
                    slider: _,
                    state: ie.slider.state,
                    isBusy: ie.slider.isBusy(),
                    event: {
                        target: W
                    },
                    api: function(e, t, i, a) {
                        _.layerSlider(e, t, i, a)
                    },
                    slides: {
                        first: {
                            index: ie.slides.first.index,
                            deeplink: ie.slides.get.deeplink(ie.slides.first.index),
                            data: ie.slides.first.data
                        },
                        prev: {
                            index: ie.slides.prev.index,
                            deeplink: ie.slides.get.deeplink(ie.slides.prev.index),
                            data: ie.slides.prev.data
                        },
                        current: {
                            index: ie.slides.current.index || ie.slides.first.index,
                            deeplink: ie.slides.get.deeplink(ie.slides.current.index),
                            layersIn: ie.layers.get("current,in"),
                            layersOut: ie.layers.get("current,out"),
                            timeline: ie.transitions._slideTimeline,
                            data: ie.slides.current.data
                        },
                        next: {
                            index: ie.slides.next.index,
                            deeplink: ie.slides.get.deeplink(ie.slides.next.index),
                            layersIn: ie.layers.get("next,in"),
                            layersOut: ie.layers.get("next,out"),
                            data: ie.slides.next.data
                        },
                        count: ie.slides.count
                    },
                    slideChangeTimeline: ie.transitions._slideTransition,
                    slideshow: {
                        state: ie.slideshow.state,
                        sequence: ie.slideshow.sequence,
                        direction: ie.slideshow.direction,
                        isPaused: ie.slideshow.isPaused()
                    },
                    cycles: {
                        max: ie.o.cycles,
                        current: ie.slideshow.curCycle
                    }
                }
            }
        }, ie.browser = {
            isSafari: !!navigator.userAgent.match(/(iPhone|iPod|iPad|Safari)/i) && !navigator.userAgent.match(/(Opera|Chrome|Edge)/i),
            isChrome: function() {
                var e = window.chrome,
                    t = window.navigator,
                    i = t.vendor,
                    a = void 0 !== window.opr,
                    s = -1 < t.userAgent.indexOf("Edge"),
                    r = !!t.userAgent.match("CriOS") || null != e && "Google Inc." === i && !1 == a && !1 == s;
                return r
            },
            usesFileProtocol: -1 !== document.location.href.indexOf("file://"),
            supports3D: function() {
                for (var e = se("<div>"), t = !1, i = !1, a = ["perspective", "OPerspective", "msPerspective", "MozPerspective", "WebkitPerspective"], s = ["transformStyle", "OTransformStyle", "msTransformStyle", "MozTransformStyle", "WebkitTransformStyle"], r = a.length - 1; 0 <= r; r--) t = t || void 0 !== e[0].style[a[r]];
                for (var o = s.length - 1; 0 <= o; o--) e.css("transform-style", "preserve-3d"), i = i || "preserve-3d" == e[0].style[s[o]];
                return t && void 0 !== e[0].style[a[4]] && (e.attr("id", "ls-test3d").appendTo(_), t = 3 === e[0].offsetHeight && 9 === e[0].offsetLeft, e.remove()), t && i
            },
            isOld: -1 !== navigator.userAgent.indexOf("rident/5")
        }, ie.initializedPlugins = {}, ie.timeouts = {}, ie.intervals = {}, ie.debug = {
            options: {}
        }, ie.plugin = {
            version: "6.11.2",
            release: "stable",
            releaseDate: "2020. 08. 03."
        }, ie.slider.load()
    }
}(jQuery);
#2 JavaScript::Eval (size: 51400) - SHA256: fe08ee1b77a38bfc9b010174176daef008200916c7c64ac05bff2e860ca5c8a3
var layerSliderTransitions = {
    t2d: [{
        name: "Sliding from right",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuad",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Sliding from left",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuad",
            duration: 1e3,
            direction: "right"
        }
    }, {
        name: "Sliding from bottom",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuad",
            duration: 1e3,
            direction: "top"
        }
    }, {
        name: "Sliding from top",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuad",
            duration: 1e3,
            direction: "bottom"
        }
    }, {
        name: "Crossfading",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeInOutQuad",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Fading tiles forward",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 30,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Fading tiles reverse",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 30,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Fading tiles col-forward",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 30,
            sequence: "col-forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Fading tiles col-reverse",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 30,
            sequence: "col-reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Fading tiles (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 30,
            sequence: "random"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "left"
        }
    }, {
        name: "Smooth fading from right",
        rows: 1,
        cols: 35,
        tile: {
            delay: 25,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "linear",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Smooth fading from left",
        rows: 1,
        cols: 35,
        tile: {
            delay: 25,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeInOutQuart",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Smooth fading from bottom",
        rows: 35,
        cols: 1,
        tile: {
            delay: 25,
            sequence: "col-reverse"
        },
        transition: {
            type: "fade",
            easing: "easeInOutQuart",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Smooth fading from top",
        rows: 35,
        cols: 1,
        tile: {
            delay: 25,
            sequence: "col-forward"
        },
        transition: {
            type: "fade",
            easing: "easeInOutQuart",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Smooth sliding from right",
        rows: 1,
        cols: 25,
        tile: {
            delay: 30,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 350,
            direction: "left"
        }
    }, {
        name: "Smooth sliding from left",
        rows: 1,
        cols: 25,
        tile: {
            delay: 30,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 350,
            direction: "right"
        }
    }, {
        name: "Smooth sliging from bottom",
        rows: 25,
        cols: 1,
        tile: {
            delay: 30,
            sequence: "col-reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 350,
            direction: "top"
        }
    }, {
        name: "Smooth sliding from top",
        rows: 25,
        cols: 1,
        tile: {
            delay: 30,
            sequence: "col-forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 350,
            direction: "bottom"
        }
    }, {
        name: "Sliding tiles to right (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 500,
            direction: "right"
        }
    }, {
        name: "Sliding tiles to left (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 500,
            direction: "left"
        }
    }, {
        name: "Sliding tiles to bottom (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 500,
            direction: "bottom"
        }
    }, {
        name: "Sliding tiles to top (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 500,
            direction: "top"
        }
    }, {
        name: "Sliding random tiles to random directions",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 500,
            direction: "random"
        }
    }, {
        name: "Sliding rows to right (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Sliding rows to right (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Sliding rows to right (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Sliding rows to left (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Sliding rows to left (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Sliding rows to left (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Sliding rows from top to bottom (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Sliding rows from top to bottom (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Sliding rows from bottom to top (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Sliding rows from bottom to top (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Sliding columns to bottom (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Sliding columns to bottom (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Sliding columns to bottom (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Sliding columns to top (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Sliding columns to top (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Sliding columns to top (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Sliding columns from left to right (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Sliding columns from left to right (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Sliding columns from right to left (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Sliding columns from right to left (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Fading and sliding tiles to right (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "right"
        }
    }, {
        name: "Fading and sliding tiles to left (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "left"
        }
    }, {
        name: "Fading and sliding tiles to bottom (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding tiles to top (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "top"
        }
    }, {
        name: "Fading and sliding random tiles to random directions",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "random"
        }
    }, {
        name: "Fading and sliding tiles from top-left (forward)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "topleft"
        }
    }, {
        name: "Fading and sliding tiles from bottom-right (reverse)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "bottomright"
        }
    }, {
        name: "Fading and sliding tiles from top-right (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "topright"
        }
    }, {
        name: "Fading and sliding tiles from bottom-left (random)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 50,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 500,
            direction: "bottomleft"
        }
    }, {
        name: "Fading and sliding rows to right (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Fading and sliding rows to right (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Fading and sliding rows to right (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Fading and sliding rows to left (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Fading and sliding rows to left (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Fading and sliding rows to left (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Fading and sliding rows from top to bottom (forward)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding rows from top to bottom (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding rows from bottom to top (reverse)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Fading and sliding rows from bottom to top (random)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 100,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Fading and sliding columns to bottom (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding columns to bottom (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding columns to bottom (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "bottom"
        }
    }, {
        name: "Fading and sliding columns to top (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Fading and sliding columns to top (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Fading and sliding columns to top (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "top"
        }
    }, {
        name: "Fading and sliding columns from left to right (forward)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Fading and sliding columns from left to right (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "right"
        }
    }, {
        name: "Fading and sliding columns from right to left (reverse)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Fading and sliding columns from right to left (random)",
        rows: 1,
        cols: [12, 16],
        tile: {
            delay: 75,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuart",
            duration: 600,
            direction: "left"
        }
    }, {
        name: "Carousel",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5
        }
    }, {
        name: "Carousel rows",
        rows: 4,
        cols: 1,
        tile: {
            delay: 50,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5
        }
    }, {
        name: "Carousel cols",
        rows: 1,
        cols: 4,
        tile: {
            delay: 50,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5
        }
    }, {
        name: "Carousel tiles horizontal",
        rows: 3,
        cols: 4,
        tile: {
            delay: 35,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5,
            rotateY: 90
        }
    }, {
        name: "Carousel tiles vertical",
        rows: 3,
        cols: 4,
        tile: {
            delay: 35,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "top",
            scale: .5,
            rotateX: -90
        }
    }, {
        name: "Carousel-mirror tiles horizontal",
        rows: 3,
        cols: 4,
        tile: {
            delay: 15,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5,
            rotateY: 90
        }
    }, {
        name: "Carousel-mirror tiles vertical",
        rows: 3,
        cols: 4,
        tile: {
            delay: 15,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "top",
            scale: .5,
            rotateX: -90
        }
    }, {
        name: "Carousel mirror rows",
        rows: 4,
        cols: 1,
        tile: {
            delay: 50,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "right",
            scale: .5
        }
    }, {
        name: "Carousel mirror cols",
        rows: 1,
        cols: 4,
        tile: {
            delay: 50,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeInOutQuad",
            duration: 750,
            direction: "left",
            scale: .5
        }
    }, {
        name: "Turning tile from left",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 750,
            direction: "right",
            rotateY: 90
        }
    }, {
        name: "Turning tile from right",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: -90
        }
    }, {
        name: "Turning tile from top",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 750,
            direction: "bottom",
            rotateX: -90
        }
    }, {
        name: "Turning tile from bottom",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeOutQuart",
            duration: 750,
            direction: "top",
            rotateX: 90
        }
    }, {
        name: "Turning tiles from left",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: 90
        }
    }, {
        name: "Turning tiles from right",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: -90
        }
    }, {
        name: "Turning tiles from top",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: -90
        }
    }, {
        name: "Turning tiles from bottom",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: 90
        }
    }, {
        name: "Turning rows from top",
        rows: [6, 12],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: 90
        }
    }, {
        name: "Turning rows from bottom",
        rows: [6, 12],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: -90
        }
    }, {
        name: "Turning cols from left",
        rows: 1,
        cols: [6, 12],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: -90
        }
    }, {
        name: "Turning cols from right",
        rows: 1,
        cols: [6, 12],
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: 90
        }
    }, {
        name: "Flying rows from left",
        rows: [3, 10],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: 90
        }
    }, {
        name: "Flying rows from right",
        rows: [3, 10],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateY: -90
        }
    }, {
        name: "Flying cols from top",
        rows: 1,
        cols: [3, 10],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: -90
        }
    }, {
        name: "Flying cols from bottom",
        rows: 1,
        cols: [3, 10],
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotateX: 90
        }
    }, {
        name: "Flying and rotating tile from left",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "right",
            scale: .1,
            rotate: -90,
            rotateY: 90
        }
    }, {
        name: "Flying and rotating tile from right",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            scale: .1,
            rotate: 90,
            rotateY: -90
        }
    }, {
        name: "Flying and rotating tiles from left",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "right",
            rotate: -45
        }
    }, {
        name: "Flying and rotating tiles from right",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            rotate: -45
        }
    }, {
        name: "Flying and rotating tiles from random",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 55,
            sequence: "random"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "random",
            rotate: -45
        }
    }, {
        name: "Scaling tile in",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 1500,
            direction: "left",
            scale: .8
        }
    }, {
        name: "Scaling tile from out",
        rows: 1,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "fade",
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "left",
            scale: 1.2
        }
    }, {
        name: "Scaling tiles random",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 35,
            sequence: "random"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            scale: .1
        }
    }, {
        name: "Scaling tiles from out random",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 35,
            sequence: "random"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            scale: 2
        }
    }, {
        name: "Scaling in and rotating tiles random",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 35,
            sequence: "random"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            scale: .1,
            rotate: 90
        }
    }, {
        name: "Scaling and rotating tiles from out random",
        rows: [3, 4],
        cols: [3, 4],
        tile: {
            delay: 35,
            sequence: "random"
        },
        transition: {
            type: "fade",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left",
            scale: 2,
            rotate: -90
        }
    }, {
        name: "Mirror-sliding tiles diagonal",
        rows: 3,
        cols: 4,
        tile: {
            delay: 15,
            sequence: "forward"
        },
        transition: {
            type: "slide",
            easing: "easeInOutQuart",
            duration: 850,
            direction: "topright"
        }
    }, {
        name: "Mirror-sliding rows horizontal",
        rows: 6,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Mirror-sliding rows vertical",
        rows: 6,
        cols: 1,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "top"
        }
    }, {
        name: "Mirror-sliding cols horizontal",
        rows: 1,
        cols: 8,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "left"
        }
    }, {
        name: "Mirror-sliding cols vertical",
        rows: 1,
        cols: 8,
        tile: {
            delay: 0,
            sequence: "forward"
        },
        transition: {
            type: "mixed",
            easing: "easeOutQuart",
            duration: 750,
            direction: "top"
        }
    }, {
        name: "Random slices to left",
        rows: 10,
        cols: 1,
        tile: {
            delay: 10,
            sequence: "random"
        },
        transition: {
            duration: 1500,
            easing: "easeInOutQuart",
            type: "slide",
            direction: "left"
        }
    }, {
        name: "Random slices to right",
        rows: 10,
        cols: 1,
        tile: {
            delay: 10,
            sequence: "random"
        },
        transition: {
            duration: 1500,
            easing: "easeInOutQuart",
            type: "slide",
            direction: "right"
        }
    }, {
        name: "Random slices to bottom",
        rows: 1,
        cols: 15,
        tile: {
            delay: 10,
            sequence: "random"
        },
        transition: {
            duration: 1500,
            easing: "easeInOutQuart",
            type: "slide",
            direction: "bottom"
        }
    }, {
        name: "Random slices to top",
        rows: 1,
        cols: 15,
        tile: {
            delay: 10,
            sequence: "random"
        },
        transition: {
            duration: 1500,
            easing: "easeInOutQuart",
            type: "slide",
            direction: "top"
        }
    }],
    t3d: [{
        name: "Spinning tile to right (180�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 91
            },
            easing: "easeInQuart",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateY: 180
            },
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "horizontal"
        }
    }, {
        name: "Spinning tile to left (180�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: -91
            },
            easing: "easeInQuart",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateY: -180
            },
            easing: "easeOutQuart",
            duration: 1e3,
            direction: "horizontal"
        }
    }, {
        name: "Spinning tile to bottom (180�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: -91
            },
            easing: "easeInQuart",
            duration: 800,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateX: -180
            },
            easing: "easeOutQuart",
            duration: 800,
            direction: "vertical"
        }
    }, {
        name: "Spinning tile to top (180�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: 91
            },
            easing: "easeInQuart",
            duration: 800,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateX: 180
            },
            easing: "easeOutQuart",
            duration: 800,
            direction: "vertical"
        }
    }, {
        name: "Spinning tiles to right (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "horizontal"
        }
    }, {
        name: "Spinning tiles to left (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "horizontal"
        }
    }, {
        name: "Spinning tiles to bottom (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-forward"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Spinning tiles to top (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-reverse"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Horizontal spinning tiles random (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1300,
            direction: "horizontal"
        }
    }, {
        name: "Vertical spinning tiles random (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1300,
            direction: "vertical"
        }
    }, {
        name: "Scaling and spinning tiles to right (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .95
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning tiles to left (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .95
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning tiles to bottom (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-forward"
        },
        before: {
            transition: {
                scale3d: .95
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning tiles to top (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-reverse"
        },
        before: {
            transition: {
                scale3d: .95
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and horizontal spinning tiles random (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .95,
                rotateX: 30
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 180,
                rotateX: -30
            },
            easing: "easeInOutBack",
            duration: 1300,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateX: 0
            },
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and vertical spinning tiles random (180�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .95,
                rotateY: -15
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 180,
                rotateY: 15
            },
            easing: "easeInOutBack",
            duration: 1300,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateY: 0
            },
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Spinning rows to right (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning rows to left (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning rows to bottom (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Spinning rows to top (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Horizontal spinning rows random (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Vertical spinning rows random (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Vertical spinning rows random (540�)",
        rows: [3, 7],
        cols: 1,
        tile: {
            delay: 150,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateX: -540
            },
            easing: "easeInOutQuart",
            duration: 2e3,
            direction: "vertical"
        }
    }, {
        name: "Scaling and spinning rows to right (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning rows to left (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning rows to bottom (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 600,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning rows to top (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 600,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and horizontal spinning rows random (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and vertical spinning rows random (180�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 55,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 600,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Spinning columns to right (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning columns to left (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning columns to bottom (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Spinning columns to top (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Horizontal spinning columns random (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Vertical spinning columns random (180�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Horizontal spinning columns random (540�)",
        rows: 1,
        cols: [4, 9],
        tile: {
            delay: 150,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateY: 540
            },
            easing: "easeInOutQuart",
            duration: 2e3,
            direction: "horizontal"
        }
    }, {
        name: "Scaling and spinning columns to right (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 600,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning columns to left (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 55,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 600,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning columns to bottom (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 55,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and spinning columns to top (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and horizontal spinning columns random (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 600,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and vertical spinning columns random (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Drunk colums scaling and spinning to right (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85,
                rotateX: -30
            },
            duration: 600,
            easing: "easeOutQuart"
        },
        animation: {
            transition: {
                rotateX: -30,
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateX: 0,
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 600
        }
    }, {
        name: "Drunk colums scaling and spinning to left (180�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85,
                rotateX: -30
            },
            duration: 600,
            easing: "easeOutQuart"
        },
        animation: {
            transition: {
                rotateX: 30,
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateX: 0,
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 600
        }
    }, {
        name: "Turning cuboid to right (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Turning cuboid to left (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Turning cuboid to bottom (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Turning cuboid to top (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Scaling and turning cuboid to right (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                scale3d: .8,
                rotate: 7,
                rotateX: 10,
                rotateY: 45
            },
            easing: "easeInOutQuad",
            duration: 800,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotate: 0,
                rotateX: 0,
                rotateY: 90
            },
            duration: 800,
            easing: "easeInOutQuad"
        }
    }, {
        name: "Scaling and turning cuboid to left (90�)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                scale3d: .8,
                rotate: -7,
                rotateX: 10,
                rotateY: -45
            },
            easing: "easeInOutQuad",
            duration: 800,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotate: 0,
                rotateX: 0,
                rotateY: -90
            },
            duration: 800,
            easing: "easeInOutQuad"
        }
    }, {
        name: "Scaling and turning cuboids to right (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and turning cuboids to left (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and turning cuboids to bottom (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and turning cuboids to top (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and horizontal turning cuboids random (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .75,
                rotateX: -15
            },
            duration: 700,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 75,
                rotateX: 15
            },
            easing: "easeInOutBack",
            duration: 700,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateY: 90,
                rotateX: 0
            },
            duration: 700,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and vertical turning cuboids random (90�)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .75,
                rotateY: 15
            },
            duration: 700,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 75,
                rotateY: -15
            },
            easing: "easeInOutBack",
            duration: 700,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateX: 90,
                rotateY: 0
            },
            duration: 700,
            easing: "easeInOutBack"
        }
    }, {
        name: "Turning rows to right (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Turning rows to left (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Horizontal turning rows random (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Scaling and turning rows to right (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 87
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200,
                rotateY: 90
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning rows to left (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning rows to bottom (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning rows to top (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and horizontal turning rows random (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and vertical turning rows random (90�)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and horizontal turning drunk rows to right (90�)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                scale3d: .85,
                rotateY: 45
            },
            easing: "easeInOutQuint",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutQuint",
            duration: 1e3
        }
    }, {
        name: "Scaling and horizontal turning drunk rows to left (90�)",
        rows: [7, 11],
        cols: 1,
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                scale3d: .85,
                rotateY: -45
            },
            easing: "easeInOutQuint",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutQuint",
            duration: 1e3
        }
    }, {
        name: "Turning columns to bottom (90�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Turning columns to top (90�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Vertical turning columns random (90�)",
        rows: 1,
        cols: [5, 9],
        tile: {
            delay: 75,
            sequence: "random"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutQuart",
            duration: 1e3,
            direction: "vertical"
        }
    }, {
        name: "Scaling and turning columns to bottom (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning columns to top (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning columns to right (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and turning columns to left (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and horizontal turning columns random (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and vertical turning columns random (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutBack",
            duration: 600
        }
    }, {
        name: "Scaling and vertical turning drunk columns to right (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "forward"
        },
        animation: {
            transition: {
                scale3d: .85,
                rotateX: 45
            },
            easing: "easeInOutQuint",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateX: 90
            },
            easing: "easeInOutQuint",
            duration: 1e3
        }
    }, {
        name: "Scaling and vertical turning drunk columns to left (90�)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 75,
            sequence: "reverse"
        },
        animation: {
            transition: {
                scale3d: .85,
                rotateX: -45
            },
            easing: "easeInOutQuint",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateX: -90
            },
            easing: "easeInOutQuint",
            duration: 1e3
        }
    }, {
        name: "Spinning cuboid to right (180�, large depth)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward",
            depth: "large"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning cuboid to left (180�, large depth)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward",
            depth: "large"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Spinning cuboid to bottom (180�, large depth)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward",
            depth: "large"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Spinning cuboid to top (180�, large depth)",
        rows: 1,
        cols: 1,
        tile: {
            delay: 75,
            sequence: "forward",
            depth: "large"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Scaling and spinning cuboids to right (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning cuboids to left (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning cuboids to bottom (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning cuboids to top (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "col-reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 450,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            duration: 350,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and horizontal spinning cuboids random (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .65
            },
            duration: 700,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 700,
            direction: "horizontal"
        },
        after: {
            duration: 700,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and vertical spinning cuboids random (180�, large depth)",
        rows: [2, 4],
        cols: [4, 7],
        tile: {
            delay: 75,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .65
            },
            duration: 700,
            easing: "easeInOutQuint"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutBack",
            duration: 700,
            direction: "vertical"
        },
        after: {
            duration: 700,
            easing: "easeInOutBack"
        }
    }, {
        name: "Scaling and spinning rows to right (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning rows to left (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning rows to bottom (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning rows to top (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and horizontal spinning rows random (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and vertical spinning rows random (180�, large depth)",
        rows: [5, 9],
        cols: 1,
        tile: {
            delay: 65,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning columns to bottom (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning columns to top (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning columns to right (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and spinning columns to left (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "reverse",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: -180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and horizontal spinning columns random (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateY: 180
            },
            easing: "easeInOutBack",
            duration: 1e3,
            direction: "horizontal"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Scaling and vertical spinning columns random (180�, large depth)",
        rows: 1,
        cols: [7, 11],
        tile: {
            delay: 65,
            sequence: "random",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .85
            },
            duration: 600,
            easing: "easeOutBack"
        },
        animation: {
            transition: {
                rotateX: -180
            },
            easing: "easeInOutQuart",
            duration: 1200,
            direction: "vertical"
        },
        after: {
            transition: {
                delay: 200
            },
            easing: "easeOutQuart",
            duration: 400
        }
    }, {
        name: "Horizontally rotating and fading cube",
        rows: 1,
        cols: 1,
        tile: {
            delay: 1,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .65,
                rotateY: -270,
                opacity: 0
            },
            duration: 1500,
            easing: "easeInQuart"
        },
        animation: {
            transition: {
                scale3d: 1,
                rotateY: -540,
                opacity: 1
            },
            easing: "easeOutQuart",
            duration: 1500,
            direction: "horizontal"
        }
    }, {
        name: "Vertically rotating and fading cube",
        rows: 1,
        cols: 1,
        tile: {
            delay: 1,
            sequence: "forward",
            depth: "large"
        },
        before: {
            transition: {
                scale3d: .65,
                rotateX: -270,
                opacity: 0
            },
            duration: 1500,
            easing: "easeInQuart"
        },
        animation: {
            transition: {
                scale3d: 1,
                rotateX: -540,
                opacity: 1
            },
            easing: "easeOutQuart",
            duration: 1500,
            direction: "vertical"
        }
    }, {
        name: "Horizontally rotating and fading cuboids",
        rows: [2, 3],
        cols: [3, 5],
        tile: {
            delay: 50,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .75,
                opacity: 0
            },
            duration: 350,
            easing: "easeInQuart"
        },
        animation: {
            transition: {
                rotateY: -45,
                rotateX: 180
            },
            easing: "easeInOutQuart",
            duration: 1,
            direction: "vertical"
        },
        after: {
            transition: {
                rotateY: 0,
                opacity: 1
            },
            easing: "easeOutQuart",
            duration: 1200
        }
    }, {
        name: "Vertically rotating and fading cuboids",
        rows: [2, 3],
        cols: [3, 5],
        tile: {
            delay: 50,
            sequence: "random"
        },
        before: {
            transition: {
                scale3d: .75,
                opacity: 0
            },
            duration: 350,
            easing: "easeInQuart"
        },
        animation: {
            transition: {
                rotateX: -45,
                rotateY: 180
            },
            easing: "easeInOutQuart",
            duration: 1,
            direction: "horizontal"
        },
        after: {
            transition: {
                rotateX: 0,
                opacity: 1
            },
            easing: "easeOutQuart",
            duration: 1200
        }
    }]
};

Executed Writes (3)
#1 JavaScript::Write (size: 2866) - SHA256: bd9b9037f2231777bcc799f76eeeae2e5a01663cce765e72e2ed1bda49cc926c
< head > < meta http - equiv = "Content-Type"
content = "text/html; charset=UTF8" > < link rel = "stylesheet"
type = "text/css"
href = "https://translate.googleapis.com/translate_static/css/translateelement.css" > < /head><body class="goog-te-banner" scroll="no" border=0 dir="ltr"><table border=0 cellspacing=0 cellpadding=0 width=100% height=100%><tr valign=middle><td width=1 nowrap><a href="https:/ / translate.google.com " class="
goog - logo - link " target="
_blank "><img src="
https: //www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_68x28dp.png" alt="Google Oversetter"></a></td><td width=1><img src="https://www.google.com/images/cleardot.gif" width="9" height="15" title="Innholdet p� denne sikre siden sendes til Google via en sikker tilkobling for � bli oversatt." alt="Innholdet p� denne sikre siden sendes til Google via en sikker tilkobling for � bli oversatt." style="background-image:url(https://translate.googleapis.com/translate_static/img/te_ctrl3.gif);background-position:-56px 0px;margin:0 4px"></td><td class="goog-te-banner-margin"></td><td><table border=0 cellspacing=0 cellpadding=0 height=100%><tr id=":1.promptSection" style="display:none" valign=middle><td nowrap><span class="goog-te-banner-content">Vis denne siden p�: <span id=":1.promptTargetLang"></span></span></td><td class="goog-te-banner-margin"></td><td nowrap><div class="goog-te-button"><div><button id=":1.confirm"><b>Oversett</b></button></div></div></td><td class="goog-te-banner-margin"></td><td nowrap><div class="goog-te-button"><div><button id=":1.noAutoPopup"></button></div></div></td></tr><tr id=":1.progressSection" style="display:none" valign=middle><td><span class="goog-te-banner-content">Oversettelse p�g�r&nbsp;<span dir="ltr">(<b id=":1.progressValue"></b>%)</span>&nbsp;<img src="https://translate.googleapis.com/translate_static/img/loading.gif"></span></td><td class="goog-te-banner-margin"></td><td nowrap><div class="goog-te-button"><div><button id=":1.cancel">Avbryt</button></div></div></td></tr><tr id=":1.finishSection" style="display:none"><td><span class="goog-te-banner-content">Oversatt til: <span id=":1.finishTargetLang"></span></span></td><td class="goog-te-banner-margin"></td><td nowrap><div class="goog-te-button"><div><button id=":1.restore">Vis original</button></div></div></td></tr><tr id=":1.errorSection" style="display:none" valign=middle><td><span id=":1.errorContent" class="goog-te-banner-content"></span></td></tr></table></td><td class="goog-te-banner-margin"></td><td width=1 id="options"></td><td width=1><a id=":1.close" class="goog-close-link" href="javascript:void(0)" title="Lukk"><img src="https://www.google.com/images/cleardot.gif" width="15" height="15" alt="Lukk" style="background-image:url(https://translate.googleapis.com/translate_static/img/te_ctrl3.gif);background-position:-28px 0px"></a></td></tr></table></body>
#2 JavaScript::Write (size: 382) - SHA256: d2485660acb012ca34ca118cb59e6fbb11edb83ea98a0e050dd9bed186ee9274
< head > < meta http - equiv = "Content-Type"
content = "text/html; charset=UTF8" > < link rel = "stylesheet"
type = "text/css"
href = "https://translate.googleapis.com/translate_static/css/translateelement.css" > < /head><body scroll="no" style="margin:0px;overflow:hidden" dir="ltr" marginHeight=0 marginWidth=0 leftMargin=0 topMargin=0 border=0><div id=":2.menuBody" class="goog-te-menu"></div > < /body>
#3 JavaScript::Write (size: 382) - SHA256: c68c84b340115ef05318c4438aed24d3cd6198fdac59ac30dc7bac98452fda69
< head > < meta http - equiv = "Content-Type"
content = "text/html; charset=UTF8" > < link rel = "stylesheet"
type = "text/css"
href = "https://translate.googleapis.com/translate_static/css/translateelement.css" > < /head><body scroll="no" style="margin:0px;overflow:hidden" dir="ltr" marginHeight=0 marginWidth=0 leftMargin=0 topMargin=0 border=0><div id=":3.menuBody" class="goog-te-menu"></div > < /body>


HTTP Transactions (249)


Request Response
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "164D11173045B569CAFB32E300E4C1EC6D6AB177FD34D0414CC40C541268779F"
Last-Modified: Thu, 24 Nov 2022 09:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=13429
Expires: Sat, 26 Nov 2022 12:31:04 GMT
Date: Sat, 26 Nov 2022 08:47:15 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 4020
Cache-Control: max-age=96658
Date: Sat, 26 Nov 2022 08:47:15 GMT
Etag: "63809972-1d7"
Expires: Sun, 27 Nov 2022 11:38:13 GMT
Last-Modified: Fri, 25 Nov 2022 10:31:14 GMT
Server: ECS (ska/F715)
X-Cache: HIT
Content-Length: 471

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "141AC47ACC3800E5D35A82012FA4B044277ABAD3A95DC24415F66FB72C972AE6"
Last-Modified: Wed, 23 Nov 2022 21:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=4708
Expires: Sat, 26 Nov 2022 10:05:43 GMT
Date: Sat, 26 Nov 2022 08:47:15 GMT
Connection: keep-alive

                                        
                                            GET /v1/ HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.102.187.140
HTTP/2 200 OK
content-type: application/json
                                        
access-control-allow-origin: *
access-control-expose-headers: Content-Type, Retry-After, Content-Length, Alert, Backoff
content-security-policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
strict-transport-security: max-age=31536000
x-content-type-options: nosniff
content-length: 939
via: 1.1 google
date: Sat, 26 Nov 2022 08:17:32 GMT
cache-control: public,max-age=3600
age: 1783
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (939), with no line terminators
Size:   939
Md5:    567df7db606cf5d0871aa5bc9311b6da
Sha1:   4263faac7cbab2fcaf6661911dcad5091c06be17
Sha256: e9650e1fdc46fc8678708ddcc37ab369c7a6d50489a004be896f20c7a3a644b0
                                        
                                            GET /chains/remote-settings.content-signature.mozilla.org-2022-12-30-09-21-26.chain HTTP/1.1 
Host: content-signature-2.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

search
                                         34.160.144.191
HTTP/2 200 OK
content-type: binary/octet-stream
                                        
x-amz-id-2: V5nLfSw+EwtZhKDi1Agjqj1OdoEU1VZ0JOg13i54PBQPvwADH7WKDEkhbj+fBtelO0/kavVVIys=
x-amz-request-id: P9ZCWE718JT740TT
content-disposition: attachment
accept-ranges: bytes
server: AmazonS3
content-length: 5348
via: 1.1 google
date: Sat, 26 Nov 2022 08:44:10 GMT
age: 186
last-modified: Thu, 10 Nov 2022 09:21:27 GMT
etag: "9ebddc2b260d081ebbefee47c037cb28"
cache-control: public,max-age=3600
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  PEM certificate\012- , ASCII text
Size:   5348
Md5:    9ebddc2b260d081ebbefee47c037cb28
Sha1:   492bad62a7ca6a74738921ef5ae6f0be5edebf39
Sha256: 74bbb7cba16f7d084a08a0907d47d7496e5c148f904707ec6950f8f6a61027e5
                                        
                                            GET /v1/tiles HTTP/1.1 
Host: contile.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.117.237.239
HTTP/2 200 OK
content-type: application/json
                                        
server: nginx
date: Sat, 26 Nov 2022 08:47:16 GMT
content-length: 12
strict-transport-security: max-age=31536000
via: 1.1 google
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with no line terminators
Size:   12
Md5:    23e88fb7b99543fb33315b29b1fad9d6
Sha1:   a48926c4ec03c7c8a4e8dffcd31e5a6cdda417ce
Sha256: 7d8f1de8b7de7bc21dfb546a1d0c51bf31f16eee5fad49dbceae1e76da38e5c3
                                        
                                            GET / HTTP/1.1 
Host: todapharma.fr
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

search
                                         83.166.138.66
HTTP/1.1 301 Moved Permanently
Content-Type: text/html; charset=UTF-8
                                        
Date: Sat, 26 Nov 2022 08:47:15 GMT
Server: Apache
X-Redirect-By: iThemes Security
Upgrade: h2
Connection: Upgrade
Location: https://todapharma.fr/
Transfer-Encoding: chunked


--- Additional Info ---
Magic:  
Size:   0
Md5:    d41d8cd98f00b204e9800998ecf8427e
Sha1:   da39a3ee5e6b4b0d3255bfef95601890afd80709
Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Alerts:
  Blocklists:
    - fortinet: Phishing
                                        
                                            GET /v1/buckets/main/collections/ms-language-packs/records/cfr-v1-en-US HTTP/1.1 
Host: firefox.settings.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: application/json
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/json
Connection: keep-alive
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.102.187.140
HTTP/2 200 OK
content-type: application/json
                                        
access-control-allow-origin: *
access-control-expose-headers: Content-Type, Retry-After, Content-Length, Alert, Cache-Control, ETag, Pragma, Expires, Backoff, Last-Modified
content-security-policy: default-src 'none'; frame-ancestors 'none'; base-uri 'none';
strict-transport-security: max-age=31536000
x-content-type-options: nosniff
content-length: 329
via: 1.1 google
date: Sat, 26 Nov 2022 08:08:54 GMT
cache-control: public,max-age=3600
age: 2302
last-modified: Fri, 25 Mar 2022 17:45:46 GMT
etag: "1648230346554"
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JSON data\012- , ASCII text, with very long lines (329), with no line terminators
Size:   329
Md5:    0333b0655111aa68de771adfcc4db243
Sha1:   63f295a144ac87a7c8e23417626724eeca68a7eb
Sha256: 60636eb1dc67c9ed000fe0b49f03777ad6f549cb1d2b9ff010cf198465ae6300
                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "4EFE94BFB5FB9CF57DC2FECB709588C25675EF2801E07E3E2420A06D985EF657"
Last-Modified: Thu, 24 Nov 2022 17:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=21563
Expires: Sat, 26 Nov 2022 14:46:39 GMT
Date: Sat, 26 Nov 2022 08:47:16 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 3146
Cache-Control: max-age=90721
Date: Sat, 26 Nov 2022 08:47:16 GMT
Etag: "638085ab-1d7"
Expires: Sun, 27 Nov 2022 09:59:17 GMT
Last-Modified: Fri, 25 Nov 2022 09:06:51 GMT
Server: ECS (ska/F715)
X-Cache: HIT
Content-Length: 471

                                        
                                            GET / HTTP/1.1 
Host: push.services.mozilla.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Sec-WebSocket-Version: 13
Origin: wss://push.services.mozilla.com/
Sec-WebSocket-Protocol: push-notification
Sec-WebSocket-Extensions: permessage-deflate
Sec-WebSocket-Key: hQxfEyOErXs1NcEuYb4yeg==
Connection: keep-alive, Upgrade
Sec-Fetch-Dest: websocket
Sec-Fetch-Mode: websocket
Sec-Fetch-Site: cross-site
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket

search
                                         34.212.166.60
HTTP/1.1 101 Switching Protocols
                                        
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Accept: VhZ9ec1We7sPx03x8hU+1bPgjxM=

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "4EFE94BFB5FB9CF57DC2FECB709588C25675EF2801E07E3E2420A06D985EF657"
Last-Modified: Thu, 24 Nov 2022 17:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=21561
Expires: Sat, 26 Nov 2022 14:46:39 GMT
Date: Sat, 26 Nov 2022 08:47:18 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "0E943AACB4A46480AB031EF294A0E089976EC125C331C15116B6C79F6B0F2FF0"
Last-Modified: Sat, 26 Nov 2022 04:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=11595
Expires: Sat, 26 Nov 2022 12:00:33 GMT
Date: Sat, 26 Nov 2022 08:47:18 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "0E943AACB4A46480AB031EF294A0E089976EC125C331C15116B6C79F6B0F2FF0"
Last-Modified: Sat, 26 Nov 2022 04:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=11595
Expires: Sat, 26 Nov 2022 12:00:33 GMT
Date: Sat, 26 Nov 2022 08:47:18 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "0E943AACB4A46480AB031EF294A0E089976EC125C331C15116B6C79F6B0F2FF0"
Last-Modified: Sat, 26 Nov 2022 04:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=11595
Expires: Sat, 26 Nov 2022 12:00:33 GMT
Date: Sat, 26 Nov 2022 08:47:18 GMT
Connection: keep-alive

                                        
                                            POST / HTTP/1.1 
Host: r3.o.lencr.org
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 85
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         23.36.76.226
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Server: nginx
Content-Length: 503
ETag: "0E943AACB4A46480AB031EF294A0E089976EC125C331C15116B6C79F6B0F2FF0"
Last-Modified: Sat, 26 Nov 2022 04:00:00 UTC
Cache-Control: public, no-transform, must-revalidate, max-age=11595
Expires: Sat, 26 Nov 2022 12:00:33 GMT
Date: Sat, 26 Nov 2022 08:47:18 GMT
Connection: keep-alive

                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F88ca6be9-2485-4243-a3fe-1e61449736dd.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 6431
x-amzn-requestid: 0daa58b7-3fd8-463f-85f5-6f84fdb17661
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: cLVOBEpEIAMF87A=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-6381358c-3f8b9c18598ba2532518668d;Sampled=0
x-amzn-remapped-date: Fri, 25 Nov 2022 21:37:16 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: FyVMZKsBMppWLcVlLTcWdr_HSifdSnU2IuE3dLHqFD9EgSEZSue5AA==
via: 1.1 00f0a41f749793b9dd653153037c957e.cloudfront.net (CloudFront), 1.1 591683988172c7980c4ebb318cbf18a8.cloudfront.net (CloudFront), 1.1 google
date: Fri, 25 Nov 2022 21:52:00 GMT
age: 39318
etag: "6a2f4d4bfec41d16fa84b0a9b0b13f7dcff2be3d"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   6431
Md5:    801dd70f0c591086062e2a9054f78efc
Sha1:   6a2f4d4bfec41d16fa84b0a9b0b13f7dcff2be3d
Sha256: ba28f27ea906aaa6db1fbdca53ecbd4366b99d2696fb888e47b731e21c0f82da
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2Fcc7a5b86-3ad1-40c7-b173-8a9ac078c227.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 8913
x-amzn-requestid: d0a9414c-eccf-44e8-adb7-92654544eeb5
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: cLWWXEpeIAMFnzw=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-6381375b-5825510666b3e80a5f83cafa;Sampled=0
x-amzn-remapped-date: Fri, 25 Nov 2022 21:44:59 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Hit from cloudfront
x-amz-cf-id: whO__FB0B2ywDP_p63eQ044RXbT207sX1i87I6nPAFUB85nSYc0Cuw==
via: 1.1 00f0a41f749793b9dd653153037c957e.cloudfront.net (CloudFront), 1.1 57a21088b36c69a83578b5a5579df58e.cloudfront.net (CloudFront), 1.1 google
date: Fri, 25 Nov 2022 21:46:06 GMT
age: 39672
etag: "0b6c9b51d10762a4747286ab5b1c2354fa39c622"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   8913
Md5:    5088223f5973e3cd56f03f50a1e84b79
Sha1:   0b6c9b51d10762a4747286ab5b1c2354fa39c622
Sha256: 8159e4f7eec7bea518bb29e3fdb070bab4fb70116205577f7b7d74ad4d0dfbc7
                                        
                                            GET / HTTP/1.1 
Host: todapharma.fr
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1

search
                                         83.166.138.66
HTTP/2 301 Moved Permanently
content-type: text/html; charset=UTF-8
                                        
date: Sat, 26 Nov 2022 08:47:16 GMT
server: Apache
set-cookie: PHPSESSID=c993227e9adb1bcc41b42122c7dc9844; path=/; secure; HttpOnly
pragma: no-cache
expires: Sat, 26 Nov 2022 09:47:18 GMT
cache-control: max-age=3600
x-litespeed-tag: 225_HTTP.200,225_HTTP.301,225_HTTP.301
x-redirect-by: WordPress
strict-transport-security: max-age=16000000
location: https://www.todapharma.com/
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   9914
Md5:    3b1c6878914466cfece680fa7cb73502
Sha1:   47fac81a2dd809df5c42ca1362f71d553572d2b1
Sha256: 6458883dfa2bdfd483e92e5f847a229508ef00ce1dbd11f49eec369d0bd3160a

Alerts:
  Blocklists:
    - fortinet: Phishing
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F1dd98515-d0af-440a-8f3d-4c9986928081.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 4309
x-amzn-requestid: a22b4d7e-e208-4bda-81c2-d13e6463380e
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: blE0hGNioAMF_Tg=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-6371e81c-1b13846866f56a0e47675e56;Sampled=0
x-amzn-remapped-date: Mon, 14 Nov 2022 07:02:52 GMT
x-amz-cf-pop: SEA73-P1
x-cache: Hit from cloudfront
x-amz-cf-id: 0sYKpJWi2Tv9Atz3PYXm5j7kmncAOxjcLcK4hgAkJ5b4pNMDmjdB6g==
via: 1.1 ddd913fbbe7367d44af4ac06097e7a2a.cloudfront.net (CloudFront), 1.1 28390a4d24ed4fdccd685d99cd06cf4e.cloudfront.net (CloudFront), 1.1 google
date: Sat, 26 Nov 2022 02:19:43 GMT
age: 23255
etag: "126771b86638108050cf57c0d12faa27f80f0edb"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   4309
Md5:    841a4b110022a99ddea6f7bf66df0fa1
Sha1:   126771b86638108050cf57c0d12faa27f80f0edb
Sha256: 240fbffc1f9104433297d3ff7afba2d0b58d7f1b13d9a9260a1bad25216665db
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2Fcf04cc9f-ee4b-42fd-914f-cd86b9dc30eb.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 3502
x-amzn-requestid: ca3f2610-e03c-48a7-abb3-fbbab76f63d2
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: cCvYUHO5IAMFqDA=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-637dc5ce-7e36137711dc4668278c1c94;Sampled=0
x-amzn-remapped-date: Wed, 23 Nov 2022 07:03:42 GMT
x-amz-cf-pop: SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: SRN-oOfa8Z0mQZFYkWAv32XFiXChfGjfwZkfWz-IzHubwrKgzwoTxQ==
via: 1.1 8dbfaf7df256a75768461d934659b6b2.cloudfront.net (CloudFront), 1.1 aef00f14752da9aa504d392fd46eff94.cloudfront.net (CloudFront), 1.1 google
date: Sat, 26 Nov 2022 03:55:38 GMT
age: 17500
etag: "61f9bed607e81606be78285596acdc5e0e4f4994"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   3502
Md5:    a783df85f30f9c555f9df6b99f61744d
Sha1:   61f9bed607e81606be78285596acdc5e0e4f4994
Sha256: 19db42201d0fa059f680d890ede6683c04e893e6308a2256d0203f826a7f34de
                                        
                                            GET /296x148/filters:format(jpeg):quality(60):no_upscale():strip_exif()/https%3A%2F%2Fs3.amazonaws.com%2Fpocket-curatedcorpusapi-prod-images%2F30fddcf4-c88b-41c3-90f7-a4530639de73.jpeg HTTP/1.1 
Host: img-getpocket.cdn.mozilla.net
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: null
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         34.120.237.76
HTTP/2 200 OK
content-type: image/jpeg
                                        
server: nginx
content-length: 7025
x-amzn-requestid: 2c9cd3bc-80d4-4578-a0aa-4f1ff7f19d30
x-xss-protection: 1; mode=block
access-control-allow-origin: *
strict-transport-security: max-age=63072000; includeSubdomains; preload
x-frame-options: DENY
content-security-policy: default-src 'none'; img-src 'self'; script-src 'self'; style-src 'self'; object-src 'none'
x-amz-apigw-id: cLVNYGwaIAMFU8w=
x-content-type-options: nosniff
x-amzn-trace-id: Root=1-63813588-0c66a293144f894f001ae0cf;Sampled=0
x-amzn-remapped-date: Fri, 25 Nov 2022 21:37:12 GMT
x-amz-cf-pop: HIO50-C1, SEA19-C2
x-cache: Miss from cloudfront
x-amz-cf-id: r2feThcq6D5u1ptiBnSuA5ZC00_W8moa4pb6xSxxeIEMbgoPtQdUyQ==
via: 1.1 49b94a8674d6e86a841d6523f7dbaf14.cloudfront.net (CloudFront), 1.1 d8792dbd3191bbe722eba5b536b979c8.cloudfront.net (CloudFront), 1.1 google
date: Fri, 25 Nov 2022 21:51:02 GMT
age: 39376
etag: "741e5e48c4fb170efee9b611be5638d999a09bd2"
cache-control: max-age=3600,public,public
alt-svc: clear
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 296x148, components 3\012- data
Size:   7025
Md5:    7e0c5064718601e80b7bfc931120ff70
Sha1:   741e5e48c4fb170efee9b611be5638d999a09bd2
Sha256: d0b1537f43277e7f59152e6272d4f3888ab4618fa7fe0e4b24e2f851dbf0f4cd
                                        
                                            GET /ajax/libs/font-awesome/5.15.4/css/all.min.css?ver=5.9.5 HTTP/1.1 
Host: cdnjs.cloudflare.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Origin: https://www.todapharma.com
Connection: keep-alive
Referer: https://www.todapharma.com/
Sec-Fetch-Dest: style
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

search
                                         104.17.25.14
HTTP/2 200 OK
content-type: text/css; charset=utf-8
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
content-length: 10462
access-control-allow-origin: *
cache-control: public, max-age=30672000
content-encoding: br
etag: "613fa20b-28de"
last-modified: Mon, 13 Sep 2021 19:10:03 GMT
cf-cdnjs-via: cfworker/kv
cross-origin-resource-policy: cross-origin
timing-allow-origin: *
x-content-type-options: nosniff
vary: Accept-Encoding
cf-cache-status: HIT
age: 5028106
expires: Thu, 16 Nov 2023 08:47:20 GMT
accept-ranges: bytes
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=x8jC2H90AH0LShpKdtKFH0MtEl8MjExD5Y32bvhfjRyp6fPQQ%2FkSiUm8Az1NYIzDG0FONH2v3woBQatSe8XryAdwoRMLowjzm9AFNVcitW%2Fh%2BF9mXHwB0nEFcxJ69ciWRiSzmtgF"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0.01,"report_to":"cf-nel","max_age":604800}
strict-transport-security: max-age=15780000
server: cloudflare
cf-ray: 77015bd8fdbab4ee-OSL
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (59119)
Size:   10462
Md5:    14e1692fd4263ccfea0b84299bdbf1f5
Sha1:   7783020a9ced5f32c8d38205357c7d10798be1fd
Sha256: 8ff0cd2d1e7f0b6203a762fb9811256d4445a3ad0d97f07102e038ba0eb3db72
                                        
                                            GET /wp-includes/css/dist/block-library/style.min.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 20 Apr 2022 10:36:48 GMT
etag: "145db-5dd1392191e0b-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 11206
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (39791)
Size:   11206
Md5:    68c55e0e26ede0ee6d29668c5e7ff18a
Sha1:   ea17cd26ac9dd53fdfb6b227d5737bc2714c4db5
Sha256: ad7d949e15ee2ea92473b1fcdfa56cc6239de0aeceed78065aa3a060523c0e00
                                        
                                            GET /wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.6 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Tue, 21 Jun 2022 14:54:16 GMT
etag: "aab-5e1f664fff9d4-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 972
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   972
Md5:    8bf268dfcca7cb20719b7ea14373ef4a
Sha1:   58bd839bbf0e8cc082f0a488b538b4ec71bebd2e
Sha256: eece4a14939273c7af07bce8bab3a6cfc2c9de44c0eea82cc886abac13cb3870
                                        
                                            GET /wp-content/plugins/buttonizer-multifunctional-button-premium/assets/frontend.css?v=b1d71238024fc4efb8359ec8404be1a0&ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 20 Apr 2022 13:28:17 GMT
etag: "2043-5dd15f757895c-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1051
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (7116)
Size:   1051
Md5:    bb4e7befffd6d2b0b2e982363aab9291
Sha1:   44dfea595c65ea465c49a006d158e2bfc4ba0263
Sha256: 99c229a3ea95ba2a3f2c5cac22236ca0110427d40b5042935374340dd324f4ae
                                        
                                            GET /wp-content/plugins/woocommerce/packages/woocommerce-blocks/build/wc-blocks-vendors-style.css?ver=7.8.3 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 13 Jul 2022 11:45:56 GMT
etag: "1345-5e3ae53fd2974-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1286
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (4933), with no line terminators
Size:   1286
Md5:    d2d7f4c273d3b4cd972a337969b14754
Sha1:   b441775d1dcba61a5234df0256a40c7f58a8b059
Sha256: fcfdbdf2a45072bbb545934d419cf76e5272d3193742eb8b659e938cafab4cdf
                                        
                                            GET /wp-content/plugins/gtranslate/gtranslate-style16.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 13 Jul 2022 11:45:24 GMT
etag: "2af-5e3ae52136a75-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 297
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   297
Md5:    d88ebba95b0f655e9d78d37b26de7383
Sha1:   9c4962d5f43090d0f78aacd7a1d9f25685c144e0
Sha256: 65ca129dcac9b1d71e6482216a9df221a5b2a672497bff2c490c9225cc6b5879
                                        
                                            GET /wp-content/plugins/designthemes-core-features/shortcodes/css/slick.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:09 GMT
etag: "1234-5baf9c4724740-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1264
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Unicode text, UTF-8 text, with very long lines (411)
Size:   1264
Md5:    755a4d843b3c5fe17db7814a827b80c3
Sha1:   1548025e79f7f4abdd76a021beba3238cb697fee
Sha256: 2708d2e053025ddc8dafffaff335f304bfbad6fb00da118a3df14cd9730cad3f
                                        
                                            GET /wp-content/uploads/maxmegamenu/style.css?ver=15d20c HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Tue, 25 May 2021 12:42:20 GMT
etag: "11bae-5c326db5c8300-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 5917
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (1230)
Size:   5917
Md5:    4023d0edb79f9730aace18456704f71c
Sha1:   a3e3f4fcbb8e87e764e73a0170ec438d9b5c0cff
Sha256: 8042d550ba74aff3ae611933a1649a3e7ee049e7fa5b5606de7cfb4c384a71dc
                                        
                                            GET /wp-content/plugins/woocommerce/packages/woocommerce-blocks/build/wc-blocks-style.css?ver=7.8.3 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 13 Jul 2022 11:45:56 GMT
etag: "333dd-5e3ae53fd2974-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 22458
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Unicode text, UTF-8 text, with very long lines (65527), with no line terminators
Size:   22458
Md5:    d1c79b3d421c348277ebe3df2678e919
Sha1:   4a4eea8629662b1556e1b7cf793a33b83a98c709
Sha256: 4895dd35591c52a1392ad0e29652a0b01a96ffac7d010d3a672b1ae60b3aaf08
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 84
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         142.250.74.35
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Sat, 26 Nov 2022 08:47:20 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 472
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /wp-content/plugins/js_composer/assets/css/js_composer.min.css?ver=6.5.0 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:19 GMT
etag: "76828-5baf9c50addc0-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 45790
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (65358)
Size:   45790
Md5:    2fe906250b403a8535d316cdf1e8a808
Sha1:   7b84d27dd294fe145beec5801fc2d8d5a00d611b
Sha256: 655f96cc6f8ea662c046fd64382639c7a9b5c9a936645beb200653b4880e51e3
                                        
                                            GET / HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/html; charset=UTF-8
                                        
date: Sat, 26 Nov 2022 08:47:18 GMT
server: Apache
set-cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831; path=/; secure; HttpOnly
expires: Thu, 19 Nov 1981 08:52:00 GMT
cache-control: no-store, no-cache, must-revalidate
pragma: no-cache
x-litespeed-tag: 225_HTTP.200
link: <https://www.todapharma.com/wp-json/>; rel="https://api.w.org/", <https://www.todapharma.com/wp-json/wp/v2/pages/26>; rel="alternate"; type="application/json", <https://www.todapharma.com/>; rel=shortlink
x-tec-api-version: v1
x-tec-api-root: https://www.todapharma.com/wp-json/tribe/events/v1/
x-tec-api-origin: https://www.todapharma.com
strict-transport-security: max-age=16000000
vary: Accept-Encoding
content-encoding: gzip
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  HTML document text\012- HTML document text\012- HTML document text\012- HTML document text\012- exported SGML document text\012- exported SGML document, Unicode text, UTF-8 text, with very long lines (8164), with CRLF, LF line terminators
Size:   56519
Md5:    86449ad2219e84d8e3be84b63a393787
Sha1:   41fd4f42c00bb3eba86436e81632a8881b810f04
Sha256: 7c21e69c67b87495f04c280fd30e5f08d12bd692609f96bd2c81d252bd05cc24
                                        
                                            GET /wp-content/plugins/gravityforms/css/readyclass.min.css?ver=2.4.21.1 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 19:50:04 GMT
etag: "76e7-5bb512cec9300-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 3406
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (30439), with no line terminators
Size:   3406
Md5:    06fe34d52dfeab0e5d1a1a929ab259c4
Sha1:   0c784dcde018551fc31e8fd0059cd2334b75d60d
Sha256: 20a25e2c1fe589deffa005e0e9388d3f4bcb1d5f7e9308ad6f3788e7e3a53913
                                        
                                            POST /gts1c3 HTTP/1.1 
Host: ocsp.pki.goog
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 84
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         142.250.74.35
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Date: Sat, 26 Nov 2022 08:47:20 GMT
Cache-Control: public, max-age=14400
Server: ocsp_responder
Content-Length: 472
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN

                                        
                                            GET /wp-content/plugins/popup-maker/assets/css/pum-site.min.css?ver=1.16.7 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 20 Apr 2022 14:39:57 GMT
etag: "1d14-5dd16f7a1914a-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1880
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (7444), with no line terminators
Size:   1880
Md5:    b9bcb55be608d6f3933da99d179e1e50
Sha1:   d2d582607d22c0f5538df0b9d0d145095476d88f
Sha256: 94ea094b14de571ef3a9549ecac28862ed5f100ab5b3829f0b5e22a7ad1b2f86
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 3509
Cache-Control: max-age=101878
Date: Sat, 26 Nov 2022 08:47:20 GMT
Etag: "6380afd9-116"
Expires: Sun, 27 Nov 2022 13:05:18 GMT
Last-Modified: Fri, 25 Nov 2022 12:06:49 GMT
Server: ECS (ska/F715)
X-Cache: HIT
Content-Length: 278

                                        
                                            GET /wp-content/plugins/add-search-to-menu/public/css/ivory-search.min.css?ver=5.4.7 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 13 Jul 2022 11:45:26 GMT
etag: "1a9b-5e3ae52326bf5-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1693
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (6811), with no line terminators
Size:   1693
Md5:    af78223ec492c924e60819c6d23a88da
Sha1:   fdac0f897e52f330a88cb7315eb4286bd113d345
Sha256: 3fc65cc2c4ac794d4c74ed332bbc0e648095060a3c4f2c5468ee10f3ceb22ee9
                                        
                                            GET /wp-content/uploads/smile_fonts/Defaults/Defaults.css?ver=3.19.8 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:56:25 GMT
etag: "6bf7-5bafa17a78c40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 4755
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (27639), with no line terminators
Size:   4755
Md5:    da2fc2749d073a4558e07be91fd485bb
Sha1:   5b2c13af9ee717486ba75d132491dca65b7ca93c
Sha256: e26b306c0363987a4a02bd157f64c1096a49715389def07c9d1207def1b4ab53
                                        
                                            GET /wp-content/plugins/dhvc-woocommerce/assets/css/style.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 20:45:12 GMT
etag: "4e14-5bb51f218a600-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 3775
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   3775
Md5:    fdb31d6674af2a399a3fdcd79bac716e
Sha1:   2b5fe9767dbf461929c1b677873494b1fa2b23e0
Sha256: cf93bc57e08f52d2e5522283b7b7a576148cf8d32209d4168a73f04edea4c548
                                        
                                            GET /wp-content/plugins/dhvc-woocommerce/includes/dhwc-brand/assets/css/brand-slider.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 20:45:12 GMT
etag: "390-5bb51f218a600-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 330
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   330
Md5:    b76433ed33e02193cd67cbf66833e271
Sha1:   3760a07cc7540333654481ed5c3660812676ead8
Sha256: 8e7770a1dd73845245f3a63bd910df075533346335d25cde195175eeac69bcff
                                        
                                            GET /wp-includes/css/dashicons.min.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 20 Apr 2022 10:33:22 GMT
etag: "e688-5dd1385c606f3-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 35730
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (58981)
Size:   35730
Md5:    00492d322e5572c7abc3e8701b6c52c1
Sha1:   0802ac2c8280ce7c98af881b1d49ec682acbf314
Sha256: 8bc01632cbc3ab834e04141d444ff82b05a4691444d70a9860477710e330b824
                                        
                                            GET /wp-content/plugins/designthemes-core-features/shortcodes/css/shortcodes.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:09 GMT
etag: "660-5baf9c4724740-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 476
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   476
Md5:    df320eaf6cf53e7624284cf4040a1b8a
Sha1:   a58f0aebe6cbbd80895f75fe6b704de8c8f5c416
Sha256: 2c008190a423c3f4f739976a65ace064c7de6157f195c2d24951bc9124906d30
                                        
                                            GET /wp-content/plugins/revslider/public/assets/css/rs6.css?ver=6.3.9 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:13 GMT
etag: "ebe1-5baf9c4af5040-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 12698
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  Unicode text, UTF-8 text, with very long lines (12602), with CRLF line terminators
Size:   12698
Md5:    69502c1649c7968ca08d46151a7005aa
Sha1:   0d75f28ae3d83c75bf04d417980b3de9eb92e82e
Sha256: 68dbbe83a3a981810d2d66c651d70f43c83a0dcfc2290fea722a39e9138643c1
                                        
                                            GET /wp-content/plugins/pearl-header-builder/assets/frontend/assets/vendor/sticky.css?ver=1669452439 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Tue, 25 May 2021 14:51:54 GMT
etag: "17a-5c328aaba5680-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 195
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   195
Md5:    311e3bc13bdbd19c0fb9e14a60a77621
Sha1:   e60c5aae0842a67eefd4b9f09969701c6d9ca9ae
Sha256: b0144258a83043cda38770d21b216e946fcd4a7198895d161f4119cbdd2313b8
                                        
                                            GET /wp-content/plugins/gravityforms/css/formreset.min.css?ver=2.4.21.1 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 19:50:04 GMT
etag: "f14-5bb512cec9300-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 402
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (3860), with no line terminators
Size:   402
Md5:    ac419b9db2fe6cb74932b27694be12ba
Sha1:   9b7fcbc2e2f6b91b163b89b032c812f75c5494e8
Sha256: cffd80c7223e354ef53ac567ff5b5ce82287f8e8c1290566138e1053b27a705a
                                        
                                            GET /wp-content/plugins/gravityforms/css/browsers.min.css?ver=2.4.21.1 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 19:50:04 GMT
etag: "1d79-5bb512cec9300-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1227
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (7545), with no line terminators
Size:   1227
Md5:    0c0d65cd4fce18ef804cd2d801fe5513
Sha1:   bbc09913c792974606d5584e20602e402e5394ee
Sha256: d77042fc550b9198a255eda914b6a4ccbec0f9d8feb6280088157b50804bfe87
                                        
                                            GET /wp-content/plugins/pearl-header-builder/assets/frontend/assets/css/font-awesome.min.css?ver=1669452439 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Tue, 25 May 2021 14:51:54 GMT
etag: "7918-5c328aaba5680-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 7053
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (30837)
Size:   7053
Md5:    52f1a8a2ce85fa8432308b33bc1a2e79
Sha1:   fd80917af5371c8ecad0198592a1e7cce4b77b0e
Sha256: 07bd6a9ea0213e20f362485aadc17a88c486ecfb394004b41b8b38db6e6a35f6
                                        
                                            GET /wp-content/plugins/gravityforms/css/formsmain.min.css?ver=2.4.21.1 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 19:50:04 GMT
etag: "12305-5bb512cec9300-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 11788
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (65536), with no line terminators
Size:   11788
Md5:    d8a5de68d11bf66fad633c039018ac15
Sha1:   3819772653365aa7a39f9ec92431baed1a7d97d4
Sha256: 5742f2bac65df38bc4719fe766e517c1b4a7461714f4bb63ac3b2e9db4aae587
                                        
                                            GET /wp-content/plugins/pearl-header-builder/assets/frontend/assets/css/header/main.css?ver=1669452439 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Tue, 25 May 2021 14:51:54 GMT
etag: "bcfa-5c328aaba5680-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 8519
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (48378), with no line terminators
Size:   8519
Md5:    4ca598d47eef3f1ef9c97d20ee4c2d6a
Sha1:   d309f09470b74dda4494af6477bf9ba60aa99086
Sha256: f0a3cbd813815caefb00933ff233a0e4b8dc2b78219e68404093d225714f8c4d
                                        
                                            POST / HTTP/1.1 
Host: ocsp.digicert.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/ocsp-request
Content-Length: 83
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache

search
                                         93.184.220.29
HTTP/1.1 200 OK
Content-Type: application/ocsp-response
                                        
Accept-Ranges: bytes
Age: 3509
Cache-Control: max-age=101878
Date: Sat, 26 Nov 2022 08:47:20 GMT
Etag: "6380afd9-116"
Expires: Sun, 27 Nov 2022 13:05:18 GMT
Last-Modified: Fri, 25 Nov 2022 12:06:49 GMT
Server: ECS (ska/F715)
X-Cache: HIT
Content-Length: 278

                                        
                                            GET /wp-content/plugins/responsive-maps-plugin/includes/css/resmap.min.css?ver=5.0 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:22 GMT
etag: "5a3-5baf9c538a480-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 585
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (1396)
Size:   585
Md5:    2a7b1045b33aff3753396b37082e07b7
Sha1:   5dd7d5bd457a7d562df07ed3d4e1879a8a64fd71
Sha256: 627263ffcfee82196ae29e6ddad0a6b2b87ad850ae284bf67e4a452dcb132965
                                        
                                            GET /wp-content/plugins/Ultimate_VC_Addons/assets/min-css/style.min.css?ver=3.19.8 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:16 GMT
etag: "3432-5baf9c4dd1700-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 2752
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (13362), with no line terminators
Size:   2752
Md5:    022bf1d37b467a4a6d0e964f4682ed2f
Sha1:   313cb2c56ffdd2ecc9f3f78348d060152085b3e0
Sha256: fd5140ccd70892401a43e96c3a21205b63e1bc2f37dcb1870a6bbb7bd4f33b2c
                                        
                                            GET /gtag/js?id=UA-198558865-1 HTTP/1.1 
Host: www.googletagmanager.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site

search
                                         142.250.74.168
HTTP/2 200 OK
content-type: application/javascript; charset=UTF-8
                                        
access-control-allow-origin: *
access-control-allow-credentials: true
access-control-allow-headers: Cache-Control
content-encoding: br
vary: Accept-Encoding
date: Sat, 26 Nov 2022 08:47:20 GMT
expires: Sat, 26 Nov 2022 08:47:20 GMT
cache-control: private, max-age=900
last-modified: Sat, 26 Nov 2022 06:00:00 GMT
strict-transport-security: max-age=31536000; includeSubDomains
cross-origin-resource-policy: cross-origin
server: Google Tag Manager
content-length: 43610
x-xss-protection: 0
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (1921)
Size:   43610
Md5:    7bee1eb902bd8f69d5eb98ff5133381c
Sha1:   7996dff905efe10859b4e9fbafcc70555a25542b
Sha256: a75a606fa166a2a7654d059ea183bd8a10e4078b7a378ed558b2161388f27ef1
                                        
                                            GET /wp-content/plugins/designthemes-core-features/shortcodes/css/dt-scrolltabs.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:09 GMT
etag: "2a8a-5baf9c4724740-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1235
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   1235
Md5:    3b2265731e427ca9a6c6257c6c685a6d
Sha1:   eeeb1e4a31f43f29b9d1ad5cf6bb5587426a2d85
Sha256: 736141ee023f080cdb41e37ed494206286a482c755add11b73306f955d20ba8f
                                        
                                            GET /wp-content/plugins/dhvc-woocommerce-page/assets/css/style.css?ver=5.2.12 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Sun, 14 Feb 2021 12:30:12 GMT
etag: "3a8c-5bb4b07d69d00-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 2421
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (14988), with no line terminators
Size:   2421
Md5:    e64ce9c177d9de5e002226b1841eac5b
Sha1:   7780b17e808c5039250a0386919b1f98815992ba
Sha256: eb029c21fd76084c03e5a8c207be004667b13c5f7e793d9ac5bf0df46c00792f
                                        
                                            GET /gtag/js?id=G-KCQBY61PMB HTTP/1.1 
Host: www.googletagmanager.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Sec-Fetch-Dest: script
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
TE: trailers

search
                                         142.250.74.168
HTTP/2 200 OK
content-type: application/javascript; charset=UTF-8
                                        
access-control-allow-origin: *
access-control-allow-credentials: true
access-control-allow-headers: Cache-Control
content-encoding: br
vary: Accept-Encoding
date: Sat, 26 Nov 2022 08:47:20 GMT
expires: Sat, 26 Nov 2022 08:47:20 GMT
cache-control: private, max-age=900
strict-transport-security: max-age=31536000; includeSubDomains
cross-origin-resource-policy: cross-origin
server: Google Tag Manager
content-length: 76020
x-xss-protection: 0
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,quic=":443"; ma=2592000; v="46,43"
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (19102)
Size:   76020
Md5:    daa012015ac262733553b44cb747e2b0
Sha1:   579ed6c5e2e75c112deb7b3a3de601691b6b947a
Sha256: 32aec3214f60367036e45be6d278e2b64d70aa6d8ad9d255d43997ddd3960f2c
                                        
                                            GET /wp-content/themes/soulmedic/style.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "267-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 398
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text
Size:   398
Md5:    ab3c868bc89ea4f8e0f171260b09cd6a
Sha1:   3049d5f5ca59b98b6533fd1810e2328a352b003d
Sha256: 6f2403e1be9d41b9906cfa9be09c7ccbb4ed692eaf0d71d89f2b40601a32e611
                                        
                                            GET /wp-content/themes/soulmedic/css/widget.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "fec2-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 9290
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (648), with CRLF line terminators
Size:   9290
Md5:    225bdf2f5a635ab8da57e92f92be6b76
Sha1:   9d14292088b9bece5579c4162d5c7e5eff02e917
Sha256: cbbec17ca750c5ec37137777a11f8ba3083a96cb753a2ef381a496f3a438eef1
                                        
                                            GET /wp-content/themes/soulmedic/css/grid.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "7242-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 4271
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (375), with CRLF line terminators
Size:   4271
Md5:    0123c1f2080d612f21c78624ff723d45
Sha1:   776fc490f2bdbfdf97c897b2b29d1c53cfad34e6
Sha256: 24f37f8842b2dfac260f8c3162d35cc4664e59c8a0504dddbdf669c62e3af575
                                        
                                            GET /wp-content/themes/soulmedic/css/pe-icon-7-stroke.css?ver=5.9.5 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "260b-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 1820
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with CRLF line terminators
Size:   1820
Md5:    420d28f03e55d30a8127cf0dc5e5f6c9
Sha1:   d9fd27b924dde27a37e4f9e4d3c7f00a0f15d795
Sha256: 14662b529fd25459ac990c6c76b3321d464dc469e893a5e34a030d4a186ed88c
                                        
                                            GET /wp-content/themes/soulmedic/css/woocommerce/woocommerce-default.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "3435b-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 17783
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (690)
Size:   17783
Md5:    edb36b042083d6afe8b61cbbd0eb1fe0
Sha1:   7557f019d0e678b546d33acb4e236330c4606aec
Sha256: 0c15f3e6c0715c5d719a0e1dc2db4a7be06908ec916fcae55b3bec3ecb9d4007
                                        
                                            GET /wp-content/themes/soulmedic/css/woocommerce/woocommerce-custom.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "1521a-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 5960
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with very long lines (487), with CRLF line terminators
Size:   5960
Md5:    3361b1d5702138a2a51f2ade671cf20a
Sha1:   87f74a9449f4e68ec4f12f465e7b2c5731387169
Sha256: 916f718f0696bbd9a57d83ab1379d52e9bac1cb7d5702962084c837285238b54
                                        
                                            GET /wp-content/plugins/revslider/public/assets/assets/transparent.png HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: image/avif,image/webp,*/*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: image/png
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:33:13 GMT
etag: "7a-5baf9c4af5040"
accept-ranges: bytes
content-length: 122
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  PNG image data, 300 x 200, 1-bit grayscale, non-interlaced\012- data
Size:   122
Md5:    86c58b484b48eac285e131e8b55d2ce7
Sha1:   3d3ee4c137a6f36e5fbee31e21a4d08f2c38d20e
Sha256: 9603ffeb6772f1cf745e0097d5d6c046eaf16151e5bc521f20764bba5ddb7713
                                        
                                            GET /wp-content/themes/soulmedic/css/blog.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "614b4-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 29712
X-Firefox-Spdy: h2


--- Additional Info ---
Magic:  ASCII text, with CRLF line terminators
Size:   29712
Md5:    04bacb6bbce3fdc36e9b6018227d30ce
Sha1:   34b18240bf85645d286f8aef5a48f0bdabfde07d
Sha256: 3a6a56a267dfa02900db4741fe2e215d4737fa5a73f9edb006b0a5bc1dd23bf0
                                        
                                            GET /wp-content/themes/soulmedic/css/base.css?ver=4.4 HTTP/1.1 
Host: www.todapharma.com
                                        
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0
Accept: text/css,*/*;q=0.1
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Referer: https://www.todapharma.com/
Cookie: PHPSESSID=e1fb7cea80156e855118945c594a2831
Sec-Fetch-Dest: style
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin
TE: trailers

search
                                         83.166.138.66
HTTP/2 200 OK
content-type: text/css
                                        
date: Sat, 26 Nov 2022 08:47:20 GMT
server: Apache
strict-transport-security: max-age=16000000
last-modified: Wed, 10 Feb 2021 11:32:37 GMT
etag: "c12d-5baf9c289ff40-gzip"
accept-ranges: bytes
vary: Accept-Encoding
content-encoding: gzip
content-length: 8029
X-Firefox-Spdy: h2


--- Additional Info ---