MMCT TEAM
Server IP : 162.214.80.37  /  Your IP : 216.73.216.83
Web Server : Apache
System : Linux sh013.webhostingservices.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : imyrqtmy ( 2189)
PHP Version : 8.2.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home2/imyrqtmy/public_html/ajindiaelevator/assets/js/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home2/imyrqtmy/public_html/ajindiaelevator/assets/js/cube.portfolio.js
/*!
 * Cube Portfolio - Responsive jQuery Grid Plugin
 *
 * version: 3.4.0 (15 November, 2015)
 * require: jQuery v1.7+
 *
 * Copyright 2013-2015, Mihai Buricea (http://scriptpie.com/cubeportfolio/live-preview/)
 * Licensed under CodeCanyon License (http://codecanyon.net/licenses)
 *
 */
!(function (a, b, c, d) {
    "use strict";
    function e(b, c, d) {
        var f,
            g = this,
            h = "cbp";
        if (a.data(b, "cubeportfolio")) throw new Error("cubeportfolio is already initialized. Destroy it before initialize again!");
        a.data(b, "cubeportfolio", g),
            (g.options = a.extend({}, a.fn.cubeportfolio.options, c)),
            (g.isAnimating = !0),
            (g.defaultFilter = g.options.defaultFilter),
            (g.registeredEvents = []),
            (g.queue = []),
            (g.addedWrapp = !1),
            a.isFunction(d) && g.registerEvent("initFinish", d, !0),
            (g.obj = b),
            (g.$obj = a(b)),
            (f = g.$obj.children()),
            g.options.caption && ("expand" === g.options.caption || e["private"].modernBrowser || (g.options.caption = "minimal"), (h += " cbp-caption-active cbp-caption-" + g.options.caption)),
            g.$obj.addClass(h),
            (0 === f.length || f.first().hasClass("cbp-item")) && (g.wrapInner(g.obj, "cbp-wrapper"), (g.addedWrapp = !0)),
            (g.$ul = g.$obj.children().addClass("cbp-wrapper")),
            g.wrapInner(g.obj, "cbp-wrapper-outer"),
            (g.wrapper = g.$obj.children(".cbp-wrapper-outer")),
            (g.blocks = g.$ul.children(".cbp-item")),
            (g.blocksOn = g.blocks),
            g.wrapInner(g.blocks, "cbp-item-wrapper"),
            (g.plugins = a.map(e.plugins, function (a) {
                return a(g);
            })),
            g.loadImages(g.$obj, g.display);
    }
    a.extend(e.prototype, {
        storeData: function (b, c) {
            var d = this;
            (c = c || 0),
                b.each(function (b, e) {
                    var f = a(e),
                        g = f.width(),
                        h = f.height();
                    f.data("cbp", {
                        index: c + b,
                        wrapper: f.children(".cbp-item-wrapper"),
                        widthInitial: g,
                        heightInitial: h,
                        width: g,
                        height: h,
                        widthAndGap: g + d.options.gapVertical,
                        heightAndGap: h + d.options.gapHorizontal,
                        left: null,
                        leftNew: null,
                        top: null,
                        topNew: null,
                        pack: !1,
                    });
                });
        },
        wrapInner: function (a, b) {
            var e, f, g;
            if (((b = b || ""), !(a.length && a.length < 1)))
                for (a.length === d && (a = [a]), f = a.length - 1; f >= 0; f--) {
                    for (e = a[f], g = c.createElement("div"), g.setAttribute("class", b); e.childNodes.length; ) g.appendChild(e.childNodes[0]);
                    e.appendChild(g);
                }
        },
        removeAttrImage: function (a) {
            a.removeAttribute("width"), a.removeAttribute("height"), a.removeAttribute("style");
        },
        loadImages: function (b, c) {
            var d = this;
            requestAnimationFrame(function () {
                var e = b.find("img").map(function (b, c) {
                        return c.hasAttribute("width") && c.hasAttribute("height")
                            ? ((c.style.width = c.getAttribute("width") + "px"),
                              (c.style.height = c.getAttribute("height") + "px"),
                              c.hasAttribute("data-cbp-src")
                                  ? null
                                  : (null === d.checkSrc(c.src)
                                        ? d.removeAttrImage(c)
                                        : a("<img>")
                                              .on("load.cbp error.cbp", function () {
                                                  d.removeAttrImage(c);
                                              })
                                              .attr("src", c.src),
                                    null))
                            : d.checkSrc(c.src);
                    }),
                    f = e.length;
                return 0 === f
                    ? void c.call(d)
                    : void a.each(e, function (b, e) {
                          a("<img>")
                              .on("load.cbp error.cbp", function () {
                                  f--, 0 === f && c.call(d);
                              })
                              .attr("src", e);
                      });
            });
        },
        checkSrc: function (a) {
            if ("" === a) return null;
            var b = new Image();
            return (b.src = a), b.complete && b.naturalWidth !== d && 0 !== b.naturalWidth ? null : a;
        },
        display: function () {
            var a = this;
            (a.width = a.$obj.outerWidth()),
                a.storeData(a.blocks),
                a.triggerEvent("initStartRead"),
                a.triggerEvent("initStartWrite"),
                a.layoutAndAdjustment(),
                a.triggerEvent("initEndRead"),
                a.triggerEvent("initEndWrite"),
                a.$obj.addClass("cbp-ready"),
                a.runQueue("delayFrame", a.delayFrame);
        },
        delayFrame: function () {
            var a = this;
            requestAnimationFrame(function () {
                a.resizeEvent(), a.triggerEvent("initFinish"), (a.isAnimating = !1), a.$obj.trigger("initComplete.cbp");
            });
        },
        resizeEvent: function () {
            var a,
                b = this;
            e["private"].initResizeEvent({
                instance: b,
                fn: function () {
                    var b = this;
                    b.triggerEvent("beforeResizeGrid"),
                        (a = b.$obj.outerWidth()),
                        b.width !== a && ("alignCenter" === b.options.gridAdjustment && (b.wrapper[0].style.maxWidth = ""), (b.width = a), b.layoutAndAdjustment(), b.triggerEvent("resizeGrid")),
                        b.triggerEvent("resizeWindow");
                },
            });
        },
        gridAdjust: function () {
            var b = this;
            "responsive" === b.options.gridAdjustment
                ? b.responsiveLayout()
                : (b.blocks.removeAttr("style"),
                  b.blocks.each(function (c, d) {
                      var e = a(d).data("cbp"),
                          f = d.getBoundingClientRect(),
                          g = b.columnWidthTruncate(f.right - f.left),
                          h = Math.round(f.bottom - f.top);
                      (e.height = h), (e.heightAndGap = h + b.options.gapHorizontal), (e.width = g), (e.widthAndGap = g + b.options.gapVertical);
                  }),
                  (b.widthAvailable = b.width + b.options.gapVertical)),
                b.triggerEvent("gridAdjust");
        },
        layoutAndAdjustment: function () {
            var a = this;
            a.gridAdjust(), a.layout();
        },
        layout: function () {
            var a = this;
            a.computeBlocks(a.filterConcat(a.defaultFilter)), "slider" === a.options.layoutMode ? (a.sliderLayoutReset(), a.sliderLayout()) : (a.mosaicLayoutReset(), a.mosaicLayout()), a.positionateItems(), a.resizeMainContainer();
        },
        computeFilter: function (a) {
            var b = this;
            b.computeBlocks(a), b.mosaicLayoutReset(), b.mosaicLayout(), b.filterLayout();
        },
        filterLayout: function () {
            var b = this;
            b.blocksOff.addClass("cbp-item-off"),
                b.blocksOn.removeClass("cbp-item-off").each(function (b, c) {
                    var d = a(c).data("cbp");
                    (d.left = d.leftNew), (d.top = d.topNew), (c.style.left = d.left + "px"), (c.style.top = d.top + "px");
                }),
                b.resizeMainContainer(),
                b.filterFinish();
        },
        filterFinish: function () {
            var a = this;
            a.blocksAreSorted && a.sortBlocks(a.blocks, "index"), (a.isAnimating = !1), a.$obj.trigger("filterComplete.cbp"), a.triggerEvent("filterFinish");
        },
        computeBlocks: function (a) {
            var b = this;
            (b.blocksOnInitial = b.blocksOn), (b.blocksOn = b.blocks.filter(a)), (b.blocksOff = b.blocks.not(a)), b.triggerEvent("computeBlocksFinish", a);
        },
        responsiveLayout: function () {
            var b = this;
            (b.cols = b[a.isArray(b.options.mediaQueries) ? "getColumnsBreakpoints" : "getColumnsAuto"]()),
                (b.columnWidth = b.columnWidthTruncate((b.width + b.options.gapVertical) / b.cols)),
                (b.widthAvailable = b.columnWidth * b.cols),
                "mosaic" === b.options.layoutMode && b.getMosaicWidthReference(),
                b.blocks.each(function (c, d) {
                    var e,
                        f = a(d).data("cbp"),
                        g = 1;
                    "mosaic" === b.options.layoutMode && (g = b.getColsMosaic(f.widthInitial)),
                        (e = b.columnWidth * g - b.options.gapVertical),
                        (d.style.width = e + "px"),
                        (f.width = e),
                        (f.widthAndGap = e + b.options.gapVertical),
                        (d.style.height = "");
                });
            var c = [];
            b.blocks.each(function (b, d) {
                var e = a(d),
                    f = e.data("cbp").width;
                a.each(e.find("img").filter("[width][height]"), function (a, b) {
                    var d = f / parseInt(b.getAttribute("width"), 10);
                    c.push({ el: b, width: f, height: Math.floor(parseInt(b.getAttribute("height"), 10) * d) });
                });
            }),
                a.each(c, function (a, b) {
                    (b.el.width = b.width), (b.el.height = b.height), (b.el.style.width = b.width + "px"), (b.el.style.height = b.height + "px");
                }),
                b.blocks.each(function (c, d) {
                    var e = a(d).data("cbp"),
                        f = d.getBoundingClientRect(),
                        g = Math.round(f.bottom - f.top);
                    (e.height = g), (e.heightAndGap = g + b.options.gapHorizontal);
                });
        },
        getMosaicWidthReference: function () {
            var b = this,
                c = [];
            b.blocks.each(function (b, d) {
                var e = a(d).data("cbp");
                c.push(e.widthInitial);
            }),
                c.sort(function (a, b) {
                    return a - b;
                }),
                c[0] ? (b.mosaicWidthReference = c[0]) : (b.mosaicWidthReference = b.columnWidth);
        },
        getColsMosaic: function (a) {
            var b = this;
            if (a === b.width) return b.cols;
            var c = a / b.mosaicWidthReference;
            return (c = c % 1 >= 0.79 ? Math.ceil(c) : Math.floor(c)), Math.min(Math.max(c, 1), b.cols);
        },
        getColumnsAuto: function () {
            var a = this;
            if (0 === a.blocks.length) return 1;
            var b = a.blocks.first().data("cbp").widthInitial + a.options.gapVertical;
            return Math.max(Math.round(a.width / b), 1);
        },
        getColumnsBreakpoints: function () {
            var b,
                c = this,
                e = c.width;
            return (
                a.each(c.options.mediaQueries, function (a, c) {
                    return e >= c.width ? ((b = c.cols), !1) : void 0;
                }),
                b === d && (b = c.options.mediaQueries[c.options.mediaQueries.length - 1].cols),
                b
            );
        },
        columnWidthTruncate: function (a) {
            return Math.floor(a);
        },
        positionateItems: function () {
            var b,
                c = this;
            c.blocksOn.removeClass("cbp-item-off").each(function (c, d) {
                (b = a(d).data("cbp")), (b.left = b.leftNew), (b.top = b.topNew), (d.style.left = b.left + "px"), (d.style.top = b.top + "px");
            }),
                c.blocksOff.addClass("cbp-item-off"),
                c.blocksAreSorted && c.sortBlocks(c.blocks, "index");
        },
        resizeMainContainer: function () {
            var b,
                c = this,
                f = Math.max(c.freeSpaces.slice(-1)[0].topStart - c.options.gapHorizontal, 0);
            return (
                "alignCenter" === c.options.gridAdjustment &&
                    ((b = 0),
                    c.blocksOn.each(function (c, d) {
                        var e = a(d).data("cbp"),
                            f = e.left + e.width;
                        f > b && (b = f);
                    }),
                    (c.wrapper[0].style.maxWidth = b + "px")),
                f === c.height
                    ? void c.triggerEvent("resizeMainContainer")
                    : ((c.obj.style.height = f + "px"),
                      c.height !== d &&
                          (e["private"].modernBrowser
                              ? c.$obj.one(e["private"].transitionend, function () {
                                    c.$obj.trigger("pluginResize.cbp");
                                })
                              : c.$obj.trigger("pluginResize.cbp")),
                      (c.height = f),
                      void c.triggerEvent("resizeMainContainer"))
            );
        },
        filterConcat: function (a) {
            return a.replace(/\|/gi, "");
        },
        pushQueue: function (a, b) {
            var c = this;
            (c.queue[a] = c.queue[a] || []), c.queue[a].push(b);
        },
        runQueue: function (b, c) {
            var d = this,
                e = d.queue[b] || [];
            a.when.apply(a, e).then(a.proxy(c, d));
        },
        clearQueue: function (a) {
            var b = this;
            b.queue[a] = [];
        },
        registerEvent: function (a, b, c) {
            var d = this;
            d.registeredEvents[a] || (d.registeredEvents[a] = []), d.registeredEvents[a].push({ func: b, oneTime: c || !1 });
        },
        triggerEvent: function (a, b) {
            var c,
                d,
                e = this;
            if (e.registeredEvents[a]) for (c = 0, d = e.registeredEvents[a].length; d > c; c++) e.registeredEvents[a][c].func.call(e, b), e.registeredEvents[a][c].oneTime && (e.registeredEvents[a].splice(c, 1), c--, d--);
        },
        addItems: function (b, c) {
            var d = this;
            d.wrapInner(b, "cbp-item-wrapper"),
                b.addClass("cbp-item-loading").css({ top: "100%", left: 0 }).appendTo(d.$ul),
                e["private"].modernBrowser
                    ? b.last().one(e["private"].animationend, function () {
                          d.addItemsFinish(b, c);
                      })
                    : d.addItemsFinish(b, c),
                d.loadImages(b, function () {
                    d.$obj.addClass("cbp-addItems"), d.storeData(b, d.blocks.length), a.merge(d.blocks, b), d.triggerEvent("addItemsToDOM", b), d.layoutAndAdjustment(), d.elems && e["public"].showCounter.call(d.obj, d.elems);
                });
        },
        addItemsFinish: function (b, c) {
            var d = this;
            (d.isAnimating = !1), d.$obj.removeClass("cbp-addItems"), b.removeClass("cbp-item-loading"), a.isFunction(c) && c.call(d, b);
        },
    }),
        (a.fn.cubeportfolio = function (a, b, c) {
            return this.each(function () {
                if ("object" == typeof a || !a) return e["public"].init.call(this, a, b);
                if (e["public"][a]) return e["public"][a].call(this, b, c);
                throw new Error("Method " + a + " does not exist on jquery.cubeportfolio.js");
            });
        }),
        (e.plugins = {}),
        (a.fn.cubeportfolio.constructor = e);
})(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        var e = a.fn.cubeportfolio.constructor;
        a.extend(e.prototype, {
            mosaicLayoutReset: function () {
                var b = this;
                (b.blocksAreSorted = !1),
                    b.blocksOn.each(function (b, c) {
                        a(c).data("cbp").pack = !1;
                    });
            },
            mosaicLayout: function () {
                var a,
                    b = this,
                    c = b.blocksOn.length,
                    d = {};
                for (b.freeSpaces = [{ leftStart: 0, leftEnd: b.widthAvailable, topStart: 0, topEnd: Math.pow(2, 18) }], a = 0; c > a; a++) {
                    if (((d = b.getSpaceIndexAndBlock()), null === d)) return b.sortBlocksToPreventGaps(), void b.mosaicLayout();
                    b.generateF1F2(d.spaceIndex, d.dataBlock), b.generateG1G2G3G4(d.dataBlock), b.cleanFreeSpaces(), b.addHeightToBlocks();
                }
                b.blocksAreSorted && b.sortBlocks(b.blocksOn, "topNew");
            },
            getSpaceIndexAndBlock: function () {
                var b = this,
                    c = null;
                return (
                    a.each(b.freeSpaces, function (d, e) {
                        var f = e.leftEnd - e.leftStart,
                            g = e.topEnd - e.topStart;
                        return (
                            b.blocksOn.each(function (b, h) {
                                var i = a(h).data("cbp");
                                if (i.pack !== !0) return i.widthAndGap <= f && i.heightAndGap <= g ? ((i.pack = !0), (c = { spaceIndex: d, dataBlock: i }), (i.leftNew = e.leftStart), (i.topNew = e.topStart), !1) : void 0;
                            }),
                            !b.blocksAreSorted && b.options.sortToPreventGaps && d > 0 ? ((c = null), !1) : null !== c ? !1 : void 0
                        );
                    }),
                    c
                );
            },
            generateF1F2: function (a, b) {
                var c = this,
                    d = c.freeSpaces[a],
                    e = { leftStart: d.leftStart + b.widthAndGap, leftEnd: d.leftEnd, topStart: d.topStart, topEnd: d.topEnd },
                    f = { leftStart: d.leftStart, leftEnd: d.leftEnd, topStart: d.topStart + b.heightAndGap, topEnd: d.topEnd };
                c.freeSpaces.splice(a, 1), e.leftEnd > e.leftStart && e.topEnd > e.topStart && (c.freeSpaces.splice(a, 0, e), a++), f.leftEnd > f.leftStart && f.topEnd > f.topStart && c.freeSpaces.splice(a, 0, f);
            },
            generateG1G2G3G4: function (b) {
                var c = this,
                    d = [];
                a.each(c.freeSpaces, function (a, e) {
                    var f = c.intersectSpaces(e, b);
                    return null === f ? void d.push(e) : (c.generateG1(e, f, d), c.generateG2(e, f, d), c.generateG3(e, f, d), void c.generateG4(e, f, d));
                }),
                    (c.freeSpaces = d);
            },
            intersectSpaces: function (a, b) {
                var c = { leftStart: b.leftNew, leftEnd: b.leftNew + b.widthAndGap, topStart: b.topNew, topEnd: b.topNew + b.heightAndGap };
                if (a.leftStart === c.leftStart && a.leftEnd === c.leftEnd && a.topStart === c.topStart && a.topEnd === c.topEnd) return null;
                var d = Math.max(a.leftStart, c.leftStart),
                    e = Math.min(a.leftEnd, c.leftEnd),
                    f = Math.max(a.topStart, c.topStart),
                    g = Math.min(a.topEnd, c.topEnd);
                return d >= e || f >= g ? null : { leftStart: d, leftEnd: e, topStart: f, topEnd: g };
            },
            generateG1: function (a, b, c) {
                a.topStart !== b.topStart && c.push({ leftStart: a.leftStart, leftEnd: a.leftEnd, topStart: a.topStart, topEnd: b.topStart });
            },
            generateG2: function (a, b, c) {
                a.leftEnd !== b.leftEnd && c.push({ leftStart: b.leftEnd, leftEnd: a.leftEnd, topStart: a.topStart, topEnd: a.topEnd });
            },
            generateG3: function (a, b, c) {
                a.topEnd !== b.topEnd && c.push({ leftStart: a.leftStart, leftEnd: a.leftEnd, topStart: b.topEnd, topEnd: a.topEnd });
            },
            generateG4: function (a, b, c) {
                a.leftStart !== b.leftStart && c.push({ leftStart: a.leftStart, leftEnd: b.leftStart, topStart: a.topStart, topEnd: a.topEnd });
            },
            cleanFreeSpaces: function () {
                var a = this;
                a.freeSpaces.sort(function (a, b) {
                    return a.topStart > b.topStart ? 1 : a.topStart < b.topStart ? -1 : a.leftStart > b.leftStart ? 1 : a.leftStart < b.leftStart ? -1 : 0;
                }),
                    a.correctSubPixelValues(),
                    a.removeNonMaximalFreeSpaces();
            },
            correctSubPixelValues: function () {
                var a,
                    b,
                    c,
                    d,
                    e = this;
                for (a = 0, b = e.freeSpaces.length - 1; b > a; a++) (c = e.freeSpaces[a]), (d = e.freeSpaces[a + 1]), d.topStart - c.topStart <= 1 && (d.topStart = c.topStart);
            },
            removeNonMaximalFreeSpaces: function () {
                var b = this;
                b.uniqueFreeSpaces(),
                    (b.freeSpaces = a.map(b.freeSpaces, function (c, d) {
                        return (
                            a.each(b.freeSpaces, function (a, b) {
                                return d !== a && b.leftStart <= c.leftStart && b.leftEnd >= c.leftEnd && b.topStart <= c.topStart && b.topEnd >= c.topEnd ? ((c = null), !1) : void 0;
                            }),
                            c
                        );
                    }));
            },
            uniqueFreeSpaces: function () {
                var b = this,
                    c = [];
                a.each(b.freeSpaces, function (b, d) {
                    a.each(c, function (a, b) {
                        return b.leftStart === d.leftStart && b.leftEnd === d.leftEnd && b.topStart === d.topStart && b.topEnd === d.topEnd ? ((d = null), !1) : void 0;
                    }),
                        null !== d && c.push(d);
                }),
                    (b.freeSpaces = c);
            },
            addHeightToBlocks: function () {
                var b = this;
                if (!(b.freeSpaces.length > 1)) {
                    var c = b.freeSpaces[0].topStart;
                    b.blocksOn.each(function (b, d) {
                        var e = a(d).data("cbp");
                        if (e.pack === !0) {
                            var f = c - e.topNew - e.heightAndGap;
                            0 > f && (d.style.height = e.height + f + "px");
                        }
                    });
                }
            },
            sortBlocksToPreventGaps: function () {
                var b = this;
                (b.blocksAreSorted = !0),
                    b.blocksOn.sort(function (b, c) {
                        var d = a(b).data("cbp"),
                            e = a(c).data("cbp");
                        return d.widthAndGap < e.widthAndGap ? 1 : d.widthAndGap > e.widthAndGap ? -1 : d.heightAndGap < e.heightAndGap ? 1 : d.heightAndGap > e.heightAndGap ? -1 : d.index > e.index ? 1 : d.index < e.index ? -1 : void 0;
                    }),
                    b.blocksOn.each(function (b, c) {
                        (a(c).data("cbp").pack = !1), (c.style.height = "");
                    });
            },
            sortBlocks: function (b, c) {
                b.sort(function (b, d) {
                    var e = a(b).data("cbp"),
                        f = a(d).data("cbp");
                    return e[c] > f[c] ? 1 : e[c] < f[c] ? -1 : e.leftNew > f.leftNew ? 1 : e.leftNew < f.leftNew ? -1 : 0;
                });
            },
        });
    })(jQuery, window, document),
    (jQuery.fn.cubeportfolio.options = {
        filters: "",
        loadMore: "",
        loadMoreAction: "click",
        search: "",
        layoutMode: "grid",
        sortToPreventGaps: !1,
        drag: !0,
        auto: !1,
        autoTimeout: 5e3,
        autoPauseOnHover: !0,
        showNavigation: !0,
        showPagination: !0,
        rewindNav: !0,
        scrollByPage: !1,
        defaultFilter: "*",
        filterDeeplinking: !1,
        animationType: "fadeOut",
        gridAdjustment: "responsive",
        mediaQueries: !1,
        gapHorizontal: 10,
        gapVertical: 10,
        caption: "pushTop",
        displayType: "fadeIn",
        displayTypeSpeed: 400,
        lightboxDelegate: ".cbp-lightbox",
        lightboxGallery: !0,
        lightboxTitleSrc: "data-title",
        lightboxCounter: '<div class="cbp-popup-lightbox-counter">{{current}} of {{total}}</div>',
        singlePageDelegate: ".cbp-singlePage",
        singlePageDeeplinking: !0,
        singlePageStickyNavigation: !0,
        singlePageCounter: '<div class="cbp-popup-singlePage-counter">{{current}} of {{total}}</div>',
        singlePageAnimation: "left",
        singlePageCallback: function (a, b) {},
        singlePageInlineDelegate: ".cbp-singlePageInline",
        singlePageInlineDeeplinking: !1,
        singlePageInlinePosition: "top",
        singlePageInlineInFocus: !0,
        singlePageInlineCallback: function (a, b) {},
        plugins: {},
    }),
    (function (a, b, c, d) {
        "use strict";
        var e = a.fn.cubeportfolio.constructor;
        (e["private"] = {
            resizeEventArray: [],
            initResizeEvent: function (a) {
                var b = e["private"];
                0 === b.resizeEventArray.length && b.resizeEvent(), b.resizeEventArray.push(a);
            },
            destroyResizeEvent: function (c) {
                var d = e["private"],
                    f = a.map(d.resizeEventArray, function (a, b) {
                        return a.instance !== c ? a : void 0;
                    });
                (d.resizeEventArray = f), 0 === d.resizeEventArray.length && a(b).off("resize.cbp");
            },
            resizeEvent: function () {
                var c,
                    d = e["private"];
                a(b).on("resize.cbp", function () {
                    clearTimeout(c),
                        (c = setTimeout(function () {
                            b.innerHeight != screen.height &&
                                a.each(d.resizeEventArray, function (a, b) {
                                    b.fn.call(b.instance);
                                });
                        }, 50));
                });
            },
            checkInstance: function (b) {
                var c = a.data(this, "cubeportfolio");
                if (!c) throw new Error("cubeportfolio is not initialized. Initialize it before calling " + b + " method!");
                return c.triggerEvent("publicMethod"), c;
            },
            browserInfo: function () {
                var a,
                    c,
                    f,
                    g = e["private"],
                    h = navigator.appVersion;
                -1 !== h.indexOf("MSIE 8.")
                    ? (g.browser = "ie8")
                    : -1 !== h.indexOf("MSIE 9.")
                    ? (g.browser = "ie9")
                    : -1 !== h.indexOf("MSIE 10.")
                    ? (g.browser = "ie10")
                    : b.ActiveXObject || "ActiveXObject" in b
                    ? (g.browser = "ie11")
                    : /android/gi.test(h)
                    ? (g.browser = "android")
                    : /iphone|ipad|ipod/gi.test(h)
                    ? (g.browser = "ios")
                    : /chrome/gi.test(h)
                    ? (g.browser = "chrome")
                    : (g.browser = ""),
                    (f = g.styleSupport("perspective")),
                    typeof f !== d &&
                        ((a = g.styleSupport("transition")),
                        (g.transitionend = { WebkitTransition: "webkitTransitionEnd", transition: "transitionend" }[a]),
                        (c = g.styleSupport("animation")),
                        (g.animationend = { WebkitAnimation: "webkitAnimationEnd", animation: "animationend" }[c]),
                        (g.animationDuration = { WebkitAnimation: "webkitAnimationDuration", animation: "animationDuration" }[c]),
                        (g.animationDelay = { WebkitAnimation: "webkitAnimationDelay", animation: "animationDelay" }[c]),
                        (g.transform = g.styleSupport("transform")),
                        a && c && g.transform && (g.modernBrowser = !0));
            },
            styleSupport: function (a) {
                var b,
                    d = "Webkit" + a.charAt(0).toUpperCase() + a.slice(1),
                    e = c.createElement("div");
                return a in e.style ? (b = a) : d in e.style && (b = d), (e = null), b;
            },
        }),
            e["private"].browserInfo();
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        var e = a.fn.cubeportfolio.constructor;
        e["public"] = {
            init: function (a, b) {
                new e(this, a, b);
            },
            destroy: function (b) {
                var c = e["private"].checkInstance.call(this, "destroy");
                c.triggerEvent("beforeDestroy"),
                    a.removeData(this, "cubeportfolio"),
                    c.blocks.removeData("cbp"),
                    c.$obj.removeClass("cbp-ready").removeAttr("style"),
                    c.$ul.removeClass("cbp-wrapper"),
                    e["private"].destroyResizeEvent(c),
                    c.$obj.off(".cbp"),
                    c.blocks.removeClass("cbp-item-off").removeAttr("style"),
                    c.blocks.find(".cbp-item-wrapper").children().unwrap(),
                    c.options.caption && c.$obj.removeClass("cbp-caption-active cbp-caption-" + c.options.caption),
                    c.destroySlider(),
                    c.$ul.unwrap(),
                    c.addedWrapp && c.blocks.unwrap(),
                    a.each(c.plugins, function (a, b) {
                        "function" == typeof b.destroy && b.destroy();
                    }),
                    a.isFunction(b) && b.call(c),
                    c.triggerEvent("afterDestroy");
            },
            filter: function (b, c) {
                var f,
                    g = e["private"].checkInstance.call(this, "filter");
                if (!g.isAnimating) {
                    if (((g.isAnimating = !0), a.isFunction(c) && g.registerEvent("filterFinish", c, !0), a.isFunction(b))) {
                        if (((f = b.call(g, g.blocks)), f === d)) throw new Error("When you call cubeportfolio API `filter` method with a param of type function you must return the blocks that will be visible.");
                    } else {
                        if (g.options.filterDeeplinking) {
                            var h = location.href.replace(/#cbpf=(.*?)([#\?&]|$)/gi, "");
                            (location.href = h + "#cbpf=" + encodeURIComponent(b)), g.singlePage && g.singlePage.url && (g.singlePage.url = location.href);
                        }
                        (g.defaultFilter = b), (f = g.filterConcat(g.defaultFilter));
                    }
                    g.singlePageInline && g.singlePageInline.isOpen
                        ? g.singlePageInline.close("promise", {
                              callback: function () {
                                  g.computeFilter(f);
                              },
                          })
                        : g.computeFilter(f);
                }
            },
            showCounter: function (b, c) {
                var d = e["private"].checkInstance.call(this, "showCounter");
                (d.elems = b),
                    a.each(b, function () {
                        var b,
                            c = a(this),
                            e = c.data("filter");
                        (b = d.blocks.filter(e).length), c.find(".cbp-filter-counter").text(b);
                    }),
                    a.isFunction(c) && c.call(d);
            },
            appendItems: function (b, c) {
                var d = e["private"].checkInstance.call(this, "appendItems"),
                    f = a(b).filter(".cbp-item");
                return d.isAnimating || f.length < 1
                    ? void (a.isFunction(c) && c.call(d, f))
                    : ((d.isAnimating = !0),
                      void (d.singlePageInline && d.singlePageInline.isOpen
                          ? d.singlePageInline.close("promise", {
                                callback: function () {
                                    d.addItems(f, c);
                                },
                            })
                          : d.addItems(f, c)));
            },
        };
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        var e = a.fn.cubeportfolio.constructor;
        a.extend(e.prototype, {
            updateSliderPagination: function () {
                var b,
                    c,
                    d = this;
                if (d.options.showPagination) {
                    for (b = Math.ceil(d.blocksOn.length / d.cols), d.navPagination.empty(), c = b - 1; c >= 0; c--) a("<div/>", { class: "cbp-nav-pagination-item", "data-slider-action": "jumpTo" }).appendTo(d.navPagination);
                    d.navPaginationItems = d.navPagination.children();
                }
                d.enableDisableNavSlider();
            },
            destroySlider: function () {
                var b = this;
                "slider" === b.options.layoutMode &&
                    (b.$obj.off(".cbp"),
                    b.$obj.removeClass("cbp-mode-slider"),
                    b.options.showNavigation && (b.nav.off(".cbp"), b.nav.remove()),
                    b.navPagination && b.navPagination.remove(),
                    b.$ul.removeAttr("style"),
                    b.$ul.off(".cbp"),
                    a(c).off(".cbp"),
                    b.options.auto && b.stopSliderAuto());
            },
            nextSlider: function (a) {
                var b = this;
                if (b.isEndSlider()) {
                    if (!b.isRewindNav()) return;
                    b.sliderActive = 0;
                } else b.options.scrollByPage ? (b.sliderActive = Math.min(b.sliderActive + b.cols, b.blocksOn.length - b.cols)) : (b.sliderActive += 1);
                b.goToSlider();
            },
            prevSlider: function (a) {
                var b = this;
                if (b.isStartSlider()) {
                    if (!b.isRewindNav()) return;
                    b.sliderActive = b.blocksOn.length - b.cols;
                } else b.options.scrollByPage ? (b.sliderActive = Math.max(0, b.sliderActive - b.cols)) : (b.sliderActive -= 1);
                b.goToSlider();
            },
            jumpToSlider: function (a) {
                var b = this,
                    c = Math.min(a.index() * b.cols, b.blocksOn.length - b.cols);
                c !== b.sliderActive && ((b.sliderActive = c), b.goToSlider());
            },
            jumpDragToSlider: function (a) {
                var b,
                    c,
                    d,
                    e = this,
                    f = a > 0 ? !0 : !1;
                e.options.scrollByPage ? ((b = e.cols * e.columnWidth), (c = e.cols)) : ((b = e.columnWidth), (c = 1)),
                    (a = Math.abs(a)),
                    (d = Math.floor(a / b) * c),
                    a % b > 20 && (d += c),
                    f ? (e.sliderActive = Math.min(e.sliderActive + d, e.blocksOn.length - e.cols)) : (e.sliderActive = Math.max(0, e.sliderActive - d)),
                    e.goToSlider();
            },
            isStartSlider: function () {
                return 0 === this.sliderActive;
            },
            isEndSlider: function () {
                var a = this;
                return a.sliderActive + a.cols > a.blocksOn.length - 1;
            },
            goToSlider: function () {
                var a = this;
                a.enableDisableNavSlider(), a.updateSliderPosition();
            },
            startSliderAuto: function () {
                var a = this;
                return a.isDrag
                    ? void a.stopSliderAuto()
                    : void (a.timeout = setTimeout(function () {
                          a.nextSlider(), a.startSliderAuto();
                      }, a.options.autoTimeout));
            },
            stopSliderAuto: function () {
                clearTimeout(this.timeout);
            },
            enableDisableNavSlider: function () {
                var a,
                    b,
                    c = this;
                c.isRewindNav() || ((b = c.isStartSlider() ? "addClass" : "removeClass"), c.navPrev[b]("cbp-nav-stop"), (b = c.isEndSlider() ? "addClass" : "removeClass"), c.navNext[b]("cbp-nav-stop")),
                    c.options.showPagination &&
                        ((a = c.options.scrollByPage ? Math.ceil(c.sliderActive / c.cols) : c.isEndSlider() ? c.navPaginationItems.length - 1 : Math.floor(c.sliderActive / c.cols)),
                        c.navPaginationItems.removeClass("cbp-nav-pagination-active").eq(a).addClass("cbp-nav-pagination-active")),
                    c.customPagination &&
                        ((a = c.options.scrollByPage ? Math.ceil(c.sliderActive / c.cols) : c.isEndSlider() ? c.customPaginationItems.length - 1 : Math.floor(c.sliderActive / c.cols)),
                        c.customPaginationItems.removeClass(c.customPaginationClass).eq(a).addClass(c.customPaginationClass));
            },
            isRewindNav: function () {
                var a = this;
                return a.options.showNavigation ? (a.blocksOn.length <= a.cols ? !1 : a.options.rewindNav ? !0 : !1) : !0;
            },
            sliderItemsLength: function () {
                return this.blocksOn.length <= this.cols;
            },
            sliderLayout: function () {
                var b = this;
                b.blocksOn.each(function (c, d) {
                    var e = a(d).data("cbp");
                    (e.leftNew = b.columnWidth * c), (e.topNew = 0), b.sliderFreeSpaces.push({ topStart: e.heightAndGap });
                }),
                    b.getFreeSpacesForSlider(),
                    b.$ul.width(b.columnWidth * b.blocksOn.length - b.options.gapVertical);
            },
            getFreeSpacesForSlider: function () {
                var a = this;
                (a.freeSpaces = a.sliderFreeSpaces.slice(a.sliderActive, a.sliderActive + a.cols)),
                    a.freeSpaces.sort(function (a, b) {
                        return a.topStart > b.topStart ? 1 : a.topStart < b.topStart ? -1 : void 0;
                    });
            },
            updateSliderPosition: function () {
                var a = this,
                    b = -a.sliderActive * a.columnWidth;
                e["private"].modernBrowser ? (a.$ul[0].style[e["private"].transform] = "translate3d(" + b + "px, 0px, 0)") : (a.$ul[0].style.left = b + "px"), a.getFreeSpacesForSlider(), a.resizeMainContainer();
            },
            dragSlider: function () {
                function f(b) {
                    if (!q.sliderItemsLength()) {
                        if ((u ? (p = b) : b.preventDefault(), q.options.auto && q.stopSliderAuto(), s))
                            return void a(m).one("click.cbp", function () {
                                return !1;
                            });
                        (m = a(b.target)), (k = j(b).x), (l = 0), (n = -q.sliderActive * q.columnWidth), (o = q.columnWidth * (q.blocksOn.length - q.cols)), r.on(t.move, h), r.on(t.end, g), q.$obj.addClass("cbp-mode-slider-dragStart");
                    }
                }
                function g(a) {
                    q.$obj.removeClass("cbp-mode-slider-dragStart"),
                        requestAnimationFrame(function () {
                            (s = !0),
                                0 !== l
                                    ? (m.one("click.cbp", function () {
                                          return !1;
                                      }),
                                      q.jumpDragToSlider(l),
                                      q.$ul.one(e["private"].transitionend, i))
                                    : i.call(q),
                                r.off(t.move),
                                r.off(t.end);
                        });
                }
                function h(a) {
                    (l = k - j(a).x), (l > 8 || -8 > l) && a.preventDefault(), (q.isDrag = !0);
                    var b = n - l;
                    0 > l && n > l ? (b = (n - l) / 5) : l > 0 && -o > n - l && (b = -o + (o + n - l) / 5),
                        e["private"].modernBrowser ? (q.$ul[0].style[e["private"].transform] = "translate3d(" + b + "px, 0px, 0)") : (q.$ul[0].style.left = b + "px");
                }
                function i() {
                    if (((s = !1), (q.isDrag = !1), q.options.auto)) {
                        if (q.mouseIsEntered) return;
                        q.startSliderAuto();
                    }
                }
                function j(a) {
                    return a.originalEvent !== d && a.originalEvent.touches !== d && (a = a.originalEvent.touches[0]), { x: a.pageX, y: a.pageY };
                }
                var k,
                    l,
                    m,
                    n,
                    o,
                    p,
                    q = this,
                    r = a(c),
                    s = !1,
                    t = {},
                    u = !1;
                (q.isDrag = !1),
                    "ontouchstart" in b || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0
                        ? ((t = { start: "touchstart.cbp", move: "touchmove.cbp", end: "touchend.cbp" }), (u = !0))
                        : (t = { start: "mousedown.cbp", move: "mousemove.cbp", end: "mouseup.cbp" }),
                    q.$ul.on(t.start, f);
            },
            sliderLayoutReset: function () {
                var a = this;
                (a.freeSpaces = []), (a.sliderFreeSpaces = []);
            },
        });
    })(jQuery, window, document),
    "function" != typeof Object.create &&
        (Object.create = function (a) {
            function b() {}
            return (b.prototype = a), new b();
        }),
    (function () {
        for (var a = 0, b = ["moz", "webkit"], c = 0; c < b.length && !window.requestAnimationFrame; c++)
            (window.requestAnimationFrame = window[b[c] + "RequestAnimationFrame"]), (window.cancelAnimationFrame = window[b[c] + "CancelAnimationFrame"] || window[b[c] + "CancelRequestAnimationFrame"]);
        window.requestAnimationFrame ||
            (window.requestAnimationFrame = function (b, c) {
                var d = new Date().getTime(),
                    e = Math.max(0, 16 - (d - a)),
                    f = window.setTimeout(function () {
                        b(d + e);
                    }, e);
                return (a = d + e), f;
            }),
            window.cancelAnimationFrame ||
                (window.cancelAnimationFrame = function (a) {
                    clearTimeout(a);
                });
    })(),
    (function (a, b, c, d) {
        "use strict";
        function e(a) {
            var b = this;
            (b.parent = a),
                (a.filterLayout = b.filterLayout),
                a.registerEvent("computeBlocksFinish", function (b) {
                    (a.blocksOn2On = a.blocksOnInitial.filter(b)), (a.blocksOn2Off = a.blocksOnInitial.not(b));
                });
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.filterLayout = function () {
            function b() {
                c.blocks.removeClass("cbp-item-on2off cbp-item-off2on cbp-item-on2on").each(function (b, c) {
                    var d = a(c).data("cbp");
                    (d.left = d.leftNew), (d.top = d.topNew), (c.style.left = d.left + "px"), (c.style.top = d.top + "px"), (c.style[f["private"].transform] = "");
                }),
                    c.blocksOff.addClass("cbp-item-off"),
                    c.$obj.removeClass("cbp-animation-" + c.options.animationType),
                    c.filterFinish();
            }
            var c = this;
            c.$obj.addClass("cbp-animation-" + c.options.animationType),
                c.blocksOn2On.addClass("cbp-item-on2on").each(function (b, c) {
                    var d = a(c).data("cbp");
                    c.style[f["private"].transform] = "translate3d(" + (d.leftNew - d.left) + "px, " + (d.topNew - d.top) + "px, 0)";
                }),
                c.blocksOn2Off.addClass("cbp-item-on2off"),
                (c.blocksOff2On = c.blocksOn
                    .filter(".cbp-item-off")
                    .removeClass("cbp-item-off")
                    .addClass("cbp-item-off2on")
                    .each(function (b, c) {
                        var d = a(c).data("cbp");
                        (c.style.left = d.leftNew + "px"), (c.style.top = d.topNew + "px");
                    })),
                c.blocksOn2Off.length ? c.blocksOn2Off.last().data("cbp").wrapper.one(f["private"].animationend, b) : c.blocksOff2On.length ? c.blocksOff2On.last().data("cbp").wrapper.one(f["private"].animationend, b) : b(),
                c.resizeMainContainer();
        }),
            (e.prototype.destroy = function () {
                var a = this.parent;
                a.$obj.removeClass("cbp-animation-" + a.options.animationType);
            }),
            (f.plugins.animationClassic = function (b) {
                return !f["private"].modernBrowser || a.inArray(b.options.animationType, ["boxShadow", "fadeOut", "flipBottom", "flipOut", "quicksand", "scaleSides", "skew"]) < 0 ? null : new e(b);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(a) {
            var b = this;
            (b.parent = a), (a.filterLayout = b.filterLayout);
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.filterLayout = function () {
            function b() {
                c.wrapper[0].removeChild(d),
                    "sequentially" === c.options.animationType &&
                        c.blocksOn.each(function (b, c) {
                            a(c).data("cbp").wrapper[0].style[f["private"].animationDelay] = "";
                        }),
                    c.$obj.removeClass("cbp-animation-" + c.options.animationType),
                    c.filterFinish();
            }
            var c = this,
                d = c.$ul[0].cloneNode(!0);
            d.setAttribute("class", "cbp-wrapper-helper"),
                c.wrapper[0].insertBefore(d, c.$ul[0]),
                requestAnimationFrame(function () {
                    c.$obj.addClass("cbp-animation-" + c.options.animationType),
                        c.blocksOff.addClass("cbp-item-off"),
                        c.blocksOn.removeClass("cbp-item-off").each(function (b, d) {
                            var e = a(d).data("cbp");
                            (e.left = e.leftNew),
                                (e.top = e.topNew),
                                (d.style.left = e.left + "px"),
                                (d.style.top = e.top + "px"),
                                "sequentially" === c.options.animationType && (e.wrapper[0].style[f["private"].animationDelay] = 60 * b + "ms");
                        }),
                        c.blocksOn.length ? c.blocksOn.last().data("cbp").wrapper.one(f["private"].animationend, b) : c.blocksOnInitial.length ? c.blocksOnInitial.last().data("cbp").wrapper.one(f["private"].animationend, b) : b(),
                        c.resizeMainContainer();
                });
        }),
            (e.prototype.destroy = function () {
                var a = this.parent;
                a.$obj.removeClass("cbp-animation-" + a.options.animationType);
            }),
            (f.plugins.animationClone = function (b) {
                return !f["private"].modernBrowser || a.inArray(b.options.animationType, ["fadeOutTop", "slideLeft", "sequentially"]) < 0 ? null : new e(b);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(a) {
            var b = this;
            (b.parent = a), (a.filterLayout = b.filterLayout);
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.filterLayout = function () {
            function b() {
                c.wrapper[0].removeChild(d[0]),
                    c.$obj.removeClass("cbp-animation-" + c.options.animationType),
                    c.blocks.each(function (b, c) {
                        a(c).data("cbp").wrapper[0].style[f["private"].animationDelay] = "";
                    }),
                    c.filterFinish();
            }
            var c = this,
                d = c.$ul.clone(!0, !0);
            d[0].setAttribute("class", "cbp-wrapper-helper"), c.wrapper[0].insertBefore(d[0], c.$ul[0]);
            var e = d.find(".cbp-item").not(".cbp-item-off");
            c.sortBlocks(e, "top"),
                e.children(".cbp-item-wrapper").each(function (a, b) {
                    b.style[f["private"].animationDelay] = 50 * a + "ms";
                }),
                requestAnimationFrame(function () {
                    c.$obj.addClass("cbp-animation-" + c.options.animationType),
                        c.blocksOff.addClass("cbp-item-off"),
                        c.blocksOn.removeClass("cbp-item-off").each(function (b, c) {
                            var d = a(c).data("cbp");
                            (d.left = d.leftNew), (d.top = d.topNew), (c.style.left = d.left + "px"), (c.style.top = d.top + "px"), (d.wrapper[0].style[f["private"].animationDelay] = 50 * b + "ms");
                        });
                    var d = c.blocksOn.length,
                        g = e.length;
                    0 === d && 0 === g ? b() : g > d ? e.last().children(".cbp-item-wrapper").one(f["private"].animationend, b) : c.blocksOn.last().data("cbp").wrapper.one(f["private"].animationend, b), c.resizeMainContainer();
                });
        }),
            (e.prototype.destroy = function () {
                var a = this.parent;
                a.$obj.removeClass("cbp-animation-" + a.options.animationType);
            }),
            (f.plugins.animationCloneDelay = function (b) {
                return !f["private"].modernBrowser || a.inArray(b.options.animationType, ["3dflip", "flipOutDelay", "foldLeft", "frontRow", "rotateRoom", "rotateSides", "scaleDown", "slideDelay", "unfold"]) < 0 ? null : new e(b);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(a) {
            var b = this;
            (b.parent = a), (a.filterLayout = b.filterLayout);
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.filterLayout = function () {
            function b() {
                c.wrapper[0].removeChild(d), c.$obj.removeClass("cbp-animation-" + c.options.animationType), c.filterFinish();
            }
            var c = this,
                d = c.$ul[0].cloneNode(!0);
            d.setAttribute("class", "cbp-wrapper-helper"),
                c.wrapper[0].insertBefore(d, c.$ul[0]),
                requestAnimationFrame(function () {
                    c.$obj.addClass("cbp-animation-" + c.options.animationType),
                        c.blocksOff.addClass("cbp-item-off"),
                        c.blocksOn.removeClass("cbp-item-off").each(function (b, c) {
                            var d = a(c).data("cbp");
                            (d.left = d.leftNew), (d.top = d.topNew), (c.style.left = d.left + "px"), (c.style.top = d.top + "px");
                        }),
                        c.blocksOn.length ? c.$ul.one(f["private"].animationend, b) : c.blocksOnInitial.length ? a(d).one(f["private"].animationend, b) : b(),
                        c.resizeMainContainer();
                });
        }),
            (e.prototype.destroy = function () {
                var a = this.parent;
                a.$obj.removeClass("cbp-animation-" + a.options.animationType);
            }),
            (f.plugins.animationWrapper = function (b) {
                return !f["private"].modernBrowser || a.inArray(b.options.animationType, ["bounceBottom", "bounceLeft", "bounceTop", "moveLeft"]) < 0 ? null : new e(b);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b),
                b.registerEvent(
                    "initFinish",
                    function () {
                        b.$obj.on("click.cbp", ".cbp-caption-defaultWrap", function (c) {
                            if ((c.preventDefault(), !b.isAnimating)) {
                                b.isAnimating = !0;
                                var d = a(this),
                                    e = d.next(),
                                    f = d.parent(),
                                    g = { position: "relative", height: e.outerHeight(!0) },
                                    h = { position: "relative", height: 0 };
                                if ((b.$obj.addClass("cbp-caption-expand-active"), f.hasClass("cbp-caption-expand-open"))) {
                                    var i = h;
                                    (h = g), (g = i), f.removeClass("cbp-caption-expand-open");
                                }
                                e.css(g),
                                    b.$obj.one("pluginResize.cbp", function () {
                                        (b.isAnimating = !1), b.$obj.removeClass("cbp-caption-expand-active"), 0 === g.height && (f.removeClass("cbp-caption-expand-open"), e.attr("style", ""));
                                    }),
                                    b.layoutAndAdjustment(),
                                    e.css(h),
                                    requestAnimationFrame(function () {
                                        f.addClass("cbp-caption-expand-open"), e.css(g), b.triggerEvent("gridAdjust"), b.triggerEvent("resizeGrid");
                                    });
                            }
                        });
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.destroy = function () {
            this.parent.$obj.find(".cbp-caption-defaultWrap").off("click.cbp").parent().removeClass("cbp-caption-expand-active");
        }),
            (f.plugins.captionExpand = function (a) {
                return "expand" !== a.options.caption ? null : new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = a.Deferred();
            b.pushQueue("delayFrame", c),
                b.registerEvent(
                    "initEndWrite",
                    function () {
                        b.blocksOn.each(function (a, c) {
                            c.style[f["private"].animationDelay] = a * b.options.displayTypeSpeed + "ms";
                        }),
                            b.$obj.addClass("cbp-displayType-bottomToTop"),
                            b.blocksOn.last().one(f["private"].animationend, function () {
                                b.$obj.removeClass("cbp-displayType-bottomToTop"),
                                    b.blocksOn.each(function (a, b) {
                                        b.style[f["private"].animationDelay] = "";
                                    }),
                                    c.resolve();
                            });
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor;
        f.plugins.displayBottomToTop = function (a) {
            return f["private"].modernBrowser && "bottomToTop" === a.options.displayType && 0 !== a.blocksOn.length ? new e(a) : null;
        };
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = a.Deferred();
            b.pushQueue("delayFrame", c),
                b.registerEvent(
                    "initEndWrite",
                    function () {
                        (b.obj.style[f["private"].animationDuration] = b.options.displayTypeSpeed + "ms"),
                            b.$obj.addClass("cbp-displayType-fadeIn"),
                            b.$obj.one(f["private"].animationend, function () {
                                b.$obj.removeClass("cbp-displayType-fadeIn"), (b.obj.style[f["private"].animationDuration] = ""), c.resolve();
                            });
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor;
        f.plugins.displayFadeIn = function (a) {
            return !f["private"].modernBrowser || ("lazyLoading" !== a.options.displayType && "fadeIn" !== a.options.displayType) || 0 === a.blocksOn.length ? null : new e(a);
        };
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = a.Deferred();
            b.pushQueue("delayFrame", c),
                b.registerEvent(
                    "initEndWrite",
                    function () {
                        (b.obj.style[f["private"].animationDuration] = b.options.displayTypeSpeed + "ms"),
                            b.$obj.addClass("cbp-displayType-fadeInToTop"),
                            b.$obj.one(f["private"].animationend, function () {
                                b.$obj.removeClass("cbp-displayType-fadeInToTop"), (b.obj.style[f["private"].animationDuration] = ""), c.resolve();
                            });
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor;
        f.plugins.displayFadeInToTop = function (a) {
            return f["private"].modernBrowser && "fadeInToTop" === a.options.displayType && 0 !== a.blocksOn.length ? new e(a) : null;
        };
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = a.Deferred();
            b.pushQueue("delayFrame", c),
                b.registerEvent(
                    "initEndWrite",
                    function () {
                        b.blocksOn.each(function (a, c) {
                            c.style[f["private"].animationDelay] = a * b.options.displayTypeSpeed + "ms";
                        }),
                            b.$obj.addClass("cbp-displayType-sequentially"),
                            b.blocksOn.last().one(f["private"].animationend, function () {
                                b.$obj.removeClass("cbp-displayType-sequentially"),
                                    b.blocksOn.each(function (a, b) {
                                        b.style[f["private"].animationDelay] = "";
                                    }),
                                    c.resolve();
                            });
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor;
        f.plugins.displaySequentially = function (a) {
            return f["private"].modernBrowser && "sequentially" === a.options.displayType && 0 !== a.blocksOn.length ? new e(a) : null;
        };
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b), (c.filters = a(b.options.filters)), (c.filterData = []), c.filterFromUrl(), c.registerFilter();
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.registerFilter = function () {
            var b = this,
                c = b.parent,
                d = c.defaultFilter.split("|");
            (b.wrap = b.filters.find(".cbp-l-filters-dropdownWrap").on({
                "mouseover.cbp": function () {
                    a(this).addClass("cbp-l-filters-dropdownWrap-open");
                },
                "mouseleave.cbp": function () {
                    a(this).removeClass("cbp-l-filters-dropdownWrap-open");
                },
            })),
                b.filters.each(function (e, f) {
                    var g = a(f),
                        h = "*",
                        i = g.find(".cbp-filter-item"),
                        j = {};
                    g.hasClass("cbp-l-filters-dropdown") && ((j.wrap = g.find(".cbp-l-filters-dropdownWrap")), (j.header = g.find(".cbp-l-filters-dropdownHeader")), (j.headerText = j.header.text())),
                        c.$obj.cubeportfolio("showCounter", i),
                        a.each(d, function (a, b) {
                            return i.filter('[data-filter="' + b + '"]').length ? ((h = b), d.splice(a, 1), !1) : void 0;
                        }),
                        a.data(f, "filterName", h),
                        b.filterData.push(f),
                        b.filtersCallback(j, i.filter('[data-filter="' + h + '"]')),
                        i.on("click.cbp", function () {
                            var d = a(this);
                            if (!d.hasClass("cbp-filter-item-active") && !c.isAnimating) {
                                b.filtersCallback(j, d), a.data(f, "filterName", d.data("filter"));
                                var e = a.map(b.filterData, function (b, c) {
                                    var d = a.data(b, "filterName");
                                    return "" !== d && "*" !== d ? d : null;
                                });
                                e.length < 1 && (e = ["*"]);
                                var g = e.join("|");
                                c.defaultFilter !== g && c.$obj.cubeportfolio("filter", g);
                            }
                        });
                });
        }),
            (e.prototype.filtersCallback = function (b, c) {
                a.isEmptyObject(b) || (b.wrap.trigger("mouseleave.cbp"), b.headerText ? (b.headerText = "") : b.header.html(c.html())), c.addClass("cbp-filter-item-active").siblings().removeClass("cbp-filter-item-active");
            }),
            (e.prototype.filterFromUrl = function () {
                var a = /#cbpf=(.*?)([#\?&]|$)/gi.exec(location.href);
                null !== a && (this.parent.defaultFilter = decodeURIComponent(a[1]));
            }),
            (e.prototype.destroy = function () {
                var a = this;
                a.filters.find(".cbp-filter-item").off(".cbp"), a.wrap.off(".cbp");
            }),
            (f.plugins.filters = function (a) {
                return "" === a.options.filters ? null : new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b),
                (c.options = a.extend({}, g, c.parent.options.plugins.inlineSlider)),
                c.runInit(),
                b.registerEvent("addItemsToDOM", function () {
                    c.runInit();
                });
        }
        function f(a) {
            var b = this;
            a.hasClass("cbp-slider-inline-ready") ||
                (a.addClass("cbp-slider-inline-ready"),
                (b.items = a.find(".cbp-slider-wrapper").children(".cbp-slider-item")),
                (b.active = b.items.filter(".cbp-slider-item--active").index()),
                (b.total = b.items.length - 1),
                b.updateLeft(),
                a.find(".cbp-slider-next").on("click.cbp", function (a) {
                    a.preventDefault(), b.active < b.total ? (b.active++, b.updateLeft()) : b.active === b.total && ((b.active = 0), b.updateLeft());
                }),
                a.find(".cbp-slider-prev").on("click.cbp", function (a) {
                    a.preventDefault(), b.active > 0 ? (b.active--, b.updateLeft()) : 0 === b.active && ((b.active = b.total), b.updateLeft());
                }));
        }
        var g = {},
            h = a.fn.cubeportfolio.constructor;
        (f.prototype.updateLeft = function () {
            var a = this;
            a.items.removeClass("cbp-slider-item--active"),
                a.items.eq(a.active).addClass("cbp-slider-item--active"),
                a.items.each(function (b, c) {
                    c.style.left = b - a.active + "00%";
                });
        }),
            (e.prototype.runInit = function () {
                var b = this;
                b.parent.$obj
                    .find(".cbp-slider-inline")
                    .not(".cbp-slider-inline-ready")
                    .each(function (c, d) {
                        var e = a(d),
                            g = e.find(".cbp-slider-item--active").find("img")[0];
                        g.hasAttribute("data-cbp-src")
                            ? b.parent.$obj.on("lazyLoad.cbp", function (a, b) {
                                  b.src === g.src && new f(e);
                              })
                            : new f(e);
                    });
            }),
            (e.prototype.destroy = function () {
                var b = this;
                b.parent.$obj.find(".cbp-slider-next").off("click.cbp"),
                    b.parent.$obj.find(".cbp-slider-prev").off("click.cbp"),
                    b.parent.$obj.off("lazyLoad.cbp"),
                    b.parent.$obj.find(".cbp-slider-inline").each(function (b, c) {
                        var d = a(c);
                        d.removeClass("cbp-slider-inline-ready");
                        var e = d.find(".cbp-slider-item");
                        e.removeClass("cbp-slider-item--active"), e.removeAttr("style"), e.eq(0).addClass("cbp-slider-item--active");
                    });
            }),
            (h.plugins.inlineSlider = function (a) {
                return new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(c) {
            var d = this;
            (d.window = a(b)),
                (d.parent = c),
                (d.options = a.extend({}, f, d.parent.options.plugins.lazyLoad)),
                c.registerEvent(
                    "initEndWrite",
                    function () {
                        var a;
                        d.triggerImg(),
                            c.registerEvent("resizeMainContainer", function () {
                                d.triggerImg();
                            }),
                            d.window.on("scroll.cbp", function () {
                                clearTimeout(a),
                                    (a = setTimeout(function () {
                                        d.triggerImg();
                                    }, 300));
                            });
                    },
                    !0
                );
        }
        var f = { loadingClass: "cbp-lazyload", threshold: 0 },
            g = a.fn.cubeportfolio.constructor;
        (e.prototype.triggerImg = function () {
            var b = this,
                c = b.parent.$obj.find("img").filter("[data-cbp-src]");
            0 !== c.length &&
                ((b.screenHeight = b.window.height()),
                c.each(function (c, d) {
                    var e = a(d.parentNode);
                    if (!b.isElementInScreen(d)) return void e.addClass(b.options.loadingClass);
                    var f = d.getAttribute("data-cbp-src");
                    null === b.parent.checkSrc(f)
                        ? (b.removeLazy(d, f), e.removeClass(b.options.loadingClass))
                        : (e.addClass(b.options.loadingClass),
                          a("<img>")
                              .on("load.cbp error.cbp", function () {
                                  b.removeLazy(d, f, e);
                              })
                              .attr("src", f));
                }));
        }),
            (e.prototype.removeLazy = function (b, c, d) {
                var e = this;
                (b.src = c),
                    b.removeAttribute("data-cbp-src"),
                    e.parent.removeAttrImage(b),
                    e.parent.$obj.trigger("lazyLoad.cbp", b),
                    d &&
                        (g["private"].modernBrowser
                            ? a(b).one(g["private"].transitionend, function () {
                                  d.removeClass(e.options.loadingClass);
                              })
                            : d.removeClass(e.options.loadingClass));
            }),
            (e.prototype.isElementInScreen = function (a) {
                var b = this,
                    c = a.getBoundingClientRect(),
                    d = c.bottom + b.options.threshold,
                    e = b.screenHeight + d - (c.top - b.options.threshold);
                return d >= 0 && e >= d;
            }),
            (e.prototype.destroy = function () {
                var a = this;
                a.window.off("scroll.cbp");
            }),
            (g.plugins.lazyLoad = function (a) {
                return new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b), (c.loadMore = a(b.options.loadMore).find(".cbp-l-loadMore-link")), c.loadMore.length && c[b.options.loadMoreAction]();
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.click = function () {
            var b = this,
                c = 0;
            b.loadMore.on("click.cbp", function (d) {
                var e = a(this);
                d.preventDefault(),
                    b.parent.isAnimating ||
                        e.hasClass("cbp-l-loadMore-stop") ||
                        (e.addClass("cbp-l-loadMore-loading"),
                        c++,
                        a
                            .ajax({ url: b.loadMore.attr("href") + "?block=" + c, type: "GET", dataType: "HTML" })
                            .done(function (a) {
                                var d = a.replace(/(\r\n|\n|\r)/gm, ""),
                                    f = d.indexOf("cbp-loadMore-block" + c);
                                if (-1 === f) return void e.addClass("cbp-l-loadMore-stop");
                                var g,
                                    h = d.indexOf(">", f) + 1,
                                    i = d.indexOf("cbp-loadMore-block" + (c + 1));
                                (g = -1 === i ? d.lastIndexOf("</") : d.lastIndexOf("</", i)),
                                    b.parent.$obj.cubeportfolio("appendItems", d.substring(h, g), function () {
                                        e.removeClass("cbp-l-loadMore-loading"), -1 === i && e.addClass("cbp-l-loadMore-stop");
                                    });
                            })
                            .fail(function () {}));
            });
        }),
            (e.prototype.auto = function () {
                var c = this;
                c.parent.$obj.on("initComplete.cbp", function () {
                    Object.create({
                        init: function () {
                            var d = this;
                            (d.isActive = !1), (d.numberOfClicks = 0), c.loadMore.addClass("cbp-l-loadMore-loading"), (d.window = a(b)), d.addEvents(), d.getNewItems();
                        },
                        addEvents: function () {
                            var a,
                                b = this;
                            c.loadMore.on("click.cbp", function (a) {
                                a.preventDefault();
                            }),
                                b.window.on("scroll.loadMoreObject", function () {
                                    clearTimeout(a),
                                        (a = setTimeout(function () {
                                            c.parent.isAnimating || b.getNewItems();
                                        }, 80));
                                }),
                                c.parent.$obj.on("filterComplete.cbp", function () {
                                    b.getNewItems();
                                });
                        },
                        getNewItems: function () {
                            var b,
                                d,
                                e = this;
                            e.isActive ||
                                c.loadMore.hasClass("cbp-l-loadMore-stop") ||
                                ((b = c.loadMore.offset().top - 200),
                                (d = e.window.scrollTop() + e.window.height()),
                                b > d ||
                                    ((e.isActive = !0),
                                    e.numberOfClicks++,
                                    a
                                        .ajax({ url: c.loadMore.attr("href") + "?block=" + e.numberOfClicks, type: "GET", dataType: "HTML", cache: !0 })
                                        .done(function (a) {
                                            var b = a.replace(/(\r\n|\n|\r)/gm, ""),
                                                d = b.indexOf("cbp-loadMore-block" + e.numberOfClicks);
                                            if (-1 === d) return void c.loadMore.addClass("cbp-l-loadMore-stop");
                                            var f,
                                                g = b.indexOf(">", d) + 1,
                                                h = b.indexOf("cbp-loadMore-block" + (e.numberOfClicks + 1));
                                            (f = -1 === h ? b.lastIndexOf("</") : b.lastIndexOf("</", h)),
                                                c.parent.$obj.cubeportfolio("appendItems", b.substring(g, f), function () {
                                                    -1 === h
                                                        ? (c.loadMore.addClass("cbp-l-loadMore-stop"), e.window.off("scroll.loadMoreObject"), c.parent.$obj.off("filterComplete.cbp"))
                                                        : ((e.isActive = !1), e.window.trigger("scroll.loadMoreObject"));
                                                });
                                        })
                                        .fail(function () {
                                            e.isActive = !1;
                                        })));
                        },
                    }).init();
                });
            }),
            (e.prototype.destroy = function () {
                var c = this;
                c.loadMore.off(".cbp"), a(b).off("scroll.loadMoreObject");
            }),
            (f.plugins.loadMore = function (a) {
                return "" === a.options.loadMore ? null : new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(a) {
            var b = this;
            (b.parent = a),
                a.options.lightboxShowCounter === !1 && (a.options.lightboxCounter = ""),
                a.options.singlePageShowCounter === !1 && (a.options.singlePageCounter = ""),
                a.registerEvent(
                    "initStartRead",
                    function () {
                        b.run();
                    },
                    !0
                );
        }
        var f = a.fn.cubeportfolio.constructor,
            g = {
                init: function (b, d) {
                    var e,
                        f = this;
                    if (
                        ((f.cubeportfolio = b),
                        (f.type = d),
                        (f.isOpen = !1),
                        (f.options = f.cubeportfolio.options),
                        "lightbox" === d &&
                            f.cubeportfolio.registerEvent("resizeWindow", function () {
                                f.resizeImage();
                            }),
                        "singlePageInline" !== d)
                    ) {
                        if (
                            (f.createMarkup(),
                            "singlePage" === d &&
                                (f.cubeportfolio.registerEvent("resizeWindow", function () {
                                    if (f.options.singlePageStickyNavigation) {
                                        var a = f.wrap[0].clientWidth;
                                        a > 0 && (f.navigationWrap.width(a), f.navigation.width(a));
                                    }
                                }),
                                f.options.singlePageDeeplinking))
                        ) {
                            (f.url = location.href), "#" === f.url.slice(-1) && (f.url = f.url.slice(0, -1));
                            var g = f.url.split("#cbp="),
                                h = g.shift();
                            if (
                                (a.each(g, function (b, c) {
                                    return (
                                        f.cubeportfolio.blocksOn.each(function (b, d) {
                                            var g = a(d).find(f.options.singlePageDelegate + '[href="' + c + '"]');
                                            return g.length ? ((e = g), !1) : void 0;
                                        }),
                                        e ? !1 : void 0
                                    );
                                }),
                                e)
                            ) {
                                f.url = h;
                                var i = e,
                                    j = i.attr("data-cbp-singlePage"),
                                    k = [];
                                j
                                    ? (k = i.closest(a(".cbp-item")).find('[data-cbp-singlePage="' + j + '"]'))
                                    : f.cubeportfolio.blocksOn.each(function (b, c) {
                                          var d = a(c);
                                          d.not(".cbp-item-off") &&
                                              d.find(f.options.singlePageDelegate).each(function (b, c) {
                                                  a(c).attr("data-cbp-singlePage") || k.push(c);
                                              });
                                      }),
                                    f.openSinglePage(k, e[0]);
                            } else if (g.length) {
                                var l = c.createElement("a");
                                l.setAttribute("href", g[0]), f.openSinglePage([l], l);
                            }
                        }
                    } else if (
                        ((f.height = 0),
                        f.createMarkupSinglePageInline(),
                        f.cubeportfolio.registerEvent("resizeGrid", function () {
                            f.isOpen && f.close();
                        }),
                        f.options.singlePageInlineDeeplinking)
                    ) {
                        (f.url = location.href), "#" === f.url.slice(-1) && (f.url = f.url.slice(0, -1));
                        var g = f.url.split("#cbpi="),
                            h = g.shift();
                        a.each(g, function (b, c) {
                            return (
                                f.cubeportfolio.blocksOn.each(function (b, d) {
                                    var g = a(d).find(f.options.singlePageInlineDelegate + '[href="' + c + '"]');
                                    return g.length ? ((e = g), !1) : void 0;
                                }),
                                e ? !1 : void 0
                            );
                        }),
                            e &&
                                f.cubeportfolio.registerEvent(
                                    "initFinish",
                                    function () {
                                        f.openSinglePageInline(f.cubeportfolio.blocksOn, e[0]);
                                    },
                                    !0
                                );
                    }
                },
                createMarkup: function () {
                    var b = this,
                        d = "";
                    "singlePage" === b.type && "left" !== b.options.singlePageAnimation && (d = " cbp-popup-singlePage-" + b.options.singlePageAnimation),
                        (b.wrap = a("<div/>", { class: "cbp-popup-wrap cbp-popup-" + b.type + d, "data-action": "lightbox" === b.type ? "close" : "" }).on("click.cbp", function (c) {
                            if (!b.stopEvents) {
                                var d = a(c.target).attr("data-action");
                                b[d] && (b[d](), c.preventDefault());
                            }
                        })),
                        (b.content = a("<div/>", { class: "cbp-popup-content" }).appendTo(b.wrap)),
                        a("<div/>", { class: "cbp-popup-loadingBox" }).appendTo(b.wrap),
                        "ie8" === f["private"].browser && (b.bg = a("<div/>", { class: "cbp-popup-ie8bg", "data-action": "lightbox" === b.type ? "close" : "" }).appendTo(b.wrap)),
                        (b.navigationWrap = a("<div/>", { class: "cbp-popup-navigation-wrap" }).appendTo(b.wrap)),
                        (b.navigation = a("<div/>", { class: "cbp-popup-navigation" }).appendTo(b.navigationWrap)),
                        (b.closeButton = a("<div/>", { class: "cbp-popup-close", title: "Close (Esc arrow key)", "data-action": "close" }).appendTo(b.navigation)),
                        (b.nextButton = a("<div/>", { class: "cbp-popup-next", title: "Next (Right arrow key)", "data-action": "next" }).appendTo(b.navigation)),
                        (b.prevButton = a("<div/>", { class: "cbp-popup-prev", title: "Previous (Left arrow key)", "data-action": "prev" }).appendTo(b.navigation)),
                        "singlePage" === b.type &&
                            (b.options.singlePageCounter && ((b.counter = a(b.options.singlePageCounter).appendTo(b.navigation)), b.counter.text("")),
                            b.content.on("click.cbp", b.options.singlePageDelegate, function (a) {
                                a.preventDefault();
                                var c,
                                    d = b.dataArray.length,
                                    e = this.getAttribute("href");
                                for (c = 0; d > c && b.dataArray[c].url !== e; c++);
                                b.singlePageJumpTo(c - b.current);
                            }),
                            b.wrap.on("mousewheel.cbp DOMMouseScroll.cbp", function (a) {
                                a.stopImmediatePropagation();
                            })),
                        a(c).on("keydown.cbp", function (a) {
                            b.isOpen && (b.stopEvents || (37 === a.keyCode ? b.prev() : 39 === a.keyCode ? b.next() : 27 === a.keyCode && b.close()));
                        });
                },
                createMarkupSinglePageInline: function () {
                    var b = this;
                    (b.wrap = a("<div/>", { class: "cbp-popup-singlePageInline" }).on("click.cbp", function (c) {
                        if (!b.stopEvents) {
                            var d = a(c.target).attr("data-action");
                            d && b[d] && (b[d](), c.preventDefault());
                        }
                    })),
                        (b.content = a("<div/>", { class: "cbp-popup-content" }).appendTo(b.wrap)),
                        (b.navigation = a("<div/>", { class: "cbp-popup-navigation" }).appendTo(b.wrap)),
                        (b.closeButton = a("<div/>", { class: "cbp-popup-close", title: "Close (Esc arrow key)", "data-action": "close" }).appendTo(b.navigation));
                },
                destroy: function () {
                    var b = this,
                        d = a("body");
                    a(c).off("keydown.cbp"),
                        d.off("click.cbp", b.options.lightboxDelegate),
                        d.off("click.cbp", b.options.singlePageDelegate),
                        b.content.off("click.cbp", b.options.singlePageDelegate),
                        b.cubeportfolio.$obj.off("click.cbp", b.options.singlePageInlineDelegate),
                        b.cubeportfolio.$obj.off("click.cbp", b.options.lightboxDelegate),
                        b.cubeportfolio.$obj.off("click.cbp", b.options.singlePageDelegate),
                        b.cubeportfolio.$obj.removeClass("cbp-popup-isOpening"),
                        b.cubeportfolio.$obj.find(".cbp-item").removeClass("cbp-singlePageInline-active"),
                        b.wrap.remove();
                },
                openLightbox: function (d, e) {
                    var f,
                        g,
                        h = this,
                        i = 0,
                        j = [];
                    if (!h.isOpen) {
                        if (((h.isOpen = !0), (h.stopEvents = !1), (h.dataArray = []), (h.current = null), (f = e.getAttribute("href")), null === f)) throw new Error("HEI! Your clicked element doesn't have a href attribute.");
                        a.each(d, function (b, c) {
                            var d,
                                e = c.getAttribute("href"),
                                g = e,
                                k = "isImage";
                            if (-1 === a.inArray(e, j)) {
                                if (f === e) h.current = i;
                                else if (!h.options.lightboxGallery) return;
                                /youtube/i.test(e)
                                    ? ((d = e.substring(e.lastIndexOf("v=") + 2)), /autoplay=/i.test(d) || (d += "&autoplay=1"), (d = d.replace(/\?|&/, "?")), (g = "//www.youtube.com/embed/" + d), (k = "isYoutube"))
                                    : /vimeo\.com/i.test(e)
                                    ? ((d = e.substring(e.lastIndexOf("/") + 1)), /autoplay=/i.test(d) || (d += "&autoplay=1"), (d = d.replace(/\?|&/, "?")), (g = "//player.vimeo.com/video/" + d), (k = "isVimeo"))
                                    : /www\.ted\.com/i.test(e)
                                    ? ((g = "http://embed.ted.com/talks/" + e.substring(e.lastIndexOf("/") + 1) + ".html"), (k = "isTed"))
                                    : /soundcloud\.com/i.test(e)
                                    ? ((g = e), (k = "isSoundCloud"))
                                    : /(\.mp4)|(\.ogg)|(\.ogv)|(\.webm)/i.test(e)
                                    ? ((g = -1 !== e.indexOf("|") ? e.split("|") : e.split("%7C")), (k = "isSelfHostedVideo"))
                                    : /\.mp3$/i.test(e) && ((g = e), (k = "isSelfHostedAudio")),
                                    h.dataArray.push({ src: g, title: c.getAttribute(h.options.lightboxTitleSrc), type: k }),
                                    i++;
                            }
                            j.push(e);
                        }),
                            (h.counterTotal = h.dataArray.length),
                            1 === h.counterTotal ? (h.nextButton.hide(), h.prevButton.hide(), (h.dataActionImg = "")) : (h.nextButton.show(), h.prevButton.show(), (h.dataActionImg = 'data-action="next"')),
                            h.wrap.appendTo(c.body),
                            (h.scrollTop = a(b).scrollTop()),
                            (h.originalStyle = a("html").attr("style")),
                            a("html").css({ overflow: "hidden", paddingRight: b.innerWidth - a(c).width() }),
                            h.wrap.show(),
                            (g = h.dataArray[h.current]),
                            h[g.type](g);
                    }
                },
                openSinglePage: function (d, e) {
                    var g,
                        h = this,
                        i = 0,
                        j = [];
                    if (!h.isOpen) {
                        if (
                            (h.cubeportfolio.singlePageInline && h.cubeportfolio.singlePageInline.isOpen && h.cubeportfolio.singlePageInline.close(),
                            (h.isOpen = !0),
                            (h.stopEvents = !1),
                            (h.dataArray = []),
                            (h.current = null),
                            (g = e.getAttribute("href")),
                            null === g)
                        )
                            throw new Error("HEI! Your clicked element doesn't have a href attribute.");
                        if (
                            (a.each(d, function (b, c) {
                                var d = c.getAttribute("href");
                                -1 === a.inArray(d, j) && (g === d && (h.current = i), h.dataArray.push({ url: d, element: c }), i++), j.push(d);
                            }),
                            (h.counterTotal = h.dataArray.length),
                            1 === h.counterTotal ? (h.nextButton.hide(), h.prevButton.hide()) : (h.nextButton.show(), h.prevButton.show()),
                            h.wrap.appendTo(c.body),
                            (h.scrollTop = a(b).scrollTop()),
                            a("html").css({ overflow: "hidden", paddingRight: b.innerWidth - a(c).width() }),
                            h.wrap.scrollTop(0),
                            h.wrap.show(),
                            (h.finishOpen = 2),
                            (h.navigationMobile = a()),
                            h.wrap.one(f["private"].transitionend, function () {
                                var b;
                                h.options.singlePageStickyNavigation &&
                                    (h.wrap.addClass("cbp-popup-singlePage-sticky"),
                                    (b = h.wrap[0].clientWidth),
                                    h.navigationWrap.width(b),
                                    ("android" === f["private"].browser || "ios" === f["private"].browser) &&
                                        ((h.navigationMobile = a("<div/>", { class: "cbp-popup-singlePage cbp-popup-singlePage-sticky", id: h.wrap.attr("id") }).on("click.cbp", function (b) {
                                            if (!h.stopEvents) {
                                                var c = a(b.target).attr("data-action");
                                                h[c] && (h[c](), b.preventDefault());
                                            }
                                        })),
                                        h.navigationMobile.appendTo(c.body).append(h.navigationWrap))),
                                    h.finishOpen--,
                                    h.finishOpen <= 0 && h.updateSinglePageIsOpen.call(h);
                            }),
                            "ie8" === f["private"].browser || "ie9" === f["private"].browser)
                        ) {
                            if (h.options.singlePageStickyNavigation) {
                                var k = h.wrap[0].clientWidth;
                                h.navigationWrap.width(k),
                                    setTimeout(function () {
                                        h.wrap.addClass("cbp-popup-singlePage-sticky");
                                    }, 1e3);
                            }
                            h.finishOpen--;
                        }
                        h.wrap.addClass("cbp-popup-loading"),
                            h.wrap.offset(),
                            h.wrap.addClass("cbp-popup-singlePage-open"),
                            h.options.singlePageDeeplinking && ((h.url = h.url.split("#cbp=")[0]), (location.href = h.url + "#cbp=" + h.dataArray[h.current].url)),
                            a.isFunction(h.options.singlePageCallback) && h.options.singlePageCallback.call(h, h.dataArray[h.current].url, h.dataArray[h.current].element);
                    }
                },
                openSinglePageInline: function (c, d, e) {
                    var f,
                        g,
                        h,
                        i,
                        j = this;
                    if (((e = e || !1), (j.fromOpen = e), (j.storeBlocks = c), (j.storeCurrentBlock = d), j.isOpen))
                        return (
                            (g = a(d).closest(".cbp-item").index()),
                            void (j.dataArray[j.current].url !== d.getAttribute("href") || j.current !== g ? j.cubeportfolio.singlePageInline.close("open", { blocks: c, currentBlock: d, fromOpen: !0 }) : j.close())
                        );
                    if (((j.isOpen = !0), (j.stopEvents = !1), (j.dataArray = []), (j.current = null), (f = d.getAttribute("href")), null === f)) throw new Error("HEI! Your clicked element doesn't have a href attribute.");
                    if (
                        ((h = a(d).closest(".cbp-item")[0]),
                        c.each(function (a, b) {
                            h === b && (j.current = a);
                        }),
                        (j.dataArray[j.current] = { url: f, element: d }),
                        (i = a(j.dataArray[j.current].element).parents(".cbp-item").addClass("cbp-singlePageInline-active")),
                        (j.counterTotal = c.length),
                        j.wrap.insertBefore(j.cubeportfolio.wrapper),
                        "top" === j.options.singlePageInlinePosition)
                    )
                        (j.blocksToMove = c), (j.top = 0);
                    else if ("bottom" === j.options.singlePageInlinePosition) (j.blocksToMove = a()), (j.top = j.cubeportfolio.height);
                    else if ("above" === j.options.singlePageInlinePosition)
                        (j.top = a(c[j.current]).data("cbp").top),
                            (j.blocksToMove = a()),
                            c.each(function (b, c) {
                                var d = a(c).data("cbp");
                                d.top + d.height >= j.top && (j.blocksToMove = j.blocksToMove.add(c));
                            }),
                            (j.top = Math.max(j.top - j.options.gapHorizontal, 0));
                    else {
                        var k = a(c[j.current]).data("cbp");
                        (j.top = k.top + k.height),
                            (j.blocksToMove = a()),
                            c.each(function (b, c) {
                                var d = a(c).data("cbp");
                                d.top + d.height > j.top && (j.blocksToMove = j.blocksToMove.add(c));
                            });
                    }
                    if (((j.wrap[0].style.height = j.wrap.outerHeight(!0) + "px"), (j.deferredInline = a.Deferred()), j.options.singlePageInlineInFocus)) {
                        j.scrollTop = a(b).scrollTop();
                        var l = j.cubeportfolio.$obj.offset().top + j.top - 100;
                        j.scrollTop !== l
                            ? a("html,body")
                                  .animate({ scrollTop: l }, 350)
                                  .promise()
                                  .then(function () {
                                      j.resizeSinglePageInline(), j.deferredInline.resolve();
                                  })
                            : (j.resizeSinglePageInline(), j.deferredInline.resolve());
                    } else j.resizeSinglePageInline(), j.deferredInline.resolve();
                    j.cubeportfolio.$obj.addClass("cbp-popup-singlePageInline-open"),
                        j.wrap.css({ top: j.top }),
                        j.options.singlePageInlineDeeplinking && ((j.url = j.url.split("#cbpi=")[0]), (location.href = j.url + "#cbpi=" + j.dataArray[j.current].url)),
                        a.isFunction(j.options.singlePageInlineCallback) && j.options.singlePageInlineCallback.call(j, j.dataArray[j.current].url, j.dataArray[j.current].element);
                },
                resizeSinglePageInline: function () {
                    var a = this;
                    (a.height = 0 === a.top || a.top === a.cubeportfolio.height ? a.wrap.outerHeight(!0) : a.wrap.outerHeight(!0) - a.options.gapHorizontal),
                        a.storeBlocks.each(function (a, b) {
                            f["private"].modernBrowser ? (b.style[f["private"].transform] = "") : (b.style.marginTop = "");
                        }),
                        a.blocksToMove.each(function (b, c) {
                            f["private"].modernBrowser ? (c.style[f["private"].transform] = "translate3d(0px, " + a.height + "px, 0)") : (c.style.marginTop = a.height + "px");
                        }),
                        (a.cubeportfolio.obj.style.height = a.cubeportfolio.height + a.height + "px");
                },
                revertResizeSinglePageInline: function () {
                    var b = this;
                    (b.deferredInline = a.Deferred()),
                        b.storeBlocks.each(function (a, b) {
                            f["private"].modernBrowser ? (b.style[f["private"].transform] = "") : (b.style.marginTop = "");
                        }),
                        (b.cubeportfolio.obj.style.height = b.cubeportfolio.height + "px");
                },
                appendScriptsToWrap: function (a) {
                    var b = this,
                        d = 0,
                        e = function (f) {
                            var g = c.createElement("script"),
                                h = f.src;
                            (g.type = "text/javascript"),
                                g.readyState
                                    ? (g.onreadystatechange = function () {
                                          ("loaded" == g.readyState || "complete" == g.readyState) && ((g.onreadystatechange = null), d++, a[d] && e(a[d]));
                                      })
                                    : (g.onload = function () {
                                          d++, a[d] && e(a[d]);
                                      }),
                                h ? (g.src = h) : (g.text = f.text),
                                b.content[0].appendChild(g);
                        };
                    e(a[0]);
                },
                updateSinglePage: function (b, c, d) {
                    var e,
                        f = this;
                    f.content.addClass("cbp-popup-content").removeClass("cbp-popup-content-basic"),
                        d === !1 && f.content.removeClass("cbp-popup-content").addClass("cbp-popup-content-basic"),
                        f.counter && ((e = a(f.getCounterMarkup(f.options.singlePageCounter, f.current + 1, f.counterTotal))), f.counter.text(e.text())),
                        f.content.html(b),
                        c && f.appendScriptsToWrap(c),
                        f.cubeportfolio.$obj.trigger("updateSinglePageStart.cbp"),
                        f.finishOpen--,
                        f.finishOpen <= 0 && f.updateSinglePageIsOpen.call(f);
                },
                updateSinglePageIsOpen: function () {
                    var b,
                        c = this;
                    c.wrap.addClass("cbp-popup-ready"),
                        c.wrap.removeClass("cbp-popup-loading"),
                        (b = c.content.find(".cbp-slider")),
                        b
                            ? (b.find(".cbp-slider-item").addClass("cbp-item"), (c.slider = b.cubeportfolio({ layoutMode: "slider", mediaQueries: [{ width: 1, cols: 1 }], gapHorizontal: 0, gapVertical: 0, caption: "", coverRatio: "" })))
                            : (c.slider = null),
                        ("android" === f["private"].browser || "ios" === f["private"].browser) && a("html").css({ position: "fixed" }),
                        c.cubeportfolio.$obj.trigger("updateSinglePageComplete.cbp");
                },
                updateSinglePageInline: function (a, b) {
                    var c = this;
                    c.content.html(a), b && c.appendScriptsToWrap(b), c.cubeportfolio.$obj.trigger("updateSinglePageInlineStart.cbp"), c.singlePageInlineIsOpen.call(c);
                },
                singlePageInlineIsOpen: function () {
                    function a() {
                        b.wrap.addClass("cbp-popup-singlePageInline-ready"), (b.wrap[0].style.height = ""), b.resizeSinglePageInline(), b.cubeportfolio.$obj.trigger("updateSinglePageInlineComplete.cbp");
                    }
                    var b = this;
                    b.cubeportfolio.loadImages(b.wrap, function () {
                        var c = b.content.find(".cbp-slider");
                        c.length
                            ? (c.find(".cbp-slider-item").addClass("cbp-item"),
                              c.one("initComplete.cbp", function () {
                                  b.deferredInline.done(a);
                              }),
                              c.on("pluginResize.cbp", function () {
                                  b.deferredInline.done(a);
                              }),
                              (b.slider = c.cubeportfolio({ layoutMode: "slider", displayType: "default", mediaQueries: [{ width: 1, cols: 1 }], gapHorizontal: 0, gapVertical: 0, caption: "", coverRatio: "" })))
                            : ((b.slider = null), b.deferredInline.done(a));
                    });
                },
                isImage: function (b) {
                    var c = this;
                    new Image();
                    c.tooggleLoading(!0),
                        c.cubeportfolio.loadImages(a('<div><img src="' + b.src + '"></div>'), function () {
                            c.updateImagesMarkup(b.src, b.title, c.getCounterMarkup(c.options.lightboxCounter, c.current + 1, c.counterTotal)), c.tooggleLoading(!1);
                        });
                },
                isVimeo: function (a) {
                    var b = this;
                    b.updateVideoMarkup(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                isYoutube: function (a) {
                    var b = this;
                    b.updateVideoMarkup(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                isTed: function (a) {
                    var b = this;
                    b.updateVideoMarkup(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                isSoundCloud: function (a) {
                    var b = this;
                    b.updateVideoMarkup(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                isSelfHostedVideo: function (a) {
                    var b = this;
                    b.updateSelfHostedVideo(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                isSelfHostedAudio: function (a) {
                    var b = this;
                    b.updateSelfHostedAudio(a.src, a.title, b.getCounterMarkup(b.options.lightboxCounter, b.current + 1, b.counterTotal));
                },
                getCounterMarkup: function (a, b, c) {
                    if (!a.length) return "";
                    var d = { current: b, total: c };
                    return a.replace(/\{\{current}}|\{\{total}}/gi, function (a) {
                        return d[a.slice(2, -2)];
                    });
                },
                updateSelfHostedVideo: function (a, b, c) {
                    var d,
                        e = this;
                    e.wrap.addClass("cbp-popup-lightbox-isIframe");
                    var f = '<div class="cbp-popup-lightbox-iframe"><video controls="controls" height="auto" style="width: 100%">';
                    for (d = 0; d < a.length; d++)
                        /(\.mp4)/i.test(a[d])
                            ? (f += '<source src="' + a[d] + '" type="video/mp4">')
                            : /(\.ogg)|(\.ogv)/i.test(a[d])
                            ? (f += '<source src="' + a[d] + '" type="video/ogg">')
                            : /(\.webm)/i.test(a[d]) && (f += '<source src="' + a[d] + '" type="video/webm">');
                    (f += 'Your browser does not support the video tag.</video><div class="cbp-popup-lightbox-bottom">' + (b ? '<div class="cbp-popup-lightbox-title">' + b + "</div>" : "") + c + "</div></div>"),
                        e.content.html(f),
                        e.wrap.addClass("cbp-popup-ready"),
                        e.preloadNearbyImages();
                },
                updateSelfHostedAudio: function (a, b, c) {
                    var d = this;
                    d.wrap.addClass("cbp-popup-lightbox-isIframe");
                    var e =
                        '<div class="cbp-popup-lightbox-iframe"><div class="cbp-misc-video"><audio controls="controls" height="auto" style="width: 75%"><source src="' +
                        a +
                        '" type="audio/mpeg">Your browser does not support the audio tag.</audio></div><div class="cbp-popup-lightbox-bottom">' +
                        (b ? '<div class="cbp-popup-lightbox-title">' + b + "</div>" : "") +
                        c +
                        "</div></div>";
                    d.content.html(e), d.wrap.addClass("cbp-popup-ready"), d.preloadNearbyImages();
                },
                updateVideoMarkup: function (a, b, c) {
                    var d = this;
                    d.wrap.addClass("cbp-popup-lightbox-isIframe");
                    var e =
                        '<div class="cbp-popup-lightbox-iframe"><iframe src="' +
                        a +
                        '" frameborder="0" allowfullscreen scrolling="no"></iframe><div class="cbp-popup-lightbox-bottom">' +
                        (b ? '<div class="cbp-popup-lightbox-title">' + b + "</div>" : "") +
                        c +
                        "</div></div>";
                    d.content.html(e), d.wrap.addClass("cbp-popup-ready"), d.preloadNearbyImages();
                },
                updateImagesMarkup: function (a, b, c) {
                    var d = this;
                    d.wrap.removeClass("cbp-popup-lightbox-isIframe");
                    var e =
                        '<div class="cbp-popup-lightbox-figure"><img src="' +
                        a +
                        '" class="cbp-popup-lightbox-img" ' +
                        d.dataActionImg +
                        ' /><div class="cbp-popup-lightbox-bottom">' +
                        (b ? '<div class="cbp-popup-lightbox-title">' + b + "</div>" : "") +
                        c +
                        "</div></div>";
                    d.content.html(e), d.wrap.addClass("cbp-popup-ready"), d.resizeImage(), d.preloadNearbyImages();
                },
                next: function () {
                    var a = this;
                    a[a.type + "JumpTo"](1);
                },
                prev: function () {
                    var a = this;
                    a[a.type + "JumpTo"](-1);
                },
                lightboxJumpTo: function (a) {
                    var b,
                        c = this;
                    (c.current = c.getIndex(c.current + a)), (b = c.dataArray[c.current]), c[b.type](b);
                },
                singlePageJumpTo: function (b) {
                    var c = this;
                    (c.current = c.getIndex(c.current + b)),
                        a.isFunction(c.options.singlePageCallback) &&
                            (c.resetWrap(),
                            c.wrap.scrollTop(0),
                            c.wrap.addClass("cbp-popup-loading"),
                            c.options.singlePageCallback.call(c, c.dataArray[c.current].url, c.dataArray[c.current].element),
                            c.options.singlePageDeeplinking && (location.href = c.url + "#cbp=" + c.dataArray[c.current].url));
                },
                resetWrap: function () {
                    var a = this;
                    "singlePage" === a.type && a.options.singlePageDeeplinking && (location.href = a.url + "#"), "singlePageInline" === a.type && a.options.singlePageInlineDeeplinking && (location.href = a.url + "#");
                },
                getIndex: function (a) {
                    var b = this;
                    return (a %= b.counterTotal), 0 > a && (a = b.counterTotal + a), a;
                },
                close: function (c, d) {
                    function e() {
                        h.content.html(""),
                            h.wrap.detach(),
                            h.cubeportfolio.$obj.removeClass("cbp-popup-singlePageInline-open cbp-popup-singlePageInline-close"),
                            "promise" === c && a.isFunction(d.callback) && d.callback.call(h.cubeportfolio),
                            h.resetWrap();
                    }
                    function g() {
                        h.options.singlePageInlineInFocus && "promise" !== c
                            ? a("html,body")
                                  .animate({ scrollTop: h.scrollTop }, 350)
                                  .promise()
                                  .then(function () {
                                      e();
                                  })
                            : e();
                    }
                    var h = this;
                    (h.isOpen = !1),
                        "singlePageInline" === h.type
                            ? "open" === c
                                ? (h.wrap.removeClass("cbp-popup-singlePageInline-ready"),
                                  a(h.dataArray[h.current].element).closest(".cbp-item").removeClass("cbp-singlePageInline-active"),
                                  h.openSinglePageInline(d.blocks, d.currentBlock, d.fromOpen))
                                : ((h.height = 0),
                                  h.revertResizeSinglePageInline(),
                                  h.wrap.removeClass("cbp-popup-singlePageInline-ready"),
                                  h.cubeportfolio.$obj.addClass("cbp-popup-singlePageInline-close"),
                                  h.cubeportfolio.$obj.find(".cbp-item").removeClass("cbp-singlePageInline-active"),
                                  f["private"].modernBrowser
                                      ? h.wrap.one(f["private"].transitionend, function () {
                                            g();
                                        })
                                      : g())
                            : "singlePage" === h.type
                            ? (h.resetWrap(),
                              h.wrap.removeClass("cbp-popup-ready"),
                              ("android" === f["private"].browser || "ios" === f["private"].browser) && (a("html").css({ position: "" }), h.navigationWrap.appendTo(h.wrap), h.navigationMobile.remove()),
                              a(b).scrollTop(h.scrollTop),
                              setTimeout(function () {
                                  (h.stopScroll = !0),
                                      h.navigationWrap.css({ top: h.wrap.scrollTop() }),
                                      h.wrap.removeClass("cbp-popup-singlePage-open cbp-popup-singlePage-sticky"),
                                      ("ie8" === f["private"].browser || "ie9" === f["private"].browser) &&
                                          (h.content.html(""), h.wrap.detach(), a("html").css({ overflow: "", paddingRight: "", position: "" }), h.navigationWrap.removeAttr("style"));
                              }, 0),
                              h.wrap.one(f["private"].transitionend, function () {
                                  h.content.html(""), h.wrap.detach(), a("html").css({ overflow: "", paddingRight: "", position: "" }), h.navigationWrap.removeAttr("style");
                              }))
                            : (h.originalStyle ? a("html").attr("style", h.originalStyle) : a("html").css({ overflow: "", paddingRight: "" }), a(b).scrollTop(h.scrollTop), h.content.html(""), h.wrap.detach());
                },
                tooggleLoading: function (a) {
                    var b = this;
                    (b.stopEvents = a), b.wrap[a ? "addClass" : "removeClass"]("cbp-popup-loading");
                },
                resizeImage: function () {
                    if (this.isOpen) {
                        var c = a(b).height(),
                            d = this.content.find("img"),
                            e = parseInt(d.css("margin-top"), 10) + parseInt(d.css("margin-bottom"), 10);
                        d.css("max-height", c - e + "px");
                    }
                },
                preloadNearbyImages: function () {
                    var a = [],
                        b = this;
                    a.push(b.getIndex(b.current + 1)), a.push(b.getIndex(b.current + 2)), a.push(b.getIndex(b.current + 3)), a.push(b.getIndex(b.current - 1)), a.push(b.getIndex(b.current - 2)), a.push(b.getIndex(b.current - 3));
                    for (var c = a.length - 1; c >= 0; c--) "isImage" === b.dataArray[a[c]].type && b.cubeportfolio.checkSrc(b.dataArray[a[c]].src);
                },
            },
            h = !1,
            i = !1;
        (e.prototype.run = function () {
            var b = this,
                d = b.parent,
                e = a(c.body);
            (d.lightbox = null),
                d.options.lightboxDelegate &&
                    !h &&
                    ((h = !0),
                    (d.lightbox = Object.create(g)),
                    d.lightbox.init(d, "lightbox"),
                    e.on("click.cbp", d.options.lightboxDelegate, function (c) {
                        c.preventDefault();
                        var e = a(this),
                            f = e.attr("data-cbp-lightbox"),
                            g = b.detectScope(e),
                            h = g.data("cubeportfolio"),
                            i = [];
                        h
                            ? h.blocksOn.each(function (b, c) {
                                  var e = a(c);
                                  e.not(".cbp-item-off") &&
                                      e.find(d.options.lightboxDelegate).each(function (b, c) {
                                          f ? a(c).attr("data-cbp-lightbox") === f && i.push(c) : i.push(c);
                                      });
                              })
                            : (i = f ? g.find(d.options.lightboxDelegate + "[data-cbp-lightbox=" + f + "]") : g.find(d.options.lightboxDelegate)),
                            d.lightbox.openLightbox(i, e[0]);
                    })),
                (d.singlePage = null),
                d.options.singlePageDelegate &&
                    !i &&
                    ((i = !0),
                    (d.singlePage = Object.create(g)),
                    d.singlePage.init(d, "singlePage"),
                    e.on("click.cbp", d.options.singlePageDelegate, function (c) {
                        c.preventDefault();
                        var e = a(this),
                            f = e.attr("data-cbp-singlePage"),
                            g = b.detectScope(e),
                            h = g.data("cubeportfolio"),
                            i = [];
                        h
                            ? h.blocksOn.each(function (b, c) {
                                  var e = a(c);
                                  e.not(".cbp-item-off") &&
                                      e.find(d.options.singlePageDelegate).each(function (b, c) {
                                          f ? a(c).attr("data-cbp-singlePage") === f && i.push(c) : i.push(c);
                                      });
                              })
                            : (i = f ? g.find(d.options.singlePageDelegate + "[data-cbp-singlePage=" + f + "]") : g.find(d.options.singlePageDelegate)),
                            d.singlePage.openSinglePage(i, e[0]);
                    })),
                (d.singlePageInline = null),
                d.options.singlePageDelegate &&
                    ((d.singlePageInline = Object.create(g)),
                    d.singlePageInline.init(d, "singlePageInline"),
                    d.$obj.on("click.cbp", d.options.singlePageInlineDelegate, function (a) {
                        a.preventDefault(), d.singlePageInline.openSinglePageInline(d.blocksOn, this);
                    }));
        }),
            (e.prototype.detectScope = function (b) {
                var d, e, f;
                return (
                    (d = b.closest(".cbp-popup-singlePageInline")),
                    d.length
                        ? ((f = b.closest(".cbp", d[0])), f.length ? f : d)
                        : ((e = b.closest(".cbp-popup-singlePage")), e.length ? ((f = b.closest(".cbp", e[0])), f.length ? f : e) : ((f = b.closest(".cbp")), f.length ? f : a(c.body)))
                );
            }),
            (e.prototype.destroy = function () {
                var b = this.parent;
                a(c.body).off("click.cbp"), (h = !1), (i = !1), b.lightbox && b.lightbox.destroy(), b.singlePage && b.singlePage.destroy(), b.singlePageInline && b.singlePageInline.destroy();
            }),
            (f.plugins.popUp = function (a) {
                return new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b),
                (c.searchInput = a(b.options.search)),
                c.searchInput.each(function (b, c) {
                    var d = c.getAttribute("data-search");
                    d || (d = "*"), a.data(c, "searchData", { value: c.value, el: d });
                });
            var d = null;
            c.searchInput.on("keyup.cbp paste.cbp", function (b) {
                b.preventDefault();
                var e = a(this);
                clearTimeout(d),
                    (d = setTimeout(function () {
                        c.runEvent.call(c, e);
                    }, 300));
            }),
                (c.searchNothing = c.searchInput.siblings(".cbp-search-nothing").detach()),
                (c.searchNothingHeight = null),
                (c.searchNothingHTML = c.searchNothing.html()),
                c.searchInput.siblings(".cbp-search-icon").on("click.cbp", function (b) {
                    b.preventDefault(), c.runEvent.call(c, a(this).prev().val(""));
                });
        }
        var f = a.fn.cubeportfolio.constructor;
        (e.prototype.runEvent = function (b) {
            var c = this,
                d = b.val(),
                e = b.data("searchData"),
                f = new RegExp(d, "i");
            e.value === d ||
                c.parent.isAnimating ||
                ((e.value = d),
                d.length > 0 ? b.attr("value", d) : b.removeAttr("value"),
                c.parent.$obj.cubeportfolio(
                    "filter",
                    function (b) {
                        var g = b.filter(function (b, c) {
                            var d = a(c).find(e.el).text();
                            return d.search(f) > -1 ? !0 : void 0;
                        });
                        if (0 === g.length && c.searchNothing.length) {
                            var h = c.searchNothingHTML.replace("{{query}}", d);
                            c.searchNothing.html(h),
                                c.searchNothing.appendTo(c.parent.$obj),
                                null === c.searchNothingHeight && (c.searchNothingHeight = c.searchNothing.outerHeight(!0)),
                                c.parent.registerEvent(
                                    "resizeMainContainer",
                                    function () {
                                        (c.parent.height = c.parent.height + c.searchNothingHeight), (c.parent.obj.style.height = c.parent.height + "px");
                                    },
                                    !0
                                );
                        } else c.searchNothing.detach();
                        return g;
                    },
                    function () {
                        b.trigger("keyup.cbp");
                    }
                ));
        }),
            (e.prototype.destroy = function () {
                var b = this;
                b.searchInput.off(".cbp"),
                    b.searchInput.next(".cbp-search-icon").off(".cbp"),
                    b.searchInput.each(function (b, c) {
                        a.removeData(c);
                    });
            }),
            (f.plugins.search = function (a) {
                return "" === a.options.search ? null : new e(a);
            });
    })(jQuery, window, document),
    (function (a, b, c, d) {
        "use strict";
        function e(b) {
            var c = this;
            (c.parent = b), (c.options = a.extend({}, f, c.parent.options.plugins.slider));
            var d = a(c.options.pagination);
            d.length > 0 &&
                ((c.parent.customPagination = d),
                (c.parent.customPaginationItems = d.children()),
                (c.parent.customPaginationClass = c.options.paginationClass),
                c.parent.customPaginationItems.on("click.cbp", function (b) {
                    b.preventDefault(), b.stopImmediatePropagation(), b.stopPropagation(), c.parent.sliderStopEvents || c.parent.jumpToSlider(a(this));
                })),
                c.parent.registerEvent(
                    "gridAdjust",
                    function () {
                        c.sliderMarkup.call(c.parent),
                            c.parent.registerEvent("gridAdjust", function () {
                                c.updateSlider.call(c.parent);
                            });
                    },
                    !0
                );
        }
        var f = { pagination: "", paginationClass: "cbp-pagination-active" },
            g = a.fn.cubeportfolio.constructor;
        (e.prototype.sliderMarkup = function () {
            var b = this;
            (b.sliderStopEvents = !1),
                (b.sliderActive = 0),
                b.$obj.one("initComplete.cbp", function () {
                    b.$obj.addClass("cbp-mode-slider");
                }),
                (b.nav = a("<div/>", { class: "cbp-nav" })),
                b.nav.on("click.cbp", "[data-slider-action]", function (c) {
                    if ((c.preventDefault(), c.stopImmediatePropagation(), c.stopPropagation(), !b.sliderStopEvents)) {
                        var d = a(this),
                            e = d.attr("data-slider-action");
                        b[e + "Slider"] && b[e + "Slider"](d);
                    }
                }),
                b.options.showNavigation &&
                    ((b.controls = a("<div/>", { class: "cbp-nav-controls" })),
                    (b.navPrev = a("<div/>", { class: "cbp-nav-prev", "data-slider-action": "prev" }).appendTo(b.controls)),
                    (b.navNext = a("<div/>", { class: "cbp-nav-next", "data-slider-action": "next" }).appendTo(b.controls)),
                    b.controls.appendTo(b.nav)),
                b.options.showPagination && (b.navPagination = a("<div/>", { class: "cbp-nav-pagination" }).appendTo(b.nav)),
                (b.controls || b.navPagination) && b.nav.appendTo(b.$obj),
                b.updateSliderPagination(),
                b.options.auto &&
                    (b.options.autoPauseOnHover &&
                        ((b.mouseIsEntered = !1),
                        b.$obj
                            .on("mouseenter.cbp", function (a) {
                                (b.mouseIsEntered = !0), b.stopSliderAuto();
                            })
                            .on("mouseleave.cbp", function (a) {
                                (b.mouseIsEntered = !1), b.startSliderAuto();
                            })),
                    b.startSliderAuto()),
                b.options.drag && g["private"].modernBrowser && b.dragSlider();
        }),
            (e.prototype.updateSlider = function () {
                var a = this;
                a.updateSliderPosition(), a.updateSliderPagination();
            }),
            (e.prototype.destroy = function () {
                var a = this;
                a.parent.customPaginationItems.off(".cbp");
            }),
            (g.plugins.slider = function (a) {
                return "slider" !== a.options.layoutMode ? null : new e(a);
            });
    })(jQuery, window, document);

MMCT - 2023