Overview

URL yigalbruk.com/?_branch_match_id=3d1052531627715850957&_branch_referr
IP185.230.63.171
ASNWix.com Ltd.
Location United States
Report completed2022-10-06 15:55:20 UTC
StatusLoading report..
urlquery Alerts No alerts detected


Settings

UserAgentMozilla/5.0 (X11; Linux x86_64; rv:96.0) Gecko/20100101 Firefox/96.0
Referer


Intrusion Detection Systems

Suricata /w Emerging Threats Pro  No alerts detected


Blocklists

OpenPhish  No alerts detected
PhishTank  No alerts detected
Fortinet's Web Filter
Scan Date Severity Indicator Comment
2022-10-06 2 www.yigalbruk.com/_api/v2/dynamicmodel Phishing
2022-10-06 2 www.yigalbruk.com/_partials/wix-thunderbolt/dist/clientWorker.74e51942.bund (...) Phishing
mnemonic secure dns  No alerts detected
Quad9 DNS  No alerts detected


Files

No files detected



Passive DNS (16)

Passive DNS Source Fully Qualifying Domain Name Rank First Seen Last Seen IP Comment
mnemonic passive DNS yigalbruk.com (1) 0 2022-05-07 12:17:08 UTC 2022-10-02 03:06:01 UTC 185.230.63.186 Unknown ranking
mnemonic passive DNS static.parastorage.com (9) 5943 2017-10-08 09:28:46 UTC 2022-10-06 11:10:34 UTC 151.101.85.91
mnemonic passive DNS push.services.mozilla.com (1) 2140 2015-09-03 10:29:36 UTC 2022-10-06 05:02:20 UTC 35.80.175.197
mnemonic passive DNS www.yigalbruk.com (3) 0 2022-06-12 13:43:32 UTC 2022-09-17 05:19:40 UTC 34.117.168.233 Unknown ranking
mnemonic passive DNS content-signature-2.cdn.mozilla.net (1) 1152 2020-11-03 12:26:46 UTC 2022-10-06 04:55:14 UTC 34.160.144.191
mnemonic passive DNS ocsp.sectigo.com (8) 487 2018-12-17 11:31:55 UTC 2022-10-06 12:08:41 UTC 172.64.155.188
mnemonic passive DNS ocsp.globalsign.com (2) 2075 2012-05-25 06:20:55 UTC 2022-10-06 04:46:52 UTC 104.18.20.226
mnemonic passive DNS ocsp.digicert.com (1) 86 2012-05-21 07:02:23 UTC 2022-10-06 10:24:12 UTC 93.184.220.29
mnemonic passive DNS img-getpocket.cdn.mozilla.net (6) 1631 2017-09-01 03:40:57 UTC 2022-10-06 04:25:36 UTC 34.120.237.76
mnemonic passive DNS static.wixstatic.com (2) 5648 2013-06-07 16:55:33 UTC 2022-10-06 06:20:14 UTC 34.102.176.152
mnemonic passive DNS sentry.wixpress.com (1) 32493 2019-02-21 14:41:45 UTC 2022-10-06 08:05:30 UTC 52.2.188.208
mnemonic passive DNS siteassets.parastorage.com (4) 6331 2018-06-12 13:05:15 UTC 2022-10-06 06:20:14 UTC 151.101.85.91
mnemonic passive DNS frog.wix.com (17) 5452 2016-04-07 19:33:42 UTC 2022-10-06 06:41:03 UTC 52.1.125.99
mnemonic passive DNS r3.o.lencr.org (5) 344 2020-12-02 08:52:13 UTC 2022-10-06 04:46:31 UTC 23.36.76.226
mnemonic passive DNS firefox.settings.services.mozilla.com (2) 867 2020-05-28 17:26:30 UTC 2022-10-06 06:47:58 UTC 54.230.111.35
mnemonic passive DNS contile.services.mozilla.com (1) 1114 2021-05-27 18:32:35 UTC 2022-10-06 04:46:50 UTC 34.117.237.239


Recent reports on same IP/ASN/Domain/Screenshot

Last 5 reports on IP: 185.230.63.171

Date UQ / IDS / BL URL IP
2022-12-08 13:33:38 +0000
0 - 0 - 1 westdubs.co.uk/ 185.230.63.171
2022-12-08 08:31:34 +0000
0 - 0 - 2 sriharipropertys.in/wp-admin/user/schwab_poli (...) 185.230.63.171
2022-12-08 06:00:01 +0000
0 - 0 - 3 grotifortepijonu.lt/ 185.230.63.171
2022-12-05 07:44:19 +0000
0 - 0 - 2 fb-labs.com/ 185.230.63.171
2022-12-03 09:28:52 +0000
0 - 0 - 2 sweetelizabethscakes.com/ 185.230.63.171

Last 5 reports on ASN: Wix.com Ltd.

Date UQ / IDS / BL URL IP
2022-12-08 15:42:02 +0000
0 - 0 - 2 megabirdnest.com/ 185.230.63.186
2022-12-08 13:33:38 +0000
0 - 0 - 1 westdubs.co.uk/ 185.230.63.171
2022-12-08 08:31:34 +0000
0 - 0 - 2 sriharipropertys.in/wp-admin/user/schwab_poli (...) 185.230.63.171
2022-12-08 06:00:01 +0000
0 - 0 - 3 grotifortepijonu.lt/ 185.230.63.171
2022-12-08 04:30:29 +0000
0 - 0 - 2 dadibra.com/McbJd.exe 185.230.63.186

Last 1 reports on domain: yigalbruk.com

Date UQ / IDS / BL URL IP
2022-10-06 15:55:20 +0000
0 - 0 - 2 yigalbruk.com/?_branch_match_id=3d10525316277 (...) 185.230.63.171

No other reports with similar screenshot



JavaScript

Executed Scripts (61)


Executed Evals (5)

#1 JavaScript::Eval (size: 57580, repeated: 1) - SHA256: 50a197decca57dd4a087e603b4ded67b4dc8dc85f198cf00536bc2543cca0fb5

                                        (("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library = ("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library || []).push([
    [3], {
        1361: function(e, t, r) {
            "use strict";
            r.d(t, "b", (function() {
                return l
            }));
            var o = r(7),
                a = r(50);
            const n = Object(o.withValidation)(e => {
                    const {
                        props: t,
                        metaData: r
                    } = e;
                    return {get type() {
                            return "$w.Button"
                        },
                        toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(r)), {
                            type: "$w.Button",
                            label: t.label || ""
                        })
                    }
                }, {
                    type: ["object"],
                    properties: {
                        onClick: {
                            type: ["function"],
                            args: [{
                                type: ["function"]
                            }]
                        }
                    }
                }),
                s = Object(o.createStylePropsSDKFactory)({
                    BackgroundColor: !0,
                    BorderColor: !0,
                    BorderWidth: !0,
                    BorderRadius: !0,
                    TextColor: !0
                }),
                c = Object(o.createElementPropsSDKFactory)(),
                i = Object(o.createAccessibilityPropSDKFactory)({
                    enableAriaLabel: !0,
                    enableAriaLabelledBy: !0,
                    enableAriaDescribedBy: !0,
                    enableAriaControls: !0,
                    enableAriaExpanded: !0,
                    enableAriaPressed: !0,
                    enableAriaOwns: !0,
                    enableAriaLive: !0,
                    enableAriaAtomic: !0,
                    enableAriaRelevant: !0,
                    enableAriaHaspopup: !0,
                    enableTabIndex: !0,
                    enableScreenReader: !0,
                    enableLegacyAriaLabel: !0
                }),
                l = Object(o.composeSDKFactories)(c, o.labelPropsSDKFactory, o.disablePropsSDKFactory, o.linkPropsSDKFactory, s, o.clickPropsSDKFactoryWithUpdatePlatformHandler, o.focusPropsSDKFactory, i, n);
            t.a = Object(a.createComponentSDKModel)(l)
        },
        1466: function(e, t, r) {
            "use strict";

            function o(...e) {
                return t => e.reduce((e, t) => t(e), t)
            }
            r.d(t, "a", (function() {
                return o
            }))
        },
        1715: function(e, t, r) {
            "use strict";
            var o = r(4080),
                a = o.OPEN_TAG_START,
                n = o.TAG_END,
                s = o.SELF_CLOSING,
                c = o.CLOSING_TAG_START,
                i = o.HTML_END,
                l = o.SPACE,
                p = r(4081),
                d = new Set(p),
                b = new Set([a, n, s, c]);

            function u(e, t, r, o) {
                var a = o || r;
                return e.slice(t + 1, a).toLowerCase()
            }

            function g(e, t, r, o) {
                var a = o || r;
                return e.slice(a + 1, r)
            }

            function f(e, t, r, o, n, s) {
                var c = u(e, r, o, n);
                if (t === a) {
                    var i = g(e, 0, o, n);
                    d.has(c) ? s.onSelfClosingTag && s.onSelfClosingTag({
                        tagName: c,
                        props: i
                    }) : s.onOpenTag && s.onOpenTag({
                        tagName: c,
                        props: i
                    })
                } else s.onClosingTag && s.onClosingTag({
                    tagName: c,
                    props: ""
                })
            }

            function O(e, t) {
                var r = void 0;
                switch (e[t]) {
                    case "<":
                        if ("/" === e[t + 1]) {
                            r = c, t++;
                            break
                        }
                        r = a;
                        break;
                    case ">":
                        r = n;
                        break;
                    case "/":
                        if (">" === e[t + 1]) {
                            r = s, t++;
                            break
                        }
                    case " ":
                        r = l;
                        break;
                    default:
                        r = e[t]
                }
                return t === e.length && (r = i), r
            }
            e.exports = {
                parseFragment: function(e) {
                    for (var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, r = void 0, o = void 0, p = void 0, d = void 0, h = void 0, m = void 0, y = e.length, S = 0; S <= y;) {
                        switch (S = p = (o = S) + (r = O(e, S)).length - 1, r) {
                            case a:
                            case c:
                                var j = e.slice(h + 1, o);
                                j && t.onText && t.onText(j), m = null;
                                break;
                            case n:
                                f(e, d, h, S, m, t);
                                break;
                            case s:
                                if (!t.onSelfClosingTag) break;
                                t.onSelfClosingTag({
                                    tagName: u(e, h, o, m),
                                    props: g(e, 0, o, m)
                                });
                                break;
                            case l:
                                m || d !== a && d !== c || (m = S);
                                break;
                            case i:
                                if (!t.onText) break;
                                if (!d) return void t.onText(e);
                                h !== y - 1 && t.onText(e.slice(h + 1, y))
                        }
                        b.has(r) && (d = r, h = p, o), S++
                    }
                }
            }
        },
        1807: function(e, t, r) {
            "use strict";
            r.d(t, "b", (function() {
                return s
            }));
            var o = r(7),
                a = r(50);
            const n = Object(o.createElementPropsSDKFactory)(),
                s = Object(o.composeSDKFactories)(n, ({
                    metaData: e
                }) => ({get type() {
                        return "$w.Container"
                    },
                    toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(e)), {
                        type: "$w.Container"
                    })
                }), o.childrenPropsSDKFactory, o.clickPropsSDKFactoryWithUpdatePlatformHandler, o.backgroundPropsSDKFactory);
            t.a = Object(a.createComponentSDKModel)(s)
        },
        3851: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50);
            const n = Object(o.createStylePropsSDKFactory)({
                    BackgroundColor: {
                        withoutDefaultValue: !0,
                        supportOpacity: !0
                    },
                    BorderColor: {
                        withoutDefaultValue: !0,
                        supportOpacity: !1
                    },
                    BorderRadius: {
                        withoutDefaultValue: !0
                    },
                    BorderWidth: {
                        withoutDefaultValue: !0
                    },
                    TextColor: {
                        withoutDefaultValue: !0
                    }
                }),
                s = Object(o.createElementPropsSDKFactory)(),
                c = Object(o.withValidation)(e => {
                    const t = Object(o.labelPropsSDKFactory)(e),
                        r = n(e),
                        {
                            props: a,
                            setProps: s,
                            sdkData: c,
                            createSdkState: i,
                            handlers: l
                        } = e,
                        [p, d] = i({});
                    return {get label() {
                            return t.label
                        },
                        set label(e) {
                            t.label = e
                        },
                        get style() {
                            return {get backgroundColor() {
                                    return r.style.backgroundColor
                                },
                                set backgroundColor(t) {
                                    r.style.backgroundColor = t, e.setProps({
                                        corvid: Object.assign(Object.assign({}, e.props.corvid), {
                                            hasBackgroundColor: !0
                                        })
                                    })
                                },
                                get borderColor() {
                                    return r.style.borderColor
                                },
                                set borderColor(t) {
                                    r.style.borderColor = t, e.setProps({
                                        corvid: Object.assign(Object.assign({}, e.props.corvid), {
                                            hasBorderColor: !0
                                        })
                                    })
                                },
                                get borderRadius() {
                                    return r.style.borderRadius
                                },
                                set borderRadius(t) {
                                    r.style.borderRadius = t, e.setProps({
                                        corvid: Object.assign(Object.assign({}, e.props.corvid), {
                                            hasBorderRadius: !0
                                        })
                                    })
                                },
                                get borderWidth() {
                                    return r.style.borderWidth
                                },
                                set borderWidth(t) {
                                    r.style.borderWidth = t, e.setProps({
                                        corvid: Object.assign(Object.assign({}, e.props.corvid), {
                                            hasBorderWidth: !0
                                        })
                                    })
                                },
                                get color() {
                                    return r.style.color
                                },
                                set color(t) {
                                    r.style.color = t, e.setProps({
                                        corvid: Object.assign(Object.assign({}, e.props.corvid), {
                                            hasColor: !0
                                        })
                                    })
                                },
                                removeProperty(t) {
                                    const o = {
                                        backgroundColor: "hasBackgroundColor",
                                        borderWidth: "hasBorderWidth",
                                        borderRadius: "hasBorderRadius",
                                        borderColor: "hasBorderColor",
                                        textColor: "hasColor"
                                    };
                                    if (!o[t]) return;
                                    const a = Object.assign(Object.assign({}, e.props.corvid), {
                                        [o[t]]: !1
                                    });
                                    r.style.removeProperty(t), e.setProps({
                                        corvid: a
                                    })
                                }
                            }
                        },
                        get icon() {
                            return p.iconMediaUrl || Object(o.createSvgWixMediaUrl)(c.svgId, "")
                        },
                        set icon(e) {
                            d({
                                iconMediaUrl: e
                            }), s(e ? (async(e, t, r, a) => {
                                const n = await Object(o.resolveAndFetchSvg)(e, t, a);
                                return {
                                    corvid: Object.assign(Object.assign({}, r), {
                                        iconSvgString: n
                                    })
                                }
                            })(e, c.mediaSvgUrl, a.corvid, l.sanitizeSVG) : {
                                corvid: Object.assign(Object.assign({}, a.corvid), {
                                    iconSvgString: null
                                })
                            })
                        },
                        get iconCollapsed() {
                            var e;
                            return !!(null === (e = a.corvid) || void 0 === e ? void 0 : e.iconCollapsed)
                        },
                        set iconCollapsed(e) {
                            s({
                                corvid: Object.assign(Object.assign({}, a.corvid), {
                                    iconCollapsed: e
                                })
                            })
                        },
                        collapseIcon() {
                            s({
                                corvid: Object.assign(Object.assign({}, a.corvid), {
                                    iconCollapsed: !0
                                })
                            })
                        },
                        expandIcon() {
                            s({
                                corvid: Object.assign(Object.assign({}, a.corvid), {
                                    iconCollapsed: !1
                                })
                            })
                        },
                        get type() {
                            return "$w.Button"
                        },
                        toJSON() {
                            const {
                                label: a
                            } = t, {
                                style: n
                            } = r;
                            return Object.assign(Object.assign({}, Object(o.toJSONBase)(e.metaData)), {
                                label: a,
                                style: Object.assign({}, n),
                                type: "$w.Button"
                            })
                        }
                    }
                }, {
                    type: ["object"],
                    properties: {
                        icon: {
                            type: ["string", "nil"]
                        }
                    }
                }, {
                    icon: [e => {
                        if (e) {
                            o.assert.isSVG(e) || Object(o.reportError)(o.messages.invalidSvgValue(e))
                        }
                        return !0
                    }]
                }),
                i = Object(o.createAccessibilityPropSDKFactory)({
                    enableAriaLabel: !0,
                    enableAriaLabelledBy: !0,
                    enableAriaDescribedBy: !0,
                    enableAriaControls: !0,
                    enableAriaExpanded: !0,
                    enableAriaPressed: !0,
                    enableAriaOwns: !0,
                    enableAriaLive: !0,
                    enableAriaAtomic: !0,
                    enableAriaRelevant: !0,
                    enableAriaHaspopup: !0,
                    enableTabIndex: !0,
                    enableScreenReader: !0
                }),
                l = Object(o.composeSDKFactories)(s, o.clickPropsSDKFactory, o.focusPropsSDKFactory, o.disablePropsSDKFactory, o.linkPropsSDKFactory, i, c);
            t.a = Object(a.createComponentSDKModel)(l)
        },
        3861: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50);
            const n = Object(o.composeSDKFactories)(o.basePropsSDKFactory, Object(o.createViewportPropsSDKFactory)(), ({
                props: e,
                metaData: t
            }) => ({get name() {
                    return e.name
                },
                toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(t)), {
                    name: e.name
                })
            }));
            t.a = Object(a.createComponentSDKModel)(n)
        },
        3882: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50);
            const n = Object(o.createElementPropsSDKFactory)({
                    useHiddenCollapsed: !1
                }),
                s = Object(o.composeSDKFactories)(n, ({
                    handlers: e,
                    metaData: t
                }) => ({
                    open() {
                        e.openMenuContainer(t.compId)
                    }, close() {
                        e.closeMenuContainer(t.compId)
                    }
                }));
            t.a = Object(a.createComponentSDKModel)(s)
        },
        3889: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50);
            const n = Object(o.composeSDKFactories)(o.backgroundPropsSDKFactory);
            t.a = Object(a.createComponentSDKModel)(n)
        },
        3902: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50),
                n = r(1415);
            const s = Object(o.createElementPropsSDKFactory)(),
                c = Object(o.composeSDKFactories)(s, e => {
                    const {
                        metaData: t,
                        props: r
                    } = e, a = Object(o.backgroundPropsSDKFactory)(e), s = () => t.getChildren().filter(e => "$w.Column" === e.type);
                    return {get background() {
                            const e = s(),
                                t = Boolean((null === (o = r.dividers) || void 0 === o ? void 0 : o.hasTopDivider) || (null === (n = r.dividers) || void 0 === n ? void 0 : n.hasBottomDivider));
                            var o, n;
                            return {get src() {
                                    const r = a.background.src;
                                    if (!r && 1 === e.length && !t) {
                                        const [t] = e;
                                        return t.background.src
                                    }
                                    return r
                                },
                                set src(r) {
                                    if (1 !== e.length || t) a.background.src = r;
                                    else {
                                        const [t] = e;
                                        t.background.src = r
                                    }
                                }
                            }
                        },
                        get columns() {
                            return s()
                        },
                        get type() {
                            return n.b
                        },
                        toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(t)), {
                            type: n.b
                        })
                    }
                }, o.childrenPropsSDKFactory, o.clickPropsSDKFactory);
            t.a = Object(a.createComponentSDKModel)(c)
        },
        3915: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50),
                n = r(739);
            const s = {
                    none: "disabled",
                    expand: "zoomMode",
                    link: "goToLink",
                    magnified: "zoomAndPanMode"
                },
                c = {
                    disabled: "none",
                    zoomMode: "expand",
                    goToLink: "link",
                    zoomAndPanMode: "magnified"
                },
                i = {
                    fixedWidth: "fitWidth",
                    fit: "fit",
                    fill: "fill"
                },
                l = {
                    fitWidth: "fixedWidth",
                    fit: "fit",
                    fill: "fill"
                },
                p = Object(o.withValidation)(({
                    setProps: e,
                    setStyles: t,
                    registerEvent: r,
                    props: a,
                    metaData: p,
                    sdkData: d
                }) => {
                    const b = () => {
                            const {
                                uri: e,
                                height: t,
                                width: r,
                                title: s
                            } = a;
                            if (Object(n.a)(e)) return e;
                            const c = Object(o.createMediaItemUri)({
                                mediaId: e,
                                width: r,
                                height: t,
                                title: s,
                                type: "image"
                            });
                            return c.error ? "" : c.item || ""
                        },
                        u = () => l[a.displayMode],
                        g = (e, r) => {
                            const {
                                layoutWidth: o,
                                layoutHeight: n,
                                paddingBottom: s
                            } = d, c = o;
                            let i = n;
                            if ("fixedWidth" === e) {
                                const e = ((null == r ? void 0 : r.width) || a.width) / ((null == r ? void 0 : r.height) || a.height);
                                i = Math.ceil(o / e + s)
                            }
                            t({
                                width: c + "px",
                                height: i + "px"
                            })
                        };
                    return r("onLoad", () => {
                        g(u())
                    }), {get src() {
                            return b()
                        },
                        set src(t) {
                            if (t) {
                                const {
                                    height: r,
                                    width: a,
                                    title: n,
                                    mediaId: s,
                                    error: c
                                } = Object(o.parseMediaSrc)(t, "image");
                                c ? Object(o.reportError)('The "src" property cannot be set to "src". It must be a valid URL starting with "http://", "https://", or "wix:image://".') : (e(Object.assign(Object.assign(Object.assign(Object.assign({}, void 0 !== r ? {
                                    height: r
                                } : {}), void 0 !== a ? {
                                    width: a
                                } : {}), void 0 !== n ? {
                                    title: n
                                } : {}), {
                                    uri: s,
                                    crop: null
                                })), u() === l.fitWidth && g(l.fitWidth, {
                                    width: a,
                                    height: r
                                }))
                            } else e({
                                uri: ""
                            })
                        },
                        get alt() {
                            return a.alt
                        },
                        set alt(t) {
                            e({
                                alt: t || ""
                            })
                        },
                        get tooltip() {
                            return a.title
                        },
                        set tooltip(t) {
                            e({
                                title: t || ""
                            })
                        },
                        get clickAction() {
                            return c[a.onClickBehavior]
                        },
                        set clickAction(t) {
                            e({
                                onClickBehavior: s[t] || s.none
                            })
                        },
                        get fitMode() {
                            return u()
                        },
                        set fitMode(t) {
                            e({
                                displayMode: i[t]
                            }), g(t)
                        },
                        get type() {
                            return "$w.Image"
                        },
                        toJSON() {
                            const e = Object(o.toJSONBase)(p);
                            return Object.assign(Object.assign({}, e), {
                                alt: a.alt,
                                tooltip: a.title,
                                src: b(),
                                type: "$w.Image"
                            })
                        }
                    }
                }, {
                    type: ["object"],
                    properties: {
                        src: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        description: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        title: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        alt: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        tooltip: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        width: {
                            type: ["integer"]
                        },
                        height: {
                            type: ["integer"]
                        },
                        clickAction: {
                            type: ["string", "nil"],
                            enum: Object.keys(s),
                            warnIfNil: !0
                        },
                        fitMode: {
                            type: ["string"],
                            enum: Object.keys(i)
                        }
                    }
                }),
                d = Object(o.createElementPropsSDKFactory)(),
                b = Object(o.composeSDKFactories)(d, o.clickPropsSDKFactoryWithUpdatePlatformHandler, o.linkPropsSDKFactory, p);
            t.a = Object(a.createComponentSDKModel)(b)
        },
        3916: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50);
            const n = Object(o.createElementPropsSDKFactory)({
                    useHiddenCollapsed: !1
                }),
                s = Object(o.composeSDKFactories)(n, o.childrenPropsSDKFactory, o.clickPropsSDKFactory, ({
                    sdkData: e,
                    metaData: t,
                    platformUtils: r
                }) => {
                    const a = () => r.wixCodeNamespacesRegistry.get("seo").title;
                    return {get description() {
                            return e.currentPageSEODescription
                        },
                        get keywords() {
                            return e.currentPageSEOKeywords
                        },
                        get title() {
                            return a()
                        },
                        get visibleInMenu() {
                            return e.visibleInMenu
                        },
                        toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(t)), {
                            title: a(),
                            description: e.currentPageSEODescription,
                            keywords: e.currentPageSEOKeywords,
                            visibleInMenu: e.visibleInMenu
                        })
                    }
                });
            t.a = Object(a.createComponentSDKModel)(s)
        },
        4044: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50),
                n = r(1337),
                s = r(747),
                c = r(1466);
            const i = /(?:<a.*?href=(["']))(.*?)(?:\1)/i,
                l = /<a(.*?((target=["']([^"]+)["']).*?)?)>/i,
                p = /<a.*?>/gi,
                d = (e, t, r) => {
                    const o = i.exec(e);
                    if (o) {
                        const a = o[0],
                            n = o[2],
                            s = t(n),
                            c = a.replace(n, r(s));
                        return ((e, t = "_blank") => {
                            const r = l.exec(e);
                            if (r) {
                                const [o, a, n, s, c] = r;
                                if ("_blank" === c || "_self" === c) return e;
                                let i;
                                return s ? (i = a.replace(s, `target="${t}"`), i = o.replace(a, i)) : i = o.replace(a, `${a} target="${t}"`), e.replace(o, i)
                            }
                            return e
                        })(e.replace(a, c), s.target)
                    }
                    return e
                },
                b = (e, t, r = (e => e.href || "")) => {
                    const o = [];
                    let a;
                    do {
                        if (a = p.exec(e), a) {
                            const [e] = a, n = d(e, t, r);
                            o.push([e, n])
                        }
                    } while (a);
                    return o.reduce((e, [t, r]) => e.replace(t, r), e)
                },
                u = e => e.replace(/<span class="wixGuard">([^<]*)<\/span>/g, (e, t = "") => "&#8203;" === t.trim() ? "" : t),
                g = /(?:<object.*?>)?<a data-auto-recognition="true".*?>(.*?)<\/a>(?:<\/object>)?/g,
                f = e => e.replace(g, (e, t) => t);
            var O = r(1715),
                h = r.n(O);
            const m = {
                    p: "font_8",
                    h1: "font_0",
                    h2: "font_2",
                    h3: "font_3",
                    h4: "font_4",
                    h5: "font_5",
                    h6: "font_6",
                    ol: "font_8",
                    ul: "font_8"
                },
                y = /<(ol|ul|h[1-6]|p)(.*?)>/g,
                S = /(class\s*=['"][^'"]*?)\bfont_([79])\b/;

            function j(e = "") {
                return e.replace(y, (e, t, r = "") => {
                    const o = new RegExp("(class\\s*=['\"].*?)" + m[t]);
                    return o.test(r) ? e = e.replace(o, "$1") : "p" === t && S.test(r) && (e = e.replace(S, (e, t, r) => `${t}${"7"===r?"p1":"p3"}`)), e.replace(/class\s*=(['"])\s*\1/, "").replace(/class\s*=(['"])\s*(.*?)\s*\1/, (e, t, r) => `class=${t}${r}${t}`).replace(/(.+)\s{2,}/g, "$1 ").replace(/\s+>/, ">")
                })
            }
            const D = /<(ol|ul|h[1-6]|p)(.*?)>/g,
                v = /class\s*?=\s*["'](.*?)['"]/,
                k = /(class\s*?=\s*["'])(.*?)(['"])/;

            function C(e, t, r) {
                if (!e || t === r) return e;
                const o = (e => {
                    const t = [];
                    return h.a.parseFragment(e, {
                        onOpenTag: ({
                            tagName: e
                        }) => {
                            t.push(e)
                        },
                        onClosingTag: ({
                            tagName: e
                        }) => {
                            t.push("/" + e)
                        }
                    }), t
                })(e);
                if (0 === o.length || o[0] !== t || o[o.length - 1] !== "/" + t || !((e, t) => {
                        const r = e.filter(e => e === t || e === "/" + t);
                        r.shift(), r.pop();
                        let o = 0;
                        for (const e of r)
                            if (o += e === t ? 1 : -1, o < 0) return !1;
                        return !0
                    })(o, t)) return e;
                const a = new RegExp("<" + t);
                return e.substring(0, e.lastIndexOf("</" + t)).concat(`</${r}>`).replace(a, "<" + r)
            }
            var P = {
                ldquo: "\u201c",
                lsquo: "\u2018",
                rsquo: "\u2019",
                laquo: "\xab",
                raquo: "\xbb",
                lsaquo: "\u2039",
                rsaquo: "\u203a",
                lt: "<",
                gt: ">",
                amp: "&",
                bull: "\u2022",
                deg: "\xb0",
                hellip: "\u2026",
                trade: "\u2122",
                copy: "\xa9",
                reg: "\xae",
                mdash: "\u2014",
                ndash: "\u2013",
                nbsp: "\xa0",
                emsp: "\u2003",
                ensp: "\u2002",
                sup2: "\xb2",
                sup3: "\xb3",
                frac14: "\xbc",
                frac12: "\xbd",
                frac34: "\xbe"
            };
            const K = Object.keys(P).sort((e, t) => t.length - e.length);
            var w = new RegExp(`&(${K.join("|")});|&#([0-9]+);|&#[xX]([a-fA-F0-9]+);`, "g"),
                F = {
                    0: "\ufffd",
                    128: "\u20ac",
                    130: "\u201a",
                    131: "\u0192",
                    132: "\u201e",
                    133: "\u2026",
                    134: "\u2020",
                    135: "\u2021",
                    136: "\u02c6",
                    137: "\u2030",
                    138: "\u0160",
                    139: "\u2039",
                    140: "\u0152",
                    142: "\u017d",
                    145: "\u2018",
                    146: "\u2019",
                    147: "\u201c",
                    148: "\u201d",
                    149: "\u2022",
                    150: "\u2013",
                    151: "\u2014",
                    152: "\u02dc",
                    153: "\u2122",
                    154: "\u0161",
                    155: "\u203a",
                    156: "\u0153",
                    158: "\u017e",
                    159: "\u0178"
                };

            function A(e) {
                let t = "";
                return e in F ? F[e] : (e > 65535 && (e -= 65536, t += String.fromCharCode(e >>> 10 & 1023 | 55296), e = 56320 | 1023 & e), t + String.fromCharCode(e))
            }
            const x = e => {
                    if (!e) return e;
                    if (self.he) return self.he.decode(e);
                    return function(e) {
                        const t = [];
                        let r = [],
                            o = !1;
                        for (const a of e) o && ";" !== a && r.push(a), "&" === a && (o = !0), ";" === a && (t.push(r.join("")), o = !1, r = []);
                        return t
                    }(e).every(e => e in P || "#" === e[0]) ? e.replace(w, (e, t, r, o) => t ? P[t] : r ? A(parseInt(r, 10)) : o ? A(parseInt(o, 16)) : e) : (self.importScripts("https://static.parastorage.com/unpkg/he@1.2.0/he.js"), x(e))
                },
                N = {
                    "&amp;": "&",
                    "&lt;": "<",
                    "&gt;": ">",
                    "&quot;": '"',
                    "&#39;": "'"
                },
                $ = /&(?:amp|lt|gt|quot|#(0+)?39);/g,
                B = RegExp($.source);

            function T(e, t) {
                const r = [];
                let o = !1;
                return h.a.parseFragment(e, {
                        onText: () => {
                            o = !0
                        },
                        onOpenTag: e => {
                            "span" === e.tagName && 'class="wixGuard"' === e.props && (o = !0), o || r.push(e)
                        },
                        onClosingTag: () => {
                            o || r.pop()
                        }
                    }),
                    function(e, t) {
                        let r = "",
                            o = "";
                        for (const {
                                tagName: t,
                                props: a
                            }
                            of e) r += a ? `<${t} ${a}>` : `<${t}>`, o = `</${t}>${o}`;
                        return r + t + o
                    }(r, t)
            }
            const _ = 'data-attr-richtext-marker="true"';

            function M(e) {
                return `<span ${_}>${e}</span>`
            }

            function E(e, t) {
                const r = R(e);
                return r.withMarker ? `${r.before}${M(t)}${r.after}` : e
            }

            function I(e) {
                return R(e).marker
            }

            function R(e) {
                let t = !1,
                    r = !1;
                const o = {
                        before: "",
                        marker: "",
                        after: "",
                        withMarker: !1
                    },
                    a = [];
                return h.a.parseFragment(e, {
                    onText: e => {
                        t ? o.marker += e : r ? o.after += e : o.before += e
                    },
                    onOpenTag: e => {
                        const n = function(e) {
                            const t = e.props ? " " + e.props : "";
                            return `<${e.tagName}${t}>`
                        }(e);
                        t && (a.push(e.tagName), o.marker += n), r || "span" !== e.tagName || e.props !== _ || (o.withMarker = !0, t = !0), t || (r ? o.after += n : o.before += n)
                    },
                    onClosingTag: e => {
                        const n = `</${e.tagName}>`;
                        t ? 0 === a.length && "span" === e.tagName ? (r = !0, t = !1) : (o.marker += n, a.pop()) : r ? o.after += n : o.before += n
                    }
                }), o
            }
            const L = {
                    "&": "&amp;",
                    "<": "&lt;",
                    ">": "&gt;",
                    '"': "&quot;",
                    "'": "&#39;"
                },
                J = /[&<>"']/g,
                H = RegExp(J.source);
            const W = new RegExp(s.b, "mg"),
                V = new RegExp(s.c, "mg"),
                G = new RegExp(s.d, "mg"),
                U = e => o.assert.isNil(e) ? "" : e,
                q = Object(o.withValidation)(({
                    setProps: e,
                    props: t,
                    platformUtils: {
                        linkUtils: r
                    },
                    metaData: a,
                    sdkData: i,
                    createSdkState: l
                }) => {
                    const [p, d] = l(i), g = e => {
                        if (!p.linkPropsByHref || !p.linkPropsByHref[e]) {
                            const t = r.getLinkProps(e);
                            d({
                                linkPropsByHref: Object.assign(Object.assign({}, p.linkPropsByHref || {}), {
                                    [e]: t
                                })
                            })
                        }
                        return p.linkPropsByHref[e]
                    }, O = e => b(e, g), h = e => b(e, g, r.getLink), y = () => Object(c.a)(u, f, j, h)(t.html), S = (e, t) => Object(c.a)(U, e => ((e = "", {
                        addDefaultClasses: t
                    } = {}) => e ? e.replace(D, (e, r, o) => {
                        const a = o.match(v);
                        if (!a) return t ? `<${r}${o} class="${m[r]}">` : `<${r}${o}>`;
                        const n = a[1];
                        return /(^|\s)font_[0-9]($|\s)/.test(n) ? e : "p" === r && /\bp[13]\b/i.test(n) ? e.replace(/(.*?\bclass\s*?=.*?)\bp([13])\b(.*)/, (e, t, r, o) => `${t}${"1"===r?"font_7":"font_9"}${o}`) : `<${r}${o.replace(k,(e,t,o,a)=>`
                        $ {
                            t
                        }
                        $ {
                            m[r]
                        }
                        $ {
                            o
                        }
                        $ {
                            a
                        }
                        `)}>`
                    }) : e)(e, t), O, r.getImpliedLinks, n.a)(e), P = () => {
                        return t.html ? x((e = f(u(t.html)).replace(/\n/g, "").replace(/<br>/g, "\n").replace(/<br><\/br>/g, "\n").replace(/<br\s*\/?>/g, "\n").replace(W, "\n").replace(V, "").replace(G, "").trim()) && B.test(e) ? e.replace($, e => N[e] || "'") : e || "") : "";
                        var e
                    }, K = () => Object(c.a)(U, I)(t.html);
                    return {get type() {
                            return s.e
                        },
                        get html() {
                            return y()
                        },
                        set html(t) {
                            e({
                                html: S(t, {
                                    addDefaultClasses: !0
                                })
                            })
                        },
                        get text() {
                            return P()
                        },
                        set text(o) {
                            const a = o ? (n = o, n && H.test(n) ? n.replace(J, e => L[e]) : n || "").replace(/\n/g, "<br>") : s.f;
                            var n;
                            const c = r.getImpliedLinks(T(f(t.html), a), {
                                parseEscaped: !0
                            });
                            e({
                                html: c
                            })
                        },
                        get richText() {
                            return K()
                        },
                        set richText(r) {
                            const o = C(t.html, "p", "div");
                            if (o.includes(_)) e({
                                html: E(o, S(r))
                            });
                            else {
                                const t = M(S(r));
                                e({
                                    html: T(o, t)
                                })
                            }
                        },
                        toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(a)), {
                            type: s.e,
                            html: y(),
                            text: P(),
                            richText: K()
                        })
                    }
                }, {
                    type: ["object"],
                    properties: {
                        html: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        },
                        text: {
                            type: ["string", "nil"],
                            warnIfNil: !0
                        }
                    }
                }),
                z = Object(o.createElementPropsSDKFactory)(),
                X = Object(o.createAccessibilityPropSDKFactory)({
                    enableRole: !0,
                    enableAriaHidden: !0,
                    enableAriaLabel: !0,
                    enableAriaLabelledBy: !0,
                    enableAriaDescribedBy: !0,
                    enableAriaRoleDescription: !0,
                    enableAriaLive: !0,
                    enableAriaAtomic: !0,
                    enableAriaRelevant: !0,
                    enableAriaBusy: !0,
                    enableTabIndex: !0,
                    enableScreenReader: !0
                }),
                Q = Object(o.composeSDKFactories)(z, o.clickPropsSDKFactory, X, q, o.focusPropsSDKFactory, o.keyUpPropsSDKFactory);
            t.a = Object(a.createComponentSDKModel)(Q)
        },
        4055: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50),
                n = r(1252);
            const s = Object(o.createStylePropsSDKFactory)({
                    BackgroundColor: !0,
                    BorderColor: !0
                }, {
                    cssVarPrefix: n.b
                }),
                c = Object(o.createElementPropsSDKFactory)({
                    useHiddenCollapsed: !1
                }),
                i = Object(o.composeSDKFactories)(c, ({
                    metaData: e
                }) => ({get type() {
                        return "$w.Footer"
                    },
                    toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(e)), {
                        type: "$w.Footer"
                    })
                }), o.childrenPropsSDKFactory, o.clickPropsSDKFactory, s);
            t.a = Object(a.createComponentSDKModel)(i)
        },
        4056: function(e, t, r) {
            "use strict";
            var o = r(7),
                a = r(50),
                n = r(1252);
            const s = Object(o.createStylePropsSDKFactory)({
                    BackgroundColor: !0,
                    BorderColor: !0
                }, {
                    cssVarPrefix: n.b
                }),
                c = Object(o.createElementPropsSDKFactory)({
                    useHiddenCollapsed: !1
                }),
                i = Object(o.composeSDKFactories)(c, ({
                    metaData: e
                }) => ({get type() {
                        return "$w.Header"
                    },
                    toJSON: () => Object.assign(Object.assign({}, Object(o.toJSONBase)(e)), {
                        type: "$w.Header"
                    })
                }), o.childrenPropsSDKFactory, o.clickPropsSDKFactory, s);
            t.a = Object(a.createComponentSDKModel)(i)
        },
        4080: function(e, t, r) {
            "use strict";
            e.exports = {
                HTML_END: "HTML_END",
                OPEN_TAG_START: "<",
                TAG_END: ">",
                SELF_CLOSING: "/>",
                CLOSING_TAG_START: "</",
                SPACE: " "
            }
        },
        4081: function(e, t, r) {
            "use strict";
            e.exports = ["area", "base", "br", "col", "embed", "hr", "img", "input", "link", "meta", "param", "source", "track", "wbr"]
        },
        50: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            });
            var o = r(313);
            Object.keys(o).forEach((function(e) {
                "default" !== e && "__esModule" !== e && (e in t && t[e] === o[e] || Object.defineProperty(t, e, {
                    enumerable: !0,
                    get: function() {
                        return o[e]
                    }
                }))
            }))
        }
    }
]);
//# sourceMappingURL=https://static.parastorage.com/services/editor-elements/dist/rb_wixui.corvid~bootstrap.a95b195b.chunk.min.js.map
// concatenated at RegistryManifestPlugin
var currentGlobal = "undefined" != typeof globalThis ? globalThis : "undefined" != typeof window ? window : "undefined" != typeof self ? self : "undefined" != typeof global ? global : null;
currentGlobal['rb_wixui.corvid_bootstrap_lazy_factory'] = function() {
        ! function(t, e) {
            "object" == typeof exports && "object" == typeof module ? module.exports = e(require("lodash")) : "function" == typeof define && define.amd ? define("rb_wixui.corvid_bootstrap", ["lodash"], e) : "object" == typeof exports ? exports["rb_wixui.corvid_bootstrap"] = e(require("lodash")) : t["rb_wixui.corvid_bootstrap"] = e(t._)
        }("undefined" != typeof self ? self : this, (function(t) {
            return function(t) {
                function e(e) {
                    for (var i, a, s = e[0], l = e[1], c = e[2], d = 0, f = []; d < s.length; d++) a = s[d], Object.prototype.hasOwnProperty.call(n, a) && n[a] && f.push(n[a][0]), n[a] = 0;
                    for (i in l) Object.prototype.hasOwnProperty.call(l, i) && (t[i] = l[i]);
                    for (u && u(e); f.length;) f.shift()();
                    return o.push.apply(o, c || []), r()
                }

                function r() {
                    for (var t, e = 0; e < o.length; e++) {
                        for (var r = o[e], i = !0, s = 1; s < r.length; s++) {
                            var l = r[s];
                            0 !== n[l] && (i = !1)
                        }
                        i && (o.splice(e--, 1), t = a(a.s = r[0]))
                    }
                    return t
                }
                var i = {},
                    n = {
                        124: 0
                    },
                    o = [];

                function a(e) {
                    if (i[e]) return i[e].exports;
                    var r = i[e] = {
                        i: e,
                        l: !1,
                        exports: {}
                    };
                    return t[e].call(r.exports, r, r.exports, a), r.l = !0, r.exports
                }
                a.m = t, a.c = i, a.d = function(t, e, r) {
                    a.o(t, e) || Object.defineProperty(t, e, {
                        enumerable: !0,
                        get: r
                    })
                }, a.r = function(t) {
                    "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(t, Symbol.toStringTag, {
                        value: "Module"
                    }), Object.defineProperty(t, "__esModule", {
                        value: !0
                    })
                }, a.t = function(t, e) {
                    if (1 & e && (t = a(t)), 8 & e) return t;
                    if (4 & e && "object" == typeof t && t && t.__esModule) return t;
                    var r = Object.create(null);
                    if (a.r(r), Object.defineProperty(r, "default", {
                            enumerable: !0,
                            value: t
                        }), 2 & e && "string" != typeof t)
                        for (var i in t) a.d(r, i, function(e) {
                            return t[e]
                        }.bind(null, i));
                    return r
                }, a.n = function(t) {
                    var e = t && t.__esModule ? function() {
                        return t.default
                    } : function() {
                        return t
                    };
                    return a.d(e, "a", e), e
                }, a.o = function(t, e) {
                    return Object.prototype.hasOwnProperty.call(t, e)
                }, a.p = "https://static.parastorage.com/services/editor-elements/dist/";
                var s = ("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library = ("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library || [],
                    l = s.push.bind(s);
                s.push = e, s = s.slice();
                for (var c = 0; c < s.length; c++) e(s[c]);
                var u = l;
                return o.push([4231, 2, 3]), r()
            }({
                1148: function(t, e, r) {
                    var i = r(1357),
                        n = r(1643);
                    for (var o in (e = t.exports = function(t, e) {
                            return new n(e).process(t)
                        }).FilterCSS = n, i) e[o] = i[o];
                    "undefined" != typeof window && (window.filterCSS = t.exports)
                },
                1149: function(t, e) {
                    t.exports = {
                        indexOf: function(t, e) {
                            var r, i;
                            if (Array.prototype.indexOf) return t.indexOf(e);
                            for (r = 0, i = t.length; r < i; r++)
                                if (t[r] === e) return r;
                            return -1
                        },
                        forEach: function(t, e, r) {
                            var i, n;
                            if (Array.prototype.forEach) return t.forEach(e, r);
                            for (i = 0, n = t.length; i < n; i++) e.call(r, t[i], i, t)
                        },
                        trim: function(t) {
                            return String.prototype.trim ? t.trim() : t.replace(/(^\s*)|(\s*$)/g, "")
                        },
                        spaceIndex: function(t) {
                            var e = /\s|\n|\t/.exec(t);
                            return e ? e.index : -1
                        }
                    }
                },
                1252: function(t, e, r) {
                    "use strict";
                    r.d(e, "b", (function() {
                        return i
                    })), r.d(e, "a", (function() {
                        return n
                    }));
                    const i = "screenwidth",
                        n = {
                            screenWidthContainerBg: "screenWidthContainerBg",
                            screenWidthContainerBgCenter: "screenWidthContainerBgCenter"
                        }
                },
                1337: function(t, e, r) {
                    "use strict";
                    r.d(e, "a", (function() {
                        return d
                    }));
                    var i = r(762),
                        n = r.n(i);
                    const o = ["data", "aria"],
                        a = ["style", "class", "dir", "wix-comp", "role", "tabindex", "focus"],
                        s = ["href", "dataquery", "id", "rel", "target"],
                        l = ["color", "background-color", "font-size", "font-family", "font-style", "text-decoration", "writing-mode", "text-orientation", "line-height", "text-shadow", "direction", "position", "z-index", "top", "left", "overflow", "overflow-x", "overflow-y"];
                    const c = function() {
                            const t = Object.assign(Object.assign({}, i.whiteList), {
                                strike: [],
                                hatul: [],
                                wline: [],
                                object: []
                            });
                            return t.a && t.a.push(...s), Object.keys(t).forEach(e => {
                                t[e] || (t[e] = []), t[e].push(...a)
                            }), t
                        }(),
                        u = l.reduce((t, e) => (t[e] = !0, t), {});

                    function d(t) {
                        return n()(t, {
                            whiteList: c,
                            stripIgnoreTagBody: ["script", "style"],
                            stripBlankChar: !0,
                            css: {
                                whiteList: Object.assign(Object.assign({}, Object(i.getDefaultCSSWhiteList)()), u)
                            },
                            safeAttrValue: function(t, e, r, n) {
                                const o = function(t, e, r, n) {
                                    return "a" === t && "href" === e && r.startsWith("wix:document") ? r : Object(i.safeAttrValue)(t, e, r, n)
                                }(t, e, r, n);
                                return o || ""
                            },
                            onIgnoreTagAttr: (t, e, r) => o.some(t => e.startsWith(t)) ? `${e}="${r}"` : "",
                            onIgnoreTag: () => ""
                        })
                    }
                },
                1356: function(t, e, r) {
                    var i = r(1148).FilterCSS,
                        n = r(1148).getDefaultWhiteList,
                        o = r(1149);

                    function a() {
                        return {
                            a: ["target", "href", "title"],
                            abbr: ["title"],
                            address: [],
                            area: ["shape", "coords", "href", "alt"],
                            article: [],
                            aside: [],
                            audio: ["autoplay", "controls", "crossorigin", "loop", "muted", "preload", "src"],
                            b: [],
                            bdi: ["dir"],
                            bdo: ["dir"],
                            big: [],
                            blockquote: ["cite"],
                            br: [],
                            caption: [],
                            center: [],
                            cite: [],
                            code: [],
                            col: ["align", "valign", "span", "width"],
                            colgroup: ["align", "valign", "span", "width"],
                            dd: [],
                            del: ["datetime"],
                            details: ["open"],
                            div: [],
                            dl: [],
                            dt: [],
                            em: [],
                            figcaption: [],
                            figure: [],
                            font: ["color", "size", "face"],
                            footer: [],
                            h1: [],
                            h2: [],
                            h3: [],
                            h4: [],
                            h5: [],
                            h6: [],
                            header: [],
                            hr: [],
                            i: [],
                            img: ["src", "alt", "title", "width", "height"],
                            ins: ["datetime"],
                            li: [],
                            mark: [],
                            nav: [],
                            ol: [],
                            p: [],
                            pre: [],
                            s: [],
                            section: [],
                            small: [],
                            span: [],
                            sub: [],
                            summary: [],
                            sup: [],
                            strong: [],
                            strike: [],
                            table: ["width", "border", "align", "valign"],
                            tbody: ["align", "valign"],
                            td: ["width", "rowspan", "colspan", "align", "valign"],
                            tfoot: ["align", "valign"],
                            th: ["width", "rowspan", "colspan", "align", "valign"],
                            thead: ["align", "valign"],
                            tr: ["rowspan", "align", "valign"],
                            tt: [],
                            u: [],
                            ul: [],
                            video: ["autoplay", "controls", "crossorigin", "loop", "muted", "playsinline", "poster", "preload", "src", "height", "width"]
                        }
                    }
                    var s = new i;

                    function l(t) {
                        return t.replace(c, "&lt;").replace(u, "&gt;")
                    }
                    var c = /</g,
                        u = />/g,
                        d = /"/g,
                        f = /&quot;/g,
                        g = /&#([a-zA-Z0-9]*);?/gim,
                        p = /&colon;?/gim,
                        h = /&newline;?/gim,
                        m = /((j\s*a\s*v\s*a|v\s*b|l\s*i\s*v\s*e)\s*s\s*c\s*r\s*i\s*p\s*t\s*|m\s*o\s*c\s*h\s*a)\:/gi,
                        v = /e\s*x\s*p\s*r\s*e\s*s\s*s\s*i\s*o\s*n\s*\(.*/gi,
                        b = /u\s*r\s*l\s*\(.*/gi;

                    function y(t) {
                        return t.replace(d, "&quot;")
                    }

                    function w(t) {
                        return t.replace(f, '"')
                    }

                    function _(t) {
                        return t.replace(g, (function(t, e) {
                            return "x" === e[0] || "X" === e[0] ? String.fromCharCode(parseInt(e.substr(1), 16)) : String.fromCharCode(parseInt(e, 10))
                        }))
                    }

                    function x(t) {
                        return t.replace(p, ":").replace(h, " ")
                    }

                    function T(t) {
                        for (var e = "", r = 0, i = t.length; r < i; r++) e += t.charCodeAt(r) < 32 ? " " : t.charAt(r);
                        return o.trim(e)
                    }

                    function A(t) {
                        return t = T(t = x(t = _(t = w(t))))
                    }

                    function S(t) {
                        return t = l(t = y(t))
                    }
                    e.whiteList = {
                        a: ["target", "href", "title"],
                        abbr: ["title"],
                        address: [],
                        area: ["shape", "coords", "href", "alt"],
                        article: [],
                        aside: [],
                        audio: ["autoplay", "controls", "crossorigin", "loop", "muted", "preload", "src"],
                        b: [],
                        bdi: ["dir"],
                        bdo: ["dir"],
                        big: [],
                        blockquote: ["cite"],
                        br: [],
                        caption: [],
                        center: [],
                        cite: [],
                        code: [],
                        col: ["align", "valign", "span", "width"],
                        colgroup: ["align", "valign", "span", "width"],
                        dd: [],
                        del: ["datetime"],
                        details: ["open"],
                        div: [],
                        dl: [],
                        dt: [],
                        em: [],
                        figcaption: [],
                        figure: [],
                        font: ["color", "size", "face"],
                        footer: [],
                        h1: [],
                        h2: [],
                        h3: [],
                        h4: [],
                        h5: [],
                        h6: [],
                        header: [],
                        hr: [],
                        i: [],
                        img: ["src", "alt", "title", "width", "height"],
                        ins: ["datetime"],
                        li: [],
                        mark: [],
                        nav: [],
                        ol: [],
                        p: [],
                        pre: [],
                        s: [],
                        section: [],
                        small: [],
                        span: [],
                        sub: [],
                        summary: [],
                        sup: [],
                        strong: [],
                        strike: [],
                        table: ["width", "border", "align", "valign"],
                        tbody: ["align", "valign"],
                        td: ["width", "rowspan", "colspan", "align", "valign"],
                        tfoot: ["align", "valign"],
                        th: ["width", "rowspan", "colspan", "align", "valign"],
                        thead: ["align", "valign"],
                        tr: ["rowspan", "align", "valign"],
                        tt: [],
                        u: [],
                        ul: [],
                        video: ["autoplay", "controls", "crossorigin", "loop", "muted", "playsinline", "poster", "preload", "src", "height", "width"]
                    }, e.getDefaultWhiteList = a, e.onTag = function(t, e, r) {}, e.onIgnoreTag = function(t, e, r) {}, e.onTagAttr = function(t, e, r) {}, e.onIgnoreTagAttr = function(t, e, r) {}, e.safeAttrValue = function(t, e, r, i) {
                        if (r = A(r), "href" === e || "src" === e) {
                            if ("#" === (r = o.trim(r))) return "#";
                            if ("http://" !== r.substr(0, 7) && "https://" !== r.substr(0, 8) && "mailto:" !== r.substr(0, 7) && "tel:" !== r.substr(0, 4) && "data:image/" !== r.substr(0, 11) && "ftp://" !== r.substr(0, 6) && "./" !== r.substr(0, 2) && "../" !== r.substr(0, 3) && "#" !== r[0] && "/" !== r[0]) return ""
                        } else if ("background" === e) {
                            if (m.lastIndex = 0, m.test(r)) return ""
                        } else if ("style" === e) {
                            if (v.lastIndex = 0, v.test(r)) return "";
                            if (b.lastIndex = 0, b.test(r) && (m.lastIndex = 0, m.test(r))) return "";
                            !1 !== i && (r = (i = i || s).process(r))
                        }
                        return r = S(r)
                    }, e.escapeHtml = l, e.escapeQuote = y, e.unescapeQuote = w, e.escapeHtmlEntities = _, e.escapeDangerHtml5Entities = x, e.clearNonPrintableCharacter = T, e.friendlyAttrValue = A, e.escapeAttrValue = S, e.onIgnoreTagStripAll = function() {
                        return ""
                    }, e.StripTagBody = function(t, e) {
                        "function" != typeof e && (e = function() {});
                        var r = !Array.isArray(t),
                            i = [],
                            n = !1;
                        return {
                            onIgnoreTag: function(a, s, l) {
                                if (function(e) {
                                        return !!r || -1 !== o.indexOf(t, e)
                                    }(a)) {
                                    if (l.isClosing) {
                                        var c = "[/removed]",
                                            u = l.position + c.length;
                                        return i.push([!1 !== n ? n : l.position, u]), n = !1, c
                                    }
                                    return n || (n = l.position), "[removed]"
                                }
                                return e(a, s, l)
                            },
                            remove: function(t) {
                                var e = "",
                                    r = 0;
                                return o.forEach(i, (function(i) {
                                    e += t.slice(r, i[0]), r = i[1]
                                })), e += t.slice(r)
                            }
                        }
                    }, e.stripCommentTag = function(t) {
                        for (var e = "", r = 0; r < t.length;) {
                            var i = t.indexOf("\x3c!--", r);
                            if (-1 === i) {
                                e += t.slice(r);
                                break
                            }
                            e += t.slice(r, i);
                            var n = t.indexOf("--\x3e", i);
                            if (-1 === n) break;
                            r = n + 3
                        }
                        return e
                    }, e.stripBlankChar = function(t) {
                        var e = t.split("");
                        return (e = e.filter((function(t) {
                            var e = t.charCodeAt(0);
                            return 127 !== e && (!(e <= 31) || (10 === e || 13 === e))
                        }))).join("")
                    }, e.cssFilter = s, e.getDefaultCSSWhiteList = n
                },
                1357: function(t, e) {
                    function r() {
                        var t = {
                            "align-content": !1,
                            "align-items": !1,
                            "align-self": !1,
                            "alignment-adjust": !1,
                            "alignment-baseline": !1,
                            all: !1,
                            "anchor-point": !1,
                            animation: !1,
                            "animation-delay": !1,
                            "animation-direction": !1,
                            "animation-duration": !1,
                            "animation-fill-mode": !1,
                            "animation-iteration-count": !1,
                            "animation-name": !1,
                            "animation-play-state": !1,
                            "animation-timing-function": !1,
                            azimuth: !1,
                            "backface-visibility": !1,
                            background: !0,
                            "background-attachment": !0,
                            "background-clip": !0,
                            "background-color": !0,
                            "background-image": !0,
                            "background-origin": !0,
                            "background-position": !0,
                            "background-repeat": !0,
                            "background-size": !0,
                            "baseline-shift": !1,
                            binding: !1,
                            bleed: !1,
                            "bookmark-label": !1,
                            "bookmark-level": !1,
                            "bookmark-state": !1,
                            border: !0,
                            "border-bottom": !0,
                            "border-bottom-color": !0,
                            "border-bottom-left-radius": !0,
                            "border-bottom-right-radius": !0,
                            "border-bottom-style": !0,
                            "border-bottom-width": !0,
                            "border-collapse": !0,
                            "border-color": !0,
                            "border-image": !0,
                            "border-image-outset": !0,
                            "border-image-repeat": !0,
                            "border-image-slice": !0,
                            "border-image-source": !0,
                            "border-image-width": !0,
                            "border-left": !0,
                            "border-left-color": !0,
                            "border-left-style": !0,
                            "border-left-width": !0,
                            "border-radius": !0,
                            "border-right": !0,
                            "border-right-color": !0,
                            "border-right-style": !0,
                            "border-right-width": !0,
                            "border-spacing": !0,
                            "border-style": !0,
                            "border-top": !0,
                            "border-top-color": !0,
                            "border-top-left-radius": !0,
                            "border-top-right-radius": !0,
                            "border-top-style": !0,
                            "border-top-width": !0,
                            "border-width": !0,
                            bottom: !1,
                            "box-decoration-break": !0,
                            "box-shadow": !0,
                            "box-sizing": !0,
                            "box-snap": !0,
                            "box-suppress": !0,
                            "break-after": !0,
                            "break-before": !0,
                            "break-inside": !0,
                            "caption-side": !1,
                            chains: !1,
                            clear: !0,
                            clip: !1,
                            "clip-path": !1,
                            "clip-rule": !1,
                            color: !0,
                            "color-interpolation-filters": !0,
                            "column-count": !1,
                            "column-fill": !1,
                            "column-gap": !1,
                            "column-rule": !1,
                            "column-rule-color": !1,
                            "column-rule-style": !1,
                            "column-rule-width": !1,
                            "column-span": !1,
                            "column-width": !1,
                            columns: !1,
                            contain: !1,
                            content: !1,
                            "counter-increment": !1,
                            "counter-reset": !1,
                            "counter-set": !1,
                            crop: !1,
                            cue: !1,
                            "cue-after": !1,
                            "cue-before": !1,
                            cursor: !1,
                            direction: !1,
                            display: !0,
                            "display-inside": !0,
                            "display-list": !0,
                            "display-outside": !0,
                            "dominant-baseline": !1,
                            elevation: !1,
                            "empty-cells": !1,
                            filter: !1,
                            flex: !1,
                            "flex-basis": !1,
                            "flex-direction": !1,
                            "flex-flow": !1,
                            "flex-grow": !1,
                            "flex-shrink": !1,
                            "flex-wrap": !1,
                            float: !1,
                            "float-offset": !1,
                            "flood-color": !1,
                            "flood-opacity": !1,
                            "flow-from": !1,
                            "flow-into": !1,
                            font: !0,
                            "font-family": !0,
                            "font-feature-settings": !0,
                            "font-kerning": !0,
                            "font-language-override": !0,
                            "font-size": !0,
                            "font-size-adjust": !0,
                            "font-stretch": !0,
                            "font-style": !0,
                            "font-synthesis": !0,
                            "font-variant": !0,
                            "font-variant-alternates": !0,
                            "font-variant-caps": !0,
                            "font-variant-east-asian": !0,
                            "font-variant-ligatures": !0,
                            "font-variant-numeric": !0,
                            "font-variant-position": !0,
                            "font-weight": !0,
                            grid: !1,
                            "grid-area": !1,
                            "grid-auto-columns": !1,
                            "grid-auto-flow": !1,
                            "grid-auto-rows": !1,
                            "grid-column": !1,
                            "grid-column-end": !1,
                            "grid-column-start": !1,
                            "grid-row": !1,
                            "grid-row-end": !1,
                            "grid-row-start": !1,
                            "grid-template": !1,
                            "grid-template-areas": !1,
                            "grid-template-columns": !1,
                            "grid-template-rows": !1,
                            "hanging-punctuation": !1,
                            height: !0,
                            hyphens: !1,
                            icon: !1,
                            "image-orientation": !1,
                            "image-resolution": !1,
                            "ime-mode": !1,
                            "initial-letters": !1,
                            "inline-box-align": !1,
                            "justify-content": !1,
                            "justify-items": !1,
                            "justify-self": !1,
                            left: !1,
                            "letter-spacing": !0,
                            "lighting-color": !0,
                            "line-box-contain": !1,
                            "line-break": !1,
                            "line-grid": !1,
                            "line-height": !1,
                            "line-snap": !1,
                            "line-stacking": !1,
                            "line-stacking-ruby": !1,
                            "line-stacking-shift": !1,
                            "line-stacking-strategy": !1,
                            "list-style": !0,
                            "list-style-image": !0,
                            "list-style-position": !0,
                            "list-style-type": !0,
                            margin: !0,
                            "margin-bottom": !0,
                            "margin-left": !0,
                            "margin-right": !0,
                            "margin-top": !0,
                            "marker-offset": !1,
                            "marker-side": !1,
                            marks: !1,
                            mask: !1,
                            "mask-box": !1,
                            "mask-box-outset": !1,
                            "mask-box-repeat": !1,
                            "mask-box-slice": !1,
                            "mask-box-source": !1,
                            "mask-box-width": !1,
                            "mask-clip": !1,
                            "mask-image": !1,
                            "mask-origin": !1,
                            "mask-position": !1,
                            "mask-repeat": !1,
                            "mask-size": !1,
                            "mask-source-type": !1,
                            "mask-type": !1,
                            "max-height": !0,
                            "max-lines": !1,
                            "max-width": !0,
                            "min-height": !0,
                            "min-width": !0,
                            "move-to": !1,
                            "nav-down": !1,
                            "nav-index": !1,
                            "nav-left": !1,
                            "nav-right": !1,
                            "nav-up": !1,
                            "object-fit": !1,
                            "object-position": !1,
                            opacity: !1,
                            order: !1,
                            orphans: !1,
                            outline: !1,
                            "outline-color": !1,
                            "outline-offset": !1,
                            "outline-style": !1,
                            "outline-width": !1,
                            overflow: !1,
                            "overflow-wrap": !1,
                            "overflow-x": !1,
                            "overflow-y": !1,
                            padding: !0,
                            "padding-bottom": !0,
                            "padding-left": !0,
                            "padding-right": !0,
                            "padding-top": !0,
                            page: !1,
                            "page-break-after": !1,
                            "page-break-before": !1,
                            "page-break-inside": !1,
                            "page-policy": !1,
                            pause: !1,
                            "pause-after": !1,
                            "pause-before": !1,
                            perspective: !1,
                            "perspective-origin": !1,
                            pitch: !1,
                            "pitch-range": !1,
                            "play-during": !1,
                            position: !1,
                            "presentation-level": !1,
                            quotes: !1,
                            "region-fragment": !1,
                            resize: !1,
                            rest: !1,
                            "rest-after": !1,
                            "rest-before": !1,
                            richness: !1,
                            right: !1,
                            rotation: !1,
                            "rotation-point": !1,
                            "ruby-align": !1,
                            "ruby-merge": !1,
                            "ruby-position": !1,
                            "shape-image-threshold": !1,
                            "shape-outside": !1,
                            "shape-margin": !1,
                            size: !1,
                            speak: !1,
                            "speak-as": !1,
                            "speak-header": !1,
                            "speak-numeral": !1,
                            "speak-punctuation": !1,
                            "speech-rate": !1,
                            stress: !1,
                            "string-set": !1,
                            "tab-size": !1,
                            "table-layout": !1,
                            "text-align": !0,
                            "text-align-last": !0,
                            "text-combine-upright": !0,
                            "text-decoration": !0,
                            "text-decoration-color": !0,
                            "text-decoration-line": !0,
                            "text-decoration-skip": !0,
                            "text-decoration-style": !0,
                            "text-emphasis": !0,
                            "text-emphasis-color": !0,
                            "text-emphasis-position": !0,
                            "text-emphasis-style": !0,
                            "text-height": !0,
                            "text-indent": !0,
                            "text-justify": !0,
                            "text-orientation": !0,
                            "text-overflow": !0,
                            "text-shadow": !0,
                            "text-space-collapse": !0,
                            "text-transform": !0,
                            "text-underline-position": !0,
                            "text-wrap": !0,
                            top: !1,
                            transform: !1,
                            "transform-origin": !1,
                            "transform-style": !1,
                            transition: !1,
                            "transition-delay": !1,
                            "transition-duration": !1,
                            "transition-property": !1,
                            "transition-timing-function": !1,
                            "unicode-bidi": !1,
                            "vertical-align": !1,
                            visibility: !1,
                            "voice-balance": !1,
                            "voice-duration": !1,
                            "voice-family": !1,
                            "voice-pitch": !1,
                            "voice-range": !1,
                            "voice-rate": !1,
                            "voice-stress": !1,
                            "voice-volume": !1,
                            volume: !1,
                            "white-space": !1,
                            widows: !1,
                            width: !0,
                            "will-change": !1,
                            "word-break": !0,
                            "word-spacing": !0,
                            "word-wrap": !0,
                            "wrap-flow": !1,
                            "wrap-through": !1,
                            "writing-mode": !1,
                            "z-index": !1
                        };
                        return t
                    }
                    var i = /javascript\s*\:/gim;
                    e.whiteList = r(), e.getDefaultWhiteList = r, e.onAttr = function(t, e, r) {}, e.onIgnoreAttr = function(t, e, r) {}, e.safeAttrValue = function(t, e) {
                        return i.test(e) ? "" : e
                    }
                },
                1358: function(t, e) {
                    t.exports = {
                        indexOf: function(t, e) {
                            var r, i;
                            if (Array.prototype.indexOf) return t.indexOf(e);
                            for (r = 0, i = t.length; r < i; r++)
                                if (t[r] === e) return r;
                            return -1
                        },
                        forEach: function(t, e, r) {
                            var i, n;
                            if (Array.prototype.forEach) return t.forEach(e, r);
                            for (i = 0, n = t.length; i < n; i++) e.call(r, t[i], i, t)
                        },
                        trim: function(t) {
                            return String.prototype.trim ? t.trim() : t.replace(/(^\s*)|(\s*$)/g, "")
                        },
                        trimRight: function(t) {
                            return String.prototype.trimRight ? t.trimRight() : t.replace(/(\s*$)/g, "")
                        }
                    }
                },
                1359: function(t, e, r) {
                    var i = r(1149);

                    function n(t) {
                        var e = i.spaceIndex(t);
                        if (-1 === e) var r = t.slice(1, -1);
                        else r = t.slice(1, e + 1);
                        return "/" === (r = i.trim(r).toLowerCase()).slice(0, 1) && (r = r.slice(1)), "/" === r.slice(-1) && (r = r.slice(0, -1)), r
                    }

                    function o(t) {
                        return "</" === t.slice(0, 2)
                    }
                    var a = /[^a-zA-Z0-9_:\.\-]/gim;

                    function s(t, e) {
                        for (; e < t.length; e++) {
                            var r = t[e];
                            if (" " !== r) return "=" === r ? e : -1
                        }
                    }

                    function l(t, e) {
                        for (; e > 0; e--) {
                            var r = t[e];
                            if (" " !== r) return "=" === r ? e : -1
                        }
                    }

                    function c(t) {
                        return function(t) {
                            return '"' === t[0] && '"' === t[t.length - 1] || "'" === t[0] && "'" === t[t.length - 1]
                        }(t) ? t.substr(1, t.length - 2) : t
                    }
                    e.parseTag = function(t, e, r) {
                        "use strict";
                        var i = "",
                            a = 0,
                            s = !1,
                            l = !1,
                            c = 0,
                            u = t.length,
                            d = "",
                            f = "";
                        t: for (c = 0; c < u; c++) {
                            var g = t.charAt(c);
                            if (!1 === s) {
                                if ("<" === g) {
                                    s = c;
                                    continue
                                }
                            } else if (!1 === l) {
                                if ("<" === g) {
                                    i += r(t.slice(a, c)), s = c, a = c;
                                    continue
                                }
                                if (">" === g) {
                                    i += r(t.slice(a, s)), d = n(f = t.slice(s, c + 1)), i += e(s, i.length, d, f, o(f)), a = c + 1, s = !1;
                                    continue
                                }
                                if ('"' === g || "'" === g)
                                    for (var p = 1, h = t.charAt(c - p);
                                        "" === h.trim() || "=" === h;) {
                                        if ("=" === h) {
                                            l = g;
                                            continue t
                                        }
                                        h = t.charAt(c - ++p)
                                    }
                            } else if (g === l) {
                                l = !1;
                                continue
                            }
                        }
                        return a < t.length && (i += r(t.substr(a))), i
                    }, e.parseAttr = function(t, e) {
                        "use strict";
                        var r = 0,
                            n = [],
                            o = !1,
                            u = t.length;

                        function d(t, r) {
                            if (!((t = (t = i.trim(t)).replace(a, "").toLowerCase()).length < 1)) {
                                var o = e(t, r || "");
                                o && n.push(o)
                            }
                        }
                        for (var f = 0; f < u; f++) {
                            var g, p = t.charAt(f);
                            if (!1 !== o || "=" !== p)
                                if (!1 === o || f !== r || '"' !== p && "'" !== p || "=" !== t.charAt(f - 1))
                                    if (/\s|\n|\t/.test(p)) {
                                        if (t = t.replace(/\s|\n|\t/g, " "), !1 === o) {
                                            if (-1 === (g = s(t, f))) {
                                                d(i.trim(t.slice(r, f))), o = !1, r = f + 1;
                                                continue
                                            }
                                            f = g - 1;
                                            continue
                                        }
                                        if (-1 === (g = l(t, f - 1))) {
                                            d(o, c(i.trim(t.slice(r, f)))), o = !1, r = f + 1;
                                            continue
                                        }
                                    } else;
                            else {
                                if (-1 === (g = t.indexOf(p, f + 1))) break;
                                d(o, i.trim(t.slice(r + 1, g))), o = !1, r = (f = g) + 1
                            } else o = t.slice(r, f), r = f + 1
                        }
                        return r < t.length && (!1 === o ? d(t.slice(r)) : d(o, c(i.trim(t.slice(r))))), i.trim(n.join(" "))
                    }
                },
                1415: function(t, e, r) {
                    "use strict";
                    r.d(e, "a", (function() {
                        return i
                    })), r.d(e, "b", (function() {
                        return n
                    }));
                    const i = {
                            columns: "columns"
                        },
                        n = "$w.ColumnStrip"
                },
                15: function(e, r) {
                    e.exports = t
                },
                1643: function(t, e, r) {
                    var i = r(1357),
                        n = r(1644);
                    r(1358);

                    function o(t) {
                        return null == t
                    }

                    function a(t) {
                        (t = function(t) {
                            var e = {};
                            for (var r in t) e[r] = t[r];
                            return e
                        }(t || {})).whiteList = t.whiteList || i.whiteList, t.onAttr = t.onAttr || i.onAttr, t.onIgnoreAttr = t.onIgnoreAttr || i.onIgnoreAttr, t.safeAttrValue = t.safeAttrValue || i.safeAttrValue, this.options = t
                    }
                    a.prototype.process = function(t) {
                        if (!(t = (t = t || "").toString())) return "";
                        var e = this.options,
                            r = e.whiteList,
                            i = e.onAttr,
                            a = e.onIgnoreAttr,
                            s = e.safeAttrValue;
                        return n(t, (function(t, e, n, l, c) {
                            var u = r[n],
                                d = !1;
                            if (!0 === u ? d = u : "function" == typeof u ? d = u(l) : u instanceof RegExp && (d = u.test(l)), !0 !== d && (d = !1), l = s(n, l)) {
                                var f, g = {
                                    position: e,
                                    sourcePosition: t,
                                    source: c,
                                    isWhite: d
                                };
                                return d ? o(f = i(n, l, g)) ? n + ":" + l : f : o(f = a(n, l, g)) ? void 0 : f
                            }
                        }))
                    }, t.exports = a
                },
                1644: function(t, e, r) {
                    var i = r(1358);
                    t.exports = function(t, e) {
                        ";" !== (t = i.trimRight(t))[t.length - 1] && (t += ";");
                        var r = t.length,
                            n = !1,
                            o = 0,
                            a = 0,
                            s = "";

                        function l() {
                            if (!n) {
                                var r = i.trim(t.slice(o, a)),
                                    l = r.indexOf(":");
                                if (-1 !== l) {
                                    var c = i.trim(r.slice(0, l)),
                                        u = i.trim(r.slice(l + 1));
                                    if (c) {
                                        var d = e(o, s.length, c, u, r);
                                        d && (s += d + "; ")
                                    }
                                }
                            }
                            o = a + 1
                        }
                        for (; a < r; a++) {
                            var c = t[a];
                            if ("/" === c && "*" === t[a + 1]) {
                                var u = t.indexOf("*/", a + 2);
                                if (-1 === u) break;
                                o = (a = u + 1) + 1, n = !1
                            } else "(" === c ? n = !0 : ")" === c ? n = !1 : ";" === c ? n || l() : "\n" === c && l()
                        }
                        return i.trim(s)
                    }
                },
                1645: function(t, e, r) {
                    var i = r(1148).FilterCSS,
                        n = r(1356),
                        o = r(1359),
                        a = o.parseTag,
                        s = o.parseAttr,
                        l = r(1149);

                    function c(t) {
                        return null == t
                    }

                    function u(t) {
                        (t = function(t) {
                            var e = {};
                            for (var r in t) e[r] = t[r];
                            return e
                        }(t || {})).stripIgnoreTag && (t.onIgnoreTag && console.error('Notes: cannot use these two options "stripIgnoreTag" and "onIgnoreTag" at the same time'), t.onIgnoreTag = n.onIgnoreTagStripAll), t.whiteList = t.whiteList || n.whiteList, t.onTag = t.onTag || n.onTag, t.onTagAttr = t.onTagAttr || n.onTagAttr, t.onIgnoreTag = t.onIgnoreTag || n.onIgnoreTag, t.onIgnoreTagAttr = t.onIgnoreTagAttr || n.onIgnoreTagAttr, t.safeAttrValue = t.safeAttrValue || n.safeAttrValue, t.escapeHtml = t.escapeHtml || n.escapeHtml, this.options = t, !1 === t.css ? this.cssFilter = !1 : (t.css = t.css || {}, this.cssFilter = new i(t.css))
                    }
                    u.prototype.process = function(t) {
                        if (!(t = (t = t || "").toString())) return "";
                        var e = this.options,
                            r = e.whiteList,
                            i = e.onTag,
                            o = e.onIgnoreTag,
                            u = e.onTagAttr,
                            d = e.onIgnoreTagAttr,
                            f = e.safeAttrValue,
                            g = e.escapeHtml,
                            p = this.cssFilter;
                        e.stripBlankChar && (t = n.stripBlankChar(t)), e.allowCommentTag || (t = n.stripCommentTag(t));
                        var h = !1;
                        if (e.stripIgnoreTagBody) {
                            h = n.StripTagBody(e.stripIgnoreTagBody, o);
                            o = h.onIgnoreTag
                        }
                        var m = a(t, (function(t, e, n, a, h) {
                            var m, v = {
                                sourcePosition: t,
                                position: e,
                                isClosing: h,
                                isWhite: r.hasOwnProperty(n)
                            };
                            if (!c(m = i(n, a, v))) return m;
                            if (v.isWhite) {
                                if (v.isClosing) return "</" + n + ">";
                                var b = function(t) {
                                        var e = l.spaceIndex(t);
                                        if (-1 === e) return {
                                            html: "",
                                            closing: "/" === t[t.length - 2]
                                        };
                                        var r = "/" === (t = l.trim(t.slice(e + 1, -1)))[t.length - 1];
                                        return r && (t = l.trim(t.slice(0, -1))), {
                                            html: t,
                                            closing: r
                                        }
                                    }(a),
                                    y = r[n],
                                    w = s(b.html, (function(t, e) {
                                        var r, i = -1 !== l.indexOf(y, t);
                                        return c(r = u(n, t, e, i)) ? i ? (e = f(n, t, e, p)) ? t + '="' + e + '"' : t : c(r = d(n, t, e, i)) ? void 0 : r : r
                                    }));
                                a = "<" + n;
                                return w && (a += " " + w), b.closing && (a += " /"), a += ">"
                            }
                            return c(m = o(n, a, v)) ? g(a) : m
                        }), g);
                        return h && (m = h.remove(m)), m
                    }, t.exports = u
                },
                165: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.createEmptyInputValidator = e.createInputValidator = void 0;
                    const i = r(58),
                        n = r(75);
                    e.createInputValidator = (t, e) => {
                        const r = [];
                        return {
                            onValidate: t => r.push(t),
                            validate: ({
                                viewerSdkAPI: o,
                                showValidityIndication: a
                            }) => {
                                const {
                                    props: s,
                                    metaData: {
                                        isRepeaterTemplate: l
                                    }
                                } = o;
                                if (l) return;
                                const c = t(s, o);
                                let u = c;
                                const d = i.checkCustomValidity(n.getCustomValidator(o), s, e);
                                d && (u = i.addCustomValidityToValidationData(c, d)), r.forEach(t => t({
                                    viewerSdkAPI: o,
                                    showValidityIndication: a,
                                    validationDataResult: u
                                }))
                            }
                        }
                    };
                    e.createEmptyInputValidator = () => ({
                        onValidate: t => {},
                        validate: t => {}
                    })
                },
                166: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    })
                },
                167: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.composeSanitizers = e.normalizePrecision = e.validFloatingPointNumber = e.removeLeadingAndTrailingWhitespace = e.forceMaxLength = e.removeLineBreaks = e.emptyStringIfNotString = e.numberToString = void 0;
                    const i = r(44),
                        n = /(\r\n|\n|\r)/gm,
                        o = /^-?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?$/;
                    e.numberToString = t => i.assert.isNumber(t) && isFinite(t) ? t.toString() : t;
                    e.emptyStringIfNotString = t => i.assert.isString(t) ? t : "";
                    e.removeLineBreaks = t => t.replace(n, "");
                    e.forceMaxLength = t => e => t ? e.substr(0, t) : e;
                    e.removeLeadingAndTrailingWhitespace = t => t.trim();
                    e.validFloatingPointNumber = t => o.test(t) ? t : "";
                    e.normalizePrecision = t => e => {
                        if (!e || !e.length || !t) return e;
                        const r = Number((Math.log(1 / t) / Math.log(10)).toFixed());
                        return Number(e).toFixed(r)
                    };
                    e.composeSanitizers = t => e => t.reduce((t, e) => e(t), e)
                },
                168: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(169), e)
                },
                169: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__setModuleDefault || (Object.create ? function(t, e) {
                            Object.defineProperty(t, "default", {
                                enumerable: !0,
                                value: e
                            })
                        } : function(t, e) {
                            t.default = e
                        }),
                        o = this && this.__importStar || function(t) {
                            if (t && t.__esModule) return t;
                            var e = {};
                            if (null != t)
                                for (var r in t) "default" !== r && Object.prototype.hasOwnProperty.call(t, r) && i(e, t, r);
                            return n(e, t), e
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.FallbackCorvidModel = void 0, e.FallbackCorvidModel = {
                        componentType: "Fallback",
                        loadSDK: () => Promise.resolve().then(() => o(r(170)))
                    }, e.default = e.FallbackCorvidModel
                },
                170: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.sdk = void 0;
                    const i = r(312),
                        n = r(112),
                        o = i.createElementPropsSDKFactory();
                    e.sdk = n.composeSDKFactories(o), e.default = e.sdk
                },
                171: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.isFallbackSvg = e.resolveAndFetchSvg = e.fetchSvg = e.resolveSvg = e.createSvgWixMediaUrl = e.SVG_TYPE_URL = e.SVG_TYPE_WIX_MEDIA = e.SVG_TYPE_INLINE = e.SVG_FALLBACK_CONTENT = void 0;
                    const i = r(44);
                    e.SVG_FALLBACK_CONTENT = "<svg data-failed />", e.SVG_TYPE_INLINE = "inline", e.SVG_TYPE_WIX_MEDIA = "wixMedia", e.SVG_TYPE_URL = "url";
                    const n = /^wix:vector:\/\/v1\//,
                        o = /^wix:vector:\/\/v1\/[0-9|a-z|_]+.svg/;
                    e.createSvgWixMediaUrl = (t, e) => `wix:vector://v1/${t}/${e?encodeURIComponent(e):""}`;
                    const a = (t, e) => {
                        const r = ((t, e) => {
                            const r = new RegExp(e + "=(\"|')?([-\\w\\s,]+)\\1");
                            return t.match(r)
                        })(t, e);
                        return r ? r[2] : null
                    };
                    e.resolveSvg = (t, r) => {
                        if (i.assert.isWixSVGShape(t)) return ((t, r) => {
                            const [i] = t.replace(n, "").split("/"), o = (t => {
                                const [, e, r, i] = t.replace(/^.*\//, "").split("."), n = "v1" === e ? 1 : 2;
                                return r.replace(/svg_/i, "") + (1 === n ? "_svgshape.v1." + i : "") + ".svg"
                            })(i);
                            return {
                                type: e.SVG_TYPE_WIX_MEDIA,
                                data: `${r}/${o}`
                            }
                        })(t, r);
                        const a = (t => {
                            const [e] = o.exec(t) || [];
                            return e
                        })(t);
                        if (a) {
                            const t = a.replace(n, "");
                            return {
                                type: e.SVG_TYPE_WIX_MEDIA,
                                data: `${r}${t}`
                            }
                        }
                        return i.assert.isInlineSvg(t) ? {
                            type: e.SVG_TYPE_INLINE,
                            data: t
                        } : {
                            type: e.SVG_TYPE_URL,
                            data: t
                        }
                    };
                    e.fetchSvg = async t => {
                        try {
                            const e = await fetch(t);
                            if (e.ok) return e.text()
                        } catch (t) {}
                        return e.SVG_FALLBACK_CONTENT
                    };
                    const s = async(t, r) => {
                        const i = (t => {
                            const e = a(t, "width"),
                                r = a(t, "height");
                            return a(t, "viewBox") || e && r
                        })(t) ? t : t.replace("<svg", '<svg width="300" height="150"');
                        try {
                            const {
                                svg: t
                            } = await r(i);
                            return t || e.SVG_FALLBACK_CONTENT
                        } catch (t) {
                            return e.SVG_FALLBACK_CONTENT
                        }
                    };
                    e.resolveAndFetchSvg = async(t, r, i) => {
                        const {
                            type: n,
                            data: o
                        } = e.resolveSvg(t, r);
                        if (n === e.SVG_TYPE_INLINE) return s(o, i);
                        let a = await e.fetchSvg(o);
                        return e.isFallbackSvg(a) || n === e.SVG_TYPE_WIX_MEDIA || (a = await s(a, i)), a
                    };
                    e.isFallbackSvg = t => t === e.SVG_FALLBACK_CONTENT
                },
                172: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(173), e)
                },
                173: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.TimeZoneError = e.isValidDate = e.TimeZone = e.DatePickerDate = void 0;
                    const i = r(59);
                    e.DatePickerDate = class {
                        constructor(t) {
                            switch (t.type) {
                                case "Specific":
                                    this.year = t.year, this.month = t.month, this.day = t.day;
                                    break;
                                case "Date":
                                    const e = "Local" === t.timeZone ? t.date : new Date(new n(t.timeZone).retrieveDateString(t.date));
                                    this.year = e.getFullYear(), this.month = e.getMonth() + 1, this.day = e.getDate();
                                    break;
                                case "Now":
                                default:
                                    let r;
                                    r = "Local" !== t.timeZone ? new Date(new n(t.timeZone).retrieveDateString(new Date(Date.now()))) : new Date(Date.now()), this.year = r.getFullYear(), this.month = r.getMonth() + 1, this.day = r.getDate()
                            }
                        }
                        getYear() {
                            return this.year
                        }
                        getMonth() {
                            return this.month
                        }
                        getDay() {
                            return this.day
                        }
                        getAsDate(t) {
                            return new Date("Local" === t ? `${this.year}/${this.month}/${this.day} 00:00:00` : new n(t).format({
                                year: this.year,
                                month: this.month,
                                day: this.day
                            }))
                        }
                        eq(t) {
                            return 0 === this.equality(t)
                        }
                        gt(t) {
                            return this.equality(t) > 0
                        }
                        lt(t) {
                            return this.equality(t) < 0
                        }
                        equality(t) {
                            return this.year - t.year != 0 ? this.year - t.year : this.month - t.month != 0 ? this.month - t.month : this.day - t.day
                        }
                    };
                    class n {
                        constructor(t) {
                            if (!n.isTimeZoneValid(t)) throw new o;
                            this.timeZone = t
                        }
                        static isTimeZoneValid(t) {
                            try {
                                return new Intl.DateTimeFormat("en-US", {
                                    timeZone: t
                                }), !0
                            } catch (t) {
                                return !1
                            }
                        }
                        format({
                            year: t,
                            month: e,
                            day: r,
                            time: i
                        }) {
                            const n = i || "00:00:00";
                            return `${t}/${e}/${r} ${i||"00:00:00"} ${this.calculateGMT({year:t,month:e,day:r,time:n})}`
                        }
                        retrieveDateString(t) {
                            return new Intl.DateTimeFormat("en-US", {
                                timeZone: this.timeZone
                            }).format(t)
                        }
                        parseGMT(t) {
                            const e = (t, e) => new Intl.DateTimeFormat("en-US", {
                                    timeZone: e,
                                    year: "2-digit",
                                    month: "2-digit",
                                    day: "2-digit",
                                    hour: "2-digit",
                                    minute: "2-digit",
                                    second: "2-digit",
                                    hour12: !0
                                }).format(t),
                                r = new Date(e(t, "UTC") + " UTC"),
                                i = (new Date(e(t, this.timeZone) + " UTC").getTime() - r.getTime()) / 36e5,
                                n = Math.floor(i) !== i ? `${Math.floor(i)}:${60*(i-Math.floor(i))}` : "" + i;
                            return "GMT" + (i < 0 ? "" + n : "+" + n)
                        }
                        getDayAtTimeDate(t, e) {
                            return new Date(`${this.retrieveDateString(t)} ${e} ${this.parseGMT(t)}`)
                        }
                        calculateGMT({
                            year: t,
                            month: e,
                            day: r,
                            time: n
                        }) {
                            let o = new Date(`${t}/${e}/${r}`);
                            o.setDate(o.getDate() - 2), o = this.getDayAtTimeDate(o, n);
                            for (let n = 0; n < 4 && this.retrieveDateString(o) !== `${e}/${r}/${t}`; n++) o = i.addADayToDate(o);
                            const a = this.parseGMT(o);
                            return a || ""
                        }
                        toString() {
                            return this.timeZone
                        }
                    }
                    e.TimeZone = n;
                    e.isValidDate = t => t instanceof Date && !isNaN(t.getTime());
                    class o extends Error {
                        constructor(t) {
                            super("Bad time zone" + (t ? ": " + t : ""))
                        }
                    }
                    e.TimeZoneError = o
                },
                174: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.millisInADay = void 0, e.millisInADay = 864e5
                },
                175: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.subtractADayFromDate = e.addADayToDate = e.getMonthBoundaries = void 0;
                    const i = r(59);
                    e.getMonthBoundaries = ({
                        year: t,
                        month: e,
                        timeZone: r
                    }) => ({
                        startDate: new i.DatePickerDate({
                            type: "Specific",
                            year: t,
                            month: e,
                            day: 1
                        }).getAsDate(r),
                        endDate: new Date(new i.DatePickerDate({
                            type: "Specific",
                            year: 12 === e ? t + 1 : t,
                            month: 12 === e ? 1 : e + 1,
                            day: 1
                        }).getAsDate(r).getTime() - 1)
                    });
                    e.addADayToDate = t => new Date(t.getTime() + i.millisInADay);
                    e.subtractADayFromDate = t => new Date(t.getTime() - i.millisInADay)
                },
                177: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.createComponentSDKModel = void 0, e.createComponentSDKModel = function(t) {
                        return {
                            factory: t
                        }
                    }
                },
                178: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.createAutoCompleteComponentModel = void 0;
                    e.createAutoCompleteComponentModel = t => ({
                        definition: t
                    })
                },
                313: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(177), e), n(r(178), e)
                },
                324: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.UnsupportedLinkTypeError = e.NilAssignmentError = void 0;
                    const i = r(81);
                    class n extends Error {
                        constructor(t) {
                            const e = i.messages.nilAssignmentMessage(t);
                            super(e), this.name = "NilAssignmentError", this.message = e
                        }
                    }
                    e.NilAssignmentError = n;
                    class o extends Error {
                        constructor(t) {
                            const e = i.messages.unsupportedLinkType(t);
                            super(e), this.name = "UnsupportedLinkTypeError", this.message = e
                        }
                    }
                    e.UnsupportedLinkTypeError = o
                },
                325: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(165), e), n(r(166), e), n(r(167), e), n(r(75), e), n(r(58), e)
                },
                4231: function(t, e, r) {
                    "use strict";
                    r.r(e), r.d(e, "components", (function() {
                        return h
                    })), r.d(e, "version", (function() {
                        return m
                    }));
                    var i = r(3851),
                        n = r(3861),
                        o = r(4055),
                        a = r(4056),
                        s = r(1807),
                        l = r(3882),
                        c = r(3889),
                        u = r(1361),
                        d = r(3902),
                        f = r(3915),
                        g = r(4044),
                        p = r(3916);
                    const h = {
                            StylableButton: {
                                sdk: i.a
                            },
                            Anchor: {
                                sdk: n.a
                            },
                            FooterContainer: {
                                sdk: o.a
                            },
                            HeaderContainer: {
                                sdk: a.a
                            },
                            MediaContainer: {
                                sdk: s.a
                            },
                            MenuContainer: {
                                sdk: l.a
                            },
                            PageBackground: {
                                sdk: c.a
                            },
                            SiteButton: {
                                sdk: u.a
                            },
                            StripColumnsContainer: {
                                sdk: d.a
                            },
                            WPhoto: {
                                sdk: f.a
                            },
                            WRichText: {
                                sdk: g.a
                            },
                            Page: {
                                sdk: p.a
                            }
                        },
                        m = "1.0.0"
                },
                58: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.composeValidators = e.checkCustomValidity = e.addErrorToValidationDataAndKeepHtmlMessage = e.addErrorToValidationDataAndKeepMessage = e.addCustomValidityToValidationData = e.addErrorToValidationData = e.getCustomValidityMessage = e.getValidationMessage = e.INITIAL_VALIDATION_DATA = void 0;
                    const i = r(44),
                        n = {
                            valueMissing: "value missing",
                            patternMismatch: "pattern mismatch",
                            rangeOverflow: "range overflow",
                            rangeUnderflow: "range underflow",
                            stepMismatch: "step mismatch",
                            typeMismatch: "type mismatch",
                            fileNotUploaded: "file not uploaded",
                            fileTypeNotAllowed: t => t + " files are not supported.",
                            fileSizeExceedsLimit: t => `This file is too big. Select a smaller file (${t} max).`,
                            tooLong: "too long",
                            tooShort: "too short",
                            exceedsFilesLimit: "number of files selected exceeds the limit",
                            invalidTime: "invalid time",
                            invalidDate: "invalid date"
                        };
                    e.INITIAL_VALIDATION_DATA = {
                        type: "General",
                        validity: {
                            badInput: !1,
                            customError: !1,
                            fileNotUploaded: !1,
                            fileTypeNotAllowed: !1,
                            fileSizeExceedsLimit: !1,
                            patternMismatch: !1,
                            rangeOverflow: !1,
                            rangeUnderflow: !1,
                            stepMismatch: !1,
                            tooLong: !1,
                            tooShort: !1,
                            typeMismatch: !1,
                            valueMissing: !1,
                            exceedsFilesLimit: !1,
                            valid: !0,
                            invalidTime: !1,
                            invalidDate: !1
                        },
                        validationMessage: "",
                        htmlValidationMessageOverride: {
                            key: ""
                        }
                    };
                    e.getValidationMessage = (t, e) => {
                        const r = n[t];
                        return i.assert.isString(r) ? r : r(e)
                    };
                    e.getCustomValidityMessage = t => !!t.validity.customError ? t.validationMessage : "";
                    e.addErrorToValidationData = (t, e, r) => Object.assign(Object.assign({}, t), {
                        validity: Object.assign(Object.assign({}, t.validity), {
                            [e]: !0, valid: !1
                        }),
                        validationMessage: r
                    });
                    e.addCustomValidityToValidationData = (t, r) => e.addErrorToValidationData(t, "customError", r || "");
                    e.addErrorToValidationDataAndKeepMessage = (t, r, i) => {
                        const n = t.validationMessage || i || e.getValidationMessage(r);
                        return e.addErrorToValidationData(t, r, n)
                    };
                    e.addErrorToValidationDataAndKeepHtmlMessage = (t, r, i) => {
                        const n = t.htmlValidationMessageOverride.key ? t.htmlValidationMessageOverride : i;
                        return Object.assign(Object.assign({}, e.addErrorToValidationDataAndKeepMessage(t, r)), {
                            htmlValidationMessageOverride: n
                        })
                    };
                    e.checkCustomValidity = (t, e, r) => {
                        let i = "";
                        const n = t => {
                                i = t
                            },
                            o = r ? r(e) : e.value;
                        return t && t(o, n), i
                    };
                    e.composeValidators = t => (r, i) => t.reduce((t, e) => e(r, t, i), e.INITIAL_VALIDATION_DATA)
                },
                59: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(172), e), n(r(174), e), n(r(175), e)
                },
                7: function(t, e, r) {
                    "use strict";
                    var i = this && this.__createBinding || (Object.create ? function(t, e, r, i) {
                            void 0 === i && (i = r), Object.defineProperty(t, i, {
                                enumerable: !0,
                                get: function() {
                                    return e[r]
                                }
                            })
                        } : function(t, e, r, i) {
                            void 0 === i && (i = r), t[i] = e[r]
                        }),
                        n = this && this.__exportStar || function(t, e) {
                            for (var r in t) "default" === r || Object.prototype.hasOwnProperty.call(e, r) || i(e, t, r)
                        };
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), n(r(44), e), n(r(81), e), n(r(112), e), n(r(82), e), n(r(195), e), n(r(323), e), n(r(208), e), n(r(168), e), n(r(311), e), n(r(171), e), n(r(59), e)
                },
                739: function(t, e, r) {
                    "use strict";
                    r.d(e, "a", (function() {
                        return i
                    }));
                    const i = t => /(^https?)|(^data)|(^blob)|(^\/\/)/.test(t)
                },
                747: function(t, e, r) {
                    "use strict";
                    r.d(e, "f", (function() {
                        return i
                    })), r.d(e, "d", (function() {
                        return n
                    })), r.d(e, "c", (function() {
                        return o
                    })), r.d(e, "b", (function() {
                        return a
                    })), r.d(e, "e", (function() {
                        return s
                    })), r.d(e, "a", (function() {
                        return l
                    }));
                    const i = '<span class="wixGuard">&#8203;</span>',
                        n = "<([-A-Za-z0-9_?:]+)((?:\\s+(?:x:)?[-A-Za-z0-9_]+(?:\\s*=\\s*(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>\\s]+))?)*)\\s*(/?)>",
                        o = "</([-A-Za-z0-9_?:]+)[^>]*>",
                        a = "</(h[1-6]|p)[^>]*>",
                        s = "$w.Text",
                        l = {
                            richTextElement: "richTextElement",
                            containerElement: "containerElement",
                            screenReaderPrefixElement: "screenReaderPrefixElement",
                            screenReaderSuffixElement: "screenReaderSuffixElement"
                        }
                },
                75: function(t, e, r) {
                    "use strict";
                    Object.defineProperty(e, "__esModule", {
                        value: !0
                    }), e.setCustomValidator = e.getCustomValidator = e.setValidationData = e.getValidationData = void 0;
                    const i = {
                        validationData: r(58).INITIAL_VALIDATION_DATA,
                        customValidators: [() => {}]
                    };
                    e.getValidationData = ({
                        createSdkState: t
                    }) => {
                        const [e] = t(i, "validation");
                        return e.validationData
                    };
                    e.setValidationData = ({
                        createSdkState: t
                    }, e) => {
                        const [, r] = t(i, "validation");
                        r({
                            validationData: e
                        })
                    };
                    e.getCustomValidator = ({
                        createSdkState: t
                    }) => {
                        const [{
                            customValidators: e
                        }] = t(i, "validation");
                        return (t, r) => {
                            let i = !1;
                            const n = t => {
                                i = !0, r(t)
                            };
                            for (let r = 0; r < e.length && !i; r++) e[r](t, n)
                        }
                    };
                    e.setCustomValidator = ({
                        createSdkState: t
                    }, e, r = !0) => {
                        const [{
                            customValidators: n
                        }, o] = t(i, "validation");
                        o(r ? {
                            customValidators: [e]
                        } : {
                            customValidators: [...n, e]
                        })
                    }
                },
                762: function(t, e, r) {
                    var i = r(1356),
                        n = r(1359),
                        o = r(1645);

                    function a(t, e) {
                        return new o(e).process(t)
                    }
                    for (var s in (e = t.exports = a).filterXSS = a, e.FilterXSS = o, i) e[s] = i[s];
                    for (var s in n) e[s] = n[s];
                    "undefined" != typeof window && (window.filterXSS = t.exports), "undefined" != typeof self && "undefined" != typeof DedicatedWorkerGlobalScope && self instanceof DedicatedWorkerGlobalScope && (self.filterXSS = t.exports)
                }
            })
        }));
        //# sourceMappingURL=https://static.parastorage.com/services/editor-elements/dist/rb_wixui.corvid_bootstrap.4aee34a9.bundle.min.js.map
    }
    //# sourceMappingURL=https://static.parastorage.com/services/editor-elements/dist/rb_wixui.corvid~bootstrap.9510a386.chunk.min.js.map
    //# sourceURL=webpack-internal://
                                    

#2 JavaScript::Eval (size: 4, repeated: 1) - SHA256: 3076d9cd0f3fdf6edb079625ec948d4c4584d19d7577f221becbfc674ac21151

                                        16 / 9
                                    

#3 JavaScript::Eval (size: 90, repeated: 1) - SHA256: 3cd43d86dbeebf58e30163f3ef7c74c46e2fe76a90d971094e18ef0f07de2883

                                        workaround.getRequireFunction = () => typeof require !== 'undefined' ? require : undefined
                                    

#4 JavaScript::Eval (size: 358404, repeated: 1) - SHA256: 16610491025547620636f757f24ed21636be3257ca110b17712f345591d6b764

                                        ! function(e, t) {
    "object" == typeof exports && "object" == typeof module ? module.exports = t(require("lodash")) : "function" == typeof define && define.amd ? define(["lodash"], t) : "object" == typeof exports ? exports.viewerScript = t(require("lodash")) : e.viewerScript = t(e._)
}(self, (function(__WEBPACK_EXTERNAL_MODULE__9__) {
    return function(e) {
        var t = {};

        function i(r) {
            if (t[r]) return t[r].exports;
            var o = t[r] = {
                i: r,
                l: !1,
                exports: {}
            };
            return e[r].call(o.exports, o, o.exports, i), o.l = !0, o.exports
        }
        return i.m = e, i.c = t, i.d = function(e, t, r) {
            i.o(e, t) || Object.defineProperty(e, t, {
                enumerable: !0,
                get: r
            })
        }, i.r = function(e) {
            "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
                value: "Module"
            }), Object.defineProperty(e, "__esModule", {
                value: !0
            })
        }, i.t = function(e, t) {
            if (1 & t && (e = i(e)), 8 & t) return e;
            if (4 & t && "object" == typeof e && e && e.__esModule) return e;
            var r = Object.create(null);
            if (i.r(r), Object.defineProperty(r, "default", {
                    enumerable: !0,
                    value: e
                }), 2 & t && "string" != typeof e)
                for (var o in e) i.d(r, o, function(t) {
                    return e[t]
                }.bind(null, o));
            return r
        }, i.n = function(e) {
            var t = e && e.__esModule ? function() {
                return e.default
            } : function() {
                return e
            };
            return i.d(t, "a", t), t
        }, i.o = function(e, t) {
            return Object.prototype.hasOwnProperty.call(e, t)
        }, i.p = "https://static.parastorage.com/services/pro-gallery-santa-wrapper/c237b2a1c1307e1ec9c0b6dc9b7c6587160ab1f51cf4ca2541732b8a/", i(i.s = 62)
    }([function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return r
        })), i.d(t, "d", (function() {
            return o
        })), i.d(t, "b", (function() {
            return a
        })), i.d(t, "c", (function() {
            return n
        })), i.d(t, "e", (function() {
            return s
        }));
        var r = function() {
            return (r = Object.assign || function(e) {
                for (var t, i = 1, r = arguments.length; i < r; i++)
                    for (var o in t = arguments[i]) Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
                return e
            }).apply(this, arguments)
        };

        function o(e, t) {
            var i = {};
            for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (i[r] = e[r]);
            if (null != e && "function" == typeof Object.getOwnPropertySymbols) {
                var o = 0;
                for (r = Object.getOwnPropertySymbols(e); o < r.length; o++) t.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[o]) && (i[r[o]] = e[r[o]])
            }
            return i
        }

        function a(e, t, i, r) {
            return new(i || (i = Promise))((function(o, a) {
                function n(e) {
                    try {
                        l(r.next(e))
                    } catch (e) {
                        a(e)
                    }
                }

                function s(e) {
                    try {
                        l(r.throw(e))
                    } catch (e) {
                        a(e)
                    }
                }

                function l(e) {
                    var t;
                    e.done ? o(e.value) : (t = e.value, t instanceof i ? t : new i((function(e) {
                        e(t)
                    }))).then(n, s)
                }
                l((r = r.apply(e, t || [])).next())
            }))
        }

        function n(e, t) {
            var i, r, o, a, n = {
                label: 0,
                sent: function() {
                    if (1 & o[0]) throw o[1];
                    return o[1]
                },
                trys: [],
                ops: []
            };
            return a = {
                next: s(0),
                throw: s(1),
                return: s(2)
            }, "function" == typeof Symbol && (a[Symbol.iterator] = function() {
                return this
            }), a;

            function s(a) {
                return function(s) {
                    return function(a) {
                        if (i) throw new TypeError("Generator is already executing.");
                        for (; n;) try {
                            if (i = 1, r && (o = 2 & a[0] ? r.return : a[0] ? r.throw || ((o = r.return) && o.call(r), 0) : r.next) && !(o = o.call(r, a[1])).done) return o;
                            switch (r = 0, o && (a = [2 & a[0], o.value]), a[0]) {
                                case 0:
                                case 1:
                                    o = a;
                                    break;
                                case 4:
                                    return n.label++, {
                                        value: a[1],
                                        done: !1
                                    };
                                case 5:
                                    n.label++, r = a[1], a = [0];
                                    continue;
                                case 7:
                                    a = n.ops.pop(), n.trys.pop();
                                    continue;
                                default:
                                    if (!(o = n.trys, (o = o.length > 0 && o[o.length - 1]) || 6 !== a[0] && 2 !== a[0])) {
                                        n = 0;
                                        continue
                                    }
                                    if (3 === a[0] && (!o || a[1] > o[0] && a[1] < o[3])) {
                                        n.label = a[1];
                                        break
                                    }
                                    if (6 === a[0] && n.label < o[1]) {
                                        n.label = o[1], o = a;
                                        break
                                    }
                                    if (o && n.label < o[2]) {
                                        n.label = o[2], n.ops.push(a);
                                        break
                                    }
                                    o[2] && n.ops.pop(), n.trys.pop();
                                    continue
                            }
                            a = t.call(e, n)
                        } catch (e) {
                            a = [6, e], r = 0
                        } finally {
                            i = o = 0
                        }
                        if (5 & a[0]) throw a[1];
                        return {
                            value: a[0] ? a[1] : void 0,
                            done: !0
                        }
                    }([a, s])
                }
            }
        }
        Object.create;

        function s() {
            for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length;
            var r = Array(e),
                o = 0;
            for (t = 0; t < i; t++)
                for (var a = arguments[t], n = 0, s = a.length; n < s; n++, o++) r[o] = a[n];
            return r
        }
        Object.create
    }, function(e, t, i) {
        "use strict";
        t.a = {
            layoutParams: {
                groups: {
                    density: "layoutParams_groups_density",
                    groupByOrientation: "layoutParams_groups_groupByOrientation",
                    numberOfGroupsPerRow: "layoutParams_groups_numberOfGroupsPerRow",
                    allowedGroupTypes: "layoutParams_groups_allowedGroupTypes",
                    repeatingGroupTypes: "layoutParams_groups_repeatingGroupTypes",
                    groupSize: "layoutParams_groups_groupSize"
                },
                crop: {
                    method: "layoutParams_crop_method",
                    alignment: "layoutParams_crop_alignment",
                    enable: "layoutParams_crop_enable",
                    enableSmartCrop: "layoutParams_crop_enableSmartCrop",
                    cropOnlyFill: "layoutParams_crop_cropOnlyFill",
                    ratios: "layoutParams_crop_ratios"
                },
                structure: {
                    galleryLayout: "layoutParams_structure_galleryLayout",
                    galleryRatio: {
                        value: "layoutParams_structure_galleryRatio_value",
                        includeExternalInfo: "layoutParams_structure_galleryRatio_includeExternalInfo"
                    },
                    enableStreching: "layoutParams_structure_enableStreching",
                    gallerySpacing: "layoutParams_structure_gallerySpacing",
                    itemSpacing: "layoutParams_structure_itemSpacing",
                    scrollDirection: "layoutParams_structure_scrollDirection",
                    numberOfColumns: "layoutParams_structure_numberOfColumns",
                    numberOfGridRows: "layoutParams_structure_numberOfGridRows",
                    responsiveMode: "layoutParams_structure_responsiveMode",
                    columnRatios: "layoutParams_structure_columnRatios",
                    scatter: {
                        randomScatter: "layoutParams_structure_scatter_randomScatter",
                        manualScatter: "layoutParams_structure_scatter_manualScatter"
                    },
                    layoutOrientation: "layoutParams_structure_layoutOrientation",
                    groupsOrder: "layoutParams_structure_groupsOrder"
                },
                thumbnails: {
                    enable: "layoutParams_thumbnails_enable",
                    position: "layoutParams_thumbnails_position",
                    spacing: "layoutParams_thumbnails_spacing",
                    size: "layoutParams_thumbnails_size",
                    alignment: "layoutParams_thumbnails_alignment"
                },
                navigationArrows: {
                    enable: "layoutParams_navigationArrows_enable",
                    size: "layoutParams_navigationArrows_size",
                    padding: "layoutParams_navigationArrows_padding",
                    position: "layoutParams_navigationArrows_position",
                    verticalAlignment: "layoutParams_navigationArrows_verticalAlignment",
                    type: "layoutParams_navigationArrows_type",
                    container: {
                        type: "layoutParams_navigationArrows_container_type",
                        borderRadius: "layoutParams_navigationArrows_container_borderRadius",
                        backgroundColor: "layoutParams_navigationArrows_container_backgroundColor"
                    },
                    mouseCursorContainerMaxWidth: "layoutParams_navigationArrows_mouseCursorContainerMaxWidth"
                },
                info: {
                    sizeUnits: "layoutParams_info_sizeUnits",
                    width: "layoutParams_info_width",
                    height: "layoutParams_info_height",
                    spacing: "layoutParams_info_spacing",
                    layout: "layoutParams_info_layout",
                    border: {
                        width: "layoutParams_info_border_width",
                        color: "layoutParams_info_border_color",
                        radius: "layoutParams_info_border_radius"
                    },
                    placement: "layoutParams_info_placement"
                },
                targetItemSize: {
                    unit: "layoutParams_targetItemSize_unit",
                    value: "layoutParams_targetItemSize_value",
                    minimum: "layoutParams_targetItemSize_minimum"
                }
            },
            behaviourParams: {
                item: {
                    clickAction: "behaviourParams_item_clickAction",
                    video: {
                        speed: "behaviourParams_item_video_speed",
                        volume: "behaviourParams_item_video_volume",
                        loop: "behaviourParams_item_video_loop",
                        playTrigger: "behaviourParams_item_video_playTrigger",
                        enablePlayButton: "behaviourParams_item_video_enablePlayButton",
                        enableControls: "behaviourParams_item_video_enableControls",
                        enablePlaceholder: "behaviourParams_item_video_enablePlaceholder"
                    },
                    overlay: {
                        hoveringBehaviour: "behaviourParams_item_overlay_hoveringBehaviour",
                        hoverAnimation: "behaviourParams_item_overlay_hoverAnimation",
                        position: "behaviourParams_item_overlay_position",
                        size: "behaviourParams_item_overlay_size",
                        sizeUnits: "behaviourParams_item_overlay_sizeUnits",
                        padding: "behaviourParams_item_overlay_padding"
                    },
                    content: {
                        hoverAnimation: "behaviourParams_item_content_hoverAnimation",
                        placementAnimation: "behaviourParams_item_content_placementAnimation",
                        loader: "behaviourParams_item_content_loader",
                        magnificationValue: "behaviourParams_item_content_magnificationValue"
                    },
                    secondaryMedia: {
                        trigger: "behaviourParams_item_secondaryMedia_trigger",
                        behaviour: "behaviourParams_item_secondaryMedia_behaviour"
                    }
                },
                gallery: {
                    layoutDirection: "behaviourParams_gallery_layoutDirection",
                    blockContextMenu: "behaviourParams_gallery_blockContextMenu",
                    scrollAnimation: "behaviourParams_gallery_scrollAnimation",
                    enableIndexingShareLinks: "behaviourParams_gallery_enableIndexingShareLinks",
                    vertical: {
                        loadMore: {
                            enable: "behaviourParams_gallery_vertical_loadMore_enable",
                            amount: "behaviourParams_gallery_vertical_loadMore_amount",
                            text: "behaviourParams_gallery_vertical_loadMore_text"
                        }
                    },
                    horizontal: {
                        enableScrollSnap: "behaviourParams_gallery_horizontal_enableScrollSnap",
                        slideAnimation: "behaviourParams_gallery_horizontal_slideAnimation",
                        slideTransition: "behaviourParams_gallery_horizontal_slideTransition",
                        blockScroll: "behaviourParams_gallery_horizontal_blockScroll",
                        navigationDuration: "behaviourParams_gallery_horizontal_navigationDuration",
                        loop: "behaviourParams_gallery_horizontal_loop",
                        autoSlide: {
                            behaviour: "behaviourParams_gallery_horizontal_autoSlide_behaviour",
                            interval: "behaviourParams_gallery_horizontal_autoSlide_interval",
                            pauseOnHover: "behaviourParams_gallery_horizontal_autoSlide_pauseOnHover",
                            speed: "behaviourParams_gallery_horizontal_autoSlide_speed"
                        },
                        slideshowInfo: {
                            buttonsAlignment: "behaviourParams_gallery_horizontal_slideshowInfo_buttonsAlignment",
                            enableCounter: "behaviourParams_gallery_horizontal_slideshowInfo_enableCounter",
                            enablePlayButton: "behaviourParams_gallery_horizontal_slideshowInfo_enablePlayButton"
                        }
                    }
                }
            },
            stylingParams: {
                arrowsColor: "stylingParams_arrowsColor",
                itemShadowBlur: "stylingParams_itemShadowBlur",
                itemShadowDirection: "stylingParams_itemShadowDirection",
                itemShadowOpacityAndColor: "stylingParams_itemShadowOpacityAndColor",
                itemShadowSize: "stylingParams_itemShadowSize",
                itemEnableShadow: "stylingParams_itemEnableShadow",
                itemBorderRadius: "stylingParams_itemBorderRadius",
                itemBorderWidth: "stylingParams_itemBorderWidth",
                itemResolutionMode: "stylingParams_itemResolutionMode"
            }
        }
    }, function(e, t, i) {
        "use strict";
        var r = i(30),
            o = {
                ITEM_CENTER: "ITEM_CENTER",
                IMAGE_CENTER: "IMAGE_CENTER",
                INFO_CENTER: "INFO_CENTER"
            },
            a = {
                CROP: "fill",
                FIT: "fit",
                MIN: "min",
                MAX: "max"
            },
            n = {
                SIDE_BAR_WIDTH: 430,
                STORE_SIDE_BAR_WIDTH: 560,
                MOBILE_PADDING: 120,
                NO_PADDING: 0
            },
            s = {
                APP_LOADED: "APP_LOADED",
                ITEM_CREATED: "ITEM_CREATED",
                ITEM_LOADED: "ITEM_LOADED",
                GALLERY_CHANGE: "GALLERY_CHANGE",
                ITEM_ACTION_TRIGGERED: "ITEM_ACTION_TRIGGERED",
                CURRENT_ITEM_CHANGED: "CURRENT_ITEM_CHANGED",
                NEED_MORE_ITEMS: "NEED_MORE_ITEMS",
                VIDEO_ENDED: "VIDEO_ENDED",
                VIDEO_ERROR: "VIDEO_ERROR",
                VIDEO_PAUSED: "VIDEO_PAUSED",
                VIDEO_PLAYED: "VIDEO_PLAYED",
                HOVER_SET: "HOVER_SET",
                LOAD_MORE_CLICKED: "LOAD_MORE_CLICKED",
                ITEM_CLICKED: "ITEM_CLICKED",
                THUMBNAIL_CLICKED: "THUMBNAIL_CLICKED",
                ITEM_FOCUSED: "ITEM_FOCUSED",
                ITEM_LOST_FOCUS: "ITEM_LOST_FOCUS",
                GALLERY_SCROLLED: "GALLERY_SCROLLED"
            },
            l = i(25),
            u = i(26),
            c = {
                LEFT: "left",
                RIGHT: "right",
                CENTER: "center"
            },
            h = i(16),
            p = {
                MIDDLE: "MIDDLE",
                TOP: "TOP",
                LEFT: "LEFT",
                RIGHT: "RIGHT",
                BOTTOM: "BOTTOM"
            },
            d = {
                1: "1",
                "2v": "2v",
                "2h": "2h",
                "3r": "3r",
                "3b": "3b",
                "3t": "3t",
                "3l": "3l",
                "3v": "3v",
                "3h": "3h"
            },
            m = i(31),
            g = i(24),
            y = i(32),
            f = {
                COLUMNS: !0,
                ROWS: !1
            },
            b = {
                EXPAND: "expand",
                LINK: "link",
                NOTHING: "nothing",
                FULLSCREEN: "fullscreen",
                MAGNIFY: "magnify"
            },
            S = i(6),
            v = {
                LEFT_TO_RIGHT: !1,
                RIGHT_TO_LEFT: !0
            },
            _ = i(28),
            O = i(33),
            I = {
                PARTIAL: "partial",
                ALL: "all"
            },
            P = {
                EXPAND: "EXPAND",
                FADE: "FADE",
                CAROUSEL: "CAROUSEL",
                CROSSFADE: "CROSSFADE"
            },
            w = i(34),
            E = i(7),
            T = {
                FILL: "fill",
                FIT: "fit",
                FULL: "full",
                VIDEO: "video"
            },
            x = {
                NO_EFFECT: "NO_EFFECT",
                FADE_IN: "FADE_IN",
                GRAYSCALE: "GRAYSCALE",
                SLIDE_UP: "SLIDE_UP",
                EXPAND: "EXPAND",
                SHRINK: "SHRINK",
                ZOOM_OUT: "ZOOM_OUT",
                ONE_COLOR: "ONE_COLOR",
                MAIN_COLOR: "MAIN_COLOR",
                BLUR: "BLUR"
            },
            C = i(17),
            D = i(13),
            A = {
                FACEBOOK: "facebook",
                TWITTER: "twitter",
                PINTEREST: "pinterest",
                EMAIL: "email",
                TUMBLR: "tumblr"
            },
            M = i(35),
            R = {
                BOTTOM: "bottom",
                LEFT: "left",
                TOP: "top",
                RIGHT: "right"
            },
            L = {
                ON_GALLERY: "ON_GALLERY",
                OUTSIDE_GALLERY: "OUTSIDE_GALLERY"
            },
            B = {
                HOVER: "hover",
                AUTO: "auto",
                ON_CLICK: "onClick"
            },
            j = i(21),
            k = i(36),
            N = {
                ease: "cubic-bezier(0.46,0.1,0.25,1)"
            },
            W = {
                LEFT: "LEFT",
                RIGHT: "RIGHT",
                BOTTOM: "BOTTOM",
                TOP: "TOP",
                CENTERED_VERTICALLY: "CENTERED_VERTICALLY",
                CENTERED_HORIZONTALLY: "CENTERED_HORIZONTALLY"
            },
            U = {
                PIXEL: "PIXEL",
                PERCENT: "PERCENT"
            },
            F = {
                INTERVAL: "interval",
                CONTINUOUS: "continuous"
            },
            H = {
                DEFAULT_ARROW: "DEFAULT_ARROW",
                ARROW_2: "ARROW_2",
                ARROW_3: "ARROW_3",
                ARROW_4: "ARROW_4",
                ARROW_5: "ARROW_5",
                ARROW_6: "ARROW_6",
                ARROW_7: "ARROW_7"
            },
            G = {
                NONE: "NONE",
                SHADOW: "SHADOW",
                BOX: "BOX"
            },
            z = {
                FULL: "FULL",
                SCALED_DOWN: "SCALED_DOWN"
            },
            V = {
                OFF: "OFF",
                INTERVAL: "INTERVAL",
                CONTINUOUS: "CONTINUOUS"
            },
            K = {
                OFF: "OFF",
                HOVER: "HOVER"
            },
            q = {
                APPEARS: "APPEARS"
            };
        t.a = {
            arrowsPosition: r.a,
            itemResolutionMode: z,
            arrowsVerticalPosition: o,
            cubeType: a,
            dimensions: n,
            events: s,
            deviceType: l.a,
            gallerySizeType: u.a,
            galleryTextAlign: c,
            gridStyle: h.a,
            cubeFitPosition: p,
            groupTypes: d,
            imageHoverAnimations: m.a,
            infoBehaviourOnHover: g.a,
            infoType: y.a,
            isVertical: f,
            itemClick: b,
            layout: S.a,
            isLayout: S.b,
            layoutDirection: v,
            loadingMode: _.a,
            loadingWithColorMode: O.a,
            loadMoreAmount: I,
            mobileSwipeAnimations: P,
            overlayAnimations: w.a,
            placements: E.a,
            hasExternalAbovePlacement: E.b,
            hasExternalBelowPlacement: E.c,
            hasHoverPlacement: E.h,
            hasExternalRightPlacement: E.f,
            hasExternalLeftPlacement: E.e,
            hasExternalVerticalPlacement: E.g,
            hasExternalHorizontalPlacement: E.d,
            isExternalAbovePlacement: E.j,
            isExternalBelowPlacement: E.k,
            isHoverPlacement: E.p,
            isExternalRightPlacement: E.n,
            isExternalLeftPlacement: E.m,
            isExternalVerticalPlacement: E.o,
            isExternalHorizontalPlacement: E.l,
            isConstantVerticalPlacement: E.i,
            resizeMethods: T,
            scrollAnimations: x,
            slideAnimations: C.a,
            scrollDirection: D.a,
            socialNetworks: A,
            textBoxWidthCalculationOptions: M.a,
            thumbnailsAlignment: R,
            thumbnailsPosition: L,
            urlSizes: {
                RESIZED: "resized",
                MULTI: "multi",
                SCALED: "scaled",
                PIXEL: "pixel",
                THUMBNAIL: "thumbnail",
                SQUARE: "square",
                FULL: "full",
                SAMPLE: "sample",
                PRELOAD: "preload",
                DOWNLOAD: "download",
                DOWNLOAD_SAMPLE: "download_sample",
                MAGNIFIED: "magnified"
            },
            urlTypes: {
                HIGH_RES: "img",
                LOW_RES: "thumb",
                VIDEO: "video"
            },
            videoPlay: B,
            viewMode: j.a,
            imagePlacementAnimations: k.a,
            slideTransition: N,
            overlayPositions: W,
            overlaySizeType: U,
            autoSlideshowTypes: F,
            arrowsType: H,
            arrowsContainerStyleType: G,
            autoSlideBehaviour: V,
            secondaryMediaTrigger: K,
            secondaryMediaBehaviour: q
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "c", (function() {
            return a
        })), i.d(t, "a", (function() {
            return o
        })), i.d(t, "b", (function() {
            return n
        })), i.d(t, "d", (function() {
            return l
        })), i.d(t, "e", (function() {
            return s
        }));
        var r = i(0);

        function o(e, t, i, o) {
            void 0 === o && (o = !0);
            var a = o ? Object(r.a)({}, e) : e,
                n = t.split("_"),
                s = n.pop(),
                l = a;
            return n.forEach((function(e) {
                "object" != typeof l[e] && (l[e] = {}), l = l[e]
            })), l[s] = i, a
        }

        function a(e) {
            var t = {};
            for (var i in e)
                if (e.hasOwnProperty(i))
                    if ("object" == typeof e[i] && !(e[i] instanceof Array) && null !== e[i] && Object.keys(e[i]).length > 0) {
                        var r = a(e[i]);
                        for (var o in r) r.hasOwnProperty(o) && (t[i + "_" + o] = r[o])
                    } else t[i] = e[i];
            return t
        }

        function n(e) {
            return Object.entries(e).reduce((function(e, t) {
                return o(e, t[0], t[1], !1)
            }), {})
        }

        function s(e) {
            return Object.keys(e).forEach((function(t) {
                return void 0 === e[t] ? delete e[t] : {}
            })), e
        }

        function l() {
            for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
            return n(Object.assign.apply(Object, Object(r.e)([{}], e.map(a))))
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return r
        })), i.d(t, "d", (function() {
            return o
        })), i.d(t, "b", (function() {
            return a
        })), i.d(t, "c", (function() {
            return n
        })), i.d(t, "e", (function() {
            return s
        }));
        var r = function() {
            return (r = Object.assign || function(e) {
                for (var t, i = 1, r = arguments.length; i < r; i++)
                    for (var o in t = arguments[i]) Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
                return e
            }).apply(this, arguments)
        };

        function o(e, t) {
            var i = {};
            for (var r in e) Object.prototype.hasOwnProperty.call(e, r) && t.indexOf(r) < 0 && (i[r] = e[r]);
            if (null != e && "function" == typeof Object.getOwnPropertySymbols) {
                var o = 0;
                for (r = Object.getOwnPropertySymbols(e); o < r.length; o++) t.indexOf(r[o]) < 0 && Object.prototype.propertyIsEnumerable.call(e, r[o]) && (i[r[o]] = e[r[o]])
            }
            return i
        }

        function a(e, t, i, r) {
            return new(i || (i = Promise))((function(o, a) {
                function n(e) {
                    try {
                        l(r.next(e))
                    } catch (e) {
                        a(e)
                    }
                }

                function s(e) {
                    try {
                        l(r.throw(e))
                    } catch (e) {
                        a(e)
                    }
                }

                function l(e) {
                    var t;
                    e.done ? o(e.value) : (t = e.value, t instanceof i ? t : new i((function(e) {
                        e(t)
                    }))).then(n, s)
                }
                l((r = r.apply(e, t || [])).next())
            }))
        }

        function n(e, t) {
            var i, r, o, a, n = {
                label: 0,
                sent: function() {
                    if (1 & o[0]) throw o[1];
                    return o[1]
                },
                trys: [],
                ops: []
            };
            return a = {
                next: s(0),
                throw: s(1),
                return: s(2)
            }, "function" == typeof Symbol && (a[Symbol.iterator] = function() {
                return this
            }), a;

            function s(a) {
                return function(s) {
                    return function(a) {
                        if (i) throw new TypeError("Generator is already executing.");
                        for (; n;) try {
                            if (i = 1, r && (o = 2 & a[0] ? r.return : a[0] ? r.throw || ((o = r.return) && o.call(r), 0) : r.next) && !(o = o.call(r, a[1])).done) return o;
                            switch (r = 0, o && (a = [2 & a[0], o.value]), a[0]) {
                                case 0:
                                case 1:
                                    o = a;
                                    break;
                                case 4:
                                    return n.label++, {
                                        value: a[1],
                                        done: !1
                                    };
                                case 5:
                                    n.label++, r = a[1], a = [0];
                                    continue;
                                case 7:
                                    a = n.ops.pop(), n.trys.pop();
                                    continue;
                                default:
                                    if (!(o = n.trys, (o = o.length > 0 && o[o.length - 1]) || 6 !== a[0] && 2 !== a[0])) {
                                        n = 0;
                                        continue
                                    }
                                    if (3 === a[0] && (!o || a[1] > o[0] && a[1] < o[3])) {
                                        n.label = a[1];
                                        break
                                    }
                                    if (6 === a[0] && n.label < o[1]) {
                                        n.label = o[1], o = a;
                                        break
                                    }
                                    if (o && n.label < o[2]) {
                                        n.label = o[2], n.ops.push(a);
                                        break
                                    }
                                    o[2] && n.ops.pop(), n.trys.pop();
                                    continue
                            }
                            a = t.call(e, n)
                        } catch (e) {
                            a = [6, e], r = 0
                        } finally {
                            i = o = 0
                        }
                        if (5 & a[0]) throw a[1];
                        return {
                            value: a[0] ? a[1] : void 0,
                            done: !0
                        }
                    }([a, s])
                }
            }
        }

        function s() {
            for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length;
            var r = Array(e),
                o = 0;
            for (t = 0; t < i; t++)
                for (var a = arguments[t], n = 0, s = a.length; n < s; n++, o++) r[o] = a[n];
            return r
        }
    }, function(e, t, i) {
        "use strict";
        var r = i(4),
            o = function() {
                return {}
            },
            a = {
                y: 0,
                x: 0,
                width: 2560,
                height: 1440,
                innerWidth: 2560,
                innerHeight: 1440,
                clientWidth: 2560,
                clientHeight: 1440
            },
            n = {
                parentNode: Object(r.a)(Object(r.a)({}, a), {
                    getBoundingClientRect: function() {
                        return a
                    },
                    removeChild: o,
                    appendChild: o,
                    setAttribute: o
                }),
                offsetWidth: 2560,
                offsetheight: 1440,
                removeChild: o,
                appendChild: o,
                setAttribute: o
            },
            s = Object(r.a)(Object(r.a)(Object(r.a)({}, a), n), {
                getBoundingClientRect: function() {
                    return a
                }
            }),
            l = {
                initCustomEvent: o,
                createEvent: o,
                composedPath: o,
                initEvent: o,
                preventDefault: o,
                stopImmediatePropagation: o,
                stopPropagation: o
            },
            u = Object(r.a)({
                addEventListener: o,
                removeEventListener: o,
                createEvent: function() {
                    return l
                },
                createElement: function() {
                    return s
                },
                getElementById: function() {
                    return s
                },
                getElementsByClassName: function() {
                    return [s]
                },
                getElementsByTagName: function() {
                    return [s]
                },
                querySelector: function() {
                    return [s]
                },
                documentElement: s,
                activeElement: s,
                style: a
            }, a);
        u.body = u;
        var c = Object(r.a)({
            isMock: !0,
            isSSR: !0,
            orientation: 0,
            devicePixelRatio: 1,
            scrollTop: 0,
            addEventListener: o,
            removeEventListener: o,
            createEvent: o,
            CustomEvent: o,
            screen: a,
            open: o,
            petri: {},
            search: {},
            location: {
                href: "http://mock.wix.com/",
                protocol: "http:",
                host: "mock.wix.com",
                hostname: "mock.wix.com",
                port: "",
                pathname: "/",
                search: "",
                hash: ""
            },
            postMessage: o,
            requestAnimationFrame: o,
            dispatchEvent: o,
            document: u,
            getComputedStyle: o,
            localStorage: {},
            frames: []
        }, a);
        c.parent = c;
        var h = c,
            p = (new(function() {
                function e() {
                    this.reset()
                }
                return e.prototype.windowIsAvailable = function() {
                    try {
                        return "undefined" != typeof window
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.reset = function() {
                    this.isMock = !this.windowIsAvailable(), this.window = this.isMock ? h : window, this.isMock && (this.window.mockInstanceId = Math.floor(1e5 * Math.random()))
                }, e
            }())).window;
        t.a = p
    }, function(e, t, i) {
        "use strict";
        i.d(t, "b", (function() {
            return o
        }));
        var r = {
                JSON_FIXED: -3,
                DESIGNED_PRESET: -2,
                EMPTY: -1,
                COLLAGE: 0,
                MASONRY: 1,
                GRID: 2,
                THUMBNAIL: 3,
                SLIDER: 4,
                SLIDESHOW: 5,
                PANORAMA: 6,
                COLUMN: 7,
                MAGIC: 8,
                FULLSIZE: 9,
                BRICKS: 10,
                MIX: 11,
                ALTERNATE: 12
            },
            o = function(e) {
                return function(t) {
                    return t.galleryLayout === r[e]
                }
            };
        t.a = r
    }, function(e, t, i) {
        "use strict";
        i.d(t, "b", (function() {
            return p
        })), i.d(t, "c", (function() {
            return d
        })), i.d(t, "h", (function() {
            return h
        })), i.d(t, "f", (function() {
            return m
        })), i.d(t, "e", (function() {
            return g
        })), i.d(t, "g", (function() {
            return y
        })), i.d(t, "d", (function() {
            return f
        })), i.d(t, "j", (function() {
            return v
        })), i.d(t, "k", (function() {
            return _
        })), i.d(t, "p", (function() {
            return O
        })), i.d(t, "n", (function() {
            return I
        })), i.d(t, "m", (function() {
            return P
        })), i.d(t, "o", (function() {
            return b
        })), i.d(t, "l", (function() {
            return S
        })), i.d(t, "i", (function() {
            return w
        }));
        var r = {
                SHOW_ON_HOVER: "SHOW_ON_HOVER",
                SHOW_BELOW: "SHOW_BELOW",
                SHOW_ABOVE: "SHOW_ABOVE",
                SHOW_ON_THE_RIGHT: "SHOW_ON_THE_RIGHT",
                SHOW_ON_THE_LEFT: "SHOW_ON_THE_LEFT",
                ALTERNATE_HORIZONTAL: "ALTERNATE_HORIZONTAL",
                ALTERNATE_VERTICAL: "ALTERNATE_VERTICAL"
            },
            o = "OVERLAY",
            a = "ABOVE",
            n = "BELOW",
            s = "LEFT",
            l = "RIGHT",
            u = "ALTERNATE_HORIZONTALLY",
            c = "ALTERNATE_VERTICALLY",
            h = function(e) {
                return String(e).includes(r.SHOW_ON_HOVER) || String(e).includes(o)
            },
            p = function(e, t) {
                return String(e).includes(r.SHOW_ABOVE) || String(e).includes(a) || t % 2 == 0 && (String(e).includes(r.ALTERNATE_VERTICAL) || String(e).includes(c))
            },
            d = function(e, t) {
                return String(e).includes(r.SHOW_BELOW) || String(e).includes(n) || t % 2 == 1 && (String(e).includes(r.ALTERNATE_VERTICAL) || String(e).includes(c))
            },
            m = function(e, t) {
                return String(e).includes(r.SHOW_ON_THE_RIGHT) || String(e).includes(l) || t % 2 == 0 && String(e).includes(r.ALTERNATE_HORIZONTAL) || String(e).includes(u)
            },
            g = function(e, t) {
                return String(e).includes(r.SHOW_ON_THE_LEFT) || t % 2 == 1 && String(e).includes(r.ALTERNATE_HORIZONTAL) || String(e).includes(u)
            },
            y = function(e) {
                return p(e, 0) || d(e, 1)
            },
            f = function(e) {
                return m(e, 0) || g(e, 1)
            },
            b = function(e) {
                return y(e) && !f(e) && !h(e)
            },
            S = function(e) {
                return f(e) && !y(e) && !h(e)
            },
            v = function(e) {
                return String(e) === r.SHOW_ABOVE || String(e) === a
            },
            _ = function(e) {
                return String(e) === r.SHOW_BELOW || String(e) === n
            },
            O = function(e) {
                return String(e) === r.SHOW_ON_HOVER || String(e) === o
            },
            I = function(e) {
                return String(e) === r.SHOW_ON_THE_RIGHT || String(e) === l
            },
            P = function(e) {
                return String(e) === r.SHOW_ON_THE_LEFT || String(e) === s
            },
            w = function(e) {
                var t = e.split(","),
                    i = t.shift();
                return function(e) {
                    return v(e) || _(e)
                }(i) && t.every((function(e) {
                    return e === i
                }))
            };
        t.a = r
    }, function(e, t, i) {
        "use strict";
        i.d(t, "b", (function() {
            return g
        })), i.d(t, "a", (function() {
            return y
        })), i.d(t, "c", (function() {
            return f
        }));
        var r = {};
        i.r(r), i.d(r, "pick", (function() {
            return l
        })), i.d(r, "throttle", (function() {
            return u
        })), i.d(r, "debounce", (function() {
            return c
        })), i.d(r, "get", (function() {
            return h
        })), i.d(r, "isFunction", (function() {
            return p
        })), i.d(r, "isEqual", (function() {
            return d
        })), i.d(r, "isNumber", (function() {
            return m
        }));
        var o = i(0),
            a = i(2),
            n = i(19),
            s = i(5),
            l = function(e, t) {
                var i = {};
                return Object.entries(e || {}).forEach((function(e) {
                    var r = e[0],
                        o = e[1];
                    t.indexOf(r) >= 0 && (i[r] = o)
                })), i
            },
            u = function(e, t) {
                var i = !1,
                    r = !1;
                return function() {
                    for (var o = [], a = 0; a < arguments.length; a++) o[a] = arguments[a];
                    i ? r = !0 : (r = !1, e.apply(void 0, o), i = !0, setTimeout((function() {
                        r && e.apply(void 0, o), i = !1
                    }), t))
                }
            },
            c = function(e, t) {
                var i;
                return function() {
                    for (var r = [], o = 0; o < arguments.length; o++) r[o] = arguments[o];
                    clearTimeout(i), i = setTimeout((function() {
                        e.apply(void 0, r)
                    }), t)
                }
            },
            h = function(e, t, i) {
                var r = String.prototype.split.call(t, /[,[\].]+?/).filter(Boolean).reduce((function(e, t) {
                    return null != e ? e[t] : e
                }), e);
                return void 0 === r || r === e ? i : r
            },
            p = function(e) {
                return "function" == typeof e
            },
            d = function(e, t) {
                try {
                    return JSON.stringify(e) === JSON.stringify(t)
                } catch (e) {
                    return !1
                }
            },
            m = function(e) {
                return !isNaN(parseFloat(e)) && isFinite(e)
            };

        function g(e) {
            var t;
            for (t in e) {
                "object" === typeof e[t] ? g(e[t]) : ("number" != typeof e[t] || e[t] <= 0) && delete e[t]
            }
            return e
        }
        var y = function() {
                function e() {
                    var e = this;
                    this.init = function() {
                        Object.assign(e, r)
                    }, this.init()
                }
                var t;
                return e.getBaseUrl = function(t, i) {
                    var r = e.parseViewMode(i);
                    return r === a.a.viewMode.PREVIEW || r === a.a.viewMode.EDIT ? "https://progallery.wixapps.net" : t.location.baseUrl.split("/").slice(0, 3).join("/")
                }, e.getUrlOverrideExperimentsParam = function(e) {
                    var t;
                    return null === (t = e.location.query) || void 0 === t ? void 0 : t.petri_ovr
                }, e.getExperiments = function(t, i) {
                    var r = e.parseViewMode(t.window.viewMode),
                        o = e.getBaseUrl(t, r),
                        a = e.getUrlOverrideExperimentsParam(t);
                    return fetch(o + "/_api/pro-gallery-webapp/v1/viewer/experiments" + (a ? "?petri_ovr=" + a : ""), {
                        credentials: "include",
                        headers: {
                            Authorization: i
                        }
                    }).then((function(e) {
                        return e.json()
                    })).then((function(e) {
                        return e.experiments
                    })).catch((function() {
                        return {}
                    }))
                }, e.parseViewMode = function(e) {
                    switch (e.toLowerCase()) {
                        case "editor":
                        case "edit":
                            return a.a.viewMode.EDIT;
                        case "preview":
                            return a.a.viewMode.PREVIEW;
                        case "site":
                        default:
                            return a.a.viewMode.SITE
                    }
                }, e.formFactorToDeviceType = function(e) {
                    switch (e.toLowerCase()) {
                        case "tablet":
                            return a.a.deviceType.TABLET;
                        case "mobile":
                        case "smartphone":
                            return a.a.deviceType.MOBILE;
                        case "desktop":
                        default:
                            return a.a.deviceType.DESKTOP
                    }
                }, e.verifyExperiments = function(e) {
                    return Object(o.b)(this, void 0, void 0, (function() {
                        return Object(o.c)(this, (function(t) {
                            return n.a.experimentsAreReady ? [2] : (e && this.getExperimentsAndInitWrapper()(e), [2, new Promise((function(e) {
                                n.a.onExperimentsReady((function(t) {
                                    return e(t)
                                }))
                            }))])
                        }))
                    }))
                }, e.prototype.isVerbose = function() {
                    return !this.isTest() && "true" === (this.safeLocalStorage() || {}).forceDevMode
                }, e.prototype.isTest = function() {
                    try {
                        return s.a.isTest
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.safeLocalStorage = function() {
                    try {
                        return localStorage || s.a
                    } catch (e) {
                        return s.a
                    }
                }, e.prototype.isDev = function() {
                    return this.isLocal() || "true" === (this.safeLocalStorage() || {}).forceDevMode
                }, e.prototype.isLocal = function() {
                    var e = s.a.location.hostname || "";
                    return "local.wix.com" === e || "0.0.0.0" === e || e.indexOf("localhost") >= 0 || null !== /([0-9]{1,3}\.){3}[0-9]{1,3}:[0-9]{1,5}/.exec(e)
                }, e.prototype.isMobile = function(e) {
                    return e === a.a.deviceType.MOBILE
                }, e.prototype.isDimensionless = function(e) {
                    try {
                        if (!e.metaData.height || !e.metaData.width) return !0;
                        if (e.metaData.height <= 1 || e.metaData.width <= 1) return !0
                    } catch (t) {
                        console.error("corrupt item, cant check for dimensions", e, t)
                    }
                    return !1
                }, e.prototype.splitDirectFullscreenParams = function(e) {
                    var t = e.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/g) ? e.split(/_(.+)/) : e.split(/-(.+)/);
                    return {
                        galleryIdent: t[0],
                        itemId: t[1]
                    }
                }, e.getExperimentsAndInitWrapper = (t = !1, function() {
                    var i = this;
                    return t ? function() {} : (t = !0, function(t, r, a) {
                        return Object(o.b)(i, void 0, void 0, (function() {
                            var i, s;
                            return Object(o.c)(this, (function(o) {
                                switch (o.label) {
                                    case 0:
                                        return o.trys.push([0, 3, , 4]), i = void 0, "backend" !== t.window.rendering.env && (i = t.window.warmupData.get("pg_experiments")), i ? [3, 2] : [4, e.getExperiments(t, a)];
                                    case 1:
                                        i = o.sent(), o.label = 2;
                                    case 2:
                                        return n.a.setExperiments(i), "backend" !== t.window.rendering.env || n.a.getExperimentBoolean("specs.pro-gallery.excludeFromWarmupData") || t.window.warmupData.set("pg_experiments", i), [3, 4];
                                    case 3:
                                        return s = o.sent(), r && r(s), console.error("Waiting for experimentsPromise failed", s), [3, 4];
                                    case 4:
                                        return [2]
                                }
                            }))
                        }))
                    })
                }), e
            }(),
            f = new y
    }, function(e, t) {
        e.exports = __WEBPACK_EXTERNAL_MODULE__9__
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return w
        })), i.d(t, "e", (function() {
            return E
        })), i.d(t, "c", (function() {
            return T
        })), i.d(t, "d", (function() {
            return x
        })), i.d(t, "f", (function() {
            return D
        }));
        var r = i(0),
            o = i(23),
            a = i(12),
            n = i(7),
            s = i(24),
            l = i(28),
            u = i(33),
            c = i(17),
            h = i(26),
            p = i(30),
            d = i(2),
            m = i(3),
            g = i(32),
            y = i(35);
        var f = function(e, t) {
                var i = Object(r.a)({}, e);
                return i.textBoxHeight = function(e, t) {
                    if (! function(e, t) {
                            return Object(n.g)(e.titlePlacement) && t
                        }(e, t)) return 0;
                    return e.textBoxHeight
                }(i, t), i.externalInfoHeight = function(e, t) {
                    var i = t;
                    t > 0 && Object(n.g)(e.titlePlacement) && e.imageInfoType === g.a.SEPARATED_BACKGROUND && (i += e.textImageSpace, i += 2 * e.textBoxBorderWidth);
                    return i
                }(i, i.textBoxHeight), i.externalInfoWidth = function(e, t) {
                    if (! function(e, t) {
                            var i = e.scrollDirection,
                                r = e.isVertical,
                                o = e.groupSize,
                                a = e.titlePlacement;
                            return i === d.a.scrollDirection.VERTICAL && r && 1 === o && Object(n.d)(a) && t
                        }(e, t)) return 0;
                    var i = e.calculateTextBoxWidthMode,
                        r = e.textBoxWidth,
                        o = e.textBoxWidthPercent,
                        a = 0;
                    a = i === y.a.PERCENT ? Math.min(100, Math.max(0, o)) / 100 : r;
                    return a
                }(i, t), i
            },
            b = i(18),
            S = function(e) {
                return e.replace(/_/g, " ").split(" ").map((function(e) {
                    return e[0].toUpperCase() + e.substr(1).toLowerCase()
                })).join(" ")
            },
            v = function(e) {
                return Object.entries(d.a[e]).map((function(e) {
                    var t = e[0];
                    return {
                        value: e[1],
                        title: S(t)
                    }
                }))
            },
            _ = function(e) {
                return e.scrollDirection === d.a.scrollDirection.HORIZONTAL && 1 === e.groupSize && e.cubeImages && "100%/100%" === e.layoutParams.cropRatio
            },
            O = (b.a.OPTIONS, d.a.slideAnimations.SCROLL, v("slideAnimations"), function() {
                return !0
            }),
            I = (b.a.OPTIONS, d.a.scrollDirection.VERTICAL, v("scrollDirection"), function(e) {
                return O(e) && e.scrollDirection === d.a.scrollDirection.HORIZONTAL
            }),
            P = (b.a.BOOLEAN, function(e) {
                return I(e) && e.showArrows
            }),
            w = (b.a.OPTIONS, d.a.arrowsPosition.ON_GALLERY, v("arrowsPosition"), function(e, t) {
                return void 0 === t && (t = !1), e.gallerySizeType === h.a.PIXELS && e.gallerySizePx > 0 ? e.gallerySizePx : e.gallerySizeType === h.a.RATIO && e.gallerySizeRatio > 0 ? (a.a && a.a.innerWidth || 980) * (e.gallerySizeRatio / 100) : t || e.gallerySize
            }),
            E = function(e) {
                var t = Object(r.a)({}, e);
                return t.fixedColumns = 0, (e.scrollDirection === d.a.scrollDirection.VERTICAL || e.isVertical) && (t.fixedColumns = "1" === String(e.gridStyle) ? Number(e.numberOfImagesPerRow) : 0, t.groupTypes = "1", t.groupSize = 1, t.collageAmount = 0, t.collageDensity = 0), t
            },
            T = function(e) {
                var t = Object(r.a)({}, e);
                return t.gridStyle = t.isVertical ? e.gridStyle : d.a.gridStyle.FIT_TO_SCREEN, t
            },
            x = function(e) {
                var t = Object(r.a)({}, e);
                if (!o.a.isUndefined(e.numberOfImagesPerCol) && e.scrollDirection === d.a.scrollDirection.HORIZONTAL) switch (t.fixedColumns = 0, e.numberOfImagesPerCol) {
                    case 1:
                    default:
                        t.groupTypes = "1", t.groupSize = 1, t.collageAmount = 0, t.collageDensity = 0;
                        break;
                    case 2:
                        t.groupTypes = "2v", t.groupSize = 2, t.collageAmount = 1, t.collageDensity = 1;
                        break;
                    case 3:
                        t.groupTypes = "3v", t.groupSize = 3, t.collageAmount = 1, t.collageDensity = 1
                }
                return t
            },
            C = function(e) {
                var t = Object(r.a)({}, e);
                return ! function(e) {
                    if (Object(n.g)(e.titlePlacement)) {
                        if (d.a.isLayout("SLIDER")(e) || d.a.isLayout("PANORAMA")(e) || d.a.isLayout("COLUMN")(e)) return !0;
                        if (d.a.isLayout("MASONRY")(e) && e.isVertical) return !0;
                        if (d.a.isLayout("GRID")(e) && 1 !== e.scrollDirection) return !0
                    }
                    return !1
                }(t) ? (o.a.isUndefined(t.itemFont) || (t = A("itemFont", "textDecorationTitle", t)), o.a.isUndefined(t.itemDescriptionFont) || (t = A("itemDescriptionFont", "textDecorationDesc", t))) : (o.a.isUndefined(t.itemFontSlideshow) || (t = A("itemFontSlideshow", "textDecorationTitle", t)), o.a.isUndefined(t.itemDescriptionFontSlideshow) || (t = A("itemDescriptionFontSlideshow", "textDecorationDesc", t))), t
            },
            D = function(e) {
                var t = Object(r.a)({}, e);
                return "fit" === t.cubeType && (t.itemBorderWidth = 0, t.itemBorderRadius = 0, t.itemEnableShadow = !1), t
            },
            A = function(e, t, i) {
                var o = Object(r.a)({}, i);
                return o[e].value = o[e].value.replace(/^font\s*:\s*/, ""), o[e].value = o[e].value.replace(/;$/, ""), o[e].value.indexOf("underline") > -1 || !0 === o[e].style.underline ? (o[e].value = o[e].value.replace("underline", ""), o[t] = "underline") : !1 === o[e].style.underline && (o[t] = "none"), o
            };
        t.b = function(e, t) {
            var i = Object(r.a)({}, e);
            return o.a.isMobile() && (i = function(e) {
                var t = Object(r.a)({}, e);
                return t.imageMargin > 0 && (t.imageMargin = Math.min(t.imageMargin, 50)), t
            }(i = C(i))), i = function(e) {
                var t = Object(r.a)({}, e);
                return t.gallerySizeType === h.a.PIXELS && t.gallerySizePx > 0 ? t.targetItemSize = t.gallerySizePx : t.gallerySizeType === h.a.RATIO && t.gallerySizeRatio > 0 && (t.targetItemSize = (a.a && a.a.innerWidth || 980) * (t.gallerySizeRatio / 100)), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.forceMobileCustomButton && (t.targetItemSize = Math.round(405), t.titlePlacement = n.a.SHOW_BELOW, t.galleryLayout = 2, t.fixedColumns = 1, t.numberOfImagesPerRow = 1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.loadMoreButtonFont && o.a.isMobile() && (t.loadMoreButtonFont.value = t.loadMoreButtonFont.value.replace(/^font\s*:\s*/, ""), t.loadMoreButtonFont.value = t.loadMoreButtonFont.value.replace(/;$/, ""), t.loadMoreButtonFont.value.indexOf("underline") > -1 ? (t.loadMoreButtonFont.value = t.loadMoreButtonFont.value.replace("underline", ""), t.textDecorationLoadMore = "underline") : t.textDecorationLoadMore = "none"), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return (t.scrollDirection === d.a.scrollDirection.VERTICAL || t.groupSize > 1 || !t.cubeImages) && (t.slideAnimation = c.a.SCROLL), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.scrollDirection === d.a.scrollDirection.VERTICAL && (t.slideshowLoop = !1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.scrollDirection === d.a.scrollDirection.HORIZONTAL && (t.isVertical = !1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.arrowsPosition === p.a.OUTSIDE_GALLERY && (t.arrowsPadding = 0), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                if (t.itemEnableShadow && t.scrollDirection === d.a.scrollDirection.VERTICAL) {
                    var i = Math.max(t.layoutParams.gallerySpacing, (t.itemShadowSize || 0) + (t.itemShadowBlur || 0));
                    t = Object(m.a)(t, "layoutParams_gallerySpacing", i)
                }
                return t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.itemEnableShadow && t.scrollDirection === d.a.scrollDirection.HORIZONTAL && (t.itemEnableShadow = !1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.imageLoadingMode === l.a.COLOR && t.imageLoadingWithColorMode === u.a.MAIN_COLOR && (t.imageLoadingMode = l.a.MAIN_COLOR), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return e.EXPERIMENTALallowParallelInfos || Object(n.h)(t.titlePlacement) || t.hoveringBehaviour === s.a.NEVER_SHOW || (t.hoveringBehaviour = s.a.APPEARS), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return d.a.isLayout("SLIDER")(t) || d.a.isLayout("COLUMN")(t) || d.a.isLayout("SLIDESHOW")(t) || (!t.isVertical || t.groupSize > 1) && (t.titlePlacement = n.a.SHOW_ON_HOVER), t
            }(i)))))))))))), i = function(e) {
                var t = Object(r.a)({}, e);
                return e.arrowsPosition === d.a.arrowsPosition.MOUSE_CURSOR && P(e) && (t.showVideoControls = !1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return e.slideAnimation !== d.a.slideAnimations.FADE && e.slideAnimation !== d.a.slideAnimations.DECK || !_(e) || (t.enableScroll = !1), t
            }(i = function(e) {
                var t = Object(r.a)({}, e);
                return t.allowSlideshowCounter ? (t.isAutoSlideshow || (t.allowSlideshowCounter = !1), !1 === d.a.isLayout("SLIDESHOW")(e) && (t.allowSlideshowCounter = !1), t) : t
            }(i = function(e) {
                var t = Object(r.a)({}, e),
                    i = t.layoutParams.repeatingGroupTypes ? "1" == t.layoutParams.repeatingGroupTypes : "1" == t.groupTypes,
                    o = t.titlePlacement.split(",").filter((function(e) {
                        return !Object(n.p)(e)
                    })).join(",");
                return Object(n.i)(o) && i || (t.arrowsVerticalPosition = d.a.arrowsVerticalPosition.ITEM_CENTER), t
            }(i = f(i, t)))))
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "c", (function() {
            return l
        })), i.d(t, "b", (function() {
            return u
        }));
        var r, o, a = i(4),
            n = {
                SCLAED_DOWN: "SCALED_DOWN",
                FULL: "FULL"
            },
            s = {
                SCALED_DOWN: 0,
                FULL: 1,
                FULL_ON_FULLSCREEN: 2
            };
        t.a = {
            imageRatioType: {
                FIXED: "FIXED",
                RESPONSIVE: "RESPONSIVE"
            },
            dimensions: {
                SIDE_BAR_WIDTH: 430,
                STORE_SIDE_BAR_WIDTH: 560,
                MOBILE_PADDING: 120,
                NO_PADDING: 0
            },
            mobileSwipeAnimations: {
                EXPAND: "EXPAND",
                FADE: "FADE",
                CAROUSEL: "CAROUSEL",
                CROSSFADE: "CROSSFADE"
            },
            expandAnimations: {
                NO_EFFECT: "NO_EFFECT",
                EXPAND: "EXPAND",
                FADE_IN: "FADE_IN",
                ZOOM: "ZOOM"
            },
            expandInfoPositions: {
                SIDE: "SIDE",
                BOTTOM: "BOTTOM"
            },
            dataSavedState: {
                SAVED: "SAVED",
                PUBLISHED: "PUBLISHED"
            },
            slideTransitions: {
                LINEAR: "linear",
                EASE_IN: "cubic-bezier(0.86,0,0.5,1)",
                EASE_OUT: "cubic-bezier(0.31,1.17,0.58,1.07)",
                EASE_IN_OUT: "cubic-bezier(0.46,0.1,0.25,1)",
                BOUNCE_IN: "cubic-bezier(0.49,-0.12,0.49,0.04)",
                BOUNCE_OUT: "cubic-bezier(0.58,1.65,0.29,0.95)",
                BOUNCE_IN_OUT: "cubic-bezier(0.6,-0.36,0.41,1.23)",
                EXPO: "cubic-bezier(0.86,0,0.07,1)"
            },
            autoSlideshowTypes: {
                INTERVAL: "interval",
                CONTINUOUS: "continuous"
            },
            itemResolutionModeTypes: n,
            itemResolutionMode: s,
            expandInfoBottomPadding: {
                MAX_HEIGHT: 200
            },
            desktopNavbarContainer: {
                DESKTOP_NAVBAR_CONTAINER: 74
            }
        };
        var l = ((r = {})[s.SCALED_DOWN] = n.SCLAED_DOWN, r[s.FULL] = n.FULL, r[s.FULL_ON_FULLSCREEN] = n.FULL, r),
            u = Object(a.a)(Object(a.a)({}, l), ((o = {})[s.FULL_ON_FULLSCREEN] = n.SCLAED_DOWN, o))
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = function() {
                return {}
            },
            a = {
                y: 0,
                x: 0,
                width: 2560,
                height: 1440,
                innerWidth: 2560,
                innerHeight: 1440,
                outerWidth: 2560,
                outerHeight: 1440,
                clientWidth: 2560,
                clientHeight: 1440
            },
            n = Object(r.a)(Object(r.a)({}, a), {
                getBoundingClientRect: function() {
                    return a
                }
            }),
            s = Object(r.a)({
                addEventListener: o,
                removeEventListener: o,
                createEvent: o,
                getElementById: function() {
                    return n
                },
                getElementsByClassName: function() {
                    return [n]
                },
                getElementsByTagName: function() {
                    return [n]
                },
                querySelector: function() {
                    return [n]
                },
                documentElement: n,
                activeElement: n,
                style: a
            }, a);
        s.body = s;
        var l = Object(r.a)({
            isMock: !0,
            isSSR: !0,
            orientation: 0,
            devicePixelRatio: 1,
            scrollTop: 0,
            addEventListener: o,
            removeEventListener: o,
            createEvent: o,
            CustomEvent: o,
            screen: a,
            open: o,
            petri: {},
            search: {},
            location: {
                href: "http://mock.wix.com/",
                protocol: "http:",
                host: "mock.wix.com",
                hostname: "mock.wix.com",
                port: "",
                pathname: "/",
                search: "",
                hash: ""
            },
            postMessage: o,
            requestAnimationFrame: o,
            dispatchEvent: o,
            document: s,
            getComputedStyle: o,
            localStorage: {},
            frames: []
        }, a);
        l.parent = l;
        var u = l,
            c = (new(function() {
                function e() {
                    this.reset()
                }
                return e.prototype.windowIsAvailable = function() {
                    try {
                        return "undefined" != typeof window
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.reset = function() {
                    this.isMock = !this.windowIsAvailable(), this.window = this.isMock ? u : window, this.isMock && (this.window.mockInstanceId = Math.floor(1e5 * Math.random()))
                }, e
            }())).window;
        t.a = c
    }, function(e, t, i) {
        "use strict";
        t.a = {
            VERTICAL: 0,
            HORIZONTAL: 1
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "c", (function() {
            return r
        })), i.d(t, "b", (function() {
            return o
        })), i.d(t, "a", (function() {
            return a
        }));
        var r = {
                SENTRY_DSN: "https://dcd7075e345b43d991c2ca339000e980@sentry.wixpress.com/112",
                PG_APP_DEFINITION_ID: "14271d6f-ba62-d045-549b-ab972ae1f70e",
                GALLERY_WIDGET_ID: "142bb34d-3439-576a-7118-683e690a1e0d",
                MULTISHARE_WIDGET_ID: "1491fc25-fcd2-9c08-c74f-67b98b69ac4a",
                FULLSCREEN_PAGE_ID: "144f04b9-aab4-fde7-179b-780c11da4f46",
                PG_TEST_APP_DEFINITION_ID: "f27276e7-0858-460c-a450-4ba27cfe6eea",
                PG_TEST_GALLERY_WIDGET_ID: "c89921a0-ef16-45a8-931d-e7d3e5a02cdf"
            },
            o = {
                ARTSTORE_APP_DEFINITION_ID: "147ab90e-91c5-21b2-d6ca-444c28c8a23b",
                GALLERY_WIDGET_ID: "147ab9e6-2166-63ea-f9f1-3e81db0cbb4a",
                CART_WIDGET_ID: "1482a5fd-aaf4-0660-4c80-178d7d8a28f3",
                THANK_YOU_WIDGET_ID: "14ab724d-1a44-73f3-daaf-e6590508eb14",
                SENTRY_DSN: "https://1c9d600630e64cd6b5a4b0cda27df53d@sentry.wixpress.com/113",
                PROVIDERS: {
                    LOCAL: "14a0ee97-918b-2f0c-43f1-42e67948716b",
                    WIX: "147bec5f-d87e-d37b-b5cf-36f47c1815b4",
                    ORDERAPRINT: "14a9911b-a59e-b7f3-f878-3661e0d83f2f"
                }
            },
            a = {
                ALBUMS_APP_DEF_ID: "13ff8629-c1fc-e289-e81f-bc8c8968e9d6"
            }
    }, , function(e, t, i) {
        "use strict";
        t.a = {
            FIT_TO_SCREEN: 0,
            SET_ITEMS_PER_ROW: 1
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            SCROLL: "SCROLL",
            FADE: "FADE",
            DECK: "DECK"
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return r
        }));
        var r = {
            NUMBER: "NUMBER",
            BOOLEAN: "BOOLEAN",
            OPTIONS: "OPTIONS",
            TEXT: "TEXT",
            COLOR_PICKER: "COLOR_PICKER",
            FONT_PICKER: "FONT_PICKER",
            BUTTON: "BUTTON",
            MULTISELECT: "MULTISELECT",
            MULTIREPEAT: "MULTIREPEAT"
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return s
        }));
        var r = i(4),
            o = i(5),
            a = i(20),
            n = function() {
                function e() {
                    this.getExperiment = this.getExperiment.bind(this), this.getExperiments = this.getExperiments.bind(this), this.setExperiments = this.setExperiments.bind(this), this.getExperimentBoolean = this.getExperimentBoolean.bind(this), this._experiments = Object.assign({}, Object(r.a)({}, o.a.petri)), this.experimentsAreReady = Object.keys(this._experiments) > 0, this.onExperimentReadyCb = []
                }
                return e.prototype.setExperiments = function(e) {
                    if (e) try {
                        Object.assign(this._experiments, Object(r.a)({}, e)), a.a.isDev() && (o.a.petri = this._experiments), this.triggerExperimentsReady(), this.experimentsAreReady = !0
                    } catch (e) {
                        console.error("Could not set experiments", e)
                    }
                }, Object.defineProperty(e.prototype, "experiments", {get: function() {
                        return this.getExperiments()
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.getExperiments = function() {
                    return a.a.isDev() ? Object(r.a)(Object(r.a)({}, this._experiments), o.a.petri) : this._experiments
                }, e.prototype.getExperiment = function(e) {
                    return this.experiments[e]
                }, e.prototype.getExperimentBoolean = function(e) {
                    return "true" === this.getExperiment(e) || !0 === this.getExperiment(e)
                }, Object.defineProperty(e.prototype, "isReady", {get: function() {
                        return this.experimentsAreReady || Object.keys(this._experiments) > 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.triggerExperimentsReady = function() {
                    var e = this;
                    try {
                        this.onExperimentReadyCb.forEach((function(t) {
                            return t(e.experiments)
                        }))
                    } catch (e) {
                        console.error("Could not trigger experiments callback", e)
                    }
                }, e.prototype.onExperimentsReady = function(e) {
                    "function" == typeof e && (this.isReady ? e(this.experiments) : this.onExperimentReadyCb.push(e))
                }, e
            }(),
            s = function() {
                if (a.a.isDev()) {
                    if (!o.a.proGalleryExperimentsWrapper) {
                        var e = new n;
                        o.a.proGalleryExperimentsWrapper = e
                    }
                    return o.a.proGalleryExperimentsWrapper
                }
                return new n
            }();
        s.getExperiment
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return p
        }));
        var r = {},
            o = "undefined" != typeof document ? document : {
                addEventListener: function() {},
                removeEventListener: function() {}
            },
            a = {
                closeWindow: function() {},
                addEventListener: function(e, t) {
                    o.addEventListener(e, t)
                },
                removeEventListener: function(e, t) {
                    o.removeEventListener(e, t)
                },
                stylesMock: {
                    fonts: {
                        testKey: {
                            cssFontFamily: "1111"
                        }
                    },
                    numbers: {},
                    colors: {},
                    booleans: {}
                },
                colorMock: {
                    colors: {
                        testColorKey: "color-1"
                    }
                },
                getBoundingRectAndOffsets: function(e) {
                    e({
                        offsets: {
                            x: 0,
                            y: 0
                        }
                    })
                },
                getCurrentPageId: function(e) {
                    e("")
                },
                Utils: {
                    navigateToSection: function() {},
                    getOrigCompId: function() {},
                    getCompId: function() {
                        return null
                    },
                    getViewMode: function() {},
                    getDemoMode: function() {},
                    getInstance: function() {
                        return null
                    },
                    getInstanceValue: function() {
                        return null
                    },
                    getInstanceId: function() {
                        return null
                    },
                    getBusinessId: function() {
                        return ""
                    },
                    isOverEditor: function() {
                        return !1
                    },
                    getSectionUrl: function(e, t) {
                        setTimeout((function() {
                            t("https://mock_section_url")
                        }), 0)
                    },
                    getSiteOwnerId: function() {
                        return ""
                    },
                    getUid: function() {
                        return ""
                    },
                    Media: {
                        getResizedImageUrl: function(e, t, i) {
                            return "/images/test-" + e + "-" + t + "-" + i + ".jpg"
                        }
                    }
                },
                setHeight: function() {},
                UI: {
                    create: function() {
                        return {}
                    },
                    initialize: function() {},
                    onChange: function(e, t) {
                        o.addEventListener(e, (function() {
                            t(r[e])
                        }))
                    },
                    get: function(e) {
                        return r[e]
                    },
                    set: function(e, t) {
                        r[e] = t
                    },
                    modelCache: r
                },
                Styles: {
                    getColorByreference: function() {
                        return {
                            value: "#123456"
                        }
                    },
                    getSiteColors: function() {
                        for (var e = [], t = 0; t < 31; t++) e[t] = t;
                        return e
                    },
                    getStyleParams: function(e) {
                        return e ? e(a.stylesMock) : a.stylesMock
                    },
                    getStyleParamsByStyleId: function(e, t, i) {
                        return i ? i(a.stylesMock) : a.stylesMock
                    },
                    restoreParam: function() {
                        a.stylesMock = {
                            fonts: {
                                testKey: {
                                    cssFontFamily: "1111"
                                }
                            },
                            numbers: {},
                            colors: {},
                            booleans: {}
                        }
                    },
                    setFontParam: function(e, t, i) {
                        a.stylesMock.fonts[e] = {
                            cssFontFamily: t.value.cssFontFamily
                        }, i && i()
                    },
                    setColorParam: function(e, t, i) {
                        a.colorMock.colors[e] = t, i && i()
                    },
                    getSiteTextPresets: function() {
                        return {
                            Title: {
                                editorKey: "font_0",
                                fontFamily: "fontFamilyTitle",
                                lineHeight: "1.4em",
                                size: "40px",
                                style: "normal",
                                value: "value",
                                weight: "normal"
                            }
                        }
                    },
                    getEditorFonts: function() {
                        return [{
                            language: "hebrew",
                            fonts: [{
                                cssFontFamily: "fontFamilyTitle0",
                                fontFamily: "fontFamilyTitle0",
                                genericFamily: "cursive0",
                                permissions: "all0",
                                provider: "google0",
                                spriteIndex: 132
                            }]
                        }, {
                            language: "latin",
                            fonts: [{
                                cssFontFamily: "fontFamilyTitle",
                                fontFamily: "fontFamilyTitle",
                                genericFamily: "cursive",
                                permissions: "all",
                                provider: "google",
                                spriteIndex: 154
                            }]
                        }, {
                            language: "arabic",
                            fonts: [{
                                cssFontFamily: "fontFamilyTitleArabic",
                                fontFamily: "fontFamilyTitleArabic",
                                genericFamily: "cursiveArabic",
                                permissions: "allArabic",
                                provider: "googleArabic",
                                spriteIndex: 160
                            }]
                        }]
                    },
                    getStyleId: function(e) {
                        e("mock-style-id")
                    }
                },
                Settings: {
                    openModal: function(e, t, i, r, o) {
                        o()
                    },
                    triggerSettingsUpdatedEvent: function() {},
                    getSiteInfo: function(e) {
                        return e({
                            baseUrl: "www.test.boost.co.il"
                        })
                    },
                    getDashboardAppUrl: function(e) {
                        e.call()
                    },
                    refreshApp: function() {
                        return ""
                    },
                    setExternalId: function() {},
                    addComponent: function() {},
                    MediaType: {
                        IMAGE: "photos",
                        BACKGROUND: "backgrounds",
                        AUDIO: "audio",
                        DOCUMENT: "documents",
                        SWF: "swf",
                        SECURE_MUSIC: "secure_music",
                        VIDEO: "video",
                        SHAPE: "shape",
                        MUSIC: "music",
                        CLIPART: "clipart",
                        BG_VIDEO: "bg_video",
                        ICON_DOCUMENT: "icon_document",
                        ICON_SOCIAL: "bg_social",
                        ICON_FAVICON: "bg_favicon",
                        MUSIC_PRO: "secure_music",
                        IMAGE_PRO: "secure_picture",
                        FLASH: "swf",
                        BG_IMAGE: "backgrounds"
                    }
                },
                Events: {
                    PUBLIC_DATA_CHANGED: "PUBLIC_DATA_CHANGED",
                    SETTINGS_UPDATED: "SETTINGS_UPDATED",
                    EDIT_MODE_CHANGE: "EDIT_MODE_CHANGE",
                    STYLE_PARAMS_CHANGE: "STYLE_PARAMS_CHANGE",
                    THEME_CHANGE: "THEME_CHANGE",
                    PAGE_NAVIGATION_IN: "PAGE_NAVIGATION_IN",
                    PAGE_NAVIGATION_OUT: "PAGE_NAVIGATION_OUT"
                },
                Theme: {
                    BARE: "bare"
                },
                scrollTo: function() {},
                scrollBy: function() {},
                getSiteInfo: function() {},
                Data: {
                    Public: {get: function(e, t, i) {
                            i({
                                pg: 1
                            })
                        }
                    }
                },
                Features: {
                    isSupported: function() {},
                    Types: {
                        ADD_COMPONENT: "ADD_COMPONENT"
                    }
                },
                PubSub: {
                    subscribe: function() {},
                    publish: function() {}
                },
                getSitePages: function(e) {
                    "function" == typeof e && e([])
                },
                replaceSectionState: function() {},
                Performance: {
                    applicationLoaded: function() {},
                    applicationLoadingStep: function() {}
                },
                Activities: {
                    postActivity: function() {},
                    Type: {
                        SOCIAL_TRACK: "SOCIAL_TRACK"
                    }
                }
            },
            n = a,
            s = new(function() {
                function e() {
                    this.init()
                }
                return e.prototype.wixSdkIsAvailable = function() {
                    try {
                        return "undefined" != typeof window && void 0 !== window.Wix && "function" == typeof window.Wix.Utils.getCompId
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.init = function() {
                    try {
                        this.wixSdkIsAvailable() ? (Object.assign(this, n, window.Wix), this.isMock = !1) : (Object.assign(this, n), this.isMock = !0)
                    } catch (e) {
                        Object.assign(this, n), this.isMock = !0
                    }
                }, e
            }()),
            l = i(9),
            u = i(40),
            c = i(5),
            h = function() {
                function e() {
                    this._cache = {}, this._hash2int = {}, this._params = {}, this._useCache = this.shouldUseCache(), this.setIsWixMobile = this.setIsWixMobile.bind(this)
                }
                return e.prototype.shouldUseCache = function() {
                    var e = !0;
                    try {
                        e = c.a && c.a.Wix && c.a.Wix.Utils && c.a.Wix.Utils.getViewMode()
                    } catch (e) {}
                    return !!this.isUndefined(e) || "editor" !== e && "preview" !== e
                }, e.prototype.isUndefined = function(e) {
                    return void 0 === e
                }, e.prototype.getOrPutFromCache = function(e, t) {
                    return !this._useCache || this.isSSR() ? t() : (void 0 !== this._cache[e] || (this._cache[e] = t()), this._cache[e])
                }, e.prototype.isDemo = function() {
                    return "1" === this.parseGetParam("demo")
                }, e.prototype.isInWix = function() {
                    return this.isTest() || this.getOrPutFromCache("isInWix", (function() {
                        try {
                            return top !== self && ("progallery.wix.com" === document.location.host || "progallery.wixapps.net" === document.location.host) && document.location.search.indexOf("instance=") >= 0
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.isSemiNative = function() {
                    try {
                        return c.a.semiNative
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.hashToInt = function(e, t, i) {
                    var r = 0;
                    if (this.isUndefined(e) || 0 === e.length) return r;
                    if (!this._hash2int[e]) {
                        for (var o = 0; o < e.length; o++) r += e.charCodeAt(o);
                        this._hash2int[e] = r
                    }
                    return this.isUndefined(t) || this.isUndefined(i) ? this._hash2int[e] : this._hash2int[e] % (i - t + 1) + t
                }, e.prototype.parseGetParam = function(e, t) {
                    try {
                        if (!this.isUndefined(this._params[e])) return this._params[e];
                        var i = "",
                            r = [],
                            o = location;
                        if (t && (o = {
                                search: "?" + (t.split("?")[1] || ""),
                                pathname: (t.split("?")[0] || "").split("/")[1] || ""
                            }), o.search.substr(1).split("&").forEach((function(t) {
                                (r = t.split("="))[0] === e && (i = decodeURIComponent(r[1]))
                            })), !i) {
                            var a = decodeURIComponent(o.pathname).split("?")[1];
                            if (!a) return "";
                            a.split("&").forEach((function(t) {
                                (r = t.split("="))[0] === e && (i = decodeURIComponent(r[1]))
                            }))
                        }
                        return this._params[e] = i, i
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.parsePathParam = function(e) {
                    for (var t = location.pathname.split("/"), i = 0; i < t.length; i++) {
                        var r = t[i];
                        if (r.indexOf(e) >= 0) return r
                    }
                    return ""
                }, e.prototype.parseHashParam = function(e) {
                    var t = "",
                        i = [],
                        r = location.href.split("#")[1] || "";
                    return r ? (r.substr(1).split("&").forEach((function(r) {
                        (i = r.split("="))[0] === e && (t = decodeURIComponent(i[1]))
                    })), t) : ""
                }, e.prototype.stripSlashes = function(e) {
                    var t = "";
                    return "string" == typeof e && (t = e.replace(/\\\//g, "/").replace(/\\'/g, "'").replace(/\\"/g, '"').replace(/\\0/g, "\0").replace(/\\\\/g, "\\")), t
                }, e.prototype.parseStringObject = function(e) {
                    if ("string" != typeof e) return e;
                    var t = this.stripSlashes(e);
                    if ("string" == typeof e && /^[\],:{}\s]*$/.test(t.replace(/\\["\\\/bfnrtu]/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) try {
                        return JSON.parse(t)
                    } catch (e) {}
                    return t
                }, e.prototype.isWixMobile = function() {
                    var e = this,
                        t = function() {
                            var t = e.parseGetParam("deviceType") || c.a.deviceType;
                            return !!("true" === e.parseGetParam("showMobileView")) || (t ? String(t).toLowerCase().indexOf("mobile") >= 0 : void 0)
                        };
                    return this.isSite() ? this.getOrPutFromCache("isWixMobile", t) : t()
                }, e.prototype.isUserAgentMobile = function() {
                    try {
                        var e = function() {
                            var e, t = !1;
                            return e = navigator.userAgent || navigator.vendor || c.a.opera, (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|pixel|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0, 4))) && (t = !0), t
                        };
                        return this.isSite() ? this.getOrPutFromCache("isUserAgentMobile", e) : e()
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.setIsWixMobile = function(e) {
                    c.a.deviceType = e ? "mobile" : "desktop", this._cache.isWixMobile = e, this._cache.isMobile = e
                }, e.prototype.isMobile = function() {
                    var e = this,
                        t = function() {
                            var t = e.isWixMobile(),
                                i = e.isUserAgentMobile();
                            return e.isUndefined(t) ? i : t
                        };
                    return !this.isTest() && (this.isSite() ? this.getOrPutFromCache("isMobile", t) : t())
                }, e.prototype.isTest = function() {
                    try {
                        return c.a.isTest
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.isDev = function() {
                    var e = this;
                    return this.getOrPutFromCache("isDev", (function() {
                        return e.isLocal() || e.isOOI() && !1 || e.shouldDebug("ph_local") || !!e.parseGetParam("debug") || "true" === (e.safeLocalStorage() || {}).forceDevMode
                    }))
                }, e.prototype.isVerbose = function() {
                    return !this.isTest() && ("true" === (this.safeLocalStorage() || {}).forceDevMode || this.shouldDebug("ph_verbose"))
                }, e.prototype.isLocal = function() {
                    return this.getOrPutFromCache("isLocal", (function() {
                        var e = c.a.location.hostname || "";
                        return "local.wix.com" === e || "0.0.0.0" === e || e.indexOf("localhost") >= 0 || null !== /([0-9]{1,3}\.){3}[0-9]{1,3}:[0-9]{1,5}/.exec(e)
                    }))
                }, e.prototype.isStoreGallery = function() {
                    var e = this;
                    return this.getOrPutFromCache("isStoreGallery", (function() {
                        if (e.isSemiNative()) return !1;
                        try {
                            return c.a.location.search.toLowerCase().indexOf("isstore") > -1
                        } catch (t) {
                            return e.isDev() && console.error("cant find window", t), !1
                        }
                    }))
                }, e.prototype.isDemoMode = function() {
                    return s && s.Utils && s.Utils.getInstanceValue && s.Utils.getInstanceValue("demoMode")
                }, e.prototype.isSSR = function() {
                    return !!c.a.isMock
                }, e.prototype.isOOI = function() {
                    return this.isSSR() || "undefined" != typeof top && "undefined" != typeof self && (top === self || self.location.href.includes("AlbumsGOGOOI") || self.location.origin.includes("editor.wix.com") || self.location.origin.includes("blocks.wix.com") || self.location.origin.includes("editorx.com"))
                }, e.prototype.isPremium = function() {
                    var e = this;
                    return this.getOrPutFromCache("isPremium", (function() {
                        var t = e.shouldDebug("ph_force_premium"),
                            i = e.shouldDebug("ph_force_freemium");
                        return !!t || !i
                    }))
                }, e.prototype.updateViewMode = function(e) {
                    if ("string" == typeof e && this.isOOI()) return this._cache.viewMode = e.toLowerCase(), this._cache.viewMode;
                    try {
                        if (c.a && c.a.Wix && c.a.Wix.Utils && c.a.Wix.Utils.getViewMode) return this._cache.viewMode = c.a.Wix.Utils.getViewMode(), this._cache.viewMode
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.getViewModeFromCache = function() {
                    var e = this;
                    return this.getOrPutFromCache("viewMode", (function() {
                        try {
                            if (e.isOOI()) {
                                e.isVerbose() && console.warn("OOI - viewMode not found, returning site if not in wix.com(old test)");
                                try {
                                    return c.a.location.host.includes("wixapps.net") ? "undefined" : "site"
                                } catch (e) {
                                    return "undefined"
                                }
                            }
                            return e.isSSR() ? "site" : c.a && c.a.Wix && c.a.Wix.Utils && c.a.Wix.Utils.getViewMode ? c.a.Wix.Utils.getViewMode() : "undefined"
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.isEditor = function() {
                    return (this.isOOI() || !!this.isInWix()) && "editor" === this.getViewModeFromCache()
                }, e.prototype.isPreview = function() {
                    return (this.isOOI() || !!this.isInWix()) && "preview" === this.getViewModeFromCache()
                }, e.prototype.isSite = function() {
                    return this.isOOI() ? "site" === this.getViewModeFromCache() : !this.isEditor() && !this.isPreview()
                }, e.prototype.getUUID = function() {
                    return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(e) {
                        var t = 16 * Math.random() | 0;
                        return ("x" === e ? t : 3 & t | 8).toString(16)
                    }))
                }, e.prototype.generateUUID = function() {
                    return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(e) {
                        var t = Math.floor(16 * Math.random()) || 0;
                        return "x" === e ? t.toString(16) : e
                    }))
                }, e.prototype.isInSettings = function() {
                    return "1" === this.parseGetParam("expandsettingsmode")
                }, e.prototype.isExternalUrl = function(e) {
                    return /(^https?)|(^data)|(^blob)/.test(e)
                }, e.prototype.isMobileViewer = function() {
                    var e = this;
                    return this.getOrPutFromCache("isMobileViewer", (function() {
                        var t = e.isWixMobile(),
                            i = e.isUserAgentMobile();
                        return t && !i
                    }))
                }, e.prototype.isiOS = function() {
                    return this.getOrPutFromCache("isiOS", (function() {
                        try {
                            return /iPad|iPhone|iPod/.test(navigator.userAgent) && !c.a.MSStream
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.isiPhone = function() {
                    return this.getOrPutFromCache("isiPhone", (function() {
                        try {
                            return /iPhone/.test(navigator.userAgent) && !c.a.MSStream
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.isTouch = function() {
                    var e = this;
                    return this.getOrPutFromCache("isTouch", (function() {
                        try {
                            return e.isMobile() || "ontouchstart" in c.a.document.documentElement
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.browserIs = function(e) {
                    return this.getOrPutFromCache("browsers", (function() {
                        var e = {
                            chrome: !1,
                            chromeIos: !1,
                            explorer: !1,
                            firefox: !1,
                            safari: !1,
                            opera: !1
                        };
                        try {
                            return e.chrome = navigator.userAgent.indexOf("Chrome") > -1, e.chromeIos = navigator.userAgent.indexOf("CriOS") > -1, e.explorer = navigator.userAgent.indexOf("MSIE") > -1 || !!navigator.userAgent.match(/Trident.*rv\:11\./), e.firefox = navigator.userAgent.indexOf("Firefox") > -1, e.safari = navigator.userAgent.indexOf("Safari") > -1, e.opera = navigator.userAgent.toLowerCase().indexOf("op") > -1, e.chrome && e.safari && (e.safari = !1), e.chrome && e.opera && (e.chrome = !1), e
                        } catch (t) {
                            return e
                        }
                    }))[e]
                }, e.prototype.isPlayground = function() {
                    if (this.isInWix()) return !1;
                    try {
                        var e = !1;
                        try {
                            e = top.location.href.indexOf("playground.html") > 0
                        } catch (t) {
                            e = !1
                        }
                        return e
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.isInAlbumsBuilder = function() {
                    if (!this.isInWix()) return !1;
                    try {
                        return c.a && c.a.debugApp && c.a.debugApp.indexOf("ph_source_albums") > -1
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.isWixDomain = function() {
                    try {
                        return c.a.location.href.indexOf("wixapps.net") >= 0
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.isLandscape = function() {
                    var e = this;
                    return !this.isSemiNative() && this.getOrPutFromCache("isLandscape", (function() {
                        if (!e.isMobile()) return !1;
                        try {
                            if (e.isUndefined(c.a.orientation)) {
                                var t = c.a.matchMedia("(orientation: landscape)");
                                return !(!t || !0 !== t.matches)
                            }
                            return 90 === c.a.orientation || -90 === c.a.orientation
                        } catch (e) {
                            return !1
                        }
                    }))
                }, e.prototype.isOnBoarding = function() {
                    try {
                        var e = Object(u.parse)(c.a.location.search);
                        return e.viewMode && "onboarding" === e.viewMode.toLowerCase()
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.isAccessibilityEnabled = function() {
                    var e = this;
                    return this.getOrPutFromCache("isAccessibilityEnabled", (function() {
                        if (!e.isSite()) return !1;
                        if (e.isOOI()) return !1;
                        var t = e.shouldDebug("accessibility");
                        if (s && "function" == typeof s.isVisualFocusEnabled) try {
                            s.isVisualFocusEnabled((function(e) {
                                return e || t
                            }))
                        } catch (e) {}
                        return t
                    }))
                }, e.prototype.isDebugBuild = function() {
                    try {
                        return !1
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.getDeviceType = function() {
                    return this.isWixMobile() ? "mobile" : "desktop"
                }, e.prototype.safeLocalStorage = function() {
                    try {
                        return localStorage || c.a
                    } catch (e) {
                        return c.a
                    }
                }, e.prototype.shouldDebug = function(e) {
                    try {
                        return !!this.safeLocalStorage()[e] || (c.a.debugApp || "").indexOf(e) >= 0 || (this.parseGetParam("debugApp") || "").indexOf(e) >= 0
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.shouldLog = function(e) {
                    return this.shouldDebug("ph_log_" + e)
                }, e.prototype.getDateCreatedTicksFromStr = function(e) {
                    return !1 === isNaN(Date.parse(e)) ? Date.parse(e) : Date.parse("2017-07-09T14:08:21.000Z")
                }, e.prototype.deviceHasMemoryIssues = function() {
                    return this.isiOS()
                }, e.prototype.getUrlPrefix = function(e) {
                    try {
                        return c.a.location.protocol + "//" + (!e && this.isLocal() ? "local.wix.com:3001" : "progallery.wixapps.net") + "/"
                    } catch (e) {
                        return console.error("getUrlPrefix", {
                            e: e
                        }), "http://progallery.wixapps.net/"
                    }
                }, e.prototype.getFullscreenSectionId = function() {
                    return this.isStoreGallery() ? "fullscreen_store_page" : "fullscreen_page"
                }, e.prototype.getApiUrlPrefix = function() {
                    return this.getUrlPrefix(!0) + "api/v1/"
                }, e.prototype.generateUrl = function(e, t) {
                    t = t || {};
                    var i = this.isStoreGallery(),
                        r = this.getUrlPrefix() + e;
                    i && (t.isStore = !0);
                    var o = Object(u.stringify)(t);
                    return o ? r + "?" + o : r
                }, e.prototype.getTextEditorUrl = function() {
                    return this.generateUrl("text-editor.html")
                }, e.prototype.getManageMediaUrl = function() {
                    return this.generateUrl("photos.html")
                }, e.prototype.getExpandSettingsUrl = function(e) {
                    return this.generateUrl("settings-expand.html", e)
                }, e.prototype.getSettingsWatermarkDisableUrl = function() {
                    return this.generateUrl("settings-watermark-disable.html")
                }, e.prototype.getSettingsAddonsUrl = function(e) {
                    return void 0 === e && (e = {}), this.generateUrl("settings-addons.html", e)
                }, e.prototype.getProviderModalUrl = function(e) {
                    return void 0 === e && (e = {}), this.generateUrl("provider-modal.html", e)
                }, e.prototype.getTabIndex = function(e) {
                    var t = ["currentGalleryItem", "loadMoreButton", "slideshowNext", "slideshowPrev", "currentThumbnail", "slideshowLove", "slideshowShare", "cartIcon", "cartClose", "cartFrame", "fullscreenClose", "fullscreenNext", "fullscreenPrev", "fullscreenInfo", "fullscreenLink", "fullscreenProvider", "fullscreenCartButton", "fullscreenCheckout", "fullscreenExpand", "fullscreenVideoPlay", "fullscreenVideoBar", "fullscreenVideoMute", "fullscreenVideoVolume", "fullscreenCartIcon", "fullscreenDownload", "fullscreenLove", "fullscreenShare"].indexOf(e) + 1;
                    return t >= 0 && this.isOOI() ? 0 : t || -1
                }, e.prototype.safeSessionStorage = function() {
                    try {
                        return sessionStorage
                    } catch (e) {
                        return c.a || {}
                    }
                }, e.prototype.getLocalStorage = function() {
                    return this.isDev() ? this.safeSessionStorage() : this.safeLocalStorage() || this.safeSessionStorage()
                }, e.prototype.setStateAndLog = function(e, t, i, r) {
                    var o = this;
                    if (this.isVerbose()) {
                        console.log("State Change Called (" + t + ")", i);
                        var a = Object(l.clone)(e.state);
                        e.setState(i, (function() {
                            var i = Object(l.clone)(e.state),
                                n = o.printableObjectsDiff(a, i, "state");
                            Object(l.keys)(n).length > 0 && console.log("State Change Completed (" + t + ")", n), Object(l.isFunction)(r) && r.bind(e)()
                        }))
                    } else e.setState(i, (function() {
                        Object(l.isFunction)(r) && r.bind(e)()
                    }))
                }, e.prototype.printableObjectsDiff = function(e, t, i) {
                    var r = this;
                    void 0 === i && (i = "");
                    var o = function(e) {
                            return "" === e ? e = "''" : r.isUndefined(e) && (e = "undefined"), Object(l.toString)(e)
                        },
                        a = function(e, t, i) {
                            return Object(l.reduce)(e, (function(e, r, n) {
                                return Object(l.isEqual)(r, t[n]) || (Object(l.isArray)(t[n]) ? (r.length !== t[n].length && (e[n + ".length"] = "[" + r.length + "] => [" + t[n].length + "]"), e = Object(l.merge)(e, a(r, t[n], (i ? i + "." : "") + n))) : Object(l.isObject)(t[n]) ? e = Object(l.merge)(e, a(r, t[n], (i ? i + "." : "") + n)) : e[(i ? i + "." : "") + n] = o(r) + " => " + o(t[n])), e
                            }), {})
                        };
                    return a(e, t, i)
                }, e.prototype.setExternalId = function() {
                    var e = this;
                    try {
                        var t = this.getUUID();
                        this._setExternalId(t), this.setExternalIdTimeouts || (this.setExternalIdTimeouts = {});
                        for (var i = 1e3; i < 1e4; i += 1e3) this.setExternalIdTimeouts[i] && clearTimeout(this.setExternalIdTimeouts[i]), this.setExternalIdTimeouts[i] = setTimeout((function() {
                            return e._setExternalId(t)
                        }), i)
                    } catch (e) {
                        return console.error("Utils setExternalId - fail"), !1
                    }
                }, e.prototype._setExternalId = function(e) {
                    var t = this;
                    s.Settings.setExternalId(e, (function(i) {
                        t.isDev() && console.log("Utils setExternalId - success", e, i)
                    }), (function(t) {
                        console.error("Utils setExternalId - fail", e, t)
                    }))
                }, e.prototype.isWebpSupported = function() {
                    if (this.isTest()) return !1;
                    try {
                        var e = "object" == typeof document ? c.a.document.createElement("canvas") : {};
                        return e.width = e.height = 1, !!e.toDataURL && 5 === e.toDataURL("image/webp").indexOf("image/webp")
                    } catch (e) {
                        return !1
                    }
                }, e.prototype.getGalleryLayoutName = function(e) {
                    switch (e) {
                        case 0:
                            return "Collage";
                        case 1:
                            return "Masonry";
                        case 2:
                            return "Grid";
                        case 3:
                            return "Thumbnails";
                        case 4:
                            return "Slider";
                        case 5:
                            return "Slideshow";
                        case 6:
                            return "Strip";
                        case 7:
                            return "Columns";
                        case 8:
                            return "Magic";
                        case 10:
                            return "Bricks";
                        case 11:
                            return "Mix";
                        case 12:
                            return "Alternate";
                        default:
                            return ""
                    }
                }, e.prototype.shallowObjectsCompare = function(e, t) {
                    return Object.keys(e).length === Object.keys(t).length && Object.keys(e).every((function(i) {
                        return t.hasOwnProperty(i) && e[i] === t[i]
                    }))
                }, e.prototype.isSubset = function(e, t) {
                    return Object.keys(t).every((function(i) {
                        return t[i] === e[i]
                    }))
                }, e
            }(),
            p = new h
    }, function(e, t, i) {
        "use strict";
        t.a = {
            SITE: "SITE",
            EDIT: "EDIT",
            PREVIEW: "PREVIEW",
            SEO: "SEO"
        }
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = i(23),
            a = i(2),
            n = i(3),
            s = i(46),
            l = new(function() {
                function e() {
                    this._hash2int = {}
                }
                return e.prototype.stripSlashes = function(e) {
                    var t = "";
                    return "string" == typeof e && (t = e.replace(/\\\//g, "/").replace(/\\'/g, "'").replace(/\\"/g, '"').replace(/\\0/g, "\0").replace(/\\\\/g, "\\")), t
                }, e.prototype.parseStringObject = function(e) {
                    if ("string" != typeof e) return e;
                    var t = this.stripSlashes(e);
                    if ("string" == typeof e && /^[\],:{}\s]*$/.test(t.replace(/\\["\\\/bfnrtu]/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) try {
                        return JSON.parse(t)
                    } catch (e) {}
                    return t
                }, e.prototype.hashToInt = function(e, t, i) {
                    var r = 0;
                    if (void 0 === e || 0 === e.length) return r;
                    if (!this._hash2int[e]) {
                        for (var o = 0; o < e.length; o++) r += e.charCodeAt(o);
                        this._hash2int[e] = r
                    }
                    return void 0 === t || void 0 === i ? this._hash2int[e] : this._hash2int[e] % (i - t + 1) + t
                }, e.prototype.hashToRandomInt = function(e, t, i) {
                    return void 0 === t && (t = 0), void 0 === i && (i = 1e5), void 0 === e || 0 === e.length ? 0 : (t = Math.round(t), i = Math.round(i), e += e.length + t + i, this._hash2int[e] || (this._hash2int[e] = Math.round(Math.random() * (i - t) + t)), this._hash2int[e])
                }, e.prototype.addDefaultStyleParams = function(e) {
                    var t, i, r, o, a = {
                            layoutParams: {
                                gallerySpacing: 0,
                                cropRatio: 1,
                                repeatingGroupTypes: ""
                            },
                            cubeImages: !1,
                            cubeType: "fill",
                            rotatingCropRatios: "",
                            smartCrop: !1,
                            imageMargin: 10,
                            scatter: 0,
                            rotatingScatter: "",
                            chooseBestGroup: !0,
                            groupSize: 3,
                            groupTypes: "1,2h,2v,3h,3v,3t,3b,3l,3r",
                            isVertical: !0,
                            minItemSize: 120,
                            scrollDirection: 0,
                            targetItemSize: 500,
                            collageDensity: 50,
                            fixedColumns: 0,
                            columnWidths: ""
                        },
                        l = Object(s.b)(e),
                        u = (t = l, i = Object(n.c)(a), r = Object(n.c)(t), o = Object.assign({}, i, r), Object.keys(o).forEach((function(e) {
                            void 0 === o[e] && (o[e] = a[e])
                        })), Object(n.b)(o));
                    return Object(s.b)(u)
                }, e.prototype.convertContainer = function(e, t) {
                    var i = Object(r.a)({
                        bounds: {}
                    }, e);
                    return e.width >= 0 && !(e.galleryWidth >= 0) && (i.galleryWidth = e.width + 2 * ((t.imageMargin / 2 || 0) - (t.layoutParams.gallerySpacing || 0)), delete i.width), e.height >= 0 && !(e.galleryHeight >= 0) && (i.galleryHeight = e.height + ((t.imageMargin / 2 || 0) - (t.layoutParams.gallerySpacing || 0)), delete i.height), t.externalInfoHeight >= 0 && 1 === t.scrollDirection && (i.galleryHeight -= t.externalInfoHeight), i
                }, e
            }()),
            u = function() {
                function e(e) {
                    if (this.style = {}, this.visibility = {}, (e = e || {}).dto || (console.error("Item has no DTO", e), e.dto = {}), this.config = e, this.dto = e.dto, this.idx = e.idx, this.inGroupIdx = e.inGroupIdx, this.container = e.container, this.cubeType = "fill", e.styleParams) {
                        var t = e.styleParams;
                        this.cubeType = t.cubeType, this.cubeImages = t.cubeImages, this._cropRatio = t.layoutParams.cropRatio, this.rotatingCropRatios = t.rotatingCropRatios, this.smartCrop = t.smartCrop, this.cropOnlyFill = t.cropOnlyFill, this.imageMargin = t.imageMargin, this.gallerySpacing = t.layoutParams.gallerySpacing, this.scatter = t.scatter, this.rotatingScatter = t.rotatingScatter, this.smartCrop = t.smartCrop, this.useMaxDimensions = t.useMaxDimensions && "text" !== this.itemType, this.cubeFitPosition = t.cubeFitPosition
                    }
                    this._groupOffset = {
                        top: 0,
                        left: 0,
                        right: 0,
                        bottom: 0
                    }, this._group = {}, this.calcPinOffset = function() {
                        return 0
                    }, this.resize(1)
                }
                return e.prototype.fixMetadataVerticalVideoRatio = function(e) {
                    if (e.qualities && e.qualities[0]) {
                        var t = e.qualities,
                            i = t[t.length - 1],
                            r = i.height,
                            o = i.width;
                        e.height = r, e.width = o
                    }
                }, e.prototype.resize = function(e) {
                    var t = 1;
                    if (!1 !== e) {
                        if (e > 0) t = e;
                        else if ("object" == typeof e) {
                            if (e.width) t = Math.max(1, e.width) / this.width;
                            else if (e.height) {
                                t = Math.max(1, e.height) / this.height
                            }
                        }
                        return this.width *= t, this.height *= t, this.resized = !0, this
                    }
                }, e.prototype.pinToCorner = function(e, t) {
                    var i = this;
                    void 0 === t && (t = !1);
                    var r = e.indexOf("top") >= 0,
                        o = e.indexOf("left") >= 0;
                    this.style.top = r ? 0 : "auto", this.style.bottom = r ? "auto" : 0, this.style.left = o ? 0 : "auto", this.style.right = o ? "auto" : 0, this.pin = e, this.isPinnedTop = r, this.isPinnedLeft = o, this.pinAfter = t, this.pinAfterType = r ? "top" : o ? "left" : "", this.calcPinOffset = function(e, t) {
                        if (i.pinAfter) {
                            if (i.pin === t) {
                                var r = i.imageMargin / 2;
                                return "top" === t ? i.pinAfter.height + 2 * r : "left" === t ? i.pinAfter.width + 2 * r : 0
                            }
                            return 0
                        }
                        return 0
                    }
                }, e.prototype.setPosition = function(e) {
                    this.style.position = e
                }, e.prototype.getPosition = function(e) {
                    return parseInt(e, 10) >= 0 ? e : "auto"
                }, e.prototype.calcScatter = function(e) {
                    var t = this.imageMargin / 2,
                        i = this.gallerySpacing,
                        r = e.left > 0 ? t : i,
                        o = this.container.galleryWidth - e.right > 2 * t ? t : i,
                        a = e.top > 0 ? t : i,
                        n = this.container.galleryHeight - e.bottom > 2 * t ? t : i;
                    if (!(this.rotatingScatter.length > 0)) {
                        if (this.scatter > 0) {
                            var s = this.scatter / 100 * .4;
                            u = l.hashToRandomInt(this.seed + e.right + "x", -r, o);
                            u *= this.scatter / 100, u *= 1 - s, u += (u > 0 ? s * o : s * r) * Math.sign(u), u = Math.round(u);
                            c = l.hashToRandomInt(this.seed + e.right + "y", -a, n);
                            return c *= this.scatter / 100, c *= 1 - s, c += (c > 0 ? s * n : s * a) * Math.sign(c), {
                                x: u,
                                y: c = Math.round(c)
                            }
                        }
                        return {
                            x: 0,
                            y: 0
                        }
                    }
                    try {
                        var u, c, h = this.rotatingScatter.split(","),
                            p = h[this.idx % h.length].split("/").map((function(e) {
                                return parseInt(e)
                            })).map((function(e) {
                                return e / 100
                            })),
                            d = p[0],
                            m = p[1];
                        return {
                            x: u = d * (d > 0 ? o : r),
                            y: c = m * (m > 0 ? n : a)
                        }
                    } catch (e) {
                        console.error("Cannot calculate rotating scatter", e)
                    }
                }, Object.defineProperty(e.prototype, "top", {get: function() {
                        return this.getPosition(this.style.top)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "left", {get: function() {
                        return this.getPosition(this.style.left)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "right", {get: function() {
                        return this.getPosition(this.style.right)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "bottom", {get: function() {
                        return this.getPosition(this.style.bottom)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "group", {get: function() {
                        return this._group
                    },
                    set: function(e) {
                        Object.assign(this._group, e)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "groupOffset", {set: function(e) {
                        Object.assign(this._groupOffset, e)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "offset", {get: function() {
                        var e, t = {
                                top: this._groupOffset.top + (this.isPinnedTop ? this.calcPinOffset(this._group.height, "top") : this._group.height - this.outerHeight) || 0,
                                left: this._groupOffset.left + (this.isPinnedLeft ? this.calcPinOffset(this._group.width, "left") : this._group.width - this.outerWidth) || 0
                            },
                            i = this.dimensions,
                            r = i.fixTop,
                            o = void 0 === r ? 0 : r,
                            a = i.fixLeft,
                            n = void 0 === a ? 0 : a,
                            s = i.fixRight,
                            l = void 0 === s ? 0 : s,
                            u = i.fixBottom,
                            c = void 0 === u ? 0 : u;
                        if (t.innerTop = o, t.innerLeft = n, t.innerRight = l, t.innerBottom = c, t.right = t.left + this.width, t.bottom = t.top + this.height, this.scatter > 0 || (null === (e = this.rotatingScatter) || void 0 === e ? void 0 : e.length) > 0) {
                            var h = this.calcScatter(t),
                                p = h.x,
                                d = h.y;
                            t.left += p, t.top += d, t.right = t.left + this.width, t.bottom = t.top + this.height
                        }
                        return t
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "id", {get: function() {
                        return this.dto.id || this.dto.photoId || this.dto.itemId
                    },
                    set: function(e) {
                        this.dto.itemId = this.dto.photoId = this.dto.id = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "hash", {get: function() {
                        return this.dto.hash || this.dto.mediaUrl || this.dto.id
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "seed", {get: function() {
                        return this.dto.seed || l.hashToInt(this.hash)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "metadata", {get: function() {
                        return this.dto.metadata || this.dto.metaData || {}
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "itemType", {get: function() {
                        return this.metadata.type || "image"
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "maxWidth", {get: function() {
                        return this.dto.width || this.dto.w
                    },
                    set: function(e) {
                        this.dto.width = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "outerWidth", {get: function() {
                        return this.width + 2 * this.margins
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "infoWidth", {get: function() {
                        return this.Group ? this.Group.infoWidth : 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "orgWidth", {get: function() {
                        return this.style.orgWidth || this.dto.width || this.dto.w || 1
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "width", {get: function() {
                        var e;
                        return e = this.cubeImages && this.ratio >= this.cropRatio ? this.style.cubedWidth || this.orgHeight * this.cropRatio : this.orgWidth, Math.max(e, 1)
                    },
                    set: function(e) {
                        this.style.cubedWidth = this.style.orgWidth = this.style.width = Math.max(1, e);
                        var t = this.dimensions,
                            i = t.fixLeft,
                            r = void 0 === i ? 0 : i,
                            o = t.fixRight,
                            a = void 0 === o ? 0 : o;
                        this.style.innerWidth = this.style.width - r - a
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "outerHeight", {get: function() {
                        return this.height + 2 * this.margins
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "orgHeight", {get: function() {
                        return this.style.orgHeight || this.dto.height || this.dto.h || 1
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "height", {get: function() {
                        var e;
                        return e = this.cubeImages && this.ratio < this.cropRatio ? this.style.cubedHeight || this.orgWidth / this.cropRatio : this.orgHeight, Math.max(e, 1)
                    },
                    set: function(e) {
                        this.style.cubedHeight = this.style.orgHeight = this.style.height = Math.max(1, e);
                        var t = this.dimensions,
                            i = t.fixTop,
                            r = void 0 === i ? 0 : i,
                            o = t.fixBottom,
                            a = void 0 === o ? 0 : o;
                        this.style.innerHeight = this.style.height - a - r
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "maxHeight", {get: function() {
                        return this.dto.height || this.dto.h
                    },
                    set: function(e) {
                        this.dto.height
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "infoHeight", {get: function() {
                        return this.Group ? this.Group.infoHeight : 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "margins", {get: function() {
                        return this.imageMargin / 2 || 0
                    },
                    set: function(e) {
                        this.imageMargin = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "dimensions", {get: function() {
                        var e = this,
                            t = this.cubeImages && "fit" === this.cubeType,
                            i = this.width,
                            r = this.height,
                            o = function(t, o) {
                                t ? (i = e.useMaxDimensions ? Math.min(e.width, e.maxWidth) : e.width, r = i / o) : (r = e.useMaxDimensions ? Math.min(e.height, e.maxHeight) : e.height, i = r * o)
                            },
                            a = this.ratio >= this.cropRatio;
                        t ? o(a, this.ratio) : this.useMaxDimensions && (this.width > this.maxWidth || this.height > this.maxHeight) && (this.cubeImages ? o(!a, this.cropRatio) : o(!a, this.ratio));
                        var n = {
                            fixTop: (this.height - r) / 2,
                            fixLeft: (this.width - i) / 2,
                            fixRight: (this.width - i) / 2,
                            fixBottom: (this.height - r) / 2
                        };
                        switch (this.cubeFitPosition) {
                            case "TOP":
                                n.fixTop = 0, n.fixBottom *= 2;
                                break;
                            case "BOTTOM":
                                n.fixTop *= 2, n.fixBottom = 0;
                                break;
                            case "LEFT":
                                n.fixLeft = 0, n.fixRight *= 2;
                                break;
                            case "RIGHT":
                                n.fixLeft *= 2, n.fixRight = 0
                        }
                        return n
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "cropRatio", {get: function() {
                        var e, t = this;
                        if (this.rotatingCropRatio) e = this.rotatingCropRatio;
                        else if (this.rotatingCropRatios && this.rotatingCropRatios.length > 0) {
                            var i = String(this.rotatingCropRatios).split(",");
                            e = this.rotatingCropRatio = i[this.idx % i.length]
                        }
                        if (e || "function" != typeof this._cropRatio || (e = this._cropRatio()), !e && this.cropOnlyFill && "fit" === this.cubeType && (e = this.ratio), e || (e = this._cropRatio || this.ratio), null !== this.dynamicCropRatios && "string" == typeof e) {
                            if (!this.dynamicCropRatios) {
                                var r = /^\d*\.?\d*(%|px)\/\d*\.?\d*(%|px)$/.exec(e);
                                this.dynamicCropRatios = r ? e.split("/").map((function(e, t) {
                                    return e.indexOf("%") > 0 ? {
                                        type: "%",
                                        val: parseFloat(e.replace("%", "")) / 100,
                                        dim: 0 === t ? "galleryWidth" : "galleryHeight"
                                    } : {
                                        type: "px",
                                        val: parseInt(e.replace("px", ""))
                                    }
                                })) : null
                            }
                            if (this.dynamicCropRatios) {
                                var o = this.dynamicCropRatios.map((function(e) {
                                    if ("%" === e.type) {
                                        var i = t.container[e.dim] + ("galleryHeight" === e.dim ? t.imageMargin / 2 : 0);
                                        return e.val * i - t.imageMargin
                                    }
                                    return e.val
                                }));
                                e = o[0] / o[1]
                            }
                        }
                        return e = Number(e), !0 === this.smartCrop && (e = this.isPortrait ? Math.min(e, 1 / e) : Math.max(e, 1 / e)), "min" === this.cubeType ? e = Math.max(e, this.orgRatio) : "max" === this.cubeType && (e = Math.min(e, this.orgRatio)), e
                    },
                    set: function(e) {
                        "number" == typeof this._cropRatio && (this._cropRatio = e, this.style.cubedHeight = this.style.cubedWidth = 0)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "orientation", {get: function() {
                        return this.ratio < .999 ? "portrait" : "landscape"
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isPortrait", {get: function() {
                        return "portrait" === this.orientation
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isLandscape", {get: function() {
                        return "landscape" === this.orientation
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "ratio", {get: function() {
                        return this.orgRatio || (this.orgRatio = this.orgWidth / this.orgHeight), this.orgRatio
                    },
                    set: function(e) {
                        this.orgRatio = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "roundedStyle", {get: function() {
                        return Object(r.a)(Object(r.a)({}, this.style), {
                            width: Math.round(this.style.width),
                            height: Math.round(this.style.height)
                        })
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scheme", {get: function() {
                        return {
                            id: this.id,
                            idx: this.idx,
                            inGroupIdx: this.inGroupIdx,
                            dto: this.dto,
                            type: this.type,
                            style: this.style,
                            roundedStyle: this.roundedStyle,
                            width: this.width,
                            maxWidth: this.maxWidth,
                            outerWidth: this.outerWidth,
                            infoWidth: this.infoWidth,
                            margins: this.margins,
                            ratio: this.ratio,
                            dimensions: this.dimensions,
                            cropRatio: this.cropRatio,
                            isCropped: this.cubeImages,
                            cropType: this.cubeType,
                            height: this.height,
                            maxHeight: this.maxHeight,
                            outerHeight: this.outerHeight,
                            infoHeight: this.infoHeight,
                            group: this.group,
                            offset: this.offset,
                            groupOffset: this._groupOffset,
                            orientation: this.orientation,
                            isPortrait: this.isPortrait,
                            isLandscape: this.isLandscape,
                            visibility: this.visibility
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            c = function() {
                function e(e) {
                    this.uniqueId = o.a.generateUUID(), this.isGalleryItem = !0, this.createdBy = e.createdBy, this.createUrl = this.createUrl.bind(this), this.createMagnifiedUrl = this.createMagnifiedUrl.bind(this), this.createSecondMediaItemIfNeeded(e), this.update(e)
                }
                return e.prototype.createSecondMediaItemIfNeeded = function(t) {
                    var i;
                    (null === (i = t.dto) || void 0 === i ? void 0 : i.secondaryMedia) && (this.secondaryMediaItem = new e(this.mapItemConfig(t)))
                }, e.prototype.updateSecondaryMedia = function(e) {
                    this.secondaryMediaItem && this.secondaryMediaItem.update(this.mapItemConfig(e))
                }, e.prototype.mapItemConfig = function(e) {
                    var t = {};
                    return Object.assign(t, e.dto.secondaryMedia, e.dto.secondaryMedia.metadata), Object(r.a)(Object(r.a)({}, e), {
                        dto: t,
                        scheme: Object(r.a)(Object(r.a)({}, e.scheme), {
                            maxHeight: t.height,
                            maxWidth: t.width
                        })
                    })
                }, e.prototype.update = function(e) {
                    if (this.createMediaUrl = e.createMediaUrl, e.dto && e.dto.dto && (e.dto = e.dto.dto, o.a.isDev() && console.warn("Item core is created with already existing item core")), this.dto = Object(r.a)({}, e.dto), e.scheme) this.processScheme(e.scheme);
                    else {
                        var t = {};
                        Object.assign(t, this.dto, this.metadata), this.processScheme(new u({
                            dto: t
                        }).scheme)
                    }
                    if (this.dto) {
                        var i = this.dto.metaData || this.dto.metadata;
                        i && (this.dto.metaData = o.a.parseStringObject(i))
                    }
                    this.sharpParams = Object(r.a)({}, e.sharpParams), this.sharpParams.quality || (this.sharpParams.quality = 90), this.sharpParams.usm || (this.sharpParams.usm = {}), this.thumbnailSize = e.thumbnailSize || 120, this.resetUrls(), this.updateSharpParams(), this.updateSecondaryMedia(e)
                }, e.prototype.processScheme = function(e) {
                    this.id = e.id, this.idx = e.idx, this.type = e.type, this.style = e.style, this.width = e.width, this.maxWidth = e.maxWidth, this.infoWidth = e.infoWidth, this.height = e.height, this.maxHeight = e.maxHeight, this.infoHeight = e.infoHeight, this.margins = e.margins, this.ratio = e.ratio, this.cropRatio = e.cropRatio, this.cubeImages = e.isCropped, this.cubeType = e.cropType || a.a.resizeMethods.FILL, this.offset = e.offset, this.group = e.group, this.orientation = e.orientation, this.visibility = e.visibility
                }, e.prototype.renderProps = function(e) {
                    var t = Object(r.a)({
                            ratio: this.ratio,
                            bgColor: this.bgColor,
                            maxWidth: this.maxWidth,
                            maxHeight: this.maxHeight,
                            infoWidth: this.infoWidth,
                            infoHeight: this.infoHeight,
                            orientation: this.orientation
                        }, this.style),
                        i = Object(r.a)({
                            className: "image",
                            key: this.key,
                            idx: this.idx,
                            photoId: this.photoId,
                            id: this.id,
                            hash: this.id,
                            html: this.html,
                            type: this.type,
                            isVideoPlaceholder: this.isVideoPlaceholder,
                            url: this.url,
                            alt: this.alt,
                            calculatedAlt: this.calculatedAlt,
                            htmlContent: this.htmlContent,
                            directLink: this.directLink,
                            directShareLink: this.directShareLink,
                            linkUrl: this.linkUrl,
                            linkType: this.linkType,
                            linkOpenType: this.linkOpenType,
                            linkData: this.linkData,
                            title: this.title,
                            fileName: this.fileName,
                            description: this.description,
                            createUrl: this.createUrl,
                            createMagnifiedUrl: this.createMagnifiedUrl,
                            cubeImages: this.cubeImages,
                            cubeType: this.cubeType,
                            cropRatio: this.cropRatio,
                            isTransparent: this.isTransparent,
                            offset: this.offset,
                            style: t,
                            isDemo: this.isDemo,
                            videoUrl: this.videoUrl,
                            isExternalVideo: this.isExternalVideo,
                            hasSecondaryMedia: this.hasSecondaryMedia
                        }, e);
                    return this.hasSecondaryMedia && (i.secondaryMediaItem = Object(r.a)(Object(r.a)({}, this.secondaryMediaItem.renderProps()), {
                        style: Object(r.a)(Object(r.a)({}, t), {
                            bgColor: this.secondaryMediaItem.bgColor
                        })
                    })), i
                }, e.prototype.getDataForShop = function() {
                    var e = this.focalPoint,
                        t = this.metadata;
                    return {
                        isDemo: t.isDemo,
                        orderIndex: this.orderIndex,
                        itemId: this.dto.itemId,
                        itemUrl: this.url,
                        itemHeight: t.height,
                        title: t.title,
                        itemWidth: t.width,
                        itemType: t.type || "image",
                        imageUrl: this.processedMediaUrl(a.a.resizeMethods.FIT, 200, 200, null, null).img(),
                        imagePurchasedUrl: this.dto.mediaUrl,
                        fpX: e[0],
                        fpY: e[1]
                    }
                }, e.prototype.getHighestMp4Resolution = function(e) {
                    var t = e.filter((function(e) {
                        return "mp4" === e.formats[0]
                    })).sort((function(e, t) {
                        return t.width - e.width
                    }))[0];
                    return {
                        width: t.width,
                        height: t.height
                    }
                }, e.prototype.processedMediaUrl = function(e, t, i, n, s) {
                    var l, u = this;
                    void 0 === s && (s = !1);
                    var c = function(e, t, i, r, a, n, l) {
                        var c;
                        if (void 0 === n && (n = null), void 0 === l && (l = null), "function" == typeof u.createMediaUrl) try {
                            var h = String(o.a.hashCode(JSON.stringify({
                                url: t,
                                resizeMethod: i,
                                requiredWidth: r,
                                requiredHeight: a,
                                sharpParams: n,
                                focalPoint: l
                            })));
                            u._cachedUrls[h] || (u._cachedUrls[h] = u.createMediaUrl({
                                item: e,
                                originalUrl: t,
                                resizeMethod: i,
                                requiredWidth: r,
                                requiredHeight: a,
                                sharpParams: n,
                                focalPoint: l,
                                createMultiple: s
                            }) || ""), c = u._cachedUrls[h]
                        } catch (o) {
                            console.error("Cannot create url", o, e, t, i, r, a, n, l), c = String(t)
                        } else c = String(t);
                        return c
                    };
                    t = Math.ceil(t), i = Math.ceil(i);
                    var h = e === a.a.resizeMethods.FILL && this.isCropped && this.focalPoint,
                        p = {},
                        d = this.url;
                    return this.isText ? Object.assign.apply(Object, Object(r.e)([{}], Object.values(a.a.urlTypes).map((function(e) {
                        var t;
                        return (t = {})[e] = function() {
                            return ""
                        }, t
                    })))) : ((this.isVideo || this.isVideoPlaceholder) && (d = null === (l = this.poster) || void 0 === l ? void 0 : l.url, o.a.isExternalUrl(this.url) ? p[a.a.urlTypes.VIDEO] = function() {
                        return u.url
                    } : p[a.a.urlTypes.VIDEO] = function() {
                        return c(u, u.url, a.a.resizeMethods.VIDEO, t, i)
                    }), p[a.a.urlTypes.HIGH_RES] = function() {
                        return c(u, d, e, t, i, n, h)
                    }, p[a.a.urlTypes.LOW_RES] = function() {
                        return c(u, d, u.cubeImages && e !== a.a.resizeMethods.FIT ? a.a.resizeMethods.FILL : a.a.resizeMethods.FIT, 250, 250, Object(r.a)(Object(r.a)({}, n), {
                            quality: 30,
                            blur: 30
                        }), h)
                    }, p)
                }, e.prototype.resetUrls = function() {
                    var e = this.maxWidth || this.dto.width || this.metadata.width,
                        t = this.maxHeight || this.dto.height || this.metadata.height;
                    this.resizeWidth = Math.min(e, Math.ceil(this.width)), this.resizeHeight = Math.min(t, Math.ceil(this.height)), this._cachedUrls = {}, this.urls = {}
                }, e.prototype.createUrl = function(e, t) {
                    try {
                        return this[e + "_url"][t]()
                    } catch (e) {
                        return ""
                    }
                }, e.prototype.createMagnifiedUrl = function(e) {
                    if (void 0 === e && (e = 1), !this.urls.magnified_url) {
                        var t = this.style,
                            i = t.innerWidth,
                            r = t.innerHeight;
                        this.urls.magnified_url = this.processedMediaUrl(this.cubeType, i * e, r * e, this.sharpParams, !0)
                    }
                    return this.urls.magnified_url[a.a.urlTypes.HIGH_RES]()
                }, Object.defineProperty(e.prototype, "resized_url", {get: function() {
                        return this.urls.resized_url || (this.urls.resized_url = this.processedMediaUrl(this.cubeType, this.resizeWidth, this.resizeHeight, this.sharpParams)), this.urls.resized_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "multi_url", {get: function() {
                        return this.urls.multi_url || (this.urls.multi_url = this.processedMediaUrl(this.cubeType, this.resizeWidth, this.resizeHeight, this.sharpParams, !0)), this.urls.multi_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scaled_url", {get: function() {
                        if (!this.urls.scaled_url) {
                            var e = this.maxWidth / this.maxHeight,
                                t = this.resizeWidth / this.resizeHeight < e;
                            this.urls.scaled_url = this.processedMediaUrl(a.a.resizeMethods.FILL, t ? e * this.resizeHeight : this.resizeWidth, t ? this.resizeHeight : this.resizeWidth / e, this.sharpParams)
                        }
                        return this.urls.scaled_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "pixel_url", {get: function() {
                        return this.urls.pixel_url || (this.urls.pixel_url = this.processedMediaUrl(a.a.resizeMethods.FILL, 1, 1, {
                            quality: 5
                        })), this.urls.pixel_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "thumbnail_url", {get: function() {
                        return this.urls.thumbnail_url || (this.urls.thumbnail_url = this.processedMediaUrl(a.a.resizeMethods.FILL, this.thumbnailSize, this.thumbnailSize, {
                            quality: 70
                        })), this.urls.thumbnail_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "square_url", {get: function() {
                        return this.urls.square_url || (this.urls.square_url = this.processedMediaUrl(a.a.resizeMethods.FILL, 100, 100, {
                            quality: 80
                        })), this.urls.square_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "full_url", {get: function() {
                        return this.urls.full_url || (this.urls.full_url = this.processedMediaUrl(a.a.resizeMethods.FULL, this.maxWidth, this.maxHeight, this.sharpParams)), this.urls.full_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "sample_url", {get: function() {
                        return this.urls.sample_url || (this.urls.sample_url = this.processedMediaUrl(a.a.resizeMethods.FIT, 500, 500, this.sharpParams)), this.urls.sample_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "preload_url", {get: function() {
                        return this.urls.preload_url || (this.urls.preload_url = this.processed_url), this.urls.preload_url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "download_url", {get: function() {
                        return this.createDownloadUrl(this.full_url)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "download_sample_url", {get: function() {
                        return this.createDownloadUrl(this.sample_url)
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.createDownloadUrl = function(e) {
                    var t = this;
                    return this.urls.download_url || (this.urls.download_url = e, this.urls.download_url._img = this.urls.download_url.img, this.urls.download_url.img = function() {
                        var e = t.urls.download_url._img();
                        return e + (e.includes("?") ? "&" : "?") + "dn=" + t.fileName
                    }), this.urls.download_url
                }, e.prototype.updateSharpParams = function() {
                    if (this.dto.metaData && this.dto.metaData.sharpParams && this.dto.metaData.sharpParams.L) {
                        var e = this.dto.metaData.sharpParams.L;
                        e.quality && !0 === e.overrideQuality && (this.sharpParams.quality = e.quality), e.usm && !0 === e.overrideUsm && (this.sharpParams.usm = e.usm)
                    }
                }, Object.defineProperty(e.prototype, "hasSecondaryMedia", {get: function() {
                        return !!this.secondaryMediaItem
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "itemId", {get: function() {
                        return this.id
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.updateId = function(e) {
                    this.dto.itemId = this.id = e
                }, Object.defineProperty(e.prototype, "metadata", {get: function() {
                        var e = this.dto.metaData || this.dto.metadata;
                        return o.a.isUndefined(e) && (e = {}), e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "metaData", {get: function() {
                        return this.metadata
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "bgColor", {get: function() {
                        return this.isText ? this.metadata && (this.metadata.textStyle && this.metadata.textStyle.backgroundColor || this.metadata.backgroundColor) : "none"
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isCropped", {get: function() {
                        return this.cubeImages && this.cubeType === a.a.resizeMethods.FILL
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "focalPoint", {get: function() {
                        return this.metadata.focalPoint || [.5, .5]
                    },
                    set: function(e) {
                        this.metadata.focalPoint = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "photoId", {get: function() {
                        return this.id
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "key", {get: function() {
                        return this._key || (this._key = (this.dto.key || this.id || this.dto.url || "no_key_found").replace(/\W/g, "")), this._key
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "orderIndex", {get: function() {
                        return this.dto.orderIndex || this.dto.o || 0
                    },
                    set: function(e) {
                        this.dto.orderIndex = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.updateOrderIndex = function(e) {
                    var t = this.orderIndex !== e;
                    return this.orderIndex = e, t
                }, Object.defineProperty(e.prototype, "url", {get: function() {
                        return this.dto.file_url || this.dto.mediaUrl || this.dto.url || this.dto.src || ""
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "mediaUrl", {get: function() {
                        return this.url
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "html", {get: function() {
                        return this.dto.html || this.dto.text || this.metadata.html || this.metadata.text
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "lastModified", {get: function() {
                        return this.metadata.lastModified
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "seed", {get: function() {
                        return o.a.hashToInt(this.url)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isImage", {get: function() {
                        return "image" === this.type
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isImportant", {get: function() {
                        return !!this.dto.i
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "videoUrl", {get: function() {
                        return this.metadata.videoUrl
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "poster", {get: function() {
                        return this.metadata.poster || this.metadata.customPoster && this.metadata.customPoster || (this.metadata.posters ? this.metadata.posters[this.metadata.posters.length - 1] : null)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "qualities", {get: function() {
                        return this.metadata.qualities
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isExternalVideo", {get: function() {
                        return this.metadata.isExternal
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isExternal", {get: function() {
                        return !0 === this.metadata.isExternal
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "type", {get: function() {
                        switch (this._type || this.dto.type || this.metadata.type || this.dto.media_type) {
                            case "dummy":
                                return "dummy";
                            case "v":
                            case "video":
                                return "video";
                            case "h":
                            case "html":
                            case "text":
                                return "text";
                            case "i":
                            case "image":
                            default:
                                return "image"
                        }
                    },
                    set: function(e) {
                        this._type = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isVideoPlaceholder", {get: function() {
                        return !!(this.dto.isVideoPlaceholder || this.metadata.isVideoPlaceholder || this.dto.media_isVideoPlaceholder)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "calculatedAlt", {get: function() {
                        return o.a.isMeaningfulString(this.alt) && this.alt || this.title || this.description || this.fileName || ""
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "htmlContent", {get: function() {
                        var e;
                        return null === (e = this.html) || void 0 === e ? void 0 : e.replace(/<[^<>]*>/g, "").trim()
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "alt", {get: function() {
                        return this.metadata.alt || ""
                    },
                    set: function(e) {
                        this.metadata.alt = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "title", {get: function() {
                        return this.metadata.title || ""
                    },
                    set: function(e) {
                        this.metadata.title = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "fileName", {get: function() {
                        return this.metadata.fileName || ""
                    },
                    set: function(e) {
                        this.metadata.fileName = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "description", {get: function() {
                        return this.metadata.description || ""
                    },
                    set: function(e) {
                        this.metadata.description = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "exif", {get: function() {
                        return this.metadata.exif || ""
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "hasLink", {get: function() {
                        switch (this.linkType) {
                            case "wix":
                                return !!this.linkData.type;
                            default:
                                return !!this.linkUrl
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "link", {get: function() {
                        return this.metadata.link || {}
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkData", {get: function() {
                        return this.metadata.link && this.metadata.link.data ? this.metadata.link.data : this.isWixUrl ? {
                            type: "web",
                            url: this.linkUrl
                        } : {}
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link.data = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkType", {get: function() {
                        return this.metadata.link && !o.a.isUndefined(this.metadata.link.type) ? this.metadata.link.type : this.linkUrl ? "web" : "none"
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link = {
                            type: e,
                            url: void 0,
                            text: void 0,
                            title: void 0,
                            target: "_blank"
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "defaultLinkText", {get: function() {
                        var e = this.linkData;
                        switch (this.linkType) {
                            case "wix":
                                if (!e) return "Go to Link";
                                switch (e.type) {
                                    case "PageLink":
                                        return "Go to Page " + e.pageName;
                                    case "AnchorLink":
                                        return "Scroll to " + e.anchorName;
                                    case "ExternalLink":
                                        return "" + e.url;
                                    case "EmailLink":
                                        return "Email " + e.recipient;
                                    case "PhoneLink":
                                        return "Call " + e.phoneNumber;
                                    case "DocumentLink":
                                        return "Open " + e.name;
                                    default:
                                        return "Go to Link"
                                }
                            case "web":
                                return this.linkTitleFromUrl || this.linkUrl;
                            case "page":
                                return this.linkTitle;
                            default:
                                return ""
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "defaultLinkValue", {get: function() {
                        var e = this.linkData;
                        switch (this.linkType) {
                            case "wix":
                                if (!e) return "Add a Link";
                                switch (e.type) {
                                    case "PageLink":
                                        return e.pageName ? "PAGE - " + e.pageName : "PAGE";
                                    case "AnchorLink":
                                        return "ANCHOR - " + e.anchorName;
                                    case "ExternalLink":
                                        return "LINK - " + e.url;
                                    case "EmailLink":
                                        return "EMAIL - " + e.recipient;
                                    case "PhoneLink":
                                        return "PHONE - " + e.phoneNumber;
                                    case "DocumentLink":
                                        return "DOCUMENT - " + e.name;
                                    default:
                                        return "Add a Link"
                                }
                            case "web":
                                return this.linkUrl;
                            case "page":
                                return this.linkTitle;
                            default:
                                return ""
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkText", {get: function() {
                        return this.metadata.link && this.metadata.link.text || this.defaultLinkText
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link.text = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkTitle", {get: function() {
                        return this.metadata.link && this.metadata.link.title
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link.title = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkUrl", {get: function() {
                        return this.metadata.link && this.metadata.link.url
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link.url = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isWixUrl", {get: function() {
                        return this.linkUrl && 0 === this.linkUrl.indexOf("wix")
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkTitleFromUrl", {get: function() {
                        var e = /[^/]*\.\w+$/g.exec(this.linkUrl),
                            t = e && e[0];
                        return t && t.split(".")[0]
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "unprotectedLinkOpenType", {get: function() {
                        return o.a.get(this, "metadata.link.target")
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "linkOpenType", {get: function() {
                        return this.metadata.link && !o.a.isUndefined(this.metadata.link.target) ? this.unprotectedLinkOpenType : this.metadata.link && !o.a.isUndefined(this.metadata.link.targetBlank) ? this.metadata.link.targetBlank ? "_blank" : "_top" : "_blank"
                    },
                    set: function(e) {
                        this.metadata.link || (this.metadata.link = {}), this.metadata.link.target = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "initialLinkObject", {get: function() {
                        return {
                            type: "none",
                            url: void 0,
                            text: void 0,
                            title: void 0,
                            target: "_blank"
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isDemo", {get: function() {
                        return this.metadata.isDemo || this.dto.isDemo || "public" === this.metadata.sourceName || this.metadata.tags && Array.isArray(this.metadata.tags) && this.metadata.tags.indexOf("_paid") >= 0
                    },
                    set: function(e) {
                        this.metadata.isDemo = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isText", {get: function() {
                        return "text" === this.type
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isVideo", {get: function() {
                        return "video" === this.type
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isVisible", {get: function() {
                        return !0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isRendered", {get: function() {
                        return !0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isDimensionless", {get: function() {
                        return !(this.maxWidth > 1 || this.maxHeight > 1)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isTransparent", {get: function() {
                        return this.url && (this.url.indexOf(".png") > 0 || this.url.indexOf(".gif") > 0)
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "webLink", {get: function() {
                        var e;
                        return (null === (e = this.linkUrl) || void 0 === e ? void 0 : e.length) > 0 && "web" === this.linkType ? {
                            url: this.linkUrl,
                            target: this.linkOpenType
                        } : {}
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "directLink", {get: function() {
                        return this.dto.directLink || this.webLink || {}
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "directShareLink", {get: function() {
                        return this.dto.directShareLink || ""
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            h = {
                lll: "1,2h",
                llp: "1,3r",
                lpl: "1,2h",
                pll: "1,2h,3l",
                lpp: "1,2h,3r,3h",
                plp: "1,2h,3l,3r,3h",
                ppl: "1,2h,3l,3h",
                ppp: "1,2h,3l,3r,3h"
            },
            p = {
                lll: "1,2v,3t,3b,3v",
                llp: "1,2v,3t,3v",
                lpl: "1,2v,3t,3b,3v",
                pll: "1,2v,3b,3v",
                lpp: "1,2v,3t",
                plp: "1,2v",
                ppl: "1,3b",
                ppp: "1,2h"
            },
            d = {
                1: [
                    [1]
                ],
                2: [
                    [1],
                    [1, 2],
                    [2]
                ],
                3: [
                    [1],
                    [1, 2],
                    [1, 2, 3],
                    [2, 3],
                    [3]
                ]
            },
            m = function() {
                function e(e) {
                    var t = this;
                    if (this.idx = e.idx, this.stripIdx = e.stripIdx, this.inStripIdx = e.inStripIdx, this.top = e.top, this.showAllItems = e.showAllItems, this.isLastItems = e.isLastItems, this.dummyItems = [], this.targetItemSize = e.targetItemSize, this.items = e.items.map((function(e) {
                            return e.Group = t, e
                        })), e.styleParams) {
                        var i = e.styleParams;
                        this.scrollDirection = i.scrollDirection, this.cubeType = i.cubeType, this.cubeImages = i.cubeImages, this.isVertical = i.isVertical, this.minItemSize = i.minItemSize, this.collageAmount = i.collageAmount, this.collageDensity = i.collageDensity, this.groupTypes = String(i.groupTypes), this.repeatingGroupTypes = String(i.layoutParams.repeatingGroupTypes), this.rotatingCropRatios = String(i.rotatingCropRatios), this.chooseBestGroup = i.chooseBestGroup, this.externalInfoHeight = i.externalInfoHeight, this.externalInfoWidth = i.externalInfoWidth, this.imageMargin = i.imageMargin, this.groupSize = i.groupSize
                    }
                    this.visible = !0, this.rendered = !0, this.required = !0;
                    for (var r = this.items.length; !this.isWithinMinItemSize && r > 0;) this.placeItems(r), this.resize(), r--
                }
                return e.prototype.resize = function() {
                    this.isVertical ? this.resizeToWidth(this.targetItemSize) : this.resizeToHeight(this.targetItemSize), this.setLeft(this.left), this.setTop(this.top)
                }, e.prototype.safeGetItem = function(e) {
                    if (this.items[e]) return this.items[e];
                    if (this.dummyItems[e]) return this.dummyItems[e];
                    var t = new u(Object(r.a)({}, this.items[this.items.length - 1].config));
                    return t.idx = t.config.idx + e - (this.items.length - 1), t.type = "dummy", this.dummyItems[e] = t, t
                }, e.prototype.setCubedHeight = function(e) {
                    var t = this.cubeImages && 1 === this.groupSize && ["fill", "fit"].includes(this.cubeType) && 0 === this.repeatingGroupTypes.length && 0 === this.rotatingCropRatios.length;
                    this.cubedHeight = t ? e : null
                }, e.prototype.round = function() {
                    this.isLastGroup && 0 === this.scrollDirection ? this.width = this.stripWidth - this.left : this.width = Math.round(this.width), this.height = Math.round(this.height);
                    for (var e = 0, t = this.items; e < t.length; e++) {
                        var i = t[e];
                        i.width = Math.round(i.width), i.height = Math.round(i.height), i.group = {
                            width: this.width,
                            height: this.height
                        }
                    }
                    var r = this.imageMargin;
                    switch (this.type) {
                        default:
                            case "1":
                            this.safeGetItem(0).width = this.width - r,
                        this.safeGetItem(0).height = this.height - r;
                        break;
                        case "2v":
                                this.safeGetItem(0).width = this.safeGetItem(1).width = this.width - r,
                            this.safeGetItem(0).height = this.height - this.safeGetItem(1).height - 2 * r;
                            break;
                        case "2h":
                                this.safeGetItem(0).height = this.safeGetItem(1).height = this.height - r,
                            this.safeGetItem(0).width = this.width - this.safeGetItem(1).width - 2 * r;
                            break;
                        case "3t":
                                this.safeGetItem(0).width = this.width - r,
                            this.safeGetItem(0).height = this.height - this.safeGetItem(1).height - 2 * r,
                            this.safeGetItem(1).width = this.width - this.safeGetItem(2).width - 2 * r,
                            this.safeGetItem(2).height = this.safeGetItem(1).height;
                            break;
                        case "3b":
                                this.safeGetItem(0).width = this.width - this.safeGetItem(1).width - 2 * r,
                            this.safeGetItem(1).height = this.safeGetItem(0).height,
                            this.safeGetItem(2).height = this.height - this.safeGetItem(1).height - 2 * r,
                            this.safeGetItem(2).width = this.width - r;
                            break;
                        case "3l":
                                this.safeGetItem(1).height = this.height - this.safeGetItem(2).height - 2 * r,
                            this.safeGetItem(2).width = this.safeGetItem(1).width,
                            this.safeGetItem(0).width = this.width - this.safeGetItem(1).width - 2 * r,
                            this.safeGetItem(0).height = this.height - r;
                            break;
                        case "3r":
                                this.safeGetItem(0).height = this.height - this.safeGetItem(1).height - 2 * r,
                            this.safeGetItem(1).width = this.safeGetItem(0).width,
                            this.safeGetItem(2).width = this.width - this.safeGetItem(1).width - 2 * r,
                            this.safeGetItem(2).height = this.height - r;
                            break;
                        case "3v":
                                this.safeGetItem(0).width = this.width - r,
                            this.safeGetItem(1).width = this.width - r,
                            this.safeGetItem(2).width = this.width - r,
                            this.safeGetItem(2).height = this.height - this.safeGetItem(0).height - this.safeGetItem(1).height - 3 * r;
                            break;
                        case "3h":
                                this.safeGetItem(0).height = this.height - r,
                            this.safeGetItem(1).height = this.height - r,
                            this.safeGetItem(2).height = this.height - r,
                            this.safeGetItem(2).width = this.width - this.safeGetItem(0).width - this.safeGetItem(1).width - 3 * r
                    }
                }, e.prototype.getGroupType = function(e) {
                    if (this.repeatingGroupTypes) {
                        var t = String(this.repeatingGroupTypes).split(",");
                        return t[this.idx % t.length]
                    }
                    var i = this.isVertical,
                        r = void 0;
                    if (this.chooseBestGroup) {
                        var o = this.items.map((function(e) {
                            return e.orientation.slice(0, 1)
                        })).join("");
                        r = (i ? h : p)[o]
                    } else 3 !== this.items.length && 3 !== e || (r = i ? "1,2h,3l,3r,3h" : "1,2v,3t,3b,3v");
                    2 !== this.items.length && 2 !== e || (r = i ? "1,2h" : "1,2v"), 1 !== this.items.length && 1 !== e || (r = "1");
                    var a = r.length > 0 ? r.split(",") : [];
                    if (this.groupTypes) {
                        var n = this.groupTypes.split(",");
                        n.length > 1 ? 0 === (a = a.filter((function(e) {
                            return n.indexOf(e) >= 0
                        }))).length && (a = ["1"]) : a = n
                    }
                    if (this.collageDensity >= 0) {
                        var s = this.collageDensity,
                            l = parseInt(a[a.length - 1]),
                            u = d[l],
                            c = u[Math.floor(s * (u.length - 1))];
                        0 === (a = a.filter((function(e) {
                            return c.indexOf(parseInt(e)) >= 0
                        }))).length && (a = ["1"])
                    }
                    return a[this.calculateRandomSeed(a.length)] || "1"
                }, e.prototype.calculateRandomSeed = function(e) {
                    var t;
                    return t = this.isVertical ? this.items[0].seed % e : (this.inStripIdx + this.stripIdx) % e, Math.round(Math.min(Math.max(0, t), e - 1))
                }, e.prototype.placeItems = function(e) {
                    this.type = this.getGroupType(e);
                    var t, i = [],
                        r = 0,
                        o = 0;
                    switch (this.type) {
                        default:
                            case "1":
                            (t = this.safeGetItem(0)).pinToCorner("top-left"),
                        i.push(t),
                        r = t.width,
                        o = t.height;
                        break;
                        case "2v":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(1)).pinToCorner("bottom-left"),
                            t.resize(r / t.width),
                            o += t.height,
                            i.push(t);
                            break;
                        case "2h":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            t.innerOffset = [0, 0],
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(1)).pinToCorner("top-right"),
                            t.innerOffset = [0, 0],
                            t.resize(o / t.height),
                            r += t.width,
                            i.push(t);
                            break;
                        case "3b":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(1)).pinToCorner("top-right"),
                            t.resize(o / t.height),
                            r += t.width,
                            i.push(t),
                            (t = this.safeGetItem(2)).pinToCorner("bottom-left"),
                            t.resize(r / t.width),
                            o += t.height,
                            i.push(t);
                            break;
                        case "3t":
                                (t = this.safeGetItem(1)).pinToCorner("bottom-left"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(2)).pinToCorner("bottom-right"),
                            t.resize(o / t.height),
                            r += t.width,
                            i.push(t),
                            (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            t.resize(r / t.width),
                            o += t.height,
                            i = [t].concat(i);
                            break;
                        case "3r":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(1)).pinToCorner("bottom-left"),
                            t.resize(r / t.width),
                            o += t.height,
                            i.push(t),
                            (t = this.safeGetItem(2)).pinToCorner("top-right"),
                            t.resize(o / t.height),
                            r += t.width,
                            i.push(t);
                            break;
                        case "3l":
                                (t = this.safeGetItem(1)).pinToCorner("top-right"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(2)).pinToCorner("bottom-right"),
                            t.resize(r / t.width),
                            o += t.height,
                            i.push(t),
                            (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            t.resize(o / t.height),
                            r += t.width,
                            i = [t].concat(i);
                            break;
                        case "3v":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            t.setPosition("relative"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(2)).pinToCorner("bottom-left"),
                            t.setPosition("relative"),
                            t.resize(r / t.width),
                            o += t.height,
                            i.push(t),
                            (t = this.safeGetItem(1)).setPosition("relative"),
                            t.resize(r / t.width),
                            o += t.height,
                            t.pinToCorner("top", i[0]),
                            i = [i[0], t, i[1]];
                            break;
                        case "3h":
                                (t = this.safeGetItem(0)).pinToCorner("top-left"),
                            t.setPosition("relative"),
                            i.push(t),
                            r = t.width,
                            o = t.height,
                            (t = this.safeGetItem(2)).pinToCorner("top-right"),
                            t.setPosition("relative"),
                            t.resize(o / t.height),
                            r += t.width,
                            i.push(t),
                            (t = this.safeGetItem(1)).setPosition("relative"),
                            t.resize(o / t.height),
                            r += t.width,
                            t.pinToCorner("left", i[0]),
                            i = [i[0], t, i[1]]
                    }
                    this.width = r, this.height = o, this.items = i, this.placed = !0
                }, e.prototype.resizeToHeight = function(e) {
                    this.height = e, this.width = this.getWidthByHeight(e), this.resizeItems()
                }, e.prototype.resizeToWidth = function(e) {
                    this.width = e, this.height = this.getHeightByWidth(e), this.resizeItems()
                }, e.prototype.resizeItems = function() {
                    var e = this,
                        t = ["3b", "3r"].indexOf(this.type) >= 0 ? this.items.slice().reverse() : this.items;
                    t.forEach((function(i, r) {
                        i.resize(e.getItemDimensions(t, r)), i.group = {
                            top: e.top,
                            left: e.left,
                            width: e.width,
                            height: e.height
                        }, i.groupOffset = {
                            bottom: e.top + e.height,
                            right: e.left + e.width
                        }
                    }))
                }, e.prototype.getItemDimensions = function(e, t) {
                    var i = this.imageMargin;
                    switch (this.type) {
                        default:
                            case "1":
                            case "2v":
                            case "3v":
                            return {
                            width: this.width - i
                        };
                        case "2h":
                                case "3h":
                                return {
                                height: this.height - i
                            };
                        case "3t":
                                case "3b":
                                return 0 === t ? {
                                width: this.width - i
                            } : {
                                height: this.height - e[0].height - 2 * i
                            };
                        case "3r":
                                case "3l":
                                return 0 === t ? {
                                height: this.height - i
                            } : {
                                width: this.width - e[0].width - 2 * i
                            }
                    }
                }, e.prototype.getHeightByWidth = function(e) {
                    var t = 1,
                        i = 1,
                        r = this.imageMargin,
                        o = this.items.map((function(e) {
                            return e.width / e.height
                        }));
                    switch (this.type) {
                        default:
                            case "1":
                            i = 1 - (t = 1 / o[0]);
                        break;
                        case "2h":
                                i = 1 - 2 * (t = 1 / (o[0] + o[1]));
                            break;
                        case "2v":
                                i = 2 - (t = 1 / o[0] + 1 / o[1]);
                            break;
                        case "3h":
                                i = 1 - 3 * (t = 1 / (o[0] + o[1] + o[2]));
                            break;
                        case "3v":
                                i = 3 - (t = 1 / o[0] + 1 / o[1] + 1 / o[2]);
                            break;
                        case "3t":
                                t = 1 / (o[2] + o[1]) + 1 / o[0],
                            i = 2 - 2 / (o[2] + o[1]) + 1 / o[0];
                            break;
                        case "3b":
                                t = 1 / (o[0] + o[1]) + 1 / o[2],
                            i = 2 - 2 / (o[0] + o[1]) + 1 / o[2];
                            break;
                        case "3l":
                                i = 2 - (t = (o[1] + o[2]) / (o[0] * o[1] + o[1] * o[2] + o[0] * o[2])) * (2 + o[0]);
                            break;
                        case "3r":
                                i = 2 - (t = (o[0] + o[1]) / (o[0] * o[1] + o[1] * o[2] + o[0] * o[2])) * (2 + o[2])
                    }
                    return e * t + r * i
                }, e.prototype.getWidthByHeight = function(e) {
                    var t = 1,
                        i = 1,
                        r = this.imageMargin,
                        o = this.items.map((function(e) {
                            return e.width / e.height
                        }));
                    switch (this.type) {
                        default:
                            case "1":
                            i = 1 - (t = o[0]);
                        break;
                        case "2h":
                                i = 2 - (t = o[0] + o[1]);
                            break;
                        case "2v":
                                i = 1 - 2 * (t = 1 / (1 / o[0] + 1 / o[1]));
                            break;
                        case "3h":
                                i = 3 - (t = o[0] + o[1] + o[2]);
                            break;
                        case "3v":
                                i = 1 - 3 * (t = 1 / (1 / o[0] + 1 / o[1] + 1 / o[2]));
                            break;
                        case "3t":
                                t = 1 / (1 / (o[2] + o[1]) + 1 / o[0]),
                            i = (2 / (o[2] + o[1]) + 1 / o[0] - 2) * t;
                            break;
                        case "3b":
                                t = 1 / (1 / (o[0] + o[1]) + 1 / o[2]),
                            i = (2 / (o[0] + o[1]) + 1 / o[2] - 2) * t;
                            break;
                        case "3l":
                                t = (o[0] * o[1] + o[1] * o[2] + o[0] * o[2]) / (o[1] + o[2]),
                            i = 2 + o[0] - 2 * t;
                            break;
                        case "3r":
                                t = (o[0] * o[1] + o[1] * o[2] + o[0] * o[2]) / (o[0] + o[1]),
                            i = 2 + o[2] - 2 * t
                    }
                    return e * t + r * i
                }, e.prototype.setTop = function(e) {
                    this.top = e || 0;
                    for (var t = 0, i = this.items; t < i.length; t++) {
                        i[t].groupOffset = {
                            top: e,
                            bottom: e + this.height
                        }
                    }
                }, e.prototype.setLeft = function(e) {
                    this.left = e || 0;
                    for (var t = 0, i = this.items; t < i.length; t++) {
                        i[t].groupOffset = {
                            left: e,
                            right: e + this.width
                        }
                    }
                }, Object.defineProperty(e.prototype, "id", {get: function() {
                        return "g" + this.idx + "_" + (this.items[0] || {}).id
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "ratio", {get: function() {
                        return this.width / this.height
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "height", {get: function() {
                        return this.cubedHeight || this._height
                    },
                    set: function(e) {
                        this._height = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "totalHeight", {get: function() {
                        return this.height + this.infoHeight
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "infoHeight", {get: function() {
                        return this.externalInfoHeight || 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "infoWidth", {get: function() {
                        return this.Column ? this.Column.infoWidth : this.externalInfoWidth || 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "bottom", {get: function() {
                        return this.top + this.height
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "right", {get: function() {
                        return this.left + this.width
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "items", {get: function() {
                        return this._items
                    },
                    set: function(e) {
                        this._items = e
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "realItems", {get: function() {
                        return this._items.filter((function(e) {
                            return "dummy" !== e.type
                        }))
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isWithinMinItemSize", {get: function() {
                        var e = this;
                        return !(0 === this.items.length || !this.placed) && (1 === this.items.length || this.items.reduce((function(t, i) {
                            var r = Math.min(i.width, i.height) >= e.minItemSize;
                            return t && r
                        }), !0))
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scheme", {get: function() {
                        return {
                            id: this.id,
                            idx: this.idx,
                            stripIdx: this.stripIdx,
                            inStripIdx: this.inStripIdx,
                            isLastGroup: this.isLastGroup,
                            items: this.items.map((function(e) {
                                return e.scheme
                            })),
                            type: this.type,
                            width: this.width,
                            height: this.height,
                            infoHeight: this.infoHeight,
                            infoWidth: this.infoWidth,
                            ratio: this.ratio,
                            top: this.top,
                            left: this.left,
                            right: this.right,
                            bottom: this.bottom,
                            visible: this.visible,
                            rendered: this.rendered,
                            required: this.required
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            g = function() {
                function e(e) {
                    this.uniqueId = o.a.generateUUID(), this.isGalleryGroup = !0, e.dto && e.dto.dto && (e.dto = e.dto.dto, o.a.isDev() && console.warn("Item core is created with already existing item core")), this.dto = Object.assign({}, e.dto), e.scheme ? this.processScheme(e.scheme) : this.processScheme(new m({
                        dto: e.dto
                    }).scheme), e.items ? this.items = e.items : console.warn("Pro Gallery created Gallery Group without items", e)
                }
                return e.prototype.processScheme = function(e) {
                    this.id = e.id, this.idx = e.idx, this.width = e.width, this.height = e.height, this.totalHeight = e.totalHeight, this.ratio = e.ratio, this.top = e.top, this.left = e.left, this.right = e.right, this.bottom = e.bottom, this.visible = e.visible, this.rendered = e.rendered, this.required = e.required
                }, e.prototype.renderProps = function(e) {
                    return {
                        className: "group",
                        id: this.id,
                        idx: this.idx,
                        key: this.key,
                        type: this.type,
                        top: this.top,
                        left: this.left,
                        right: this.right,
                        bottom: this.bottom,
                        width: this.width,
                        height: this.height,
                        totalHeight: this.totalHeight,
                        items: this.items,
                        visible: this.visible,
                        rendered: this.rendered,
                        required: this.required,
                        galleryConfig: e
                    }
                }, Object.defineProperty(e.prototype, "key", {get: function() {
                        return "group_" + this.id
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            y = function() {
                function e() {}
                return e.convertDtoToLayoutItem = function(e) {
                    if (!!(e.id && e.width > 0 && e.height > 0)) return e;
                    var t = e.metadata || e.metaData,
                        i = "object" == typeof t ? t : o.a.parseStringObject(t) || {};
                    return Object(r.a)({
                        id: e.itemId || e.photoId,
                        width: i.width,
                        height: i.height
                    }, e)
                }, e.convertToGalleryItems = function(e, t, i) {
                    void 0 === t && (t = {}), void 0 === i && (i = []), e.galleryItems = [];
                    for (var o = 0; o < e.columns.length; o++) {
                        var a = e.columns[o];
                        a.galleryGroups = [];
                        for (var n = a.groups || a, s = 0; s < n.length; s++) {
                            for (var l = n[s], u = [], h = 0; h < l.items.length; h++) {
                                var p = l.items[h],
                                    d = Object(r.a)({
                                        scheme: p,
                                        dto: p.dto
                                    }, t),
                                    m = i[p.idx],
                                    y = void 0;
                                m && m.id && m.id === p.id ? (y = m).update(d) : y = new c(d), u[h] = y, e.galleryItems[p.idx] = u[h]
                            }
                            a.galleryGroups[s] = new g({
                                scheme: l,
                                dto: l.dto,
                                items: u
                            })
                        }
                    }
                    return e
                }, e.convertExistingStructureToGalleryItems = function(e, t, i) {
                    void 0 === i && (i = {}), o.a.isVerbose() && console.time("convertToGalleryItems"), e.galleryItems || (e.galleryItems = []);
                    var r = e.columns.slice(-1)[0].galleryGroups.pop();
                    r && e.galleryItems.splice(-r.items.length);
                    for (var a = 0; a < t.columns.length; a++) {
                        var n = t.columns[a],
                            s = e.columns[a] || n;
                        s.galleryGroups || (s.galleryGroups = []);
                        for (var l = n.groups || n, u = 0; u < l.length; u++) {
                            for (var h = l[u], p = [], d = 0; d < h.items.length; d++) {
                                var m = h.items[d];
                                e.galleryItems[m.idx] ? e.galleryItems[m.idx].processScheme(m) : (p[d] = new c(Object.assign({
                                    scheme: m,
                                    dto: m.dto
                                }, i)), e.galleryItems[m.idx] = p[d])
                            }
                            s.galleryGroups[u] ? s.galleryGroups[u].processScheme(h) : s.galleryGroups[u] = new g({
                                scheme: h,
                                dto: h.dto,
                                items: p
                            })
                        }
                        n.galleryGroups = s.galleryGroups
                    }
                    return t.galleryItems = e.galleryItems, o.a.isVerbose() && console.timeEnd("convertToGalleryItems"), t
                }, e
            }(),
            f = function() {
                function e(e) {
                    this.ratio = 0, this.groups = [], this.width = 0, this.height = 0, this.isFullWidth = !0, this.idx = e.idx, this.groupsPerStrip = e.groupsPerStrip, this.scrollDirection = e.scrollDirection, this.targetItemSize = e.targetItemSize, this.container = e.container
                }
                return e.prototype.addGroup = function(e) {
                    this.hasGroups && (this.lastGroup.isLastGroup = !1), this.groups.push(e), e.stripIdx = this.idx, e.Strip = this, this.lastGroup.isLastGroup = !0, this.lastGroup.stripWidth = this.height * this.ratio
                }, e.prototype.markAsIncomplete = function() {
                    this.isFullWidth = !1, this.lastGroup.isLastGroup = !1
                }, e.prototype.canRemainIncomplete = function() {
                    return !(this.groupsPerStrip > 0) && 1.5 * this.targetItemSize < this.height
                }, e.prototype.setWidth = function(e) {
                    this.width = e, this.hasGroups && (this.lastGroup.stripWidth = e)
                }, e.prototype.resizeToHeight = function(e) {
                    this.height = e;
                    for (var t = 0, i = 0, r = 0, o = this.groups; r < o.length; r++) {
                        var a = o[r];
                        a.setLeft(t), a.width += i, a.resizeToHeight(e), i = a.width, a.round(), i -= a.width, t += a.width
                    }
                }, e.prototype.isFull = function(e, t) {
                    if (!this.hasGroups) return !1;
                    var i = this.groupsPerStrip,
                        r = this.scrollDirection,
                        o = this.targetItemSize;
                    if (i > 0) return this.groups.length >= i;
                    var a, n = this.container.galleryWidth;
                    if (1 === r) a = !1;
                    else {
                        var s = n / (this.ratio + e.ratio) - o,
                            l = n / this.ratio - o;
                        (a = !isNaN(s) && !isNaN(l) && (l < 0 || s < 0 && Math.abs(l) < Math.abs(s))) && t && (a = Number(Math.abs(l)) < Math.abs(s))
                    }
                    return a
                }, Object.defineProperty(e.prototype, "hasGroups", {get: function() {
                        return this.groups.length > 0
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "lastGroup", {get: function() {
                        return this.groups[this.groups.length - 1]
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scheme", {get: function() {
                        return {
                            idx: this.idx,
                            groups: this.groups.map((function(e) {
                                return e.scheme
                            })),
                            width: this.width,
                            height: this.height,
                            ratio: this.ratio,
                            isFullWidth: this.isFullWidth
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            b = function() {
                function e(e, t, i, r, o) {
                    this.idx = e, this.groups = [], this.height = 0, this.width = t, this.left = i, this.cubedHeight = r, this.infoWidth = o || 0
                }
                return e.prototype.addGroup = function(e) {
                    this.addGroups([e])
                }, e.prototype.addGroups = function(e) {
                    var t = this;
                    this.groups = this.groups.concat(e), e.forEach((function(e) {
                        e.columnIdx = t.idx, e.Column = t
                    }))
                }, Object.defineProperty(e.prototype, "totalWidth", {get: function() {
                        return this.width + this.infoWidth
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scheme", {get: function() {
                        return {
                            idx: this.idx,
                            groups: this.groups.map((function(e) {
                                return e.scheme
                            })),
                            width: this.width,
                            height: this.height
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            S = new(function() {
                function e() {}
                return Object.defineProperty(e.prototype, "layout", {get: function() {
                        return this._layout
                    },
                    set: function(e) {
                        this._layout = Object(r.a)({}, e)
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }()),
            v = function() {
                function e(e) {
                    this.ready = !1, this.pointer = 0, this.layoutItems = [], this.findNeighborItem = this.findNeighborItem.bind(this), this.updateParams(e), !1 !== this.createLayoutOnInit && this.createLayout(e)
                }
                return e.prototype.updateParams = function(e) {
                    this.srcItems = e.items, this.styleParams = l.addDefaultStyleParams(e.styleParams), this.container = l.convertContainer(e.container, this.styleParams);
                    var t = e.options || {};
                    this.useExistingLayout = !!t.useExistingLayout, this.createLayoutOnInit = t.createLayoutOnInit, this.showAllItems = !!t.showAllItems || !!e.showAllItems, this.useLayoutStore = !!t.useLayoutStore
                }, e.prototype.verifyGalleryState = function() {
                    if (!this.container.galleryWidth) throw this.ready = !1, new Error("Layouter: cannot create layout, galleryWidth is undefined or 0");
                    if (!this.styleParams.targetItemSize) throw this.ready = !1, new Error("Layouter: cannot create layout, targetItemSize is undefined or 0")
                }, e.prototype.calcNumberOfColumns = function(e, t) {
                    var i = 1;
                    if (this.styleParams.isVertical)
                        if (this.styleParams.fixedColumns > 0) i = this.styleParams.fixedColumns;
                        else {
                            var r = e / t,
                                o = [Math.floor, Math.ceil],
                                a = o.map((function(e) {
                                    return e(r)
                                })).map((function(t) {
                                    return Math.round(e / t)
                                })).map((function(e) {
                                    return Math.abs(t - e)
                                }));
                            i = (0, o[a.indexOf(Math.min.apply(Math, a))])(r) || 1
                        } else i = 1;
                    return i
                }, e.prototype.findShortestColumn = function(e, t) {
                    var i = e[0];
                    if (this.styleParams.placeGroupsLtr) i = e[t % e.length];
                    else
                        for (var r = -1, o = 0, a = e; o < a.length; o++) {
                            var n = a[o],
                                s = n.height;
                            (s < r || r < 0) && (r = s, i = n)
                        }
                    return i
                }, e.prototype.saveExistingLayout = function() {
                    this.useLayoutStore && (S.layout = {
                        pointer: this.pointer,
                        layoutItems: this.layoutItems,
                        groups: this.groups,
                        strips: this.strips,
                        groupIdx: this.groupIdx,
                        groupItems: this.groupItems,
                        group: this.group,
                        strip: this.strip,
                        targetItemSize: this.targetItemSize,
                        galleryHeight: this.galleryHeight,
                        columns: this.columns
                    })
                }, e.prototype.prepareLayoutParams = function() {
                    var e = this;
                    if (this.useExistingLayout && this.pointer > 0) {
                        if (this.useLayoutStore) Object.assign(this, S.layout);
                        else if (this.styleParams.isVertical) {
                            this.groups.slice(-3).forEach((function(t) {
                                var i = e.columns[t.columnIdx];
                                i && (i.height -= t.totalHeight, i.groups.splice(-1, 1)), e.groups.splice(-1, 1), t.realItems.forEach((function() {
                                    e.layoutItems.splice(-1, 1), e.pointer--
                                })), e.groupIdx--
                            }))
                        } else {
                            if (1 === this.scrollDirection) {
                                this.groups.slice(-1).forEach((function(t) {
                                    var i = e.columns[0];
                                    i && i.groups.splice(-1, 1);
                                    var r = e.strips[0];
                                    r && (r.setWidth(r.width - t.width), r.ratio = r.width / r.height, r.groups.splice(-1, 1), e.strip = r), e.strips = [], e.groups.splice(-1, 1), t.realItems.forEach((function() {
                                        e.layoutItems.splice(-1, 1), e.pointer--
                                    })), e.groupIdx--
                                })), this.galleryHeight = 0
                            } else {
                                var t = this.strips.slice(-2);
                                t && (t.forEach((function(t) {
                                    t && (e.strips.splice(-1, 1), t.groups.forEach((function(t) {
                                        e.groups.splice(-1, 1), t.items.forEach((function() {
                                            e.layoutItems.splice(-1, 1), e.pointer--
                                        })), e.groupIdx--
                                    })))
                                })), this.galleryHeight = this.strips.reduce((function(e, t) {
                                    return e + t.height
                                }), 0), this.strip = new f({
                                    idx: this.strips.length + 1,
                                    container: this.container,
                                    groupsPerStrip: this.styleParams.groupsPerStrip,
                                    scrollDirection: this.styleParams.scrollDirection,
                                    targetItemSize: this.targetItemSize
                                }))
                            }
                            this.groupItems = []
                        }
                        this.item = {}, this.pointer = Math.max(0, this.pointer), this.maxLoops = 10 * this.srcItems.length
                    } else {
                        if (this.pointer = 0, this.firstGroup = !1, this.layoutItems = [], this.groups = [], this.strips = [], this.styleParams.forceFullHeight) this.targetItemSize = Math.sqrt(this.container.galleryHeight * this.container.galleryWidth / this.srcItems.length);
                        else {
                            var i = void 0;
                            i = "function" == typeof this.styleParams.targetItemSize ? this.styleParams.targetItemSize() : this.styleParams.targetItemSize, this.targetItemSize = Math.floor(i) + Math.ceil(2 * (this.styleParams.imageMargin / 2 - this.styleParams.layoutParams.gallerySpacing))
                        }
                        this.galleryWidth = Math.floor(this.container.galleryWidth), this.maxGroupSize = this.getMaxGroupSize(), this.groupIdx = 0, this.item = {}, this.groupItems = [], this.group = {}, this.bounds = this.container.bounds || {}, this.strip = new f({
                            idx: 1,
                            container: this.container,
                            groupsPerStrip: this.styleParams.groupsPerStrip,
                            scrollDirection: this.styleParams.scrollDirection,
                            targetItemSize: this.targetItemSize
                        }), this.galleryHeight = 0, this.numOfCols = this.calcNumberOfColumns(this.galleryWidth, this.targetItemSize), this.targetItemSize = this.styleParams.isVertical ? Math.floor(this.galleryWidth / this.numOfCols) : this.targetItemSize;
                        var r = this.styleParams,
                            o = r.columnWidths,
                            a = r.externalInfoWidth,
                            n = r.imageMargin,
                            s = this.styleParams.layoutParams.cropRatio,
                            l = !1;
                        if (o && o.length > 0) {
                            for (l = o.split(",").map(Number); l.length < this.numOfCols;) l.push.apply(l, l);
                            l = l.slice(0, this.numOfCols);
                            var u = this.galleryWidth / l.reduce((function(e, t) {
                                return e + t
                            }), 0);
                            l = l.map((function(e) {
                                return Math.round(e *= u)
                            }))
                        }
                        var c, h = 0,
                            p = this.galleryWidth;
                        this.columns = Array(this.numOfCols).fill(0).map((function(t, i) {
                            var r = l ? l[i] : Math.round(p / (e.numOfCols - i)),
                                o = h;
                            h += r, p -= r;
                            var u = Math.round(a > 1 ? a : a * r) || 0;
                            return r -= u, c = c || (e.targetItemSize - u - n) / s + n, new b(i, r, o, c, u)
                        })), this.maxLoops = 10 * this.srcItems.length
                    }
                }, e.prototype.createLayout = function(e) {
                    for (void 0 !== e && this.updateParams(e), this.verifyGalleryState(), this.prepareLayoutParams(); this.srcItems[this.pointer];) {
                        if (6 === this.imagesLeft && this.saveExistingLayout(), this.maxLoops--, this.maxLoops <= 0) return console.error("Cannot create layout, maxLoops reached!!!"), !1;
                        if (this.item = new u({
                                idx: this.pointer,
                                inGroupIdx: this.groupItems.length + 1,
                                scrollTop: this.galleryHeight,
                                dto: this.srcItems[this.pointer],
                                container: this.container,
                                styleParams: this.styleParams
                            }), this.layoutItems[this.pointer] = this.item, this.groupItems.push(this.item), this.groupItems.length < this.maxGroupSize && this.srcItems[this.pointer + 1]) this.pointer++;
                        else {
                            if (this.group = new m({
                                    idx: this.groupIdx,
                                    stripIdx: this.strip.idx,
                                    inStripIdx: this.strip.groups.length + 1,
                                    top: this.galleryHeight,
                                    items: this.groupItems,
                                    isLastItems: this.isLastImages,
                                    targetItemSize: this.targetItemSize,
                                    showAllItems: this.showAllItems,
                                    container: this.container,
                                    styleParams: this.styleParams
                                }), this.groups[this.groupIdx] = this.group, this.pointer += this.group.realItems.length - this.groupItems.length, this.groupIdx++, this.groupItems = [], this.styleParams.isVertical) {
                                var t = this.findShortestColumn(this.columns, this.groups.length - 1);
                                this.group.setCubedHeight(t.cubedHeight), this.group.resizeToWidth(t.width), this.group.round(), this.group.setTop(t.height), this.group.setLeft(t.left), t.addGroup(this.group), t.height += this.group.totalHeight, this.galleryHeight < t.height && (this.galleryHeight = t.height)
                            } else {
                                if (this.strip.isFull(this.group, this.isLastImage)) {
                                    this.strip.resizeToHeight(this.galleryWidth / this.strip.ratio), this.strip.setWidth(this.galleryWidth), this.galleryHeight += this.strip.height, this.columns[0].addGroups(this.strip.groups), this.strips.push(this.strip), this.strip = new f({
                                        idx: this.strip.idx + 1,
                                        container: this.container,
                                        groupsPerStrip: this.styleParams.groupsPerStrip,
                                        scrollDirection: this.styleParams.scrollDirection,
                                        targetItemSize: this.targetItemSize
                                    }), this.pointer -= this.group.realItems.length - 1, this.groupIdx--;
                                    continue
                                }
                                this.group.setTop(this.galleryHeight), this.strip.ratio += this.group.ratio, this.strip.height = this.galleryWidth / this.strip.ratio, this.strip.setWidth(this.galleryWidth), this.strip.addGroup(this.group), this.isLastImage && this.strip.hasGroups && (1 === this.styleParams.scrollDirection ? this.strip.height = this.container.galleryHeight + (this.styleParams.imageMargin / 2 - this.styleParams.layoutParams.gallerySpacing) : this.strip.canRemainIncomplete() && (this.strip.height = this.targetItemSize, this.strip.markAsIncomplete()), this.strip.resizeToHeight(this.strip.height), this.galleryHeight += this.strip.height, this.columns[0].addGroups(this.strip.groups), this.strips.push(this.strip))
                            }
                            this.firstGroup || (this.firstGroup = this.group), this.pointer++
                        }
                    }
                    if (this.styleParams.forceFullHeight) {
                        var i = this.container.galleryHeight / this.galleryHeight;
                        this.items.map((function(e) {
                            return e.cubeImages = !0, e.cropRatio = e.ratio = e.width / (e.height * i), e.height *= i, e
                        })), this.groups.map((function(e) {
                            return e.height *= i, e.setTop(e.top * i), e.resizeItems(), e
                        }))
                    }
                    return this.lastGroup = this.group, this.colWidth = Math.floor(this.galleryWidth / this.numOfCols), this.height = this.galleryHeight - 2 * (this.styleParams.imageMargin / 2 - this.styleParams.layoutParams.gallerySpacing), this.width = this.lastGroup.left + this.lastGroup.width, this.ready = !0, this.scheme
                }, e.prototype.lastVisibleItemIdxInHeight = function(e) {
                    for (var t = this.items.length - 1; t >= 0; t--) {
                        if (this.items[t].offset.top < e) return t
                    }
                    return this.items.length - 1
                }, e.prototype.lastVisibleItemIdx = function() {
                    return this.lastVisibleItemIdxInHeight(this.container.galleryHeight - 100)
                }, e.prototype.findNeighborItem = function(e, t) {
                    var i, r = this,
                        o = this.layoutItems[e],
                        a = function(e, t, i) {
                            var o, a, n, s = null,
                                l = {};
                            return r.layoutItems.forEach((function(r) {
                                o = r.offset.top + r.height / 2, a = r.offset.left + r.width / 2, n = Math.sqrt(Math.pow(o - t, 2) + Math.pow(a - e, 2)), (null === s || n > 0 && n < s) && i(e, t, a, o) && (s = n, l = r)
                            })), l
                        };
                    switch (t) {
                        case "up":
                            i = a(o.offset.left + o.width / 2, o.offset.top, (function(e, t, i, r) {
                                return r < t
                            }));
                            break;
                        case "left":
                            i = a(o.offset.left, o.offset.top + o.height / 2, (function(e, t, i) {
                                return i < e
                            }));
                            break;
                        case "down":
                            i = a(o.offset.left + o.width / 2, o.offset.bottom, (function(e, t, i, r) {
                                return r > t
                            }));
                            break;
                        default:
                        case "right":
                            i = a(o.offset.right, o.offset.top + o.height / 2, (function(e, t, i) {
                                return i > e
                            }))
                    }
                    return i.idx >= 0 ? i.idx : (console.warn("Could not find offset for itemIdx", e, t), e)
                }, e.prototype.getMaxGroupSize = function() {
                    var e = 1;
                    try {
                        var t = "string" == typeof this.styleParams.groupTypes && this.styleParams.groupTypes.length > 0 ? this.styleParams.groupTypes.split(",") : this.styleParams.groupTypes;
                        e = t.length > 0 ? t.reduce((function(e, t) {
                            return Math.max(e, parseInt(t))
                        }), 1) : Number(t), e = Math.min(e, this.styleParams.groupSize)
                    } catch (t) {
                        console.error("couldn't calculate max group size - returing 3 (?)", t), e = 3
                    }
                    return e
                }, Object.defineProperty(e.prototype, "isLastImage", {get: function() {
                        return !this.srcItems[this.pointer + 1]
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "isLastImages", {get: function() {
                        return !this.srcItems[this.pointer + 1]
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "imagesLeft", {get: function() {
                        return this.srcItems.length - this.pointer - 1
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "items", {get: function() {
                        return this.layoutItems
                    },
                    enumerable: !1,
                    configurable: !0
                }), Object.defineProperty(e.prototype, "scheme", {get: function() {
                        return {
                            items: this.items.map((function(e) {
                                return e.scheme
                            })),
                            groups: this.groups.map((function(e) {
                                return e.scheme
                            })),
                            strips: this.strips.map((function(e) {
                                return e.scheme
                            })),
                            columns: this.columns.map((function(e) {
                                return e.scheme
                            })),
                            height: this.height,
                            width: this.width
                        }
                    },
                    enumerable: !1,
                    configurable: !0
                }), e
            }(),
            _ = {
                layoutParams: {
                    gallerySpacing: 0,
                    cropRatio: 1
                },
                isRTL: !1,
                isVertical: !1,
                minItemSize: 120,
                groupSize: 3,
                chooseBestGroup: !0,
                groupTypes: "1,2h,2v,3t,3b,3l,3r",
                cubeImages: !1,
                cubeType: "fill",
                smartCrop: !1,
                fullscreen: !0,
                videoLoop: !0,
                videoSound: !1,
                videoPlay: "hover",
                videoSpeed: 1,
                numberOfImagesPerRow: 3,
                collageDensity: .8,
                galleryTextAlign: "center",
                imageMargin: 10,
                fixedColumns: 0,
                showArrows: !0,
                hasThumbnails: !1,
                galleryThumbnailsAlignment: "bottom",
                gridStyle: 0,
                titlePlacement: a.a.placements.SHOW_ON_HOVER,
                hoveringBehaviour: a.a.infoBehaviourOnHover.APPEARS,
                isAutoSlideshow: !1,
                slideshowLoop: !1,
                playButtonForAutoSlideShow: !1,
                pauseAutoSlideshowOnHover: !0,
                allowSlideshowCounter: !1,
                autoSlideshowInterval: 4,
                arrowsSize: 23,
                slideshowInfoSize: 200,
                imageLoadingMode: a.a.loadingMode.BLUR,
                scrollAnimation: a.a.scrollAnimations.NO_EFFECT,
                overlayAnimation: a.a.overlayAnimations.NO_EFFECT,
                imageHoverAnimation: a.a.imageHoverAnimations.NO_EFFECT,
                itemBorderWidth: 0,
                itemBorderRadius: 0,
                itemEnableShadow: !1,
                itemShadowBlur: 20,
                loadMoreAmount: "all",
                itemShadowDirection: 135,
                itemShadowSize: 10,
                imageInfoType: a.a.infoType.NO_BACKGROUND,
                textBoxBorderRadius: 0,
                textBoxBorderWidth: 0,
                textBoxHeight: 200,
                textImageSpace: 10,
                scrollDirection: 0,
                slideAnimation: a.a.slideAnimations.SCROLL,
                autoSlideshowType: a.a.autoSlideshowTypes.INTERVAL,
                autoSlideshowContinuousSpeed: 200
            },
            O = Object(n.d)(_, {
                layoutParams: {
                    repeatingGroupTypes: "",
                    navigationArrows: {
                        type: a.a.arrowsType.DEFAULT_ARROW,
                        container: {
                            type: a.a.arrowsContainerStyleType.SHADOW,
                            backgroundColor: "rgba(0,0,0,0)",
                            borderRadius: 0
                        },
                        mouseCursorContainerMaxWidth: 100
                    },
                    thumbnails: {
                        position: a.a.thumbnailsPosition.OUTSIDE_GALLERY
                    },
                    structure: {
                        galleryRatio: {
                            value: 0,
                            includeExternalInfo: !1
                        }
                    }
                },
                behaviourParams: {
                    item: {
                        content: {
                            magnificationValue: 2
                        },
                        secondaryMedia: {
                            trigger: a.a.secondaryMediaTrigger.OFF,
                            behaviour: a.a.secondaryMediaBehaviour.APPEARS
                        }
                    }
                },
                galleryLayout: -1,
                gallerySizePx: 0,
                gallerySizeRatio: 0,
                gallerySizeType: a.a.gallerySizeType.SMART,
                itemShadowOpacityAndColor: "",
                arrowsColor: "",
                textBoxBorderColor: "",
                allowContextMenu: !1,
                showVideoPlayButton: !1,
                gallerySize: 30,
                cropOnlyFill: !1,
                rotatingCropRatios: "",
                columnWidths: "",
                numberOfImagesPerCol: 1,
                groupsPerStrip: 0,
                imageMargin: 10,
                scatter: 0,
                rotatingScatter: "",
                placeGroupsLtr: !1,
                enableInfiniteScroll: !0,
                thumbnailSpacings: 4,
                enableScroll: !0,
                scrollSnap: !1,
                itemClick: a.a.itemClick.NOTHING,
                slideAnimation: a.a.slideAnimations.SCROLL,
                scrollDuration: 400,
                arrowsPosition: a.a.arrowsPosition.ON_GALLERY,
                arrowsVerticalPosition: a.a.arrowsVerticalPosition.ITEM_CENTER,
                arrowsPadding: 23,
                thumbnailSize: 120,
                magicLayoutSeed: 1,
                imagePlacementAnimation: a.a.imagePlacementAnimations.NO_EFFECT,
                calculateTextBoxWidthMode: a.a.textBoxWidthCalculationOptions.PERCENT,
                textBoxWidth: 200,
                textBoxWidthPercent: 50,
                loadMoreButtonText: "",
                videoSpeed: "1",
                showVideoControls: !1,
                shouldIndexDirectShareLinkInSEO: !0,
                slideTransition: a.a.slideTransition.ease,
                useMaxDimensions: !1,
                enableVideoPlaceholder: !0,
                overlayPosition: a.a.overlayPositions.LEFT,
                overlaySize: 100,
                overlaySizeType: a.a.overlaySizeType.PERCENT,
                overlayPadding: 0,
                cubeFitPosition: a.a.cubeFitPosition.MIDDLE,
                magnificationLevel: 2
            });
        var I = i(10),
            P = i(48),
            w = i(18),
            E = function(e) {
                return e.scrollDirection === a.a.scrollDirection.HORIZONTAL
            },
            T = (w.a.NUMBER, i(7)),
            x = function(e) {
                var t = e.layoutParams.repeatingGroupTypes ? "1" === e.layoutParams.repeatingGroupTypes : "1" === e.groupTypes,
                    i = e.titlePlacement.split(",").filter((function(e) {
                        return !Object(T.p)(e)
                    })).join(",");
                return t && Object(T.i)(i) && E(e) && e.layoutParams.structure.galleryRatio.value > 0
            },
            C = (w.a.BOOLEAN, new(function() {
                function e() {
                    this.options = {}, this.container = {}, this.id = "", this._cache = {}
                }
                return e.prototype.getOrPutInCache = function(e, t) {
                    return this._cache[e] || (this._cache[e] = t()), this._cache[e]
                }, e.prototype.dumpCache = function() {
                    this._cache = {}
                }, e.prototype.updateParams = function(e) {
                    var t = e.options,
                        i = e.container,
                        r = e.id;
                    this.dumpCache(), this.id = r || this.id, this.options = t || this.options, this.container = i || this.container, this.fixHeightForHorizontalGalleryIfNeeded()
                }, e.prototype.getGalleryDimensions = function() {
                    var e = this;
                    return this.getOrPutInCache("galleryDimensions", (function() {
                        var t = {
                            galleryWidth: Math.ceil(e.getGalleryWidth()),
                            galleryHeight: Math.ceil(e.getGalleryHeight()),
                            scrollBase: e.container.scrollBase ? Math.ceil(e.container.scrollBase) : 0,
                            height: Math.ceil(e.container.height),
                            width: Math.ceil(e.container.width)
                        };
                        return e.container.externalScrollBase && (t.scrollBase += e.container.externalScrollBase), e.options.hasThumbnails && e.options.layoutParams.thumbnails.position === a.a.thumbnailsPosition.OUTSIDE_GALLERY && (t.galleryHeight -= e.getThumbnailHeightDelta(), t.galleryWidth -= e.getThumbnailWidthDelta()), t
                    }))
                }, e.prototype.getGalleryWidth = function() {
                    var e = this;
                    return this.getOrPutInCache("galleryWidth", (function() {
                        var t = Math.floor(e.container.width) + 2 * e.getDimensionFix();
                        return e.options.arrowsPosition === a.a.arrowsPosition.OUTSIDE_GALLERY && e.options.scrollDirection === a.a.scrollDirection.HORIZONTAL && (t -= 2 * (e.options.arrowsSize + 40 + e.options.imageMargin / 2)), t
                    }))
                }, e.prototype.getGalleryHeight = function() {
                    var e = this;
                    return this.getOrPutInCache("galleryHeight", (function() {
                        return Math.floor((e.container.height > 0 ? e.container.height : 0) + (e.options.scrollDirection === a.a.scrollDirection.HORIZONTAL ? e.getDimensionFix() : 0))
                    }))
                }, e.prototype.getDimensionFix = function() {
                    var e = this;
                    return this.getOrPutInCache("dimensionFix", (function() {
                        return Number(e.options.imageMargin / 2) - Number(e.options.layoutParams.gallerySpacing)
                    }))
                }, e.prototype.getGalleryRatio = function() {
                    var e = this;
                    return this.getOrPutInCache("galleryRatio", (function() {
                        var t = e.getGalleryDimensions();
                        return t.galleryWidth / t.galleryHeight
                    }))
                }, e.prototype.getThumbnailSize = function() {
                    return this.options.thumbnailSize + this.options.layoutParams.gallerySpacing + 3 * this.options.thumbnailSpacings
                }, e.prototype.getThumbnailHeightDelta = function() {
                    switch (this.options.galleryThumbnailsAlignment) {
                        case "top":
                        case "bottom":
                            return this.getThumbnailSize();
                        case "left":
                        case "right":
                            return 0
                    }
                }, e.prototype.getThumbnailWidthDelta = function() {
                    switch (this.options.galleryThumbnailsAlignment) {
                        case "top":
                        case "bottom":
                            return 0;
                        case "left":
                        case "right":
                            return this.getThumbnailSize()
                    }
                }, e.prototype.fixHeightForHorizontalGalleryIfNeeded = function() {
                    if (this.options.scrollDirection === a.a.scrollDirection.HORIZONTAL && this.options.layoutParams.structure.galleryRatio.value > 0)
                        if (this.options.hasThumbnails && this.options.layoutParams.thumbnails.position === a.a.thumbnailsPosition.OUTSIDE_GALLERY) switch (this.options.galleryThumbnailsAlignment) {
                            case "top":
                            case "bottom":
                                this.container.height = this.container.width * this.options.layoutParams.structure.galleryRatio.value + this.getThumbnailHeightDelta();
                                break;
                            case "left":
                            case "right":
                                this.container.height = (this.container.width - this.getThumbnailWidthDelta()) * this.options.layoutParams.structure.galleryRatio.value
                        } else this.container.height = this.container.width * this.options.layoutParams.structure.galleryRatio.value, !this.options.layoutParams.structure.galleryRatio.includeExternalInfo && x(this.options) && (this.container.height += this.options.externalInfoHeight)
                }, e
            }())),
            D = new(function() {
                function e() {}
                return e.prototype.createBlueprint = function(e) {
                    var t = e.params,
                        i = e.lastParams,
                        o = e.existingBlueprint,
                        n = e.blueprintManagerId,
                        s = e.isUsingCustomInfoElements;
                    this.reasons = {
                        items: "",
                        itemsAdded: "",
                        options: "",
                        container: ""
                    };
                    var l = {};
                    try {
                        var u = t.container,
                            c = t.items,
                            h = t.options,
                            p = i.container,
                            d = i.items,
                            m = i.options,
                            g = this.formatItemsIfNeeded(c, d),
                            y = g.formattedItems,
                            f = g.changed,
                            b = this.formatOptionsIfNeeded(h, m, s),
                            S = b.formattedOptions,
                            v = b.changed,
                            _ = this.formatContainerIfNeeded(u, p, m, S || o.options, v),
                            O = _.formattedContainer,
                            I = _.changed,
                            P = f || v || I;
                        if (l = {
                                itemsChanged: f,
                                optionsChanged: v,
                                containerChanged: I
                            }, P || !o) {
                            o || (o = {});
                            var w = this.createStructure({
                                formattedContainer: O || o.container,
                                formattedItems: y || o.items,
                                formattedOptions: S || o.options
                            }, P);
                            S && (o.options = S), y && (o.items = y), O && (o.container = O), o.structure = w, o.options.scrollDirection === a.a.scrollDirection.VERTICAL && o.options.enableInfiniteScroll && (o.container.height = o.container.galleryHeight = w.height)
                        }
                    } catch (e) {
                        console.error("Could not create blueprint, error:", e)
                    }
                    return {
                        blueprint: o,
                        changedParams: l,
                        blueprintManagerId: n,
                        reasons: Object.entries(this.reasons).reduce((function(e, t) {
                            var i = t[0],
                                o = t[1];
                            return Object(r.e)(e, [i + ": " + o])
                        }), []).join(", ")
                    }
                }, e.prototype.formatItemsIfNeeded = function(e, t) {
                    var i, r = this,
                        o = t,
                        a = !1;
                    return ! function(e, t) {
                        if (e === t) return r.reasons.itemsAdded = "items are the same object.", !1;
                        if (!e) return r.reasons.itemsAdded = "new items do not exist.", !1;
                        if (!t || t && 0 === t.length) return r.reasons.itemsAdded = "old items do not exist.", !1;
                        if (t.length >= e.length) return r.reasons.itemsAdded = "more old items than new items.", !1;
                        var i = t.reduce((function(t, i, r) {
                            return t && i.id === e[r].itemId
                        }), !0);
                        return i || (r.reasons.itemsAdded = "items ids were changed. "), i
                    }(e, o) ? function(e, t) {
                        return e === t ? (r.reasons.items = "items are the same object.", !1) : e ? !t || t && 0 === t.length ? (r.reasons.items = "old items do not exist.", !0) : t.length !== e.length ? (r.reasons.items = "more new items than old items (or vice versa).", !0) : e.some((function(e, i) {
                            var o = t[i];
                            try {
                                var a = !e || !o || e.itemId !== o.itemId || e.mediaUrl !== o.mediaUrl || e.measured !== o.measured || e.metaData && o.metaData && (e.metaData.type !== o.metaData.type || e.metaData.title !== o.metaData.title || e.metaData.description !== o.metaData.description) || e.metaData && "text" === e.metaData.type && o.metaData && "text" === o.metaData.type && (e.metaData.width !== o.metaData.width || e.metaData.height !== o.metaData.height || e.metaData.html !== o.metaData.html || e.metaData.textStyle !== o.metaData.textStyle || e.metaData.editorHtml !== o.metaData.editorHtml);
                                return a && (r.reasons.items = "items #" + i + " id was changed."), a
                            } catch (e) {
                                return r.reasons.items = "an error occured", !0
                            }
                        }), !1) : (r.reasons.items = "new items do not exist.", !1)
                    }(e, o) && (i = e.map((function(e) {
                        return Object.assign(y.convertDtoToLayoutItem(e))
                    })), this.gettingMoreItems = !1, a = !0) : (i = o.concat(e.slice(o.length).map((function(e) {
                        return y.convertDtoToLayoutItem(e)
                    }))), this.gettingMoreItems = !1, a = !0), {
                        formattedItems: i,
                        changed: a
                    }
                }, e.prototype.formatOptionsIfNeeded = function(e, t, i) {
                    var r, o = this,
                        a = !1;
                    if (function(e, t) {
                            if (!e) return o.reasons.options = "no new options.", !1;
                            if (!t) return o.reasons.options = "no old options.", !0;
                            try {
                                var i = {};
                                Object.keys(t).sort().forEach((function(e) {
                                    return i[e] = t[e]
                                }));
                                var r = {};
                                Object.keys(e).sort().forEach((function(t) {
                                    return r[t] = e[t]
                                }));
                                var a = JSON.stringify(r) !== JSON.stringify(i);
                                return a && (o.reasons.options = "options were changed."), a
                            } catch (e) {
                                return console.error("Could not compare options", e), !1
                            }
                        }(e, t)) {
                        var l = function(e) {
                            var t = Object(n.c)(O),
                                i = Object(n.c)(e),
                                r = Object.assign({}, t, i);
                            return Object.keys(r).forEach((function(e) {
                                void 0 === r[e] && (r[e] = O[e])
                            })), Object(n.b)(r)
                        }(Object(s.b)(e));
                        r = Object(s.b)(Object(I.b)(Object(P.a)(l), i)), a = !0
                    }
                    return {
                        formattedOptions: r,
                        changed: a
                    }
                }, e.prototype.formatContainerIfNeeded = function(e, t, i, r, o) {
                    var n, s = this,
                        l = !1;
                    return (o || function(e) {
                        var t = e.newContainerParams,
                            i = e.oldContainerParams;
                        if (!e.oldOptions || !i) return s.reasons.container = "no old container or options. ", !0;
                        if (!t) return s.reasons.container = "no new container.", !1;
                        var o = {
                            height: (r.scrollDirection !== a.a.scrollDirection.VERTICAL || !r.enableInfiniteScroll) && (!!t.height && t.height !== i.height),
                            width: !i || !!t.width && t.width !== i.width
                        };
                        return Object.keys(o).reduce((function(e, t) {
                            return o[t] && (s.reasons.container += "container." + t + " has changed. "), e || o[t]
                        }), !1)
                    }({
                        newContainerParams: e,
                        oldContainerParams: t,
                        oldOptions: i
                    })) && (C.updateParams({
                        options: r,
                        container: e
                    }), l = !0, n = Object.assign({}, e, C.getGalleryDimensions())), {
                        formattedContainer: n,
                        changed: l
                    }
                }, e.prototype.createStructure = function(e) {
                    var t = e.formattedContainer,
                        i = e.formattedOptions,
                        r = {
                            items: e.formattedItems,
                            container: t,
                            styleParams: i,
                            options: {
                                showAllItems: !0,
                                skipVisibilitiesCalc: !0,
                                useLayoutStore: !1
                            }
                        };
                    return r.options.createLayoutOnInit = !1, this.layouter = new v(r), this.layouter.createLayout(r)
                }, e
            }()),
            A = i(29),
            M = function() {
                function e(e) {
                    var t = e.id;
                    this.id = t + "'s blueprintsManager", this.currentState = {}, this.existingBlueprint = {}, this.lastBlueprintId = 0, this.cache = {}, this.api = {}, this.currentState.totalItemsCount = 1 / 0, this.onBlueprintReady = function() {}, this.loopingItems = !1
                }
                return e.prototype.init = function(e) {
                    this.api = e.api, this.currentState.totalItemsCount = e && e.totalItemsCount || this.currentState.totalItemsCount, A.d.setDeviceType(e.deviceType)
                }, e.prototype.setCurrentBlueprint = function(e) {
                    this.lastBlueprintId = e
                }, e.prototype.createBlueprint = function(e) {
                    return void 0 === e && (e = {}), Object(r.b)(this, void 0, void 0, (function() {
                        var t, i, o, a, n, s, l, u, c, h = this;
                        return Object(r.c)(this, (function(p) {
                            switch (p.label) {
                                case 0:
                                    return t = Math.floor(1e3 * Math.random()), this.currentState.totalItemsCount = e.totalItemsCount || this.api.getTotalItemsCount && this.api.getTotalItemsCount() || this.currentState.totalItemsCount, this.currentState.isUsingCustomInfoElements = e.isUsingCustomInfoElements || this.api.isUsingCustomInfoElements && this.api.isUsingCustomInfoElements() || this.currentState.isUsingCustomInfoElements, i = [Object(r.a)({}, e)], [4, this.completeParams(e)];
                                case 1:
                                    return e = r.a.apply(void 0, i.concat([p.sent()])), e = this.duplicateItemsForSlideshowLoopIfNeeded(e), [4, function(e) {
                                        return Object(r.b)(h, void 0, void 0, (function() {
                                            return Object(r.c)(this, (function(t) {
                                                switch (t.label) {
                                                    case 0:
                                                        return this.setCurrentBlueprint(e.blueprintManagerId), this.api.createBlueprintImp ? [4, this.api.createBlueprintImp(e)] : [3, 2];
                                                    case 1:
                                                        return [2, t.sent()];
                                                    case 2:
                                                        return [4, D.createBlueprint(e)];
                                                    case 3:
                                                        return [2, t.sent()]
                                                }
                                            }))
                                        }))
                                    }({
                                        params: e,
                                        lastParams: this.currentState,
                                        existingBlueprint: this.existingBlueprint,
                                        blueprintManagerId: this.id + t,
                                        isUsingCustomInfoElements: this.currentState.isUsingCustomInfoElements
                                    })];
                                case 2:
                                    return o = p.sent(), a = o.blueprintManagerId, n = o.blueprint, s = o.changedParams, l = o.reasons, a !== this.lastBlueprintId ? [2] : (u = Object.values(s).some((function(e) {
                                        return !!e
                                    })), c = Object.keys(n).length > 0, this.updateLastParamsIfNeeded(e, s, c), c && this.api.onBlueprintReady && this.api.onBlueprintReady({
                                        blueprint: n,
                                        blueprintChanged: u,
                                        reasons: l
                                    }), [2, this.cache[e] = this.existingBlueprint = n])
                            }
                        }))
                    }))
                }, e.prototype.getMoreItems = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t;
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return e < this.currentState.totalItemsCount ? [4, this.api.fetchMoreItems(e)] : [3, 2];
                                case 1:
                                    return (t = i.sent()) && this.createBlueprint({
                                        items: t
                                    }), [3, 3];
                                case 2:
                                    this.existingBlueprint.options.slideshowLoop && this.duplicateItemsAndCreateBlueprint(), i.label = 3;
                                case 3:
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.resetItemLooping = function() {
                    this.loopingItems = !1
                }, e.prototype.createInitialBlueprint = function(e) {
                    this.currentState.totalItemsCount = e.totalItemsCount || this.api.getTotalItemsCount && this.api.getTotalItemsCount() || this.currentState.totalItemsCount, this.currentState.isUsingCustomInfoElements = e.isUsingCustomInfoElements || this.api.isUsingCustomInfoElements && this.api.isUsingCustomInfoElements() || this.currentState.isUsingCustomInfoElements, e = this.duplicateItemsForSlideshowLoopIfNeeded(e);
                    var t = D.createBlueprint({
                            params: e,
                            lastParams: this.currentState,
                            existingBlueprint: this.existingBlueprint,
                            blueprintManagerId: this.id,
                            isUsingCustomInfoElements: this.currentState.isUsingCustomInfoElements
                        }),
                        i = t.blueprint,
                        r = t.changedParams,
                        o = t.reasons,
                        a = Object.values(r).some((function(e) {
                            return !!e
                        })),
                        n = Object.keys(i).length > 0;
                    return this.updateLastParamsIfNeeded(e, r, n), n && this.api.onBlueprintReady && this.api.onBlueprintReady({
                        blueprint: i,
                        blueprintChanged: a,
                        reasons: o,
                        initialBlueprint: !0
                    }), n && (this.cache[e] = this.existingBlueprint = i)
                }, e.prototype.createSingleBlueprint = function(e) {
                    void 0 === e && (e = {});
                    var t = e.isUsingCustomInfoElements;
                    return D.createBlueprint({
                        params: e,
                        lastParams: {},
                        existingBlueprint: {},
                        blueprintManagerId: this.id + "_singleBlueprint",
                        isUsingCustomInfoElements: t
                    }).blueprint
                }, e.prototype.duplicateGalleryItems = function(e) {
                    for (var t = e.items, i = e.duplicateFactor, r = void 0 === i ? 1 : i, o = (t = t || this.currentState.items).slice(0, this.currentState.totalItemsCount), a = 0; a < r; a++) t = t.concat.apply(t, o);
                    return this.loopingItems = !0, t
                }, e.prototype.duplicateItemsAndCreateBlueprint = function() {
                    var e = this.duplicateGalleryItems({});
                    this.createBlueprint({
                        items: e
                    })
                }, e.prototype.duplicateItemsForSlideshowLoopIfNeeded = function(e) {
                    var t = e.items,
                        i = e.options,
                        o = i.slideshowLoop,
                        n = i.scrollDirection,
                        s = this.currentState.totalItemsCount,
                        l = t.length < 30 && t.length === s,
                        u = n === a.a.scrollDirection.HORIZONTAL;
                    if (o && l && u) {
                        var c = Math.ceil(30 / t.length) - 1;
                        return Object(r.a)(Object(r.a)({}, e), {
                            items: this.duplicateGalleryItems({
                                items: t,
                                duplicateFactor: c
                            })
                        })
                    }
                    return e
                }, e.prototype.completeParams = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t, i, o, a, n;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    return i = (t = e || {}).container, o = t.items, a = t.options, n = t.id, [4, this.fetchContainerIfNeeded(i)];
                                case 1:
                                    return i = r.sent(), [4, this.fetchItemsIfNeeded(o)];
                                case 2:
                                    return o = r.sent(), [4, this.fetchOptionsIfNeeded(a)];
                                case 3:
                                    return a = r.sent(), [2, {
                                        container: i,
                                        items: o,
                                        options: a,
                                        id: n
                                    }]
                            }
                        }))
                    }))
                }, e.prototype.fetchContainerIfNeeded = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t;
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return function(e) {
                                        var t = !0;
                                        return e && Object.keys(e).length > 0 && (t = !1), t
                                    }(e) ? (t = this.api.fetchContainer) ? [4, this.api.fetchContainer()] : [3, 2] : [3, 3];
                                case 1:
                                    t = i.sent(), i.label = 2;
                                case 2:
                                    e = t || this.currentState.container, i.label = 3;
                                case 3:
                                    return [2, e]
                            }
                        }))
                    }))
                }, e.prototype.fetchItemsIfNeeded = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t;
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return function(e) {
                                        var t = !0;
                                        return e && e.length > 0 && (t = !1), t
                                    }(e) ? (t = !this.loopingItems && this.api.fetchItems) ? [4, this.api.fetchItems()] : [3, 2] : [3, 3];
                                case 1:
                                    t = i.sent(), i.label = 2;
                                case 2:
                                    e = t || this.currentState.items, i.label = 3;
                                case 3:
                                    return [2, e]
                            }
                        }))
                    }))
                }, e.prototype.fetchOptionsIfNeeded = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t;
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return function(e) {
                                        var t = !0;
                                        return e && Object.keys(e).length > 0 && (t = !1), t
                                    }(e) ? (t = this.api.fetchOptions) ? [4, this.api.fetchOptions()] : [3, 2] : [3, 3];
                                case 1:
                                    t = i.sent(), i.label = 2;
                                case 2:
                                    e = t || this.currentState.options, i.label = 3;
                                case 3:
                                    return [2, e]
                            }
                        }))
                    }))
                }, e.prototype.updateLastParamsIfNeeded = function(e, t, i) {
                    var o = e.items,
                        a = e.container,
                        n = e.options;
                    i && (this.currentState.items = t.itemsChanged ? o : this.currentState.items, this.currentState.container = t.containerChanged ? Object(r.a)({}, a) : this.currentState.container, this.currentState.options = t.optionsChanged ? Object(r.a)({}, n) : this.currentState.options)
                }, e.prototype.needMoreItems = function(e) {
                    this.getMoreItems(e)
                }, e
            }(),
            R = i(8),
            L = i(37),
            B = i(42),
            j = i(19),
            k = i(43),
            N = i(4),
            W = i(5),
            U = function(e, t) {
                var i = t.dto.imageToken || t.dto.token;
                return i ? (e = e.replace(/,wm_.+\//g, "/")) + "?token=" + i : e
            },
            F = i(20),
            H = function(e) {
                var t = void 0 === e ? {} : e,
                    i = t.imageToken,
                    r = t.staticMediaUrls,
                    o = t.useOptimizedImageFormat,
                    a = t.isPrerenderMode;
                return function(e) {
                    return Y(Object(N.a)(Object(N.a)({}, e), {
                        imageToken: i,
                        staticMediaUrls: r,
                        isPrerenderMode: a,
                        shouldUseOptimizedImageFormat: null == o || o
                    }))
                }
            },
            G = function() {
                for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
                for (var i = e[0], r = 1; r < e.length; ++r) i = i.replace(/\/$/, "") + "/" + e[r].replace(/^\//, "");
                return i
            },
            z = function(e, t) {
                var i = /(^https?)|(^data)|(^blob)/.test(e),
                    r = 0 === e.indexOf(t),
                    o = e.indexOf("preventResize") > 0;
                return i && (!r || o)
            },
            V = function(e, t) {
                return z(e, t) ? e : G(t, e)
            };
        var K = function(e) {
                var t = e.item,
                    i = e.originalUrl,
                    r = e.resizeMethod,
                    o = e.requiredWidth,
                    a = e.requiredHeight,
                    n = e.sharpParams,
                    s = e.focalPoint,
                    l = e.useWebp,
                    u = void 0 !== l && l,
                    c = e.devicePixelRatio,
                    h = void 0 === c ? 1 : c,
                    p = e.WIX_MEDIA_PREFIX,
                    d = e.isPrerenderMode,
                    m = t.maxHeight,
                    g = t.maxWidth,
                    y = Math.max(F.a.isMobile() && !F.a.isSSR() ? W.a.screen.width / 320 : 1, 1);
                o = Math.ceil(o * h * y), a = Math.ceil(a * h * y);
                var f = g * m,
                    b = function(e, t, i) {
                        if (e * t > i) {
                            var r = t / e,
                                o = Math.floor(Math.sqrt(i / r));
                            return {
                                maxWidth: o,
                                maxHeight: Math.floor(o * r)
                            }
                        }
                        return {
                            maxWidth: e,
                            maxHeight: t
                        }
                    }(o, a, f < 33e6 ? f : 33e6),
                    S = b.maxHeight,
                    v = b.maxWidth;
                if (o = v, a = S, j.a.getExperimentBoolean("specs.pro-gallery.useRoundedImageSizes")) {
                    var _ = o;
                    o = 200 * Math.ceil(_ / 200), a = Math.ceil(a * o / _)
                }
                var O = V(i, p);
                return O += function() {
                    if (!s || s.every((function(e) {
                            return .5 === e
                        }))) return r = "fit" === r || d && j.a.getExperimentBoolean("specs.pro-gallery.blockCropOnSSR") ? "fit" : "fill", a <= 1 && o <= 1 && (r = "fill"), "/v1/" + r + "/w_" + o + ",h_" + a;
                    var e = s.map((function(e) {
                        return String(Math.floor(100 * e) / 100).slice(0, 4)
                    })).join("_");
                    return "/v1/fill/w_" + o + ",h_" + a + ",fp_" + e
                }(), O += function() {
                    var e, t, r, o, a, s, l, u, c;
                    (n = n || {}).quality || (n.quality = 90), n.quality = Math.min(90, n.quality), !0 === n.allowUsm && (n.usm.usm_a = Math.min(5, Math.max(0, (null === (e = n.usm) || void 0 === e ? void 0 : e.usm_a) || (null === (r = null === (t = n.usm) || void 0 === t ? void 0 : t.usm) || void 0 === r ? void 0 : r.a) || 0)), n.usm.usm_r = Math.min(128, Math.max(0, (null === (o = n.usm) || void 0 === o ? void 0 : o.usm_r) || (null === (s = null === (a = n.usm) || void 0 === a ? void 0 : a.usm) || void 0 === s ? void 0 : s.r) || 0)), n.usm.usm_t = Math.min(1, Math.max(0, (null === (l = n.usm) || void 0 === l ? void 0 : l.usm_t) || (null === (c = null === (u = n.usm) || void 0 === u ? void 0 : u.usm) || void 0 === c ? void 0 : c.t) || 0)));
                    var h = "";
                    return h += ",q_" + n.quality, n.blur && !(i.indexOf(".png") > 0 || i.indexOf(".gif") > 0) && (h += ",blur_" + n.blur), h += n.usm && n.usm.usm_r ? ",usm_" + n.usm.usm_r.toFixed(2) + "_" + n.usm.usm_a.toFixed(2) + "_" + n.usm.usm_t.toFixed(2) : ""
                }(), O += "/" + (u ? i.replace(/[^.]\w*$/, "webp") : i).match(/[^/][\w.~]*$/)[0], O = U(O, t)
            },
            q = function(e) {
                return {
                    jpg: "jpeg",
                    jpeg: "jpeg",
                    png: "png",
                    gif: "gif"
                }[e.match(/[^\.]\w*$/)[0]] || "jpeg"
            },
            Y = function(e) {
                var t = e.item,
                    i = e.originalUrl,
                    r = e.resizeMethod,
                    o = e.requiredWidth,
                    a = e.requiredHeight,
                    n = e.sharpParams,
                    s = void 0 === n ? {} : n,
                    l = e.focalPoint,
                    u = void 0 === l ? [.5, .5] : l,
                    c = e.createMultiple,
                    h = void 0 !== c && c,
                    p = e.imageToken,
                    d = void 0 === p ? "" : p,
                    m = e.staticMediaUrls,
                    g = void 0 === m ? {} : m,
                    y = e.shouldUseOptimizedImageFormat,
                    f = e.isPrerenderMode,
                    b = (null == g ? void 0 : g.staticMediaUrl) ? g.staticMediaUrl : "https://static.wixstatic.com/media/",
                    S = (null == g ? void 0 : g.staticVideoUrl) ? g.staticVideoUrl : "https://video.wixstatic.com/",
                    v = t.dto.imageToken || t.dto.token || d,
                    _ = {
                        item: t,
                        originalUrl: i = function(e, t) {
                            if (e.indexOf("preventResize") >= 0) return e;
                            e = e.replace(t, "");
                            var i = /(\/v\d\/(fill|fit|crop)\/(((w|h|x|y|scl|al|q)_[cf\d]*)\,?)*){1,}/.exec(e);
                            return i && i.index > 0 ? e.substr(0, i.index) : e
                        }(i, b),
                        resizeMethod: r,
                        requiredWidth: o,
                        requiredHeight: a,
                        sharpParams: s,
                        focalPoint: u
                    };
                if ("video" === r) return function(e, t) {
                    var i = e.item,
                        r = e.originalUrl,
                        o = e.requiredHeight,
                        a = r;
                    if (i.qualities && i.qualities.length) {
                        var n = "/",
                            s = i.qualities.filter((function(e) {
                                return "mp4" === e.formats[0]
                            }));
                        s.length > 1 && s[0].height > s[1].height && s.reverse();
                        for (var l = void 0, u = 0; l = s[u]; u++)
                            if (l.height >= o || !s[u + 1]) {
                                n += l.quality;
                                for (var c = void 0, h = 0; c = l.formats[h]; h++) a = G(t, "video/", i.url, n, c, "/file." + c);
                                break
                            }
                        return a
                    }
                }(_, S);
                if (z(i, b)) return i;
                if ("full" !== r || v) {
                    if (h) {
                        var O = function(e, t) {
                                return e.map((function(e) {
                                    return K(Object(N.a)(Object(N.a)({}, _), {
                                        useWebp: t,
                                        devicePixelRatio: e,
                                        WIX_MEDIA_PREFIX: b,
                                        isPrerenderMode: f
                                    })) + " " + e + "x"
                                })).join(", ")
                            },
                            I = Object(N.e)(y ? [{
                                type: "webp",
                                url: K(Object(N.a)(Object(N.a)({}, _), {
                                    useWebp: !0,
                                    devicePixelRatio: 1,
                                    WIX_MEDIA_PREFIX: b
                                })),
                                dpr: O([1, 2, 3, 4, 5], !0)
                            }] : [], [{
                                type: q(i),
                                url: K(Object(N.a)(Object(N.a)({}, _), {
                                    useWebp: !1,
                                    devicePixelRatio: 1,
                                    shouldUseOptimizedImageFormat: y,
                                    WIX_MEDIA_PREFIX: b
                                })),
                                dpr: O([1, 2, 3, 4, 5], !1)
                            }]),
                            P = V(i, b);
                        return v ? I : Object(N.e)([{
                            type: q(i),
                            url: P,
                            dpr: [1, 2, 3, 4, 5, 6, 7, 8].map((function(e) {
                                return P + " " + e + "x"
                            })).join(", "),
                            forPrinting: !0
                        }], I)
                    }
                    return K(Object(N.a)(Object(N.a)({}, _), {
                        WIX_MEDIA_PREFIX: b
                    }))
                }
                return V(i, b)
            };

        function Z(e, t, i) {
            return {
                masterType: e,
                paddingTop: 0,
                paddingBottom: 0,
                paddingLeft: 0,
                paddingRight: 0,
                order: i || {
                    top: [],
                    middle: [],
                    bottom: []
                },
                enabled: t || {
                    Title: !1,
                    Description: !1,
                    Social: !1,
                    CustomButton: !1
                },
                titleParams: {
                    title: "dummy",
                    horizontalAlignment: "center",
                    paddingTop: 0,
                    paddingBottom: 0,
                    paddingLeft: 0,
                    paddingRight: 0
                },
                descriptionParams: {
                    description: "dummy_desc",
                    horizontalAlignment: "center",
                    paddingTop: 0,
                    paddingBottom: 0,
                    paddingLeft: 0,
                    paddingRight: 0
                },
                customButtonParams: {
                    options: {
                        customButtonText: "dummy-button-text"
                    },
                    horizontalAlignment: "center",
                    paddingTop: 0,
                    paddingBottom: 0,
                    paddingLeft: 0,
                    paddingRight: 0
                },
                socialParams: {
                    viewMode: "",
                    options: {
                        galleryTextAlign: "DUMMY",
                        loveButton: !1,
                        allowSocial: !1,
                        loveCounter: !1,
                        allowDownload: !1,
                        hasThumbnails: !1
                    },
                    horizontalAlignment: "center",
                    paddingTop: 0,
                    paddingBottom: 0,
                    paddingLeft: 0,
                    paddingRight: 0
                }
            }
        }

        function X(e, t) {
            return function(e, t, i) {
                var r = function(e, t) {
                    return {
                        externalPlacement: "external",
                        internal: Z("internal", e, t),
                        external: Z("external", e, t)
                    }
                }(t, i);
                (function(e, t) {
                    e.externalPlacement = function(e) {
                        return e === a.a.placements.SHOW_ON_HOVER ? "internal" : "external"
                    }(t)
                })(r, e.titlePlacement), ["internal", "external"].forEach((function(t) {
                    var i = r[t],
                        o = e.galleryVerticalAlign;
                    ["Title", "Description", "CustomButton", "Social"].forEach((function(t) {
                        var a, n, s;
                        a = i, n = $(t, e), s = t, a.enabled[s] = n,
                            function(e, t, i, r) {
                                if ("external" === i) e.order.top.push(t);
                                else if ("internal" === i) {
                                    var o = {
                                        "flex-start": "top",
                                        center: "middle",
                                        "flex-end": "bottom"
                                    }[r.toLowerCase()];
                                    e.order[o].push(t)
                                }
                            }(i, t, r.externalPlacement, o)
                    }));
                    var a, n;
                    a = i, n = e.galleryTextAlign, a.titleParams.horizontalAlignment = n, a.descriptionParams.horizontalAlignment = n, a.customButtonParams.horizontalAlignment = n, a.socialParams.horizontalAlignment = n, a.socialParams.options.galleryTextAlign = n,
                        function(e, t) {
                            if (!1 === (e.enabled.Title && e.enabled.Description)) return;
                            var i = J("Title", e),
                                r = J("Description", e);
                            if (i !== r) return;
                            e.titleParams.paddingBottom = t
                        }(i, e.titleDescriptionSpace),
                        function(e, t, i, r, o, a) {
                            var n = e.socialParams.options;
                            n.loveButton = t, n.allowSocial = i, n.loveCounter = r, n.allowDownload = o, n.hasThumbnails = a
                        }(i, e.loveButton, e.allowSocial, e.loveCounter, e.allowDownload, e.hasThumbnails),
                        function(e, t) {
                            e.paddingTop += t, e.paddingBottom += t
                        }(i, e.textsVerticalPadding),
                        function(e, t) {
                            e.paddingLeft += t, e.paddingRight += t
                        }(i, e.textsHorizontalPadding)
                }));
                var o = Object(N.a)(Object(N.a)({}, e), {
                    newInfoElementsConfig: r
                });
                return o.isMigratedFromOldInfo = !0, o
            }(Object(k.a)(e, t))
        }

        function J(e, t) {
            var i = "top";
            return [i, "middle", "bottom"].find((function(i) {
                return t.order[i].includes(e)
            })) || i
        }

        function $(e, t) {
            return "Title" === e ? t.allowTitle : "Description" === e ? t.allowDescription : "CustomButton" === e ? t.useCustomButton : t.allowSocial || t.allowDownload || t.loveButton
        }
        var Q = i(9),
            ee = i.n(Q),
            te = i(11),
            ie = function(e, t, i) {
                void 0 === t && (t = !1), void 0 === i && (i = F.a.isMobile());
                var r = e && (e.numbers || e.colors || e.booleans || e.fonts) ? Object(N.a)(Object(N.a)(Object(N.a)(Object(N.a)({}, e.numbers), e.colors), e.booleans), e.fonts) : e,
                    o = {
                        allowDownload: !1,
                        allowSocial: !0,
                        loveButton: !0,
                        isStoreGallery: t,
                        loveCounter: !0,
                        allowTitle: !0,
                        allowTitleExpand: !0,
                        allowDescriptionExpand: !0,
                        allowLinkExpand: !0,
                        allowFullscreenExpand: !0,
                        allowExifExpand: !1,
                        defaultShowInfoExpand: !0,
                        showInfoExpandButton: !0,
                        expandInfoPosition: "SIDE",
                        addToCartButtonText: "",
                        galleryAlignExpand: "left",
                        fullscreenLoop: !1,
                        mobileSwipeAnimation: te.a.mobileSwipeAnimations.EXPAND,
                        enableFullscreenVideoPlaceholder: !0,
                        allowFullscreenMagnifyImage: !1,
                        fullscreenMagnificationLevel: 2,
                        allowBackgroundGradient: !1,
                        backgroundGrayscaleFilter: !1,
                        backgroundBlurFilter: 1,
                        backgroundGradientDegrees: 180,
                        stylingParams: {
                            itemResolutionMode: te.a.itemResolutionModeTypes.SCLAED_DOWN
                        }
                    };
                if (i && (r = function(e) {
                        return Object.keys(e).forEach((function(t) {
                            t.startsWith("m_") && (e[t.slice(2)] = e[t])
                        })), e
                    }(r)), ee.a.merge(o, ee.a.pick(r, ["isRTL", "actionsColorExpand", "addToCartColorExpand", "addToCartBackColorExpand", "addToCartBorderColor", "addToCartFontExpand", "addToCartBorderWidth", "titleColorExpand", "descriptionColorExpand", "useOptimizedImageFormat", "titleFontExpand", "descriptionFontExpand", "allowDownload", "allowSocial", "loveButton", "allowTitle", "allowTitleExpand", "allowDescriptionExpand", "allowExifExpand", "allowLinkExpand", "allowFullscreenExpend", "addToCartButtonText", "fullscreenLoop", "expandInfoPosition", "allowBackgroundGradient", "backgroundGrayscaleFilter", "backgroundBlurFilter", "backgroundGradientDegrees"])), ee.a.isUndefined(r.expandInfoPosition) || (o.expandInfoPosition = r.expandInfoPosition ? "BOTTOM" : "SIDE"), ee.a.isUndefined(r.loveCounter) || (o.loveCounter = 0 === r.loveCounter), !ee.a.isUndefined(r.galleryAlignExpand)) switch (r.galleryAlignExpand) {
                    case 0:
                    default:
                        o.galleryAlignExpand = "left", o.galleryAlignExpandIcons = {
                            float: "left"
                        };
                        break;
                    case 1:
                        o.galleryAlignExpand = "center", o.galleryAlignExpandIcons = {
                            margin: "auto"
                        };
                        break;
                    case 2:
                        o.galleryAlignExpand = "right", o.galleryAlignExpandIcons = {
                            float: "right"
                        }
                }
                ee.a.isUndefined(r.videoSpeed) || (o.videoSpeed = r.videoSpeed), ee.a.isUndefined(r.videoLoop) || (o.videoLoop = r.videoLoop), ee.a.isUndefined(r.enableFullscreenVideoPlaceholder) || (o.enableFullscreenVideoPlaceholder = r.enableFullscreenVideoPlaceholder), ee.a.isUndefined(r.mobileSwipeAnimation) || ("1" === String(r.mobileSwipeAnimation) ? o.mobileSwipeAnimation = te.a.mobileSwipeAnimations.FADE : "2" === String(r.mobileSwipeAnimation) ? o.mobileSwipeAnimation = te.a.mobileSwipeAnimations.CAROUSEL : o.mobileSwipeAnimation = te.a.mobileSwipeAnimations.EXPAND), i ? o.defaultShowInfoExpand = !1 : ee.a.isUndefined(r.defaultShowInfoExpand) ? o.showInfoExpandButton = !1 : (o.defaultShowInfoExpand = 1 === r.defaultShowInfoExpand || r.expandInfoPosition, o.showInfoExpandButton = 0 === r.defaultShowInfoExpand && !r.expandInfoPosition), ee.a.isUndefined(r.addToCartButtonText) || (o.addToCartButtonText = String(r.addToCartButtonText)), ee.a.isUndefined(r.allowFullscreenExpand) || (o.allowFullscreenExpand = r.allowFullscreenExpand), ee.a.isUndefined(r.allowFullscreenMagnifyImage) || (o.allowFullscreenMagnifyImage = r.allowFullscreenMagnifyImage), ee.a.isUndefined(r.fullscreenMagnificationLevel) || (o.fullscreenMagnificationLevel = r.fullscreenMagnificationLevel / 100);
                var a, n, s, l, u, c;
                if (o.bgColorExpand = (n = (a = r).allowBackgroundGradient, s = a.backgroundGradientColor1, l = a.backgroundGradientColor2, u = a.backgroundGradientDegrees, c = void 0 === u ? o.backgroundGradientDegrees : u, n && s && l && c ? {
                        value: "linear-gradient(" + c + "deg," + s.value + "," + l.value + ")"
                    } : r.bgColorExpand), !ee.a.isUndefined("itemClick"))
                    if ("number" == typeof r.itemClick) switch (r.itemClick) {
                        case 0:
                        default:
                            o.itemClick = "expand";
                            break;
                        case 1:
                            o.itemClick = "link";
                            break;
                        case 2:
                            o.itemClick = "nothing";
                            break;
                        case 3:
                            o.itemClick = "fullscreen"
                    } else "expand" === r.itemClick || "link" === r.itemClick || "nothing" === r.itemClick || "fullscreen" === r.itemClick ? o.itemClick = r.itemClick : o.itemClick = "expand";
                o.sharpParams = {
                    quality: 90,
                    usm: {}
                }, ee.a.isUndefined(r.usmToggle) || !0 !== r.usmToggle || (o.sharpParams.allowUsm = r.usmToggle, ee.a.isUndefined(r.imageQuality) || (o.sharpParams.quality = r.imageQuality), ee.a.isUndefined(r.usm_a) || (o.sharpParams.usm.usm_a = (r.usm_a || 0) / 100), ee.a.isUndefined(r.usm_r) || (o.sharpParams.usm.usm_r = r.usm_r), ee.a.isUndefined(r.usm_t) || (o.sharpParams.usm.usm_t = (r.usm_t || 0) / 255));
                var h = j.a.getExperimentBoolean("specs.pro-gallery.enableFullResFeatureViewer"),
                    p = !ee.a.isUndefined(r.galleryItemResolution);
                return h && p && (o.stylingParams.itemResolutionMode = te.c[r.galleryItemResolution]), o
            };
        var re = function() {
                function e(e) {
                    var t = e.getMoreItems,
                        i = e.getItems,
                        r = e.getContainer,
                        o = e.getOptions,
                        a = e.onBlueprintReady,
                        n = e.getTotalItemsCount,
                        s = e.createBlueprintImp;
                    this.getMoreItems = t || function() {}, this.getItems = i || function() {}, this.getOptions = o || function() {}, this.getContainer = r || function() {}, this.getTotalItemsCount = n || function() {}, this.onBlueprintReadyCallback = a || function() {}, this.createBlueprintImp = s
                }
                return e.prototype.updateFunctions = function(e) {
                    var t = e.getMoreItems,
                        i = e.getItems,
                        r = e.getContainer,
                        o = e.getOptions,
                        a = e.onBlueprintReady,
                        n = e.getTotalItemsCount,
                        s = e.createBlueprintImp;
                    this.getMoreItems = t || function() {}, this.getItems = i || function() {}, this.getOptions = o || function() {}, this.getContainer = r || function() {}, this.getTotalItemsCount = n || function() {}, this.onBlueprintReadyCallback = a || function() {}, this.createBlueprintImp = s
                }, e.prototype.fetchMoreItems = function(e) {
                    this.getMoreItems(e)
                }, e.prototype.fetchItems = function() {
                    return this.getItems()
                }, e.prototype.fetchOptions = function() {
                    return this.getOptions()
                }, e.prototype.fetchContainer = function() {
                    return this.getContainer()
                }, e.prototype.onBlueprintReady = function(e) {
                    var t = e.blueprint,
                        i = e.blueprintChanged;
                    this.onBlueprintReadyCallback(t, i)
                }, e.prototype.isUsingCustomInfoElements = function() {
                    return !0
                }, e
            }(),
            oe = "love",
            ae = function() {
                function e() {
                    this.getEncodedContextToken = this.getEncodedContextToken.bind(this)
                }
                return e.prototype.getItemsLoveData = function(e, t, i, o, a, n) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var s, l, u, c, h, p, d;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    s = this.getEncodedContextToken(o, a), l = e.map((function(e) {
                                        return e.itemId
                                    })), u = l.join("&resourceIds="), c = i + "/_api/reactions-server/v1/reactions?contextToken=" + s + "&resourceIds=" + u, r.label = 1;
                                case 1:
                                    return r.trys.push([1, 6, , 7]), [4, fetch(c, {
                                        method: "GET",
                                        headers: {
                                            "Content-Type": "application/json",
                                            Authorization: t
                                        }
                                    })];
                                case 2:
                                    return 200 !== (h = r.sent()).status ? [3, 4] : [4, h.json()];
                                case 3:
                                    return [2, r.sent().responses];
                                case 4:
                                    return d = "Reaction-Service error - Worker - GET call response status: " + h.status, R.c.isVerbose() && console.error(d), n(d), [2, {
                                        error: d
                                    }];
                                case 5:
                                    return [3, 7];
                                case 6:
                                    return p = r.sent(), d = "Reaction-Service error - Worker - some error when requesting data from reaction-service: " + p.message, n(d), R.c.isVerbose() && console.error(d), [2, {
                                        error: d
                                    }];
                                case 7:
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.shouldUseReactionService = function() {
                    return !0
                }, e.prototype.getEncodedContextToken = function(e, t) {
                    var i = {
                        authorizerAppDefId: t,
                        contextId: e,
                        contextType: oe
                    };
                    return encodeURIComponent(JSON.stringify(i))
                }, e
            }(),
            ne = new ae,
            se = i(38),
            le = Object(n.d)(se.a, {
                layoutParams: {
                    cropRatio: 1
                },
                gotStyleParams: !0,
                selectedLayout: 0,
                gallerySize: 45,
                cubeType: "fit",
                allowSocial: !0,
                allowDownload: !0,
                allowTitle: !0,
                allowDescription: !0,
                loveButton: !0,
                loveCounter: !1,
                videoPlay: "auto",
                gallerySliderImageRatio: 1.3333333333333333,
                galleryImageRatio: 2,
                sharpParams: {
                    quality: 90,
                    usm: {}
                },
                collageAmount: .8,
                collageDensity: 1,
                floatingImages: 0,
                viewMode: "preview",
                galleryHorizontalAlign: "center",
                galleryVerticalAlign: "center",
                enableInfiniteScroll: 1,
                itemClick: "link",
                fixedColumns: 0,
                scrollDirection: a.a.scrollDirection.VERTICAL,
                showArrows: !1,
                thumbnailSpacings: 5,
                gridStyle: 1,
                mobilePanorama: !1,
                expandAnimation: "NO_EFFECT",
                itemBorderColor: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                itemShadowOpacityAndColor: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,0.2)"
                },
                textBoxBorderColor: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                titleDescriptionSpace: 6,
                textsVerticalPadding: 0,
                textsHorizontalPadding: 0,
                textBoxFillColor: {
                    themeName: "color_12",
                    value: "rgba(230,230,230,1)"
                },
                textImageSpace: 10,
                alwaysShowHover: !1,
                isStoreGallery: !1,
                previewHover: !1,
                calculateTextBoxHeightMode: "AUTOMATIC",
                galleryLayout: 5,
                thumbnailSize: 120,
                useCustomButton: !1,
                itemOpacity: {
                    themeName: "color_14",
                    value: "rgba(155,155,155,0.6)"
                },
                itemFont: {
                    style: {
                        bold: !0,
                        italic: !1,
                        underline: !1
                    },
                    family: "open sans",
                    preset: "Heading-M",
                    editorKey: "font_5",
                    size: 22,
                    fontStyleParam: !0,
                    displayName: "Basic Heading",
                    value: 'font:normal normal bold 22px/1.4em "open sans",sans-serif;'
                },
                itemFontSlideshow: {
                    family: "avenir-lt-w01_85-heavy1475544",
                    displayName: "Basic Heading",
                    style: {
                        bold: !1,
                        italic: !1,
                        underline: !1
                    },
                    size: 22,
                    preset: "Custom",
                    editorKey: "font_5",
                    fontStyleParam: !0,
                    value: "font:normal normal normal 22px/27px avenir-lt-w01_85-heavy1475544,sans-serif;"
                },
                itemDescriptionFontSlideshow: {
                    family: "avenir-lt-w01_35-light1475496",
                    displayName: "Paragraph 2",
                    style: {
                        bold: !1,
                        italic: !1,
                        underline: !1
                    },
                    size: 15,
                    preset: "Custom",
                    editorKey: "font_8",
                    fontStyleParam: !0,
                    value: "font:normal normal normal 15px/18px avenir-lt-w01_35-light1475496,sans-serif;"
                },
                itemDescriptionFont: {
                    family: "avenir-lt-w01_35-light1475496",
                    displayName: "Paragraph 2",
                    style: {
                        bold: !1,
                        italic: !1,
                        underline: !1
                    },
                    size: 15,
                    preset: "Custom",
                    editorKey: "font_8",
                    fontStyleParam: !0,
                    value: "font:normal normal normal 15px/18px avenir-lt-w01_35-light1475496,sans-serif;"
                },
                itemFontColor: {
                    themeName: "color_11",
                    value: "rgba(255,255,255,1)"
                },
                itemFontColorSlideshow: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                itemDescriptionFontColor: {
                    themeName: "color_11",
                    value: "rgba(255,255,255,1)"
                },
                itemDescriptionFontColorSlideshow: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                loadMoreButtonText: "Load More",
                loadMoreButtonFont: {
                    family: "open sans",
                    displayName: "Paragraph 2",
                    style: {
                        bold: !1,
                        italic: !1,
                        underline: !1
                    },
                    size: 15,
                    preset: "Body-M",
                    editorKey: "font_8",
                    fontStyleParam: !0,
                    value: 'font:normal normal normal 15px/1.4em "open sans",sans-serif;'
                },
                loadMoreButtonFontColor: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                loadMoreButtonColor: {
                    themeName: "color_11",
                    value: "rgba(255,255,255,1)"
                },
                loadMoreButtonBorderColor: {
                    themeName: "color_15",
                    value: "rgba(0,0,0,1)"
                },
                arrowsColor: {
                    themeName: "color_11",
                    value: "rgba(255,255,255,1)"
                },
                oneColorAnimationColor: {
                    themeName: "color_11",
                    value: "rgba(255,255,255,1)"
                }
            });
        delete le.pauseAutoSlideshowOnHover, delete le.scrollDirection, delete le.slideAnimation, delete le.jsonStyleParams;
        var ue = function() {
                var e = this;
                this.promise = new Promise((function(t, i) {
                    e.reject = i, e.resolve = t
                }))
            },
            ce = {
                totalItemsCount: 0,
                items: []
            },
            he = {
                desktop: {
                    avoidGallerySelfMeasure: !0,
                    width: 980,
                    height: 500,
                    screen: {
                        width: 1920,
                        height: 1080
                    },
                    mobilePreviewFrame: {
                        width: 1920,
                        height: 1080
                    }
                },
                mobile: {
                    avoidGallerySelfMeasure: !0,
                    width: 320,
                    height: 640,
                    screen: {
                        width: 320,
                        height: 640
                    },
                    mobilePreviewFrame: {
                        width: 320,
                        height: 640
                    }
                }
            },
            pe = function() {
                function e(e) {
                    var t = this,
                        i = e.context,
                        r = e.wixCodeApi,
                        o = e.platformServices,
                        a = e.scopedGlobalSdkApis,
                        n = e.APP_DEFINITION_ID,
                        s = e.GALLERY_WIDGET_ID,
                        l = e.isArtStore,
                        u = e.setBlueprintCallback,
                        c = e.setKnownDimensionsCallback,
                        h = e.debouncedSetHeightControlMode,
                        p = e.avoidGettingItemsFromPGServer,
                        d = e.setItemsLoveDataCallback,
                        m = e.sentryReport,
                        g = e.fetcher,
                        y = e.SSRWorkerLog,
                        f = e.withWarmupData,
                        b = e.setDirectFullscreenPropCallback,
                        S = e.setDirectFullscreenMockPropCallback;
                    this.debouncedHandleNewUserConfig = R.c.debounce(this.handleNewUserConfig.bind(this), 100), this.debouncedHandleMeasuredDimensions = R.c.debounce(this.handleMeasuredDimensions.bind(this), 100), this.createFedopsLogger = function(e) {
                        var i = e.fedOpsLoggerFactory;
                        t.fedopsLogger = i.getLoggerForWidget({
                            appId: t.APP_DEFINITION_ID,
                            widgetId: t.GALLERY_WIDGET_ID
                        })
                    }, this.tryToReportAppLoaded = function() {
                        if (t.isAppLoadStartReported && !t.isAppLoadedReported) try {
                            t.isSSR() ? t.fedopsLogger.appLoaded() : t.fedopsLogger.appLoaded(t.getFedopsCustomParams()), t.isAppLoadedReported = !0
                        } catch (e) {
                            R.c.isVerbose() && console.log("cant run fedopsLogger.appLoaded()", e)
                        }
                    }, this.debouncedRecalculateStylesAndBluprints = R.c.debounce(this.recalculateStylesAndTriggerBlueprints.bind(this), 2500), this.initFlowPromises(), this.setBlueprintCallback = u, this.setItemsLoveDataCallback = d, this.setKnownDimensionsCallback = c, this.debouncedSetHeightControlMode = h, this.setDirectFullscreenPropCallback = b, this.setDirectFullscreenMockPropCallback = S, this.context = i, this.fetcher = g, this.setItemsCurrentId = 0, this.setWixStyles(i.styles), this.calculatedGalleryStyles = void 0, this.calculatedFullscreenStyles = void 0, this.wixCodeApi = r, this.directfullscreenItem = "init", this.SSRWorkerLog = y, this.withWarmupData = f, this.APP_DEFINITION_ID = n, this.GALLERY_WIDGET_ID = s, this.isArtStore = l, this.avoidGettingItemsFromPGServer = p, this.getMoreItemsFromServer = this.getMoreItemsFromServer.bind(this), this.handleLoadMoreClicked = this.handleLoadMoreClicked.bind(this), this.setIsInfinite = this.setIsInfinite.bind(this), this.getMoreWixCodeItems = this.getMoreWixCodeItems.bind(this), this.loadInitialWixCodeItems = this.loadInitialWixCodeItems.bind(this), this.getItemsFromWixCode = this.getItemsFromWixCode.bind(this), this.setBlueprintIfNeeded = this.setBlueprintIfNeeded.bind(this), this.loadDirectFullscreenItemFromWixCode = this.loadDirectFullscreenItemFromWixCode.bind(this), this.prepareAndSetItems = this.prepareAndSetItems.bind(this), this.prepareItems = this.prepareItems.bind(this), this.getItems = this.getItems.bind(this), this.setDirectFullscreenItem = this.setDirectFullscreenItem.bind(this), this.setDirectFullscreenMockBlueprint = this.setDirectFullscreenMockBlueprint.bind(this), this.createDirectFullscreenBlueprintMockIfNeeded = this.createDirectFullscreenBlueprintMockIfNeeded.bind(this), this.createDirectFullscreenMockBlueprint = this.createDirectFullscreenMockBlueprint.bind(this), this.itemDimensionsCache = {}, this.viewMode = R.a.parseViewMode(this.wixCodeApi.window.viewMode), this.deviceType = R.a.formFactorToDeviceType(this.wixCodeApi.window.formFactor), this.isMobile = R.c.isMobile(this.deviceType), this.initDimensions(), this.baseUrl = R.a.getBaseUrl(this.wixCodeApi, this.viewMode), this.SSRWorkerLog.push("baseUrl: " + this.baseUrl), this.scopedGlobalSdkApis = a, this.pgRenderStart = Date.now(), this.sentryReport = m, this.setDirectfullscreenOnce = !1, this.ITEMS_BATCH_SIZE = 50, this.INITIAL_ITEMS_BATCH_SIZE = 25, this.shouldUseBlueprintsFromServer = !1, this.directFullscreenMockBlueprint = !1, this.loadMoreClicked = !1;
                    try {
                        this.createFedopsLogger(o), this.fedopsLogger.appLoadStarted(), this.isAppLoadStartReported = !0
                    } catch (e) {
                        console.error("Cannot create fedops logger", e), this.fedopsLogger = {
                            appLoaded: function() {},
                            appLoadStarted: function() {}
                        }, this.isAppLoadStartReported = !0
                    }
                    this.fullListOfItemsLoveData = [], this.SSRWorkerLog.push("finnished the pgStore constructor. this isSSR?: " + (this.isSSR() ? "TRUE" : "FALSE"))
                }
                return e.prototype.handleNewUserConfig = function(e) {
                    var t = e.style.styleParams,
                        i = e.dimensions;
                    this.handleNewUserConfigDimensions(i), this.setWixStyles(t), this.recalculateStylesExpensively(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.ceilDimensions = function(e) {
                    var t = {};
                    return Object.entries(e).forEach((function(e) {
                        var i = e[0],
                            r = e[1];
                        t[i] = "number" == typeof r ? Math.ceil(r) : r
                    })), t
                }, e.prototype.handleNewUserConfigDimensions = function(e) {
                    (e = this.ceilDimensions(e)) && JSON.stringify(this.userConfigDimensions) !== JSON.stringify(e) && (this.setUserDimensions(e), this.userConfigDimensions = Object(r.a)({}, e))
                }, e.prototype.initDimensions = function() {
                    this.initDefaultDimensions(), this.handleNewUserConfigDimensions(this.context.dimensions || {})
                }, e.prototype.initDefaultDimensions = function() {
                    this.requestedHeight = !1, this.requestedWidth = !1, this.dimensions = Object(r.a)({}, he[this.isMobile ? "mobile" : "desktop"])
                }, e.prototype.getDimensions = function() {
                    return this.dimensions
                }, e.prototype.handleMeasuredDimensions = function(e) {
                    this.setClientMeasuredDimensions(e), this.fixGalleryStyleRatiosInMobile(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.setHeightByLayoutchanges = function(e) {
                    this.setUserDimensions(Object(r.a)(Object(r.a)({}, this.userDimensions), {
                        height: e
                    })), this.fixGalleryStyleRatiosInMobile(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.setClientMeasuredDimensions = function(e) {
                    this.clientMeasuredDimensions = Object(R.b)(e) || this.clientMeasuredDimensions, this.recalculateDimensions()
                }, e.prototype.recalculateDimensions = function() {
                    var e = Object(r.a)(Object(r.a)(Object(r.a)({}, this.dimensions), this.clientMeasuredDimensions), this.userDimensions);
                    this.setKnownDimensions(), this.setDimensions(e)
                }, e.prototype.setUserDimensions = function(e) {
                    var t = Object(R.b)(e);
                    JSON.stringify(t) !== JSON.stringify(this.userDimensions) && (this.userDimensions = t || this.userDimensions, this.recalculateDimensions())
                }, e.prototype.setDimensions = function(e) {
                    JSON.stringify(e) !== JSON.stringify(this.dimensions) && (this.SSRWorkerLog.push("setting dimensions: w: " + e.width + ",h: " + e.height), this.dimensions = Object(r.a)(Object(r.a)({}, this.dimensions), e)), this.dimensionsAreAvailableDeferred.resolve()
                }, e.prototype.setKnownDimensions = function() {
                    var e = Object(r.a)(Object(r.a)({}, this.clientMeasuredDimensions), this.userDimensions);
                    (null == e ? void 0 : e.height) === this.requestedHeight && (null == e ? void 0 : e.width) === this.requestedWidth || (this.requestedHeight = e.height, this.requestedWidth = e.width, this.setKnownDimensionsCallback())
                }, e.prototype.handleLoadMoreClicked = function() {
                    this.loadMoreClicked = !0, this.setIsInfinite()
                }, e.prototype.setIsInfinite = function() {
                    var e, t, i;
                    this.isInfiniteScroll = !(this.calculatedGalleryStyles.scrollDirection === a.a.scrollDirection.HORIZONTAL || this.calculatedGalleryStyles.scrollDirection === a.a.scrollDirection.VERTICAL && !1 === this.calculatedGalleryStyles.enableInfiniteScroll && !this.loadMoreClicked), this.isFixedRatioHorizontalGallery = this.calculatedGalleryStyles.scrollDirection === a.a.scrollDirection.HORIZONTAL && (null === (i = null === (t = null === (e = this.calculatedGalleryStyles.layoutParams) || void 0 === e ? void 0 : e.structure) || void 0 === t ? void 0 : t.galleryRatio) || void 0 === i ? void 0 : i.value) > 0, this.debouncedSetHeightControlMode()
                }, e.prototype.isSSR = function() {
                    return "backend" === this.wixCodeApi.window.rendering.env
                }, e.prototype.isSEO = function() {
                    return this.wixCodeApi.seo.isInSEO()
                }, e.prototype.getFedopsCustomParams = function() {
                    return {
                        customParams: JSON.stringify({
                            gallery_id: this.fetcher.galleryId || "galleryId is undefined"
                        })
                    }
                }, e.getSiteUrl = function(e) {
                    return e.location.baseUrl
                }, e.getPageUrl = function(e) {
                    return e.location.url.split("?")[0]
                }, e.prototype.createShareUrl = function(t, i) {
                    return this.isArtStore ? null : e.getPageUrl(i) + "?pgid=" + this.context.compId.replace("comp-", "") + "-" + t
                }, e.getCurrentDirectFullscreenUrl = function(t) {
                    var i = e.getPageUrl(t),
                        r = t.location.query,
                        o = r && r.pgid;
                    return o ? i + "?pgid=" + o : null
                }, e.getTranslations = function(e) {
                    return fetch(e).then((function(e) {
                        return e.json()
                    })).catch((function() {
                        return {}
                    }))
                }, e.prototype.getConnectedProvidersFromServer = function(e) {
                    void 0 === e && (e = !1);
                    var t = this.context.instance;
                    e && (t = e);
                    var i = this.baseUrl + "/_api/pro-gallery-webapp/v1/store/providers?instance=" + t;
                    return fetch(i).then((function(e) {
                        return e.json()
                    }))
                }, e.prototype.getQueryParams = function() {
                    return this.wixCodeApi.location.query
                }, e.prototype.isValidUUID = function(e) {
                    return !!e.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i)
                }, e.prototype.getMoreItemsFromServer = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t;
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return i.trys.push([0, 2, , 3]), [4, this.fetcher.getGalleryDataFromServer({
                                        from: e
                                    })];
                                case 1:
                                    return [2, i.sent().items];
                                case 2:
                                    return t = i.sent(), console.error("couldnt get more items from server", t), [2, ce];
                                case 3:
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.navigateToLink = function(e) {
                    var t = e && e.dto && e.dto.metaData && e.dto.metaData.link;
                    try {
                        if (t)
                            if ("web" === t.type) this.wixCodeApi.location.to(t.url);
                            else if ("page" === t.type) try {
                            var i = this.wixCodeApi.site.getSiteStructure({
                                includePageId: !0
                            }).pages.find((function(e) {
                                return e.id === t.url
                            })).url;
                            this.wixCodeApi.location.to(i)
                        } catch (e) {
                            console.warn("Cannot navigate to page", e)
                        } else if ("wix" === t.type) {
                            var r = t.data;
                            if (r) this.wixCodeApi.location.getExternalUrl(r) ? console.error("this should have been handled by <a href>") : this.wixCodeApi.location.navigateTo(r)
                        }
                    } catch (e) {
                        console.error(e)
                    }
                }, e.prototype.getVideoMediaId = function(e) {
                    return e.metaData.videoUrl && e.metaData.videoUrl.includes("wix:video://") ? e.metaData.videoUrl.split("/")[3] || e.itemId : e.mediaUrl
                }, e.prototype.getItemWithVideoUrls = function(e) {
                    var t = this.getVideoMediaId(e);
                    return B.getVideoURLs(t).then((function(t) {
                        if (e.metaData.qualities = t.filter((function(e) {
                                return "MP4" === e.type
                            })).map((function(t) {
                                var i = t.url,
                                    r = t.quality,
                                    o = parseInt(r);
                                return {
                                    url: i,
                                    height: o,
                                    width: Math.floor(o * e.metaData.width / e.metaData.height),
                                    quality: r,
                                    formats: ["mp4"]
                                }
                            })), e.metaData.videoUrl = void 0, j.a.getExperimentBoolean("specs.pro-gallery.excludeFromHlsVideos")) e.metaData.ghostItem = !0;
                        else {
                            var i = t.filter((function(e) {
                                return "HLS" === e.type
                            }));
                            i.length > 0 && (e.metaData.videoUrl = i[0].url)
                        }
                        return e
                    })).catch((function(t) {
                        return e.metaData.ghostItem = !0, e
                    }))
                }, e.prototype.getItemsWithWixVideosUrls = function(e) {
                    var t = this,
                        i = e.map((function(e) {
                            return t.isUnreadyVideoFile(e) ? t.getItemWithVideoUrls(e) : Promise.resolve(e)
                        }));
                    return Promise.all(i)
                }, e.prototype.replaceByPlaceHolder = function(e) {
                    return {
                        itemId: e.itemId,
                        mediaUrl: e.metaData.posters[0].url,
                        orderIndex: 0,
                        metaData: Object(r.a)(Object(r.a)({}, e.metaData), {
                            type: "image",
                            isVideoPlaceholder: !0,
                            height: e.metaData.posters[0].height,
                            width: e.metaData.posters[0].width
                        })
                    }
                }, e.prototype.isUnreadyVideoFile = function(e) {
                    return !e.metaData.ghostItem && (e.metaData.videoUrl && e.metaData.videoUrl.includes("wix:video://") || "video" === e.metaData.type && e.mediaUrl && !e.metaData.videoUrl)
                }, e.prototype.addItemProperties = function(e) {
                    var t, i, r, o = !1;
                    this.isUnreadyVideoFile(e) && (e = this.replaceByPlaceHolder(e), o = !0);
                    try {
                        if (this.sitePages || (this.sitePages = this.wixCodeApi.site.getSiteStructure({
                                includePageId: !0
                            }).pages), "PageLink" === (null === (r = null === (i = null === (t = e.metaData) || void 0 === t ? void 0 : t.link) || void 0 === i ? void 0 : i.data) || void 0 === r ? void 0 : r.type)) {
                            var a = this.sitePages.find((function(t) {
                                return e.metaData.link.data.pageId.endsWith(t.id)
                            }));
                            a && "name" in a && (e.metaData.link.data.pageName = a.name)
                        }
                    } catch (e) {
                        console.log("ProGalleryStore, addItemProperties, try to add a pageName to an item if needed, error:", e)
                    }
                    var n = {
                        url: void 0,
                        target: void 0
                    };
                    if (e.metaData && e.metaData.link) {
                        var s = e.metaData.link;
                        if ("web" === s.type && "string" == typeof s.url)("http" === s.url.slice(0, 4) || "//" === s.url.slice(0, 2) || this.wixCodeApi.seo.isInSEO()) && (n = {
                            url: s.url,
                            target: "_blank"
                        });
                        else if ("wix" === s.type) {
                            var l = s.data;
                            if (l) try {
                                var u = this.wixCodeApi.location.getExternalUrl(l);
                                if (u) n = {
                                    url: u,
                                    target: l.target || s.target || "_blank"
                                };
                                else if (l.pageName && "_blank" === l.target && "PageLink" === l.type) {
                                    var c = this.wixCodeApi.site.getSiteStructure({
                                            includePageId: !0
                                        }).pages.find((function(e) {
                                            return e.name === l.pageName
                                        })),
                                        h = c && c.url && this.wixCodeApi.location.baseUrl && this.wixCodeApi.location.baseUrl + c.url;
                                    n = h ? {
                                        url: h,
                                        target: "_blank"
                                    } : n
                                }
                            } catch (e) {
                                console.error(e)
                            }
                        }
                    }
                    e.directLink = n;
                    return e.directShareLink = j.a.getExperimentBoolean("specs.pro-gallery.itemDeeplinks") ? this.createShareUrl(e.id || e.photoId || e.itemId, this.wixCodeApi) : null, {
                        item: e,
                        convertedToPlaceholder: o
                    }
                }, e.prototype.prepareItems = function(e) {
                    var t, i = this,
                        o = !1,
                        a = [],
                        n = ne.shouldUseReactionService();
                    return e && e.length >= 0 ? t = e.map((function(e) {
                        var t = i.addItemProperties(e),
                            s = t.item,
                            l = t.convertedToPlaceholder;
                        if (!o && l && (o = !0), R.c.isDimensionless(s)) {
                            var u = i.addDimensionsFromCache(s);
                            u && (s = u)
                        }
                        if ("string" == typeof s.metaData) try {
                            s = Object(r.a)(Object(r.a)({}, s), {
                                metaData: JSON.parse(s.metaData)
                            })
                        } catch (e) {
                            console.error("Failed parse item metaData", e)
                        }
                        return !s.isVisitedLoveData && n && (a.push({
                            itemId: e.itemId
                        }), s.isVisitedLoveData = !0), s
                    })) : (console.error("corrupt items", e, "returning old items instead"), t = this.items), this.getItemsLoveDataIfNeeded(a), {
                        itemsToSet: t,
                        shouldGetVideoUrls: o
                    }
                }, e.prototype.getItemsFromWixCode = function(e) {
                    var t = e.from,
                        i = e.batchSize,
                        r = void 0 === i ? this.ITEMS_BATCH_SIZE : i;
                    return this.allWixCodeItems.slice(t, t + r)
                }, e.prototype.loadInitialWixCodeItems = function() {
                    var e = this.getItemsFromWixCode({
                        from: 0,
                        batchSize: this.INITIAL_ITEMS_BATCH_SIZE
                    });
                    this.prepareAndSetItems({
                        newItems: e
                    }), this.loadDirectFullscreenItemFromWixCode()
                }, e.prototype.loadDirectFullscreenItemFromWixCode = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var e;
                        return Object(r.c)(this, (function(t) {
                            switch (t.label) {
                                case 0:
                                    return [4, L.a.getDirectFullscreenItemFromItemsList(this.wixCodeApi.location.query, this.allWixCodeItems, this.context.compId, this.fetcher)];
                                case 1:
                                    return (e = t.sent()) ? this.prepareAndSetDirectFullscreenItem(e) : this.directFullscreenReadyDeferred.resolve(), [2]
                            }
                        }))
                    }))
                }, e.prototype.prepareAndSetItems = function(e) {
                    var t = e.newItems,
                        i = e.setItemsId,
                        r = e.currentItems,
                        o = void 0 === r ? [] : r;
                    if (!i || i === this.setItemsCurrentId) {
                        i || this.setItemsCurrentId++;
                        var a = this.prepareItems(t),
                            n = a.itemsToSet;
                        a.shouldGetVideoUrls && this.buildVideoUrlsAndSet({
                            newItems: t,
                            setItemsId: this.setItemsCurrentId,
                            currentItems: o
                        }), this.setItems(o.concat(n))
                    }
                }, e.prototype.getItemsLoveDataIfNeeded = function(e) {
                    var t = this,
                        i = this.wixStyles,
                        o = Object(k.a)(i).loveButton;
                    if (ne.shouldUseReactionService() && o && e.length > 0) {
                        var a = this.context.instance,
                            n = this.fetcher.galleryId,
                            s = this.APP_DEFINITION_ID;
                        ne.getItemsLoveData(e, a, this.baseUrl, n, s, this.sentryReport).then((function(e) {
                            t.fullListOfItemsLoveData = Object(r.a)(Object(r.a)({}, t.fullListOfItemsLoveData), e), t.setItemsLoveDataCallback(t.fullListOfItemsLoveData)
                        }))
                    }
                }, e.prototype.buildVideoUrlsAndSet = function(e) {
                    var t = this,
                        i = e.newItems,
                        r = e.setItemsId,
                        o = e.currentItems;
                    this.getItemsWithWixVideosUrls(i).then((function(e) {
                        t.prepareAndSetItems({
                            newItems: e,
                            setItemsId: r,
                            currentItems: o
                        })
                    }))
                }, e.prototype.setItems = function(e) {
                    var t, i = e.filter((function(e) {
                        return !!e.mediaUrl || e.metaData && !!e.metaData.html
                    }));
                    this.SSRWorkerLog.push("setting items, first item id is: " + (null === (t = i[0]) || void 0 === t ? void 0 : t.itemId)), this.SSRWorkerLog.push("items src is: " + this.itemsSrc), this.items = i || this.items, this.itemsAreAvailableDeferred.resolve(), this.triggerBlueprintCreation({
                        settingNewItems: !0
                    })
                }, e.prototype.setAllWixCodeItems = function(e) {
                    var t;
                    this.SSRWorkerLog.push("trying to set " + (null == e ? void 0 : e.length) + " wixCode items, first item id: " + (null === (t = e[0]) || void 0 === t ? void 0 : t.itemId));
                    var i = e.filter((function(e) {
                        return !!e.mediaUrl || e.metaData && !!e.metaData.html
                    }));
                    this.allWixCodeItems = i
                }, e.prototype.getItems = function() {
                    return this.items || []
                }, e.prototype.getBlueprint = function() {
                    return this.blueprint
                }, e.prototype.setBlueprint = function(e) {
                    this.blueprint = e, "Velo" === this.itemsSrc ? (this.SSRWorkerLog.push("setting a blueprint while currentItems are wixCode"), this.wixCodeBlueprintDeferred.resolve()) : this.SSRWorkerLog.push("setting a server-items blueprint"), this.blueprintReadyDeferred.resolve(), this.setBlueprintCallback()
                }, e.prototype.itemToGalleryItem = function(e, t) {
                    return new c({
                        dto: e,
                        watermark: void 0,
                        createMediaUrl: H({
                            staticMediaUrls: t,
                            isPrerenderMode: !1
                        })
                    })
                }, e.prototype.constructMetaTagsItemData = function(e, t, i) {
                    return {
                        item: {
                            id: e.id,
                            type: e.type,
                            title: e.title,
                            description: e.description,
                            page_url: t,
                            fullscreen_url: i,
                            image: {
                                url: e.createUrl(a.a.urlSizes.RESIZED, a.a.urlTypes.HIGH_RES),
                                width: e.width,
                                height: e.height
                            },
                            video_url: e.videoUrl || e.createUrl(a.a.urlSizes.RESIZED, a.a.urlTypes.VIDEO),
                            thumbnail: {
                                url: e.createUrl(a.a.urlSizes.RESIZED, a.a.urlTypes.LOW_RES),
                                width: 250,
                                height: 250
                            }
                        }
                    }
                }, e.prototype.setMetaTagsInSSR = function(e, t, i, r, o) {
                    var a = this.itemToGalleryItem(e, o),
                        n = this.constructMetaTagsItemData(a, t, i);
                    this.setMetaTags(n, r)
                }, e.prototype.setMetaTags = function(e, t) {
                    e.item ? t.seo.renderSEOTags({
                        itemType: "PRO_GALLERY_ITEM",
                        itemData: e,
                        asNewPage: !0
                    }) : t.seo.resetSEOTags()
                }, e.prototype.prepareAndSetDirectFullscreenItem = function(e) {
                    var t = this,
                        i = this.prepareItems([e]),
                        r = i.itemsToSet;
                    i.shouldGetVideoUrls && this.getItemWithVideoUrls(e).then((function(e) {
                        t.prepareAndSetDirectFullscreenItem(e)
                    }));
                    var o = r[0];
                    o.itemId && !o.metaData.isVideoPlaceholder && this.setDirectFullscreenItem(o)
                }, e.prototype.createDirectFullscreenMockBlueprint = function() {
                    return D.createBlueprint({
                        params: {
                            items: [this.directFullscreenItem],
                            container: this.isMobile ? he.mobile.screen : he.desktop.screen,
                            options: le
                        },
                        lastParams: {},
                        existingBlueprint: {},
                        blueprintManagerId: "direct fullscreen item blueprints",
                        isUsingCustomInfoElements: !0
                    })
                }, e.prototype.createDirectFullscreenBlueprintMockIfNeeded = function() {
                    var e = this;
                    this.isSSR() && this.isSEO() ? this.directFullscreenItemReadyDeferred.promise.then((function() {
                        var t = e.createDirectFullscreenMockBlueprint();
                        e.setDirectFullscreenMockBlueprint(t)
                    })).catch((function() {
                        e.directFullscreenBlueprintMockReadyDeferred.resolve()
                    })) : this.directFullscreenBlueprintMockReadyDeferred.resolve()
                }, e.prototype.setDirectFullscreenMockBlueprint = function(e) {
                    this.directFullscreenMockBlueprint = e || this.directFullscreenMockBlueprint, this.directFullscreenBlueprintMockReadyDeferred.resolve(), this.setDirectFullscreenMockPropCallback()
                }, e.prototype.setDirectFullscreenItem = function(e) {
                    this.directFullscreenItem = e || this.directFullscreenItem, this.directFullscreenItemReadyDeferred.resolve(), this.setDirectFullscreenPropCallback()
                }, e.prototype.getDirectFullscreenItem = function() {
                    return !!this.directFullscreenItem && this.directFullscreenItem
                }, e.prototype.getDirectFullscreenMockBlueprint = function() {
                    return !!this.directFullscreenMockBlueprint && this.directFullscreenMockBlueprint
                }, e.prototype.getTestType = function() {
                    var e = this.getQueryParams(),
                        t = e && e.pgTestType;
                    return t || null
                }, e.prototype.getSSRWorkerLog = function() {
                    return this.SSRWorkerLog.push(" ######## requesting the worker log ######### (and setting props to the component"), this.SSRWorkerLog
                }, e.prototype.addItems = function(e, t) {
                    var i = this.getItems();
                    this.prepareAndSetItems({
                        newItems: e,
                        currentItems: i.slice(0, t)
                    })
                }, e.prototype.loadInitialItems = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var e, t, i, o, a, n = this;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    return this.SSRWorkerLog.push("Fn loadIntialItems"), R.c.isVerbose() && console.log("Getting initial items from server", this.items, this.totalItemsCount), this.items && this.items.length > 0 ? [2, Promise.resolve(this.items)] : [3, 1];
                                case 1:
                                    return e = void 0, this.avoidGettingItemsFromPGServer ? (e = ce, [3, 5]) : [3, 2];
                                case 2:
                                    return r.trys.push([2, 4, , 5]), [4, this.withWarmupData((function() {
                                        return n.fetcher.getGalleryDataFromServer({
                                            from: 0,
                                            batchSize: n.INITIAL_ITEMS_BATCH_SIZE
                                        })
                                    }), "galleryData")];
                                case 3:
                                    return t = r.sent(), o = t.items, a = t.totalItemsCount, e = {
                                        items: o,
                                        totalItemsCount: a
                                    }, this.fetcher.requireManualGalleryDataSet && this.fetcher.setGalleryData(t), [3, 5];
                                case 4:
                                    return i = r.sent(), console.error("couldnt get items", i), e = ce, [3, 5];
                                case 5:
                                    R.c.isVerbose() && console.log("Got initial items from server", e);
                                    try {
                                        o = e.items, a = e.totalItemsCount, "Velo" !== this.itemsSrc && (this.prepareAndSetItems({
                                            newItems: o
                                        }), this.totalItemsCount = Number(a))
                                    } catch (t) {
                                        console.error("Could not fetch initial items from server", t, e), this.totalItemsCount = 1
                                    }
                                    return [2, this.getItems()]
                            }
                        }))
                    }))
                }, e.prototype.getBlueprintFromServer = function(e) {
                    var t, i;
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var o, a;
                        return Object(r.c)(this, (function(n) {
                            switch (n.label) {
                                case 0:
                                    this.SSRWorkerLog.push("getting blueprint from server first itemId:", null === (i = null === (t = null == e ? void 0 : e.params) || void 0 === t ? void 0 : t.items[0]) || void 0 === i ? void 0 : i.itemId), this.SSRWorkerLog.push("Sending a request the blueprints server: "), n.label = 1;
                                case 1:
                                    return n.trys.push([1, 4, , 5]), o = this.baseUrl + "/_serverless/pro-gallery-blueprints-server/createBlueprint", [4, fetch(o, {
                                        method: "POST",
                                        credentials: "omit",
                                        headers: {
                                            "Content-Type": "application/json"
                                        },
                                        body: JSON.stringify(Object(r.a)({}, e))
                                    })];
                                case 2:
                                    return [4, n.sent().json()];
                                case 3:
                                    return [2, n.sent()];
                                case 4:
                                    return a = n.sent(), console.error("couldnt get blueprint from server ", a), [3, 5];
                                case 5:
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.isServerBlueprintsForcedByQuery = function() {
                    var e = this.wixCodeApi.location.query;
                    return e && "true" === e.forceServerBlueprints
                }, e.prototype.createInitialBlueprint = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var e, t, i = this;
                        return Object(r.c)(this, (function(o) {
                            switch (o.label) {
                                case 0:
                                    return this.SSRWorkerLog.push("Creating initial blueprint"), e = this.viewMode === a.a.viewMode.PREVIEW && j.a.getExperimentBoolean("specs.pro-gallery.useServerBlueprints-preview"), t = this.viewMode !== a.a.viewMode.PREVIEW && j.a.getExperimentBoolean("specs.pro-gallery.useServerBlueprints-viewer"), this.shouldUseBlueprintsFromServer = t || e || this.isServerBlueprintsForcedByQuery(), this.blueprintsManager = new M({
                                        id: "pgStore " + this.context.compId
                                    }), this.generateBlueprintsApi(), [4, this.loadInitialItems()];
                                case 1:
                                    return o.sent(), this.blueprintsManagerReadyDeferred.resolve(), [2, Promise.all([this.dimensionsAreAvailableDeferred.promise, this.wixStylesAreAvailableDeferred.promise, this.itemsAreAvailableDeferred.promise, this.viewMode === a.a.viewMode.EDIT ? Promise.reject() : Promise.resolve()]).then((function() {
                                        return Object(r.b)(i, void 0, void 0, (function() {
                                            return Object(r.c)(this, (function(e) {
                                                return this.triggerBlueprintCreation(!0), [2]
                                            }))
                                        }))
                                    }), (function() {
                                        return Object(r.b)(i, void 0, void 0, (function() {
                                            return Object(r.c)(this, (function(e) {
                                                return this.setBlueprint({}), [2]
                                            }))
                                        }))
                                    }))]
                            }
                        }))
                    }))
                }, e.prototype.initFlowPromises = function() {
                    var e = this;
                    this.blueprintReadyDeferred = new ue, this.wixCodeBlueprintDeferred = new ue, this.blueprintsManagerReadyDeferred = new ue, this.dimensionsAreAvailableDeferred = new ue, this.wixStylesAreAvailableDeferred = new ue, this.itemsAreAvailableDeferred = new ue, this.readyToCreateBlueprintsDeferred = new ue, this.directFullscreenReadyDeferred = new ue, this.directFullscreenItemReadyDeferred = new ue, this.directFullscreenBlueprintMockReadyDeferred = new ue, Promise.all([this.dimensionsAreAvailableDeferred.promise, this.wixStylesAreAvailableDeferred.promise, this.itemsAreAvailableDeferred.promise, this.blueprintsManagerReadyDeferred.promise]).then((function() {
                        e.readyToCreateBlueprintsDeferred.resolve()
                    })), Promise.all([this.directFullscreenItemReadyDeferred.promise, this.directFullscreenBlueprintMockReadyDeferred.promise]).then((function() {
                        e.directFullscreenReadyDeferred.resolve()
                    }))
                }, e.prototype.addDimensionsToCache = function(e) {
                    var t = this;
                    e.forEach((function(e) {
                        t.itemDimensionsCache[e.mediaUrl] = e
                    }))
                }, e.prototype.addDimensionsFromCache = function(e) {
                    var t = this.itemDimensionsCache[e.mediaUrl];
                    return t ? Object(r.a)(Object(r.a)({}, e), {
                        metaData: Object(r.a)(Object(r.a)({}, e.metaData), {
                            width: t.width,
                            height: t.height
                        }),
                        measured: !0
                    }) : null
                }, e.prototype.handleNewItemDimensions = function(e) {
                    var t = this;
                    this.addDimensionsToCache(e);
                    var i = this.getItems(),
                        r = !1,
                        o = i.map((function(e) {
                            if (R.c.isDimensionless(e)) {
                                var i = t.addDimensionsFromCache(e);
                                i && (e = i, r = !0)
                            }
                            return e
                        }));
                    r && this.setItems(o)
                }, e.prototype.setWixStyles = function(e) {
                    this.wixStyles = e || this.wixStyles, this.wixStylesAreAvailableDeferred.resolve()
                }, e.prototype.handleWixStylesChange = function(e) {
                    this.setWixStyles(e), this.recalculateStylesExpensively(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.getMoreItems = function(e) {
                    this.blueprintsManager.getMoreItems(e)
                }, e.prototype.getMoreItemsFromItemsSource = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var t = this;
                        return Object(r.c)(this, (function(i) {
                            return [2, ("Velo" === this.itemsSrc ? this.getMoreWixCodeItems : this.getMoreItemsFromServer)(e).then((function(e) {
                                t.addItems(e)
                            }))]
                        }))
                    }))
                }, e.prototype.getMoreWixCodeItems = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        return Object(r.c)(this, (function(t) {
                            return [2, this.getItemsFromWixCode({
                                from: e,
                                batchSize: this.ITEMS_BATCH_SIZE
                            })]
                        }))
                    }))
                }, e.prototype.getTotalItemsCount = function() {
                    return this.totalItemsCount || 1337
                }, e.prototype.createBlueprintImp = function(e) {
                    return this.shouldUseBlueprintsFromServer ? (e.deviceType = this.deviceType, this.getBlueprintFromServer(e)) : D.createBlueprint(e)
                }, e.prototype.isBlueprintOfCurrentItems = function(e) {
                    var t, i;
                    return (null === (t = null == e ? void 0 : e.items[0]) || void 0 === t ? void 0 : t.itemId) === (null === (i = this.items[0]) || void 0 === i ? void 0 : i.itemId)
                }, e.prototype.setBlueprintIfNeeded = function(e, t) {
                    void 0 === t && (t = !0), e && (this.SSRWorkerLog.push("LOGIC got a blueprint, are there changes from the last one?" + (t ? " TRUE" : " FALSE")), this.SSRWorkerLog.push(this.isBlueprintOfCurrentItems(e) ? "LOGIC blueprint contains current items" : "LOGIC blueprint contains older items and will not be set"), t && this.isBlueprintOfCurrentItems(e) && this.setBlueprint(e))
                }, e.prototype.generateBlueprintsApi = function() {
                    var e = this,
                        t = {
                            createBlueprintImp: function(t) {
                                return e.createBlueprintImp(t)
                            },
                            getItems: function() {
                                return e.getItems()
                            },
                            getMoreItems: function(t) {
                                return e.getMoreItemsFromItemsSource(t).then((function() {
                                    return e.getItems()
                                }))
                            },
                            getTotalItemsCount: function() {
                                return e.totalItemsCount
                            },
                            getOptions: function() {
                                return e.getPGStyles()
                            },
                            getContainer: function() {
                                return e.getDimensions()
                            },
                            onBlueprintReady: this.setBlueprintIfNeeded
                        },
                        i = new re(t);
                    this.blueprintsManager.init({
                        api: i,
                        deviceType: this.deviceType
                    })
                }, e.prototype.loadInitialBlueprint = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        return Object(r.c)(this, (function(e) {
                            switch (e.label) {
                                case 0:
                                    return this.SSRWorkerLog.push("Fn loadInitialBlueprint"), [4, R.a.verifyExperiments(this.scopedGlobalSdkApis)];
                                case 1:
                                    e.sent(), this.SSRWorkerLog.push("Experiments are here, can create a blueprint"), R.c.isVerbose() && console.log("Getting initial blueprint");
                                    try {
                                        this.createInitialBlueprint()
                                    } catch (e) {
                                        console.error("couldnt get blueprint", e)
                                    }
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.loadDirectFullscreenItem = function(e, t) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var i, o, a = this;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    return t ? [4, this.fetcher.fetchGalleryId()] : [3, 2];
                                case 1:
                                    if (r.sent(), t !== this.fetcher.galleryId) return this.directFullscreenReadyDeferred.resolve(), [2];
                                    this.isValidUUID(e) || (console.error("used requestedItemId is not valid"), this.directFullscreenReadyDeferred.resolve()), r.label = 2;
                                case 2:
                                    return r.trys.push([2, 4, , 5]), [4, this.withWarmupData((function() {
                                        return a.fetcher.getItemByIdFromServer(e)
                                    }), "directFullscreenItem")];
                                case 3:
                                    return i = r.sent(), [3, 5];
                                case 4:
                                    return o = r.sent(), R.c.isVerbose() && console.warn("Could not get direct fullscreen from server (could be velo item)", o), i = null, [3, 5];
                                case 5:
                                    return i && i.itemId ? "Velo" !== this.itemsSrc && this.prepareAndSetDirectFullscreenItem(i) : ("Velo" !== this.itemsSrc && this.directFullscreenReadyDeferred.resolve(), R.c.isVerbose() && console.log("Could not fetch direct fullscreen item from server", i, "" + this.directFullscreenItem ? "The directFullscreen was loaded from wixCode" : "")), [2]
                            }
                        }))
                    }))
                }, e.prototype.pageReady = function(e) {
                    this.setProps = e
                }, e.prototype.handleManualStyleParams = function(e) {
                    this.setManualStyleParams(e), this.recalculateStylesExpensively(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.triggerBlueprintCreation = function(e) {
                    var t = this,
                        i = e.settingNewItems;
                    this.readyToCreateBlueprintsDeferred.promise.then((function() {
                        !0 === i && t.blueprintsManager.resetItemLooping(), t.blueprintsManager.createBlueprint()
                    }))
                }, e.prototype.setManualStyleParams = function(e) {
                    this.manualStyleParams = e
                }, e.prototype.getManualStyleParams = function() {
                    return this.manualStyleParams || {}
                }, e.prototype.shouldDisableStoreExpandMode = function() {
                    if (this.isArtStore && this.fetcher.settings) {
                        var e = this.fetcher.settings,
                            t = e.freeArtStore,
                            i = e.ignoreFullscreen;
                        return !(!t || !i)
                    }
                    return !1
                }, e.prototype.isStoreGallery = function() {
                    var e, t = null === (e = this.fetcher.settings) || void 0 === e ? void 0 : e.freeArtStore;
                    return this.isArtStore && !t
                }, e.prototype.getGalleryStyles = function(e) {
                    var t = this.isMobile,
                        i = this.isStoreGallery();
                    return Object(k.a)(e, {
                        isMobile: t,
                        isStoreGallery: i
                    })
                }, e.prototype.getInfoElementsStyles = function(e) {
                    return X(e, {
                        isMobile: this.isMobile,
                        isStoreGallery: this.isStoreGallery()
                    })
                }, e.prototype.getFullscreenStyles = function(e) {
                    var t = this.isMobile,
                        i = this.isStoreGallery();
                    return ie(e, i, t)
                }, e.prototype.fixGalleryStyleRatiosInMobile = function() {
                    var e, t;
                    if (this.isMobile && !this.isSSR() && "number" == typeof(null === (e = this.calculatedGalleryStyles) || void 0 === e ? void 0 : e.gallerySize) && !(null === (t = this.calculatedGalleryStyles) || void 0 === t ? void 0 : t.responsive)) {
                        var i = this.baseMobileRatioStyles,
                            r = i.gallerySize,
                            o = i.imageMargin,
                            n = void 0;
                        n = this.viewMode === a.a.viewMode.PREVIEW || this.viewMode === a.a.viewMode.EDIT ? 320 / this.getDimensions().mobilePreviewFrame.width : 320 / this.getDimensions().screen.width, this.calculatedGalleryStyles.gallerySize = r * n, this.calculatedGalleryStyles.imageMargin = o * n
                    }
                }, e.prototype.delayedStylesRecalculation = function(e) {
                    this.viewMode === a.a.viewMode.EDIT && e && this.debouncedRecalculateStylesAndBluprints()
                }, e.prototype.recalculateStylesAndTriggerBlueprints = function() {
                    this.recalculateStylesExpensively(), this.triggerBlueprintCreation({
                        settingNewItems: !1
                    })
                }, e.prototype.recalculateStylesExpensively = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var e, t, i, o, a, s, l, u;
                        return Object(r.c)(this, (function(r) {
                            return e = this.wixStyles, this.shouldDisableStoreExpandMode() && (e.numbers.itemClick = 2), t = this.getGalleryStyles(e), i = Object(n.d)(t, this.getManualStyleParams()), o = i.gallerySize, a = i.imageMargin, s = i.previewHover, this.baseMobileRatioStyles = {
                                gallerySize: o,
                                imageMargin: a
                            }, this.calculatedGalleryStyles = i, this.setIsInfinite(), l = this.getFullscreenStyles(e), this.calculatedFullscreenStyles = Object(n.d)(l, this.getManualStyleParams()), u = this.getInfoElementsStyles(e), this.calculatedInfoElementStyles = Object(n.d)(u, this.getManualStyleParams()), this.fixGalleryStyleRatiosInMobile(), this.delayedStylesRecalculation(s), [2]
                        }))
                    }))
                }, e.prototype.getPGStyles = function() {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        return Object(r.c)(this, (function(e) {
                            switch (e.label) {
                                case 0:
                                    return [4, R.a.verifyExperiments(this.scopedGlobalSdkApis)];
                                case 1:
                                    return e.sent(), this.calculatedGalleryStyles ? [3, 3] : [4, this.recalculateStylesExpensively()];
                                case 2:
                                    e.sent(), e.label = 3;
                                case 3:
                                    return [2, this.calculatedGalleryStyles]
                            }
                        }))
                    }))
                }, e
            }();
        t.a = pe
    }, function(e, t, i) {
        "use strict";
        (function(e) {
            var r = i(0),
                o = i(45),
                a = i(12),
                n = i(29),
                s = i(2),
                l = function() {
                    function t() {
                        this._cache = {}, this._hash2int = {}, this._params = {}, Object.assign(this, o)
                    }
                    return t.prototype.shouldUseCache = function() {
                        return !Object(n.b)() && !Object(n.c)() && !this.isSSR()
                    }, t.prototype.isUndefined = function(e) {
                        return void 0 === e
                    }, t.prototype.uniqueBy = function(e, t) {
                        return e.filter((function(e, i, r) {
                            return r.map((function(e) {
                                return e[t]
                            })).indexOf(e[t]) === i
                        }))
                    }, t.prototype.inRange = function(e, t, i) {
                        if (void 0 === i && (i = t), 0 === t) throw new Error("Range cannot be 0");
                        for (; e < 0;) e += t;
                        for (; e > i;) e -= t;
                        return e
                    }, t.prototype.sliceArrayWithRange = function(e, t, i) {
                        var r = this;
                        return Array(i - t).fill(0).map((function(i, o) {
                            var a = t + o;
                            return e[r.inRange(a, e.length, e.length - 1)]
                        }))
                    }, t.prototype.sliceArrayIfAvailable = function(e, t, i) {
                        var r = Math.max(t, 0),
                            o = Math.min(i, e.length);
                        return r > t && (o = Math.min(o + (r - t), e.length)), o < i && (r = Math.max(r - (i - o), 0)), this.sliceArrayWithRange(e, r, o)
                    }, t.prototype.dumpCache = function() {
                        this._cache = {}
                    }, t.prototype.getOrPutFromCache = function(e, t) {
                        return this.shouldUseCache() ? (void 0 !== this._cache[e] || (this._cache[e] = t()), this._cache[e]) : t()
                    }, t.prototype.hashToInt = function(e, t, i) {
                        var r = 0;
                        if (this.isUndefined(e) || 0 === e.length) return r;
                        if (!this._hash2int[e]) {
                            for (var o = 0; o < e.length; o++) r += e.charCodeAt(o);
                            this._hash2int[e] = r
                        }
                        return this.isUndefined(t) || this.isUndefined(i) ? this._hash2int[e] : this._hash2int[e] % (i - t + 1) + t
                    }, t.prototype.parseGetParam = function(e, t) {
                        try {
                            if (!this.isUndefined(this._params[e])) return this._params[e];
                            var i = "",
                                r = [],
                                o = location;
                            if (t && (o = {
                                    search: "?" + (t.split("?")[1] || ""),
                                    pathname: (t.split("?")[0] || "").split("/")[1] || ""
                                }), o.search.substr(1).split("&").forEach((function(t) {
                                    (r = t.split("="))[0] === e && (i = decodeURIComponent(r[1]))
                                })), !i) {
                                var a = decodeURIComponent(o.pathname).split("?")[1];
                                if (!a) return "";
                                a.split("&").forEach((function(t) {
                                    (r = t.split("="))[0] === e && (i = decodeURIComponent(r[1]))
                                }))
                            }
                            return this._params[e] = i, i
                        } catch (e) {
                            return !1
                        }
                    }, t.prototype.stripSlashes = function(e) {
                        var t = "";
                        return "string" == typeof e && (t = e.replace(/\\\//g, "/").replace(/\\'/g, "'").replace(/\\"/g, '"').replace(/\\0/g, "\0").replace(/\\\\/g, "\\")), t
                    }, t.prototype.parseStringObject = function(e) {
                        if ("string" != typeof e) return e;
                        var t = this.stripSlashes(e);
                        if ("string" == typeof e && /^[\],:{}\s]*$/.test(t.replace(/\\["\\/bfnrtu]/g, "@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+-]?\d+)?/g, "]").replace(/(?:^|:|,)(?:\s*\[)+/g, ""))) try {
                            return JSON.parse(t)
                        } catch (e) {}
                        return t
                    }, t.prototype.hashCode = function(e) {
                        var t, i = 0;
                        if (0 === e.length) return i;
                        for (t = 0; t < e.length; t++) i = (i << 5) - i + e.charCodeAt(t), i |= 0;
                        return i
                    }, t.prototype.isMobileByProps = function() {
                        var e = this;
                        return this.getOrPutFromCache("isMobileByProps", (function() {
                            var t = e.parseGetParam("deviceType") || a.a.deviceType,
                                i = "true" === e.parseGetParam("showMobileView"),
                                r = Object(n.a)();
                            return !!i || (t ? String(t).toLowerCase().indexOf("mobile") >= 0 : r || void 0)
                        }))
                    }, t.prototype.isUserAgentMobile = function() {
                        try {
                            return this.getOrPutFromCache("isUserAgentMobile", (function() {
                                var e, t = !1;
                                return e = navigator.userAgent || navigator.vendor || a.a.opera, (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|pixel|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(e.substr(0, 4))) && (t = !0), t
                            }))
                        } catch (e) {
                            return !1
                        }
                    }, t.prototype.isMobile = function() {
                        var e = this;
                        return this.getOrPutFromCache("isMobile", (function() {
                            var t = e.isMobileByProps(),
                                i = e.isUserAgentMobile();
                            return e.isUndefined(t) ? i : t
                        }))
                    }, t.prototype.isTest = function() {
                        try {
                            return a.a.isTest
                        } catch (e) {
                            return !1
                        }
                    }, t.prototype.isLocal = function() {
                        try {
                            var e = a.a.location.hostname;
                            return "local.wix.com" === e || (e.indexOf("localhost") >= 0 || "true" === this.parseGetParam("debug"))
                        } catch (e) {
                            return !1
                        }
                    }, t.prototype.isDev = function() {
                        var e = this;
                        return this.getOrPutFromCache("isDev", (function() {
                            return e.shouldDebug("ph_local") || e.isOOI() && !1 || "true" === (e.safeLocalStorage() || {}).forceDevMode
                        }))
                    }, t.prototype.isVerbose = function() {
                        return !this.isTest() && "true" === (this.safeLocalStorage() || {}).forceDevMode
                    }, t.prototype.isStoreGallery = function() {
                        var e = this;
                        return this.getOrPutFromCache("isStoreGallery", (function() {
                            try {
                                return a.a.location.search.toLowerCase().indexOf("isstore") > -1
                            } catch (t) {
                                return e.isDev() && console.error("cant find window", t), !1
                            }
                        }))
                    }, t.prototype.isSSR = function() {
                        return void 0 === e.window
                    }, t.prototype.isOOI = function() {
                        return this.isSSR() || "undefined" != typeof top && "undefined" != typeof self && (top === self || self.location.origin.includes("editor.wix.com"))
                    }, t.prototype.generateUUID = function() {
                        return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(e) {
                            var t = Math.floor(16 * Math.random()) || 0;
                            return "x" === e ? t.toString(16) : e
                        }))
                    }, t.prototype.isExternalUrl = function(e) {
                        return /(^https?)|(^data)|(^blob)/.test(e)
                    }, t.prototype.isiOS = function() {
                        return this.getOrPutFromCache("isiOS", (function() {
                            try {
                                return /iPad|iPhone|iPod/.test(navigator.userAgent) && !a.a.MSStream
                            } catch (e) {
                                return !1
                            }
                        }))
                    }, t.prototype.isiPhone = function() {
                        return this.getOrPutFromCache("isiPhone", (function() {
                            try {
                                return /iPhone/.test(navigator.userAgent) && !a.a.MSStream
                            } catch (e) {
                                return !1
                            }
                        }))
                    }, t.prototype.isLandscape = function() {
                        var e = this;
                        return this.getOrPutFromCache("isLandscape", (function() {
                            if (!e.isMobile()) return !1;
                            try {
                                if (e.isUndefined(a.a.orientation)) {
                                    var t = a.a.matchMedia("(orientation: landscape)");
                                    return !(!t || !0 !== t.matches)
                                }
                                return 90 === a.a.orientation || -90 === a.a.orientation
                            } catch (e) {
                                return !1
                            }
                        }))
                    }, t.prototype.safeLocalStorage = function() {
                        try {
                            return localStorage || a.a
                        } catch (e) {
                            return a.a
                        }
                    }, t.prototype.shouldDebug = function(e) {
                        try {
                            return !!this.safeLocalStorage()[e] || (a.a.debugApp || "").indexOf(e) >= 0 || (this.parseGetParam("debugApp") || "").indexOf(e) >= 0
                        } catch (e) {
                            return !1
                        }
                    }, t.prototype.deviceHasMemoryIssues = function() {
                        return this.isiOS()
                    }, t.prototype.getTabIndex = function(e) {
                        var t = ["currentGalleryItem", "loadMoreButton", "slideshowNext", "slideshowPrev", "currentThumbnail", "slideshowLove", "slideshowShare", "cartIcon", "cartClose", "cartFrame", "fullscreenClose", "fullscreenNext", "fullscreenPrev", "fullscreenInfo", "fullscreenLink", "fullscreenProvider", "fullscreenCartButton", "fullscreenCheckout", "fullscreenExpand", "fullscreenVideoPlay", "fullscreenVideoBar", "fullscreenVideoMute", "fullscreenVideoVolume", "fullscreenCartIcon", "fullscreenDownload", "fullscreenLove", "fullscreenShare"].indexOf(e) + 1;
                        return t >= 0 && this.isOOI() ? 0 : t || -1
                    }, t.prototype.setStateAndLog = function(e, t, i, o) {
                        var a = this;
                        if (this.isVerbose()) {
                            console.log("State Change Called (" + t + ")", i);
                            var n = Object(r.a)({}, e.state);
                            e.setState(i, (function() {
                                var i = Object(r.a)({}, e.state),
                                    s = a.printableObjectsDiff(n, i, "state");
                                Object.keys(s).length > 0 && console.log("State Change Completed (" + t + ")", s), a.isFunction(o) && o.bind(e)()
                            }))
                        } else e.setState(i, (function() {
                            a.isFunction(o) && o.bind(e)()
                        }))
                    }, t.prototype.printableObjectsDiff = function(e, t, i) {
                        var r = this;
                        void 0 === i && (i = "");
                        var o = function(e) {
                                return "" === e ? e = "''" : r.isUndefined(e) && (e = "undefined"), String(e)
                            },
                            a = function(e, t, i, n) {
                                return void 0 === e && (e = {}), void 0 === t && (t = {}), void 0 === n && (n = 1), n > 3 ? {} : Object.entries(e).reduce((function(e, s) {
                                    var l = s[0],
                                        u = s[1];
                                    return r.isEqual(u, t[l]) || (Array.isArray(t[l]) ? (u.length !== t[l].length && (e[l + ".length"] = "[" + u.length + "] => [" + t[l].length + "]"), e = Object.assign(e, a(u, t[l], (i ? i + "." : "") + l, n + 1))) : "object" == typeof t[l] ? e = Object.assign(e, a(u, t[l], (i ? i + "." : "") + l, n + 1)) : e[(i ? i + "." : "") + l] = o(u) + " => " + o(t[l])), e
                                }), {})
                            };
                        return a(e, t, i, 1)
                    }, t.prototype.getScreenWidth = function() {
                        if (Object(n.c)() && this.isMobile()) return 320;
                        if (this.isTest()) return 1920;
                        try {
                            return this.isLandscape() ? Math.max(a.a.screen.width, a.a.screen.height) : a.a.screen.width
                        } catch (e) {
                            return 1920
                        }
                    }, t.prototype.getScreenHeight = function() {
                        if (this.isTest()) return 1200;
                        try {
                            return this.isLandscape() ? Math.min(a.a.screen.width, a.a.screen.height) : a.a.screen.height
                        } catch (e) {
                            return 1200
                        }
                    }, t.prototype.getWindowWidth = function() {
                        try {
                            return a.a.innerWidth || 980
                        } catch (e) {
                            return 980
                        }
                    }, t.prototype.getMobileEnabledClick = function(e) {
                        return this.isMobile() ? {
                            onTouchEnd: e
                        } : {
                            onClick: e
                        }
                    }, t.prototype.getTopUrlParam = function(e) {
                        if (this.isUndefined(this._cache.params) && (this._cache.params = {}), this.isUndefined(this._cache.params[e])) try {
                            this._cache.params[e] = top.location.search.replace("?", "").split("&").map((function(t) {
                                var i = t.split("=");
                                return i[0] === e && i[1] || ""
                            })).join("")
                        } catch (t) {
                            this._cache.params[e] = !1
                        }
                        return this._cache.params[e]
                    }, t.prototype.scrollTo = function(e, t, i, r, o) {
                        this.isMobile() && (i = 0);
                        var a = r ? e.scrollLeft : e.scrollTop,
                            n = t - a,
                            s = 0,
                            l = function() {
                                var t = function(e, t, i, r) {
                                    return 0 === r ? i + t : (e /= r / 2) < 1 ? i / 2 * e * e + t : -i / 2 * (--e * (e - 2) - 1) + t
                                }(s += 20, a, n, i);
                                s < i ? setTimeout(l, 20) : (e.setAttribute("data-scrolling", ""), "function" == typeof o && o()), r ? e.scrollLeft = t : e.scrollTop = t
                            };
                        e.setAttribute("data-scrolling", "true"), l()
                    }, t.prototype.formatColor = function(e) {
                        if (!e) return "inherit";
                        var t = e.value ? e.value : e,
                            i = /(?:#|0x)(?:[A-Fa-f0-9]{3}|[A-Fa-f0-9]{6})\b|(?:rgb|hsl)a?\([^)]*\)/.exec(t);
                        return i && i[0] ? t : "inherit"
                    }, t.prototype.logPlaygroundLink = function(e) {
                        try {
                            if (this.isVerbose()) {
                                var t = Object.entries(e).filter((function(e) {
                                    var t = e[0];
                                    return "object" != typeof e[1] && -1 === String(t).indexOf("Expand") && -1 === String(t).indexOf("Color")
                                })).map((function(e) {
                                    var t = e[0],
                                        i = e[1];
                                    return t + "=" + encodeURI(i)
                                })).join("&");
                                console.log("Gallery Playground link:", "https://pro-gallery.surge.sh?" + t)
                            }
                        } catch (e) {
                            console.error(e)
                        }
                    }, t.prototype.isSingleItemHorizontalDisplay = function(e) {
                        return e.scrollDirection === s.a.scrollDirection.HORIZONTAL && 1 === e.groupSize && e.cubeImages && "100%/100%" === e.layoutParams.cropRatio
                    }, t.prototype.getAriaAttributes = function(e) {
                        var t, i = e.proGalleryRole,
                            r = e.proGalleryRegionLabel,
                            o = i || "region",
                            a = "application" === i ? "gallery application" : "region",
                            n = ((t = {
                                role: i || "region"
                            })["aria-label"] = r, t);
                        return o !== a && (n["aria-roledescription"] = a), n
                    }, t.prototype.focusGalleryElement = function(e) {
                        e.focus()
                    }, t.prototype.isMeaningfulString = function(e) {
                        return "string" == typeof e && !!e.trim().length
                    }, t
                }();
            t.a = new l
        }).call(this, i(54))
    }, function(e, t, i) {
        "use strict";
        t.a = {
            APPEARS: "APPEARS",
            DISAPPEARS: "DISAPPEARS",
            NO_CHANGE: "NO_CHANGE",
            NEVER_SHOW: "NEVER_SHOW"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            DESKTOP: "desktop",
            MOBILE: "mobile",
            TABLET: "tablet"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            SMART: "smart",
            PIXELS: "px",
            RATIO: "ratio"
        }
    }, , function(e, t, i) {
        "use strict";
        t.a = {
            BLUR: "BLUR",
            COLOR: "COLOR",
            MAIN_COLOR: "MAIN_COLOR"
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "d", (function() {
            return a
        })), i.d(t, "b", (function() {
            return n
        })), i.d(t, "c", (function() {
            return s
        })), i.d(t, "a", (function() {
            return l
        }));
        var r = i(21),
            o = i(25),
            a = new(function() {
                function e() {
                    this.setViewMode = this.setViewMode.bind(this), this.isSiteMode = this.isSiteMode.bind(this), this.isEditMode = this.isEditMode.bind(this), this.isPreviewMode = this.isPreviewMode.bind(this), this.isSEOMode = this.isSEOMode.bind(this), this.setDeviceType = this.setDeviceType.bind(this), this.isDeviceTypeDesktop = this.isDeviceTypeDesktop.bind(this), this.isDeviceTypeMobile = this.isDeviceTypeMobile.bind(this), this.isDeviceTypeTablet = this.isDeviceTypeTablet.bind(this), this.isDeviceTypeTouch = this.isDeviceTypeTouch.bind(this), this._viewMode = r.a.SITE, this._deviceType = o.a.DESKTOP
                }
                return e.prototype.setViewMode = function(e) {
                    this._viewMode = e
                }, e.prototype.setDeviceType = function(e) {
                    this._deviceType = e
                }, e.prototype.isDeviceTypeMobile = function() {
                    return this._deviceType === o.a.MOBILE
                }, e.prototype.isDeviceTypeTablet = function() {
                    return this._deviceType === o.a.TABLET
                }, e.prototype.isDeviceTypeDesktop = function() {
                    return this._deviceType === o.a.DESKTOP
                }, e.prototype.isDeviceTypeTouch = function() {
                    return this.isMobile() || this.isTablet()
                }, e.prototype.isSiteMode = function() {
                    return this._viewMode === r.a.SITE
                }, e.prototype.isEditMode = function() {
                    return this._viewMode === r.a.EDIT
                }, e.prototype.isPreviewMode = function() {
                    return this._viewMode === r.a.PREVIEW
                }, e.prototype.isSEOMode = function() {
                    return this._viewMode === r.a.SEO
                }, e
            }()),
            n = (a.isSiteMode, a.isEditMode),
            s = a.isPreviewMode,
            l = (a.isSEOMode, a.isDeviceTypeMobile);
        a.isDeviceTypeTablet, a.isDeviceTypeDesktop, a.isDeviceTypeTouch
    }, function(e, t, i) {
        "use strict";
        t.a = {
            ON_GALLERY: 0,
            OUTSIDE_GALLERY: 1,
            MOUSE_CURSOR: 2
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            NO_EFFECT: "NO_EFFECT",
            ZOOM_IN: "ZOOM_IN",
            BLUR: "BLUR",
            GRAYSCALE: "GRAYSCALE",
            SHRINK: "SHRINK",
            INVERT: "INVERT",
            COLOR_IN: "COLOR_IN",
            DARKENED: "DARKENED"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            NO_BACKGROUND: "NO_BACKGROUND",
            ATTACHED_BACKGROUND: "ATTACHED_BACKGROUND",
            SEPARATED_BACKGROUND: "SEPARATED_BACKGROUND",
            DONT_SHOW: "DONT_SHOW"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            PICKED_COLOR: "PICKED_COLOR",
            MAIN_COLOR: "MAIN_COLOR"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            NO_EFFECT: "NO_EFFECT",
            FADE_IN: "FADE_IN",
            EXPAND: "EXPAND",
            SLIDE_UP: "SLIDE_UP",
            SLIDE_RIGHT: "SLIDE_RIGHT",
            SLIDE_DOWN: "SLIDE_DOWN",
            SLIDE_LEFT: "SLIDE_LEFT"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            PERCENT: "PERCENT",
            MANUAL: "MANUAL"
        }
    }, function(e, t, i) {
        "use strict";
        t.a = {
            NO_EFFECT: "NO_EFFECT",
            SLIDE: "SLIDE"
        }
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = i(8),
            a = function() {
                function e() {}
                return e.prototype.getDirectFullscreenFromParams = function(e) {
                    var t = e && e.pgid;
                    return !!t && o.c.splitDirectFullscreenParams(t)
                }, e.prototype.getDirectFullscreenItemFromItemsList = function(e, t, i, o) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var a;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    return (a = this.getDirectFullscreenFromParams(e)) && t ? i === "comp-" + a.galleryIdent ? [3, 3] : o.galleryId ? [3, 2] : [4, o.fetchGalleryId()] : [2, void 0];
                                case 1:
                                    r.sent(), r.label = 2;
                                case 2:
                                    if (o.galleryId !== a.galleryIdent) return [2, void 0];
                                    r.label = 3;
                                case 3:
                                    return [2, t[t.findIndex((function(e) {
                                        return e.itemId === a.itemId && !e.metaData.isVideoPlaceholder
                                    }))]]
                            }
                        }))
                    }))
                }, e.prototype.loadDirectFullscreen = function(e, t, i, r) {
                    var o = this.getDirectFullscreenFromParams(i);
                    o ? e === "comp-" + o.galleryIdent ? (r.loadDirectFullscreenItem(o.itemId), r.createDirectFullscreenBlueprintMockIfNeeded()) : r.isValidUUID(o.galleryIdent) ? (r.loadDirectFullscreenItem(o.itemId, o.galleryIdent), r.createDirectFullscreenBlueprintMockIfNeeded()) : r.directFullscreenReadyDeferred.resolve() : r.directFullscreenReadyDeferred.resolve()
                }, e.prototype.setMetaTagsForItemIfNeeded = function(e, t) {
                    var i = e.isInSEO;
                    if (t && i) {
                        var r = t.metaData;
                        e.setMetaTags && e.setMetaTags("image", r)
                    }
                }, e
            }();
        t.a = new a
    }, function(e, t, i) {
        "use strict";
        var r = i(2),
            o = {
                layoutParams: {
                    gallerySpacing: 0,
                    cropRatio: 1,
                    navigationArrows: {
                        type: r.a.arrowsType.DEFAULT_ARROW,
                        container: {
                            type: r.a.arrowsContainerStyleType.SHADOW,
                            backgroundColor: "",
                            borderRadius: 0
                        }
                    }
                },
                isRTL: !1,
                isVertical: !1,
                minItemSize: 120,
                groupSize: 3,
                chooseBestGroup: !0,
                groupTypes: "1,2h,2v,3t,3b,3l,3r",
                cubeImages: !1,
                cubeType: "fill",
                smartCrop: !1,
                fullscreen: !0,
                videoLoop: !0,
                videoSound: !1,
                videoPlay: "hover",
                videoSpeed: 1,
                numberOfImagesPerRow: 3,
                collageDensity: .8,
                galleryTextAlign: "center",
                imageMargin: 10,
                fixedColumns: 0,
                showArrows: !0,
                hasThumbnails: !1,
                galleryThumbnailsAlignment: "bottom",
                gridStyle: 0,
                titlePlacement: r.a.placements.SHOW_ON_HOVER,
                hoveringBehaviour: r.a.infoBehaviourOnHover.APPEARS,
                isAutoSlideshow: !1,
                slideshowLoop: !1,
                playButtonForAutoSlideShow: !1,
                pauseAutoSlideshowOnHover: !0,
                allowSlideshowCounter: !1,
                autoSlideshowInterval: 4,
                arrowsSize: 23,
                slideshowInfoSize: 200,
                imageLoadingMode: r.a.loadingMode.BLUR,
                scrollAnimation: r.a.scrollAnimations.NO_EFFECT,
                overlayAnimation: r.a.overlayAnimations.NO_EFFECT,
                imageHoverAnimation: r.a.imageHoverAnimations.NO_EFFECT,
                itemBorderWidth: 0,
                itemBorderRadius: 0,
                itemEnableShadow: !1,
                itemShadowBlur: 20,
                loadMoreAmount: "all",
                itemShadowDirection: 135,
                itemShadowSize: 10,
                imageInfoType: r.a.infoType.NO_BACKGROUND,
                textBoxBorderRadius: 0,
                textBoxBorderWidth: 0,
                textBoxHeight: 200,
                textImageSpace: 10,
                scrollDirection: 0,
                slideAnimation: r.a.slideAnimations.SCROLL,
                autoSlideshowType: r.a.autoSlideshowTypes.INTERVAL,
                autoSlideshowContinuousSpeed: 200
            };
        t.a = o
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return c
        }));
        var r = i(4),
            o = i(3),
            a = i(2),
            n = i(1),
            s = "VERTICAL",
            l = "HORIZONTAL",
            u = {
                1: {
                    id: 1,
                    layoutOrientation: l,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2v,2v")).cubeImages = !0, (t = Object(o.a)(t, "layoutParams_cropRatio", "50%/100%")).imageMargin = 0, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.titlePlacement = "SHOW_ON_HOVER", t.cubeType = a.a.cubeType.CROP, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2v,2v")).cubeImages = !0, t.imageMargin = 0, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.titlePlacement = "SHOW_ON_HOVER", t.cubeType = a.a.cubeType.CROP, t
                    }
                },
                2: {
                    id: 2,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2v,2v,2v,2v,1")).cubeImages = !0, (t = Object(o.a)(t, "layoutParams_cropRatio", .75)).groupsPerStrip = 3, t.imageMargin = 5, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.enableInfiniteScroll = !0, t.cubeType = a.a.cubeType.CROP, t.isVertical = !1, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 2, (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2h,2h")).cubeImages = !0, t.rotatingCropRatios = .75, t.fixedColumns = 1, t.imageMargin = 2, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t
                    }
                },
                3: {
                    id: 3,
                    layoutOrientation: l,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupSize = 1, t.cubeImages = !0, (t = Object(o.a)(t, "layoutParams_cropRatio", "100%/50%")).rotatingCropRatios = "25%/100%,50%/100%", t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.isVertical = !0, t.cubeType = a.a.cubeType.CROP, t.calculateTextBoxHeightMode = "AUTOMATIC", t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.cubeImages = !1, t.groupSize = 1, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.isVertical = !1, t.groupTypes = "1", t.enableInfiniteScroll = !0, t
                    }
                },
                4: {
                    id: 4,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, (t = Object(o.a)(t, "layoutParams_cropRatio", 4 / 3)).fixedColumns = 1, t.imageMargin = 0, t.gridStyle = 1, t.titlePlacement = "ALTERNATE_HORIZONTAL", t.calculateTextBoxWidthMode = a.a.textBoxWidthCalculationOptions.PERCENT, t.textBoxWidthPercent = 35, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.hoveringBehaviour = "NO_CHANGE", t.cubeType = a.a.cubeType.CROP, t.imageInfoType = "NO_BACKGROUND", t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.titlePlacement = "SHOW_BELOW", t.cubeImages = !0, t.isVertical = !0, t.groupSize = 1, t.hasThumbnails = !1, t.groupTypes = "1", t.scrollDirection = a.a.scrollDirection.VERTICAL, t
                    }
                },
                5: {
                    id: 5,
                    layoutOrientation: l,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2v")).cubeImages = !0, t.rotatingCropRatios = "25%/40%,25%/60%,25%/60%,25%/40%", t.imageMargin = 2, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.titlePlacement = "SHOW_ON_HOVER", t.cubeType = a.a.cubeType.CROP, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupTypes = "2v", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2v")).cubeImages = !0, t.rotatingCropRatios = "50%/35%,50%/65%,50%/65%,50%/35%", t.imageMargin = 2, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.titlePlacement = "SHOW_ON_HOVER", t
                    }
                },
                6: {
                    id: 6,
                    layoutOrientation: l,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2v,2v")).imageMargin = 150, t.rotatingScatter = "-50%/80%,7%/70%,-280%/-220%,100%/-100%,-150%/-50%", t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.HORIZONTAL, t.titlePlacement = "SHOW_ON_HOVER", t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.cubeImages = !1, t.arrowsPosition = 1, t.titlePlacement = "SHOW_BELOW", t.hoveringBehaviour = "NEVER_SHOW", t.scrollDirection = a.a.scrollDirection.HORIZONTAL, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t
                    }
                },
                7: {
                    id: 7,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.fixedColumns = 1, t.imageMargin = 80, t.gridStyle = 1, t.titlePlacement = "SHOW_ON_THE_RIGHT", t.calculateTextBoxWidthMode = a.a.textBoxWidthCalculationOptions.PERCENT, t.textBoxWidthPercent = 66, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.imageInfoType = "NO_BACKGROUND", t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.fixedColumns = 1, t.imageMargin = 20, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 10)).gridStyle = 1, t.titlePlacement = "SHOW_ON_THE_RIGHT", t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.imageInfoType = "NO_BACKGROUND", t
                    }
                },
                8: {
                    id: 8,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupTypes = "1,2v", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2v,1,2v")).cubeImages = !0, t.groupsPerStrip = 3, t.imageMargin = 20, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.isVertical = !1, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupTypes = "2h,1", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2h,1")).cubeImages = !0, t.groupsPerStrip = 1, t.imageMargin = 10, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.gallerySize = 60, t.cubeType = a.a.cubeType.CROP, t.titlePlacement = "SHOW_ON_HOVER", t
                    }
                },
                9: {
                    id: 9,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "3t,3b")).cubeImages = !0, t.rotatingCropRatios = "1.41,.7,.7,.7,.7,1.41", t.groupsPerStrip = 2, t.imageMargin = 5, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.isVertical = !1, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupTypes = "2h,1", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2h")).cubeImages = !0, t.groupsPerStrip = 1, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.titlePlacement = "SHOW_ON_HOVER", t
                    }
                },
                10: {
                    id: 10,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2v,1,1")).cubeImages = !0, t.rotatingCropRatios = "1.6,1.2,1.2,1.2,1.6", t.groupsPerStrip = 2, t.imageMargin = 5, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.isVertical = !1, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupTypes = "2h,1", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "1,2h")).cubeImages = !0, t.groupsPerStrip = 1, t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t.titlePlacement = "SHOW_ON_HOVER", t
                    }
                },
                11: {
                    id: 11,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.minItemSize = 80, t.groupTypes = "2h,3h", (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2h,3h")).collageDensity = 0, t.cubeImages = !0, t.fixedColumns = 1, t.imageMargin = 80, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 80)).gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t.cubeType = a.a.cubeType.CROP, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.titlePlacement = "SHOW_BELOW", t.hoveringBehaviour = "NEVER_SHOW", t.scrollDirection = a.a.scrollDirection.HORIZONTAL, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t
                    }
                },
                12: {
                    id: 12,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, (t = Object(o.a)(t, "layoutParams_repeatingGroupTypes", "2v,2v")).fixedColumns = 3, t.imageMargin = 100, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 100)).rotatingScatter = "-50%/-40%,0%/-10%,40%/100%", t.gridStyle = 1, t.scrollDirection = a.a.scrollDirection.VERTICAL, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.cubeImages = !1, t.arrowsPosition = 1, t.titlePlacement = "SHOW_BELOW", t.hoveringBehaviour = "NEVER_SHOW", t.scrollDirection = a.a.scrollDirection.HORIZONTAL, (t = Object(o.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t
                    }
                },
                13: {
                    id: 13,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.rotatingCropRatios = "0.7,1.77,0.9,1.77,1.77,0.7,0.9", t.fixedColumns = 2, t.imageMargin = 97, t.gridStyle = 1, t.titlePlacement = "SHOW_BELOW", t.scrollDirection = 0, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.rotatingCropRatios = "0.7,1.77,0.9,1.77,1.77,0.7,0.9", t.fixedColumns = 2, t.imageMargin = 97, t.gridStyle = 1, t.titlePlacement = "SHOW_BELOW", t.scrollDirection = 0, t
                    }
                },
                14: {
                    id: 14,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.imageMargin = 0, t.fixedColumns = 1, t.gridStyle = 1, t.titlePlacement = a.a.placements.ALTERNATE_HORIZONTAL, t.cubeType = a.a.cubeType.CROP, t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL")
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.cubeImages = !0, t.isVertical = !0, t.groupSize = 1, t.hasThumbnails = !1, t.groupTypes = "1", t.slideshowLoop = !1, t.titlePlacement = a.a.placements.SHOW_BELOW, t.cubeType = a.a.cubeType.CROP, (t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL")).fixedColumns = 1, t = Object(o.a)(t, n.a.layoutParams.structure.numberOfColumns, 1)
                    }
                },
                15: {
                    id: 15,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.groupSize = 2, t.cubeImages = !0, t.gridStyle = 1, t.rotatingGroupTypes = "1,2h,1,1,1,2h,1,1", t.rotatingCropRatios = "1,1,1,1,2.02,1,1,1,1,2.02", (t = Object(o.a)(t, n.a.layoutParams.crop.ratios, [1, 1, 1, 1, 2.02, 1, 1, 1, 1, 2.02])).groupsPerStrip = 2, t.cubeType = a.a.cubeType.CROP, (t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL")).imageMargin = 20, t = Object(o.a)(t, n.a.layoutParams.structure.itemSpacing, 20)
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupTypes = "2h,1", t.cubeImages = !0, t.fixedColumns = 1, t.gridStyle = 1, t.rotatingGroupTypes = "2h,2h,1", t.rotatingCropRatios = "1, 1, 1, 1, 2", t.cubeType = a.a.cubeType.CROP, (t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL")).imageMargin = 20, t = Object(o.a)(t, n.a.layoutParams.structure.itemSpacing, 20)
                    }
                },
                16: {
                    id: 16,
                    layoutOrientation: s,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.fixedColumns = 1, t = Object(o.a)(t, "layoutParams_cropRatio", 1.5), (t = Object(o.a)(t, n.a.layoutParams.crop.ratios, [1.5])).imageMargin = 80, (t = Object(o.a)(t, n.a.layoutParams.structure.itemSpacing, 80)).gridStyle = 1, t.titlePlacement = a.a.placements.ALTERNATE_HORIZONTAL, t.cubeType = a.a.cubeType.CROP, t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL")
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.cubeImages = !0, t.isVertical = !0, t.groupSize = 1, t.hasThumbnails = !1, t.groupTypes = "1", t.slideshowLoop = !1, t.titlePlacement = a.a.placements.SHOW_BELOW, t.fixedColumns = 1, (t = Object(o.a)(t, n.a.layoutParams.structure.numberOfColumns, 1)).cubeType = a.a.cubeType.CROP, t = Object(o.a)(t, n.a.layoutParams.crop.method, "FILL"), t = Object(o.a)(t, "layoutParams_cropRatio", 1.5), t = Object(o.a)(t, n.a.layoutParams.crop.ratios, [1.5])
                    }
                },
                17: {
                    id: 17,
                    layoutOrientation: l,
                    desktop: function(e) {
                        var t = Object(r.a)({}, e);
                        return (t = Object(o.a)(t, "layoutParams_gallerySpacing", 20)).isVertical = !0, t.groupSize = 1, t.cubeImages = !0, t.cubeType = a.a.cubeType.FIT, t = Object(o.a)(t, n.a.layoutParams.crop.method, "FIT"), t = Object(o.a)(t, "layoutParams_cropRatio", .5), (t = Object(o.a)(t, n.a.layoutParams.crop.ratios, [.5])).titlePlacement = a.a.placements.SHOW_BELOW, t.scrollDirection = 1, t.cubeFitPosition = a.a.cubeFitPosition.BOTTOM, t
                    },
                    mobile: function(e) {
                        var t = Object(r.a)({}, e);
                        return t.hoveringBehaviour = a.a.infoBehaviourOnHover.NEVER_SHOW, t.scrollDirection = 1, t.galleryMargin = 0, t.isVertical = !0, t.groupSize = 1, t.groupTypes = "1", t.cubeImages = !0, t.cubeType = a.a.cubeType.FIT, t = Object(o.a)(t, n.a.layoutParams.crop.method, "FIT"), t = Object(o.a)(t, "layoutParams_cropRatio", "100%/100%"), (t = Object(o.a)(t, n.a.layoutParams.crop.ratios, ["100%/100%"])).titlePlacement = a.a.placements.SHOW_BELOW, t = Object(o.a)(t, n.a.layoutParams.info.placement, "BELOW")
                    }
                }
            },
            c = function(e) {
                var t, i, r = e.styles,
                    o = e.presetId,
                    a = e.isMobile;
                return void 0 !== a && a ? (null === (t = u[o]) || void 0 === t ? void 0 : t.mobile(r)) || r : (null === (i = u[o]) || void 0 === i ? void 0 : i.desktop(r)) || r
            }
    }, function(e, t, i) {
        "use strict";
        var r = i(52),
            o = i(53);

        function a(e, t) {
            return t.encode ? t.strict ? r(e) : encodeURIComponent(e) : e
        }
        t.extract = function(e) {
            return e.split("?")[1] || ""
        }, t.parse = function(e, t) {
            var i = function(e) {
                    var t;
                    switch (e.arrayFormat) {
                        case "index":
                            return function(e, i, r) {
                                t = /\[(\d*)\]$/.exec(e), e = e.replace(/\[\d*\]$/, ""), t ? (void 0 === r[e] && (r[e] = {}), r[e][t[1]] = i) : r[e] = i
                            };
                        case "bracket":
                            return function(e, i, r) {
                                t = /(\[\])$/.exec(e), e = e.replace(/\[\]$/, ""), t ? void 0 !== r[e] ? r[e] = [].concat(r[e], i) : r[e] = [i] : r[e] = i
                            };
                        default:
                            return function(e, t, i) {
                                void 0 !== i[e] ? i[e] = [].concat(i[e], t) : i[e] = t
                            }
                    }
                }(t = o({
                    arrayFormat: "none"
                }, t)),
                r = Object.create(null);
            return "string" != typeof e ? r : (e = e.trim().replace(/^(\?|#|&)/, "")) ? (e.split("&").forEach((function(e) {
                var t = e.replace(/\+/g, " ").split("="),
                    o = t.shift(),
                    a = t.length > 0 ? t.join("=") : void 0;
                a = void 0 === a ? null : decodeURIComponent(a), i(decodeURIComponent(o), a, r)
            })), Object.keys(r).sort().reduce((function(e, t) {
                var i = r[t];
                return Boolean(i) && "object" == typeof i && !Array.isArray(i) ? e[t] = function e(t) {
                    return Array.isArray(t) ? t.sort() : "object" == typeof t ? e(Object.keys(t)).sort((function(e, t) {
                        return Number(e) - Number(t)
                    })).map((function(e) {
                        return t[e]
                    })) : t
                }(i) : e[t] = i, e
            }), Object.create(null))) : r
        }, t.stringify = function(e, t) {
            var i = function(e) {
                switch (e.arrayFormat) {
                    case "index":
                        return function(t, i, r) {
                            return null === i ? [a(t, e), "[", r, "]"].join("") : [a(t, e), "[", a(r, e), "]=", a(i, e)].join("")
                        };
                    case "bracket":
                        return function(t, i) {
                            return null === i ? a(t, e) : [a(t, e), "[]=", a(i, e)].join("")
                        };
                    default:
                        return function(t, i) {
                            return null === i ? a(t, e) : [a(t, e), "=", a(i, e)].join("")
                        }
                }
            }(t = o({
                encode: !0,
                strict: !0,
                arrayFormat: "none"
            }, t));
            return e ? Object.keys(e).sort().map((function(r) {
                var o = e[r];
                if (void 0 === o) return "";
                if (null === o) return a(r, t);
                if (Array.isArray(o)) {
                    var n = [];
                    return o.slice().forEach((function(e) {
                        void 0 !== e && n.push(i(r, e, n.length))
                    })), n.join("&")
                }
                return a(r, t) + "=" + a(o, t)
            })).filter((function(e) {
                return e.length > 0
            })).join("&") : ""
        }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return r
        }));
        var r = function() {
            function e() {
                this.log = [], this.creationTime = Date.now(), this.push = this.push.bind(this), this.push("created worker log")
            }
            return e.prototype.push = function(e) {
                var t = Date.now() - this.creationTime + "ms";
                this.log.push("[" + t + "]: " + e)
            }, e
        }()
    }, function(e, t, i) {
        var r;
        "undefined" != typeof self && self, r = function() {
            return function(e) {
                var t = {};

                function i(r) {
                    if (t[r]) return t[r].exports;
                    var o = t[r] = {
                        i: r,
                        l: !1,
                        exports: {}
                    };
                    return e[r].call(o.exports, o, o.exports, i), o.l = !0, o.exports
                }
                return i.m = e, i.c = t, i.d = function(e, t, r) {
                    i.o(e, t) || Object.defineProperty(e, t, {
                        enumerable: !0,
                        get: r
                    })
                }, i.r = function(e) {
                    "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {
                        value: "Module"
                    }), Object.defineProperty(e, "__esModule", {
                        value: !0
                    })
                }, i.t = function(e, t) {
                    if (1 & t && (e = i(e)), 8 & t) return e;
                    if (4 & t && "object" == typeof e && e && e.__esModule) return e;
                    var r = Object.create(null);
                    if (i.r(r), Object.defineProperty(r, "default", {
                            enumerable: !0,
                            value: e
                        }), 2 & t && "string" != typeof e)
                        for (var o in e) i.d(r, o, function(t) {
                            return e[t]
                        }.bind(null, o));
                    return r
                }, i.n = function(e) {
                    var t = e && e.__esModule ? function() {
                        return e.default
                    } : function() {
                        return e
                    };
                    return i.d(t, "a", t), t
                }, i.o = function(e, t) {
                    return Object.prototype.hasOwnProperty.call(e, t)
                }, i.p = "https://static.parastorage.com/services/video-gallery-sdk/1.489.0/", i(i.s = 1)
            }([function(e, t, i) {
                (function(e) {
                    var i = ["responseType", "withCredentials", "timeout", "onprogress"];

                    function r(e, t, i) {
                        e[t] = e[t] || i
                    }
                    t.ajax = function(t, o) {
                        var a = t.headers || {},
                            n = t.body,
                            s = t.method || (n ? "POST" : "GET"),
                            l = !1,
                            u = t.cors && e.XDomainRequest && !/MSIE 1/.test(navigator.userAgent) ? new XDomainRequest : e.XMLHttpRequest ? new XMLHttpRequest : void 0;

                        function c(e, t) {
                            return function() {
                                l || (o(void 0 === u.status ? e : u.status, 0 === u.status ? "Error" : u.response || u.responseText || t, u), l = !0)
                            }
                        }
                        u.open(s, t.url, !0);
                        var h = u.onload = c(200);
                        u.onreadystatechange = function() {
                            4 === u.readyState && h()
                        }, u.onerror = c(null, "Error"), u.ontimeout = c(null, "Timeout"), u.onabort = c(null, "Abort"), n && (r(a, "X-Requested-With", "XMLHttpRequest"), e.FormData && n instanceof e.FormData || r(a, "Content-Type", "application/x-www-form-urlencoded"));
                        for (var p = 0, d = i.length; p < d; p++) void 0 !== t[m = i[p]] && (u[m] = t[m]);
                        for (var m in a) u.setRequestHeader(m, a[m]);
                        return u.send(n), u
                    }
                }).call(this, i(2))
            }, function(e, t, i) {
                "use strict";
                i.r(t), i.d(t, "getInfo", (function() {
                    return l
                })), i.d(t, "getVideoURLs", (function() {
                    return u
                })), i.d(t, "getVideoMetadata", (function() {
                    return c
                })), i.d(t, "getVideoId", (function() {
                    return s
                })), i.d(t, "getVideoImage", (function() {
                    return h
                }));
                var r = i(0),
                    o = function() {
                        return (o = Object.assign || function(e) {
                            for (var t, i = 1, r = arguments.length; i < r; i++)
                                for (var o in t = arguments[i]) Object.prototype.hasOwnProperty.call(t, o) && (e[o] = t[o]);
                            return e
                        }).apply(this, arguments)
                    },
                    a = function() {
                        for (var e = 0, t = 0, i = arguments.length; t < i; t++) e += arguments[t].length;
                        var r = Array(e),
                            o = 0;
                        for (t = 0; t < i; t++)
                            for (var a = arguments[t], n = 0, s = a.length; n < s; n++, o++) r[o] = a[n];
                        return r
                    },
                    n = /([0-9A-Za-z_]+)/,
                    s = function(e) {
                        var t = e.split("/");
                        return 1 === t.length ? n.test(t[0]) ? t[0] : (console.error("Wrong format was passed to VideoGallerySDK.getVideoId"), e) : n.test(t[1]) ? t[1] : (console.error("Wrong format was passed to VideoGallerySDK.getVideoId"), e)
                    },
                    l = function(e) {
                        return e = s(e), new Promise((function(t, i) {
                            Object(r.ajax)({
                                url: "https://files.wix.com/site/media/files/" + e + "/info"
                            }, (function(e, r) {
                                200 === e ? t(JSON.parse(r)) : i({
                                    statusCode: e,
                                    response: r
                                })
                            }))
                        }))
                    },
                    u = function(e) {
                        return ("object" == typeof e ? Promise.resolve(e) : l(e)).then((function(e) {
                            return a((void 0 === (i = e.file_output.video) && (i = []), i.map((function(e) {
                                return {
                                    type: e.format.toUpperCase(),
                                    quality: e.quality,
                                    url: "https://video.wixstatic.com/" + e.url
                                }
                            }))), (void 0 === (t = e.file_output.adaptive_video) && (t = []), t.map((function(e) {
                                return {
                                    type: e.format.toUpperCase(),
                                    quality: "ADAPTIVE",
                                    url: "https://files.wixstatic.com/" + e.url
                                }
                            }))));
                            var t, i
                        }))
                    },
                    c = function(e) {
                        return ("object" == typeof e ? Promise.resolve(e) : l(e)).then((function(e) {
                            return o(o({}, e.file_input), {
                                size: e.file_size
                            })
                        }))
                    },
                    h = function(e, t) {
                        var i = t.previewIndex,
                            r = void 0 === i ? 0 : i,
                            o = t.resizeType,
                            a = void 0 === o ? "fill" : o,
                            n = t.quality,
                            l = void 0 === n ? 85 : n,
                            u = t.width,
                            c = t.height;
                        return "https://static.wixstatic.com/media/" + s(e) + "f00" + r + ".jpg/v1/" + a + "/w_" + u + ",h_" + c + ",al_c,q_" + l + "/image.jpg"
                    }
            }, function(e, t) {
                var i;
                i = function() {
                    return this
                }();
                try {
                    i = i || new Function("return this")()
                } catch (e) {
                    "object" == typeof window && (i = window)
                }
                e.exports = i
            }])
        }, e.exports = r()
    }, function(module, __webpack_exports__, __webpack_require__) {
        "use strict";
        __webpack_require__.d(__webpack_exports__, "a", (function() {
            return getProGalleryStyles
        }));
        var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4),
            _consts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11),
            pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3),
            pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2),
            pro_gallery_lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1),
            pro_gallery_lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(48),
            _customPresetProcessor__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(39),
            _coreOptions__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(38),
            _proGalleryStyleBuilderUtils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(44),
            _sdk_experimentsWrapper__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(19),
            isUndefined = function(e) {
                return void 0 === e
            },
            mobileSpecificDefaultStyles = {
                numberOfImagesPerRow: 1
            },
            baseDefaultStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.d)(_coreOptions__WEBPACK_IMPORTED_MODULE_7__.a, {
                layoutParams: {
                    cropRatio: 1
                },
                stylingParams: {
                    itemResolutionMode: _consts__WEBPACK_IMPORTED_MODULE_1__.a.itemResolutionModeTypes.SCLAED_DOWN
                },
                gotStyleParams: !1,
                selectedLayout: 0,
                allowSocial: !0,
                allowDownload: !1,
                allowTitle: !0,
                allowDescription: !1,
                loveButton: !0,
                loveCounter: !0,
                showVideoPlayButton: !0,
                gallerySliderImageRatio: 0,
                galleryImageRatio: 2,
                collageAmount: .8,
                floatingImages: 0,
                viewMode: "preview",
                galleryHorizontalAlign: "center",
                galleryVerticalAlign: "center",
                enableInfiniteScroll: 1,
                itemClick: "expand",
                fixedColumns: 0,
                scrollDirection: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollDirection.VERTICAL,
                showArrows: !0,
                hasThumbnails: !1,
                galleryThumbnailsAlignment: "bottom",
                thumbnailSpacings: 0,
                mobilePanorama: !1,
                arrowsPadding: 23,
                slideshowInfoSize: 200,
                imageLoadingMode: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingMode.COLOR,
                imageLoadingWithColorMode: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingWithColorMode.PICKED_COLOR,
                imageRatioType: _consts__WEBPACK_IMPORTED_MODULE_1__.a.imageRatioType.FIXED,
                numberOfDisplayedItems: 3,
                expandAnimation: _consts__WEBPACK_IMPORTED_MODULE_1__.a.expandAnimations.NO_EFFECT,
                itemBorderColor: "color-5",
                itemShadowOpacityAndColor: {
                    value: "rgba(0, 0, 0, 0.2)"
                },
                textBoxBorderColor: "color-5",
                titleDescriptionSpace: 6,
                textsVerticalPadding: 0,
                textsHorizontalPadding: 0,
                textBoxFillColor: "color-2",
                alwaysShowHover: !1,
                previewHover: !1,
                calculateTextBoxHeightMode: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.AUTOMATIC,
                slideAnimation: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.SCROLL,
                jsonStyleParams: "",
                designedPresetId: -1,
                galleryLayoutType: "",
                allowOverlayGradient: !1,
                overlayGradientDegrees: 180,
                shouldIndexDirectShareLinkInSEO: !1,
                slideTransition: _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.EASE_IN_OUT,
                slideDuration: 400,
                autoSlideshowContinuousSpeed: 50,
                overlayType: 0,
                overlayPosition: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlayPositions.BOTTOM,
                overlaySize: 100,
                overlayPadding: 0,
                overlaySizeType: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlaySizeType.PERCENT,
                arrowsVerticalPosition: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsVerticalPosition.ITEM_CENTER,
                textBoxWidthPercent: 50,
                textBoxWidth: 200,
                calculateTextBoxWidthMode: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.PERCENT,
                customArrowsSvg: "",
                customArrowsRotation: 0,
                shouldUseCustomArrows: !1,
                isArrowPrivateMedia: !1,
                numberOfImagesPerCol: 1
            }),
            getDefaultStyles = function(e, t) {
                return baseDefaultStyles.galleryLayout = t ? 2 : 0, baseDefaultStyles.thumbnailSize = e ? 90 : 120, baseDefaultStyles.useCustomButton = t, baseDefaultStyles.customButtonText = t ? "Buy Now" : "Click here", baseDefaultStyles.isStoreGallery = t, baseDefaultStyles
            },
            convertToMobileSettingIfNeeded = function(e, t) {
                var i = {};
                return e && Object.keys(t).forEach((function(e) {
                    if (e.startsWith("m_")) {
                        var r = e.slice(2);
                        t[r] = t[e], i[r] = t[e]
                    }
                })), {
                    styles: t,
                    userSavedMobileStyles: i
                }
            },
            getProGalleryStylesImp = function(wixStyles, gotStyleParams, options) {
                var isMobile = options.isMobile,
                    isStoreGallery = options.isStoreGallery,
                    isOnBoarding = options.isOnBoarding,
                    _a = options.isInEditor,
                    isInEditor = void 0 !== _a && _a,
                    _b = options.isSsr,
                    isSsr = void 0 !== _b && _b,
                    defaultStateStyles = getDefaultStyles(isMobile, isStoreGallery),
                    stateStyles = {};

                function canSet(e, t) {
                    return isUndefined(t) ? isUndefined(stateStyles[e]) && !isUndefined(wixStyles[e]) : isUndefined(stateStyles[t]) && !isUndefined(wixStyles[e])
                }
                stateStyles.useOptimizedImageFormat = wixStyles.useOptimizedImageFormat, wixStyles.gallerySize = wixStyles.gallerySize || 30;
                var _c = convertToMobileSettingIfNeeded(isMobile, wixStyles),
                    mobileConvertedStyles = _c.styles,
                    userSavedMobileStyles = _c.userSavedMobileStyles;
                if (wixStyles = mobileConvertedStyles, "1" === String(wixStyles.mobilePanorama) && isMobile && (stateStyles.galleryLayout = 6, stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_repeatingGroupTypes", "1"), stateStyles.isVertical = !0, stateStyles.numberOfImagesPerRow = 1, stateStyles.scrollDirection = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollDirection.VERTICAL), canSet("alwaysShowHover") && (stateStyles.alwaysShowHover = wixStyles.alwaysShowHover), canSet("previewHover")) {
                    var date = Date.now();
                    date > wixStyles.previewHover + 2e3 ? stateStyles.previewHover = !1 : stateStyles.previewHover = !0
                }
                if (canSet("fullscreen") ? stateStyles.fullscreen = "0" === wixStyles.fullscreen.toString() : stateStyles.fullscreen = !0, canSet("allowSocial") ? stateStyles.allowSocial = wixStyles.allowSocial : stateStyles.allowSocial = defaultStateStyles.allowSocial, canSet("allowTitle") && (stateStyles.allowTitle = !!isOnBoarding || wixStyles.allowTitle), canSet("allowDescription") && (stateStyles.allowDescription = wixStyles.allowDescription), canSet("allowOverlayGradient")) {
                    var allowOverlayGradient = wixStyles.allowOverlayGradient,
                        overlayGradientColor1 = wixStyles.overlayGradientColor1,
                        overlayGradientColor2 = wixStyles.overlayGradientColor2,
                        overlayGradientDegrees = wixStyles.overlayGradientDegrees;
                    stateStyles.overlayBackground = !!allowOverlayGradient && "linear-gradient(" + overlayGradientDegrees + "deg," + overlayGradientColor1.value + "," + overlayGradientColor2.value + ")"
                }
                canSet("isInAdi") && (stateStyles.isInAdi = wixStyles.isInAdi), canSet("useCustomButton") ? stateStyles.useCustomButton = wixStyles.useCustomButton : stateStyles.useCustomButton = defaultStateStyles.useCustomButton, canSet("allowDownload") ? stateStyles.allowDownload = wixStyles.allowDownload : stateStyles.allowDownload = defaultStateStyles.allowDownload, canSet("allowContextMenu") ? stateStyles.allowContextMenu = wixStyles.allowContextMenu : stateStyles.allowContextMenu = stateStyles.allowDownload, canSet("loveButton") ? stateStyles.loveButton = wixStyles.loveButton : stateStyles.loveButton = defaultStateStyles.loveButton, canSet("loveCounter") ? stateStyles.loveCounter = "0" === String(wixStyles.loveCounter) : stateStyles.loveCounter = defaultStateStyles.loveCounter, canSet("enableInfiniteScroll") ? stateStyles.enableInfiniteScroll = "1" === String(wixStyles.enableInfiniteScroll) : stateStyles.enableInfiniteScroll = "1" === String(defaultStateStyles.enableInfiniteScroll), canSet("imageMargin") && (stateStyles.imageMargin = Number(wixStyles.imageMargin)), canSet("galleryMargin") && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_gallerySpacing", Number(wixStyles.galleryMargin))), canSet("isRTL") && (stateStyles.isRTL = "1" === String(wixStyles.isRTL)), canSet("isVertical") && (stateStyles.isVertical = "1" === String(wixStyles.isVertical)), canSet("imageOrientation", "isVertical") && (stateStyles.isVertical = "1" === String(wixStyles.imageOrientation)), canSet("collageAmount") && (stateStyles.collageAmount = Number(wixStyles.collageAmount) / 10), canSet("collageDensity") && (stateStyles.collageDensity = Number(wixStyles.collageDensity) / 100), canSet("minItemSize") && (stateStyles.minItemSize = wixStyles.minItemSize), canSet("gallerySize") && (stateStyles.gallerySize = wixStyles.gallerySize), canSet("magicLayoutSeed") && (stateStyles.magicLayoutSeed = wixStyles.magicLayoutSeed), canSet("gallerySizePx") && (stateStyles.gallerySizePx = wixStyles.gallerySizePx), canSet("gallerySizeRatio") && (stateStyles.gallerySizeRatio = wixStyles.gallerySizeRatio), canSet("gallerySizeType") && (stateStyles.gallerySizeType = ["smart", "px", "ratio"][Number(wixStyles.gallerySizeType)]), canSet("gridStyle") && (stateStyles.gridStyle = wixStyles.gridStyle), canSet("groupSize") && (stateStyles.groupSize = Number(wixStyles.groupSize)), canSet("chooseBestGroup") && (stateStyles.chooseBestGroup = "1" === String(wixStyles.chooseBestGroup)), canSet("groupTypes") && (stateStyles.groupTypes = String(wixStyles.groupTypes)), canSet("rotatingGroupTypes") && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_repeatingGroupTypes", String(wixStyles.rotatingGroupTypes))), canSet("rotatingCropRatios") && (stateStyles.rotatingCropRatios = String(wixStyles.rotatingCropRatios)), canSet("itemBorderWidth") && (stateStyles.itemBorderWidth = Number(wixStyles.itemBorderWidth)), canSet("itemBorderColor") && (stateStyles.itemBorderColor = wixStyles.itemBorderColor), canSet("itemBorderRadius") && (stateStyles.itemBorderRadius = Number(wixStyles.itemBorderRadius)), canSet("itemShadowOpacityAndColor") && (stateStyles.itemShadowOpacityAndColor = wixStyles.itemShadowOpacityAndColor), canSet("itemShadowBlur") && (stateStyles.itemShadowBlur = Number(wixStyles.itemShadowBlur)), canSet("itemShadowDirection") && (stateStyles.itemShadowDirection = Number(wixStyles.itemShadowDirection)), canSet("itemShadowSize") && (stateStyles.itemShadowSize = Number(wixStyles.itemShadowSize)), canSet("itemEnableShadow") && (stateStyles.itemEnableShadow = wixStyles.itemEnableShadow), canSet("floatingImages") && (stateStyles.floatingImages = Number(wixStyles.floatingImages) / 100), canSet("thumbnailSpacings") && (stateStyles.thumbnailSpacings = Number(wixStyles.thumbnailSpacings) / 2), canSet("cubeImages") && (stateStyles.cubeImages = "1" === String(wixStyles.cubeImages)), canSet("smartCrop") && (stateStyles.smartCrop = "1" === String(wixStyles.smartCrop)), canSet("cubeRatio") && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_cropRatio", Number(eval(wixStyles.cubeRatio)))), canSet("imageResize", "cubeType") && (stateStyles.cubeType = "1" === String(wixStyles.imageResize) ? "fit" : "fill", "fit" === stateStyles.cubeType && !0 === stateStyles.cropOnlyFill && (stateStyles.cubeImages = !1)), canSet("imageRatioType") && ("1" === String(wixStyles.imageRatioType) ? stateStyles.imageRatioType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.imageRatioType.RESPONSIVE : stateStyles.imageRatioType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.imageRatioType.FIXED), canSet("numberOfDisplayedItems") ? stateStyles.numberOfDisplayedItems = Number(wixStyles.numberOfDisplayedItems) : stateStyles.numberOfDisplayedItems = defaultStateStyles.numberOfDisplayedItems, stateStyles.imageRatioType === _consts__WEBPACK_IMPORTED_MODULE_1__.a.imageRatioType.RESPONSIVE ? stateStyles.gallerySliderImageRatio = (100 / Number(stateStyles.numberOfDisplayedItems)).toFixed(2) + "%/100%" : canSet("gallerySliderImageRatio", "cubeRatio") ? stateStyles.gallerySliderImageRatio = Number(eval(["16/9", "4/3", "1", "3/4", "9/16"][Number(wixStyles.gallerySliderImageRatio)])) : isUndefined(stateStyles.cubeRatio) && (stateStyles.gallerySliderImageRatio = Number(eval(["16/9", "4/3", "1", "3/4", "9/16"][Number(defaultStateStyles.gallerySliderImageRatio)]))), canSet("galleryImageRatio", "cubeRatio") && (stateStyles.galleryImageRatioFromWix = Number(eval(["16/9", "4/3", "1", "3/4", "9/16"][Number(wixStyles.galleryImageRatio)]))), "4" === String(wixStyles.galleryLayout) ? stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_cropRatio", stateStyles.gallerySliderImageRatio) : ("2" === String(wixStyles.galleryLayout) || isStoreGallery && void 0 === wixStyles.galleryLayout) && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_cropRatio", stateStyles.galleryImageRatioFromWix || defaultStateStyles.layoutParams.cropRatio)), canSet("fixedColumns") && (stateStyles.fixedColumns = Number(wixStyles.fixedColumns)), canSet("groupsPerStrip") && (stateStyles.groupsPerStrip = Number(wixStyles.groupsPerStrip)), canSet("numberOfImagesPerRow") ? stateStyles.numberOfImagesPerRow = Number(wixStyles.numberOfImagesPerRow) : stateStyles.numberOfImagesPerRow = defaultStateStyles.numberOfImagesPerRow, canSet("numberOfImagesPerCol") && (stateStyles.numberOfImagesPerCol = Number(wixStyles.numberOfImagesPerCol)), canSet("galleryThumbnailsAlignment") && (stateStyles.galleryThumbnailsAlignment = ["bottom", "left", "top", "right"][wixStyles.galleryThumbnailsAlignment]), canSet("itemOpacity") && (stateStyles.itemOpacity = wixStyles.itemOpacity), canSet("overlayBackground") && (stateStyles.overlayBackground = wixStyles.overlayBackground), canSet("galleryLayout") ? stateStyles.galleryLayout = wixStyles.galleryLayout : stateStyles.galleryLayout = defaultStateStyles.galleryLayout, canSet("scrollDirection") ? stateStyles.scrollDirection = wixStyles.scrollDirection : stateStyles.scrollDirection = defaultStateStyles.scrollDirection, canSet("allowFixedGalleryRatio") && wixStyles.allowFixedGalleryRatio && (stateStyles = canSet("fixedGalleryRatio") ? Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_structure_galleryRatio_value", 1 / eval(["16/9", "4/3", "1", "3/4", "9/16"][Number(wixStyles.fixedGalleryRatio)])) : Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "layoutParams_structure_galleryRatio_value", 1)), canSet("galleryType") && (stateStyles.galleryType = wixStyles.galleryType), canSet("designedPresetId") && (stateStyles.designedPresetId = wixStyles.designedPresetId);
                var setTitlePlacementIfPossible = function() {
                        var e = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.placements,
                            t = e.SHOW_BELOW,
                            i = e.SHOW_ON_HOVER,
                            r = e.SHOW_ABOVE;
                        canSet("titlePlacement") && (stateStyles.titlePlacement = {
                            0: t,
                            2: r
                        }[String(wixStyles.titlePlacement)] || i)
                    },
                    setCompTitlePlacementIfPossible = function() {
                        if (canSet("titlePlacementHorizontallyCompatible", "titlePlacement")) {
                            var e = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.placements,
                                t = e.SHOW_BELOW,
                                i = e.SHOW_ON_HOVER,
                                r = e.SHOW_ABOVE,
                                o = e.SHOW_ON_THE_LEFT,
                                a = e.SHOW_ON_THE_RIGHT;
                            stateStyles.titlePlacement = {
                                0: t,
                                2: r,
                                3: o,
                                4: a
                            }[String(wixStyles.titlePlacementHorizontallyCompatible)] || i
                        }
                    },
                    setCompTitlePlacement = function() {
                        isMobile ? isUndefined(wixStyles.m_titlePlacementHorizontallyCompatible) ? isUndefined(wixStyles.m_titlePlacement) ? (setCompTitlePlacementIfPossible(), setTitlePlacementIfPossible()) : setTitlePlacementIfPossible() : setCompTitlePlacementIfPossible() : (setCompTitlePlacementIfPossible(), setTitlePlacementIfPossible())
                    },
                    setTitlePlacementValue = function() {
                        Object(_proGalleryStyleBuilderUtils__WEBPACK_IMPORTED_MODULE_8__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)({}, stateStyles), {
                            isMobile: isMobile
                        })) ? setCompTitlePlacement() : setTitlePlacementIfPossible()
                    };
                if (_sdk_experimentsWrapper__WEBPACK_IMPORTED_MODULE_9__.a.getExperimentBoolean("specs.pro-gallery.horizontalTitlePlacementOptionsViewer") ? setTitlePlacementValue() : setTitlePlacementIfPossible(), canSet("hoveringBehaviour") && ("1" === String(wixStyles.hoveringBehaviour) ? stateStyles.hoveringBehaviour = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoBehaviourOnHover.DISAPPEARS : "2" === String(wixStyles.hoveringBehaviour) ? stateStyles.hoveringBehaviour = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoBehaviourOnHover.NO_CHANGE : stateStyles.hoveringBehaviour = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoBehaviourOnHover.APPEARS), canSet("overlaySizeType") && "1" === String(wixStyles.overlaySizeType) ? (stateStyles.overlaySizeType = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlaySizeType.PIXEL, canSet("overlaySizePixel") && (stateStyles.overlaySize = Number(wixStyles.overlaySizePixel))) : (stateStyles.overlaySizeType = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlaySizeType.PERCENT, canSet("overlaySizePercent") && (stateStyles.overlaySize = Number(wixStyles.overlaySizePercent))), canSet("overlayPosition")) {
                    var overlayPosition = String(wixStyles.overlayPosition),
                        _d = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlayPositions,
                        LEFT = _d.LEFT,
                        RIGHT = _d.RIGHT,
                        BOTTOM = _d.BOTTOM,
                        TOP = _d.TOP,
                        CENTERED_VERTICALLY = _d.CENTERED_VERTICALLY,
                        CENTERED_HORIZONTALLY = _d.CENTERED_HORIZONTALLY,
                        mapOverlayPositionToString = {
                            0: LEFT,
                            1: RIGHT,
                            2: BOTTOM,
                            3: TOP,
                            4: CENTERED_VERTICALLY,
                            5: CENTERED_HORIZONTALLY
                        },
                        currentPosition = mapOverlayPositionToString[overlayPosition] || BOTTOM;
                    stateStyles.overlayPosition = currentPosition
                }
                if (canSet("overlayPadding") && (stateStyles.overlayPadding = Number(wixStyles.overlayPadding)), canSet("overlayType") && "0" === String(wixStyles.overlayType) && (stateStyles.overlaySizeType = defaultStateStyles.overlaySizeType, stateStyles.overlaySize = defaultStateStyles.overlaySize, stateStyles.overlayPosition = defaultStateStyles.overlayPosition, stateStyles.overlayPadding = defaultStateStyles.overlayPadding), isUndefined(stateStyles.allowTitle) || stateStyles.allowTitle || isUndefined(stateStyles.allowDescription) || stateStyles.allowDescription || (stateStyles.titlePlacement = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.placements.SHOW_ON_HOVER, stateStyles.hoveringBehaviour = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoBehaviourOnHover.APPEARS), canSet("arrowsVerticalPosition") ? stateStyles.arrowsVerticalPosition = {
                        0: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsVerticalPosition.ITEM_CENTER,
                        1: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsVerticalPosition.IMAGE_CENTER,
                        2: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsVerticalPosition.INFO_CENTER
                    }[wixStyles.arrowsVerticalPosition] : pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.isLayout("SLIDESHOW")(stateStyles) && (stateStyles.arrowsVerticalPosition = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsVerticalPosition.IMAGE_CENTER), canSet("arrowsType")) {
                    var type = {
                        0: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.DEFAULT_ARROW,
                        1: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_2,
                        2: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_3,
                        3: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_4,
                        4: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_5,
                        5: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_6,
                        6: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.ARROW_7
                    }[wixStyles.arrowsType] || pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsType.DEFAULT_ARROW;
                    stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, pro_gallery_lib__WEBPACK_IMPORTED_MODULE_4__.a.layoutParams.navigationArrows.type, type), [-1, -2].includes(wixStyles.arrowsType) && (stateStyles.shouldUseCustomArrows = !0, stateStyles.isArrowPrivateMedia = wixStyles.isArrowPrivateMedia)
                }
                if (canSet("arrowsContainerType")) {
                    var type = {
                        0: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsContainerStyleType.NONE,
                        1: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsContainerStyleType.SHADOW,
                        2: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsContainerStyleType.BOX
                    }[wixStyles.arrowsContainerType] || pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.arrowsContainerStyleType.SHADOW;
                    stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, pro_gallery_lib__WEBPACK_IMPORTED_MODULE_4__.a.layoutParams.navigationArrows.container.type, type)
                }
                if (canSet("arrowsContainerBackgroundColor") && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, pro_gallery_lib__WEBPACK_IMPORTED_MODULE_4__.a.layoutParams.navigationArrows.container.backgroundColor, wixStyles.arrowsContainerBackgroundColor.value)), canSet("arrowsContainerBorderRadius") && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, pro_gallery_lib__WEBPACK_IMPORTED_MODULE_4__.a.layoutParams.navigationArrows.container.borderRadius, wixStyles.arrowsContainerBorderRadius)), canSet("customArrowsSvg") && (stateStyles.customArrowsSvg = wixStyles.customArrowsSvg), canSet("customArrowsRotation") && (stateStyles.customArrowsRotation = wixStyles.customArrowsRotation), canSet("scrollAnimation")) {
                    var shouldNotAllowHorizontalScrollAnimation = "3" === String(stateStyles.galleryLayout) || "5" === String(stateStyles.galleryLayout);
                    shouldNotAllowHorizontalScrollAnimation ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.NO_EFFECT : "1" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.FADE_IN : "2" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.GRAYSCALE : "3" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.SLIDE_UP : "4" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.EXPAND : "5" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.SHRINK : "6" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.ZOOM_OUT : "7" === String(wixStyles.scrollAnimation) ? stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.ONE_COLOR : stateStyles.scrollAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.scrollAnimations.NO_EFFECT
                }
                if (canSet("slideAnimation")) {
                    var shouldAllowSlideAnimation = "3" === String(stateStyles.galleryLayout) || "5" === String(stateStyles.galleryLayout);
                    if (shouldAllowSlideAnimation) {
                        var slideAnimation = String(wixStyles.slideAnimation);
                        switch (slideAnimation) {
                            case "1":
                                stateStyles.slideAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.FADE;
                                break;
                            case "2":
                                stateStyles.slideAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.DECK;
                                break;
                            case "0":
                            default:
                                stateStyles.slideAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.SCROLL
                        }
                    } else stateStyles.slideAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.SCROLL
                } else stateStyles.slideAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.SCROLL;
                if (canSet("slideTransition")) {
                    var slideTransition = String(wixStyles.slideTransition);
                    switch (slideTransition) {
                        case "0":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.LINEAR;
                            break;
                        case "2":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.EASE_OUT;
                            break;
                        case "3":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.EASE_IN;
                            break;
                        case "4":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.BOUNCE_IN;
                            break;
                        case "5":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.BOUNCE_OUT;
                            break;
                        case "6":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.BOUNCE_IN_OUT;
                            break;
                        case "7":
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.EXPO;
                            break;
                        case "1":
                        default:
                            stateStyles.slideTransition = _consts__WEBPACK_IMPORTED_MODULE_1__.a.slideTransitions.EASE_IN_OUT
                    }
                }
                if (canSet("scrollDuration") && (stateStyles.scrollDuration = 1e3 * Number(wixStyles.scrollDuration) || 0), canSet("overlayAnimation")) {
                    var overlayAnimation = String(wixStyles.overlayAnimation),
                        _e = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.overlayAnimations,
                        NO_EFFECT = _e.NO_EFFECT,
                        FADE_IN = _e.FADE_IN,
                        EXPAND = _e.EXPAND,
                        SLIDE_UP = _e.SLIDE_UP,
                        SLIDE_RIGHT = _e.SLIDE_RIGHT,
                        SLIDE_DOWN = _e.SLIDE_DOWN,
                        SLIDE_LEFT = _e.SLIDE_LEFT,
                        mapOverlayAnimationToString = {
                            0: NO_EFFECT,
                            1: FADE_IN,
                            2: EXPAND,
                            3: SLIDE_UP,
                            4: SLIDE_RIGHT,
                            5: SLIDE_DOWN,
                            6: SLIDE_LEFT
                        };
                    stateStyles.overlayAnimation = mapOverlayAnimationToString[overlayAnimation] || NO_EFFECT
                }
                if (canSet("imageHoverAnimation") && ("1" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.ZOOM_IN : "2" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.BLUR : "3" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.GRAYSCALE : "4" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.SHRINK : "5" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.INVERT : "6" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.COLOR_IN : "7" === String(wixStyles.imageHoverAnimation) ? stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.DARKENED : stateStyles.imageHoverAnimation = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.imageHoverAnimations.NO_EFFECT), canSet("expandAnimation") && ("1" === String(wixStyles.expandAnimation) ? stateStyles.expandAnimation = _consts__WEBPACK_IMPORTED_MODULE_1__.a.expandAnimations.EXPAND : "2" === String(wixStyles.expandAnimation) ? stateStyles.expandAnimation = _consts__WEBPACK_IMPORTED_MODULE_1__.a.expandAnimations.FADE_IN : "3" === String(wixStyles.expandAnimation) ? stateStyles.expandAnimation = _consts__WEBPACK_IMPORTED_MODULE_1__.a.expandAnimations.ZOOM : stateStyles.expandAnimation = _consts__WEBPACK_IMPORTED_MODULE_1__.a.expandAnimations.NO_EFFECT), canSet("itemFont") && (stateStyles.itemFont = wixStyles.itemFont), canSet("itemFontSlideshow") && (stateStyles.itemFontSlideshow = wixStyles.itemFontSlideshow), canSet("itemDescriptionFontSlideshow") && (stateStyles.itemDescriptionFontSlideshow = wixStyles.itemDescriptionFontSlideshow), canSet("itemDescriptionFont") && (stateStyles.itemDescriptionFont = wixStyles.itemDescriptionFont), canSet("itemFontColor") && (stateStyles.itemFontColor = wixStyles.itemFontColor), canSet("itemFontColorSlideshow") && (stateStyles.itemFontColorSlideshow = wixStyles.itemFontColorSlideshow), canSet("itemDescriptionFontColor") && (stateStyles.itemDescriptionFontColor = wixStyles.itemDescriptionFontColor), canSet("itemDescriptionFontColorSlideshow") && (stateStyles.itemDescriptionFontColorSlideshow = wixStyles.itemDescriptionFontColorSlideshow), canSet("textBoxFillColor") && (stateStyles.textBoxFillColor = wixStyles.textBoxFillColor), canSet("textsVerticalPadding") ? stateStyles.textsVerticalPadding = wixStyles.textsVerticalPadding : stateStyles.textsVerticalPadding = defaultStateStyles.textsVerticalPadding, canSet("textsHorizontalPadding") ? stateStyles.textsHorizontalPadding = wixStyles.textsHorizontalPadding : stateStyles.textsHorizontalPadding = defaultStateStyles.textsHorizontalPadding, canSet("textBoxBorderRadius") && (stateStyles.textBoxBorderRadius = Number(wixStyles.textBoxBorderRadius)), canSet("textBoxBorderWidth") && (stateStyles.textBoxBorderWidth = Number(wixStyles.textBoxBorderWidth)), canSet("textBoxBorderColor") && (stateStyles.textBoxBorderColor = wixStyles.textBoxBorderColor), canSet("titleDescriptionSpace") ? stateStyles.titleDescriptionSpace = Number(wixStyles.titleDescriptionSpace) : stateStyles.titleDescriptionSpace = defaultStateStyles.titleDescriptionSpace, canSet("textImageSpace") && (stateStyles.textImageSpace = wixStyles.textImageSpace), canSet("imageInfoType")) {
                    var selectedImageInfoType = void 0;
                    selectedImageInfoType = "0" === String(wixStyles.imageInfoType) ? pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoType.NO_BACKGROUND : "1" === String(wixStyles.imageInfoType) ? pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoType.ATTACHED_BACKGROUND : "2" === String(wixStyles.imageInfoType) ? pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoType.SEPARATED_BACKGROUND : pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.infoType.NO_BACKGROUND, stateStyles.imageInfoType = selectedImageInfoType
                }
                if (canSet("galleryHorizontalAlign")) {
                    var horizontalAlign = void 0,
                        textAlign = void 0;
                    switch (wixStyles.galleryHorizontalAlign) {
                        case 0:
                            horizontalAlign = "flex-start", textAlign = "left";
                            break;
                        case 1:
                        default:
                            horizontalAlign = "center", textAlign = "center";
                            break;
                        case 2:
                            horizontalAlign = "flex-end", textAlign = "right"
                    }
                    stateStyles.galleryHorizontalAlign = horizontalAlign, stateStyles.galleryTextAlign = textAlign
                } else stateStyles.galleryHorizontalAlign = defaultStateStyles.galleryHorizontalAlign, stateStyles.galleryTextAlign = defaultStateStyles.galleryTextAlign;
                if (canSet("galleryVerticalAlign")) {
                    var verticalAlign = void 0;
                    switch (wixStyles.galleryVerticalAlign) {
                        case 0:
                        default:
                            verticalAlign = "flex-start";
                            break;
                        case 1:
                            verticalAlign = "center";
                            break;
                        case 2:
                            verticalAlign = "flex-end"
                    }
                    stateStyles.galleryVerticalAlign = verticalAlign
                } else stateStyles.galleryVerticalAlign = defaultStateStyles.galleryVerticalAlign;
                if (canSet("itemClick"))
                    if ("number" == typeof wixStyles.itemClick) switch (wixStyles.itemClick) {
                        case 0:
                        default:
                            stateStyles.itemClick = "expand";
                            break;
                        case 1:
                            stateStyles.itemClick = "link";
                            break;
                        case 2:
                            stateStyles.itemClick = "nothing";
                            break;
                        case 3:
                            stateStyles.itemClick = "fullscreen"
                    } else "expand" === wixStyles.itemClick || "link" === wixStyles.itemClick || "nothing" === wixStyles.itemClick || "fullscreen" === wixStyles.itemClick ? stateStyles.itemClick = wixStyles.itemClick : stateStyles.itemClick = "expand";
                if (canSet("loadMoreButtonText") && (stateStyles.loadMoreButtonText = String(wixStyles.loadMoreButtonText)), canSet("loadMoreButtonFont") && (stateStyles.loadMoreButtonFont = wixStyles.loadMoreButtonFont), canSet("loadMoreButtonFontColor") && (stateStyles.loadMoreButtonFontColor = wixStyles.loadMoreButtonFontColor), canSet("loadMoreButtonColor") && (stateStyles.loadMoreButtonColor = wixStyles.loadMoreButtonColor), canSet("loadMoreButtonBorderWidth") && (stateStyles.loadMoreButtonBorderWidth = wixStyles.loadMoreButtonBorderWidth), canSet("loadMoreButtonBorderColor") && (stateStyles.loadMoreButtonBorderColor = wixStyles.loadMoreButtonBorderColor), canSet("loadMoreButtonBorderRadius") && (stateStyles.loadMoreButtonBorderRadius = wixStyles.loadMoreButtonBorderRadius), canSet("autoSlideshowContinuousSpeed") && (stateStyles.autoSlideshowContinuousSpeed = Number(wixStyles.autoSlideshowContinuousSpeed) || 0), canSet("autoSlideshowType")) {
                    var shouldAllowContinuousAutoSlide = stateStyles.slideAnimation === pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.slideAnimations.SCROLL;
                    if (shouldAllowContinuousAutoSlide) {
                        var autoSlideshowType = String(wixStyles.autoSlideshowType);
                        switch (autoSlideshowType) {
                            case "0":
                                stateStyles.autoSlideshowType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.autoSlideshowTypes.INTERVAL;
                                break;
                            case "1":
                                stateStyles.autoSlideshowType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.autoSlideshowTypes.CONTINUOUS;
                                break;
                            default:
                                stateStyles.autoSlideshowType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.autoSlideshowTypes.INTERVAL
                        }
                    } else stateStyles.autoSlideshowType = _consts__WEBPACK_IMPORTED_MODULE_1__.a.autoSlideshowTypes.INTERVAL
                }
                canSet("customButtonText") ? stateStyles.customButtonText = String(wixStyles.customButtonText) : stateStyles.customButtonText = defaultStateStyles.customButtonText, canSet("customButtonFontForHover") && (stateStyles.customButtonFontForHover = wixStyles.customButtonFontForHover), canSet("customButtonFontColorForHover") && (stateStyles.customButtonFontColorForHover = wixStyles.customButtonFontColorForHover), canSet("externalCustomButtonColor") && (stateStyles.externalCustomButtonColor = wixStyles.externalCustomButtonColor), canSet("externalCustomButtonBorderWidth") && (stateStyles.externalCustomButtonBorderWidth = wixStyles.externalCustomButtonBorderWidth), canSet("externalCustomButtonBorderColor") && (stateStyles.externalCustomButtonBorderColor = wixStyles.externalCustomButtonBorderColor), canSet("externalCustomButtonBorderRadius") && (stateStyles.externalCustomButtonBorderRadius = wixStyles.externalCustomButtonBorderRadius), canSet("customButtonFont") && (stateStyles.customButtonFont = wixStyles.customButtonFont), canSet("customButtonFontColor") && (stateStyles.customButtonFontColor = wixStyles.customButtonFontColor), canSet("customButtonColor") && (stateStyles.customButtonColor = wixStyles.customButtonColor), canSet("customButtonBorderWidth") && (stateStyles.customButtonBorderWidth = wixStyles.customButtonBorderWidth), canSet("customButtonBorderColor") && (stateStyles.customButtonBorderColor = wixStyles.customButtonBorderColor), canSet("customButtonBorderRadius") && (stateStyles.customButtonBorderRadius = wixStyles.customButtonBorderRadius), canSet("loadMoreAmount") && ("1" === String(wixStyles.loadMoreAmount) ? stateStyles.loadMoreAmount = "partial" : stateStyles.loadMoreAmount = "all"), stateStyles.sharpParams = {
                    quality: 90,
                    usm: {}
                }, canSet("imageQuality") && (stateStyles.sharpParams.quality = wixStyles.imageQuality), canSet("usmToggle") && (stateStyles.sharpParams.allowUsm = wixStyles.usmToggle, !0 === wixStyles.usmToggle && (canSet("usm_a") && (stateStyles.sharpParams.usm.usm_a = (wixStyles.usm_a || 0) / 100), canSet("usm_r") && (stateStyles.sharpParams.usm.usm_r = wixStyles.usm_r), canSet("usm_t") && (stateStyles.sharpParams.usm.usm_t = (wixStyles.usm_t || 0) / 255)));
                var fullResFeatureExperimentEnabled = _sdk_experimentsWrapper__WEBPACK_IMPORTED_MODULE_9__.a.getExperimentBoolean("specs.pro-gallery.enableFullResFeatureViewer"),
                    fullResFeatureEnviromentSupported = !isInEditor && !isSsr,
                    fullResFeatureStyleParamSet = void 0 !== wixStyles.galleryItemResolution,
                    shouldUseFullResFeature = fullResFeatureExperimentEnabled && fullResFeatureEnviromentSupported && fullResFeatureStyleParamSet;
                if (shouldUseFullResFeature && (stateStyles = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.a)(stateStyles, "stylingParams_itemResolutionMode", _consts__WEBPACK_IMPORTED_MODULE_1__.b[wixStyles.galleryItemResolution])), canSet("videoPlay")) switch (wixStyles.videoPlay) {
                    case 0:
                    default:
                        stateStyles.videoPlay = "hover";
                        break;
                    case 1:
                        stateStyles.videoPlay = "auto";
                        break;
                    case 2:
                        stateStyles.videoPlay = "onClick"
                }
                if (canSet("videoSound") && (stateStyles.videoSound = wixStyles.videoSound), canSet("videoSpeed") && (stateStyles.videoSpeed = wixStyles.videoSpeed), canSet("videoLoop") && (stateStyles.videoLoop = wixStyles.videoLoop), canSet("showVideoPlayButton") && (stateStyles.showVideoPlayButton = wixStyles.showVideoPlayButton), canSet("mobilePanorama") && (stateStyles.mobilePanorama = "1" === String(wixStyles.mobilePanorama)), canSet("placeGroupsLtr") && (stateStyles.placeGroupsLtr = "1" === String(wixStyles.placeGroupsLtr)), canSet("isAutoSlideshow") && (stateStyles.isAutoSlideshow = "1" === String(wixStyles.isAutoSlideshow)), canSet("slideshowLoop") && (stateStyles.slideshowLoop = "1" === String(wixStyles.slideshowLoop)), canSet("playButtonForAutoSlideShow") && (stateStyles.playButtonForAutoSlideShow = "1" === String(wixStyles.playButtonForAutoSlideShow)), canSet("pauseAutoSlideshowOnHover") && (stateStyles.pauseAutoSlideshowOnHover = wixStyles.pauseAutoSlideshowOnHover), canSet("allowSlideshowCounter") && (stateStyles.allowSlideshowCounter = wixStyles.allowSlideshowCounter), canSet("autoSlideshowInterval") && (stateStyles.autoSlideshowInterval = Number(wixStyles.autoSlideshowInterval) || 0), canSet("showArrows") ? stateStyles.showArrows = wixStyles.showArrows : isUndefined(stateStyles.showArrows) && (stateStyles.showArrows = defaultStateStyles.showArrows), canSet("arrowsSize") && (stateStyles.arrowsSize = Number(wixStyles.arrowsSize) || 23), canSet("arrowsColor") && (stateStyles.arrowsColor = wixStyles.arrowsColor), canSet("arrowsPosition") && (stateStyles.arrowsPosition = 1 === Number(stateStyles.showArrows) ? wixStyles.arrowsPosition : 0), stateStyles.arrowsPadding = canSet("arrowsPadding") ? wixStyles.arrowsPadding : defaultStateStyles.arrowsPadding, canSet("oneColorAnimationColor") && (stateStyles.oneColorAnimationColor = wixStyles.oneColorAnimationColor), canSet("slideshowInfoSize") && (stateStyles.slideshowInfoSize = Number(wixStyles.slideshowInfoSize)), canSet("thumbnailSize") && (stateStyles.thumbnailSize = isMobile ? defaultStateStyles.thumbnailSize : Number(wixStyles.thumbnailSize) || defaultStateStyles.thumbnailSize), canSet("responsive") ? stateStyles.responsive = wixStyles.responsive : stateStyles.responsive = !1, canSet("imageLoadingMode") && ("1" === String(wixStyles.imageLoadingMode) ? stateStyles.imageLoadingMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingMode.COLOR : stateStyles.imageLoadingMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingMode.BLUR), canSet("imageLoadingWithColorMode") && ("1" === String(wixStyles.imageLoadingWithColorMode) ? stateStyles.imageLoadingWithColorMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingWithColorMode.MAIN_COLOR : stateStyles.imageLoadingWithColorMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.loadingWithColorMode.PICKED_COLOR), canSet("textBoxHeight") && (stateStyles.textBoxHeight = wixStyles.textBoxHeight), canSet("calculateTextBoxHeightMode") ? "1" === String(wixStyles.calculateTextBoxHeightMode) ? stateStyles.calculateTextBoxHeightMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.MANUAL : stateStyles.calculateTextBoxHeightMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.AUTOMATIC : stateStyles.calculateTextBoxHeightMode = defaultStateStyles.calculateTextBoxHeightMode, canSet("calculateTextBoxWidthMode") && (stateStyles.calculateTextBoxWidthMode = {
                        0: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.PERCENT,
                        1: pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.MANUAL
                    }[wixStyles.calculateTextBoxWidthMode]), canSet("textBoxWidthPercent") && (stateStyles.textBoxWidthPercent = wixStyles.textBoxWidthPercent), canSet("textBoxWidth") && (stateStyles.textBoxWidth = wixStyles.textBoxWidth), canSet("jsonStyleParams") && (stateStyles.jsonStyleParams = wixStyles.jsonStyleParams), canSet("galleryLayoutType") && (stateStyles.galleryLayoutType = wixStyles.galleryLayoutType), canSet("shouldIndexDirectShareLinkInSEO") && (stateStyles.shouldIndexDirectShareLinkInSEO = wixStyles.shouldIndexDirectShareLinkInSEO), isUndefined(stateStyles.allowTitle) && (stateStyles.allowTitle = defaultStateStyles.allowTitle), isUndefined(stateStyles.allowDescription) && (stateStyles.allowDescription = defaultStateStyles.allowDescription), isMobile)
                    for (var key in mobileSpecificDefaultStyles) isUndefined(userSavedMobileStyles[key]) && (stateStyles[key] = mobileSpecificDefaultStyles[key]);
                var getFontLineHeight = function(e) {
                        return e.value.match(/\/(\d+)px/) ? parseInt(e.value.match(/\/(\d+)px/)[1]) : e.value.match(/\/(\d+)%/) ? e.size * (parseInt(e.value.match(/\/(\d+)%/)[1]) / 100) : e.value.match(/px\/(([0-9]*[.])?[0-9]*)/) ? e.size * parseFloat(e.value.match(/px\/(([0-9]*[.])?[0-9]*)/)[1]) : (console.error("GalleryContainer -> getFontLineHeight -> font lineHeight do not match any pattern. font value: ", e.value), e.size)
                    },
                    getHeightByContent = function(e) {
                        var t = e.itemFontSlideshow,
                            i = e.itemDescriptionFontSlideshow,
                            r = e.allowTitle,
                            o = e.allowDescription,
                            a = e.useCustomButton,
                            n = e.titlePlacement;
                        if (n !== pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.placements.SHOW_ABOVE && n !== pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.placements.SHOW_BELOW) return 0;
                        var s = a ? 33 : 0,
                            l = a && (r || o) ? 16 : 0,
                            u = 0,
                            c = 0;
                        return r && (u = t ? getFontLineHeight(t) : 22, l += o ? 6 : 0), o && (c = i ? getFontLineHeight(i) : 15), 10 + u + 3 * c + 45 + l + s
                    };
                stateStyles.gotStyleParams = gotStyleParams;
                var finalStyleParams = Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_2__.d)(defaultStateStyles, stateStyles);
                return finalStyleParams.designedPresetId >= 1 && (finalStyleParams = Object(_customPresetProcessor__WEBPACK_IMPORTED_MODULE_6__.a)({
                    styles: finalStyleParams,
                    presetId: finalStyleParams.designedPresetId,
                    isMobile: isMobile
                }), delete finalStyleParams.jsonStyleParams, delete finalStyleParams.m_jsonStyleParams, delete finalStyleParams.designedPresetId, delete finalStyleParams.m_designedPresetId, finalStyleParams.galleryLayout = -1), finalStyleParams.calculateTextBoxHeightMode === pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.AUTOMATIC && (finalStyleParams.calculateTextBoxHeightMode = pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.textBoxWidthCalculationOptions.MANUAL, finalStyleParams.textBoxHeight = getHeightByContent(finalStyleParams)), finalStyleParams.galleryLayout === pro_gallery_lib__WEBPACK_IMPORTED_MODULE_3__.a.layout.SLIDESHOW && (finalStyleParams.textBoxHeight = finalStyleParams.slideshowInfoSize), Object(pro_gallery_lib__WEBPACK_IMPORTED_MODULE_5__.a)(finalStyleParams)
            },
            getProGalleryStyles = function(e, t) {
                void 0 === t && (t = {});
                var i = Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)({}, e.booleans), e.numbers), e.colors), e.fonts), e.manual);
                return getProGalleryStylesImp(i, !0, Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)(Object(tslib__WEBPACK_IMPORTED_MODULE_0__.a)({}, {
                    isMobile: !1,
                    isStoreGallery: !1,
                    isOnBoarding: !1,
                    isInEditor: !1,
                    isSsr: !1
                }), t))
            }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return n
        }));
        var r = i(38),
            o = i(48),
            a = i(39),
            n = function(e) {
                var t, i = r.a.groupSize,
                    n = e.galleryLayout,
                    s = e.scrollDirection,
                    l = e.isVertical,
                    u = e.designedPresetId,
                    c = e.isMobile,
                    h = e.groupSize,
                    p = {
                        galleryLayout: n,
                        scrollDirection: s,
                        isVertical: l,
                        groupSize: void 0 === h ? i : h,
                        designedPresetId: void 0 === u ? -1 : u
                    };
                return t = Number(p.designedPresetId) >= 1 ? Object(a.a)({
                    styles: p,
                    presetId: u,
                    isMobile: c
                }) : Object(o.a)(p), 0 === Number(t.scrollDirection) && 1 === Number(t.groupSize) && !0 === t.isVertical
            }
    }, function(e, t, i) {
        "use strict";
        i.r(t), i.d(t, "pick", (function() {
            return r
        })), i.d(t, "throttle", (function() {
            return o
        })), i.d(t, "debounce", (function() {
            return a
        })), i.d(t, "get", (function() {
            return n
        })), i.d(t, "isFunction", (function() {
            return s
        })), i.d(t, "isEqual", (function() {
            return l
        })), i.d(t, "isNumber", (function() {
            return u
        }));
        var r = function(e, t) {
                var i = {};
                return Object.entries(e || {}).forEach((function(e) {
                    var r = e[0],
                        o = e[1];
                    t.indexOf(r) >= 0 && (i[r] = o)
                })), i
            },
            o = function(e, t) {
                var i = !1,
                    r = !1;
                return function() {
                    for (var o = [], a = 0; a < arguments.length; a++) o[a] = arguments[a];
                    i ? r = !0 : (r = !1, e.apply(void 0, o), i = !0, setTimeout((function() {
                        r && e.apply(void 0, o), i = !1
                    }), t))
                }
            },
            a = function(e, t) {
                var i;
                return function() {
                    for (var r = [], o = 0; o < arguments.length; o++) r[o] = arguments[o];
                    clearTimeout(i), i = setTimeout((function() {
                        e.apply(void 0, r)
                    }), t)
                }
            },
            n = function(e, t, i) {
                var r = String.prototype.split.call(t, /[,[\].]+?/).filter(Boolean).reduce((function(e, t) {
                    return null != e ? e[t] : e
                }), e);
                return void 0 === r || r === e ? i : r
            },
            s = function(e) {
                return "function" == typeof e
            },
            l = function(e, t) {
                try {
                    return JSON.stringify(e) === JSON.stringify(t)
                } catch (e) {
                    return !1
                }
            },
            u = function(e) {
                return !isNaN(parseFloat(e)) && isFinite(e)
            }
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return b
        })), i.d(t, "b", (function() {
            return f
        }));
        var r = i(0),
            o = i(3),
            a = i(6),
            n = i(1),
            s = [
                ["galleryLayout", n.a.layoutParams.structure.galleryLayout],
                ["imageMargin", n.a.layoutParams.structure.itemSpacing],
                ["groupsPerStrip", n.a.layoutParams.groups.numberOfGroupsPerRow],
                ["cubeImages", n.a.layoutParams.crop.enable],
                ["smartCrop", n.a.layoutParams.crop.enableSmartCrop],
                ["cropOnlyFill", n.a.layoutParams.crop.cropOnlyFill],
                ["minItemSize", n.a.layoutParams.targetItemSize.minimum],
                ["scatter", n.a.layoutParams.structure.scatter.randomScatter],
                ["rotatingScatter", n.a.layoutParams.structure.scatter.manualScatter],
                ["numberOfImagesPerCol", n.a.layoutParams.structure.numberOfGridRows],
                ["collageDensity", n.a.layoutParams.groups.density],
                ["chooseBestGroup", n.a.layoutParams.groups.groupByOrientation],
                ["groupSize", n.a.layoutParams.groups.groupSize],
                ["hasThumbnails", n.a.layoutParams.thumbnails.enable],
                ["thumbnailSpacings", n.a.layoutParams.thumbnails.spacing],
                ["thumbnailSize", n.a.layoutParams.thumbnails.size],
                ["showArrows", n.a.layoutParams.navigationArrows.enable],
                ["arrowsPadding", n.a.layoutParams.navigationArrows.padding],
                ["arrowsVerticalPosition", n.a.layoutParams.navigationArrows.verticalAlignment],
                ["arrowsSize", n.a.layoutParams.navigationArrows.size],
                ["imageInfoType", n.a.layoutParams.info.layout],
                ["textImageSpace", n.a.layoutParams.info.spacing],
                ["textBoxBorderWidth", n.a.layoutParams.info.border.width],
                ["textBoxBorderColor", n.a.layoutParams.info.border.color],
                ["textBoxBorderRadius", n.a.layoutParams.info.border.radius]
            ],
            l = [
                ["useMaxDimensions", n.a.layoutParams.structure.enableStreching]
            ],
            u = [
                ["magnificationLevel", n.a.behaviourParams.item.content.magnificationValue],
                ["videoLoop", n.a.behaviourParams.item.video.loop],
                ["showVideoPlayButton", n.a.behaviourParams.item.video.enablePlayButton],
                ["showVideoControls", n.a.behaviourParams.item.video.enableControls],
                ["enableVideoPlaceholder", n.a.behaviourParams.item.video.enablePlaceholder],
                ["overlayAnimation", n.a.behaviourParams.item.overlay.hoverAnimation],
                ["overlayPosition", n.a.behaviourParams.item.overlay.position],
                ["overlaySize", n.a.behaviourParams.item.overlay.size],
                ["overlaySizeType", n.a.behaviourParams.item.overlay.sizeUnits],
                ["overlayPadding", n.a.behaviourParams.item.overlay.padding],
                ["imageHoverAnimation", n.a.behaviourParams.item.content.hoverAnimation],
                ["imagePlacementAnimation", n.a.behaviourParams.item.content.placementAnimation],
                ["imageLoadingMode", n.a.behaviourParams.item.content.loader],
                ["scrollSnap", n.a.behaviourParams.gallery.horizontal.enableScrollSnap],
                ["scrollAnimation", n.a.behaviourParams.gallery.scrollAnimation],
                ["shouldIndexDirectShareLinkInSEO", n.a.behaviourParams.gallery.enableIndexingShareLinks],
                ["loadMoreButtonText", n.a.behaviourParams.gallery.vertical.loadMore.text],
                ["slideAnimation", n.a.behaviourParams.gallery.horizontal.slideAnimation],
                ["slideTransition", n.a.behaviourParams.gallery.horizontal.slideTransition],
                ["scrollDuration", n.a.behaviourParams.gallery.horizontal.navigationDuration],
                ["slideshowLoop", n.a.behaviourParams.gallery.horizontal.loop],
                ["autoSlideshowInterval", n.a.behaviourParams.gallery.horizontal.autoSlide.interval],
                ["pauseAutoSlideshowOnHover", n.a.behaviourParams.gallery.horizontal.autoSlide.pauseOnHover],
                ["autoSlideshowContinuousSpeed", n.a.behaviourParams.gallery.horizontal.autoSlide.speed],
                ["allowSlideshowCounter", n.a.behaviourParams.gallery.horizontal.slideshowInfo.enableCounter],
                ["playButtonForAutoSlideShow", n.a.behaviourParams.gallery.horizontal.slideshowInfo.enablePlayButton]
            ],
            c = [
                ["enableInfiniteScroll", n.a.behaviourParams.gallery.vertical.loadMore.enable],
                ["allowContextMenu", n.a.behaviourParams.gallery.blockContextMenu],
                ["enableScroll", n.a.behaviourParams.gallery.horizontal.blockScroll]
            ],
            h = [
                ["itemShadowBlur", n.a.stylingParams.itemShadowBlur],
                ["itemShadowDirection", n.a.stylingParams.itemShadowDirection],
                ["itemShadowOpacityAndColor", n.a.stylingParams.itemShadowOpacityAndColor],
                ["arrowsColor", n.a.stylingParams.arrowsColor],
                ["itemShadowSize", n.a.stylingParams.itemShadowSize],
                ["itemEnableShadow", n.a.stylingParams.itemEnableShadow],
                ["itemBorderRadius", n.a.stylingParams.itemBorderRadius],
                ["itemBorderWidth", n.a.stylingParams.itemBorderWidth]
            ];

        function p(e, t) {
            for (var i = Object(r.a)({}, e), o = 0, a = t; o < a.length; o++) {
                var n = a[o];
                i = m(i, n[0], n[1])
            }
            return i
        }

        function d(e, t) {
            for (var i = Object(r.a)({}, e), o = 0, a = t; o < a.length; o++) {
                var n = a[o];
                i = g(i, n[0], n[1])
            }
            return i
        }

        function m(e, t, i) {
            return void 0 === e[i] && void 0 !== e[t] && (e[i] = e[t]), delete e[t], e
        }

        function g(e, t, i) {
            return void 0 === e[i] && void 0 !== e[t] && (e[i] = !e[t]), delete e[t], e
        }

        function y(e) {
            var t, i, g, y, f, b = (y = e, f = p(f = Object(r.a)({}, y), Object(r.e)(s).map((function(e) {
                return Object(r.e)(e).reverse()
            }))), f = p(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.navigationArrows.position, "arrowsPosition")).arrowsPosition) {
                    case "ON_GALLERY":
                        t.arrowsPosition = 0;
                        break;
                    case "OUTSIDE_GALLERY":
                        t.arrowsPosition = 1;
                        break;
                    case "MOUSE_CURSOR":
                        t.arrowsPosition = 2
                }
                return t
            }(f = function(e) {
                var t, i, r = e;
                return Object(a.b)("SLIDESHOW")({
                    galleryLayout: e.galleryLayout >= -3 ? e.galleryLayout : null === (i = null === (t = e.layoutParams) || void 0 === t ? void 0 : t.structure) || void 0 === i ? void 0 : i.galleryLayout
                }) ? (r = m(r, n.a.layoutParams.info.height, "slideshowInfoSize")).textBoxHeight = r.slideshowInfoSize : (r = m(r, n.a.layoutParams.info.height, "textBoxHeight")).slideshowInfoSize = r.textBoxHeight, r
            }(f = function(e) {
                var t = e;
                return t.layoutParams_gallerySpacing = t.galleryMargin = t.layoutParams_structure_gallerySpacing, delete t.layoutParams_structure_gallerySpacing, t
            }(f = function(e) {
                var t = e;
                return t.groupTypes = t[n.a.layoutParams.groups.allowedGroupTypes] ? t[n.a.layoutParams.groups.allowedGroupTypes].join ? t[n.a.layoutParams.groups.allowedGroupTypes].join(",") : "" : void 0, delete t[n.a.layoutParams.groups.allowedGroupTypes], t
            }(f = function(e) {
                var t = e,
                    i = t[n.a.layoutParams.groups.repeatingGroupTypes] && t[n.a.layoutParams.groups.repeatingGroupTypes].join(",");
                return t.layoutParams_repeatingGroupTypes = t.rotatingGroupTypes = i, delete t[n.a.layoutParams.groups.repeatingGroupTypes], t
            }(f = function(e) {
                var t, i = e;
                return (i = m(i, n.a.layoutParams.crop.method, "cubeType")).cubeType = null === (t = i.cubeType) || void 0 === t ? void 0 : t.toLowerCase(), i
            }(f = function(e) {
                var t = e;
                return (t = m(t, n.a.layoutParams.structure.columnRatios, "columnWidths")).columnWidths = t.columnWidths ? t.columnWidths.join ? t.columnWidths.join(",") : "" : void 0, t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.info.sizeUnits, "calculateTextBoxWidthMode")).calculateTextBoxWidthMode) {
                    case "PERCENT":
                        t.calculateTextBoxWidthMode = "PERCENT", (t = m(t, n.a.layoutParams.info.width, "textBoxWidthPercent")).textBoxWidth = t.textBoxWidth || 200;
                        break;
                    case "PIXEL":
                        t.calculateTextBoxWidthMode = "MANUAL", (t = m(t, n.a.layoutParams.info.width, "textBoxWidth")).textBoxWidthPercent = t.textBoxWidthPercent || 50
                }
                return t
            }(f = function(e) {
                var t, i = e,
                    o = i[n.a.layoutParams.crop.ratios] && Object(r.e)(i[n.a.layoutParams.crop.ratios]),
                    a = o || [];
                return t = a.length > 1 ? a.slice(0).join(",") : 0 === (null == o ? void 0 : o.length) ? "" : void 0, i.layoutParams_cropRatio = i.cubeRatio = a[0], i.rotatingCropRatios = t, delete i[n.a.layoutParams.crop.ratios], i
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.crop.alignment, "cubeFitPosition")).cubeFitPosition) {
                    case "CENTER":
                        t.cubeFitPosition = "MIDDLE"
                }
                return t
            }(f = function(e) {
                var t = e,
                    i = t[n.a.layoutParams.targetItemSize.value],
                    r = t.gallerySizeType;
                return t.gallerySize = t.gallerySizePx = t.gallerySizeRatio = void 0, t[{
                    smart: "gallerySize",
                    px: "gallerySizePx",
                    ratio: "gallerySizeRatio"
                }[r]] = i, delete t[n.a.layoutParams.targetItemSize.value], t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.targetItemSize.unit, "gallerySizeType")).gallerySizeType) {
                    case "PIXEL":
                        t.gallerySizeType = "px";
                        break;
                    case "PERCENT":
                        t.gallerySizeType = "ratio";
                        break;
                    case "SMART":
                        t.gallerySizeType = "smart"
                }
                return t
            }(f = function(e) {
                var t = e;
                return t.fixedColumns = t.fixedColumns || void 0, t.numberOfImagesPerRow = t[n.a.layoutParams.structure.numberOfColumns], delete t[n.a.layoutParams.structure.numberOfColumns], t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.structure.responsiveMode, "gridStyle")).gridStyle) {
                    case "FIT_TO_SCREEN":
                        t.gridStyle = 0;
                        break;
                    case "SET_ITEMS_PER_ROW":
                        t.gridStyle = 1
                }
                return t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.structure.groupsOrder, "placeGroupsLtr")).placeGroupsLtr) {
                    case "LEFT_TO_RIGHT":
                        t.placeGroupsLtr = !0;
                        break;
                    case "RIGHT_TO_LEFT":
                    case "BY_HEIGHT":
                        t.placeGroupsLtr = !1;
                        break;
                    default:
                        t.placeGroupsLtr = void 0
                }
                return t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.structure.layoutOrientation, "isVertical")).isVertical) {
                    case "VERTICAL":
                        t.isVertical = !0;
                        break;
                    case "HORIZONTAL":
                        t.isVertical = !1
                }
                return t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.structure.scrollDirection, "scrollDirection")).scrollDirection) {
                    case "VERTICAL":
                        t.scrollDirection = 0;
                        break;
                    case "HORIZONTAL":
                        t.scrollDirection = 1
                }
                return t
            }((t = f = d(f, Object(r.e)(l).map((function(e) {
                return Object(r.e)(e).reverse()
            }))), (g = m(g = t, n.a.layoutParams.thumbnails.alignment, "galleryThumbnailsAlignment")).galleryThumbnailsAlignment = null === (i = g.galleryThumbnailsAlignment) || void 0 === i ? void 0 : i.toLowerCase(), f = g)))))))))))))))))), Object(r.e)(u).map((function(e) {
                return Object(r.e)(e).reverse()
            }))), f = p(f = function(e) {
                var t, i = e;
                return (i = m(i, n.a.behaviourParams.gallery.horizontal.slideshowInfo.buttonsAlignment, "galleryTextAlign")).galleryTextAlign = null === (t = i.galleryTextAlign) || void 0 === t ? void 0 : t.toLowerCase(), i
            }(f = function(e) {
                var t = e;
                switch (t[n.a.behaviourParams.gallery.horizontal.autoSlide.behaviour]) {
                    case "OFF":
                        t.isAutoSlideshow = !1, t.autoSlideshowType = "interval";
                        break;
                    case "INTERVAL":
                        t.isAutoSlideshow = !0, t.autoSlideshowType = "interval";
                        break;
                    case "CONTINUOUS":
                        t.isAutoSlideshow = !0, t.autoSlideshowType = "continuous"
                }
                return delete t[n.a.behaviourParams.gallery.horizontal.autoSlide.behaviour], t
            }(f = function(e) {
                var t, i = e;
                return (i = m(i, n.a.behaviourParams.gallery.vertical.loadMore.amount, "loadMoreAmount")).loadMoreAmount = null === (t = i.loadMoreAmount) || void 0 === t ? void 0 : t.toLowerCase(), i
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.behaviourParams.gallery.layoutDirection, "isRTL")).isRTL) {
                    case "RIGHT_TO_LEFT":
                        t.isRTL = !0;
                        break;
                    case "LEFT_TO_RIGHT":
                        t.isRTL = !1
                }
                return t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.layoutParams.info.placement, "titlePlacement")).titlePlacement) {
                    case "OVERLAY":
                        t.titlePlacement = "SHOW_ON_HOVER";
                        break;
                    case "BELOW":
                        t.titlePlacement = "SHOW_BELOW";
                        break;
                    case "ABOVE":
                        t.titlePlacement = "SHOW_ABOVE";
                        break;
                    case "RIGHT":
                        t.titlePlacement = "SHOW_ON_THE_RIGHT";
                        break;
                    case "LEFT":
                        t.titlePlacement = "SHOW_ON_THE_LEFT";
                        break;
                    case "ALTERNATE_HORIZONTALLY":
                        t.titlePlacement = "ALTERNATE_HORIZONTAL";
                        break;
                    case "ALTERNATE_VERTICALLY":
                        t.titlePlacement = "ALTERNATE_VERTICAL"
                }
                return t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.behaviourParams.item.overlay.hoveringBehaviour, "hoveringBehaviour")).hoveringBehaviour) {
                    case "ALWAYS_VISIBLE":
                        t.hoveringBehaviour = "NO_CHANGE";
                        break;
                    case "NEVER_VISIBLE":
                        t.hoveringBehaviour = "NEVER_SHOW"
                }
                return t
            }(f = function(e) {
                var t = e;
                return (t = m(t, n.a.behaviourParams.item.video.speed, "videoSpeed")).videoSpeed = t.videoSpeed >= 0 ? String(t.videoSpeed) : void 0, t
            }(f = function(e) {
                var t = e;
                return (t = m(t, n.a.behaviourParams.item.video.volume, "videoSound")).videoSound = void 0 === t.videoSound ? void 0 : !!t.videoSound, t
            }(f = function(e) {
                var t = e;
                switch ((t = m(t, n.a.behaviourParams.item.video.playTrigger, "videoPlay")).videoPlay) {
                    case "CLICK":
                        t.videoPlay = "onClick";
                        break;
                    case "HOVER":
                        t.videoPlay = "hover";
                        break;
                    case "AUTO":
                        t.videoPlay = "auto"
                }
                return t
            }(f = function(e) {
                var t, i = e;
                switch ((i = m(i, n.a.behaviourParams.item.clickAction, "itemClick")).itemClick = null === (t = i.itemClick) || void 0 === t ? void 0 : t.toLowerCase(), i.itemClick) {
                    case "action":
                        i.itemClick = "expand"
                }
                return i
            }(f = d(f, Object(r.e)(c).map((function(e) {
                return Object(r.e)(e).reverse()
            }))))))))))))), Object(r.e)(h).map((function(e) {
                return Object(r.e)(e).reverse()
            }))));
            return Object(r.a)(Object(r.a)({}, Object(o.e)(b)), Object(o.e)(e))
        }

        function f(e) {
            var t = y(b(Object(o.c)(e)));
            return Object(o.b)(t)
        }

        function b(e) {
            var t, i, g, y, f, b = (y = e, f = p(f = Object(r.a)({}, y), s), f = p(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "arrowsPosition", n.a.layoutParams.navigationArrows.position))[n.a.layoutParams.navigationArrows.position]) {
                        case 0:
                            t[n.a.layoutParams.navigationArrows.position] = "ON_GALLERY";
                            break;
                        case 1:
                            t[n.a.layoutParams.navigationArrows.position] = "OUTSIDE_GALLERY";
                            break;
                        case 2:
                            t[n.a.layoutParams.navigationArrows.position] = "MOUSE_CURSOR"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    return delete(t = Object(a.b)("SLIDESHOW")({
                        galleryLayout: e.galleryLayout >= -3 ? e.galleryLayout : e[n.a.layoutParams.structure.galleryLayout]
                    }) ? m(t, "slideshowInfoSize", n.a.layoutParams.info.height) : m(t, "textBoxHeight", n.a.layoutParams.info.height)).slideshowInfoSize, delete t.textBoxHeight, t
                }(f = function(e) {
                    if (void 0 !== e[n.a.layoutParams.structure.gallerySpacing]) return e;
                    var t, i = e;
                    return i["layoutParams.gallerySpacing"] >= 0 ? t = i["layoutParams.gallerySpacing"] : i.galleryMargin >= 0 && (t = i.galleryMargin), i[n.a.layoutParams.structure.gallerySpacing] = t, delete i.layoutParams_gallerySpacing, delete i.galleryMargin, i
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "gridStyle", n.a.layoutParams.structure.responsiveMode))[n.a.layoutParams.structure.responsiveMode]) {
                        case 0:
                            t[n.a.layoutParams.structure.responsiveMode] = "FIT_TO_SCREEN";
                            break;
                        case 1:
                            t[n.a.layoutParams.structure.responsiveMode] = "SET_ITEMS_PER_ROW"
                    }
                    return t
                }(f = function(e) {
                    var t, i = e;
                    return (i = m(i, "cubeType", n.a.layoutParams.crop.method))[n.a.layoutParams.crop.method] = null === (t = i[n.a.layoutParams.crop.method]) || void 0 === t ? void 0 : t.toUpperCase(), i
                }(f = function(e) {
                    var t, i, o, a = e;
                    return a = m(a, "columnWidths", n.a.layoutParams.structure.columnRatios), 0 === (null === (t = a[n.a.layoutParams.structure.columnRatios]) || void 0 === t ? void 0 : t.length) ? a[n.a.layoutParams.structure.columnRatios] = [] : a[n.a.layoutParams.structure.columnRatios] = a[n.a.layoutParams.structure.columnRatios] ? (null === (i = a[n.a.layoutParams.structure.columnRatios]) || void 0 === i ? void 0 : i.split) ? Object(r.e)(null === (o = a[n.a.layoutParams.structure.columnRatios]) || void 0 === o ? void 0 : o.split(",").map(Number)) : a[n.a.layoutParams.structure.columnRatios] : void 0, a
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "calculateTextBoxWidthMode", n.a.layoutParams.info.sizeUnits))[n.a.layoutParams.info.sizeUnits]) {
                        case "PERCENT":
                            t[n.a.layoutParams.info.sizeUnits] = "PERCENT", delete(t = m(t, "textBoxWidthPercent", n.a.layoutParams.info.width)).textBoxWidth;
                            break;
                        case "MANUAL":
                            t[n.a.layoutParams.info.sizeUnits] = "PIXEL", delete(t = m(t, "textBoxWidth", n.a.layoutParams.info.width)).textBoxWidthPercent
                    }
                    return t
                }(f = function(e) {
                    if (void 0 !== e[n.a.layoutParams.crop.ratios]) return e;
                    var t, i = e,
                        r = i.rotatingCropRatios,
                        o = i.cubeRatio || i.layoutParams_cropRatio;
                    return t = "string" == typeof r && "" !== r ? r : o, i[n.a.layoutParams.crop.ratios] = t && String(t).split(",").map((function(e) {
                        return Number(e) >= 0 ? Number(e) : e
                    })), delete i.cubeRatio, delete i.layoutParams_cropRatio, delete i.rotatingCropRatios, i
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "cubeFitPosition", n.a.layoutParams.crop.alignment))[n.a.layoutParams.crop.alignment]) {
                        case "MIDDLE":
                            t[n.a.layoutParams.crop.alignment] = "CENTER"
                    }
                    return t
                }(f = function(e) {
                    var t, i = e;
                    switch (i[n.a.layoutParams.targetItemSize.unit]) {
                        case "PIXEL":
                            t = "gallerySizePx";
                            break;
                        case "SMART":
                            t = "gallerySize";
                            break;
                        case "PERCENT":
                            t = "gallerySizeRatio"
                    }
                    return delete(i = m(i, t, n.a.layoutParams.targetItemSize.value)).gallerySizePx, delete i.gallerySizeRatio, delete i.gallerySize, i
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "gallerySizeType", n.a.layoutParams.targetItemSize.unit))[n.a.layoutParams.targetItemSize.unit]) {
                        case "px":
                            t[n.a.layoutParams.targetItemSize.unit] = "PIXEL";
                            break;
                        case "ratio":
                            t[n.a.layoutParams.targetItemSize.unit] = "PERCENT";
                            break;
                        case "smart":
                            t[n.a.layoutParams.targetItemSize.unit] = "SMART"
                    }
                    return t
                }(f = function(e) {
                    if (void 0 !== e[n.a.layoutParams.structure.numberOfColumns]) return e;
                    var t = e,
                        i = e.fixedColumns,
                        r = e.numberOfImagesPerRow,
                        o = r >= 0 ? r : i >= 0 ? i : void 0;
                    return t[n.a.layoutParams.structure.numberOfColumns] = o, delete t.fixedColumns, delete t.numberOfImagesPerRow, t
                }(f = function(e) {
                    var t;
                    if (void 0 !== e[n.a.layoutParams.groups.allowedGroupTypes]) return e;
                    var i = e;
                    return i[n.a.layoutParams.groups.allowedGroupTypes] = (null === (t = i.groupTypes) || void 0 === t ? void 0 : t.split) ? i.groupTypes.split(",") : i.groupTypes ? i.groupTypes : void 0, delete i.groupTypes, i
                }(f = function(e) {
                    if (void 0 !== e[n.a.layoutParams.groups.repeatingGroupTypes]) return e;
                    var t, i = e,
                        r = i.rotatingGroupTypes || i.layoutParams_repeatingGroupTypes;
                    return t = "string" == typeof r && "" !== r ? r.split(",") : "string" == typeof r && "" === r ? [] : void 0, i[n.a.layoutParams.groups.repeatingGroupTypes] = t, delete i.layoutParams_repeatingGroupTypes, delete i.rotatingGroupTypes, i
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "placeGroupsLtr", n.a.layoutParams.structure.groupsOrder))[n.a.layoutParams.structure.groupsOrder]) {
                        case !0:
                            t[n.a.layoutParams.structure.groupsOrder] = "LEFT_TO_RIGHT";
                            break;
                        case !1:
                            t[n.a.layoutParams.structure.groupsOrder] = "BY_HEIGHT"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "isVertical", n.a.layoutParams.structure.layoutOrientation))[n.a.layoutParams.structure.layoutOrientation]) {
                        case !0:
                            t[n.a.layoutParams.structure.layoutOrientation] = "VERTICAL";
                            break;
                        case !1:
                            t[n.a.layoutParams.structure.layoutOrientation] = "HORIZONTAL"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "scrollDirection", n.a.layoutParams.structure.scrollDirection))[n.a.layoutParams.structure.scrollDirection]) {
                        case 0:
                            t[n.a.layoutParams.structure.scrollDirection] = "VERTICAL";
                            break;
                        case 1:
                            t[n.a.layoutParams.structure.scrollDirection] = "HORIZONTAL"
                    }
                    return t
                }((t = f = d(f, l), (g = m(g = t, "galleryThumbnailsAlignment", n.a.layoutParams.thumbnails.alignment))[n.a.layoutParams.thumbnails.alignment] = null === (i = g[n.a.layoutParams.thumbnails.alignment]) || void 0 === i ? void 0 : i.toUpperCase(), f = g)))))))))))))))))), u), delete(f = p(f = function(e) {
                    var t, i = e;
                    return (i = m(i, "galleryTextAlign", n.a.behaviourParams.gallery.horizontal.slideshowInfo.buttonsAlignment))[n.a.behaviourParams.gallery.horizontal.slideshowInfo.buttonsAlignment] = null === (t = i[n.a.behaviourParams.gallery.horizontal.slideshowInfo.buttonsAlignment]) || void 0 === t ? void 0 : t.toUpperCase(), i
                }(f = function(e) {
                    if (void 0 !== e[n.a.behaviourParams.gallery.horizontal.autoSlide.behaviour]) return e;
                    var t, i = e,
                        r = i.isAutoSlideshow,
                        o = i.autoSlideshowType;
                    return t = void 0 === r ? void 0 : r ? "interval" === o ? "INTERVAL" : "CONTINUOUS" : "OFF", i[n.a.behaviourParams.gallery.horizontal.autoSlide.behaviour] = t, delete i.isAutoSlideshow, delete i.autoSlideshowType, i
                }(f = function(e) {
                    var t, i = e;
                    return (i = m(i, "loadMoreAmount", n.a.behaviourParams.gallery.vertical.loadMore.amount))[n.a.behaviourParams.gallery.vertical.loadMore.amount] = null === (t = i[n.a.behaviourParams.gallery.vertical.loadMore.amount]) || void 0 === t ? void 0 : t.toUpperCase(), i
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "isRTL", n.a.behaviourParams.gallery.layoutDirection))[n.a.behaviourParams.gallery.layoutDirection]) {
                        case !0:
                            t[n.a.behaviourParams.gallery.layoutDirection] = "RIGHT_TO_LEFT";
                            break;
                        case !1:
                            t[n.a.behaviourParams.gallery.layoutDirection] = "LEFT_TO_RIGHT"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "titlePlacement", n.a.layoutParams.info.placement))[n.a.layoutParams.info.placement]) {
                        case "SHOW_ON_HOVER":
                            t[n.a.layoutParams.info.placement] = "OVERLAY";
                            break;
                        case "SHOW_BELOW":
                            t[n.a.layoutParams.info.placement] = "BELOW";
                            break;
                        case "SHOW_ABOVE":
                            t[n.a.layoutParams.info.placement] = "ABOVE";
                            break;
                        case "SHOW_ON_THE_RIGHT":
                            t[n.a.layoutParams.info.placement] = "RIGHT";
                            break;
                        case "SHOW_ON_THE_LEFT":
                            t[n.a.layoutParams.info.placement] = "LEFT";
                            break;
                        case "ALTERNATE_HORIZONTAL":
                            t[n.a.layoutParams.info.placement] = "ALTERNATE_HORIZONTALLY";
                            break;
                        case "ALTERNATE_VERTICAL":
                            t[n.a.layoutParams.info.placement] = "ALTERNATE_VERTICALLY"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    switch ((t = m(t, "hoveringBehaviour", n.a.behaviourParams.item.overlay.hoveringBehaviour))[n.a.behaviourParams.item.overlay.hoveringBehaviour]) {
                        case "NO_CHANGE":
                            t[n.a.behaviourParams.item.overlay.hoveringBehaviour] = "ALWAYS_VISIBLE";
                            break;
                        case "NEVER_SHOW":
                            t[n.a.behaviourParams.item.overlay.hoveringBehaviour] = "NEVER_VISIBLE"
                    }
                    return t
                }(f = function(e) {
                    var t = e;
                    return (t = m(t, "videoSpeed", n.a.behaviourParams.item.video.speed))[n.a.behaviourParams.item.video.speed] = Number(t[n.a.behaviourParams.item.video.speed]) >= 0 ? Number(t[n.a.behaviourParams.item.video.speed]) : void 0, t
                }(f = function(e) {
                    var t = e;
                    return void 0 !== (t = m(t, "videoSound", n.a.behaviourParams.item.video.volume))[n.a.behaviourParams.item.video.volume] && (t[n.a.behaviourParams.item.video.volume] = Number(t[n.a.behaviourParams.item.video.volume])), t
                }(f = function(e) {
                    var t, i = e;
                    return (i = m(i, "videoPlay", n.a.behaviourParams.item.video.playTrigger))[n.a.behaviourParams.item.video.playTrigger] = null === (t = i[n.a.behaviourParams.item.video.playTrigger]) || void 0 === t ? void 0 : t.toUpperCase(), i
                }(f = function(e) {
                    var t, i = e;
                    switch ((i = m(i, "itemClick", n.a.behaviourParams.item.clickAction))[n.a.behaviourParams.item.clickAction] = null === (t = i[n.a.behaviourParams.item.clickAction]) || void 0 === t ? void 0 : t.toUpperCase(), i[n.a.behaviourParams.item.clickAction]) {
                        case "FULLSCREEN":
                        case "EXPAND":
                            i[n.a.behaviourParams.item.clickAction] = "ACTION"
                    }
                    return i
                }(f = d(f, c))))))))))), h)).enableLeanGallery, delete f.fullscreen, delete f.magicLayoutSeed, f),
                S = Object(r.a)(Object(r.a)({}, Object(o.e)(b)), Object(o.e)(e));
            return delete S.oldRefactoredOptionInCore, S
        }
    }, function(e, t, i) {
        "use strict";
        var r = i(4),
            o = i(5),
            a = function() {
                function e() {
                    this._translations = Object.assign({}, Object(r.a)({}, o.a.translations))
                }
                return e.prototype.setTranslations = function(e) {
                    Object.assign(this._translations, Object(r.a)({}, e))
                }, Object.defineProperty(e.prototype, "translations", {get: function() {
                        return this._translations
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.getByKey = function(e) {
                    try {
                        var t = null;
                        return this.translations && (t = this.translations[e] || o.a.translations[e]), t || (t = e), o.a && (o.a.isClientDev && (t = e), o.a.unescape && (t = o.a.unescape(t))), t
                    } catch (t) {
                        return e
                    }
                }, e
            }();
        t.a = new a
    }, function(e, t, i) {
        "use strict";
        i.d(t, "a", (function() {
            return N
        }));
        var r = i(6),
            o = i(0),
            a = i(7),
            n = i(13),
            s = i(10),
            l = i(3),
            u = i(16),
            c = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.ALTERNATE, t.cubeType = "fill", t.cubeImages = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", 1)).titlePlacement = a.a.SHOW_ON_HOVER, t.scrollDirection = n.a.VERTICAL, t.gridStyle = u.a.SET_ITEMS_PER_ROW, (t = Object(l.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !0, t.groupSize = 3, t.collageDensity = .48, t.groupTypes = "1,2h,2v,3t,3b,3l,3r,3v,3h", t.gallerySize = 86, t.minItemSize = 50, t.chooseBestGroup = !0, (t = Object(l.a)(t, "layoutParams_repeatingGroupTypes", "1,2h,1,2h")).smartCrop = !1, t.scatter = 0, t.rotatingScatter = "", t.fixedColumns = 1, t.groupsPerStrip = 0, t.placeGroupsLtr = !1, t.rotatingCropRatios = "", t.slideshowLoop = !1, t
            },
            h = (c({}), function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.BRICKS, t.cubeType = "fill", t.cubeImages = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", 1)).titlePlacement = a.a.SHOW_ON_HOVER, t.scrollDirection = n.a.VERTICAL, (t = Object(l.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !0, t.groupSize = 3, t.collageDensity = .8, t.groupTypes = "1,2h,2v,3t,3b,3l,3r,3v,3h", t.slideshowLoop = !1, t.gridStyle = u.a.SET_ITEMS_PER_ROW, t.gallerySize = 400, t.minItemSize = 50, t.chooseBestGroup = !0, (t = Object(l.a)(t, "layoutParams_repeatingGroupTypes", "2h")).smartCrop = !1, t.scatter = 0, t.rotatingScatter = "", t.fixedColumns = 1, t.groupsPerStrip = 0, t.placeGroupsLtr = !1, t.rotatingCropRatios = "0.707,1.414,1.414,0.707", t
            }),
            p = (h({}), i(17)),
            d = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.COLLAGE, t.cubeImages = !1, t.titlePlacement = a.a.SHOW_ON_HOVER, t.groupSize = 3, t.hasThumbnails = !1, t.groupTypes = "1,2h,2v,3t,3b,3l,3r", t.slideshowLoop = !1, t.numberOfImagesPerCol = 1, t.gridStyle = u.a.FIT_TO_SCREEN, t.targetItemSize = 0, t.fixedColumns = 0, t.enableScroll = !0, t.cropOnlyFill = !1, t.slideAnimation = p.a.SCROLL, t
            },
            m = (d({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = d(t)).targetItemSize = Object(s.a)(t, Math.round(5 * t.gallerySize + 500)), t
            }),
            g = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.FULLSIZE, t.cubeImages = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", "100%/100%")).cubeType = "fill", t.titlePlacement = a.a.SHOW_ON_HOVER, t.scrollDirection = n.a.HORIZONTAL, t.galleryMargin = 0, t.isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t.numberOfImagesPerCol = 1, t.smartCrop = !1, t.galleryType = "Strips", t.hasThumbnails = !1, t.enableScroll = !0, t.scrollSnap = !0, t.cropOnlyFill = !1, t.scatter = 0, t.rotatingScatter = "", t.imageMargin = 0, t
            },
            y = (g({}), function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.COLUMN, t.cubeType = "fill", t.cubeImages = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", .35)).scrollDirection = n.a.HORIZONTAL, t.isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t.numberOfImagesPerCol = 1, t.smartCrop = !1, t.galleryType = "Strips", t.fixedColumns = 0, t.enableScroll = !0, t.cropOnlyFill = !1, t.slideAnimation = p.a.SCROLL, t
            }),
            f = (y({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = y(t)).targetItemSize = Object(s.a)(t), t
            }),
            b = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.GRID, t.cubeImages = !0, t.isVertical = !0, t.groupSize = 1, t.hasThumbnails = !1, t.groupTypes = "1", t.slideshowLoop = !1, t.smartCrop = !1, t.galleryType = "Columns", t.targetItemSize = 0, t.enableScroll = !0, t.cropOnlyFill = !1, t.minItemSize = 50, t.slideAnimation = p.a.SCROLL, t.collageDensity = 0, t
            },
            S = (b({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = b(t)).targetItemSize = Object(s.a)(t, Math.round(8.5 * t.gallerySize + 150)), t = Object(s.e)(t), t = Object(s.d)(t), t = Object(s.f)(t)
            }),
            v = new(function() {
                function e() {
                    this.features = {
                        fullscreenRedesign: {
                            title: "New fullscreen design",
                            releaseDate: Date.parse("2017-09-25T12:00:00.000Z")
                        },
                        spacingCalculation: {
                            title: "Improve spacing calculation",
                            releaseDate: Date.parse("2017-08-29T11:27:29.000Z")
                        },
                        fixedColumnsInMasonry: {
                            title: "Allow fixed number of columns in Masonry layout",
                            releaseDate: Date.parse("2018-05-24T18:00:00.000Z")
                        },
                        mobileSettings: {
                            title: "Separate mobile and desktop setting",
                            releaseDate: Date.parse("2018-12-18T12:00:50.054Z")
                        }
                    }, this.freezeDate = new Date, this.updateFeatures()
                }
                return Object.defineProperty(e.prototype, "freezeDate", {get: function() {
                        return this._dateCreated || new Date
                    },
                    set: function(e) {
                        "object" == typeof e && "function" == typeof e.getTime && (this._dateCreated = e, this.updateFeatures())
                    },
                    enumerable: !1,
                    configurable: !0
                }), e.prototype.updateFeatures = function() {
                    var e = this;
                    this.supports = Object.entries(this.features).reduce((function(t, i) {
                        var r, a = i[0],
                            n = i[1].releaseDate;
                        return Object(o.a)(Object(o.a)({}, t), ((r = {})[a] = e.freezeDate >= n, r))
                    }))
                }, e
            }()),
            _ = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.MAGIC, t.cubeImages = void 0, (t = Object(l.a)(t, "layoutParams_cropRatio", void 0)).isVertical = void 0, t.targetItemSize = void 0, t.collageAmount = void 0, t.collageDensity = void 0, t.groupTypes = void 0, t.oneRow = void 0, t.imageMargin = void 0, t.scatter = void 0, (t = Object(l.a)(t, "layoutParams_gallerySpacing", void 0)).chooseBestGroup = void 0, t.smartCrop = void 0, t.cubeType = void 0, t.hasThumbnails = void 0, t.enableScroll = void 0, t.cropOnlyFill = void 0, t.fixedColumns = void 0, t.enableInfiniteScroll = void 0, t.slideshowLoop = !1, t
            },
            O = (_({}), function(e) {
                var t = Object(o.a)({}, e),
                    i = t.magicLayoutSeed;
                !i > 0 && (i = 999999), i = Math.floor(i);
                var r = function(e, t, r) {
                        var o, a, n = function(e) {
                                e = String(e);
                                for (var t = 0, i = 0; i < e.length; i++) t += e.charCodeAt(i);
                                return t
                            }(r),
                            s = t - e + 1;
                        return o = i, a = n, Math.floor(1e7 * (o / a - Math.floor(o / a))) % s + e
                    },
                    a = function(e) {
                        return !!r(0, 1, e)
                    };
                return t.cubeImages = a("cubeImages"), (t = Object(l.a)(t, "layoutParams_cropRatio", r(1, 25, "cubeRatio") / 5)).isVertical = a("isVertical"), t.targetItemSize = r(300, 800, "gallerySize"), t.collageAmount = r(5, 10, "collageAmount") / 10, t.collageDensity = (v.supports.spacingCalculation ? r(1, 100, "collageDensity") : r(5, 10, "collageDensity")) / 100, t.groupTypes = ["1"].concat("2h,2v,3t,3b,3l,3r,3h,3v".split(",").filter((function(e, t) {
                    return a("groupTypes" + t)
                }))), t.oneRow = a("oneRow"), t.imageMargin = r(0, v.supports.spacingCalculation ? r(300, 800, "gallerySize") / 5 : 5, "imageMargin"), (t = Object(l.a)(t, "layoutParams_gallerySpacing", v.supports.spacingCalculation ? 0 : r(0, 5, "imageMargin"))).scatter = 0, t.rotatingScatter = "", t.chooseBestGroup = a("chooseBestGroup"), t.smartCrop = a("smartCrop"), t.cubeType = "fill", t.enableScroll = !0, t.cropOnlyFill = !1, t.fixedColumns = 0, t.enableInfiniteScroll = 1, t.oneRow ? (t.isVertical = !1, t.scrollDirection = n.a.HORIZONTAL) : t.scrollDirection = n.a.VERTICAL, t.galleryType = t.isVertical ? "Columns" : "Strips", t.groupSize = parseInt(t.groupTypes.slice(-1)[0]), t.groupTypes = t.groupTypes.join(","), t.minItemSize = t.targetItemSize / t.groupSize / 2, t
            }),
            I = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.MASONRY, t.cubeImages = !1, t.scrollDirection = n.a.VERTICAL, t.groupSize = 1, t.groupTypes = "1", t.slideshowLoop = !1, t.enableScroll = !0, t.cropOnlyFill = !1, t
            },
            P = (I({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = I(t)).targetItemSize = Object(s.a)(t, t.isVertical ? 8 * t.gallerySize + 200 : 5 * t.gallerySize + 200), v.supports.fixedColumnsInMasonry && (t = Object(s.e)(t)), t = Object(s.c)(t)
            }),
            w = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.MIX, t.cubeType = "fill", t.cubeImages = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", 1)).titlePlacement = a.a.SHOW_ON_HOVER, t.scrollDirection = n.a.VERTICAL, (t = Object(l.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !0, t.groupSize = 3, t.groupTypes = "1,2h,2v,3t,3b,3l,3r,3v,3h", t.collageDensity = .48, t.gridStyle = u.a.SET_ITEMS_PER_ROW, t.gallerySize = 86, t.minItemSize = 50, t.chooseBestGroup = !0, (t = Object(l.a)(t, "layoutParams_repeatingGroupTypes", "1,3l,1,3r")).smartCrop = !1, t.scatter = 0, t.rotatingScatter = "", t.fixedColumns = 1, t.groupsPerStrip = 0, t.placeGroupsLtr = !1, t.rotatingCropRatios = "", t
            },
            E = (w({}), function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.PANORAMA, t.cubeImages = !1, t.scrollDirection = n.a.VERTICAL, t.isVertical = !0, t.groupSize = 1, t.groupTypes = "1", t.gridStyle = u.a.SET_ITEMS_PER_ROW, t.galleryType = "Columns", t.fixedColumns = 1, t.enableScroll = !0, t.cropOnlyFill = !1, t.slideshowLoop = !1, t
            }),
            T = (E({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = E(t)).targetItemSize = Object(s.a)(t), t
            }),
            x = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.SLIDER, t.enableInfiniteScroll = !0, t.cubeImages = !0, t.scrollDirection = n.a.HORIZONTAL, t.isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t.numberOfImagesPerCol = 1, t.smartCrop = !1, t.galleryType = "Strips", t.hasThumbnails = !1, t.enableScroll = !0, t.scrollSnap = !0, t.cropOnlyFill = !0, t.slideAnimation = p.a.SCROLL, t
            },
            C = (x({}), i(24)),
            D = i(36),
            A = i(31),
            M = i(34),
            R = function(e) {
                e.imagePlacementAnimation = D.a.NO_EFFECT, e.overlayAnimation = M.a.NO_EFFECT, e.imageHoverAnimation = A.a.NO_EFFECT
            };
        var L = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.SLIDESHOW, t.enableInfiniteScroll = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", "100%/100%")).cubeImages = !0, t.hoveringBehaviour = C.a.NEVER_SHOW, t.scrollDirection = n.a.HORIZONTAL, (t = Object(l.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !1, t.groupSize = 1, t.titlePlacement = "SHOW_BELOW", t.groupTypes = "1", t.itemBorderWidth = 0, t.itemBorderRadius = 0, t.itemBorderColor = void 0, t.numberOfImagesPerCol = 1, R(t), t.smartCrop = !1, t.targetItemSize = 550, t.galleryType = "Strips", t.fixedColumns = 1, t.hasThumbnails = !1, t.enableScroll = !0, t.scrollSnap = !0, t.cropOnlyFill = !1, t.scatter = 0, t.rotatingScatter = "", t.imageMargin = 0, t
            },
            B = (L({}), function(e) {
                var t = Object(o.a)({}, e);
                return (t = L(t)).targetItemSize = Object(s.a)(t), t = Object(s.f)(t)
            }),
            j = function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.THUMBNAIL, t.enableInfiniteScroll = !0, (t = Object(l.a)(t, "layoutParams_cropRatio", "100%/100%")).cubeImages = !0, t.titlePlacement = a.a.SHOW_ON_HOVER, t.scrollDirection = n.a.HORIZONTAL, (t = Object(l.a)(t, "layoutParams_gallerySpacing", 0)).isVertical = !1, t.groupSize = 1, t.groupTypes = "1", t.numberOfImagesPerCol = 1, t.smartCrop = !1, t.galleryType = "Strips", t.hasThumbnails = !0, t.enableScroll = !0, t.scrollSnap = !0, t.cropOnlyFill = !1, t.scatter = 0, t.rotatingScatter = "", t.imageMargin = 0, t
            },
            k = (j({}), function(e) {
                var t = Object(o.a)({}, e);
                return t.galleryLayout = r.a.EMPTY, t
            }),
            N = (k({}), i(46), function(e) {
                var t = e.galleryType,
                    i = e.galleryType,
                    a = e.galleryLayout;
                if (void 0 !== i && void 0 === a) switch (t) {
                    case "1":
                        return m(e);
                    case "2":
                        return S(e);
                    case "3":
                    case "4":
                        return P(e);
                    case "5":
                        return T(e);
                    case "6":
                        return f(e);
                    case "7":
                    case "13":
                        return B(e);
                    case "0":
                    default:
                        return m(e)
                } else switch (e.galleryLayout) {
                    case r.a.MASONRY:
                        return P(e);
                    case r.a.GRID:
                        return S(e);
                    case r.a.THUMBNAIL:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = j(t)).targetItemSize = Object(s.a)(t), t = Object(s.f)(t)
                        }(e);
                    case r.a.SLIDER:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = x(t)).targetItemSize = Object(s.a)(t), t = Object(s.f)(t)
                        }(e);
                    case r.a.SLIDESHOW:
                        return B(e);
                    case r.a.PANORAMA:
                        return T(e);
                    case r.a.COLUMN:
                        return f(e);
                    case r.a.MAGIC:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return t = _(t), t = O(t)
                        }(e);
                    case r.a.FULLSIZE:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = g(t)).targetItemSize = Object(s.a)(t), t
                        }(e);
                    case r.a.BRICKS:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = h(t)).targetItemSize = Object(s.a)(t), t
                        }(e);
                    case r.a.MIX:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = w(t)).targetItemSize = Object(s.a)(t), t
                        }(e);
                    case r.a.ALTERNATE:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = c(t)).targetItemSize = Object(s.a)(t), t
                        }(e);
                    case r.a.EMPTY:
                        return function(e) {
                            var t = Object(o.a)({}, e);
                            return (t = k(t)).targetItemSize = Object(s.a)(t, Math.round(9 * t.gallerySize + 100)), t
                        }(e);
                    case r.a.JSON_FIXED:
                        return function(e) {
                            try {
                                var t = e.jsonStyleParams ? JSON.parse(e.jsonStyleParams) : {};
                                return Object(l.d)(e, Object(l.b)(t))
                            } catch (e) {
                                return {}
                            }
                        }(e);
                    case r.a.COLLAGE:
                    default:
                        return m(e)
                }
            })
    }, , , , function(e, t, i) {
        "use strict";
        e.exports = function(e) {
            return encodeURIComponent(e).replace(/[!'()*]/g, (function(e) {
                return "%" + e.charCodeAt(0).toString(16).toUpperCase()
            }))
        }
    }, function(e, t, i) {
        "use strict";
        var r = Object.getOwnPropertySymbols,
            o = Object.prototype.hasOwnProperty,
            a = Object.prototype.propertyIsEnumerable;

        function n(e) {
            if (null == e) throw new TypeError("Object.assign cannot be called with null or undefined");
            return Object(e)
        }
        e.exports = function() {
            try {
                if (!Object.assign) return !1;
                var e = new String("abc");
                if (e[5] = "de", "5" === Object.getOwnPropertyNames(e)[0]) return !1;
                for (var t = {}, i = 0; i < 10; i++) t["_" + String.fromCharCode(i)] = i;
                if ("0123456789" !== Object.getOwnPropertyNames(t).map((function(e) {
                        return t[e]
                    })).join("")) return !1;
                var r = {};
                return "abcdefghijklmnopqrst".split("").forEach((function(e) {
                    r[e] = e
                })), "abcdefghijklmnopqrst" === Object.keys(Object.assign({}, r)).join("")
            } catch (e) {
                return !1
            }
        }() ? Object.assign : function(e, t) {
            for (var i, s, l = n(e), u = 1; u < arguments.length; u++) {
                for (var c in i = Object(arguments[u])) o.call(i, c) && (l[c] = i[c]);
                if (r) {
                    s = r(i);
                    for (var h = 0; h < s.length; h++) a.call(i, s[h]) && (l[s[h]] = i[s[h]])
                }
            }
            return l
        }
    }, function(e, t) {
        var i;
        i = function() {
            return this
        }();
        try {
            i = i || new Function("return this")()
        } catch (e) {
            "object" == typeof window && (i = window)
        }
        e.exports = i
    }, , , , function(e, t, i) {
        "use strict";
        var r = i(0),
            o = i(8),
            a = i(19),
            n = function() {
                function e(e) {
                    var t = e.controllerConfig,
                        i = e.SSRWorkerLog;
                    this.SSRWorkerLog = i, this.compId = t.compId, this.wrapperUniqueId = this.compId || Math.floor(1e4 * Math.random()).toString(), this.wixCodeApi = t.wixCodeApi, this.warmupData = this.wixCodeApi.window.warmupData, this.SSRWorkerLog.push("creating warmupData wrapper for id: " + this.wrapperUniqueId), this.withWarmupData = this.withWarmupData.bind(this)
                }
                return e.prototype.isSSR = function() {
                    return "backend" === this.wixCodeApi.window.rendering.env
                }, e.prototype.withWarmupData = function(e, t) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        var i;
                        return Object(r.c)(this, (function(r) {
                            switch (r.label) {
                                case 0:
                                    return i = void 0, this.isSSR() ? [3, 2] : [4, this.getWarmupData(t)];
                                case 1:
                                    i = r.sent(), r.label = 2;
                                case 2:
                                    return i ? [3, 4] : [4, e()];
                                case 3:
                                    return i = r.sent(), this.isSSR() && this.setWarmupData(t, i), [3, 5];
                                case 4:
                                    this.SSRWorkerLog.push("got warmupData for " + t), r.label = 5;
                                case 5:
                                    return [2, i]
                            }
                        }))
                    }))
                }, e.prototype.setWarmupData = function(e, t) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        return Object(r.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return [4, o.a.verifyExperiments(this.scopedGlobalSdkApis)];
                                case 1:
                                    return i.sent(), this.isSSR() && !a.a.getExperimentBoolean("specs.pro-gallery.excludeFromWarmupData") && (this.SSRWorkerLog.push("setting warmupData for " + e), this.warmupData.set(this.wrapperUniqueId + "_" + e, t)), [2]
                            }
                        }))
                    }))
                }, e.prototype.getWarmupData = function(e) {
                    return Object(r.b)(this, void 0, void 0, (function() {
                        return Object(r.c)(this, (function(t) {
                            switch (t.label) {
                                case 0:
                                    return [4, o.a.verifyExperiments(this.scopedGlobalSdkApis)];
                                case 1:
                                    return t.sent(), this.isSSR() ? [2, null] : [2, this.warmupData.get(this.wrapperUniqueId + "_" + e)]
                            }
                        }))
                    }))
                }, e
            }();
        t.a = n
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = i(22),
            a = i(19),
            n = i(47),
            s = i(37),
            l = i(8),
            u = i(2),
            c = function() {
                function e(e) {
                    var t = e.context,
                        i = e.controllerConfig,
                        r = e.APP_DEFINITION_ID,
                        o = e.GALLERY_WIDGET_ID,
                        a = e.isArtStore,
                        n = void 0 !== a && a,
                        s = e.fetcher,
                        u = e.SSRWorkerLog,
                        c = void 0 === u ? [] : u,
                        h = e.withWarmupData;
                    this.debouncedSetHeightControlMode = l.c.debounce(this.setHeightControlMode.bind(this), 400), this.proGalleryWorkerId = "PGWorkerId-" + Date.now(), this.context = t.getContext(), this.pgStore = null, this.isArtStore = n, this.controllerConfig = i, this.wixCodeApi = i.wixCodeApi, this.sentryReporter = t.getSentry(), this.fetcher = s, this.SSRWorkerLog = c, this.withWarmupData = h || function(e) {
                        return e()
                    }, this.initPgStore(r, o), this.setWarmupDataIfNeeded(), this.sentryReport = this.sentryReport.bind(this), this.debouncedSetHeightControlMode = this.debouncedSetHeightControlMode.bind(this)
                }
                return e.prototype.setContext = function(e) {
                    this.context = e
                }, e.prototype.setSentryReporter = function(e) {
                    this.sentryReporter = e
                }, e.prototype.getPgStore = function() {
                    return this.pgStore
                }, e.prototype.getClickedIdx = function() {
                    return this.getPgStore().clickedIdx
                }, e.prototype.getTotalItemsCount = function() {
                    return this.getPgStore().getTotalItemsCount()
                }, e.prototype.getbaseUrls = function() {
                    return this.getContext().baseUrls
                }, e.prototype.getWarmupData = function() {
                    return {
                        items: this.getItems(),
                        totalItemsCount: this.getPgStore().totalItemsCount,
                        experiments: a.a.experiments
                    }
                }, e.prototype.getDirectFullscreenItem = function() {
                    return this.getPgStore().getDirectFullscreenItem()
                }, e.prototype.getDirectFullscreenMockBlueprint = function() {
                    return this.getPgStore().getDirectFullscreenMockBlueprint()
                }, e.prototype.getTestType = function() {
                    return this.getPgStore().getTestType()
                }, e.prototype.setDirectFullscreenPropCallback = function() {
                    (0, this.getControllerConfig().setProps)({
                        directFullscreenItem: this.getDirectFullscreenItem()
                    })
                }, e.prototype.setDirectFullscreenMockPropCallback = function() {
                    (0, this.getControllerConfig().setProps)({
                        directFullscreenMockBlueprint: this.getDirectFullscreenMockBlueprint()
                    })
                }, e.prototype.setMetaTagsInSSRIfNeeded = function() {
                    var e = this.getDirectFullscreenItem();
                    if (this.isSSR() && e && e.itemId) {
                        var t = this.getPgStore(),
                            i = this.wixCodeApi,
                            r = this.getStaticMediaUrls(),
                            a = o.a.getCurrentDirectFullscreenUrl(i),
                            n = o.a.getPageUrl(i);
                        t.setMetaTagsInSSR(e, n, a, i, r)
                    }
                }, e.prototype.isInSEO = function() {
                    var e = this.wixCodeApi;
                    return "function" == typeof e.seo.isInSEO && !!e.seo.isInSEO()
                }, e.prototype.getQueryParams = function() {
                    return this.wixCodeApi.location.query
                }, e.prototype.getLocaleFromContext = function() {
                    var t = this.context.scopedGlobalSdkApis;
                    return e.getLocaleFromScopedGlobalSdkApis(t)
                }, e.prototype.getCommonGalleryProps = function(e) {
                    var t = this,
                        i = this.getPgStore(),
                        r = this.wixCodeApi,
                        s = o.a.getSiteUrl(r),
                        u = e ? "/fullscreen-store-page" : "/fullscreen-page",
                        c = e ? this.context.scopedGlobalSdkApis.location.baseUrl : l.a.getBaseUrl(r, l.a.parseViewMode(r.window.viewMode));
                    return {
                        clientSetProps: !this.isSSR(),
                        propFromSetPropsIndicator: !0,
                        onNavigate: function(e) {
                            return r.location.to(e)
                        },
                        scrollTo: r.window.scrollTo,
                        instance: this.getControllerConfig().appParams.instance,
                        appDefinitionId: this.getControllerConfig().appParams.appDefinitionId,
                        visitorId: this.getControllerConfig().platformAPIs.bi.visitorId,
                        viewerName: this.getControllerConfig().platformAPIs.bi.viewerName,
                        queryParams: r.location.query,
                        viewMode: r.window.viewMode,
                        baseUrl: c,
                        siteUrl: s,
                        pageUrl: o.a.getPageUrl(r),
                        fullscreenUrl: s + u,
                        instanceId: this.getInstanceId(),
                        totalItemsCount: i.totalItemsCount,
                        gallerySettings: this.fetcher.settings,
                        dateCreated: this.fetcher.dateCreated,
                        galleryId: this.fetcher.galleryId,
                        translations: n.a.translations,
                        experiments: a.a.experiments,
                        setHeight: this.getSetHeightFunc(),
                        getMoreItems: function(e) {
                            return t.getMoreItems(e)
                        },
                        onDimensionsReady: function(e) {
                            return t.handleMeasuredDimensions(e)
                        },
                        proGalleryWorkerId: this.proGalleryWorkerId,
                        BOLT_SUPPORTING_FUNCTION_onNewHostDimensions: function(e) {
                            return t.BOLT_SUPPORTING_FUNCTION_handleNewHostDimensions(e)
                        },
                        onItemDimensionsMeasure: function(e) {
                            return t.handleNewItemDimensions(e)
                        },
                        appLoadStartedReported: i.isAppLoadStartReported,
                        tryToReportAppLoaded: i.tryToReportAppLoaded,
                        sentryReport: this.sentryReport,
                        locale: this.getLocaleFromContext(),
                        galleryItemsSource: this.getItemsSource(),
                        staticMediaUrls: this.getStaticMediaUrls(),
                        requestedHeight: i.requestedHeight,
                        requestedWidth: i.requestedWidth,
                        handleLoadMoreClicked: i.handleLoadMoreClicked
                    }
                }, e.prototype.getTryToReportAppLoaded = function() {
                    return this.getPgStore().tryToReportAppLoaded
                }, e.prototype.loadInitialBlueprint = function() {
                    this.getPgStore().loadInitialBlueprint(this.isSSR())
                }, e.prototype.getWixCodeBlueprintReadyPromise = function() {
                    return this.getPgStore().wixCodeBlueprintDeferred.promise
                }, e.prototype.getBlueprintReadyPromise = function() {
                    return this.getPgStore().blueprintReadyDeferred.promise
                }, e.prototype.getDirectFullscreenReadyPromise = function() {
                    return this.getPgStore().directFullscreenReadyDeferred.promise
                }, e.prototype.loadDirectFullscreen = function() {
                    var e = this.getControllerConfig().compId,
                        t = this.getPgStore();
                    s.a.loadDirectFullscreen(e, t.galleryId, this.getQueryParams(), t)
                }, e.prototype.getViewPortPromise = function() {
                    var e = this.getControllerConfig(),
                        t = e.compId,
                        i = e.wixCodeApi;
                    return this.isSSR() && i.window.getComponentViewportState(t) || Promise.resolve({ in : !0
                    })
                }, e.prototype.initPgStore = function(e, t) {
                    var i = this.getControllerConfig(),
                        r = i.appParams,
                        a = r.instanceId,
                        n = r.instance,
                        s = i.config,
                        l = s.externalId,
                        u = s.style,
                        c = s.dimensions,
                        h = i.compId,
                        p = i.wixCodeApi,
                        d = i.avoidGettingItemsFromPGServer,
                        m = this.getContext(),
                        g = m.msid,
                        y = m.platformServices,
                        f = m.scopedGlobalSdkApis;
                    this.pgStore = new o.a({
                        context: {
                            externalId: l,
                            compId: h,
                            instanceId: a,
                            instance: n,
                            msid: g,
                            styles: u.styleParams,
                            dimensions: c,
                            isSSR: this.isSSR()
                        },
                        wixCodeApi: p,
                        platformServices: y,
                        scopedGlobalSdkApis: f,
                        APP_DEFINITION_ID: e,
                        GALLERY_WIDGET_ID: t,
                        isArtStore: this.isArtStore,
                        setBlueprintCallback: this.setBlueprint.bind(this),
                        setKnownDimensionsCallback: this.setKnownDimensions.bind(this),
                        debouncedSetHeightControlMode: this.debouncedSetHeightControlMode.bind(this),
                        avoidGettingItemsFromPGServer: d,
                        setItemsLoveDataCallback: this.setItemsLoveData.bind(this),
                        sentryReport: this.sentryReport.bind(this),
                        fetcher: this.fetcher,
                        SSRWorkerLog: this.SSRWorkerLog,
                        withWarmupData: this.withWarmupData,
                        setDirectFullscreenPropCallback: this.setDirectFullscreenPropCallback.bind(this),
                        setDirectFullscreenMockPropCallback: this.setDirectFullscreenMockPropCallback.bind(this)
                    })
                }, e.prototype.getContext = function() {
                    return this.context
                }, e.prototype.tryToReportAppLoaded = function() {
                    this.getPgStore().tryToReportAppLoaded()
                }, e.prototype.getSetHeightFunc = function() {
                    var e = this,
                        t = this.getControllerConfig().setProps;
                    return function(i) {
                        e.getPgStore().setHeightByLayoutchanges(i), t({
                            dimensions: {
                                height: i
                            }
                        }), e.debouncedSetHeightControlMode()
                    }
                }, e.prototype.setHeightControlMode = function() {
                    var e = this.getPgStore();
                    e.viewMode !== u.a.viewMode.EDIT && e.viewMode !== u.a.viewMode.PREVIEW || (0, this.getControllerConfig().setProps)({
                        fitToContentHeight: e.isInfiniteScroll || e.isFixedRatioHorizontalGallery
                    })
                }, e.prototype.getSetManualDimensionsFunc = function() {
                    var e = this.getControllerConfig().setProps;
                    return function(t) {
                        e({
                            dimensions: t
                        })
                    }
                }, e.prototype.getSetMetaTagsFunc = function() {
                    var e = this;
                    return function(t) {
                        e.getPgStore().setMetaTags(t, e.wixCodeApi)
                    }
                }, e.prototype.getOnLinkNavigationFunc = function() {
                    var e = this;
                    return function(t) {
                        return e.getPgStore().navigateToLink(t)
                    }
                }, e.prototype.getOnItemClickedFunc = function(e) {
                    return function(t, i) {
                        e && e.onItemClicked(t, i)
                    }
                }, e.prototype.handleMeasuredDimensions = function(e) {
                    this.getPgStore().debouncedHandleMeasuredDimensions(e)
                }, e.prototype.BOLT_SUPPORTING_FUNCTION_handleNewHostDimensions = function(e) {
                    this.getPgStore().handleNewUserConfigDimensions(e)
                }, e.prototype.updateUserConfig = function(e) {
                    this.getPgStore().debouncedHandleNewUserConfig(e)
                }, e.prototype.handleNewItemDimensions = function(e) {
                    this.getPgStore().handleNewItemDimensions(e)
                }, e.prototype.getMoreItems = function(e) {
                    this.getPgStore().getMoreItems(e)
                }, e.prototype.getItemsSource = function() {
                    var e = this.getPgStore();
                    return e.itemsSrc ? e.itemsSrc : "server"
                }, e.prototype.getStaticMediaUrls = function() {
                    if ("bolt" !== this.getControllerConfig().platformAPIs.bi.viewerName) try {
                        return this.getControllerConfig().platformAPIs.topology.media
                    } catch (e) {
                        console.error("Could not get staticMediaUrls", e)
                    }
                }, e.prototype.getBlueprint = function() {
                    return this.getPgStore().getBlueprint()
                }, e.prototype.setBlueprint = function() {
                    var e = this.getPgStore(),
                        t = this.getControllerConfig().setProps,
                        i = e.getBlueprint();
                    t(Object(r.a)(Object(r.a)({}, i), {
                        fullscreenOptions: e.calculatedFullscreenStyles,
                        infoElementsOptions: e.calculatedInfoElementStyles,
                        totalItemsCount: e.getTotalItemsCount(),
                        galleryItemsSource: this.getItemsSource(),
                        SSRWorkerLog: this.getSSRWorkerLog()
                    }))
                }, e.prototype.setKnownDimensions = function() {
                    try {
                        var e = this.getPgStore();
                        if (e)(0, this.getControllerConfig().setProps)({
                            requestedHeight: e.requestedHeight,
                            requestedWidth: e.requestedWidth
                        })
                    } catch (e) {
                        console.warn("couldnt set known dimensions", e)
                    }
                }, e.prototype.setItemsLoveData = function(e) {
                    (0, this.getControllerConfig().setProps)({
                        itemsLoveData: e
                    })
                }, e.prototype.getControllerConfig = function() {
                    return this.controllerConfig
                }, e.prototype.setWarmupDataIfNeeded = function() {
                    var e = this.getControllerConfig().warmupData;
                    if (e) {
                        var t = this.getPgStore();
                        t.prepareAndSetItems(e.items), t.totalItemsCount = e.totalItemsCount, a.a.setExperiments(e.experiments)
                    }
                }, e.prototype.handleNewStyleParams = function(e) {
                    this.getPgStore().handleManualStyleParams(e)
                }, e.prototype.setClickedIdx = function(e) {
                    (0, this.getControllerConfig().setProps)({
                        clickedIdx: e
                    })
                }, e.prototype.isValidWidgetId = function(e) {
                    return this.WIDGET_ID_ARRAY.includes(e)
                }, e.prototype.sentryReport = function(e) {
                    this.sentryReporter.report(e)
                }, e.prototype.getItems = function() {
                    return this.getPgStore().getItems()
                }, e.prototype.getSettings = function() {
                    return this.fetcher.settings
                }, e.prototype.getWatermark = function() {
                    var e = this.getSettings();
                    if (e) return "object" == typeof e ? e.watermark : JSON.parse(e).watermark
                }, e.prototype.getInstanceId = function() {
                    return this.getControllerConfig().appParams.instanceId
                }, e.prototype.getSSRWorkerLog = function() {
                    return this.getPgStore().getSSRWorkerLog()
                }, e.getLocaleFromScopedGlobalSdkApis = function(e) {
                    return e && e.site && e.site.language ? e.site.language : "en"
                }, e.setTranslationsAndExperiments = function(t, i, r, a) {
                    try {
                        var s = e.getLocaleFromScopedGlobalSdkApis(t),
                            u = a.baseUrls.santaWrapperBaseUrl + "assets/locale/pro-gallery/messages_" + s + ".json",
                            c = o.a.getTranslations(u);
                        l.a.getExperimentsAndInitWrapper()(t, i && i.report, r), c.then((function(e) {
                            return n.a.setTranslations(e)
                        })).catch((function(e) {
                            i && i.report && i.report(e), console.error("Waiting for translationsPromise failed", e)
                        }))
                    } catch (e) {
                        i && i.report && i.report(e), console.error("Getting page init data failed", e)
                    }
                }, e.getInitAppForPageFunc = function(t) {
                    return function(i, o, a, n) {
                        var s;
                        t.setContext(Object(r.a)(Object(r.a)({}, i), {
                            platformServices: n,
                            scopedGlobalSdkApis: a,
                            platformUtilitiesApi: o
                        })), t.initSentry(i, a, n), e.setTranslationsAndExperiments(a, t.getSentry(), null === (s = t.context) || void 0 === s ? void 0 : s.instance, i)
                    }
                }, e.prototype.isSSR = function() {
                    return "backend" === this.wixCodeApi.window.rendering.env
                }, e.getCreateControllers = function(e, t) {
                    return function(i) {
                        try {
                            var o = i.map((function(e) {
                                return {
                                    type: e.type,
                                    compId: e.compId,
                                    setProps: e.setProps
                                }
                            }));
                            return i.map((function(t) {
                                return Promise.resolve(e(Object(r.a)(Object(r.a)({}, t), {
                                    widgets: o
                                })))
                            }))
                        } catch (e) {
                            t && t.report && t.report(e), console.error("Failed to get CreateControllers", e)
                        }
                    }
                }, e
            }();
        t.a = c
    }, , , function(e, t, i) {
        "use strict";
        i.r(t), i.d(t, "initAppForPage", (function() {
            return W
        })), i.d(t, "createControllers", (function() {
            return U
        })), i.d(t, "exports", (function() {
            return F
        }));
        var r = i(14),
            o = i(8);

        function a(e, t) {
            var i = Object.keys(e);
            if (Object.getOwnPropertySymbols) {
                var r = Object.getOwnPropertySymbols(e);
                t && (r = r.filter((function(t) {
                    return Object.getOwnPropertyDescriptor(e, t).enumerable
                }))), i.push.apply(i, r)
            }
            return i
        }

        function n(e) {
            for (var t = 1; t < arguments.length; t++) {
                var i = null != arguments[t] ? arguments[t] : {};
                t % 2 ? a(Object(i), !0).forEach((function(t) {
                    s(e, t, i[t])
                })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : a(Object(i)).forEach((function(t) {
                    Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(i, t))
                }))
            }
            return e
        }

        function s(e, t, i) {
            return t in e ? Object.defineProperty(e, t, {
                value: i,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = i, e
        }
        var l = function(e) {
                var t = e.lastIndexOf("/");
                return e.substring(t + 1)
            },
            u = function(e) {
                var t = e.split("/");
                return t && t.length > 0 ? t.pop() : ""
            },
            c = ["video.wixstatic.com/video/", "static.wixstatic.com/media/video/"],
            h = function(e, t) {
                return e.filter((function(e) {
                    return !(t || "default" in e && e.default) || !(!t || !("default" in e) && !e.default)
                })).map((function(e) {
                    return {
                        height: e.height,
                        width: e.width,
                        url: u(e.url)
                    }
                }))
            },
            p = function(e, t) {
                var i = "mediaUrl" in t && l(t.mediaUrl);
                e = n(n(n(n({}, e), i && {
                    mediaUrl: l(t.mediaUrl)
                }), "token" in t && {
                    token: t.token
                }), "imageToken" in t && {
                    imageToken: t.imageToken
                });
                var r = t.photoMetadata;
                return e.metaData = n(n(n(n(n(n(n(n(n({}, e.metaData), {}, {
                    sourceName: "private"
                }, "tags" in t && {
                    tags: t.tags
                }), "sourceName" in r && {
                    isDemo: "private" === r.sourceName
                }), "height" in r && {
                    height: r.height
                }), "width" in r && {
                    width: r.width
                }), "focalPoint" in r && r.focalPoint && {
                    focalPoint: [r.focalPoint.x, r.focalPoint.y]
                }), "name" in t && {
                    fileName: t.name
                }), i && {
                    name: l(t.mediaUrl)
                }), function(e) {
                    return n({}, ("quality" in e || "unsharpMasking" in e) && {
                        sharpParams: {
                            L: n(n({}, "quality" in e && {
                                overrideQuality: !0,
                                quality: e.quality
                            }), "unsharpMasking" in e && {
                                overrideUsm: !0,
                                usm: n(n(n({}, "amount" in e.unsharpMasking && {
                                    usm_a: e.unsharpMasking.amount
                                }), "radius" in e.unsharpMasking && {
                                    usm_r: e.unsharpMasking.radius
                                }), "threshold" in e.unsharpMasking && {
                                    usm_t: e.unsharpMasking.threshold
                                })
                            })
                        }
                    })
                }(r)), e
            },
            d = function(e) {
                try {
                    return e.map((function(e) {
                        var t, i, r = n(n(n(n({}, "id" in e && {
                            itemId: e.id
                        }), "secure" in e && {
                            isSecure: e.secure
                        }), "orderIndex" in e && {
                            orderIndex: e.orderIndex
                        }), {}, {
                            metaData: n(n(n(n({}, "description" in e && {
                                description: e.description
                            }), "title" in e && {
                                title: e.title
                            }), {}, {
                                link: {
                                    type: "none",
                                    target: "_blank"
                                }
                            }, "link" in e && {
                                link: (t = e.link, i = [{
                                    serverLinkField: "phone",
                                    type: "PhoneLink"
                                }, {
                                    serverLinkField: "email",
                                    type: "EmailLink"
                                }, {
                                    serverLinkField: "document",
                                    type: "DocumentLink"
                                }, {
                                    serverLinkField: "page",
                                    type: "PageLink"
                                }, {
                                    serverLinkField: "external",
                                    type: "ExternalLink"
                                }, {
                                    serverLinkField: "anchor",
                                    type: "AnchorLink"
                                }, {
                                    serverLinkField: "dynamicPage",
                                    type: "DynamicPageLink"
                                }].find((function(e) {
                                    var i = e.serverLinkField;
                                    return t.wixLinkData && t.wixLinkData["" + i]
                                })), n({
                                    target: i && (null == t ? void 0 : t.wixLinkData["" + i.serverLinkField].target) || t.target,
                                    type: "wix",
                                    data: n(n({}, i && (null == t ? void 0 : t.wixLinkData["" + i.serverLinkField]) || n({}, t)), {}, {
                                        type: (null == i ? void 0 : i.type) || t.type
                                    })
                                }, "text" in t && {
                                    text: t.text
                                }))
                            }), "alt" in e && {
                                alt: e.alt
                            })
                        });
                        return "Video" === e.dataType ? function(e, t) {
                            var i, r, o, a = t.videoMetadata,
                                s = "source" in a && "Undefined" !== a.source;
                            return (e = n(n(n({}, e), s && "posters" in a && a.posters.length > 0 && {
                                mediaUrl: u(a.posters[0].url)
                            }), !s && "mediaUrl" in t && {
                                mediaUrl: (i = t.mediaUrl, r = c.find((function(e) {
                                    return i.includes(e)
                                })), function(e, t) {
                                    var i = e.split(t);
                                    if (i && 2 === i.length) {
                                        var r = i.pop().split("/");
                                        if (r.length > 0) return r[0]
                                    }
                                    return ""
                                }(i, r))
                            })).metaData = n(n(n(n(n(n(n(n(n(n(n(n(n(n(n({}, e.metaData), {}, {
                                type: "video"
                            }, "posters" in a && {
                                customPoster: h(a.posters, !0).length > 0 ? h(a.posters, !0)[0] : ""
                            }), "source" in a && {
                                isExternal: s
                            }), "height" in a && {
                                height: a.height
                            }), "width" in a && {
                                width: a.width
                            }), "name" in t && {
                                name: t.name
                            }), "posters" in a && {
                                posters: h(a.posters, !1)
                            }), "sourceName" in a && {
                                isDemo: "private" === a.sourceName
                            }), !s && "resolutions" in a && {
                                qualities: (o = a.resolutions, o.map((function(e) {
                                    return {
                                        formats: [Object.keys(e.urls)[0]],
                                        height: e.height,
                                        quality: e.videoMode || e.height + "p",
                                        width: e.width
                                    }
                                })))
                            }), s && {
                                qualities: []
                            }), "duration" in a && {
                                duration: Number(a.duration)
                            }), s && {
                                source: a.source.toLowerCase()
                            }), s && {
                                videoUrl: t.mediaUrl
                            }), s && {
                                videoId: a.externalId
                            }), "posters" in a && "focalPoint" in a.posters[0] && {
                                focalPoint: [a.posters[0].focalPoint.x, a.posters[0].focalPoint.y]
                            }), e
                        }(r, e) : "Photo" === e.dataType ? p(r, e) : "Text" === e.dataType ? function(e, t) {
                            var i = t.textMetadata,
                                r = "style" in i;
                            return (e = n(n({}, e), {}, {
                                mediaUrl: ""
                            })).metaData = n(n(n(n(n(n(n(n(n({}, e.metaData), {}, {
                                type: "text"
                            }, "editorHtml" in i && {
                                editorHtml: i.editorHtml
                            }), "html" in i && {
                                html: i.html
                            }), "name" in t && {
                                name: t.name
                            }), "fontPickerStyleParamName" in i && {
                                fontPickerStyleParamName: i.fontPickerStyleParamName
                            }), r && "height" in i.style && {
                                height: i.style.height
                            }), r && "width" in i.style && {
                                width: i.style.width
                            }), r && {
                                textStyle: i.style
                            }), "editorFontId" in i && {
                                fontPickerStyleParamName: i.editorFontId
                            }), e
                        }(r, e) : {}
                    }))
                } catch (t) {
                    return console.error("Wrong format for gallery items", e, t), []
                }
            },
            m = i(4),
            g = i(5),
            y = i(11),
            f = function() {
                function e(e, t, i, r) {
                    void 0 === e && (e = void 0), void 0 === t && (t = void 0), void 0 === i && (i = void 0), void 0 === r && (r = void 0), this.compId = e, this.instance = t, this.getCompId = this.getCompId.bind(this), this.getInstance = this.getInstance.bind(this), this.viewMode = i, this.baseUrl = r || "", this.fetchRetries = 0, this.numberOfAllowedRetries = 2
                }
                return e.prototype.getCompId = function() {
                    return this.compId ? this.compId : g.a.Wix.Utils.getOrigCompId() ? g.a.Wix.Utils.getOrigCompId() : g.a.Wix.Utils.getCompId()
                }, e.prototype.isLiveSite = function() {
                    return this.viewMode && "site" === this.viewMode.toLowerCase()
                }, e.prototype.isPreview = function() {
                    return this.viewMode && "preview" === this.viewMode.toLowerCase()
                }, e.prototype.getInstance = function() {
                    return this.instance ? this.instance : g.a.instance
                }, e.prototype.fetchAppSettings = function(e, t) {
                    return Object(m.b)(this, void 0, void 0, (function() {
                        return Object(m.c)(this, (function(i) {
                            switch (i.label) {
                                case 0:
                                    return [4, fetch(this.baseUrl + "/_api/app-settings-service/v1/settings/components/" + this.getCompId() + "?state=" + e + "&host=" + t, {
                                        method: "GET",
                                        headers: {
                                            Authorization: this.getInstance(),
                                            Accept: "application/json, text/plain, */*"
                                        }
                                    })];
                                case 1:
                                    return [2, i.sent()]
                            }
                        }))
                    }))
                }, e.prototype.processAppSettingsResponse = function(e) {
                    return Object(m.b)(this, void 0, void 0, (function() {
                        return Object(m.c)(this, (function(t) {
                            switch (t.label) {
                                case 0:
                                    return e.settings.originGallerySettings ? (e.settings = Object(m.a)(Object(m.a)({}, e.settings.originGallerySettings), e.settings), e.settings.originGallerySettings = null, this.isLiveSite() || this.isPreview() ? [3, 2] : [4, this.setMultiple(e.settings, y.a.dataSavedState.PUBLISHED)]) : [3, 2];
                                case 1:
                                    t.sent(), t.label = 2;
                                case 2:
                                    return [2]
                            }
                        }))
                    }))
                }, e.prototype.get = function(e, t) {
                    return Object(m.b)(this, void 0, void 0, (function() {
                        var i, r;
                        return Object(m.c)(this, (function(o) {
                            switch (o.label) {
                                case 0:
                                    return "VIEWER", [4, this.fetchAppSettings(e, "VIEWER")];
                                case 1:
                                    return 503 === (i = o.sent()).status && this.fetchRetries < this.numberOfAllowedRetries ? (this.fetchRetries++, [4, new Promise((function(e) {
                                        setTimeout(e, 900 * Math.random() + 100)
                                    }))]) : [3, 4];
                                case 2:
                                    return o.sent(), [4, this.get(e, t)];
                                case 3:
                                    return [2, o.sent()];
                                case 4:
                                    return 200 !== i.status ? [3, 7] : [4, i.json()];
                                case 5:
                                    return (r = o.sent()) && r.settings ? [4, this.processAppSettingsResponse(r)] : [3, 7];
                                case 6:
                                    return o.sent(), t ? [2, r.settings[t]] : [2, r.settings];
                                case 7:
                                    return [2, void 0]
                            }
                        }))
                    }))
                }, e.prototype.setMultiple = function(e, t) {
                    return void 0 === t && (t = y.a.dataSavedState.SAVED), Object(m.b)(this, void 0, void 0, (function() {
                        var i, r;
                        return Object(m.c)(this, (function(o) {
                            switch (o.label) {
                                case 0:
                                    return e.galleryId, i = Object(m.d)(e, ["galleryId"]), "VIEWER", r = {
                                        settings: i || {},
                                        host: "VIEWER",
                                        state: t
                                    }, [4, fetch(this.baseUrl + "/_api/app-settings-service/v1/settings/components/" + this.getCompId(), {
                                        method: "PATCH",
                                        headers: {
                                            "Content-Type": "application/json",
                                            Authorization: this.getInstance()
                                        },
                                        body: JSON.stringify(r)
                                    })];
                                case 1:
                                    return o.sent(), [2]
                            }
                        }))
                    }))
                }, e.prototype.set = function(e, t) {
                    var i;
                    this.setMultiple(((i = {})[e] = t, i))
                }, e
            }(),
            b = i(19),
            S = i(2);

        function v() {
            v = function() {
                return e
            };
            var e = {},
                t = Object.prototype,
                i = t.hasOwnProperty,
                r = "function" == typeof Symbol ? Symbol : {},
                o = r.iterator || "@@iterator",
                a = r.asyncIterator || "@@asyncIterator",
                n = r.toStringTag || "@@toStringTag";

            function s(e, t, i) {
                return Object.defineProperty(e, t, {
                    value: i,
                    enumerable: !0,
                    configurable: !0,
                    writable: !0
                }), e[t]
            }
            try {
                s({}, "")
            } catch (e) {
                s = function(e, t, i) {
                    return e[t] = i
                }
            }

            function l(e, t, i, r) {
                var o = t && t.prototype instanceof h ? t : h,
                    a = Object.create(o.prototype),
                    n = new P(r || []);
                return a._invoke = function(e, t, i) {
                    var r = "suspendedStart";
                    return function(o, a) {
                        if ("executing" === r) throw new Error("Generator is already running");
                        if ("completed" === r) {
                            if ("throw" === o) throw a;
                            return E()
                        }
                        for (i.method = o, i.arg = a;;) {
                            var n = i.delegate;
                            if (n) {
                                var s = _(n, i);
                                if (s) {
                                    if (s === c) continue;
                                    return s
                                }
                            }
                            if ("next" === i.method) i.sent = i._sent = i.arg;
                            else if ("throw" === i.method) {
                                if ("suspendedStart" === r) throw r = "completed", i.arg;
                                i.dispatchException(i.arg)
                            } else "return" === i.method && i.abrupt("return", i.arg);
                            r = "executing";
                            var l = u(e, t, i);
                            if ("normal" === l.type) {
                                if (r = i.done ? "completed" : "suspendedYield", l.arg === c) continue;
                                return {
                                    value: l.arg,
                                    done: i.done
                                }
                            }
                            "throw" === l.type && (r = "completed", i.method = "throw", i.arg = l.arg)
                        }
                    }
                }(e, i, n), a
            }

            function u(e, t, i) {
                try {
                    return {
                        type: "normal",
                        arg: e.call(t, i)
                    }
                } catch (e) {
                    return {
                        type: "throw",
                        arg: e
                    }
                }
            }
            e.wrap = l;
            var c = {};

            function h() {}

            function p() {}

            function d() {}
            var m = {};
            s(m, o, (function() {
                return this
            }));
            var g = Object.getPrototypeOf,
                y = g && g(g(w([])));
            y && y !== t && i.call(y, o) && (m = y);
            var f = d.prototype = h.prototype = Object.create(m);

            function b(e) {
                ["next", "throw", "return"].forEach((function(t) {
                    s(e, t, (function(e) {
                        return this._invoke(t, e)
                    }))
                }))
            }

            function S(e, t) {
                var r;
                this._invoke = function(o, a) {
                    function n() {
                        return new t((function(r, n) {
                            ! function r(o, a, n, s) {
                                var l = u(e[o], e, a);
                                if ("throw" !== l.type) {
                                    var c = l.arg,
                                        h = c.value;
                                    return h && "object" == typeof h && i.call(h, "__await") ? t.resolve(h.__await).then((function(e) {
                                        r("next", e, n, s)
                                    }), (function(e) {
                                        r("throw", e, n, s)
                                    })) : t.resolve(h).then((function(e) {
                                        c.value = e, n(c)
                                    }), (function(e) {
                                        return r("throw", e, n, s)
                                    }))
                                }
                                s(l.arg)
                            }(o, a, r, n)
                        }))
                    }
                    return r = r ? r.then(n, n) : n()
                }
            }

            function _(e, t) {
                var i = e.iterator[t.method];
                if (void 0 === i) {
                    if (t.delegate = null, "throw" === t.method) {
                        if (e.iterator.return && (t.method = "return", t.arg = void 0, _(e, t), "throw" === t.method)) return c;
                        t.method = "throw", t.arg = new TypeError("The iterator does not provide a 'throw' method")
                    }
                    return c
                }
                var r = u(i, e.iterator, t.arg);
                if ("throw" === r.type) return t.method = "throw", t.arg = r.arg, t.delegate = null, c;
                var o = r.arg;
                return o ? o.done ? (t[e.resultName] = o.value, t.next = e.nextLoc, "return" !== t.method && (t.method = "next", t.arg = void 0), t.delegate = null, c) : o : (t.method = "throw", t.arg = new TypeError("iterator result is not an object"), t.delegate = null, c)
            }

            function O(e) {
                var t = {
                    tryLoc: e[0]
                };
                1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t)
            }

            function I(e) {
                var t = e.completion || {};
                t.type = "normal", delete t.arg, e.completion = t
            }

            function P(e) {
                this.tryEntries = [{
                    tryLoc: "root"
                }], e.forEach(O, this), this.reset(!0)
            }

            function w(e) {
                if (e) {
                    var t = e[o];
                    if (t) return t.call(e);
                    if ("function" == typeof e.next) return e;
                    if (!isNaN(e.length)) {
                        var r = -1,
                            a = function t() {
                                for (; ++r < e.length;)
                                    if (i.call(e, r)) return t.value = e[r], t.done = !1, t;
                                return t.value = void 0, t.done = !0, t
                            };
                        return a.next = a
                    }
                }
                return {
                    next: E
                }
            }

            function E() {
                return {
                    value: void 0,
                    done: !0
                }
            }
            return p.prototype = d, s(f, "constructor", d), s(d, "constructor", p), p.displayName = s(d, n, "GeneratorFunction"), e.isGeneratorFunction = function(e) {
                var t = "function" == typeof e && e.constructor;
                return !!t && (t === p || "GeneratorFunction" === (t.displayName || t.name))
            }, e.mark = function(e) {
                return Object.setPrototypeOf ? Object.setPrototypeOf(e, d) : (e.__proto__ = d, s(e, n, "GeneratorFunction")), e.prototype = Object.create(f), e
            }, e.awrap = function(e) {
                return {
                    __await: e
                }
            }, b(S.prototype), s(S.prototype, a, (function() {
                return this
            })), e.AsyncIterator = S, e.async = function(t, i, r, o, a) {
                void 0 === a && (a = Promise);
                var n = new S(l(t, i, r, o), a);
                return e.isGeneratorFunction(i) ? n : n.next().then((function(e) {
                    return e.done ? e.value : n.next()
                }))
            }, b(f), s(f, n, "Generator"), s(f, o, (function() {
                return this
            })), s(f, "toString", (function() {
                return "[object Generator]"
            })), e.keys = function(e) {
                var t = [];
                for (var i in e) t.push(i);
                return t.reverse(),
                    function i() {
                        for (; t.length;) {
                            var r = t.pop();
                            if (r in e) return i.value = r, i.done = !1, i
                        }
                        return i.done = !0, i
                    }
            }, e.values = w, P.prototype = {
                constructor: P,
                reset: function(e) {
                    if (this.prev = 0, this.next = 0, this.sent = this._sent = void 0, this.done = !1, this.delegate = null, this.method = "next", this.arg = void 0, this.tryEntries.forEach(I), !e)
                        for (var t in this) "t" === t.charAt(0) && i.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = void 0)
                },
                stop: function() {
                    this.done = !0;
                    var e = this.tryEntries[0].completion;
                    if ("throw" === e.type) throw e.arg;
                    return this.rval
                },
                dispatchException: function(e) {
                    if (this.done) throw e;
                    var t = this;

                    function r(i, r) {
                        return n.type = "throw", n.arg = e, t.next = i, r && (t.method = "next", t.arg = void 0), !!r
                    }
                    for (var o = this.tryEntries.length - 1; o >= 0; --o) {
                        var a = this.tryEntries[o],
                            n = a.completion;
                        if ("root" === a.tryLoc) return r("end");
                        if (a.tryLoc <= this.prev) {
                            var s = i.call(a, "catchLoc"),
                                l = i.call(a, "finallyLoc");
                            if (s && l) {
                                if (this.prev < a.catchLoc) return r(a.catchLoc, !0);
                                if (this.prev < a.finallyLoc) return r(a.finallyLoc)
                            } else if (s) {
                                if (this.prev < a.catchLoc) return r(a.catchLoc, !0)
                            } else {
                                if (!l) throw new Error("try statement without catch or finally");
                                if (this.prev < a.finallyLoc) return r(a.finallyLoc)
                            }
                        }
                    }
                },
                abrupt: function(e, t) {
                    for (var r = this.tryEntries.length - 1; r >= 0; --r) {
                        var o = this.tryEntries[r];
                        if (o.tryLoc <= this.prev && i.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
                            var a = o;
                            break
                        }
                    }
                    a && ("break" === e || "continue" === e) && a.tryLoc <= t && t <= a.finallyLoc && (a = null);
                    var n = a ? a.completion : {};
                    return n.type = e, n.arg = t, a ? (this.method = "next", this.next = a.finallyLoc, c) : this.complete(n)
                },
                complete: function(e, t) {
                    if ("throw" === e.type) throw e.arg;
                    return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), c
                },
                finish: function(e) {
                    for (var t = this.tryEntries.length - 1; t >= 0; --t) {
                        var i = this.tryEntries[t];
                        if (i.finallyLoc === e) return this.complete(i.completion, i.afterLoc), I(i), c
                    }
                },
                catch: function(e) {
                    for (var t = this.tryEntries.length - 1; t >= 0; --t) {
                        var i = this.tryEntries[t];
                        if (i.tryLoc === e) {
                            var r = i.completion;
                            if ("throw" === r.type) {
                                var o = r.arg;
                                I(i)
                            }
                            return o
                        }
                    }
                    throw new Error("illegal catch attempt")
                },
                delegateYield: function(e, t, i) {
                    return this.delegate = {
                        iterator: w(e),
                        resultName: t,
                        nextLoc: i
                    }, "next" === this.method && (this.arg = void 0), c
                }
            }, e
        }

        function _(e, t, i, r, o, a, n) {
            try {
                var s = e[a](n),
                    l = s.value
            } catch (e) {
                return void i(e)
            }
            s.done ? t(l) : Promise.resolve(l).then(r, o)
        }

        function O(e) {
            return function() {
                var t = this,
                    i = arguments;
                return new Promise((function(r, o) {
                    var a = e.apply(t, i);

                    function n(e) {
                        _(a, r, o, n, s, "next", e)
                    }

                    function s(e) {
                        _(a, r, o, n, s, "throw", e)
                    }
                    n(void 0)
                }))
            }
        }

        function I(e, t) {
            var i = Object.keys(e);
            if (Object.getOwnPropertySymbols) {
                var r = Object.getOwnPropertySymbols(e);
                t && (r = r.filter((function(t) {
                    return Object.getOwnPropertyDescriptor(e, t).enumerable
                }))), i.push.apply(i, r)
            }
            return i
        }

        function P(e) {
            for (var t = 1; t < arguments.length; t++) {
                var i = null != arguments[t] ? arguments[t] : {};
                t % 2 ? I(Object(i), !0).forEach((function(t) {
                    w(e, t, i[t])
                })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : I(Object(i)).forEach((function(t) {
                    Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(i, t))
                }))
            }
            return e
        }

        function w(e, t, i) {
            return t in e ? Object.defineProperty(e, t, {
                value: i,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = i, e
        }
        var E = function() {
                var e = this;
                this.promise = new Promise((function(t, i) {
                    e.reject = function() {
                        e.isPending = !1, i.apply(void 0, arguments)
                    }, e.resolve = function() {
                        e.isPending = !1, t.apply(void 0, arguments)
                    }, e.isPending = !0
                }))
            },
            T = function() {
                function e(e) {
                    var t = e.context,
                        i = e.controllerConfig,
                        r = e.reportBiLog,
                        a = e.SSRWorkerLog,
                        n = e.withWarmupData;
                    this.SSRWorkerLog = a, this.withWarmupData = n, this.ITEMS_BATCH_SIZE = 50, this.controllerConfig = i, this.wixCodeApi = i.wixCodeApi, this.viewMode = o.a.parseViewMode(this.wixCodeApi.window.viewMode), this.context = t.getContext(), this.baseUrl = o.a.getBaseUrl(this.wixCodeApi, this.viewMode), this.appSettingsBaseUrl = this.viewMode === S.a.viewMode.PREVIEW || this.viewMode === S.a.viewMode.EDIT ? "" : this.baseUrl, this.SSRWorkerLog.push("appSettingsBaseUrl: " + this.appSettingsBaseUrl), this.compId = i.compId, this.externalId = i.config.externalId || "00000000-0000-0000-0000-000000000000", this.instance = i.appParams.instance, this.instanceId = i.appParams.instanceId, this.appSettings = new f(this.compId, this.instance, this.viewMode, this.appSettingsBaseUrl), this.reportBiLog = r, this.initDataSavedState()
                }
                var t = e.prototype;
                return t.isSSR = function() {
                    return "backend" === this.wixCodeApi.window.rendering.env
                }, t.shouldFallbackToV1 = function() {
                    return !b.a.getExperimentBoolean("specs.pro-gallery.removeFallbackToV1")
                }, t.setAppSettings = function(e) {
                    Object.assign(this, P({}, e)), this.appSettingsData = e, this.SSRWorkerLog.push("FLOW received appSettings and the gallery Id is: ", e.galleryId)
                }, t.fetchSettings = function() {
                    var e, t = this;
                    return null != (e = this.appSettingsFetchingPromise) && e.isPending ? this.SSRWorkerLog.push("appSettings is already fetching") : (this.appSettingsFetchingPromise = new E, this.SSRWorkerLog.push("FLOW trying to get settings from appSettings"), this.withWarmupData((function() {
                        return t.appSettings.get(t.dataSavedState)
                    }), "appSettings").then((function(e) {
                        if (e && e.galleryId) t.setAppSettings(e), t.appSettingsFetchingPromise.resolve(e);
                        else if (t.appSettingsFetchingPromise.resolve(null), !t.isSSR()) {
                            var i = {
                                compId: t.compId,
                                errorType: "no_appSettings.galleryId"
                            };
                            t.reportBiLog("proGalleryErrorUou", i)
                        }
                    }))), this.appSettingsFetchingPromise.promise
                }, t.fetchGalleryId = function() {
                    var e = O(v().mark((function e() {
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    if (!this.galleryId) {
                                        e.next = 2;
                                        break
                                    }
                                    return e.abrupt("return");
                                case 2:
                                    return e.next = 4, this.fetchSettings();
                                case 4:
                                    return e.sent || console.error("could not get galleryId for pro gallery"), e.abrupt("return");
                                case 7:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this)
                    })));
                    return function() {
                        return e.apply(this, arguments)
                    }
                }(), t.getGalleryDataFromServer = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r, a, n, s, l, u;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return i = t.from, r = t.batchSize, a = void 0 === r ? this.ITEMS_BATCH_SIZE : r, this.SSRWorkerLog.push("Fn getGalleryDataFromServer", "from: ", i), e.next = 4, o.a.verifyExperiments(this.scopedGlobalSdkApis);
                                case 4:
                                    return e.prev = 4, e.next = 7, this.getDataFromServer({
                                        from: i,
                                        batchSize: a
                                    });
                                case 7:
                                    return e.abrupt("return", e.sent);
                                case 10:
                                    if (e.prev = 10, e.t0 = e.catch(4), !this.shouldFallbackToV1()) {
                                        e.next = 22;
                                        break
                                    }
                                    return console.error("failed to fetch from V2 server, fetching form V1", e.t0), e.next = 16, this.TO_BE_REMOVED_getDataFromFallbackServer({
                                        from: i,
                                        batchSize: a
                                    });
                                case 16:
                                    return n = e.sent, this.TO_BE_REMOVED_setGalleryData({
                                        galleryData: n
                                    }), s = n.pageResponse, l = s.items, u = s.totalItemsCount, e.abrupt("return", {
                                        items: l,
                                        totalItemsCount: u
                                    });
                                case 22:
                                    throw new Error("Could not get items for gallery comp:" + this.compId + " galleryId: " + this.galleryId);
                                case 23:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this, [
                            [4, 10]
                        ])
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), t.TO_BE_REMOVED_addSsrUrlParams = function(e) {
                    return e + (this.isSSR() ? "&petri_ovr=specs.SkipCachePopulationSpec:true" : "")
                }, t.TO_BE_REMOVED_getDataFromFallbackServer = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r, o, a;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return i = t.from, r = t.batchSize, o = i + r, a = this.TO_BE_REMOVED_addSsrUrlParams(this.baseUrl + "/_api/pro-gallery-webapp/v1/gallery/" + this.instanceId + "/items/from/" + i + "/to/" + o + "?compId=" + this.compId + "&externalId=" + this.externalId), this.SSRWorkerLog.push("trying to get items from the fallback server ", a), e.abrupt("return", this.fetchNonPlatformizedServerData({
                                        requestUrl: a,
                                        multilingualHeader: this.getMultiLangHeader()
                                    }));
                                case 5:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this)
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), t.fetchNonPlatformizedServerData = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r, o, a;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return i = t.requestUrl, r = t.multilingualHeader, e.next = 3, fetch(i, {
                                        headers: {
                                            "x-wix-linguist": r
                                        }
                                    });
                                case 3:
                                    return o = e.sent, e.next = 6, o.json();
                                case 6:
                                    return a = e.sent, e.abrupt("return", a);
                                case 8:
                                case "end":
                                    return e.stop()
                            }
                        }), e)
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), t.getDataFromServer = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r, o, a, n;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return i = t.from, r = t.batchSize, e.next = 3, this.fetchGalleryId();
                                case 3:
                                    if (this.galleryId) {
                                        e.next = 5;
                                        break
                                    }
                                    throw new Error("no galleryId, can not fetch items from pro gallery server");
                                case 5:
                                    return o = this.baseUrl + "/pro-gallery-webapp/v1/galleries/" + this.galleryId + "?offset=" + i + "&limit=" + r + "&externalId=" + this.externalId + "&state=" + this.dataSavedState + "&lang=" + this.getLangQuery(), e.next = 8, this.fetchPlatformizedData({
                                        requestUrl: o,
                                        multilingualHeader: this.getMultiLangHeader()
                                    });
                                case 8:
                                    return a = e.sent, n = null == a ? void 0 : a.gallery, this.setGalleryData({
                                        gallery: n,
                                        settings: this.appSettingsData
                                    }), e.abrupt("return", {
                                        items: d(n.items),
                                        totalItemsCount: n.totalItemsCount
                                    });
                                case 12:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this)
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), t.fetchPlatformizedData = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r, o, a;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return i = t.requestUrl, r = t.multilingualHeader, e.next = 3, fetch(i, {
                                        method: "GET",
                                        headers: {
                                            "Content-Type": "application/json",
                                            Authorization: this.instance,
                                            "x-wix-linguist": r
                                        }
                                    });
                                case 3:
                                    return o = e.sent, e.next = 6, o.json();
                                case 6:
                                    return a = e.sent, e.abrupt("return", a);
                                case 8:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this)
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), t.initDataSavedState = function() {
                    if (this.viewMode === S.a.viewMode.PREVIEW || this.viewMode === S.a.viewMode.EDIT) {
                        var e = this.instance.substring(this.instance.indexOf(".") + 1),
                            t = JSON.parse(atob(e)).demoMode;
                        this.dataSavedState = t ? y.a.dataSavedState.PUBLISHED : y.a.dataSavedState.SAVED
                    } else this.dataSavedState = y.a.dataSavedState.PUBLISHED
                }, t.getMultiLangFields = function() {
                    var e = this.wixCodeApi.window.multilingual.currentLanguage,
                        t = this.wixCodeApi.window.multilingual.siteLanguages.filter((function(t) {
                            return t.languageCode === e
                        }));
                    return t.length > 0 ? {
                        isPrimaryLanguage: t[0].isPrimaryLanguage,
                        lang: e,
                        locale: t[0].locale
                    } : null
                }, t.getMultiLangHeader = function() {
                    var e = this.getMultiLangFields(),
                        t = e ? e.lang + "|" + e.locale + "|" + e.isPrimaryLanguage.toString() + "|" + this.instanceId : "";
                    return this.SSRWorkerLog.push("Multilingual header: " + t), t
                }, t.getLangQuery = function() {
                    var e = this.getMultiLangFields();
                    return e ? "" + e.lang + e.locale : ""
                }, t.setGalleryData = function(e) {
                    var t = e.gallery,
                        i = e.settings,
                        r = t.created;
                    this.dateCreated = r, this.setSettings(i)
                }, t.TO_BE_REMOVED_setGalleryData = function(e) {
                    var t = e.galleryData;
                    if (t && t.galleryId) {
                        var i = t.galleryId,
                            r = t.dateCreated,
                            o = t.pageResponse.settings;
                        return this.setGalleryId(i), this.setDateCreated(r), this.setSettings(o), {
                            galleryId: i,
                            dateCreated: r,
                            settings: this.settings
                        }
                    }
                }, t.setGalleryId = function(e) {
                    this.galleryId = e
                }, t.setDateCreated = function(e) {
                    this.dateCreated = e
                }, t.setSettings = function(e) {
                    var t = function(e) {
                            if ("string" == typeof e) try {
                                return JSON.parse(e)
                            } catch (t) {
                                return console.error("Failed parse settting", t), e
                            }
                            return e
                        },
                        i = t(this.settings),
                        r = t(e);
                    this.settings = P(P({}, i), r)
                }, t.getItemByIdFromServer = function() {
                    var e = O(v().mark((function e(t) {
                        var i, r;
                        return v().wrap((function(e) {
                            for (;;) switch (e.prev = e.next) {
                                case 0:
                                    return e.next = 2, this.fetchGalleryId();
                                case 2:
                                    return i = this.baseUrl + "/pro-gallery-webapp/v1/galleries/" + this.galleryId + "/items/" + t + "?state=" + this.dataSavedState, this.SSRWorkerLog.push("trying to get Direct fullscreen item from the server ", i), e.next = 6, this.fetchPlatformizedData({
                                        requestUrl: i,
                                        multilingualHeader: this.getMultiLangHeader()
                                    });
                                case 6:
                                    return r = e.sent, e.abrupt("return", null != r && r.item ? d([null == r ? void 0 : r.item])[0] : {});
                                case 8:
                                case "end":
                                    return e.stop()
                            }
                        }), e, this)
                    })));
                    return function(t) {
                        return e.apply(this, arguments)
                    }
                }(), e
            }(),
            x = i(41),
            C = i(64),
            D = i(65),
            A = i(58),
            M = i(59),
            R = i(63);

        function L(e, t) {
            var i = Object.keys(e);
            if (Object.getOwnPropertySymbols) {
                var r = Object.getOwnPropertySymbols(e);
                t && (r = r.filter((function(t) {
                    return Object.getOwnPropertyDescriptor(e, t).enumerable
                }))), i.push.apply(i, r)
            }
            return i
        }

        function B(e) {
            for (var t = 1; t < arguments.length; t++) {
                var i = null != arguments[t] ? arguments[t] : {};
                t % 2 ? L(Object(i), !0).forEach((function(t) {
                    j(e, t, i[t])
                })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : L(Object(i)).forEach((function(t) {
                    Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(i, t))
                }))
            }
            return e
        }

        function j(e, t, i) {
            return t in e ? Object.defineProperty(e, t, {
                value: i,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = i, e
        }
        var k = new C.a(r.c.SENTRY_DSN),
            N = {
                initAppForPage: M.a.getInitAppForPageFunc(k),
                createControllers: M.a.getCreateControllers((function(e) {
                    var t = [r.c.GALLERY_WIDGET_ID, r.c.PG_TEST_GALLERY_WIDGET_ID],
                        i = e.setProps;
                    if (!t.includes(e.type)) return {
                        pageReady: function() {},
                        exports: function() {}
                    };
                    var a = new D.a(k.getContext().platformServices.biLoggerFactory(), o.a.parseViewMode(e.wixCodeApi.window.viewMode), !1),
                        n = function(e, t) {
                            a.log(u.galleryId, e, t)
                        },
                        s = new x.a,
                        l = new A.a({
                            controllerConfig: e,
                            SSRWorkerLog: s
                        }).withWarmupData,
                        u = new T({
                            context: k,
                            controllerConfig: e,
                            reportBiLog: n,
                            SSRWorkerLog: s,
                            withWarmupData: l
                        }),
                        c = u.fetchGalleryId(),
                        h = new M.a({
                            context: k,
                            controllerConfig: e,
                            APP_DEFINITION_ID: r.c.PG_APP_DEFINITION_ID,
                            GALLERY_WIDGET_ID: r.c.GALLERY_WIDGET_ID,
                            isArtStore: !1,
                            fetcher: u,
                            SSRWorkerLog: s,
                            withWarmupData: l
                        }),
                        p = h.getTryToReportAppLoaded(),
                        d = new R.a;
                    return {
                        pageReady: function() {
                            try {
                                return h.getViewPortPromise().then((function(e) {
                                    s.push("pageReady, starting promises flows");
                                    var t = !1;
                                    return e && !e.in && (t = !0), h.loadInitialBlueprint(), h.loadDirectFullscreen(), Promise.all([h.getBlueprintReadyPromise(), h.getDirectFullscreenReadyPromise(), c]).catch((function(e) {
                                        h.sentryReport(e), console.error("Waiting for promises failed", e)
                                    })).then((function() {
                                        return o.c.isVerbose() && console.log("query: ", JSON.stringify(h.getQueryParams())), i(B(B({}, h.getCommonGalleryProps(!1)), {}, {
                                            reportBiLog: n,
                                            onItemClicked: h.getOnItemClickedFunc(d),
                                            onLinkNavigation: h.getOnLinkNavigationFunc(),
                                            setMetaTags: h.getSetMetaTagsFunc(),
                                            onCurrentItemChanged: function(e) {
                                                return d.onCurrentItemChanged(e)
                                            },
                                            isInSEO: h.isInSEO(),
                                            cssBaseUrl: h.getbaseUrls().santaWrapperBaseUrl,
                                            directFullscreenItem: h.getDirectFullscreenItem(),
                                            directFullscreenMockBlueprint: h.getDirectFullscreenMockBlueprint(),
                                            testType: h.getTestType(),
                                            clickedIdx: h.getClickedIdx(),
                                            notInView: t,
                                            totalItemsCount: h.getTotalItemsCount()
                                        })), h.isSSR() && (h.setMetaTagsInSSRIfNeeded(), p(!0)), h.getWarmupData()
                                    }))
                                })).catch((function(e) {
                                    console.error(e), h.sentryReport({
                                        errorMessage: "viewportPromise rejected!",
                                        error: e
                                    }), p()
                                }))
                            } catch (e) {
                                console.error(e), h.sentryReport(e)
                            }
                        },
                        updateConfig: function(t, i) {
                            "bolt" === e.platformAPIs.bi.viewerName && (i.dimensions = i.dimensions || {}), h.updateUserConfig(i)
                        },
                        exports: function() {
                            try {
                                return d.generateApi({
                                    proGalleryStore: h.getPgStore(),
                                    setNewStyleParams: function(e) {
                                        return h.handleNewStyleParams(e)
                                    },
                                    setClickedIdx: function(e) {
                                        return h.setClickedIdx(e)
                                    },
                                    setManualDimensions: h.getSetManualDimensionsFunc()
                                })
                            } catch (e) {
                                h.sentryReport(e)
                            }
                        }
                    }
                }), k.getSentry())
            },
            W = N.initAppForPage,
            U = N.createControllers,
            F = {}
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = function(e) {
                var t = function(e) {
                    var t = 0;
                    if (void 0 === e || 0 === e.length) return t;
                    for (var i = 0; i < e.length; i++) {
                        t = (t << 5) - t + e.charCodeAt(i), t |= 0
                    }
                    return t *= Math.sign(t), t = Math.sqrt(t), t = Math.floor(1e6 * (t - Math.floor(t)))
                }(e);
                return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (function(e, i) {
                    var r = Math.ceil(t / (i + 1)) % 16;
                    return ("x" === e ? r : 3 & r | 8).toString(16)
                }))
            },
            a = function(e) {
                return void 0 === e && (e = ""), e ? e.toString().toLowerCase().replace(/\s+/g, "-").replace(/[^\w\-\.]+/g, "").replace(/\-\-+/g, "-").replace(/^-+/, "").replace(/-+$/, "") : ""
            };

        function n(e, t) {
            var i = Object.keys(e);
            if (Object.getOwnPropertySymbols) {
                var r = Object.getOwnPropertySymbols(e);
                t && (r = r.filter((function(t) {
                    return Object.getOwnPropertyDescriptor(e, t).enumerable
                }))), i.push.apply(i, r)
            }
            return i
        }

        function s(e) {
            for (var t = 1; t < arguments.length; t++) {
                var i = null != arguments[t] ? arguments[t] : {};
                t % 2 ? n(Object(i), !0).forEach((function(t) {
                    l(e, t, i[t])
                })) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : n(Object(i)).forEach((function(t) {
                    Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(i, t))
                }))
            }
            return e
        }

        function l(e, t, i) {
            return t in e ? Object.defineProperty(e, t, {
                value: i,
                enumerable: !0,
                configurable: !0,
                writable: !0
            }) : e[t] = i, e
        }
        var u = function(e, t) {
                switch (typeof e) {
                    case "object":
                        return {
                            type: "wix",
                            data: e
                        };
                    case "string":
                        return {
                            type: "web",
                            url: e,
                            target: t
                        };
                    default:
                        return {
                            target: "_blank",
                            type: "none"
                        }
                }
            },
            c = function(e) {
                void 0 === e && (e = {});
                var t = {
                    link: e.url
                };
                return e.url && (t.target = e.target), t
            },
            h = function(e) {
                return null !== /^(wix:)?(image|video)(:\/\/)/.exec(e)
            },
            p = function(e) {
                return h(e) ? e.split("/")[3] : e
            },
            d = function(e) {
                try {
                    return h(e) ? e.split("/")[4].split("#").slice(0, -1).join("#") : "_.jpg"
                } catch (e) {
                    return "_.jpg"
                }
            },
            m = function(e, t) {
                return "wix:image://v1/" + (e || a(t.name)) + "/" + a(t.fileName || t.name) + "#originWidth=" + t.width + "&originHeight=" + t.height
            },
            g = function(e, t) {
                return "wix:video://v1/" + (e || a(t.name)) + "/" + a(t.fileName || t.name) + "#posterUri=" + t.posters[0].url + "&posterWidth=" + t.width + "&posterHeight=" + t.height
            },
            y = function(e) {
                var t = {},
                    i = !1;
                try {
                    var r = /\/\d*_\d*\//.exec(e);
                    if (r && r[0] && r[0].length > 0) {
                        var o = r[0].replace(/\//g, "").split("_").map((function(e) {
                                return Number(e)
                            })),
                            a = o[0],
                            n = o[1];
                        a > 0 && n > 0 && (i = !0, t = {
                            originWidth: a,
                            originHeight: n
                        })
                    }
                } catch (e) {
                    i = !1
                }
                if (!i) try {
                    var s = /wm_(.*)\//.exec(e);
                    if (s && s[0] && s[0].length > 0) {
                        var l = s[1];
                        l.length > 0 && (t.watermark = l)
                    }
                } catch (e) {
                    i = !1
                }
                if (!i) try {
                    e.split("#").pop().split("&").map((function(e) {
                        return e.split("=")
                    })).forEach((function(e) {
                        t[e[0]] = isNaN(Number(e[1])) ? String(e[1]) : Number(e[1])
                    }))
                } catch (e) {
                    i = !1
                }
                return t
            },
            f = function(e, t) {
                return void 0 === t && (t = 0),
                    function(e) {
                        return !!(e.src || e.type && e.html)
                    }(e) ? function(e, t) {
                        var i = y(e.src);
                        i.width = e.width || i.originWidth || i.originalWidth || i.posterWidth || 1, i.height = e.height || i.originHeight || i.originalHeight || i.posterHeight || 1;
                        var r, n = e.settings && e.settings.focalPoint,
                            l = i.watermark,
                            c = e.imageToken || e.token || i.token,
                            m = (e.type || "image").toLowerCase(),
                            g = s({
                                itemId: a(e.slug) || (a(e.title || e.id) || o(e.src || e.html || t)) + "_" + t,
                                mediaUrl: p(e.src),
                                metaData: Object.assign({
                                    type: m,
                                    alt: e.alt || "",
                                    title: e.title || "",
                                    description: e.description || "",
                                    name: d(e.src),
                                    fileName: d(e.src),
                                    link: u(e.link, e.target),
                                    width: i.width,
                                    height: i.height,
                                    sourceName: "private"
                                }, n ? {
                                    focalPoint: n
                                } : {}, l ? {
                                    watermarkStr: l
                                } : {}),
                                orderIndex: t
                            }, c && {
                                token: c
                            });
                        if ("text" === m) {
                            var f = e.style;
                            g.metaData.height = i.height || 500, g.metaData.width = i.width || 500 * f.layoutRatio, g.metaData.textStyle = {
                                width: g.metaData.width,
                                height: g.metaData.height,
                                backgroundColor: f.fillColor
                            }, g.metaData.html = g.editorHtml = e.html
                        }
                        if ("video" === m) {
                            var b = {};
                            e.thumbnail && (b = y(e.thumbnail));
                            var S = (r = p(e.thumbnail), null !== /^.*\.(jpeg|jpg|webp|png|jpe)$/.exec(r) ? p(e.thumbnail) : i.posterUri);
                            g.metaData.posters = [{
                                url: S,
                                width: b.width || i.width,
                                height: b.height || i.height
                            }], g.isExternal = 0 === e.src.indexOf("http"), g.isExternal || h(e.src) ? (g.metaData.source = e.src.indexOf("youtube.com") > 0 ? "youtube" : e.src.indexOf("vimeo.com") > 0 ? "vimeo" : "wix", g.metaData.videoUrl = e.src) : g.metaData.qualities = [{
                                width: i.width,
                                height: i.height,
                                quality: i.height + "p",
                                formats: [h(e.src) ? "wix" : e.src.split(/#|\?/)[0].split(".").pop().trim()]
                            }]
                        }
                        return g
                    }(e, t) : function(e, t) {
                        return {
                            itemId: o(t + "_" + (e.uri || e.alt || t)),
                            mediaUrl: e.uri || "",
                            metaData: {
                                height: e.height || 1,
                                lastModified: Date.now(),
                                link: u(e.link, e.target),
                                title: e.title || "",
                                description: e.description || "",
                                alt: e.alt || "",
                                sourceName: "private",
                                tags: [],
                                width: e.width || 1
                            },
                            orderIndex: t
                        }
                    }(e, t)
            },
            b = function(e, t) {
                return void 0 === e && (e = {}), void 0 === t && (t = !0), t ? function(e) {
                    void 0 === e && (e = {});
                    var t = e.metaData || e.metadata || {},
                        i = c(t.link) || {},
                        r = s({
                            type: t.type || "image",
                            slug: e.itemId
                        }, i),
                        o = r.type.toLowerCase();
                    if ("text" === o) {
                        var a = t.testStyle || {};
                        Object.assign(r, {
                            html: t.html,
                            style: {
                                width: a.width,
                                height: a.height,
                                bgColor: a.backgroundColor
                            }
                        })
                    } else Object.assign(r, {
                        title: t.title,
                        description: t.description,
                        alt: t.alt
                    }), "image" === o ? Object.assign(r, s(s({
                        src: m(e.mediaUrl, t),
                        settings: Object.assign({}, t.focalPoint ? {
                            focalPoint: t.focalPoint
                        } : {})
                    }, "imageToken" in e && {
                        imageToken: e.imageToken
                    }), "token" in e && {
                        token: e.token
                    })) : "video" === o && Object.assign(r, {
                        src: g(e.mediaUrl, t),
                        thumbnail: t.posters[0].url
                    });
                    return r
                }(e) : (r = (i = e).metaData || i.metadata || {}, o = c(r.link) || {}, s({
                    uri: i.mediaUrl,
                    description: r.description,
                    alt: r.alt,
                    title: r.title,
                    height: r.height,
                    width: r.width
                }, o));
                var i, r, o
            },
            S = function() {
                function e() {
                    this.generateApi = this.generateApi.bind(this), this.onCurrentItemChanged = this.onCurrentItemChanged.bind(this), this.onItemClicked = this.onItemClicked.bind(this), this.setStyleParams = this.setStyleParams.bind(this), this.setClickCallback = this.setClickCallback.bind(this), this.setItemChangedCallback = this.setItemChangedCallback.bind(this), this.manualStyleParams = {}, this.itemClickedCallbacks = [], this.itemChangedCallbacks = [], this.clickedIdx = -1
                }
                return e.prototype.setClickCallback = function(e) {
                    "function" == typeof e && this.itemClickedCallbacks.push(e)
                }, e.prototype.onItemClicked = function(e) {
                    var t = {
                        target: this.api,
                        type: "itemClicked",
                        itemIndex: e.idx,
                        item: b(e.dto)
                    };
                    try {
                        for (var i = 0; i < this.itemClickedCallbacks.length; i++) {
                            var r = this.itemClickedCallbacks[i];
                            "function" == typeof r && r(t)
                        }
                    } catch (e) {
                        console.warn("Gallery failed to activate onItemClicked callbacks", e)
                    }
                }, e.prototype.setItemChangedCallback = function(e) {
                    "function" == typeof e && this.itemChangedCallbacks.push(e)
                }, e.prototype.onCurrentItemChanged = function(e) {
                    try {
                        for (var t = {
                                event: {
                                    action: "imageChanged",
                                    id: e.id,
                                    imageIndex: e.idx,
                                    item: b(e)
                                }
                            }, i = 0; i < this.itemChangedCallbacks.length; i++) {
                            var r = this.itemChangedCallbacks[i];
                            "function" == typeof r && r(t.event)
                        }
                    } catch (e) {}
                }, e.prototype.setStyleParams = function(e, t) {
                    var i = function(e, t) {
                        var i;
                        switch (e) {
                            case "itemClick":
                                switch (t) {
                                    default:
                                        case "none":
                                        case "disabled":
                                        i = "nothing";
                                    break;
                                    case "expand":
                                            case "zoomMode":
                                            i = "expand";
                                        break;
                                    case "fullscreen":
                                            i = "fullscreen";
                                        break;
                                    case "link":
                                            case "goToLink":
                                            i = "link"
                                }
                                break;
                            default:
                                i = t
                        }
                        return i
                    };
                    try {
                        return this.manualStyleParams = function(e) {
                            for (var o = t, a = 0, n = Object.keys(Object(r.a)({}, e)); a < n.length; a++) {
                                var s = n[a];
                                o[s] = i(s, e[s])
                            }
                            return o
                        }(e), this.manualStyleParams
                    } catch (e) {
                        return console.error("Failed to set styleParams", e), {}
                    }
                }, e.prototype.generateCartApi = function(e) {
                    return {get type() {
                            return "$w.Cart"
                        },
                        set options(t) {
                            e(t)
                        }
                    }
                }, e.prototype.generateApi = function(e) {
                    var t = e.proGalleryStore,
                        i = e.setNewStyleParams,
                        o = e.setClickedIdx,
                        a = e.setNewSettings,
                        n = void 0 === a ? function() {} : a,
                        s = e.setManualDimensions,
                        l = this.setStyleParams,
                        u = this.manualStyleParams,
                        c = this.setClickCallback,
                        h = this.setItemChangedCallback;
                    return this.api = {set dimensions(e) {
                            if (e) {
                                var i = Object(r.a)(Object(r.a)(Object(r.a)(Object(r.a)(Object(r.a)({}, t.dimensions), e.width > 0 && {
                                    width: Number(e.width)
                                }), "" === e.width && {
                                    width: ""
                                }), e.height > 0 && {
                                    height: Number(e.height)
                                }), e.height = "");
                                s(i)
                            } else console.error("set manual dimensions called with no input")
                        },
                        get dimensions() {
                            return t.dimensions
                        },
                        get type() {
                            return "$w.Gallery"
                        },
                        get galleryCapabilities() {
                            return {
                                isPlayable: !1,
                                hasCurrentItem: !1,
                                hasNavigationButtons: !1,
                                supportsAllMediaTypes: !0
                            }
                        },
                        set items(e) {
                            t.itemsSrc = "Velo", t.setAllWixCodeItems(function(e) {
                                var t = [];
                                try {
                                    e.forEach((function(e, i) {
                                        return t.push(f(e, i))
                                    }))
                                } catch (t) {
                                    console.error("Wrong format for gallery items", e, t)
                                }
                                return t
                            }(e)), t.totalItemsCount = t.allWixCodeItems.length, t.loadInitialWixCodeItems()
                        },
                        get items() {
                            return function(e, t) {
                                void 0 === t && (t = !0);
                                var i = [];
                                return e.forEach((function(e) {
                                    return i.push(b(e, t))
                                })), i
                            }(t.getItems())
                        },
                        onItemClicked: function(e) {
                            return c(e)
                        },
                        onCurrentItemChanged: function(e) {
                            return h(e)
                        },
                        expandItem: function(e) {
                            o(e)
                        },
                        set clickAction(e) {
                            t._clickAction = e, l({
                                itemClick: e
                            }, u), i(u)
                        },
                        get clickAction() {
                            return t._clickAction ? t._clickAction : ""
                        },
                        set showNavigationButtons(e) {
                            t._showArrows = e, l({
                                showArrows: e
                            }, u), i(u)
                        },
                        get showNavigationButtons() {
                            return t._showArrows ? t._showArrows : ""
                        },
                        get options() {
                            return {
                                styleParams: u,
                                settings: t.settings
                            }
                        },
                        set options(e) {
                            var t = e.styleParams,
                                r = e.settings;
                            t && i(l(t, {})), r && n(r)
                        },
                        toJSON: function() {
                            return {
                                items: t.getItems(),
                                clickAction: u.itemClick,
                                showNavigationButtons: u.showArrows
                            }
                        }
                    }
                }, e
            }();
        t.a = S
    }, function(e, t, i) {
        "use strict";
        var r = function() {
                function e(e) {
                    this.SENTRY_DSN = e, this.sentry = null
                }
                return e.prototype.init = function(e, t, i) {
                    var r = {
                            id: e.instanceId,
                            url: t.location.baseUrl
                        },
                        o = this.SENTRY_DSN;
                    this.sentry = i.monitoring.createMonitor(o, (function(e) {
                        return e.environment = "Worker", e
                    })), this.sentry.setUserContext(r)
                }, e.prototype.report = function(e) {
                    this.sentry ? this.sentry.captureException(e) : console.error("SentryReporter: trying to report before init", e)
                }, e
            }(),
            o = function() {
                function e(e) {
                    this.context = null, this.sentryReporter = new r(e)
                }
                return e.prototype.setContext = function(e) {
                    this.context = e
                }, e.prototype.initSentry = function(e, t, i) {
                    this.sentryReporter.init(e, t, i)
                }, e.prototype.getSentry = function() {
                    return this.sentryReporter
                }, e.prototype.getContext = function() {
                    return this.context
                }, e
            }();
        t.a = o
    }, function(e, t, i) {
        "use strict";
        var r = i(0),
            o = {
                endpoint: "photo-ugc"
            },
            a = function(e) {
                return new n(e)
            },
            n = function() {
                function e(e) {
                    var t = this;
                    this.biLoggerClientFactoryInstance = e, this.util = {
                        updateDefaults: function(e) {
                            return t.biLoggerClientFactoryInstance.updateDefaults(e), t
                        },
                        log: function(e, i) {
                            return t.bi.log(e, i)
                        }
                    }, e.updateDefaults({
                        src: 65
                    }), this.bi = e.logger({
                        endpoint: "photo-ugc"
                    })
                }
                return e.prototype.landAfterShare = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 602
                    }, e))
                }, e.prototype.navigationInCollectionMemberArea = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 234
                    }, e))
                }, e.prototype.albumNameTooltip = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 295
                    }, e))
                }, e.prototype.createCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 198
                    }, e))
                }, e.prototype.expand = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 504
                    }, e))
                }, e.prototype.clickSaveCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 232
                    }, e))
                }, e.prototype.downloadFilesFromCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 218
                    }, e))
                }, e.prototype.providerCartCheckout = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 803
                    }, e))
                }, e.prototype.info = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 503
                    }, e))
                }, e.prototype.galleryItemExpanded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 521
                    }, e))
                }, e.prototype.previewItemInCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 230
                    }, e))
                }, e.prototype.share = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 500
                    }, e))
                }, e.prototype.downloadImage = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 805
                    }, e))
                }, e.prototype.galleryClickOnItem = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 520
                    }, e))
                }, e.prototype.gogLoaded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 301
                    }, e))
                }, e.prototype.buyBuyNowClick = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 800
                    }, e))
                }, e.prototype.addCommentOnAnItemCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 229
                    }, e))
                }, e.prototype.proGalleryErrorUou = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 512
                    }, e))
                }, e.prototype.paymentExcepted = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 506
                    }, e))
                }, e.prototype.providerBuyAddToCart = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 802
                    }, e))
                }, e.prototype.albumNameError = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 294
                    }, e))
                }, e.prototype.collectionCreated = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 199
                    }, e))
                }, e.prototype.albumActions = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 300
                    }, e))
                }, e.prototype.proGalleryLoadUou = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 304
                    }, e))
                }, e.prototype.shareGroup = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 601
                    }, e))
                }, e.prototype.thankYouPageLoaded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 804
                    }, e))
                }, e.prototype.photoAlbumButtonOnClick = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 211
                    }, e))
                }, e.prototype.buySelectLicense = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 801
                    }, e))
                }, e.prototype.photoAlbumCoverLoaded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 303
                    }, e))
                }, e.prototype.download = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 502
                    }, e))
                }, e.prototype.migratedLoveData = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 305
                    }, e))
                }, e.prototype.shareNew = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 511
                    }, e))
                }, e.prototype.dropDownMenuOnPhoto = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 285
                    }, e))
                }, e.prototype.popupOpened = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 279
                    }, e))
                }, e.prototype.buyGalleryAddToCart = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 806
                    }, e))
                }, e.prototype.paymentError = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 507
                    }, e))
                }, e.prototype.clickOnInviteMemberToCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 233
                    }, e))
                }, e.prototype.artStorePerformanceUou = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 306
                    }, e))
                }, e.prototype.gogAlbumClick = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 302
                    }, e))
                }, e.prototype.galleryRendered = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 508
                    }, e))
                }, e.prototype.clickButtonInPopup = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 297
                    }, e))
                }, e.prototype.openWizardCreateCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 208
                    }, e))
                }, e.prototype.proGalleryLoaded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 510
                    }, e))
                }, e.prototype.xxxcheckout = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 505
                    }, e))
                }, e.prototype.proGalleryClickOnCustomButton = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 807
                    }, e))
                }, e.prototype.love = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 501
                    }, e))
                }, e.prototype.clickOnSelectMediaCollection = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 228
                    }, e))
                }, e.prototype.selectPhoto = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 600
                    }, e))
                }, e.prototype.proGalleryLoadError = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 509
                    }, e))
                }, e.prototype.photoAlbumGalleryLoaded = function(e) {
                    return this.bi.log(Object(r.a)({
                        evid: 307
                    }, e))
                }, e
            }(),
            s = function(e) {
                return function(t) {
                    void 0 === t && (t = {});
                    var i = t.defaults,
                        n = Object(r.d)(t, ["defaults"]),
                        s = Object(r.a)(Object(r.a)({}, o), n),
                        l = "function" == typeof e.factory ? e.factory(s) : e,
                        u = a(l);
                    return i ? u.util.updateDefaults(i) : u
                }
            };
        var l = i(8),
            u = i(2),
            c = function() {
                function e(e, t, i) {
                    try {
                        this.logger = s(e)()
                    } catch (e) {
                        console.log("BI Failed to init")
                    }
                    this.galleryLogData = {
                        galleryType: i ? "store" : "progallery"
                    }, this.viewMode = t, this.log = this.log.bind(this)
                }
                return e.prototype.log = function(e, t, i) {
                    if (void 0 === i && (i = {}), this.viewMode === u.a.viewMode.SITE && !l.c.isDev() && !l.c.isTest()) try {
                        var o = Object(r.a)(Object(r.a)({}, this.galleryLogData), {
                                gallery_id: e
                            }),
                            a = Object(r.a)(Object(r.a)({}, o), i);
                        this.logger[t] && this.logger[t](a)
                    } catch (e) {
                        console.log("Error bi logger", e)
                    }
                }, e
            }();
        t.a = c
    }])
}));
//# sourceMappingURL=viewerScript.bundle.min.js.map
//# sourceURL=https://static.parastorage.com/services/pro-gallery-santa-wrapper/1.2763.0/viewerScript.bundle.min.js
                                    

#5 JavaScript::Eval (size: 129347, repeated: 1) - SHA256: a66ab375f4d020637b17e82b44c687c09fca6fe5e48328bb9ec338feb777bb7b

                                        (("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library = ("undefined" != typeof self ? self : this).webpackJsonp__wix_editor_elements_library || []).push([
    [2], {
        112: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.composeSDKFactories = void 0;
            var i = r(2745);
            Object.defineProperty(t, "composeSDKFactories", {
                enumerable: !0,
                get: function() {
                    return i.composeSDKFactories
                }
            })
        },
        1147: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createTextElementValidator = t.createElementValidator = void 0;
            const i = r(1422),
                a = r(7),
                o = r(554),
                n = (e, t, r, i, o) => o ? !!r(o) || (a.reportError(i), !1) : !!t || (a.reportError(a.messages.invalidTypeMessage({
                    value: o,
                    types: ["object"],
                    propertyName: e,
                    functionName: "set " + e,
                    index: void 0
                })), !1);
            t.createElementValidator = (e, t = !0) => r => n(e, t, o.isElement, i.getNotSelectorError(e), r);
            t.createTextElementValidator = (e, t = !0) => r => n(e, t, o.isTextElement, i.getNotTextSelectorError(e), r)
        },
        1258: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__setModuleDefault || (Object.create ? function(e, t) {
                    Object.defineProperty(e, "default", {
                        enumerable: !0,
                        value: t
                    })
                } : function(e, t) {
                    e.default = t
                }),
                o = this && this.__importStar || function(e) {
                    if (e && e.__esModule) return e;
                    var t = {};
                    if (null != e)
                        for (var r in e) "default" !== r && Object.prototype.hasOwnProperty.call(e, r) && i(t, e, r);
                    return a(t, e), t
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.types = t.errors = t.parseMediaSrc = t.createMediaSrc = t.isValidMediaSrc = void 0;
            const n = o(r(1418)),
                s = r(1417);
            Object.defineProperty(t, "types", {
                enumerable: !0,
                get: function() {
                    return s.types
                }
            }), Object.defineProperty(t, "errors", {
                enumerable: !0,
                get: function() {
                    return s.errors
                }
            });
            const l = {
                    externalUrl: /(^https?)|(^data)|(^blob)|(^\/\/)/,
                    inlineSvg: /<svg[\s\S]*>[\s\S]*<\/svg>/im
                },
                c = {
                    [n.types.VECTOR]: [l.externalUrl, l.inlineSvg], [n.types.IMAGE]: [l.externalUrl], [n.types.DOCUMENT]: [], [n.types.VIDEO]: [], [n.types.AUDIO]: [l.externalUrl]
                };
            t.createMediaSrc = function({
                mediaId: e,
                type: t,
                title: r,
                width: i,
                height: a,
                posterId: o,
                watermark: s,
                duration: l
            }) {
                var d;
                return (null === (d = c[t]) || void 0 === d ? void 0 : d.some(t => t.test(e))) ? {
                    item: e
                } : n.createMediaItemUri({
                    mediaId: e,
                    type: t,
                    title: r,
                    width: i,
                    height: a,
                    posterId: o,
                    watermark: s,
                    duration: l
                })
            }, t.parseMediaSrc = function(e, t) {
                if (!Object.values(s.types).includes(t)) return {
                    error: s.errors.unknown_media_type
                };
                if (c[t].some(t => t.test(e))) return {
                    type: t,
                    mediaId: e
                };
                const r = n.parseMediaItemUri(e);
                return r.error === s.errors.non_string_media_id ? r : r.error === s.errors.unknown_media_type || t !== r.type ? {
                    error: s.errors.bad_media_id
                } : r
            }, t.isValidMediaSrc = function(e, t) {
                return n.isValidMediaItemUri(e, t) || c[t] && c[t].some(t => t.test(e))
            }
        },
        1417: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.errors = t.types = void 0, t.types = {
                IMAGE: "image",
                DOCUMENT: "document",
                VIDEO: "video",
                AUDIO: "audio",
                VECTOR: "vector"
            }, t.errors = {
                empty_media_id: "empty_media_id",
                empty_poster_id: "empty_poster_id",
                bad_media_id: "bad_media_id",
                unknown_media_type: "unknown_media_type",
                missing_width_height: "missing_width_height",
                non_string_media_id: "non_string_media_id"
            }
        },
        1418: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.types = t.errors = t.parseMediaItemUri = t.createMediaItemUri = t.isValidMediaItemUri = void 0;
            const i = r(1417);
            Object.defineProperty(t, "types", {
                enumerable: !0,
                get: function() {
                    return i.types
                }
            }), Object.defineProperty(t, "errors", {
                enumerable: !0,
                get: function() {
                    return i.errors
                }
            });
            const a = (e, t) => `wix:vector://v1/${e}/${t}`,
                o = (e, t, r, i, a) => `wix:image://v1/${e}/${t}#originWidth=${r}&originHeight=${i}${a?"&watermark="+a:""}`,
                n = (e, t) => `wix:document://v1/${e}/${t}`,
                s = (e, t, r, i = 0, a = 0) => `wix:video://v1/${e}/${r}#posterUri=${t}&posterWidth=${i}&posterHeight=${a}`,
                l = (e, t, r) => `wix:audio://v1/${e}/${t}#duration=${r}`,
                c = {
                    vector: /^wix:vector:\/\/v1\/([^\/]+)\/([^\/]*)$/,
                    image: /^wix:image:\/\/v1\/([^\/]+)\/([^\/]+)#originWidth=([0-9]+)&originHeight=([0-9]+)(?:&watermark=([^\/]+))?$/,
                    document: /^wix:document:\/\/v1\/([^\/]+)\/([^\/]+)$/,
                    video: /^wix:video:\/\/v1\/([^\/]+)\/([^\/]+)#posterUri=([^\/]+)&posterWidth=([0-9]+)&posterHeight=([0-9]+)$/,
                    audio: /^wix:audio:\/\/v1\/([^\/]+)\/([^\/]+)#duration=([0-9]+)$/,
                    deprecated_video: /^wix:video:\/\/v1\/([^\/]+)\/([^\/]+)\/#posterUri=([^\/]+)&posterWidth=([0-9]+)&posterHeight=([0-9]+)$/,
                    deprecated_image: /^image:\/\/v1\/([^\/]+)\/([0-9]+)_([0-9]+)\/([^\/]*)$/,
                    deprecated_type: /^(image):/,
                    type: /^wix:(\w+):/,
                    splitExtension: /\.(?=[^.]+$)/,
                    emptyTitle: /^_\./
                },
                d = {
                    vector: [c.vector],
                    image: [c.image, c.deprecated_image],
                    document: [c.document],
                    video: [c.video, c.deprecated_video],
                    audio: [c.audio]
                };

            function u(e, t = "", r) {
                const [a, o] = r.split(c.splitExtension), [n, s] = t.split(c.splitExtension);
                let l;
                switch (e) {
                    case i.types.IMAGE:
                        l = `${n||"_"}.${s||o}`;
                        break;
                    case i.types.DOCUMENT:
                        l = `${n||a}.${s||o}`;
                        break;
                    case i.types.VIDEO:
                        l = `${n||"_"}${s?"."+s:""}`;
                        break;
                    case i.types.AUDIO:
                    case i.types.VECTOR:
                        l = `${n||a}.${s||o}`;
                        break;
                    default:
                        l = ""
                }
                return encodeURI(l)
            }

            function p(e) {
                return c.emptyTitle.test(e) ? "" : decodeURI(e)
            }
            t.createMediaItemUri = function({
                mediaId: e,
                type: t,
                title: r,
                width: c,
                height: d,
                posterId: p,
                watermark: f,
                duration: m
            }) {
                switch (t) {
                    case i.types.IMAGE:
                        return function({
                            mediaId: e,
                            title: t,
                            width: r,
                            height: a,
                            watermark: n
                        }) {
                            if (!e) return {
                                error: i.errors.empty_media_id
                            };
                            if ("number" != typeof a || "number" != typeof r) return {
                                error: i.errors.missing_width_height
                            };
                            const s = u(i.types.IMAGE, t, e);
                            return {
                                item: o(e, s, r, a, n)
                            }
                        }({
                            mediaId: e,
                            title: r,
                            width: c,
                            height: d,
                            watermark: f
                        });
                    case i.types.DOCUMENT:
                        return function({
                            mediaId: e,
                            title: t
                        }) {
                            if (!e) return {
                                error: i.errors.empty_media_id
                            };
                            const r = u(i.types.DOCUMENT, t, e);
                            return {
                                item: n(e, r)
                            }
                        }({
                            mediaId: e,
                            title: r
                        });
                    case i.types.VECTOR:
                        return function({
                            mediaId: e,
                            title: t
                        }) {
                            if (!e) return {
                                error: i.errors.empty_media_id
                            };
                            const r = u(i.types.VECTOR, t, e);
                            return {
                                item: a(e, r)
                            }
                        }({
                            mediaId: e,
                            title: r
                        });
                    case i.types.VIDEO:
                        return function({
                            mediaId: e,
                            title: t,
                            width: r,
                            height: a,
                            posterId: o
                        }) {
                            if (!e) return {
                                error: i.errors.empty_media_id
                            };
                            if (!o) return {
                                error: i.errors.empty_poster_id
                            };
                            if (isNaN(a || NaN) || isNaN(r || NaN)) return {
                                error: i.errors.missing_width_height
                            };
                            const n = e.replace("video/", ""),
                                l = u(i.types.VIDEO, t, n);
                            return {
                                item: s(n, o, l, r, a)
                            }
                        }({
                            mediaId: e,
                            title: r,
                            width: c,
                            height: d,
                            posterId: p
                        });
                    case i.types.AUDIO:
                        return function({
                            mediaId: e,
                            title: t,
                            duration: r
                        }) {
                            if (!e) return {
                                error: i.errors.empty_media_id
                            };
                            const a = u(i.types.AUDIO, t, e);
                            return {
                                item: l(e, a, r || 0)
                            }
                        }({
                            mediaId: e,
                            title: r,
                            duration: m
                        });
                    default:
                        return {
                            error: i.errors.unknown_media_type
                        }
                }
            }, t.parseMediaItemUri = function(e = "") {
                if ("string" != typeof e) return {
                    error: i.errors.non_string_media_id
                };
                const [, t] = e.match(c.type) || [];
                switch (t) {
                    case i.types.IMAGE:
                        return function(e) {
                            const [, t, r, a, o, n] = e.match(c.image) || [], s = p(r);
                            if (t) {
                                return {
                                    type: i.types.IMAGE,
                                    mediaId: t,
                                    title: s,
                                    width: parseInt(a, 10),
                                    height: parseInt(o, 10),
                                    watermark: n
                                }
                            }
                            return {
                                error: i.errors.bad_media_id
                            }
                        }(e);
                    case i.types.DOCUMENT:
                        return function(e) {
                            const [, t, r] = e.match(c.document) || [], a = p(r);
                            return t ? {
                                type: i.types.DOCUMENT,
                                mediaId: t,
                                title: a
                            } : {
                                error: i.errors.bad_media_id
                            }
                        }(e);
                    case i.types.VECTOR:
                        return function(e) {
                            const [, t, r] = e.match(c.vector) || [], a = p(r);
                            return t ? {
                                type: i.types.VECTOR,
                                mediaId: t,
                                title: a
                            } : {
                                error: i.errors.bad_media_id
                            }
                        }(e);
                    case i.types.VIDEO:
                        return function(e) {
                            const t = c.deprecated_video.test(e) ? c.deprecated_video : c.video,
                                [, r, a, o, n, s] = e.match(t) || [],
                                l = p(a);
                            return r && o ? {
                                type: i.types.VIDEO,
                                mediaId: r,
                                posterId: o,
                                width: parseInt(n, 10),
                                height: parseInt(s, 10),
                                title: l
                            } : {
                                error: i.errors.bad_media_id
                            }
                        }(e);
                    case i.types.AUDIO:
                        return function(e) {
                            const [, t, r, a] = e.match(c.audio) || [], o = p(r);
                            return t ? {
                                type: i.types.AUDIO,
                                mediaId: t,
                                title: o,
                                duration: parseInt(a, 10)
                            } : {
                                error: i.errors.bad_media_id
                            }
                        }(e);
                    default:
                        const [, t] = e.match(c.deprecated_type) || [];
                        return t ? function(e) {
                            const [, t, r, a, o] = e.match(c.deprecated_image) || [], n = p(o);
                            return t ? {
                                type: i.types.IMAGE,
                                mediaId: t,
                                title: n,
                                width: parseInt(r, 10),
                                height: parseInt(a, 10)
                            } : {
                                error: i.errors.bad_media_id
                            }
                        }(e) : {
                            error: i.errors.unknown_media_type
                        }
                }
            }, t.isValidMediaItemUri = function(e = "", t) {
                const r = d[t];
                return r && r.some(t => t.test(e))
            }
        },
        1419: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createViewportPropsSDKFactory = void 0;
            const i = r(208),
                a = r(82);
            t.createViewportPropsSDKFactory = e => t => {
                const {
                    metaData: r,
                    getSdkInstance: o,
                    create$w: n,
                    createEvent: s
                } = t, l = (e, t) => a.createCompSchemaValidator(r.role)(e, {
                    type: ["function"]
                }, t);
                return {
                    onViewportEnter: r => l(r, "onViewportEnter") ? (null == e || e("onViewportEnter", () => {
                        const e = s({
                                type: "viewportEnter"
                            }),
                            t = n();
                        r(e, t)
                    }), i.registerCorvidEvent("onViewportEnter", t, r)) : o(),
                    onViewportLeave: r => l(r, "onViewportLeave") ? (null == e || e("onViewportLeave", () => {
                        const e = s({
                                type: "viewportLeave"
                            }),
                            t = n();
                        r(e, t)
                    }), i.registerCorvidEvent("onViewportLeave", t, r)) : o()
                }
            }
        },
        1420: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2769), t), a(r(2770), t)
        },
        1421: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.LinkTypeError = t.InvalidMenuDepthError = t.InvalidTargetError = t.InvalidLabelError = void 0;
            const i = r(324),
                a = r(81);
            class o extends i.NilAssignmentError {
                constructor(e) {
                    super({
                        functionName: "menuItems",
                        propertyName: "label",
                        index: e
                    }), this.name = "InvalidLabelError"
                }
            }
            t.InvalidLabelError = o;
            class n extends Error {
                constructor({
                    index: e,
                    label: t,
                    target: r
                }) {
                    super(a.messageTemplates.error_menu_items_target({
                        index: e,
                        label: t,
                        target: r
                    })), this.name = "InvalidTargetError"
                }
            }
            t.InvalidTargetError = n;
            class s extends Error {
                constructor(e, t) {
                    super(a.messageTemplates.error_menu_items_depth({
                        labelValue: t,
                        maxLevels: e
                    })), this.name = "InvalidMenuDepth"
                }
            }
            t.InvalidMenuDepthError = s;
            class l extends i.UnsupportedLinkTypeError {
                constructor(e, t) {
                    super({
                        functionName: "menuItems",
                        propertyName: "link",
                        wrongValue: e,
                        index: t
                    })
                }
            }
            t.LinkTypeError = l
        },
        1422: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2802), t), a(r(2803), t), a(r(2804), t), a(r(2805), t), a(r(2806), t), a(r(2807), t), a(r(1423), t), a(r(2808), t), a(r(2809), t), a(r(2810), t), a(r(2811), t), a(r(2812), t), a(r(2813), t), a(r(2814), t), a(r(2815), t), a(r(2816), t), a(r(2817), t), a(r(2818), t), a(r(2819), t), a(r(2820), t), a(r(2821), t), a(r(2822), t)
        },
        1423: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                    value: !0
                }), t.getInvalidScreenReaderValueError = t.getNotSelectorError = t.getNotTextSelectorError = t.ErrorMessages = t.REMOVABLE_ATTRIBUTES = void 0, t.REMOVABLE_ATTRIBUTES = ["ariaLabel"],
                function(e) {
                    e.ARIA_LABEL_NOT_STRING = "aria-label must be string", e.ARIA_LABEL_EMPTY_STRING = "aria-label can't be an empty string", e.REMOVING_MISSING_ATTRIBUTE = "Cannot remove a non existing attribute"
                }(t.ErrorMessages || (t.ErrorMessages = {}));
            t.getNotTextSelectorError = e => `The parameter that is passed to the \u2018${e}\u2019 property must be a selector function of a text element.`;
            t.getNotSelectorError = e => `The parameter that is passed to the \u2018${e}\u2019 property must be a selector function of an element.`;
            t.getInvalidScreenReaderValueError = e => `The parameter that is passed to the \u2018${e}\u2019 property must be a string or \u2018null\u2019.`
        },
        1630: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.is = t.isSVG = t.isWixMediaUrl = t.isWixSVGShape = t.isInlineSvg = t.isUrl = t.isEmail = t.isBelow = t.isAbove = t.isIn = t.isNil = t.isInteger = t.isObject = t.isArray = t.isFunction = t.isDate = t.isBoolean = t.isString = t.isNumber = void 0;
            const i = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,
                a = /^(?:(?:https?:)\/\/)(?:(?:[\u0400-\uA69F\w][\u0400-\uA69F\w-]*)?[\u0400-\uA69F\w]\.)+(?:[\u0400-\uA69Fa-z]+|\d{1,3})(?::[\d]{1,5})?(?:[/?#].*)?$/i,
                o = /^wix:vector:\/\/v1\/svgshape\.v[12]/,
                n = /^wix:vector:\/\/v1\/[0-9|a-z|_]+.svg/;

            function s(e) {
                return Array.isArray(e)
            }

            function l(e) {
                return a.test(e)
            }

            function c(e) {
                return e.startsWith("<svg") || e.startsWith('<?xml version="1.0" encoding="UTF-8"?><svg')
            }

            function d(e) {
                return o.test(e)
            }

            function u(e) {
                return n.test(e)
            }
            t.isNumber = function(e) {
                return "number" == typeof e && !Number.isNaN(e)
            }, t.isString = function(e) {
                return "string" == typeof e
            }, t.isBoolean = function(e) {
                return !0 === e || !1 === e
            }, t.isDate = function(e) {
                return e instanceof Date && !Number.isNaN(e.getTime())
            }, t.isFunction = function(e) {
                return "function" == typeof e
            }, t.isArray = s, t.isObject = function(e) {
                return "object" == typeof e && null !== e && !s(e)
            }, t.isInteger = function(e) {
                return Number.isInteger(e)
            }, t.isNil = function(e) {
                return null == e
            }, t.isIn = function(e, t) {
                return t.includes(e)
            }, t.isAbove = function(e, t) {
                return e > t
            }, t.isBelow = function(e, t) {
                return e < t
            }, t.isEmail = function(e) {
                return i.test(e)
            }, t.isUrl = l, t.isInlineSvg = c, t.isWixSVGShape = d, t.isWixMediaUrl = u, t.isSVG = function(e) {
                return Boolean(e && (u(e) || l(e) || c(e) || d(e)))
            }, t.is = function(e, t) {
                return t.every(t => t(e))
            }
        },
        1631: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.templates = void 0, t.templates = {
                warning_not_null: ({
                    propertyName: e,
                    functionName: t
                }) => `The ${e} parameter that is passed to the ${t} method cannot be set to null.`,
                warning_non_images_in_gallery: ({
                    galleryId: e
                }) => `Gallery "${e}" cannot contain items that are not images. To also display video and text, choose a gallery that supports those types.`,
                warning_invalid_effect_name: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    infoLink: i
                }) => `The "${e}" function called on "${t}" was executed without the "${r}" effect because it is an invalid effectName value. Read more about effects: "${i}"')`,
                warning_invalid_effect_option: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    effectOption: i,
                    effectOptionRef: a
                }) => `The "${e}" function called on "${t}" was executed without the "${r}" effect because it was called with the following invalid effectOptions keys: ${i}. Read more about the effectOptions object: "https://www.wix.com/code/reference/$w.EffectOptions.html#${a}"`,
                warning_effect_options_not_set: ({
                    propertyName: e,
                    compName: t,
                    infoLink: r
                }) => `The "${e}" function called on "${t}" was executed without the specified effect options because it was called without an effect. Read more about effects: "${r}"')`,
                warning_invalid_effect_options: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    wrongProperty: i,
                    wrongValue: a,
                    infoLink: o
                }) => `The "${e}" function called on "${t}" was executed without the "${r}" effect because it was called with the following invalid effectOptions ${i}: ${a}. Read more about the effectOptions object: "${o}"')`,
                warning_deprecated_effect_name: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    infoLink: i
                }) => `The "${e}" function  called on "${t}" was called with the following deprecated effect: "${r}". Read more about effects: "${i}"')`,
                warning_deprecated_effect_with_options: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    infoLink: i
                }) => `The "${e}" function  called on "${t}" was executed without the specified effect options because it was called with the following deprecated effect: "${r}". Read more about effects: "${i}"`,
                warning_invalid_type_effect_options: ({
                    propertyName: e,
                    compName: t,
                    effectName: r,
                    wrongValue: i,
                    infoLink: a
                }) => `The "${e}" function called on "${t}" was executed without the "${r}" effect because the it was called with the following invalid effectOptions "${i}". The effectOptions must be of type Object. Read more about the effectOptions object: "${a}"'`,
                error_bad_image_format_with_index: ({
                    propertyName: e,
                    wrongValue: t,
                    index: r
                }) => `The "${e}" property of the item at index ${r} cannot be set to "${t}". It must be a valid URL starting with "http://", "https://", or "wix:image://".`,
                error_invalid_type_for_file_limit: ({
                    propertyName: e
                }) => `The ${e} property is not yet supported for Document or Audio file types.`,
                warning_not_null_for_comp_name: ({
                    propertyName: e,
                    functionName: t,
                    compName: r
                }) => `The ${e} parameter of "${r}" that is passed to the ${t} method cannot be set to null.`,
                warning_not_null_with_index: ({
                    propertyName: e,
                    functionName: t,
                    index: r
                }) => `The ${e} parameter of item at index ${r} that is passed to the ${t} method cannot be set to null or undefined.`,
                warning_invalid_option: ({
                    propertyName: e,
                    wrongValue: t,
                    index: r
                }) => `The ${e} parameter at index ${r} that is passed to the options function cannot be set to ${JSON.stringify(t)}. Options must contain either a non-null value or a non-null label.`,
                warning_color_casting_performed: ({
                    propertyName: e,
                    compName: t,
                    infoLink: r
                }) => ` The value of "${e}" property of "${t}" expects an rgbColor value, but was set to an rgbaColor value. The color value has been set, but the alpha opacity information has been ignored. Read more about rgbColor values: "${r}"`,
                warning_value_changed: ({
                    propertyName: e,
                    compName: t,
                    newValue: r,
                    changedProperty: i
                }) => `The ${e} of ${t} was set to ${r}, which is less than ${t}'s ${i} value. ${t} cannot have a ${i} value which is greater than its ${e} value. The value of ${i} has therefore been set to ${r}.`,
                warning_at_least: ({
                    propertyName: e,
                    wrongValue: t,
                    minValue: r
                }) => `The value of ${e} property should not be set to the value ${t}. It should be at least ${r}.`,
                warning_at_most: ({
                    propertyName: e,
                    wrongValue: t,
                    maxValue: r
                }) => `The value of ${e} property should not be set to the value ${t}. It should be at most ${r}.`,
                error_mandatory_val: ({
                    propertyName: e,
                    functionName: t
                }) => `The ${e} parameter is required for ${t} method.`,
                error_mandatory_val_with_index: ({
                    propertyName: e,
                    functionName: t,
                    index: r
                }) => `The ${e} parameter of item at index ${r} is required for ${t} method.`,
                error_length_in_range: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    maximum: a
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}". Its length must be between ${i} and ${a}.`,
                error_length_in_range_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    maximum: a,
                    index: o
                }) => `The ${e} parameter of item at index ${o} that is passed to the ${t} method cannot be set to the value "${r}". Its length must be between ${i} and ${a}.`,
                error_length_accept_single_value: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedValue: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}". Its length must be ${i}.`,
                error_length_accept_single_value_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedValue: i,
                    index: a
                }) => `The ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value "${r}". Its length must be ${i}.`,
                error_length_less_than: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}" because its length is shorter than ${i}.`,
                error_length_less_than_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    index: a
                }) => `The ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value "${r}" because its length is shorter than ${i}.`,
                error_length_exceeds: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    maximum: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}" because its length exceeds ${i}.`,
                error_length_exceeds_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    maximum: i,
                    index: a
                }) => `The ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value "${r}" because its length exceeds ${i}.`,
                error_range: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    maximum: a
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}". It must be between ${i} and ${a}.`,
                error_range_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    maximum: a,
                    index: o
                }) => `The ${e} parameter of item at index ${o} that is passed to the ${t} method cannot be set to the value "${r}". It must be between ${i} and ${a}.`,
                error_accept_single_value: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedValue: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value "${r}". It must be ${i}.`,
                error_accept_single_value_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedValue: i,
                    index: a
                }) => `The ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value "${r}". It must be ${i}.`,
                error_larger_than: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. It must be larger than ${i}.`,
                error_at_least: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. It must be at least ${i}.`,
                error_larger_than_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    minimum: i,
                    index: a
                }) => `The value of ${e} parameter of item at ${a} that is passed to the ${t} method cannot be set to the value ${r}. It must be larger than ${i}.`,
                error_less_than: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    maximum: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. It must be less than ${i}.`,
                error_less_than_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    maximum: i,
                    index: a
                }) => `The value of ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value ${r}. It must be less than ${i}.`,
                error_type: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedType: i
                }) => `The ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. It must be of type ${i}.`,
                error_type_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    expectedType: i,
                    index: a
                }) => `The ${e} parameter of item at index ${a} that is passed to the ${t} method cannot be set to the value ${r}. It must be of type ${i}.`,
                error_bad_format: ({
                    propertyName: e,
                    functionName: t,
                    value: r
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. Bad format`,
                error_effects_input: ({
                    functionName: e,
                    wrongEffects: t,
                    allowedEffects: r
                }) => `Passed  effects: "${t.join('", "')}" to the ${e} method are wrong for this element. Allowed effects are: "${r.join('", "')}".`,
                error_slide_input: ({
                    propertyName: e,
                    functionName: t,
                    slideShowId: r,
                    value: i,
                    minimum: a,
                    maximum: o
                }) => `The "${e}" parameter that is passed to the "${t}" method cannot be set to the value ${i}. It must be a slide from the "${r}" slideshow or an index between ${a} and ${o}`,
                error_state_input: ({
                    propertyName: e,
                    functionName: t,
                    stateBoxId: r,
                    value: i
                }) => `The "${e}" parameter that is passed to the "${t}" method cannot be set to the value ${i}. It must be a state from the "${r}" statebox`,
                error_bad_format_with_index: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    index: i
                }) => `The "${e}" property of the item at index ${i} that is passed to the ${t} method cannot be set to "${r}". Bad format`,
                error_bad_format_with_hint: ({
                    propertyName: e,
                    functionName: t,
                    wrongValue: r,
                    hint: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. Bad format, must be ${i} format.`,
                error_object_bad_format: ({
                    keyName: e,
                    propertyName: t,
                    functionName: r,
                    wrongValue: i,
                    message: a
                }) => `The value of ${e} in ${t} parameter that is passed to the ${r} method cannot be set to the value ${i}. ${a}`,
                error_object_bad_format_with_index: ({
                    keyName: e,
                    propertyName: t,
                    index: r,
                    functionName: i,
                    wrongValue: a,
                    message: o
                }) => `The value of ${e} of item at index ${r} in ${t} parameter that is passed to the ${i} method cannot be set to the value ${a}. ${o}`,
                error_bad_svg_format: ({
                    propertyName: e,
                    value: t
                }) => `The "${e}" property cannot be set to "${t}". It must be a valid SVG XML string or an SVG source starting with "http://", "https://", or "wix:vector://v1/".`,
                error_target_w_photo: ({
                    target: e
                }) => `The target parameter that is passed to the target method cannot be set to the value ${e}. It must be of type from (_blank,_self).`,
                error_menu_items_target: ({
                    target: e,
                    label: t,
                    index: r
                }) => `The target parameter of the item with the label ${t} nested under the item at index ${r} that is passed to the target method cannot be set to the value ${e}. It must be of type from (_blank, _self).`,
                error_menu_items_depth: ({
                    labelValue: e,
                    maxLevels: t
                }) => `The menuItems parameter with the label "${e}" that is passed to the menuItems method cannot be nested at this level. Menus can be ${t} levels deep.`,
                error_menu_items_label: ({
                    index: e
                }) => `The value of the label parameter of the item at index ${e} that is passed to the label cannot be set to the value undefined, null, or an empty string, unless a label can be inferred from the item link's page title.`,
                error_bad_menu_item_format: ({
                    propertyName: e,
                    value: t
                }) => `The "${e}" property cannot be set to "${t}". It must be a valid URL starting with "http://", "https://", "image://", "wix:image://v1" or "wix:vector://v1/svgshape.v2".`,
                error_bad_menu_item_format_with_index: ({
                    propertyName: e,
                    value: t,
                    index: r
                }) => `The "${e}" property of the item at index ${r} cannot be set to "${t}". It must be a valid URL starting with "http://", "https://", "image://", "wix:image://v1" or "wix:vector://v1/svgshape.v2"`,
                error_invalid_css_value: ({
                    propertyName: e,
                    compName: t,
                    cssProperty: r,
                    exampleFormat: i,
                    infoLink: a
                }) => ` The "${e}" property of "${t}" was set to an invalid "${r}" value. The value is expected in the following format:"${i}". Read more about "${r}" values: "${a}"`,
                error_invalid_css_value_multiple_expected_formats: ({
                    propertyName: e,
                    compName: t,
                    cssProperty: r,
                    exampleFormats: i,
                    infoLink: a
                }) => ` The "${e}" property of "${t}" was set to an invalid "${r}" value. The value is expected in one of the following formats:"${i}". Read more about "${r}" values: "${a}"`,
                error_invalid_location: ({
                    propertyName: e,
                    index: t,
                    wrongValue: r
                }) => `The ${e} parameter at index ${t} that is passed to the markers function cannot be set to ${r}. You need to set either location object {longitude, latitude}, or a valid address - placeId.`,
                error_invalid_markers: ({
                    wrongValue: e
                }) => `The markers property cannot be set to ${e}. You need to set at least one marker in the array.`,
                error_only_getter: ({
                    propertyName: e,
                    compType: t
                }) => `Cannot set property ${e} of ${t} which has only a getter.`,
                error_invalid_url: ({
                    url: e,
                    type: t,
                    prefix: r
                }) => `The "src" property cannot be set to "${e}". It must be a valid URL starting with "http://", "https://", or a valid ${t} URL starting with ${r}.`,
                error_supported_link_type_with_index: ({
                    functionName: e,
                    wrongValue: t,
                    index: r
                }) => `The link property of item at index ${r} that is passed to the ${e} method cannot be set to the value "${t}" as this is not a supported link type.`,
                error_invalid_target_with_index: ({
                    functionName: e,
                    wrongValue: t,
                    index: r
                }) => `The target parameter of item at index ${r} that is passed to the ${e} method cannot be set to the value ${t}. It must be of type from (_blank,_self).`,
                warning_unsupported_function_for_type: ({
                    functionName: e,
                    type: t
                }) => `'${e}' is not supported for an element of type: ${t}.`,
                error_bad_iana_timezone: ({
                    timeZoneIANA: e
                }) => `Invalid IANA time zone specified: "${e}"`,
                error_invalid_option_fields: ({
                    propertyName: e,
                    wrongValue: t,
                    fields: r,
                    index: i
                }) => `The ${e} at index ${i} cannot be set to ${JSON.stringify(t)}. Options must contain at least a non-null ${r[0]} or a non-null ${r[1]}.`,
                error_item_external_link: ({
                    propertyName: e,
                    functionName: t,
                    index: r
                }) => `The ${e} of the ${t} parameter of item at index ${r} that is passed to the items method cannot be an external link. It must be a link to a page on your site.`,
                error_unsupported_property_with_hint: ({
                    propertyName: e,
                    hint: t
                }) => `The ${e} parameter cannot be set when ${t}`,
                error_item_not_found: ({
                    propertyName: e,
                    functionName: t,
                    value: r
                }) => `The ${e} parameter with value ${r} that is passed to the ${t} method is not found.`,
                error_array_length: ({
                    propertyName: e,
                    functionName: t,
                    value: r,
                    arrayLength: i
                }) => `The value of ${e} parameter that is passed to the ${t} method cannot be set to the value ${r}. Its length must be at least ${i}.`
            }
        },
        1632: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.basePropsSDKFactory = void 0;
            t.basePropsSDKFactory = ({
                handlers: e,
                metaData: t
            }) => {
                const {
                    compId: r,
                    connection: i,
                    compType: a,
                    isGlobal: o,
                    getParent: n,
                    role: s,
                    wixCodeId: l
                } = t, c = "$w." + a;
                return {get id() {
                        return l || s
                    },
                    get role() {
                        return s
                    },
                    get connectionConfig() {
                        return null == i ? void 0 : i.config
                    },
                    get uniqueId() {
                        return r
                    },
                    get parent() {
                        return n()
                    },
                    get global() {
                        return o()
                    },
                    get type() {
                        return c
                    },
                    scrollTo: () => new Promise(t => e.scrollToComponent(r, t)),
                    toJSON: () => ({
                        id: s,
                        type: c,
                        global: o()
                    })
                }
            }
        },
        1633: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createVisibilityPropsSDKFactory = void 0;
            const i = r(112),
                a = r(1634),
                o = r(1419);
            t.createVisibilityPropsSDKFactory = e => t => ((e, t = !1) => {
                const [r, n] = e.createSdkState({
                    onViewportEnter: [],
                    onViewportLeave: []
                }, "viewport"), s = a.createHiddenCollapsedSDKFactory({
                    viewportState: r,
                    hasPortal: t
                }), l = o.createViewportPropsSDKFactory((e, t) => {
                    n({
                        [e]: [...r[e], t]
                    })
                });
                return i.composeSDKFactories(s, l)(e)
            })(t, e)
        },
        1634: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createHiddenCollapsedSDKFactory = void 0;
            const i = r(2766),
                a = r(1420);
            t.createHiddenCollapsedSDKFactory = ({
                viewportState: e,
                hasPortal: t = !1
            } = {}) => ({
                setStyles: r,
                portal: o,
                metaData: n,
                getSdkInstance: s,
                runAnimation: l,
                createSdkState: c,
                styleUtils: d,
                setProps: u
            }) => {
                const p = i.createEffectValidation({
                        compName: n.role
                    }),
                    [f, m] = c({
                        hidden: n.hiddenOnLoad,
                        collapsed: n.collapsedOnLoad
                    }, "hidden-collapsed");
                return {
                    hide: async(i, n) => {
                        var s;
                        if (u({
                                hidden: !0
                            }), f.collapsed || f.hidden) m({
                            hidden: !0
                        });
                        else {
                            if (p({
                                    effectName: i,
                                    effectOptions: n,
                                    propertyName: "hide"
                                })) {
                                const e = {
                                    animationDirection: a.EFFECTS.HIDE.suffix,
                                    effectName: i,
                                    effectOptions: Object.assign(Object.assign({}, (null === a.effectDefaultOptions || void 0 === a.effectDefaultOptions ? void 0 : a.effectDefaultOptions[i]) || a.sharedEffectDefaultOptions), n)
                                };
                                await Promise.all([l(e), t ? o.runAnimation(e) : void 0])
                            } else r(d.getHiddenStyles()), t && o.setStyles(d.getHiddenStyles());
                            m({
                                hidden: !0
                            }), null === (s = null == e ? void 0 : e.onViewportLeave) || void 0 === s || s.forEach(e => e())
                        }
                    },
                    show: async(i, n) => {
                        var s;
                        if (u({
                                hidden: !1
                            }), !f.collapsed && f.hidden) {
                            if (p({
                                    effectName: i,
                                    effectOptions: n,
                                    propertyName: "show"
                                })) {
                                const e = {
                                    animationDirection: a.EFFECTS.SHOW.suffix,
                                    effectName: i,
                                    effectOptions: Object.assign(Object.assign({}, (null === a.effectDefaultOptions || void 0 === a.effectDefaultOptions ? void 0 : a.effectDefaultOptions[i]) || a.sharedEffectDefaultOptions), n)
                                };
                                await Promise.all([l(e), t ? o.runAnimation(e) : void 0])
                            } else r(d.getShownStyles()), t && o.setStyles(d.getShownStyles());
                            m({
                                hidden: !1
                            }), null === (s = null == e ? void 0 : e.onViewportEnter) || void 0 === s || s.forEach(e => e())
                        } else m({
                            hidden: !1
                        })
                    },
                    collapse: async() => {
                        var i;
                        u({
                            collapsed: !0
                        }), f.collapsed || (r(d.getCollapsedStyles()), t && o.setStyles(d.getCollapsedStyles()), m({
                            collapsed: !0
                        }), f.hidden || null === (i = null == e ? void 0 : e.onViewportLeave) || void 0 === i || i.forEach(e => e()))
                    },
                    expand: async() => {
                        var i;
                        if (u({
                                collapsed: !1
                            }), f.collapsed) {
                            const a = Object.assign(Object.assign({}, d.getExpandedStyles()), {
                                visibility: f.hidden ? "hidden" : null
                            });
                            r(a), t && o.setStyles(a), m({
                                collapsed: !1
                            }), f.hidden || null === (i = null == e ? void 0 : e.onViewportEnter) || void 0 === i || i.forEach(e => e())
                        }
                    },
                    get collapsed() {
                        return f.collapsed
                    },
                    get hidden() {
                        return Boolean(f.hidden)
                    },
                    get isVisible() {
                        if (!n.isRendered()) return !1;
                        let e = s();
                        for (; e;) {
                            if (e.hidden || e.collapsed) return !1;
                            e = e.parent
                        }
                        return !0
                    },
                    get isAnimatable() {
                        return !0
                    }
                }
            }
        },
        1635: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.effectsValidationSchema = void 0;
            const i = {
                    type: ["number", "nil"],
                    minimum: 0,
                    maximum: 4e3
                },
                a = {
                    type: ["number", "nil"],
                    minimum: 0,
                    maximum: 8e3
                },
                o = {
                    type: ["string", "nil"],
                    enum: ["left", "right", "top", "bottom"]
                };
            t.effectsValidationSchema = {
                arc: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: {
                            type: ["string", "nil"],
                            enum: ["left", "right"]
                        }
                    }
                },
                bounce: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: {
                            type: ["string", "nil"],
                            enum: ["topLeft", "topRight", "bottomRight", "bottomLeft", "center"]
                        },
                        intensity: {
                            type: ["string", "nil"],
                            enum: ["soft", "medium", "hard"]
                        }
                    }
                },
                puff: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a
                    }
                },
                zoom: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a
                    }
                },
                fade: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a
                    }
                },
                flip: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                float: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                fly: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                fold: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                glide: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        angle: {
                            type: ["number", "nil"],
                            minimum: 0,
                            maximum: 360
                        },
                        distance: {
                            type: ["number", "nil"],
                            minimum: 0,
                            maximum: 300
                        }
                    }
                },
                roll: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                slide: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: o
                    }
                },
                spin: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: {
                            type: ["string", "nil"],
                            enum: ["cw", "ccw"]
                        },
                        cycles: {
                            type: ["number", "nil"],
                            minimum: 1,
                            maximum: 15
                        }
                    }
                },
                turn: {
                    type: ["object"],
                    properties: {
                        duration: i,
                        delay: a,
                        direction: {
                            type: ["string", "nil"],
                            enum: ["right", "left"]
                        }
                    }
                }
            }
        },
        1636: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.changePropsSDKFactory = void 0;
            const i = r(208);
            t.changePropsSDKFactory = e => ({
                onChange: t => i.registerCorvidEvent("onChange", e, t)
            })
        },
        1637: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.clickPropsSDKFactory = void 0;
            const i = r(208);
            t.clickPropsSDKFactory = e => ({
                onClick: t => i.registerCorvidMouseEvent("onClick", e, t),
                onDblClick: t => i.registerCorvidMouseEvent("onDblClick", e, t)
            })
        },
        1638: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2791), t), a(r(2795), t), a(r(2796), t), a(r(2797), t), a(r(2798), t), a(r(2799), t), a(r(796), t), a(r(2800), t)
        },
        1639: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.isValidColor = t.isValidHexaOrHex = t.isValidRGBOrRGBA = t.isKeyword = t.isHexaColor = t.isHexColor = t.isRGBColor = t.isRGBAColor = void 0;
            const i = r(1640);

            function a(e) {
                return /\b([R][G][B][A][(]\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\s*,\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\s*,\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])(\s*,\s*((0\.[0-9]*)|(1\.0)|(1)|(0)))?[)])/i.test(e)
            }

            function o(e) {
                return /\b([R][G][B][(]\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\s*,\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\s*,\s*([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])(\s*)[)])/i.test(e)
            }

            function n(e) {
                return /^#(([a-f0-9]){3}){1,2}$/i.test(e)
            }

            function s(e) {
                return /^#([a-f0-9]{8}|[a-f0-9]{4})\b$/gi.test(e)
            }

            function l(e) {
                return i.colorKeywords[e]
            }

            function c(e) {
                return o(e) || a(e)
            }

            function d(e) {
                return s(e) || n(e)
            }
            t.isRGBAColor = a, t.isRGBColor = o, t.isHexColor = n, t.isHexaColor = s, t.isKeyword = l, t.isValidRGBOrRGBA = c, t.isValidHexaOrHex = d, t.isValidColor = function(e) {
                return d(e) || c(e) || l(e)
            }
        },
        1640: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.colorKeywords = void 0;
            t.colorKeywords = Object.assign(Object.assign(Object.assign(Object.assign({}, {
                black: "#000000",
                silver: "#c0c0c0",
                gray: "#808080",
                white: "#ffffff",
                maroon: "#800000",
                red: "#ff0000",
                purple: "#800080",
                fuchsia: "#ff00ff",
                green: "#008000",
                lime: "#00ff00",
                olive: "#808000",
                yellow: "#ffff00",
                navy: "#000080",
                blue: "#0000ff",
                teal: "#008080",
                aqua: "#00ffff"
            }), {
                orange: "#ffa500",
                aliceblue: "#f0f8ff",
                antiquewhite: "#faebd7",
                aquamarine: "#7fffd4",
                azure: "#f0ffff",
                beige: "#f5f5dc",
                bisque: "#ffe4c4",
                blanchedalmond: "#ffebcd",
                blueviolet: "#8a2be2",
                brown: "#a52a2a",
                burlywood: "#deb887",
                cadetblue: "#5f9ea0",
                chartreuse: "#7fff00",
                chocolate: "#d2691e",
                coral: "#ff7f50",
                cornflowerblue: "#6495ed",
                cornsilk: "#fff8dc",
                crimson: "#dc143c",
                cyan: "#00ffff",
                darkblue: "#00008b",
                darkcyan: "#008b8b",
                darkgoldenrod: "#b8860b",
                darkgray: "#a9a9a9",
                darkgreen: "#006400",
                darkgrey: "#a9a9a9",
                darkkhaki: "#bdb76b",
                darkmagenta: "#8b008b",
                darkolivegreen: "#556b2f",
                darkorange: "#ff8c00",
                darkorchid: "#9932cc",
                darkred: "#8b0000",
                darksalmon: "#e9967a",
                darkseagreen: "#8fbc8f",
                darkslateblue: "#483d8b",
                darkslategray: "#2f4f4f",
                darkslategrey: "#2f4f4f",
                darkturquoise: "#00ced1",
                darkviolet: "#9400d3",
                deeppink: "#ff1493",
                deepskyblue: "#00bfff",
                dimgray: "#696969",
                dimgrey: "#696969",
                dodgerblue: "#1e90ff",
                firebrick: "#b22222",
                floralwhite: "#fffaf0",
                forestgreen: "#228b22",
                gainsboro: "#dcdcdc",
                ghostwhite: "#f8f8ff",
                gold: "#ffd700",
                goldenrod: "#daa520",
                greenyellow: "#adff2f",
                grey: "#808080",
                honeydew: "#f0fff0",
                hotpink: "#ff69b4",
                indianred: "#cd5c5c",
                indigo: "#4b0082",
                ivory: "#fffff0",
                khaki: "#f0e68c",
                lavender: "#e6e6fa",
                lavenderblush: "#fff0f5",
                lawngreen: "#7cfc00",
                lemonchiffon: "#fffacd",
                lightblue: "#add8e6",
                lightcoral: "#f08080",
                lightcyan: "#e0ffff",
                lightgoldenrodyellow: "#fafad2"
            }), {
                lightgray: "#d3d3d3",
                lightgreen: "#90ee90",
                lightgrey: "#d3d3d3",
                lightpink: "#ffb6c1",
                lightsalmon: "#ffa07a",
                lightseagreen: "#20b2aa",
                lightskyblue: "#87cefa",
                lightslategray: "#778899",
                lightslategrey: "#778899",
                lightsteelblue: "#b0c4de",
                lightyellow: "#ffffe0",
                limegreen: "#32cd32",
                linen: "#faf0e6",
                magenta: "#ff00ff",
                mediumaquamarine: "#66cdaa",
                mediumblue: "#0000cd",
                mediumorchid: "#ba55d3",
                mediumpurple: "#9370db",
                mediumseagreen: "#3cb371",
                mediumslateblue: "#7b68ee",
                mediumspringgreen: "#00fa9a",
                mediumturquoise: "#48d1cc",
                mediumvioletred: "#c71585",
                midnightblue: "#191970",
                mintcream: "#f5fffa",
                mistyrose: "#ffe4e1",
                moccasin: "#ffe4b5",
                navajowhite: "#ffdead",
                oldlace: "#fdf5e6",
                olivedrab: "#6b8e23",
                orangered: "#ff4500",
                orchid: "#da70d6",
                palegoldenrod: "#eee8aa",
                palegreen: "#98fb98",
                paleturquoise: "#afeeee",
                palevioletred: "#db7093",
                papayawhip: "#ffefd5",
                peachpuff: "#ffdab9",
                peru: "#cd853f",
                pink: "#ffc0cb",
                plum: "#dda0dd",
                powderblue: "#b0e0e6",
                rosybrown: "#bc8f8f",
                royalblue: "#4169e1",
                saddlebrown: "#8b4513",
                salmon: "#fa8072",
                sandybrown: "#f4a460",
                seagreen: "#2e8b57",
                seashell: "#fff5ee",
                sienna: "#a0522d",
                skyblue: "#87ceeb",
                slateblue: "#6a5acd",
                slategray: "#708090",
                slategrey: "#708090",
                snow: "#fffafa",
                springgreen: "#00ff7f",
                steelblue: "#4682b4",
                tan: "#d2b48c",
                thistle: "#d8bfd8",
                tomato: "#ff6347",
                turquoise: "#40e0d0",
                violet: "#ee82ee",
                wheat: "#f5deb3",
                whitesmoke: "#f5f5f5",
                yellowgreen: "#9acd32"
            }), {
                rebeccapurple: "#663399"
            })
        },
        1811: function(e, t, r) {
            "use strict";
            r.d(t, "a", (function() {
                return o
            }));
            var i, a = r(7);
            ! function(e) {
                e.none = "disabled", e.expand = "zoomMode", e.link = "goToLink"
            }(i || (i = {}));
            const o = Object(a.withValidation)(({
                setProps: e,
                props: t
            }) => ({get clickAction() {
                    const {
                        imageOnClickAction: e
                    } = t;
                    switch (e) {
                        case "disabled":
                            return "none";
                        case "goToLink":
                            return "link";
                        default:
                        case "zoomMode":
                            return "expand"
                    }
                },
                set clickAction(t) {
                    const r = a.assert.isNil(t) ? i.none : i[t];
                    e({
                        imageOnClickAction: r
                    })
                }
            }), {
                type: ["object"],
                properties: {
                    clickAction: {
                        warnIfNil: !0,
                        type: ["string"],
                        enum: Object.keys(i)
                    }
                }
            })
        },
        1812: function(e, t, r) {
            "use strict";
            r.d(t, "a", (function() {
                return o
            }));
            var i = r(7),
                a = r(462);
            const o = e => ({
                onItemClicked(t) {
                    Object(i.registerCorvidEvent)("onItemClicked", e, t, ({
                        componentEvent: t
                    }) => {
                        const r = Object(a.a)([e.props.items[t.itemIndex]], e.platformUtils.linkUtils)[0];
                        return Object.assign(Object.assign({}, t), {
                            item: r
                        })
                    })
                }
            })
        },
        195: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2748), t)
        },
        208: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2764), t)
        },
        2744: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.invalidArrayLength = t.nonExistingItem = t.unsupportedPropertyMessageWithHint = t.invalidItemLink = t.invalidOptionFields = t.invalidObjectFormatWithCustomMessage = t.invalidFormatMessageWithHint = t.onlyGetter = t.invalidOption = t.invalidMenuItemMessage = t.invalidSvgValue = t.unsupportedFunctionForType = t.invalidTargetWithIndex = t.unsupportedLinkType = t.invalidFileTypeForFileLimit = t.invalidImageInGalleryWithIndex = t.invalidStateInputMessage = t.invalidSlideInputMessage = t.noneImageInGallery = t.patternMismatchMessage = t.invalidEnumValueMessage = t.invalidTypeMessage = t.invalidNumberBoundsMessage = t.invalidStringLengthMessage = t.missingFieldMessage = t.nilAssignmentMessage = void 0;
            const i = r(44),
                a = r(1631);
            t.nilAssignmentMessage = ({
                compName: e,
                functionName: t,
                propertyName: r,
                index: o
            }) => i.assert.isNumber(o) ? a.templates.warning_not_null_with_index({
                propertyName: r,
                functionName: t,
                index: o
            }) : e ? a.templates.warning_not_null_for_comp_name({
                compName: e,
                functionName: t,
                propertyName: r
            }) : a.templates.warning_not_null({
                functionName: t,
                propertyName: r
            });
            t.missingFieldMessage = ({
                functionName: e,
                propertyName: t,
                index: r
            }) => i.assert.isNumber(r) ? a.templates.error_mandatory_val_with_index({
                functionName: e,
                propertyName: t,
                index: r
            }) : a.templates.error_mandatory_val({
                functionName: e,
                propertyName: t
            });
            t.invalidStringLengthMessage = ({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: o,
                minimum: n,
                index: s
            }) => n && o ? n === o ? i.assert.isNumber(s) ? a.templates.error_length_accept_single_value_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                expectedValue: n,
                index: s
            }) : a.templates.error_length_accept_single_value({
                functionName: e,
                propertyName: t,
                value: r,
                expectedValue: n
            }) : i.assert.isNumber(s) ? a.templates.error_length_in_range_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: o,
                minimum: n,
                index: s
            }) : a.templates.error_length_in_range({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: o,
                minimum: n
            }) : !n && o ? i.assert.isNumber(s) ? a.templates.error_length_exceeds_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: o,
                index: s
            }) : a.templates.error_length_exceeds({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: o
            }) : i.assert.isNumber(s) ? a.templates.error_length_less_than_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                minimum: n,
                index: s
            }) : a.templates.error_length_less_than({
                functionName: e,
                propertyName: t,
                value: r,
                minimum: n
            });
            t.invalidNumberBoundsMessage = ({
                functionName: e,
                propertyName: t,
                value: r,
                minimum: o,
                maximum: n,
                index: s
            }) => o && n ? o === n ? i.assert.isNumber(s) ? a.templates.error_accept_single_value_with_index({
                functionName: e,
                propertyName: t,
                expectedValue: o,
                value: r,
                index: s
            }) : a.templates.error_accept_single_value({
                functionName: e,
                propertyName: t,
                expectedValue: o,
                value: r
            }) : i.assert.isNumber(s) ? a.templates.error_range_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: n,
                minimum: o,
                index: s
            }) : a.templates.error_range({
                functionName: e,
                propertyName: t,
                value: r,
                maximum: n,
                minimum: o
            }) : !o && n ? i.assert.isNumber(s) ? a.templates.error_less_than_with_index({
                functionName: e,
                propertyName: t,
                maximum: n,
                value: r,
                index: s
            }) : a.templates.error_less_than({
                functionName: e,
                propertyName: t,
                maximum: n,
                value: r
            }) : i.assert.isNumber(s) ? a.templates.error_larger_than_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                minimum: o,
                index: s
            }) : a.templates.error_larger_than({
                functionName: e,
                propertyName: t,
                value: r,
                minimum: o
            });
            t.invalidTypeMessage = ({
                functionName: e,
                propertyName: t,
                types: r,
                value: o,
                index: n
            }) => {
                const s = r.map(e => "nil" === e ? "null" : e).join(",");
                return i.assert.isNumber(n) ? a.templates.error_type_with_index({
                    functionName: e,
                    index: n,
                    propertyName: t,
                    value: o,
                    expectedType: s
                }) : a.templates.error_type({
                    functionName: e,
                    propertyName: t,
                    value: o,
                    expectedType: s
                })
            };
            t.invalidEnumValueMessage = ({
                functionName: e,
                propertyName: t,
                value: r,
                enum: o,
                index: n
            }) => {
                const s = `from (${o.join(",")})`;
                return i.assert.isNumber(n) ? a.templates.error_type_with_index({
                    functionName: e,
                    propertyName: t,
                    value: r,
                    expectedType: s,
                    index: n
                }) : a.templates.error_type({
                    functionName: e,
                    propertyName: t,
                    value: r,
                    expectedType: s
                })
            };
            t.patternMismatchMessage = ({
                functionName: e,
                propertyName: t,
                value: r,
                index: o
            }) => i.assert.isNumber(o) ? a.templates.error_bad_format_with_index({
                functionName: e,
                propertyName: t,
                value: r,
                index: o
            }) : a.templates.error_bad_format({
                functionName: e,
                propertyName: t,
                value: r
            });
            t.noneImageInGallery = e => a.templates.warning_non_images_in_gallery({
                galleryId: e
            });
            t.invalidSlideInputMessage = ({
                functionName: e,
                propertyName: t,
                slideShowId: r,
                value: i,
                minimum: o,
                maximum: n
            }) => a.templates.error_slide_input({
                functionName: e,
                propertyName: t,
                slideShowId: r,
                value: i,
                maximum: n,
                minimum: o
            });
            t.invalidStateInputMessage = ({
                functionName: e,
                propertyName: t,
                stateBoxId: r,
                value: i
            }) => a.templates.error_state_input({
                functionName: e,
                propertyName: t,
                stateBoxId: r,
                value: i
            });
            t.invalidImageInGalleryWithIndex = ({
                wrongValue: e,
                propertyName: t,
                index: r
            }) => a.templates.error_bad_image_format_with_index({
                propertyName: t,
                index: r,
                wrongValue: e
            });
            t.invalidFileTypeForFileLimit = ({
                propertyName: e
            }) => a.templates.error_invalid_type_for_file_limit({
                propertyName: e
            });
            t.unsupportedLinkType = ({
                functionName: e,
                wrongValue: t,
                index: r
            }) => a.templates.error_supported_link_type_with_index({
                functionName: e,
                wrongValue: t,
                index: r
            });
            t.invalidTargetWithIndex = ({
                functionName: e,
                wrongValue: t,
                index: r
            }) => a.templates.error_invalid_target_with_index({
                functionName: e,
                wrongValue: t,
                index: r
            });
            t.unsupportedFunctionForType = ({
                functionName: e,
                type: t
            }) => a.templates.warning_unsupported_function_for_type({
                functionName: e,
                type: t
            });
            t.invalidSvgValue = e => a.templates.error_bad_svg_format({
                propertyName: "src",
                value: e
            });
            t.invalidMenuItemMessage = ({
                propertyName: e,
                value: t,
                index: r
            }) => i.assert.isNumber(r) ? a.templates.error_bad_menu_item_format_with_index({
                propertyName: e,
                value: t,
                index: r
            }) : a.templates.error_bad_menu_item_format({
                propertyName: e,
                value: t
            });
            t.invalidOption = ({
                propertyName: e,
                wrongValue: t,
                index: r
            }) => a.templates.warning_invalid_option({
                propertyName: e,
                wrongValue: t,
                index: r
            });
            t.onlyGetter = ({
                propertyName: e,
                compType: t
            }) => a.templates.error_only_getter({
                propertyName: e,
                compType: t
            });
            t.invalidFormatMessageWithHint = ({
                propertyName: e,
                functionName: t,
                wrongValue: r,
                hint: i
            }) => a.templates.error_bad_format_with_hint({
                propertyName: e,
                functionName: t,
                wrongValue: r,
                hint: i
            });
            t.invalidObjectFormatWithCustomMessage = ({
                keyName: e,
                propertyName: t,
                functionName: r,
                wrongValue: i,
                message: o
            }) => a.templates.error_object_bad_format({
                keyName: e,
                propertyName: t,
                functionName: r,
                wrongValue: i,
                message: o
            });
            t.invalidOptionFields = ({
                propertyName: e,
                wrongValue: t,
                fields: r,
                index: i
            }) => a.templates.error_invalid_option_fields({
                propertyName: e,
                wrongValue: t,
                fields: r,
                index: i
            });
            t.invalidItemLink = ({
                functionName: e,
                propertyName: t,
                index: r
            }) => a.templates.error_item_external_link({
                propertyName: t,
                functionName: e,
                index: r
            });
            t.unsupportedPropertyMessageWithHint = ({
                propertyName: e,
                hint: t
            }) => a.templates.error_unsupported_property_with_hint({
                propertyName: e,
                hint: t
            });
            t.nonExistingItem = ({
                functionName: e,
                propertyName: t,
                value: r
            }) => a.templates.error_item_not_found({
                propertyName: t,
                functionName: e,
                value: r
            });
            t.invalidArrayLength = ({
                functionName: e,
                propertyName: t,
                value: r,
                arrayLength: i
            }) => a.templates.error_array_length({
                propertyName: t,
                functionName: e,
                value: r,
                arrayLength: i
            })
        },
        2745: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.composeSDKFactories = void 0, t.composeSDKFactories = function(...e) {
                return t => {
                    const r = {};
                    for (let i = 0; i < e.length; i++) {
                        const a = e[i](t),
                            o = Object.keys(a);
                        for (let e = 0; e < o.length; e++) {
                            const t = o[e],
                                i = Object.getOwnPropertyDescriptor(a, t);
                            Object.defineProperty(r, t, i)
                        }
                    }
                    return r
                }
            }
        },
        2746: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            })
        },
        2747: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.isValidStateReference = void 0;
            const i = r(44),
                a = r(81),
                o = r(195);
            t.isValidStateReference = (e, t) => {
                const [r] = e, n = i.assert.isObject(r), s = t.getChildren();
                let l = -1;
                if (i.assert.isObject(r)) {
                    if (!Object.keys(s[0]).every(e => r.hasOwnProperty(e))) return o.reportError(a.messages.invalidTypeMessage({
                        propertyName: "stateReference",
                        functionName: "changeState",
                        value: r,
                        types: ["state", "string"],
                        index: void 0
                    })), !1;
                    l = s.findIndex(e => e.uniqueId === r.uniqueId)
                }
                return i.assert.isString(r) && (l = s.findIndex(e => e.role === r)), !(l < 0) || (o.reportError(a.messages.invalidStateInputMessage({
                    value: n ? r.role : r,
                    propertyName: "stateReference",
                    functionName: "changeState",
                    stateBoxId: t.metaData.role
                })), !1)
            }
        },
        2748: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.reportMessage = t.reportWarning = t.reportError = t.WIX_SDK_MESSAGE_TEXT = t.WIX_SDK_WARNING_TEXT = t.WIX_SDK_ERROR_TEXT = void 0, t.WIX_SDK_ERROR_TEXT = "Wix code SDK error:", t.WIX_SDK_WARNING_TEXT = "Wix code SDK warning:", t.WIX_SDK_MESSAGE_TEXT = "Wix code SDK message:";
            t.reportError = e => {
                console.error(`${t.WIX_SDK_ERROR_TEXT} ${e}`)
            };
            t.reportWarning = e => {
                console.warn(`${t.WIX_SDK_WARNING_TEXT} ${e}`)
            };
            t.reportMessage = e => {
                console.log(`${t.WIX_SDK_MESSAGE_TEXT} ${e}`)
            }
        },
        2749: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.withValidation = t.createCompSchemaValidator = void 0;
            const i = r(195),
                a = r(553);

            function o(e, {
                suppressIndexErrors: t = !1
            } = {}) {
                return a.createSchemaValidator({
                    reportError: i.reportError,
                    reportWarning: i.reportWarning
                }, e, {
                    suppressIndexErrors: t
                })
            }
            t.createCompSchemaValidator = o, t.withValidation = function(e, t, r = {}) {
                return i => {
                    const a = e(i),
                        n = o(i.metaData.role),
                        s = o(i.metaData.role, {
                            suppressIndexErrors: !0
                        });
                    return Object.keys(a).reduce((e, o) => {
                        const l = Object.getOwnPropertyDescriptor(a, o),
                            c = {
                                enumerable: !0,
                                configurable: !0
                            };
                        return l.value ? "function" == typeof l.value ? c.value = (...e) => {
                            const a = t.properties[o] && t.properties[o].args,
                                n = r[o];
                            let c = !0;
                            return a && (c = s(e, {
                                type: ["array"],
                                items: a
                            }, o)), c && n && (c = n.every(t => t(e, i))), c ? l.value(...e) : void 0
                        } : c.value = l.value : (l.get && (c.get = () => a[o]), l.set && (c.set = e => {
                            const s = r[o];
                            let l = !0;
                            t.properties[o] && (l = n(e, t.properties[o], o)), l && s && (l = s.every(t => t(e, i))), l && (a[o] = e)
                        })), Object.defineProperty(e, o, c), e
                    }, {})
                }
            }
        },
        2750: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateObject = t.validateArray = t.validateFunction = t.validateNil = t.validateDate = t.validateBoolean = t.validateString = t.validateInteger = t.validateNumber = void 0;
            var i = r(2751);
            Object.defineProperty(t, "validateNumber", {
                enumerable: !0,
                get: function() {
                    return i.validateNumber
                }
            });
            var a = r(2752);
            Object.defineProperty(t, "validateInteger", {
                enumerable: !0,
                get: function() {
                    return a.validateInteger
                }
            });
            var o = r(2753);
            Object.defineProperty(t, "validateString", {
                enumerable: !0,
                get: function() {
                    return o.validateString
                }
            });
            var n = r(2754);
            Object.defineProperty(t, "validateBoolean", {
                enumerable: !0,
                get: function() {
                    return n.validateBoolean
                }
            });
            var s = r(2755);
            Object.defineProperty(t, "validateDate", {
                enumerable: !0,
                get: function() {
                    return s.validateDate
                }
            });
            var l = r(2756);
            Object.defineProperty(t, "validateNil", {
                enumerable: !0,
                get: function() {
                    return l.validateNil
                }
            });
            var c = r(2757);
            Object.defineProperty(t, "validateFunction", {
                enumerable: !0,
                get: function() {
                    return c.validateFunction
                }
            });
            var d = r(2758);
            Object.defineProperty(t, "validateArray", {
                enumerable: !0,
                get: function() {
                    return d.validateArray
                }
            });
            var u = r(2759);
            Object.defineProperty(t, "validateObject", {
                enumerable: !0,
                get: function() {
                    return u.validateObject
                }
            })
        },
        2751: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateNumber = void 0;
            const i = r(553),
                a = r(44),
                o = r(81);
            t.validateNumber = function(e, t, r, n) {
                const {
                    minimum: s,
                    maximum: l,
                    enum: c
                } = t;
                return a.assert.isNumber(e) ? c && !a.assert.isIn(e, c) ? (r(o.messages.invalidEnumValueMessage(Object.assign({
                    value: e,
                    enum: c
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : a.assert.isNumber(s) && a.assert.isBelow(e, s) || a.assert.isNumber(l) && a.assert.isAbove(e, l) ? (r(o.messages.invalidNumberBoundsMessage(Object.assign({
                    value: e,
                    minimum: s,
                    maximum: l
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : i.ValidationResult.Valid : i.ValidationResult.InvalidType
            }
        },
        2752: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateInteger = void 0;
            const i = r(553),
                a = r(44),
                o = r(81);
            t.validateInteger = function(e, t, r, n) {
                const {
                    minimum: s,
                    maximum: l,
                    enum: c
                } = t;
                return a.assert.isInteger(e) ? c && !a.assert.isIn(e, c) ? (r(o.messages.invalidEnumValueMessage(Object.assign({
                    value: e,
                    enum: c
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : a.assert.isNumber(s) && a.assert.isBelow(e, s) || a.assert.isNumber(l) && a.assert.isAbove(e, l) ? (r(o.messages.invalidNumberBoundsMessage(Object.assign({
                    value: e,
                    minimum: s,
                    maximum: l
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : i.ValidationResult.Valid : i.ValidationResult.InvalidType
            }
        },
        2753: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateString = void 0;
            const i = r(553),
                a = r(44),
                o = r(81);
            t.validateString = function(e, t, r, n) {
                const {
                    minLength: s,
                    maxLength: l,
                    enum: c,
                    pattern: d
                } = t;
                return a.assert.isString(e) ? c && !a.assert.isIn(e, c) ? (r(o.messages.invalidEnumValueMessage(Object.assign({
                    value: e,
                    enum: c
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : s && a.assert.isBelow(e.length, s) || l && a.assert.isAbove(e.length, l) ? (r(o.messages.invalidStringLengthMessage(Object.assign({
                    value: e,
                    minimum: s,
                    maximum: l
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : d && !new RegExp(d).test(e) ? (r(o.messages.patternMismatchMessage(Object.assign({
                    value: e
                }, n)), Object.assign(Object.assign({}, n), {
                    value: e
                })), i.ValidationResult.Invalid) : i.ValidationResult.Valid : i.ValidationResult.InvalidType
            }
        },
        2754: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateBoolean = void 0;
            const i = r(44),
                a = r(553);
            t.validateBoolean = function(e) {
                return i.assert.isBoolean(e) ? a.ValidationResult.Valid : a.ValidationResult.InvalidType
            }
        },
        2755: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateDate = void 0;
            const i = r(44),
                a = r(553);
            t.validateDate = function(e) {
                return i.assert.isDate(e) ? a.ValidationResult.Valid : a.ValidationResult.InvalidType
            }
        },
        2756: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateNil = void 0;
            const i = r(44),
                a = r(553);
            t.validateNil = function(e) {
                return i.assert.isNil(e) ? a.ValidationResult.Valid : a.ValidationResult.InvalidType
            }
        },
        2757: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateFunction = void 0;
            const i = r(44),
                a = r(553);
            t.validateFunction = function(e) {
                return i.assert.isFunction(e) ? a.ValidationResult.Valid : a.ValidationResult.InvalidType
            }
        },
        2758: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateArray = void 0;
            const i = r(553),
                a = r(44);

            function o(e) {
                return Array.isArray(e)
            }
            t.validateArray = function(e, t, r, n, s, l = !1) {
                if (!a.assert.isArray(e)) return i.ValidationResult.InvalidType;
                let c = i.ValidationResult.Valid;
                if (t.items) {
                    const a = o(t.items) ? Math.min(e.length, t.items.length) : e.length;
                    for (let n = 0; n < a; n++) {
                        const a = e[n];
                        let d, u;
                        o(t.items) ? (d = t.items[n], u = t.items[n].name) : (d = t.items, u = t.name);
                        r(a, d, {
                            functionName: s.functionName,
                            propertyName: u || s.propertyName,
                            index: l ? void 0 : n
                        }) || (c = i.ValidationResult.Invalid)
                    }
                }
                return c
            }
        },
        2759: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.validateObject = void 0;
            const i = r(553),
                a = r(44),
                o = r(81),
                n = Object.prototype.hasOwnProperty,
                s = Object.getOwnPropertyNames;
            t.validateObject = function(e, t, r, l, c, d) {
                if (!a.assert.isObject(e)) return i.ValidationResult.InvalidType;
                if (t.required)
                    for (let r = 0; r < t.required.length; r++)
                        if (!n.call(e, t.required[r])) return l(o.messages.missingFieldMessage({
                            functionName: d.functionName,
                            index: d.index,
                            propertyName: t.required[r]
                        }), Object.assign(Object.assign({}, d), {
                            value: e
                        })), i.ValidationResult.Invalid;
                if (t.properties) {
                    const a = s(t.properties);
                    for (let o = 0; o < a.length; o++) {
                        const s = a[o];
                        if (n.call(e, s)) {
                            const a = t.properties[s];
                            if (!r(e[s], a, {
                                    functionName: d.functionName,
                                    index: d.index,
                                    propertyName: s
                                })) return i.ValidationResult.Invalid
                        }
                    }
                }
                return i.ValidationResult.Valid
            }
        },
        2760: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__setModuleDefault || (Object.create ? function(e, t) {
                    Object.defineProperty(e, "default", {
                        enumerable: !0,
                        value: t
                    })
                } : function(e, t) {
                    e.default = t
                }),
                o = this && this.__importStar || function(e) {
                    if (e && e.__esModule) return e;
                    var t = {};
                    if (null != e)
                        for (var r in e) "default" !== r && Object.prototype.hasOwnProperty.call(e, r) && i(t, e, r);
                    return a(t, e), t
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.backgroundPropsSDKFactory = void 0;
            const n = r(195),
                s = r(82),
                l = r(311),
                c = o(r(1418));
            t.backgroundPropsSDKFactory = s.withValidation(({
                setProps: e,
                props: t,
                metaData: r,
                compRef: i
            }) => {
                const a = l.hasVideo(t);
                return {get background() {
                        return {get src() {
                                var e, r;
                                const {
                                    fillLayers: i = {}
                                } = t;
                                if (null === (r = null === (e = null == i ? void 0 : i.video) || void 0 === e ? void 0 : e.videoInfo) || void 0 === r ? void 0 : r.videoId) {
                                    const {
                                        videoInfo: e
                                    } = i.video, t = l.createMediaSrc({
                                        mediaId: e.videoId,
                                        type: c.types.VIDEO,
                                        title: i.video.posterImageInfo.title,
                                        width: e.videoWidth,
                                        height: e.videoHeight,
                                        posterId: i.video.posterImageInfo.uri
                                    });
                                    return t.error ? "" : t.item || ""
                                }
                                const a = i.image || i.backgroundImage;
                                if (a) {
                                    const e = l.createMediaSrc({
                                        mediaId: a.uri,
                                        type: c.types.IMAGE,
                                        width: a.width,
                                        height: a.height,
                                        title: a.title
                                    });
                                    return e.error ? "" : e.item || ""
                                }
                                return ""
                            },
                            set src(i) {
                                var a, o;
                                const {
                                    fillLayers: s = {}
                                } = t;
                                if (!i) return void e({
                                    fillLayers: {
                                        containerId: r.compId
                                    }
                                });
                                const c = l.getMediaDataFromSrc(i);
                                if (!c) return void n.reportError(`The "src" property cannot be set to "${i}". It must be a valid URL starting with "http://", "https://", or "wix:image://, or a valid video URL starting with "wix:video://".`);
                                const {
                                    hasBgScrollEffect: d,
                                    bgEffectName: u
                                } = l.getScrollEffect(s);
                                "WixVideo" === c.type ? (l.getFullMediaData(c, t => {
                                    if (!t) return;
                                    const i = {
                                        fillLayers: {
                                            containerId: r.compId,
                                            backgroundMedia: d ? Object.assign({
                                                containerId: r.compId
                                            }, s.backgroundMedia) : void 0,
                                            hasBgFullscreenScrollEffect: s.hasBgFullscreenScrollEffect,
                                            video: Object.assign(Object.assign({}, l.BG_VIDEO_DEFAULTS), {
                                                alt: "",
                                                posterImageInfo: Object.assign({
                                                    containerId: r.compId,
                                                    hasBgScrollEffect: d,
                                                    bgEffectName: u
                                                }, c.posterImageRef),
                                                videoInfo: {
                                                    containerId: r.compId,
                                                    videoId: t.mediaObject.videoId,
                                                    videoWidth: t.mediaObject.videoWidth,
                                                    videoHeight: t.mediaObject.videoHeight,
                                                    qualities: (a = t.mediaObject.qualities, a.filter(e => "storyboard" !== e.quality).sort((e, t) => parseInt(e.quality, 10) - parseInt(t.quality, 10))),
                                                    isVideoDataExists: "1",
                                                    videoFormat: t.mediaObject.videoFormat,
                                                    playbackRate: t.mediaObject.playbackRate,
                                                    autoPlay: t.mediaObject.autoPlay,
                                                    hasBgScrollEffect: d,
                                                    bgEffectName: u
                                                }
                                            })
                                        }
                                    };
                                    var a;
                                    e(i)
                                }), e({
                                    fillLayers: {
                                        containerId: r.compId,
                                        hasBgFullscreenScrollEffect: s.hasBgFullscreenScrollEffect,
                                        backgroundMedia: d ? Object.assign({
                                            containerId: r.compId
                                        }, s.backgroundMedia) : void 0,
                                        video: Object.assign(Object.assign({}, l.BG_VIDEO_DEFAULTS), {
                                            alt: "",
                                            posterImageInfo: Object.assign({
                                                containerId: r.compId,
                                                hasBgScrollEffect: d,
                                                bgEffectName: u
                                            }, c.posterImageRef),
                                            videoInfo: {
                                                containerId: r.compId,
                                                videoId: c.videoId,
                                                isVideoDataExists: !1
                                            }
                                        })
                                    }
                                })) : e({
                                    fillLayers: {
                                        containerId: r.compId,
                                        hasBgFullscreenScrollEffect: s.hasBgFullscreenScrollEffect,
                                        backgroundMedia: d ? Object.assign({
                                            containerId: r.compId
                                        }, s.backgroundMedia) : void 0,
                                        image: s.backgroundImage ? null : Object.assign(Object.assign({}, c), {
                                            uri: c.mediaId || "",
                                            displayMode: null === (a = null == s ? void 0 : s.image) || void 0 === a ? void 0 : a.displayMode,
                                            containerId: r.compId,
                                            name: "",
                                            width: c.width || 0,
                                            height: c.height || 0,
                                            alt: "",
                                            hasBgScrollEffect: d,
                                            bgEffectName: u
                                        }),
                                        backgroundImage: s.backgroundImage ? Object.assign(Object.assign({}, c), {
                                            uri: c.mediaId || "",
                                            name: c.name || "",
                                            width: c.width || 0,
                                            height: c.height || 0,
                                            alt: c.name || "",
                                            displayMode: null === (o = null == s ? void 0 : s.backgroundImage) || void 0 === o ? void 0 : o.displayMode
                                        }) : null
                                    }
                                })
                            },
                            get alt() {
                                var e, r, i, a;
                                return (null === (r = null === (e = t.fillLayers) || void 0 === e ? void 0 : e.image) || void 0 === r ? void 0 : r.alt) || (null === (a = null === (i = t.fillLayers) || void 0 === i ? void 0 : i.video) || void 0 === a ? void 0 : a.alt) || ""
                            },
                            set alt(r) {
                                if (!t.fillLayers) return;
                                const {
                                    image: i,
                                    video: a
                                } = t.fillLayers, o = a ? {
                                    video: Object.assign(Object.assign({}, a), {
                                        alt: r
                                    })
                                } : {}, n = i ? {
                                    image: Object.assign(Object.assign({}, i), {
                                        alt: r
                                    })
                                } : {};
                                e({
                                    fillLayers: Object.assign(Object.assign(Object.assign({}, t.fillLayers), o), n)
                                })
                            },
                            play() {
                                if (a) return i.play(!0)
                            },
                            pause() {
                                if (a) return i.pause()
                            },
                            stop() {
                                if (a) return i.stop()
                            }
                        }
                    }
                }
            }, {
                type: ["object"],
                properties: {
                    background: {
                        type: ["object"],
                        properties: {
                            src: {
                                type: ["string", "nil"],
                                warnIfNil: !0
                            },
                            alt: {
                                type: ["string", "nil"],
                                warnIfNil: !0
                            }
                        }
                    }
                }
            })
        },
        2761: function(e, t, r) {
            "use strict";
            var i = this && this.__importDefault || function(e) {
                return e && e.__esModule ? e : {
                    default: e
                }
            };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.getFullMediaData = t.getMediaDataFromSrc = t.getIdFromUrl = t.hasVideo = t.getScrollEffect = t.BG_VIDEO_DEFAULTS = void 0;
            const a = i(r(15)),
                o = r(1258);
            t.BG_VIDEO_DEFAULTS = {
                loop: !0,
                preload: "auto",
                muted: !0,
                isVideoEnabled: !0
            };
            t.getScrollEffect = (e = {}) => {
                const {
                    bgEffectName: t = ""
                } = e.backgroundMedia || {};
                return {
                    hasBgScrollEffect: t ? "true" : "",
                    bgEffectName: t
                }
            };
            t.hasVideo = e => {
                var t, r;
                const {
                    fillLayers: i = {}
                } = e;
                return null === (r = null === (t = null == i ? void 0 : i.video) || void 0 === t ? void 0 : t.videoInfo) || void 0 === r ? void 0 : r.videoId
            };
            t.getIdFromUrl = e => {
                const t = e.match(/(?:\/|^)([0-9a-fA-F_]+)(?:\/|$)/);
                return t && t.length > 1 ? t[1] : ""
            };
            const n = (e, t) => e[t] || e[a.default.camelCase(t)],
                s = e => e.replace(/^(.*[\/])/, ""),
                l = e => a.default.map(e.image, e => s(e.url)),
                c = (e, r) => {
                    const i = n(e, "file_input"),
                        o = n(e, "file_output"),
                        c = t.getIdFromUrl(e.fileUrl || e.file_name),
                        d = ((e, t) => {
                            if (e.length <= t) return e;
                            const r = e.split(""),
                                i = e.length - t + "...".length,
                                a = (e.lastIndexOf(".") > e.length - i - 3 ? e.lastIndexOf(".") : e.length - 1) - i - 3;
                            return r.splice(a, i, "..."), r.join("")
                        })(e.title, 100),
                        u = (e => {
                            const t = a.default.filter(e.video, {
                                    format: "mp4"
                                }),
                                r = a.default.find(e.storyboard, {
                                    format: "mp4"
                                }),
                                i = a.default.map(t, (function(e) {
                                    return a.default.pick(e, ["width", "height", "quality", "url"])
                                }));
                            return r && i.push({
                                quality: "storyboard",
                                width: r.width,
                                height: r.height,
                                url: r.url
                            }), i
                        })(o),
                        p = (e => {
                            const t = n(e, "adaptive_video");
                            return a.default.map(t, e => ({
                                format: e.format,
                                url: e.url
                            }))
                        })(o),
                        f = (e => {
                            const t = [];
                            return e.tags && a.default.includes(e.tags, "_mp4_alpha") && t.push("alpha"), a.default.isEmpty(t) ? null : t
                        })(e),
                        m = a.default.head(o.image),
                        v = {
                            type: "Image",
                            width: m.width,
                            height: m.height,
                            uri: s(m.url),
                            description: r.path ? r.path : void 0
                        };
                    return {
                        type: "WixVideo",
                        title: d,
                        videoId: c,
                        duration: +(i.duration / 1e3).toFixed(2),
                        posterImageRef: v,
                        generatedPosters: l(o),
                        qualities: u,
                        adaptiveVideo: p,
                        artist: {
                            name: e.vendor || "",
                            id: e.reference || ""
                        },
                        hasAudio: -1 !== n(a.default.head(o.video), "audio_bitrate"),
                        fps: a.default.get(a.default.head(o.video), "fps", "").toString(),
                        mediaFeatures: f || []
                    }
                },
                d = (e, r) => {
                    e = (e => e.replace("video/", ""))(e);
                    fetch(`https://files.wix.com/site/media/files/${e}/info`).then(e => e.json()).then(e => {
                        const i = ((e, r) => {
                            const i = {
                                    animatePoster: "none",
                                    autoPlay: !0,
                                    playbackRate: 1,
                                    fittingType: "fill",
                                    hasBgScrollEffect: "",
                                    bgEffectName: "",
                                    isVideoDataExists: "1",
                                    alignType: "center",
                                    videoFormat: "mp4",
                                    playerType: "html5",
                                    isEditorMode: !1,
                                    isViewerMode: !0,
                                    videoHeight: e.file_input.height,
                                    videoWidth: e.file_input.width
                                },
                                a = c(e, r);
                            return Object.assign({
                                mediaObject: Object.assign(Object.assign({}, i), a)
                            }, t.BG_VIDEO_DEFAULTS)
                        })(e, {});
                        r(i)
                    })
                };
            t.getMediaDataFromSrc = e => {
                if (o.isValidMediaSrc(e, "video")) {
                    const t = o.parseMediaSrc(e, "video");
                    return t.error ? null : Object.assign(Object.assign({}, (({
                        mediaId: e,
                        posterId: t,
                        width: r,
                        height: i,
                        title: a
                    }) => ({
                        type: "WixVideo",
                        videoId: e,
                        posterImageRef: {
                            type: "Image",
                            uri: t,
                            width: r,
                            height: i,
                            title: a
                        }
                    }))(t)), {
                        name: t.title,
                        fileName: t.title,
                        type: "WixVideo"
                    })
                } {
                    const t = o.parseMediaSrc(e, "image");
                    return t.error ? null : Object.assign(Object.assign({}, t), {
                        name: t.title,
                        type: "Image"
                    })
                }
            };
            t.getFullMediaData = (e, t) => {
                e.videoId ? d(e.videoId, t) : t()
            }
        },
        2762: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.mediaTypeToMediaSrcType = t.getFileDataByType = t.fileTypeToMediaType = t.fileTypeToBaseFileType = t.fileTypeMatchers = t.facebookAcceptableFileTypes = t.acceptableFilesTypes = void 0;
            const i = {
                Image: ".bmp,.gif,.heic,.heif,.jfi,.jfif,.jpe,.jpeg,.jpg,.png,.tif,.tiff,.webp",
                Document: ".ai,.cdr,.csv,.doc,.docb,.docx,.dot,.dotx,.dwg,.eps,.epub,.fla,.gpx,.ical,.icalendar,.ics,.ifb,.indd,.ipynb,.key,.kml,.kmz,.mobi,.mtf,.mtx,.numbers,.odg,.odp,.ods,.odt,.otp,.ots,.ott,.oxps,.pages,.pdf,.pdn,.pkg,.pot,.potx,.pps,.ppsx,.ppt,.pptx,.psd,.pub,.rtf,.sldx,.txt,.vcf,.xcf,.xls,.xlsx,.xlt,.xltx,.xlw,.xps",
                Video: ".3gp,.avi,.divx,.flv,.m1v,.m2ts,.m4v,.mkv,.mov,.mp4,.mpe,.mpeg,.mpg,.mxf,.ogv,.vob,.webm,.wmv,.xvid",
                Audio: ".aac,.aif,.aiff,.flac,.m4a,.mp3,.wav,.wma"
            };
            t.acceptableFilesTypes = Object.assign(Object.assign({}, i), {
                Gallery: `${i.Image},${i.Video}`
            }), t.facebookAcceptableFileTypes = {
                iOS: {
                    Image: "image/*",
                    Document: void 0,
                    Video: "video/*",
                    Audio: void 0,
                    Gallery: "image/*,video/*"
                },
                other: {
                    Image: "image/*",
                    Document: void 0,
                    Video: "video/*",
                    Audio: "audio/*",
                    Gallery: "image/*,video/*"
                }
            }, t.fileTypeMatchers = {
                Image: /\.(bmp|gif|hei[cf]|jfif?|jpeg?|jpg|png|tiff?|webp)$/i,
                Document: /\.(ai|cdr|csv|doc[xb]?|dotx?|dwg|eps|e?pub|fla|gpx|ical(endar)?|ics|indd|ipynb|key|km[lz]|mobi|mt[fx]|numbers|od[gpst]|ot[pst]|oxps|pages|pd[fn]|pkg|potx?|pp[st]x?|psd|rtf|sldx|txt|vcf|xcf|xl[st]x?|xlw|xps)$/i,
                Video: /\.(3gp|avi|divx|flv|m1v|m2ts|m4v|mkv|mov|mp4|mpeg?|mpg|mxf|ogv|vob|webm|wmv|xvid)$/i,
                Audio: /\.(aac|aiff?|flac|m4a|mp3|wav|wma)$/i
            };
            t.fileTypeToBaseFileType = (e, r) => "Gallery" === e ? t.fileTypeMatchers.Image.test(r) ? "Image" : "Video" : e;
            t.fileTypeToMediaType = (e, r) => ({
                Image: "picture",
                Document: "document",
                Video: "video",
                Audio: "music"
            }[t.fileTypeToBaseFileType(e, r)]);
            t.getFileDataByType = (e, r) => {
                var i, a;
                switch (t.fileTypeToBaseFileType(e, r.file_name)) {
                    case "Image":
                    case "Document":
                        return Object.assign(Object.assign({}, r), {
                            uri: r.file_name,
                            filename: r.original_file_name
                        });
                    case "Video":
                        const e = ((null === (i = r.file_output) || void 0 === i ? void 0 : i.image) || [])[1] || {
                            url: ""
                        };
                        return Object.assign(Object.assign({}, r), {
                            uri: r.file_name,
                            filename: r.original_file_name,
                            posterUri: e.url.replace("media/", ""),
                            width: e.width,
                            height: e.height
                        });
                    case "Audio":
                        return Object.assign(Object.assign({}, r), {
                            uri: r.file_name,
                            filename: r.original_file_name,
                            duration: (null === (a = r.file_input) || void 0 === a ? void 0 : a.duration) || 0
                        });
                    default:
                        return r
                }
            }, t.mediaTypeToMediaSrcType = {
                picture: "image",
                document: "document",
                video: "video",
                music: "audio"
            }
        },
        2763: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            })
        },
        2764: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.registerEventOnce = t.registerCorvidMouseEvent = t.registerCorvidKeyboardEvent = t.unregisterCorvidEvent = t.registerCorvidEvent = t.convertToCorvidKeyboardEvent = t.convertToCorvidMouseEvent = t.convertToCorvidEventBase = void 0;
            const i = r(82),
                a = r(2765),
                o = {
                    dblclick: "dblClick",
                    keydown: "keyPress",
                    input: "onInput"
                };
            t.convertToCorvidEventBase = e => {
                var t;
                const {
                    target: r,
                    type: i,
                    context: a
                } = e;
                return {
                    target: r,
                    type: null !== (t = o[i]) && void 0 !== t ? t : i,
                    context: a
                }
            };
            t.convertToCorvidMouseEvent = e => {
                const {
                    clientX: t,
                    clientY: r,
                    pageX: i,
                    pageY: a,
                    screenX: o,
                    screenY: n,
                    nativeEvent: s
                } = e, {
                    offsetX: l,
                    offsetY: c
                } = s;
                return {
                    clientX: t,
                    clientY: r,
                    pageX: i,
                    pageY: a,
                    screenX: o,
                    screenY: n,
                    offsetX: l,
                    offsetY: c
                }
            };
            t.convertToCorvidKeyboardEvent = e => {
                const {
                    altKey: t,
                    ctrlKey: r,
                    key: i,
                    metaKey: a,
                    shiftKey: o
                } = e;
                return {
                    key: i,
                    altKey: t,
                    ctrlKey: r,
                    metaKey: a,
                    shiftKey: o
                }
            };
            const n = {
                    onMouseEnter: "onMouseIn",
                    onMouseLeave: "onMouseOut"
                },
                s = e => e.replace(/^on/i, ""),
                l = e => e.createSdkState({
                    listeners: []
                }, "eventListeners");
            t.registerCorvidEvent = (e, r, a, o) => {
                var s;
                const {
                    create$w: c,
                    createEvent: d,
                    registerEvent: u,
                    getSdkInstance: p,
                    metaData: f
                } = r, m = null !== (s = n[e]) && void 0 !== s ? s : e;
                if (!((e, t, r) => i.createCompSchemaValidator(r)(e, {
                        type: ["function"]
                    }, t))(a, m, f.role)) return p();
                const [v, g] = l(r), b = u(e, (e, r) => {
                    const i = d({
                            type: e.type,
                            compId: e.compId
                        }),
                        n = c({
                            context: i.context
                        }),
                        s = null == o ? void 0 : o({
                            componentEvent: e,
                            eventPayload: r
                        });
                    a(Object.assign(Object.assign({}, t.convertToCorvidEventBase(i)), s), n)
                }), y = {
                    eventName: e,
                    compId: f.compId,
                    cb: a,
                    unregister: b
                };
                return g({
                    listeners: [...v.listeners, y]
                }), p()
            };
            const c = (e, t) => {
                var r;
                const i = (e => {
                    var t;
                    const r = Object.entries(n).find(([t, r]) => s(r.toLowerCase()) === s(e.toLowerCase()));
                    return null !== (t = null == r ? void 0 : r[0]) && void 0 !== t ? t : e
                })(null !== (r = a.EVENT_TYPES_MAP[t]) && void 0 !== r ? r : t);
                return e.toLowerCase() === i.toLowerCase()
            };
            t.unregisterCorvidEvent = (e, t, r) => {
                const {
                    metaData: i,
                    getSdkInstance: a
                } = t, [o, n] = l(t), s = o.listeners.filter(t => c(t.eventName, e) && t.cb === r && t.compId === i.compId);
                for (const e of s) e.unregister();
                return n({
                    listeners: o.listeners.filter(e => !s.includes(e))
                }), a()
            };
            t.registerCorvidKeyboardEvent = (e, r, i, a) => t.registerCorvidEvent(e, r, i, ({
                componentEvent: e,
                eventPayload: r
            }) => Object.assign(Object.assign({}, t.convertToCorvidKeyboardEvent(e)), r && (null == a ? void 0 : a(r))));
            t.registerCorvidMouseEvent = (e, r, i, a) => t.registerCorvidEvent(e, r, i, ({
                componentEvent: e,
                eventPayload: r
            }) => Object.assign(Object.assign({}, t.convertToCorvidMouseEvent(e)), r && (null == a ? void 0 : a(r))));
            t.registerEventOnce = ({
                eventName: e,
                api: t,
                cb: r,
                namespace: i
            }) => {
                const {
                    registerEvent: a,
                    createSdkState: o
                } = t, [n, s] = o({
                    wasInvoked: !1
                }, i);
                n.wasInvoked || (a(e, r), s({
                    wasInvoked: !0
                }))
            }
        },
        2765: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.EVENT_TYPES_MAP = t.ACTION_TYPES = void 0, t.ACTION_TYPES = {
                CLICK: "click",
                DBL_CLICK: "dblClick",
                MOUSE_IN: "mouseenter",
                MOUSE_OUT: "mouseleave",
                CHANGE: "change",
                BLUR: "blur",
                FOCUS: "focus",
                IMAGE_CHANGED: "imageChanged",
                IMAGE_EXPANDED: "imageExpanded",
                ON_INPUT: "onInput",
                ITEM_CLICKED: "itemClicked",
                CELL_SELECT: "cellSelect",
                CELL_EDIT: "cellEdit",
                ROW_SELECT: "rowSelect",
                FETCH_DATA: "fetchData",
                DATA_CHANGE: "dataChange",
                ON_TIMEOUT: "onTimeout",
                ON_VERIFY: "onVerified",
                ON_ERROR: "onError",
                ON_PLAY: "onPlay",
                ON_PAUSE: "onPause",
                ON_PROGRESS: "onProgress",
                ON_ENDED: "onEnded",
                AUTOPLAY_OFF: "autoplayOff",
                AUTOPLAY_ON: "autoplayOn",
                PLAY_ENDED: "playEnded",
                PLAY_PROGRESS: "playProgress",
                KEY_PRESS: "keyPress",
                KEY_UP: "keyUp",
                KEY_DOWN: "keyDown",
                SCREEN_IN: "screenIn",
                VIEWPORT_ENTER: "viewportEnter",
                VIEWPORT_LEAVE: "viewportLeave",
                SCROLL: "scroll",
                VALIDATE: "validate",
                SET_CUSTOM_VALIDITY: "setCustomValidity",
                SYNC_VALIDATION_DATA: "syncValidationData",
                UPDATE_VALIDITY_INDICATION: "updateValidityIndication",
                MESSAGE: "message",
                UPLOAD_COMPLETE: "uploadComplete",
                ITEM_READY: "itemReady",
                ITEM_REMOVED: "itemRemoved",
                TAG_CLICK: "tagClick",
                QUICK_ACTION_BAR_ITEM_CLICKED: "quickActionBarItemClicked",
                GOOGLE_MAP_MARKER_CLICKED: "markerClicked",
                GOOGLE_MAP_CLICKED: "mapClicked",
                ICON_MOUSE_IN: "iconMouseIn",
                ON_STATE_CHANGE: "onStateChange",
                ITEM_MOUSE_IN: "itemMouseIn",
                ITEM_MOUSE_OUT: "itemMouseOut",
                ITEM_MOUSE_CLICK: "itemMouseClick",
                ITEM_MOUSE_DOUBLE_CLICK: "itemMouseDblClick",
                ON_COLOR_CHANGE: "onColorChange",
                ON_FONT_CHANGE: "onFontChange",
                ON_OPACITY_CHANGE: "onOpacityChange"
            }, t.EVENT_TYPES_MAP = {
                [t.ACTION_TYPES.CLICK]: "onClick", [t.ACTION_TYPES.DBL_CLICK]: "onDblClick", [t.ACTION_TYPES.MOUSE_IN]: "onMouseIn", [t.ACTION_TYPES.MOUSE_OUT]: "onMouseOut", [t.ACTION_TYPES.CHANGE]: "onChange", [t.ACTION_TYPES.ON_INPUT]: "onInput", [t.ACTION_TYPES.BLUR]: "onBlur", [t.ACTION_TYPES.FOCUS]: "onFocus", [t.ACTION_TYPES.IMAGE_CHANGED]: "onCurrentItemChanged", [t.ACTION_TYPES.IMAGE_EXPANDED]: void 0, [t.ACTION_TYPES.ITEM_CLICKED]: "onItemClicked", [t.ACTION_TYPES.CELL_SELECT]: "onCellSelect", [t.ACTION_TYPES.CELL_EDIT]: void 0, [t.ACTION_TYPES.ROW_SELECT]: "onRowSelect", [t.ACTION_TYPES.FETCH_DATA]: void 0, [t.ACTION_TYPES.DATA_CHANGE]: "onDataChange", [t.ACTION_TYPES.ON_TIMEOUT]: "onTimeout", [t.ACTION_TYPES.ON_VERIFY]: "onVerified", [t.ACTION_TYPES.ON_ERROR]: "onError", [t.ACTION_TYPES.ON_PLAY]: "onPlay", [t.ACTION_TYPES.ON_PAUSE]: "onPause", [t.ACTION_TYPES.ON_PROGRESS]: "onProgress", [t.ACTION_TYPES.ON_ENDED]: "onEnded", [t.ACTION_TYPES.AUTOPLAY_OFF]: "onPause", [t.ACTION_TYPES.AUTOPLAY_ON]: "onPlay", [t.ACTION_TYPES.PLAY_ENDED]: void 0, [t.ACTION_TYPES.PLAY_PROGRESS]: void 0, [t.ACTION_TYPES.KEY_PRESS]: "onKeyPress", [t.ACTION_TYPES.KEY_UP]: "onKeyUp", [t.ACTION_TYPES.KEY_DOWN]: "onKeyDown", [t.ACTION_TYPES.SCREEN_IN]: void 0, [t.ACTION_TYPES.VIEWPORT_ENTER]: "onViewportEnter", [t.ACTION_TYPES.VIEWPORT_LEAVE]: "onViewportLeave", [t.ACTION_TYPES.SCROLL]: void 0, [t.ACTION_TYPES.VALIDATE]: void 0, [t.ACTION_TYPES.SET_CUSTOM_VALIDITY]: void 0, [t.ACTION_TYPES.SYNC_VALIDATION_DATA]: void 0, [t.ACTION_TYPES.UPDATE_VALIDITY_INDICATION]: void 0, [t.ACTION_TYPES.MESSAGE]: "onMessage", [t.ACTION_TYPES.UPLOAD_COMPLETE]: void 0, [t.ACTION_TYPES.ITEM_READY]: "onItemReady", [t.ACTION_TYPES.ITEM_REMOVED]: "onItemRemoved", [t.ACTION_TYPES.TAG_CLICK]: void 0, [t.ACTION_TYPES.QUICK_ACTION_BAR_ITEM_CLICKED]: "onItemClicked", [t.ACTION_TYPES.GOOGLE_MAP_MARKER_CLICKED]: "onMarkerClicked", [t.ACTION_TYPES.GOOGLE_MAP_CLICKED]: "onMapClicked", [t.ACTION_TYPES.ICON_MOUSE_IN]: void 0, [t.ACTION_TYPES.ON_STATE_CHANGE]: "onStateChange", [t.ACTION_TYPES.ITEM_MOUSE_IN]: "onItemMouseIn", [t.ACTION_TYPES.ITEM_MOUSE_OUT]: "onItemMouseOut", [t.ACTION_TYPES.ITEM_MOUSE_CLICK]: "onItemClick", [t.ACTION_TYPES.ITEM_MOUSE_DOUBLE_CLICK]: "onItemDblClick", [t.ACTION_TYPES.ON_COLOR_CHANGE]: "onColorChange", [t.ACTION_TYPES.ON_FONT_CHANGE]: "onFontChange", [t.ACTION_TYPES.ON_OPACITY_CHANGE]: "onOpacityChange"
            }
        },
        2766: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2767), t)
        },
        2767: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2768), t)
        },
        2768: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createEffectValidation = void 0;
            const i = r(195),
                a = r(81),
                o = r(1420),
                n = r(1635),
                s = r(2771),
                l = e => 0 === Object.keys(e).length;
            t.createEffectValidation = ({
                compName: e
            }) => ({
                effectName: t,
                effectOptions: r,
                propertyName: c
            }) => {
                var d;
                const u = s.createEffectOptionsValidation({
                    propertyName: c,
                    compName: e
                });
                if (!t && !r) return !1;
                if (!t && r && !l(r)) return i.reportWarning(a.messageTemplates.warning_effect_options_not_set({
                    propertyName: c,
                    compName: e,
                    infoLink: o.effectInfoLink(c)
                })), !1;
                const p = "hide" === c ? "HIDE" : "SHOW",
                    f = null === (d = o.EFFECTS[p]) || void 0 === d ? void 0 : d.deprecatedValues;
                return t && r && f && f.find(e => e === t) && !l(r) ? (i.reportWarning(a.messageTemplates.warning_deprecated_effect_with_options({
                    compName: e,
                    effectName: t,
                    propertyName: c,
                    infoLink: o.effectInfoLink(c)
                })), !1) : !!f.find(e => e === t) || (t && !(t in n.effectsValidationSchema) ? (i.reportWarning(a.messageTemplates.warning_invalid_effect_name({
                    propertyName: c,
                    compName: e,
                    effectName: t,
                    infoLink: o.effectInfoLink(c)
                })), !1) : !!u(t, r))
            }
        },
        2769: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.effectInfoLink = t.EFFECTS = t.effectDefaultOptions = t.sharedEffectDefaultOptions = void 0, t.sharedEffectDefaultOptions = {
                duration: 1200,
                delay: 0
            }, t.effectDefaultOptions = {
                arc: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                bounce: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "topLeft",
                    intensity: "medium"
                }),
                puff: Object.assign({}, t.sharedEffectDefaultOptions),
                zoom: Object.assign({}, t.sharedEffectDefaultOptions),
                fade: Object.assign({}, t.sharedEffectDefaultOptions),
                flip: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                float: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                fly: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                fold: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                glide: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    angle: 0,
                    distance: 0
                }),
                roll: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                slide: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                spin: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "cw",
                    cycles: 5
                }),
                turn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                ArcIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                ArcOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                BounceIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "topLeft",
                    intensity: "medium"
                }),
                BounceOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "topLeft",
                    intensity: "medium"
                }),
                ExpandIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                CollapseOut: Object.assign({}, t.sharedEffectDefaultOptions),
                Conceal: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                Reveal: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                FadeIn: Object.assign({}, t.sharedEffectDefaultOptions),
                FadeOut: Object.assign({}, t.sharedEffectDefaultOptions),
                FlipIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                FlipOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                FloatIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                FloatOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                FlyIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                FlyOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                FoldIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                FoldOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                GlideIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    angle: 0,
                    distance: 150
                }),
                GlideOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    angle: 0,
                    distance: 150
                }),
                DropIn: Object.assign({}, t.sharedEffectDefaultOptions),
                PopOut: Object.assign({}, t.sharedEffectDefaultOptions),
                SlideIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                SlideOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "left"
                }),
                SpinIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "cw",
                    cycles: 2
                }),
                SpinOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "cw",
                    cycles: 2
                }),
                TurnIn: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                }),
                TurnOut: Object.assign(Object.assign({}, t.sharedEffectDefaultOptions), {
                    direction: "right"
                })
            }, t.EFFECTS = {
                HIDE: {
                    suffix: "out",
                    deprecatedValues: ["ArcOut", "BounceOut", "CollapseOut", "Conceal", "FadeOut", "FlipOut", "FloatOut", "FlyOut", "FoldOut", "GlideOut", "PopOut", "SlideOut", "SpinOut", "TurnOut"]
                },
                SHOW: {
                    suffix: "in",
                    deprecatedValues: ["ArcIn", "BounceIn", "DropIn", "ExpandIn", "FadeIn", "FlipIn", "FloatIn", "FlyIn", "FoldIn", "GlideIn", "Reveal", "SlideIn", "SpinIn", "TurnIn"]
                }
            };
            t.effectInfoLink = e => "https://www.wix.com/corvid/reference/$w/hiddenmixin/" + e
        },
        2770: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            })
        },
        2771: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.createEffectOptionsValidation = void 0;
            const i = r(81),
                a = r(553),
                o = r(195),
                n = r(1420),
                s = r(1635);
            t.createEffectOptionsValidation = ({
                propertyName: e,
                compName: t
            }) => (r, l) => {
                if (!r) return !1;
                if (void 0 === l) return !0;
                const c = (({
                    effectName: e,
                    propertyName: t,
                    compName: r
                }) => (a, s) => {
                    o.reportWarning(i.messageTemplates.warning_invalid_type_effect_options({
                        propertyName: t,
                        compName: r,
                        effectName: e,
                        wrongValue: "" + (null == s ? void 0 : s.value),
                        infoLink: n.effectInfoLink(t)
                    }))
                })({
                    effectName: r,
                    propertyName: e,
                    compName: t
                });
                if (!a.createSchemaValidator({
                        reportError: c,
                        reportWarning: () => ({})
                    }, t)(l, {
                        type: ["object"]
                    }, e)) return !1;
                const d = (({
                    effectName: e,
                    propertyName: t,
                    compName: r
                }) => (a, s) => {
                    o.reportWarning(i.messageTemplates.warning_invalid_effect_options({
                        propertyName: t,
                        compName: r,
                        effectName: e,
                        wrongProperty: "value",
                        wrongValue: `the key "${null==s?void 0:s.propertyName}" cannot be set to the value "${null==s?void 0:s.value}"`,
                        infoLink: n.effectInfoLink(t)
                    }))
                })({
                    effectName: r,
                    propertyName: e,
                    compName: t
                });
                return !!a.createSchemaValidator({
                    reportError: d,
                    reportWarning: () => ({})
                }, t)(l, s.effectsValidationSchema[r], e)
            }
        },
        2772: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.effectsTriggersSDKFactory = void 0;
            const i = r(195),
                a = r(81),
                o = (e, t, r) => {
                    const o = t.filter(t => !e.includes(t));
                    o.length && i.reportError(a.messageTemplates.error_effects_input({
                        functionName: r,
                        wrongEffects: o,
                        allowedEffects: e
                    }))
                };
            t.effectsTriggersSDKFactory = e => {
                const t = () => {
                    var t;
                    return (null === (t = e.effectsTriggersApi) || void 0 === t ? void 0 : t.getEffects()) || []
                };
                return {
                    effects: {get effects() {
                            return t()
                        },
                        get activeEffects() {
                            var t;
                            return (null === (t = e.effectsTriggersApi) || void 0 === t ? void 0 : t.getActiveEffects()) || []
                        },
                        applyEffects: r => {
                            var i;
                            o(t(), r, "applyEffects"), null === (i = e.effectsTriggersApi) || void 0 === i || i.applyEffects(...r)
                        },
                        removeEffects: r => {
                            var i;
                            o(t(), r, "removeEffects"), null === (i = e.effectsTriggersApi) || void 0 === i || i.removeEffects(...r)
                        },
                        toggleEffects: r => {
                            var i;
                            o(t(), r, "toggleEffects"), null === (i = e.effectsTriggersApi) || void 0 === i || i.toggleEffects(...r)
                        },
                        removeAllEffects: () => {
                            var t;
                            return null === (t = e.effectsTriggersApi) || void 0 === t ? void 0 : t.removeAllEffects()
                        }
                    }
                }
            }
        },
        2773: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.childrenPropsSDKFactory = void 0;
            t.childrenPropsSDKFactory = ({
                getChildren: e
            }) => ({get children() {
                    return e()
                }
            })
        },
        2774: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.clickPropsSDKFactoryWithUpdatePlatformHandler = void 0;
            const i = r(1637);
            t.clickPropsSDKFactoryWithUpdatePlatformHandler = e => {
                const t = i.clickPropsSDKFactory(e),
                    {
                        setProps: r,
                        props: a
                    } = e;
                return Object.assign(Object.assign({}, t), {
                    onClick: e => {
                        t.onClick(e), a.hasPlatformClickHandler || r({
                            hasPlatformClickHandler: !0
                        })
                    }
                })
            }
        },
        2775: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.disablePropsSDKFactory = void 0;
            t.disablePropsSDKFactory = ({
                setProps: e,
                props: t
            }) => ({get enabled() {
                    return void 0 === t.isDisabled || !t.isDisabled
                },
                disable: () => (e({
                    isDisabled: !0
                }), Promise.resolve()),
                enable: () => (e({
                    isDisabled: !1
                }), Promise.resolve())
            })
        },
        2776: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.focusPropsSDKFactory = void 0;
            const i = r(208);
            t.focusPropsSDKFactory = e => ({
                focus: () => e.compRef.focus(),
                blur: () => e.compRef.blur(),
                onFocus: t => i.registerCorvidEvent("onFocus", e, t),
                onBlur: t => i.registerCorvidEvent("onBlur", e, t)
            })
        },
        2777: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.labelPropsSDKFactory = void 0;
            const i = r(82);
            t.labelPropsSDKFactory = i.withValidation(({
                setProps: e,
                props: t
            }) => ({get label() {
                    return t.label || ""
                },
                set label(t) {
                    e({
                        label: t || ""
                    })
                }
            }), {
                type: ["object"],
                properties: {
                    label: {
                        type: ["string", "nil"],
                        warnIfNil: !0
                    }
                }
            })
        },
        2778: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.menuItemsPropsSDKFactory = void 0;
            const i = r(44),
                a = r(82),
                o = r(208),
                n = r(195),
                s = r(2779),
                l = e => {
                    const {
                        setProps: t,
                        props: r,
                        platformUtils: {
                            linkUtils: a
                        },
                        sdkData: {
                            pageList: l
                        } = {}
                    } = e;
                    l || n.reportError("Page list is not passed into sdkData. Provide it in component mapper to use menuItems SDK properly.");
                    const c = (e, t) => {
                        const r = {};
                        try {
                            const t = s.getLink({
                                linkUtils: a,
                                link: e.link,
                                target: e.target || "_self"
                            });
                            t.href && (r.link = t.href, r.target = t.target || "_self")
                        } catch (r) {
                            throw new s.LinkTypeError(e.link || "", t)
                        }
                        const o = s.getLabel({
                            label: e.label,
                            link: e.link,
                            pageList: l
                        });
                        if (i.assert.isNil(o)) throw new s.InvalidLabelError(t);
                        return r.label = o, i.assert.isNil(e.selected) || (r.selected = e.selected), Object.assign(Object.assign({}, r), {
                            menuItems: (n = e.menuItems, i.assert.isArray(n) ? n.map(c) : [])
                        });
                        var n
                    };
                    return {get menuItems() {
                            var e, t, i;
                            const a = null !== (t = null === (e = r.items) || void 0 === e ? void 0 : e.map(s.transformPropDataToSdkData)) && void 0 !== t ? t : [];
                            return null !== (i = null == a ? void 0 : a.map(c)) && void 0 !== i ? i : []
                        },
                        set menuItems(e) {
                            var r;
                            try {
                                t({
                                    items: null !== (r = null == e ? void 0 : e.map(c).map(s.transformSdkDataToPropData)) && void 0 !== r ? r : []
                                })
                            } catch (e) {
                                n.reportError(e.message)
                            }
                        },
                        onItemMouseIn: t => o.registerCorvidMouseEvent("onItemMouseIn", e, t, e => ({
                            item: s.transformPropDataToSdkData(e),
                            type: "itemMouseIn"
                        })),
                        onItemMouseOut: t => o.registerCorvidMouseEvent("onItemMouseOut", e, t, e => ({
                            item: s.transformPropDataToSdkData(e),
                            type: "itemMouseOut"
                        })),
                        onItemClick: t => o.registerCorvidMouseEvent("onItemClick", e, t, e => ({
                            item: s.transformPropDataToSdkData(e),
                            type: "itemMouseClick"
                        })),
                        onItemDblClick: t => o.registerCorvidMouseEvent("onItemDblClick", e, t, e => ({
                            item: s.transformPropDataToSdkData(e),
                            type: "itemMouseDblClick"
                        }))
                    }
                };
            t.menuItemsPropsSDKFactory = function(e) {
                const {
                    sdkData: {
                        isSubSubEnabled: t = !1
                    } = {}
                } = e, r = t ? 2 : 1;
                return a.withValidation(l, s.getMenuItemsSchema(r), {
                    menuItems: [s.validateMenuItemsDepth(r), s.validateMenuItemsTarget]
                })(e)
            }
        },
        2779: function(e, t, r) {
            "use strict";
            var i = this && this.__createBinding || (Object.create ? function(e, t, r, i) {
                    void 0 === i && (i = r), Object.defineProperty(e, i, {
                        enumerable: !0,
                        get: function() {
                            return t[r]
                        }
                    })
                } : function(e, t, r, i) {
                    void 0 === i && (i = r), e[i] = t[r]
                }),
                a = this && this.__exportStar || function(e, t) {
                    for (var r in e) "default" === r || Object.prototype.hasOwnProperty.call(t, r) || i(t, e, r)
                };
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), a(r(2780), t), a(r(2781), t), a(r(1421), t), a(r(2782), t), a(r(2783), t), a(r(2786), t)
        },
        2780: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            }), t.getLabel = t.getLink = t.isExternalPage = t.isPageUrl = void 0;
            const i = r(44),
                a = /^(http|https):\/\/(.*)/,
                o = /^\/([^ ?#]*)[?]?(.*)/;
            t.isPageUrl = e => o.test(e);
            t.isExternalPage = e => a.test(e);
            t.getLink = ({
                link: e,
                target: r,
                linkUtils: a
            }) => {
                if (!i.assert.isNil(e)) {
                    const i = r || (t.isExternalPage(e) ? "_blank" : "_self");
                    return a.getLinkProps(e, i)
                }
                return {}
            };
            t.getLabel = ({
                link: e,
                label: r,
                pageList: a
            }) => i.assert.isNil(r) ? !i.assert.isNil(e) && t.isPageUrl(e) ? ((e, t) => {
                var r;
                const i = e.slice(1);
                if (t.hasOwnProperty(i)) return null === (r = t[i]) || void 0 === r ? void 0 : r.title
            })(e, a) : void 0 : r
        },
        2781: function(e, t, r) {
            "use strict";
            Object.defineProperty(t, "__esModule", {
                value: !0
            })
        },
        2782: function(e, t, r) {
            "